圖去書裡看。
生成模型就是要讓機器找到產生資料的概率分布p(x
)p(x)
p(x)
.###簡述vae的基本思想,以及它時如何用變分推斷方法進行訓練的?
詳細:自編碼器(ae):標準的ae由編碼器和解碼器兩部分組成,整個模型可以看作乙個「壓縮」與「解壓」的過程。(關於ae的詳細介紹後面會有)
圖變分自編碼器(vae)假設資料x
ix_i
xi由乙個隨機過程產生,該隨機過程分為兩步:先由先驗分布pθ∗
(z
)p_(z)
pθ∗(z
)產生隱藏變數z
iz_i
zi;再由新增分布pθ∗
(z
)p_(z)
pθ∗(z
)產生資料x
ix_i
xi。如圖:
圖這裡的引數θ
∗\theta^*
θ∗可以通過最大化資料似然來求得:
θ ∗=
argma
xθ∑i
logpθ
(xi)
\theta^*=\arg \underset\sum_\log p_\theta(x_i)
θ∗=argθma
xi∑
logpθ
(xi
)p θ(
xi)=
∫pθ(
xi∣z
)pθ(
z)dx
p_\theta(x_i)=\int p_\theta(x_i|z)p_\theta(z) dx
pθ(xi
)=∫
pθ(
xi∣
z)pθ
(z)
dx這樣我們可以用取樣法估計pθ(
xi
)p_\theta(x_i)
pθ(xi
)p θ(
xi)≈
1n∑j
=1np
θ(xi
∣zj)
pθ(xi
)≈n
1j=
1∑n
pθ(
xi∣
zj)
z j∼
pθ(z
),j=
1,2,
...,
nz_j\sim p_\theta (z), \quad j=1,2,...,n
zj∼pθ
(z)
,j=1
,2,.
..,n
這裡,取樣法存在乙個問題:由於x的維度一般比較高,需要很多次取樣才能保證上述估計的準確性,而且對於某些z,由pθ(
z)≈0
pθ(z)
≈0,這對估計pθ(
x)
p_\theta(x)
pθ(x)
幾乎沒有什麼幫助。
因此,vae的核心想法就是i找到乙個容易生成資料x的z的分布,即後驗分布qϕ(
z∣xi
)q_\phi(z|x_i)
qϕ(z∣
xi)
。得到qϕ(
z∣x)
q_\phi(z|x)
qϕ(z∣
x)後,採用變分推斷來優化似然函式pϕ(
xi
)p_\phi(x_i)
pϕ(xi
),通過優化目標函式的乙個下界來間接優化原始目標函式。
圖詳細:標準的ae由編碼器和解碼器兩部分組成,整個模型可以看作乙個「壓縮」與「解壓」的過程:首先編碼器將真實資料(真實樣本)x
xx壓縮為低維隱空間中的乙個隱向量z
zz,該向量可以看作世俗如的」精華「;軟化解碼器將這個隱向量z
zz解壓,得到生成資料(生成樣本)x
^\hat
x^。在訓練過程中,會將生成樣本與真實樣本進行比較,朝兩者之間差異的方向去更新編碼器和解碼器的引數,最終目的時期望由真實樣本x
xx壓縮得到的z
zz能夠盡可能地抓住輸入的精髓,使得生成樣本與真實樣本盡可能接近。ae可應用於資料去噪、視覺化降維和資料生成等方向。
vae是ae的公升級版本,其結構也是由編碼器和解碼器組成,如下圖。ae本身無法直接產生新的隱向量來生成新的樣本,vae能產生新的隱向量z,進而生成有效的新樣本。vae能夠生成新樣本的原因是:vae在編碼過程中加入了一些限制,迫使編碼器產生的隱向量的後驗分布q(z
∣x
)q(z|x)
q(z∣x)
盡量接近某個特定分布(如正態分佈).訓練過程的優化目標包括重構誤差和對後驗分布q(z
∣x
)q(z|x)
q(z∣x)
的約束這兩部分。vae編碼器的輸出不是隱空間中的向量,而是所屬正態分佈的均值和標準差,然後再根據均值與標準差來取樣出隱向量z。
gan,思路就是乙個判別器,乙個生成器,兩個對抗訓練,判別器盡量能識別出真實樣本,生成器盡量生成出判別器無法正確判別的樣本。這目標的優化目標是:圖圖
ae與vae的聯絡與區別
速記:二至都屬於有向圖模型。但ae不可以創造新樣本。
詳細:ae和vae 都屬於有向圖模型,模型的目的都是對隱變數空間進行建模;但是ae智慧型模仿,不能創造,vae可以根據隨機生成第的隱向量來生成新的樣本。
ae的優化目標是最小化真實樣本與對應的生成樣本之間的重構誤差;vae除考慮重構誤差外,還加入了對隱變數空間的約束目標。
ae編碼器的輸出代表真實樣本對應的隱向量,而vae編碼器的輸出可以看作由隱向量所對應的分布的均值和標準差組成。
gan和ae/vae的聯絡區別
速記:內部都存在對抗思想。
詳細:vae與gan內部都存在對抗思想,但vae是將兩部分同步優化,而gan則是交替優化的。
與ae相同的是,gan的優化目標只涉及生成樣本和真實樣本之間的比較,沒有vae中對後驗分布的約束。不同的是,gan再判斷樣本真假時不需要真實樣本與勝場樣本一一對應。
gan沒有像ae那樣從學習到的隱向量後驗分布q(z
∣x
)q(z|x)
q(z∣x)
中獲得生成樣本x
^\hat
x^的能力,科恩那個因此導致模式坍塌、訓練不穩定等問題。
速記:梯度消失、模式坍塌等
詳細:在訓練開始時,生成器還很差,生成資料與真實資料相差甚遠,判別器可以以高置信度將二者區分開來,這樣log
(1−d
(g(z
))
)log(1-d(g(z)))
log(1−
d(g(
z)))
達到飽和,梯度消失。
速記:不能保證實際應用時的收斂性;模式坍塌;缺乏理性的評價和準則。
詳細:看書。
葫蘆書筆記 迴圈神經網路(RNN)
迴圈神經網路 rnn 是用來建模序列化資料的一種主流深度學習模型。迴圈神經網路和卷積神經網路 速記 迴圈聖經網路可以很好地處理文字資料變長並且有序的輸入序列 rnn的前向傳播公式 n et t ux t wh t 1net t ux t wh nett uxt wht 1 h t f ne tt h...
西瓜書筆記 模型評估與選擇
錯誤率 分類錯誤的樣本數佔樣本總數的比例 精度 1 錯誤率 訓練誤差 經驗誤差 學習器在訓練集上的誤差 泛化誤差 學習器訓練之後,在新樣本上的誤差 過擬合 學習器把訓練樣本學習的 過好 導致泛化能力下降。欠擬合 學習器尚未學好訓練樣本的一般性質。以下四種方法可以有效地從乙個資料集中分出訓練集 s 和...
機器學習筆記 概率生成模型
假設有兩類資料,每一類都有若干個樣本 概率生成模型認為每一類資料都服從某一種分布,如高斯分布 從兩類訓練資料中得到兩個高斯分布的密度函式,具體的是獲得均值和方差兩個引數 測試樣本輸入到其中乙個高斯分布函式,得到的概率值若大於0.5,則說明該樣本屬於該類,否則屬於另一類。演算法的核心在於獲取分布函式的...