Variational Autoencoder

Yasmine Cheng
數據領航員
Published in
7 min readJul 7, 2023

主編/鄭雅綿 ;校稿/王常在

目錄

前言
Autoencoder介紹
Variational Autoencoder介紹
參考資料

前言

Variational Autoencoder(VAE)主要是由Autoencoder(AE)變形而來,而AE也還有許多一系列的變化,例如Sparse Autoencoder(SAE)、Denoising Autoencoder(DAE)、Variational Graph Autoencoder(VGAE)等,筆者有找到一篇滿詳細的差別介紹文,會放在參考文章中的第一篇,讀者若有興趣可以參考。

總之大方向的概念就是AE會嘗試將資料壓縮,保留較具特徵點的部分,並再從中解壓縮,讓輸出盡可能的接近原始輸入

本篇著重在介紹概念,帶讀者瞭解基本的模型建構。VAE在Keras的官網上也有介紹,並一起附上論文著作讓讀者可以參閱~~

Autoencoders介紹

首先,本篇文章要介紹的重點VAE是由AE模型所奠定出來的,因此先帶讀者理解什麼是AE。

AE是一種非監督式的多層深度神經網絡演算法,主要的目的是會對輸入的資料進行表徵學習(representation learning),並且讓output跟input具有相同的意義。

✏︎表徵學習(representation learning):減少對於特徵工程的依賴,而是增加自動化特徵萃取的功能。可以理解為並非找到要預測的答案,而是找到一個預測、表達的方法。

Math AI — Variational Autoencoder (VAE) 變分自編碼器

由上圖所示,AE可分成Encoder(編碼器)及Decoder(解碼器)兩神經網絡,Encoder需要壓縮資料,並盡可能地保持最完整的訊息量 ; Decoder則是進行解壓縮,並最小化解壓縮時的重構誤差。

而好的AE是需要對input夠敏感,幫助最後的資料重構(讓output越接近input),同時又不能讓input過度敏感,最後只記得趨勢又會造成overfitting的問題。

Variational Autoencoders介紹

Math AI — Variational Autoencoder (VAE) 變分自編碼器

讀者可以比較一下兩模型的架構,其實差別就只有VAE在Encoder的部分增加了一些數學運算,而這樣的處理是為了達到最後模型的生成遵從高斯分佈,也就是說AE無法達到最後資料生成的效果,但VAE可以。我們也可以說VAE其實就是AE的正規化版本,可以避免overfitting的狀況。

從數學運算的式子中,可以發現input會在Encoder時進行兩部分的運算,一是進行平均數,二者是進行標準差後再經過指數函數,最後再將兩者進行相加。

也因為VAE有在Encoder上加入這些數學運算,讓VAE及AE的Encoder/Decoder有類型上的不同,VAE是屬於probabilistic的(概率的) ; AE是屬於deterministic的(確定的)。可以想像成是數值型與類別型的差異,例如同樣是表達天氣狀況,probabilistic會表示今日下雨的機率是70%,deterministic會表示今日是雨天。

至於為什麼VAE具有生成資料的功能呢?是因為VAE 可以解讀隱含向量中的每一個維度代表的意思,因此理想上是可以調整想要生成的資料。下圖是An Introduction to Variational Autoencoders論文中提到的生成圖片例子,輸入了某位女性微笑的照片後,產出了其他五張更開心或是相對不悅的表情。

An Introduction to Variational Autoencoders

生成資料時,會從latent space中(圖中紅色的部分)隨機採樣來生成,生成數據的質量與相關性是取決於latent space的規律性:

  1. input的分佈
  2. latent space的維度
  3. encoder的架構

以上就是VAE模型架構、原理的介紹~希望大家對其概念有初步的了解了~

參考資料

教育部補助大專院校STEM領域及女性研發人才培育計畫目標為建構一個「以智慧物聯技術與實務應用為基礎的教育環境和實作場域」,並規劃出符合此STEM教育領域的創新特色課程,以畢業前進入企業實習的方式,讓學生了解相關產業界所面對的問題,再輔以業界實作場域的教育訓練活動,共同帶領學生發展出動手做、判斷與解決問題的相關技能;本計畫也規劃讓學生以專題實作的組隊方式,跟業界協力領導學生對外參與智慧物聯技術的應用競賽,不僅可以累積學生實務開發的能力,更能激發其潛能來幫助企業解決所面臨的難題。

Data Science Meetup 台灣資料科學社群的使命是「為資料科學人士與企業創建經濟機會」。我們相信大數據蘊藏著巨量的信息和價值,如何處理好大數據並發掘其潛藏的商業價值,就要靠資料科學有效的應用。21世紀是資料科學決勝時代,我們社群將為大家提供與資料科學相關的最新技術和資訊實戰攻略,並透過全球業界人士和學者幫助相關職業規劃與挑戰,社群活動包含

  • 台北實體版聚
  • 線上版聚
  • Mentorship Program

歡迎加入我們社團瞭解更多資訊: https://www.facebook.com/groups/datasciencemeetup/

--

--

Yasmine Cheng
數據領航員

NLP Lab @ SCU | Data Science | to be a nlper 💻 Linkedin:Ya Mian(Yasmine) Cheng Github:Yasmine-Cheng