机器学习笔记:auto encoder
1 autoencoder 介紹
????????這是一個無監(jiān)督學(xué)習(xí)問題,旨在從原始數(shù)據(jù)x中學(xué)習(xí)一個低維的特征向量(沒有任何標(biāo)簽)
????????encoder 最早是用線性函數(shù)+非線性單元構(gòu)成(比如Linear+nonlinearity),之后的模型有使用多層全連接、Relu+CNN進(jìn)行encoder操作的 。
? ? ? ? 那么,我們怎么從原始數(shù)據(jù)中學(xué)習(xí)特征向量z呢?
? ? ? ? 核心思路就是使用一個decoder
?
?這里的tconv就是機(jī)器學(xué)習(xí)筆記: Upsampling, U-Net, Pyramid Scene Parsing Net_UQI-LIUWJ的博客-CSDN博客中所介紹的“up convolution”
在訓(xùn)練完畢之后,丟棄decoder,使用encoder來進(jìn)行后續(xù)的任務(wù)?
2 特征向量z的維度
z的維度需要比輸入x的維度小——>這樣才能壓縮數(shù)據(jù)
如果z的維度比輸入x的維度大或者等于輸入x的維度的話——>模型沒有學(xué)習(xí)新特征的“動力”——>直接將x復(fù)制到z,多出來的維度補(bǔ)0即可
3 auto-encoder變體
3.1 de-noising autoencoder
在輸入中假如噪聲,但是學(xué)習(xí)的特征希望能還原成沒有噪聲的版本
?——>可以更好地學(xué)習(xí)特征表示
——>避免直接復(fù)制——>所以每一個epoch加在輸入上的噪聲是不一樣的
3.2 stacked auto-encoder(SAE)
多層auto-encoder,訓(xùn)練完畢后也是去掉所有的decoder
?4 AE作為生成模型
4.1 context encoder
????????抹去圖像的某一塊,通過auto-encoder,看看能不能還原成整張圖片/判斷抹去的這一塊學(xué)到的特征和實際這一塊之間的區(qū)別
?
?4.1.1 不同的遮法
?4.2? temporal context encoder
????????對于圖像來說,我們的可以遮去一些像素點(diǎn),然后通過auto-encoder的方式來學(xué)習(xí)這些遮掉的像素點(diǎn)。那么對于視頻來說,我們也可以遮去一些視頻中的“像素點(diǎn)”,也即遮掉某幾幀,然后同樣用auto-encoder來進(jìn)行學(xué)習(xí)
? ?5 auto-encoder應(yīng)用:半監(jiān)督學(xué)習(xí)
????????當(dāng)我們有很多的圖像,但是只有很少的label的時候,我們可以先對不適用標(biāo)簽,對圖像使用auto-encoder。訓(xùn)練完畢之后,我們丟棄decoder,然后再encoder后面接入分類器,學(xué)習(xí)標(biāo)簽y',將其和真實特征y進(jìn)行比對? ? ??
????????
?
?
總結(jié)
以上是生活随笔為你收集整理的机器学习笔记:auto encoder的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习笔记: Discriminati
- 下一篇: 机器学习笔记:VAE