時(shí)間:2018-06-04 17:59:31來源:網(wǎng)絡(luò)轉(zhuǎn)載
自編碼器,就是一個(gè)程序,目的是讓它的輸出值等于輸入值(trytocopyitsinputtoitsoutput),但是要經(jīng)過函數(shù)變化生成一個(gè)中間值,使這個(gè)中間值不等于輸入值。例如x—y—z,x為輸入值,y為經(jīng)過函數(shù)變換后的一個(gè)中間值,z是y經(jīng)過變換后的一個(gè)輸出值,自編碼器的目的是為了讓z等于x,同時(shí)y不等于x。這樣的一個(gè)變換中,y就承載了x的全部信息,是極其有意義的。具體有怎樣的意義?提高數(shù)據(jù)分類效率!
在深入了解自編碼器實(shí)現(xiàn)原理之前,首先要明白一個(gè)前提,我們利用的是人工神經(jīng)網(wǎng)絡(luò)。那什么是神經(jīng)網(wǎng)絡(luò)呢?簡(jiǎn)單來講,神經(jīng)網(wǎng)絡(luò)就是在對(duì)原始信號(hào)逐層地做非線性變換,如下圖所示。
神經(jīng)網(wǎng)絡(luò)往往用于分類,其目的是去逼近從輸入層x到輸出層y的變換函數(shù),h為多層的隱藏層。因此,我們會(huì)定義一個(gè)目標(biāo)函數(shù)來衡量當(dāng)前的輸出和真實(shí)結(jié)果的差異,利用該函數(shù)去逐步調(diào)整(如梯度下降)系統(tǒng)的參數(shù),以使得整個(gè)網(wǎng)絡(luò)盡可能去擬合訓(xùn)練數(shù)據(jù)。如果有正則約束的話,還同時(shí)要求模型盡量簡(jiǎn)單(防止過擬合)。
自編碼器實(shí)現(xiàn)原理
如果給定一個(gè)神經(jīng)網(wǎng)絡(luò),我們假設(shè)其輸出與輸入是相同的,然后訓(xùn)練調(diào)整其參數(shù),得到每一層中的權(quán)重。自然地,我們就得到了輸入的幾種不同表示(每一層代表一種表示),這些表示就是特征。自動(dòng)編碼器就是一種盡可能復(fù)現(xiàn)輸入信號(hào)的神經(jīng)網(wǎng)絡(luò)。為了實(shí)現(xiàn)這種復(fù)現(xiàn),自動(dòng)編碼器就必須捕捉可以代表輸入數(shù)據(jù)的最重要的因素,找到可以代表原信息的主要成分。
1)給定無標(biāo)簽數(shù)據(jù),用無監(jiān)督學(xué)習(xí)去學(xué)習(xí)特征:
如上圖,我們將input輸入一個(gè)encoder編碼器,就會(huì)得到一個(gè)code,這個(gè)code也就是輸入的一個(gè)表示,那么我們?cè)趺粗肋@個(gè)code表示的就是input呢?我們加一個(gè)decoder解碼器,這時(shí)候decoder就會(huì)輸出一個(gè)信息,那么如果輸出的這個(gè)信息和一開始的輸入信號(hào)input是很像的(理想情況下就是一樣的),那很明顯,我們就有理由相信這個(gè)code是可靠的。所以,我們就通過調(diào)整encoder和decoder的參數(shù),使得輸出和輸入之間的誤差(重構(gòu)誤差)最小,這時(shí)候我們就得到了輸入input信號(hào)的第一個(gè)表示,就是編碼code了。而此時(shí),輸出的解碼器就已經(jīng)不重要了,因?yàn)閏ode已經(jīng)表示了input的所有信息,即code已經(jīng)代表了input。
2)通過編碼器產(chǎn)生特征,然后訓(xùn)練下一層。這樣逐層訓(xùn)練:
然后第二層的訓(xùn)練就以第一層的code作為第二層的input,然后同樣使其輸出等于輸入,獲得code2表示code,第三層code3表示code2……直至多層。我們通常所說的深度學(xué)習(xí)之中,深度一詞就源于此神經(jīng)網(wǎng)絡(luò)的多層,層數(shù)越多,學(xué)習(xí)深度也就越深。
3)有監(jiān)督微調(diào):
經(jīng)過上面的方法,我們就可以得到很多層了。至于需要多少層(或者深度需要多少,這個(gè)目前本身就沒有一個(gè)科學(xué)的評(píng)價(jià)方法)需要自己試驗(yàn)調(diào)了。每一層都會(huì)得到原始輸入的不同的表達(dá)。當(dāng)然了,我們覺得它是越抽象越好了,就像人的視覺系統(tǒng)一樣。
到這里,這個(gè)自編碼器還不能用來分類數(shù)據(jù),因?yàn)樗€沒有學(xué)習(xí)如何去連結(jié)一個(gè)輸入和一個(gè)類。它只是學(xué)會(huì)了如何去重構(gòu)或者復(fù)現(xiàn)它的輸入而已?;蛘哒f,它只是學(xué)習(xí)獲得了一個(gè)可以良好代表輸入的特征,這個(gè)特征可以最大程度上代表原輸入信號(hào)。那么,為了實(shí)現(xiàn)分類,我們就可以在自編碼器的最頂?shù)木幋a層添加一個(gè)分類器(例如邏輯回歸、SVM等),然后通過標(biāo)準(zhǔn)的多層神經(jīng)網(wǎng)絡(luò)的監(jiān)督訓(xùn)練方法(梯度下降法)去訓(xùn)練。
也就是說,這時(shí)候,我們需要將最后層的特征code輸入到最后的分類器,通過有標(biāo)簽樣本,通過監(jiān)督學(xué)習(xí)進(jìn)行微調(diào),這也分兩種,一個(gè)是只調(diào)整分類器(黑色部分):
另一種:通過有標(biāo)簽樣本,微調(diào)整個(gè)系統(tǒng):(如果有足夠多的數(shù)據(jù),這個(gè)是最好的。即端對(duì)端學(xué)習(xí))
一旦最后的監(jiān)督訓(xùn)練完成,這個(gè)系統(tǒng)就可以用來分類了。神經(jīng)網(wǎng)絡(luò)的最頂層可以作為一個(gè)線性分類器,然后我們加上自編碼器,做成性能更優(yōu)的分類器去取代它。
標(biāo)簽:
中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>新品發(fā)布:CD300系列總線型伺服驅(qū)動(dòng)器
2024-10-31
2024-10-31
2024-10-31
新勢(shì)能 新期待|維智B1L直線伺服驅(qū)動(dòng)器
2024-10-31
纖薄之間,化繁為簡(jiǎn)|合信全新simple系...
2024-10-29
2024-10-18
推薦專題
更多>