摘要: 想要學(xué)習(xí)深度學(xué)習(xí),,不了解這些知識(shí)點(diǎn),怕是學(xué)不好哦~ 深度學(xué)習(xí)概述在2006年之前,,訓(xùn)練深度監(jiān)督前饋神經(jīng)網(wǎng)絡(luò)總是失敗的,,其主要原因都是導(dǎo)致過(guò)度擬合,即訓(xùn)練錯(cuò)誤減少,,而驗(yàn)證錯(cuò)誤增加,。 深度網(wǎng)絡(luò)通常意味著具有多于1個(gè)隱藏層的人工神經(jīng)網(wǎng)絡(luò)。訓(xùn)練深層隱藏層需要更多的計(jì)算能力,,具有更深的深度似乎更好,,因?yàn)橹庇X(jué)神經(jīng)元可以使用下面圖層中的神經(jīng)元完成的工作,從而導(dǎo)致數(shù)據(jù)的分布式表示,。 Bengio 認(rèn)為隱藏層中的神經(jīng)元可被看作是其下面的層中的神經(jīng)元所學(xué)到的特征檢測(cè)器(feature detector),。這個(gè)結(jié)果處于作為一個(gè)神經(jīng)元子集的更好泛化(generalization)中,而這個(gè)神經(jīng)元子集可從輸入空間中的特定區(qū)域的數(shù)據(jù)上進(jìn)行學(xué)習(xí),。 而且,,由于相同功能所需的計(jì)算單元越少,效率就越高,,所以更深的架構(gòu)可以更高效,。分布式背后的核心思想是共享統(tǒng)計(jì)優(yōu)勢(shì),將不同架構(gòu)的組件重用于不同的目的,。 深度神經(jīng)架構(gòu)是由多個(gè)利用非線(xiàn)性操作的層組成的,例如在帶有許多隱藏層的神經(jīng)網(wǎng)絡(luò)中,。數(shù)據(jù)集中常常存在各種變化的因素,,例如數(shù)據(jù)各自的性質(zhì)經(jīng)??赡塥?dú)立地變化。 深度學(xué)習(xí)算法可以獲取解釋數(shù)據(jù)中的統(tǒng)計(jì)變化,,以及它們?nèi)绾蜗嗷プ饔靡陨晌覀冇^察到的數(shù)據(jù)類(lèi)型,。較低層次的抽象更直接地與特定的觀察聯(lián)系在一起,另一方面,,更高層次的更抽象,,因?yàn)樗麄兣c感知數(shù)據(jù)的聯(lián)系更加偏遠(yuǎn)。 深度架構(gòu)學(xué)習(xí)的重點(diǎn)是自動(dòng)發(fā)現(xiàn)從低級(jí)特征到更高級(jí)別概念的抽象,。算法可以在不需要手動(dòng)定義必要抽象的情況下啟用發(fā)現(xiàn)這些定義,。 數(shù)據(jù)集中的訓(xùn)練樣本的多樣性必須至少與測(cè)試集中的一樣多,否則算法就不能一概而論,。深度學(xué)習(xí)方法旨在學(xué)習(xí)特征層次結(jié)構(gòu),,將更低層次的特征組合成更高層次的抽象。 具有大量參數(shù)的深度神經(jīng)網(wǎng)絡(luò)是非常強(qiáng)大的機(jī)器學(xué)習(xí)系統(tǒng),。但是,,過(guò)度擬合在深度網(wǎng)絡(luò)中是一個(gè)嚴(yán)重的問(wèn)題。過(guò)度擬合是指當(dāng)驗(yàn)證錯(cuò)誤開(kāi)始增加而訓(xùn)練錯(cuò)誤下降時(shí),。Dropout是解決這個(gè)問(wèn)題的正則化技術(shù)之一,,這將在后面討論。 今天,,深度學(xué)習(xí)技術(shù)取得成功的最重要因素之一是計(jì)算能力的提高,。圖形處理單元(GPU)和云計(jì)算對(duì)于將深度學(xué)習(xí)應(yīng)用于許多問(wèn)題至關(guān)重要。 云計(jì)算允許計(jì)算機(jī)集群和按需處理,,通過(guò)并行訓(xùn)練神經(jīng)網(wǎng)絡(luò)來(lái)幫助減少計(jì)算時(shí)間,。另一方面,GPU是用于高性能數(shù)學(xué)計(jì)算的專(zhuān)用芯片,,加速了矩陣的計(jì)算,。 在06-07這一年,三篇論文徹底改變了深度學(xué)習(xí)的學(xué)科,。他們工作中的關(guān)鍵原則是每層都可以通過(guò)無(wú)監(jiān)督學(xué)習(xí)進(jìn)行預(yù)先訓(xùn)練,,一次完成一層。最后,,通過(guò)誤差反向傳播的監(jiān)督訓(xùn)練微調(diào)所有層,,使得這種通過(guò)無(wú)監(jiān)督學(xué)習(xí)進(jìn)行的初始化比隨機(jī)初始化更好。 受限玻爾茲曼機(jī)和深度信念網(wǎng)絡(luò)其中有一種無(wú)監(jiān)督算法是受限玻爾茲曼機(jī)(RBM),,可用于預(yù)訓(xùn)練深層信念網(wǎng)絡(luò),。RBM是波爾茲曼機(jī)的簡(jiǎn)化版本,它的設(shè)計(jì)靈感來(lái)自于統(tǒng)計(jì)力學(xué),它可以模擬給定數(shù)據(jù)集的基本分布的基于能量的概率,,從中可以得出條件分布,。 玻爾茲曼機(jī)是隨機(jī)處理可見(jiàn)單元和隱藏單元的雙向連接網(wǎng)絡(luò)。原始數(shù)據(jù)對(duì)應(yīng)于'可見(jiàn)'神經(jīng)元和樣本到觀察狀態(tài),,而特征檢測(cè)器對(duì)應(yīng)'隱藏'神經(jīng)元,。在波爾茲曼機(jī)中,可見(jiàn)神經(jīng)元為網(wǎng)絡(luò)和其運(yùn)行環(huán)境提供輸入,。訓(xùn)練過(guò)程中,,可見(jiàn)神經(jīng)元被鉗制(設(shè)置成定義值,由訓(xùn)練數(shù)據(jù)確定),。另一方面,,隱藏的神經(jīng)元可以自由操作。 然而,,玻爾茲曼機(jī)因?yàn)槠溥B通性而非常難以訓(xùn)練,。一個(gè) RBM 限制了連通性從而使得學(xué)習(xí)變得簡(jiǎn)單。在組成二分圖(bipartite graph)的單層中,,隱藏單元沒(méi)有連接,。它的優(yōu)勢(shì)是隱藏單位可以獨(dú)立更新,并且與給定的可見(jiàn)狀態(tài)平行,。 這些網(wǎng)絡(luò)由確定隱藏/可見(jiàn)狀態(tài)概率的能量函數(shù)控制,。隱藏/可見(jiàn)單位的每個(gè)可能的連接結(jié)構(gòu)( joint configurations )都有一個(gè)由權(quán)重和偏差決定的 Hopfield 能量。連接結(jié)構(gòu)的能量由吉布斯采樣優(yōu)化,,它可通過(guò)最小化 RBM 的最低能量函數(shù)學(xué)習(xí)參數(shù),。 在上圖中,,左層代表可見(jiàn)層,,右層代表隱藏層。 在深度信念網(wǎng)絡(luò)(DBN)中,,RBM由輸入數(shù)據(jù)進(jìn)行訓(xùn)練,,輸入數(shù)據(jù)具有隱藏層中隨機(jī)神經(jīng)元捕獲的輸入數(shù)據(jù)的重要特征。在第二層中,,訓(xùn)練特征的激活被視為輸入數(shù)據(jù),。第二個(gè)RBM層的學(xué)習(xí)過(guò)程可以看作是學(xué)習(xí)特征的特征。每次當(dāng)一個(gè)新的層被添加到深度信念網(wǎng)絡(luò)中時(shí),,原始訓(xùn)練數(shù)據(jù)的對(duì)數(shù)概率上的可變的更低的界限就會(huì)獲得提升,。 上圖顯示了RBM將其數(shù)據(jù)分布轉(zhuǎn)換為隱藏單元的后驗(yàn)分布,。 隨機(jī)初始化RBM的權(quán)重,,導(dǎo)致p(x)和q(x)的分布差異,。學(xué)習(xí)期間,迭代調(diào)整權(quán)重以最小化p(x)和q(x)之間的誤差,。q(x)是原始數(shù)據(jù)的近似值,,p(x)是原始數(shù)據(jù)。 調(diào)整來(lái)自神經(jīng)元和另一神經(jīng)元的突觸權(quán)重的規(guī)則不依賴(lài)于神經(jīng)元是可見(jiàn)的還是隱藏的,。由RBM層更新的參數(shù)被用作DBN中的初始化,通過(guò)反向傳播的監(jiān)督訓(xùn)練來(lái)微調(diào)所有層,。 對(duì)于KDD Cup 1999的IDS數(shù)據(jù),,使用多模態(tài)(Bernoulli-Gaussian)RBM是不錯(cuò)的選擇,因?yàn)镵DD Cup 1999由混合數(shù)據(jù)類(lèi)型組成,,特別是連續(xù)和分類(lèi),。在多模RBM中是使用兩個(gè)不同的通道輸入層,一個(gè)是用于連續(xù)特征的高斯輸入單元,,另一個(gè)是使用二進(jìn)制特征的伯努利輸入單元層,。今天我們就不進(jìn)行詳細(xì)講解。 Dropout最近的發(fā)展是想深度網(wǎng)絡(luò)引入強(qiáng)大的正規(guī)化矩陣來(lái)減少過(guò)度擬合,。在機(jī)器學(xué)習(xí)中,,正則化是附加信息,通常是一種懲罰機(jī)制被引入,,以懲罰導(dǎo)致過(guò)度擬合的模型的復(fù)雜性,。 Dropout是由Hinton引入的深度神經(jīng)網(wǎng)絡(luò)的正則化技術(shù),其包括通過(guò)在每一個(gè)訓(xùn)練迭代上隨機(jī)關(guān)掉一部分神經(jīng)元,,而是在測(cè)試時(shí)間使用整個(gè)網(wǎng)絡(luò)(權(quán)重按比例縮?。瑥亩乐固卣鳈z測(cè)器的共適應(yīng),。 Dropout 通過(guò)等同于訓(xùn)練一個(gè)共享權(quán)重的指數(shù)模型減少過(guò)擬合,。對(duì)于給定的訓(xùn)練迭代,存在不同 dropout 配置的不同指數(shù),,所以幾乎可以肯定每次訓(xùn)練出的模型都不一樣,。在測(cè)試階段,使用了所有模型的平均值,,作為強(qiáng)大的總體方法,。 在上圖中,,dropout隨機(jī)舍棄神經(jīng)網(wǎng)絡(luò)層之間的連接 在上圖中,連接被丟棄的概率,,同時(shí)在訓(xùn)練時(shí)間中權(quán)重按比例縮小到pw 在機(jī)器學(xué)習(xí)競(jìng)賽中,,平均很多模型通常是許多機(jī)器學(xué)習(xí)競(jìng)賽獲勝者的關(guān)鍵,,使用許多不同類(lèi)型的模型,然后在測(cè)試時(shí)間將其結(jié)合起來(lái)進(jìn)行預(yù)測(cè),。 隨機(jī)森林是一個(gè)非常強(qiáng)大的bagging算法,,它是通過(guò)對(duì)許多決策樹(shù)進(jìn)行平均而創(chuàng)建的,給它們提供了不同的訓(xùn)練樣本集和替換,。眾所周知,,決策樹(shù)很容易適應(yīng)數(shù)據(jù)并且在測(cè)試時(shí)間快速,因此通過(guò)給予不同的訓(xùn)練集合來(lái)平均不同的單獨(dú)樹(shù)木是可以承受的,。 然而,,對(duì)深度神經(jīng)網(wǎng)絡(luò)使用相同的方法,在計(jì)算上是非常昂貴,。訓(xùn)練單獨(dú)的深度神經(jīng)網(wǎng)絡(luò)和訓(xùn)練多個(gè)深度神經(jīng)網(wǎng)絡(luò)計(jì)算成本已經(jīng)很高了,,然后平均似乎是不切實(shí)際的。此外,,我們需要的是在測(cè)試有效的單個(gè)網(wǎng)絡(luò),,而不是有大量的大型神經(jīng)網(wǎng)絡(luò)。 Dropout是平均許多大型神經(jīng)網(wǎng)絡(luò)的有效方法,。每次訓(xùn)練模型時(shí),,隱藏單元都可以省略。因此,,在測(cè)試時(shí)我們應(yīng)該使用權(quán)重減半的“平均網(wǎng)絡(luò)”模型,。平均網(wǎng)絡(luò)等同于將??所有可能網(wǎng)絡(luò)預(yù)測(cè)的標(biāo)簽上概率分布的幾何平均值與單個(gè)隱藏的單位層和softmax輸出層。 另一種看待Dropout的方法是,,它能夠防止特征檢測(cè)器之間的共適應(yīng)(co-adaption),。特征檢測(cè)器的共適應(yīng)意味著如果隱藏單元知道存在哪些其他隱藏單元,則可以在訓(xùn)練數(shù)據(jù)上與它們進(jìn)行協(xié)調(diào),。但是,,在測(cè)試數(shù)據(jù)集上,復(fù)合協(xié)調(diào)很可能無(wú)法一概而論,。 Dropout也可以以一種較低的概率在輸入層中使用,,通常為20%的概率。這里的概念和降噪自動(dòng)編碼器發(fā)展出的概念相同,。在此方法中,,一些輸入會(huì)被遺漏。這會(huì)對(duì)準(zhǔn)確性造成傷害,,但也能改善泛化能力,,其方式類(lèi)似于在訓(xùn)練時(shí)將噪聲添加到數(shù)據(jù)集中。 在2013年出現(xiàn)了Dropout的一種變體,,稱(chēng)為Drop connect,。它不再是以特定的概率權(quán)重舍棄隱藏單位,,而是以一定的概率隨機(jī)舍棄。實(shí)驗(yàn)結(jié)果已經(jīng)表明,,在MNIST數(shù)據(jù)集上Drop connect網(wǎng)絡(luò)比的dropout網(wǎng)絡(luò)表現(xiàn)的更好,。 處理類(lèi)別失衡的技巧當(dāng)一個(gè)類(lèi)別(少數(shù)類(lèi))相比于其他類(lèi)別(多數(shù)類(lèi))明顯代表性不足的時(shí)候就會(huì)產(chǎn)生類(lèi)別失衡問(wèn)題。這個(gè)難題有著現(xiàn)實(shí)意義,,會(huì)對(duì)誤分類(lèi)少數(shù)類(lèi)造成極高的代價(jià),,比如檢測(cè)欺詐或入侵這樣的異常活動(dòng),。這里有多種技術(shù)可以處理類(lèi)別失衡難題,,如下面解釋的這一種: SMOTE:合成少數(shù)過(guò)采樣技術(shù) 解決類(lèi)失衡問(wèn)題的一種廣泛使用的方法是對(duì)數(shù)據(jù)集進(jìn)行重采樣。抽樣方法涉及通過(guò)調(diào)整少數(shù)群體和多數(shù)群體的先驗(yàn)分布來(lái)預(yù)處理和平衡訓(xùn)練數(shù)據(jù)集,。SMOTE是一種過(guò)抽樣的方法,其中通過(guò)創(chuàng)建“合成”示例而不是通過(guò)對(duì)替換進(jìn)過(guò)行采樣來(lái)對(duì)少數(shù)類(lèi)別進(jìn)行過(guò)采樣,。 已經(jīng)有人提出說(shuō)通過(guò)替換進(jìn)行的少數(shù)類(lèi)過(guò)采樣不能顯著改進(jìn)結(jié)果,,不如說(shuō)它趨于過(guò)擬合少數(shù)類(lèi)的分類(lèi)。相反,,SMOTE算法在“特征空間”而不是“數(shù)據(jù)空間”中運(yùn)行,。它通過(guò)對(duì)少數(shù)類(lèi)別進(jìn)行過(guò)度抽樣來(lái)創(chuàng)建合成樣本,從而更好地推廣,。 這個(gè)想法的靈感來(lái)自于通過(guò)對(duì)真實(shí)數(shù)據(jù)進(jìn)行操作來(lái)創(chuàng)建額外的訓(xùn)練數(shù)據(jù),,以便有更多數(shù)據(jù)有助于推廣預(yù)測(cè)。 在此算法中第一個(gè)最近鄰(neighbours)是為了少數(shù)類(lèi)計(jì)算的,。然后,,就可以以下列方式計(jì)算少數(shù)類(lèi)的合成特征:選擇最鄰近的一個(gè)隨機(jī)數(shù)字,然后使用這一數(shù)字與原始少數(shù)類(lèi)數(shù)據(jù)點(diǎn)的距離,。 該距離乘以0和1之間的隨機(jī)數(shù),,并將結(jié)果作為附加樣本添加到原始少數(shù)類(lèi)數(shù)據(jù)的特征向量,從而創(chuàng)建合成的少數(shù)類(lèi)樣本,。 神經(jīng)網(wǎng)絡(luò)中成本敏感的學(xué)習(xí)成本敏感性學(xué)習(xí)似乎是解決分類(lèi)問(wèn)題的類(lèi)不均衡問(wèn)題的一種非常有效的方法,。接下來(lái)我們描述特定于神經(jīng)網(wǎng)絡(luò)的三種成本敏感的方法。 在測(cè)試未見(jiàn)過(guò)的示例時(shí),,將該類(lèi)的先驗(yàn)概率合并到神經(jīng)網(wǎng)絡(luò)的輸出層中: 根據(jù)成本調(diào)整學(xué)習(xí)率。應(yīng)將更高的學(xué)習(xí)率分配給具有高誤分類(lèi)成本的樣本,,從而對(duì)這些例子的權(quán)重變化產(chǎn)生更大的影響: 修改均方誤差函數(shù)。結(jié)果是,,反向傳播進(jìn)行的學(xué)習(xí)將最小化誤分類(lèi)成本,。新的誤差函數(shù)是: 其成本因子是K[i,j],。 這個(gè)新的誤差函數(shù)產(chǎn)生一個(gè)新的增量規(guī)則,,用于更新網(wǎng)絡(luò)的權(quán)重: 其中第一個(gè)方程表示輸出神經(jīng)元的誤差函數(shù),,第二個(gè)方程表示隱層神經(jīng)元的誤差函數(shù),。 本文由@阿里云云棲社區(qū)組織翻譯。 文章原標(biāo)題《demystifying-generative-adversarial-networks》,, 譯者:虎說(shuō)八道,,審校:袁虎。 |
|
來(lái)自: 非線(xiàn)性co7vtwr8 > 《知識(shí)就是力量》