第6章 人工神經(jīng)網(wǎng)絡(luò)_第1頁
第6章 人工神經(jīng)網(wǎng)絡(luò)_第2頁
第6章 人工神經(jīng)網(wǎng)絡(luò)_第3頁
第6章 人工神經(jīng)網(wǎng)絡(luò)_第4頁
第6章 人工神經(jīng)網(wǎng)絡(luò)_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1943年,McCulloch和Pitts提出了形式神經(jīng)元,開創(chuàng)了神經(jīng)科學(xué)理論研究2010年后興起的深度學(xué)習(xí),其神經(jīng)網(wǎng)絡(luò)算法的基石是BP算法神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史:人工神經(jīng)網(wǎng)絡(luò)簡稱為神經(jīng)網(wǎng)絡(luò)或稱為連接模型。早在1943年,心理學(xué)家McCulloch和數(shù)學(xué)家Pitts合作提出了形式神經(jīng)元的數(shù)學(xué)模型,從此開創(chuàng)了神經(jīng)科學(xué)理論研究的時代;1957年Rosenblatt提出的感知器模型,由閾值性神經(jīng)元組成,試圖模擬動物和人腦的感知和學(xué)習(xí)能力;1986年,由Rumelhart和McCelland為首的科學(xué)家小組提出了BP神經(jīng)網(wǎng)絡(luò),這一成果標(biāo)志著神經(jīng)網(wǎng)絡(luò)的研究取得了突破性的進(jìn)展;隨著2010年后深度學(xué)習(xí)的興起,出現(xiàn)了許多深度神經(jīng)網(wǎng)絡(luò)模型及相應(yīng)的學(xué)習(xí)算法,但大多是基于梯度計算的誤差反向傳播學(xué)習(xí)算法這也是最常用的神經(jīng)網(wǎng)絡(luò)算法的基石。第一部分——第6章:背景——發(fā)展歷史一般我們可以把神經(jīng)網(wǎng)絡(luò)的發(fā)展歷史分成4個時期萌芽時期(1890-1960)第一次高潮時期(1969-1982)第二次高潮時期(1982-1986)第三次高潮時期(2000-至今)第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)前饋神經(jīng)網(wǎng)絡(luò)前饋神經(jīng)網(wǎng)絡(luò)(FeedforwardNeuralNetwork,F(xiàn)NN)也稱為多層感知器(Mutlti-LayerPerceptron,MLP),前饋神經(jīng)網(wǎng)絡(luò)主要由一個輸入層、一個(淺層網(wǎng)絡(luò))或多個(深層網(wǎng)絡(luò),因此叫作深度學(xué)習(xí))隱藏層,和一個輸出層構(gòu)成。每個層與下一層連接。這種連接是前饋神經(jīng)網(wǎng)絡(luò)架構(gòu)的關(guān)鍵。前饋神經(jīng)網(wǎng)絡(luò)前饋神經(jīng)網(wǎng)絡(luò)的早期形式為單層感知器(Perceptron),是FrankRosenblatt在1957年就職于Cornell航空實(shí)驗(yàn)室時所發(fā)明的一種人工神經(jīng)網(wǎng)絡(luò)。后來,在單層感知器基礎(chǔ)上發(fā)展起了多層感知器(MLP),反向傳播算法常被MLP用來進(jìn)行學(xué)習(xí),在模式識別的領(lǐng)域中算是標(biāo)準(zhǔn)監(jiān)督學(xué)習(xí)算法,并在計算神經(jīng)學(xué)及并行分布式處理領(lǐng)域中,持續(xù)成為被研究的課題。MLP已被證明是一種通用的函數(shù)近似方法,可以被用來擬合復(fù)雜的函數(shù),或解決分類問題。MLP在80年代曾是相當(dāng)流行的機(jī)器學(xué)習(xí)方法,擁有廣泛的應(yīng)用場景,譬如語音識別、圖像識別、機(jī)器翻譯等等。1人腦神經(jīng)元結(jié)構(gòu)第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)隨著2010年后深度學(xué)習(xí)的興起,深度神經(jīng)網(wǎng)絡(luò)在語音識別、模式分類、過程監(jiān)控等領(lǐng)域取得了極大的成功。與卷積神經(jīng)網(wǎng)絡(luò)等深度神經(jīng)網(wǎng)絡(luò)相比,前饋神經(jīng)網(wǎng)路需要考量的參數(shù)更少,使之成為一種頗具吸引力的深度學(xué)習(xí)結(jié)構(gòu),MLP等前饋神經(jīng)網(wǎng)絡(luò)又重新得到了關(guān)注。1然而前饋神經(jīng)網(wǎng)絡(luò)并不是從生物系統(tǒng)角度描述人腦的神經(jīng)元結(jié)構(gòu),只是對其某些結(jié)構(gòu)和功能進(jìn)行模仿和簡化。網(wǎng)絡(luò)中各個神經(jīng)元之間的連接強(qiáng)度靠改變權(quán)值和閾值的大小來實(shí)現(xiàn)。權(quán)值和閾值隨著網(wǎng)絡(luò)訓(xùn)練和學(xué)習(xí)進(jìn)行調(diào)整改變,優(yōu)化各個神經(jīng)元之間的連接強(qiáng)度,從而不斷提高整個網(wǎng)絡(luò)對訓(xùn)練樣本特征的反應(yīng)靈敏度和精確度前饋神經(jīng)網(wǎng)絡(luò)模型包括輸入層、隱含層和輸出層。各相鄰層的神經(jīng)元可全連接,但相同層各神經(jīng)元之間不連接。通常所用的前饋神經(jīng)網(wǎng)絡(luò)都是三層網(wǎng)絡(luò),三層前饋神經(jīng)網(wǎng)絡(luò)是最基本的網(wǎng)絡(luò)結(jié)構(gòu),對于一般的問題,三層網(wǎng)絡(luò)可以很好地解決問題。Hecht-Nielsen證明有足夠多結(jié)點(diǎn)的三層神經(jīng)網(wǎng)絡(luò)可以產(chǎn)生任意復(fù)雜的映射,足以用于解決一般性的問題。如圖所示在基于BP算法的多層感知器中,是最普遍的單隱層網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。前饋神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)前饋神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)確定神經(jīng)網(wǎng)絡(luò)的隱含層是決定神經(jīng)網(wǎng)絡(luò)建立成功與否的關(guān)鍵,目前尚未有很好的數(shù)學(xué)表達(dá)式能夠準(zhǔn)確的計算出不同網(wǎng)絡(luò)所需要的隱含層節(jié)點(diǎn)個數(shù)。隱含層的節(jié)點(diǎn)個數(shù)與輸入層的神經(jīng)元個數(shù)和輸出層節(jié)的點(diǎn)個數(shù)密切相關(guān)。若隱含層節(jié)點(diǎn)數(shù)過少,網(wǎng)絡(luò)用以解決問題的信息量不足;若隱含層節(jié)點(diǎn)數(shù)過多,不僅網(wǎng)絡(luò)訓(xùn)練和學(xué)習(xí)的時間長,出現(xiàn)“過度吻合”。目前有以下3種常用于選擇隱含層數(shù)的經(jīng)驗(yàn)公式可供參考:第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)前饋神經(jīng)網(wǎng)絡(luò)的隱含層設(shè)計隱含層設(shè)計

第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)BP算法規(guī)則求vjk的梯度:求wij的梯度:第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)訓(xùn)練理念(梯度下降)1能以任意精度逼近任何非線性函數(shù),在短時間內(nèi)學(xué)習(xí)和貯存大量輸入——輸出模式映射,而不需要知道這些映射關(guān)系的數(shù)學(xué)表達(dá)式第一部分——第6章:6.1前饋神經(jīng)網(wǎng)絡(luò)以BP神經(jīng)網(wǎng)絡(luò)為代表的的前饋神經(jīng)網(wǎng)絡(luò)的最大優(yōu)點(diǎn)在于其中,基于梯度計算的BP誤差反向傳播學(xué)習(xí)算法是后續(xù)深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的理論基石能通過訓(xùn)練樣本反向傳播調(diào)節(jié)網(wǎng)絡(luò)的權(quán)值和閥值,通過網(wǎng)絡(luò)的自學(xué)習(xí)來達(dá)到網(wǎng)絡(luò)的誤差平方和最小的目的第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNetworks,CNN)是一類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)(FeedforwardNeuralNetworks),是深度學(xué)習(xí)的代表算法之一。卷積神經(jīng)網(wǎng)絡(luò)具有表征學(xué)習(xí)能力,能夠按其階層結(jié)構(gòu)對輸入信息進(jìn)行平移不變分類,因此也被稱”平移不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò)”。

對卷積神經(jīng)網(wǎng)絡(luò)的研究可追溯至日本學(xué)者福島邦彥提出的neocognitron模型。在其1979和1980年發(fā)表的論文中,福島仿造生物的視覺皮層設(shè)計了以“neocognitron”命名的神經(jīng)網(wǎng)絡(luò),其部分實(shí)現(xiàn)了卷積神經(jīng)網(wǎng)絡(luò)中卷積層(convolutionlayer)和池化層(poolinglayer)的功能,被認(rèn)為是啟發(fā)了卷積神經(jīng)網(wǎng)絡(luò)的開創(chuàng)性研究。

1988年,WeiZhang提出了第一個二維卷積神經(jīng)網(wǎng)絡(luò):平移不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò),并將其應(yīng)用于檢測醫(yī)學(xué)影像。獨(dú)立于WeiZhang,YannLeCun在1989年同樣構(gòu)建了應(yīng)用于計算機(jī)視覺問題的卷積神經(jīng)網(wǎng)絡(luò),即LeNet的最初版本。1LeNet包含兩個卷積層,2個全連接層,共計6萬個學(xué)習(xí)參數(shù),且在結(jié)構(gòu)上與現(xiàn)代的卷積神經(jīng)網(wǎng)絡(luò)十分接近。LeCun對權(quán)重進(jìn)行隨機(jī)初始化后使用了隨機(jī)梯度下降進(jìn)行學(xué)習(xí),這一策略被其后的深度學(xué)習(xí)研究所保留。由于LeCun在論述其網(wǎng)絡(luò)結(jié)構(gòu)時首次使用了“卷積”一詞,“卷積神經(jīng)網(wǎng)絡(luò)”也因此得名。卷積操作局部感受野第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)CNN網(wǎng)絡(luò)概念CNN網(wǎng)絡(luò)與神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)是神經(jīng)網(wǎng)絡(luò)的一種變形卷積神經(jīng)網(wǎng)絡(luò)與神經(jīng)網(wǎng)絡(luò)的主要區(qū)別就是CNN采用了卷積和子采樣過程。神經(jīng)生物學(xué)中局部感受野的提出(1962)催生了卷積的思想。卷積減少了CNN網(wǎng)絡(luò)參數(shù),子采樣減少了網(wǎng)絡(luò)參數(shù),權(quán)值共享大大減少的CNN網(wǎng)絡(luò)參數(shù)。但是CNN具備深層結(jié)構(gòu)第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)的一般結(jié)構(gòu)第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)卷積核CNN網(wǎng)絡(luò)的卷積核卷積核kernal在inputX圖中從左向右,從上至下每次移動一個位置,對應(yīng)位置相乘求和并賦值到OutputY中的一個位置。第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)池化CNN網(wǎng)絡(luò)的池化(pooling)池化通常有兩種形式。均值池化和最大池化,池化可以看做一種特殊的卷積過程。第一部分——第6章:6.2卷積神經(jīng)網(wǎng)絡(luò)小結(jié)卷積神經(jīng)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)一般由卷積層、池化層、全連接層和輸出層組成卷積層和池化層通常設(shè)置成多個,挖掘輸入數(shù)據(jù)中深層次的特征,卷積核對輸入數(shù)據(jù)進(jìn)行遍歷卷積時,會生成二維的特征圖;當(dāng)特征圖傳輸?shù)饺B接時,需要將特征圖拉直成一維,再與全連接層連接,最后連上輸出層,形成完整的CNN模型。CNN卷積神經(jīng)網(wǎng)絡(luò)因其卷積-池化的網(wǎng)絡(luò)結(jié)構(gòu),能夠從輸入數(shù)據(jù)中提取較深層次的特征,在多個領(lǐng)域都有所應(yīng)用。一般的全連接神經(jīng)網(wǎng)絡(luò)對維數(shù)較大的樣本進(jìn)行特征提取時,會產(chǎn)生很多的參數(shù),忽略數(shù)據(jù)之間的局部相關(guān)性,且易出現(xiàn)過擬合現(xiàn)象,泛化能力較差,也無法對數(shù)據(jù)自身的這種位置特性進(jìn)行學(xué)習(xí)。而CNN具有局部連接和權(quán)值共享兩大優(yōu)點(diǎn),權(quán)值共享減少了網(wǎng)絡(luò)參數(shù),而其與輸入數(shù)據(jù)的局部連接更是能夠挖掘出輸入數(shù)據(jù)的局部性特征。其結(jié)構(gòu)和流程如下:11然而對于相對較復(fù)雜的問題,RNN便會暴露其缺陷,這歸因于激活函數(shù)。激活函數(shù)在神經(jīng)網(wǎng)絡(luò)里最多只能存在6層左右,因?yàn)樗奶荻入S著網(wǎng)絡(luò)層反向傳播逐步累乘,梯度逐漸趨向于0。而在RNN中,誤差傳遞不僅僅存在于網(wǎng)絡(luò)層與網(wǎng)絡(luò)層之間,也存在于每一層的樣本序列間,所以RNN梯度彌散現(xiàn)象更加嚴(yán)重。第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)雖然前饋神經(jīng)網(wǎng)絡(luò)取得很大成功,但它無法明確模擬時間關(guān)系,并且所有數(shù)據(jù)點(diǎn)都是固定長度的向量。所以就誕生了RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))。循環(huán)神經(jīng)網(wǎng)絡(luò)與其他網(wǎng)絡(luò)的不同之處在于,所以能夠持續(xù)保留信息,能夠根據(jù)之前狀態(tài)推出后面的狀態(tài)。RNN都具有一種重復(fù)神經(jīng)網(wǎng)絡(luò)模塊的鏈?zhǔn)叫问健T跇?biāo)準(zhǔn)RNN中,這個重復(fù)的結(jié)構(gòu)模塊只有一個非常簡單的結(jié)構(gòu),例如一個tanh層。由于RNN的網(wǎng)絡(luò)參數(shù)相比較少,傳統(tǒng)的RNN僅適用于簡單的邏輯和樣本長短期記憶網(wǎng)絡(luò)(Long-ShortTermMemory,LSTM)論文首次發(fā)表于1997年,是一種時間循環(huán)神經(jīng)網(wǎng)絡(luò),為了解決一般的RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))存在的長期依賴問題,學(xué)者提出了長短期記憶網(wǎng)絡(luò)(LSTM),有效地消除了RNN的梯度彌散現(xiàn)象。由于獨(dú)特的設(shè)計結(jié)構(gòu),LSTM適合于處理和預(yù)測時間序列中間隔和延遲非常長的重要事件。長短期記憶網(wǎng)絡(luò)結(jié)構(gòu)第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)長短期記憶網(wǎng)絡(luò)結(jié)構(gòu)網(wǎng)絡(luò)結(jié)構(gòu)長短期記憶網(wǎng)絡(luò)(LSTM)通過對RNN隱含層神經(jīng)元結(jié)構(gòu)的改進(jìn),有效地解決梯度彌散的問題。LSTM通過設(shè)計“門”結(jié)構(gòu),實(shí)現(xiàn)對之前時間步的計算結(jié)果有選擇地保留。LSTM單元中有三個門,分別為輸入門,遺忘門和輸出門遺忘門結(jié)構(gòu)第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)長短期記憶網(wǎng)絡(luò)的門控單元網(wǎng)絡(luò)結(jié)構(gòu)LSTM神經(jīng)元中遺忘門作用是對細(xì)胞狀態(tài)中的信息進(jìn)行篩選。遺忘門會將上一時間步隱藏層的輸出和當(dāng)前時刻節(jié)點(diǎn)的輸入組合,再經(jīng)過Sigmoid函數(shù)計算得到0和1之間的值并作用于上一時刻的細(xì)胞狀態(tài),來確定哪些信息是有價值的,其數(shù)學(xué)表達(dá)式如下:輸入門結(jié)構(gòu)第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)長短期記憶網(wǎng)絡(luò)的輸入門結(jié)構(gòu)輸入門結(jié)構(gòu)輸入門用來控制當(dāng)前隱含層細(xì)胞狀態(tài)的輸入。對輸入的信息通過一些運(yùn)算,判斷是否將輸入信息更新到當(dāng)前時刻的細(xì)胞狀態(tài)中。輸入門輸出的是Sigmoid函數(shù)在0到1之間的數(shù)值,然后作用于輸入信息,來確定是否更新細(xì)胞狀態(tài),其中1表示需要更新,0表示不需要更新。其數(shù)學(xué)表達(dá)式如下:輸出門結(jié)構(gòu)第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)長短期記憶網(wǎng)絡(luò)的輸出門結(jié)構(gòu)輸出門結(jié)構(gòu)輸出門用來控制當(dāng)前隱藏層節(jié)點(diǎn)的輸出,確定是否帶入到下一時間步的計算中。先利用函數(shù)Tanh對細(xì)胞狀態(tài)進(jìn)行處理,并與Sigmoid的輸出相乘。其數(shù)學(xué)表達(dá)式如下:第一部分——第6章:6.3長短期記憶網(wǎng)絡(luò)小結(jié)長短期記憶網(wǎng)絡(luò)解決了RNN網(wǎng)絡(luò)中的梯度彌散問題,能學(xué)習(xí)較長時間步,適合處理和預(yù)測時間序列中間隔和延遲非常長的重要事件;能有效模擬時間關(guān)系并持續(xù)保留信息,能夠根據(jù)之前狀態(tài)推出之后的狀態(tài)長短期記憶網(wǎng)絡(luò)LSTM是一種時間遞歸神經(jīng)網(wǎng)絡(luò),是使用RNN的一個飛躍。LSTM算法在人工智能之機(jī)器學(xué)習(xí)、翻譯語言、控制機(jī)器人、圖像分析、文檔摘要、語音識別、圖像識別、手寫識別、控制聊天機(jī)器人、預(yù)測疾病、點(diǎn)擊率和股票、合成音樂等領(lǐng)域有著廣泛應(yīng)用。優(yōu)點(diǎn)

強(qiáng)化學(xué)習(xí)的目標(biāo)是學(xué)習(xí)一個策略,使得智能體選擇的動作能夠獲得環(huán)境最大的回報?;貓罂梢杂靡粋€函數(shù)來計算,又稱為回報函數(shù)。為了衡量強(qiáng)化學(xué)習(xí)的長期效果,通常用值函數(shù)(valuefunction)來代替回報函數(shù),不僅衡量動作的即時回報,還衡量從該狀態(tài)起隨后一系列可能的狀態(tài)所累積的回報。經(jīng)典的強(qiáng)化學(xué)習(xí)方法往往無法解決狀態(tài)和動作空間維度很高的問題,一個有效的解決方法是使用函數(shù)近似,即將值函數(shù)或者策略用一個函數(shù)來表示。常用的近似函數(shù)有線性函數(shù)、核函數(shù)、神經(jīng)網(wǎng)絡(luò)等。第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí),又稱為增強(qiáng)學(xué)習(xí)或再勵學(xué)習(xí)。強(qiáng)化學(xué)習(xí)的主體是智能體,其主要思想是智能體與環(huán)境交互和試錯,利用評價性的反饋信號實(shí)現(xiàn)決策的優(yōu)化。當(dāng)智能體的某個動作導(dǎo)致環(huán)境正的獎賞或回報,即為強(qiáng)化信號,則智能體以后產(chǎn)生這個動作的趨勢便會加強(qiáng);反之,智能體產(chǎn)生這個動作的趨勢會減弱。強(qiáng)化學(xué)習(xí)主要有4個要素,即策略、回報、動作和環(huán)境。第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)什么是強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)介紹生物進(jìn)化過程中為適應(yīng)環(huán)境而進(jìn)行的學(xué)習(xí)有兩個特點(diǎn):一是人從來不是靜止的被動的等待而是主動的對環(huán)境作試探;二是環(huán)境對試探動作產(chǎn)生的反饋是評價性的,生物根據(jù)環(huán)境的評價來調(diào)整以后的行為,是一種從環(huán)境狀態(tài)到行為映射的學(xué)習(xí)。具有以上特點(diǎn)的學(xué)習(xí)就是強(qiáng)化學(xué)習(xí)。強(qiáng)化學(xué)習(xí)(reinforcementlearning)又稱為再勵學(xué)習(xí),是指從環(huán)境狀態(tài)到行為映射的學(xué)習(xí),以使系統(tǒng)行為從環(huán)境中獲得的累積獎勵值最大的一種機(jī)器學(xué)習(xí)方法,智能控制機(jī)器人及分析預(yù)測等領(lǐng)域有許多應(yīng)用。強(qiáng)化學(xué)習(xí)是一種在線的、無導(dǎo)師機(jī)器學(xué)習(xí)方法。在強(qiáng)化學(xué)習(xí)中,我們設(shè)計算法來把外界環(huán)境轉(zhuǎn)化為最大化獎勵量的方式的動作。我們并沒有直接告訴主體要做什么或者要采取哪個動作,而是主體通過看哪個動作得到了最多的獎勵來自己發(fā)現(xiàn)。主體的動作的影響不只是立即得到的獎勵,而且還影響接下來的動作和最終的獎勵1、能感知環(huán)境的狀態(tài)2、選擇動作(可能會影響環(huán)境的狀態(tài))3、有一個目標(biāo)(與環(huán)境狀態(tài)有關(guān)的)Agent以最終目標(biāo)為導(dǎo)向,與不確定的環(huán)境之間進(jìn)行交互,在交互過程中強(qiáng)化好的動作,獲得經(jīng)驗(yàn)第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)工作原理強(qiáng)化學(xué)習(xí)工作原理Agent(學(xué)習(xí)的主體)具有特點(diǎn)四要素之間的關(guān)系第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)基本要素除了Agent和環(huán)境之外,強(qiáng)化學(xué)習(xí)系統(tǒng)的四個主要子要素:策略(policy)、獎賞函數(shù)(rewardfunction)、值函數(shù)(valuefunction)和一個可選的環(huán)境模型(model)?;疽氐谝徊糠帧?章:6.4強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)基本要素策略策略定義了Agent在給定時間內(nèi)的行為方式。簡單地說,一個策略就是從環(huán)境感知的狀態(tài)到在這些狀態(tài)中可采用動作的一個映射,策略在某種意義上說是強(qiáng)化學(xué)習(xí)Agent的核心獎賞函數(shù)獎賞函數(shù)定義了在強(qiáng)化學(xué)習(xí)問題中的目標(biāo)。簡單地說,它把環(huán)境中感知到的狀態(tài)(或狀態(tài)-動作對)映射為單獨(dú)的一個數(shù)值,即獎賞(reward),表示該狀態(tài)內(nèi)在的可取程度。強(qiáng)化學(xué)習(xí)Agent的唯一目標(biāo)就是最大化在長期運(yùn)行過程中收到的總獎賞值函數(shù)對于一個策略,如果我們可以在一個狀態(tài)上就看到這個策略未來將會取得的累積獎賞,提供這種功能的函數(shù)在強(qiáng)化學(xué)習(xí)中稱為值函數(shù)(Valuefunction)。獎賞決定了環(huán)境狀態(tài)的直接、內(nèi)在的可取性,而值表示的是把可能的后續(xù)的狀態(tài)以及在這些狀態(tài)中可獲得的獎賞考慮在內(nèi)的狀態(tài)的長期可取性第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)基本要素環(huán)境模型有些強(qiáng)化學(xué)習(xí)系統(tǒng)中還存在著第四個也是最后一個要素:環(huán)境模型。它模擬了環(huán)境的行為。例如,給定一個狀態(tài)和動作,這個模型可以預(yù)測必定導(dǎo)致的下一狀態(tài)和下一獎賞。強(qiáng)化信號強(qiáng)化信號可以從環(huán)境的狀態(tài)中直接獲得。例如:傳感器檢測到機(jī)器人與障礙物的距離信息小于給定值時都可看做一個失敗信號。倒立擺的角度大于一定值就可產(chǎn)生一個失敗信號。強(qiáng)化信號也可從環(huán)境的狀態(tài)信息中間接獲得,當(dāng)環(huán)境的狀態(tài)值達(dá)不到預(yù)期的要求時,也可以認(rèn)為產(chǎn)生了一個失敗的強(qiáng)化信號第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)DeepMind團(tuán)隊于2016年提出的深度確定性策略梯度方法即DDPG算法,解決了連續(xù)動作空間的強(qiáng)化學(xué)習(xí)問題。DDPG算法,全稱為深度確定性策略梯度(DeepDeterministicPolicyGradient,DDPG)算法,是一種無模型的離策略Actor-Critic強(qiáng)化學(xué)習(xí)方法,利用深度神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)連續(xù)動作空間的策略,DDPG算法中,策略是參數(shù)化的,通過策略梯度方法,直接優(yōu)化深度神經(jīng)網(wǎng)絡(luò)的參數(shù)。深度強(qiáng)化學(xué)習(xí)深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí)都是人工智能的重要分支,近年來最成功的函數(shù)近似方法就是使用深度神經(jīng)網(wǎng)絡(luò)作為強(qiáng)化學(xué)習(xí)的非線性近似函數(shù),將深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí)相結(jié)合,即為深度強(qiáng)化學(xué)習(xí)。深度強(qiáng)化學(xué)習(xí)由DeepMind團(tuán)隊于2015年首次提出之后,將其發(fā)展并分別應(yīng)用于打敗人類圍棋冠軍的AlphaGo和更強(qiáng)的AlphaGoZero。然而這時的深度學(xué)習(xí)技術(shù)DQN(DeepQ-Learning)依然解決的是離散動作的問題,無法直接應(yīng)用于權(quán)重連續(xù)的投資組合管理。第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)深度強(qiáng)化學(xué)習(xí)深度強(qiáng)化學(xué)習(xí)DDPG行為(action)可以簡單分為:連續(xù)的:如賽車游戲中的方向盤角度、油門、剎車控制信號,機(jī)器人的關(guān)節(jié)伺服電機(jī)控制信號;離散的:如圍棋、貪吃蛇游戲。AlphaGo就是一個典型的離散行為agent。DDPG是針對連續(xù)行為的策略學(xué)習(xí)方法,全稱是DeepDeterministicPolicyGradient,是將深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)融合進(jìn)DPG的策略學(xué)習(xí)方法。相對于DPG的核心改進(jìn)是:采用卷積神經(jīng)網(wǎng)絡(luò)作為策略函數(shù)μ和Q函數(shù)的模擬,即策略網(wǎng)絡(luò)和Q網(wǎng)絡(luò);然后使用深度學(xué)習(xí)的方法來訓(xùn)練上述神經(jīng)網(wǎng)絡(luò)第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)DDPG算法的結(jié)構(gòu)DDPG算法結(jié)構(gòu)DDPG算法是一種深度增強(qiáng)學(xué)習(xí)算法,使用了基于確定動作策略的演員-評論家算法框架,并在演員部分采用了確定性策略(DPG)。該算法的核心是4個神經(jīng)網(wǎng)絡(luò),演員部分有2個神經(jīng)網(wǎng)絡(luò)(演員網(wǎng)絡(luò)u和演員網(wǎng)絡(luò)u'),評論家部分有2個神經(jīng)網(wǎng)絡(luò)(評論家網(wǎng)絡(luò)Q和評論家網(wǎng)絡(luò)Q)第一部分——第6章:6.4強(qiáng)化學(xué)習(xí)DDPG實(shí)現(xiàn)框架和算法DDPG實(shí)現(xiàn)框架實(shí)踐證明,如果只使用單個"Q神經(jīng)網(wǎng)絡(luò)"的算法,學(xué)習(xí)過程很不穩(wěn)定,因?yàn)镼網(wǎng)絡(luò)的參數(shù)在頻繁gradientupdate的同時,又用于計算Q網(wǎng)絡(luò)和策略網(wǎng)絡(luò)的gradient,基于此,DDPG分別為策略網(wǎng)絡(luò)、Q網(wǎng)絡(luò)各創(chuàng)建兩個神經(jīng)網(wǎng)絡(luò)拷貝,一個叫做online,一個叫做target:在訓(xùn)練完一個mini-batch的數(shù)據(jù)之后,通過SGA/SGD算法更新online網(wǎng)絡(luò)的參數(shù),然后再通過softupdate算法更新target網(wǎng)絡(luò)的參數(shù)。softupdate是一種runningaverage的算法:優(yōu)點(diǎn)target網(wǎng)絡(luò)參數(shù)變化小,用于在訓(xùn)練過程中計算online網(wǎng)絡(luò)的gradient,比較穩(wěn)定,訓(xùn)練易于收斂代價參數(shù)變化小,學(xué)習(xí)過程變慢。第一部分——第6章:6.5遷移學(xué)習(xí)遷移學(xué)習(xí)標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)的前提假設(shè)是訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)的分布是相同的。如果不滿足這個假設(shè),在訓(xùn)練集上學(xué)習(xí)到的模型在測試集上的表現(xiàn)會比較差。而在很多實(shí)際場景中,經(jīng)常碰到的問題是由標(biāo)注數(shù)據(jù)的成本十分高,無法為一個目標(biāo)任務(wù)準(zhǔn)備足夠多相同分布的訓(xùn)練數(shù)據(jù)。因此,如果有一個相關(guān)任務(wù)已經(jīng)有了大量的訓(xùn)練數(shù)據(jù),雖然這些訓(xùn)練數(shù)據(jù)的分布和目標(biāo)任務(wù)不同,但是由于訓(xùn)練數(shù)據(jù)的規(guī)模比較大,我們假設(shè)可以從中學(xué)習(xí)某些可以泛化的知識,那么這些知識對目標(biāo)任務(wù)會有一定的幫助。如何將相關(guān)任務(wù)的訓(xùn)練數(shù)據(jù)中的可泛化知識遷移到目標(biāo)任務(wù)上,就是遷移學(xué)習(xí)(TransferLearning)要解決的問題。第一部分——第6章:6.5遷移學(xué)習(xí)遷移學(xué)習(xí)一種從以前的任務(wù)當(dāng)中去學(xué)習(xí)知識,并應(yīng)用于新的任務(wù)當(dāng)中的方法目的從一個或多個源任務(wù)(sourcetasks)中抽取知識、經(jīng)驗(yàn),然后應(yīng)用于一個新目標(biāo)領(lǐng)域(targetdomain)當(dāng)中去起源自1995年以來,遷移學(xué)習(xí)吸引了眾多的研究者的關(guān)注。由于深度學(xué)習(xí)需要大量的高質(zhì)量標(biāo)注數(shù)據(jù),但在某些特定領(lǐng)域中,高質(zhì)量的數(shù)據(jù)是極其有限珍貴的,傳統(tǒng)的深度學(xué)習(xí)對這類數(shù)據(jù)并不能很好地學(xué)習(xí)遷移學(xué)習(xí)深度學(xué)習(xí)將遷移學(xué)習(xí)與深度學(xué)習(xí)相互結(jié)合很好地解決了這類問題,當(dāng)前深度學(xué)習(xí)中一個非常流行的策略就是將在大數(shù)據(jù)集上的預(yù)訓(xùn)練模型作為網(wǎng)絡(luò)基礎(chǔ),針對自己特定領(lǐng)域的數(shù)據(jù)集進(jìn)行網(wǎng)絡(luò)底層微調(diào)。尤其是以圖像領(lǐng)域?yàn)榇?,大部分遷移學(xué)習(xí)網(wǎng)絡(luò)選擇預(yù)訓(xùn)練的ImageNet對模型進(jìn)行初始化,取得了非常好的效果。遷移學(xué)習(xí)概述隨著越來越多的機(jī)器學(xué)習(xí)應(yīng)用場景的出現(xiàn),而現(xiàn)有表現(xiàn)比較好的監(jiān)督學(xué)習(xí)需要大量的標(biāo)注數(shù)據(jù),標(biāo)注數(shù)據(jù)是一項枯燥無味且花費(fèi)巨大的任務(wù),所以遷移學(xué)習(xí)受到越來越多的關(guān)注。傳統(tǒng)機(jī)器學(xué)習(xí)(主要指監(jiān)督學(xué)習(xí))基于同分布假設(shè)、需要大量標(biāo)注數(shù)據(jù)然而實(shí)際使用過程中不同數(shù)據(jù)集可能存在一些問題,比如數(shù)據(jù)分布差異標(biāo)注數(shù)據(jù)過期訓(xùn)練數(shù)據(jù)過期,也就是好不容易標(biāo)定的數(shù)據(jù)要被丟棄,有些應(yīng)用中數(shù)據(jù)是分布隨著時間推移會有變化如何充分利用之前標(biāo)注好的數(shù)據(jù)(廢物利用),同時又保證在新的任務(wù)上的模型精度基于這樣的問題,所以就有了對于遷移學(xué)習(xí)的研究第一部分——第6章:6.5遷移學(xué)習(xí)遷移學(xué)習(xí)的相關(guān)概念

第一部分——第6章:6.5遷移學(xué)習(xí)遷移學(xué)習(xí)的形式定義深度學(xué)習(xí)需要大量的高質(zhì)量標(biāo)注數(shù)據(jù),Pre-training+fine-tuning是現(xiàn)在深度學(xué)習(xí)中一個非常流行的trick,尤其是以圖像領(lǐng)域?yàn)榇?,很多時候會選擇預(yù)訓(xùn)練的ImageNet對模型進(jìn)行初始化。第一部分——第6章:6.5遷移學(xué)習(xí)深度學(xué)習(xí)和遷移學(xué)習(xí)結(jié)合學(xué)習(xí)方案利用遷移學(xué)習(xí),不是從零開始學(xué)習(xí),而是從之前解決各種問題時學(xué)到的模式開始。這樣我們就可以利用以前的學(xué)習(xí)成果(例如VGG19、Inception、MobileNet、ResNet),不用從零開始訓(xùn)練一個新模型,可以從在類似問題中訓(xùn)練過的模型入手,我們把這些模型叫做預(yù)訓(xùn)練模型。簡單來說,預(yù)訓(xùn)練模型(pre-trainedmodel)是前人為了解決類似問題所創(chuàng)造出來的模型第一部分——第6章:6.5遷移學(xué)習(xí)實(shí)現(xiàn)遷移學(xué)習(xí)方案三種學(xué)習(xí)手段TransferLearning:凍結(jié)預(yù)訓(xùn)練模型的全部卷積層,只訓(xùn)練自己定制的全連接層。ExtractFeatureVector:先計算出預(yù)訓(xùn)練模型的卷積層對所有訓(xùn)練和測試數(shù)據(jù)的特征向量,然后拋開預(yù)訓(xùn)練模型,只訓(xùn)練自己定制的簡配版全連接網(wǎng)絡(luò)。Fine-tuning:凍結(jié)預(yù)訓(xùn)練模型的部分卷積層(通常是靠近輸入的多數(shù)卷積層)甚至不凍結(jié)任何網(wǎng)絡(luò)層,訓(xùn)練剩下的卷積層(通常是靠近輸出的部分卷積層)和全連接層適應(yīng)小數(shù)據(jù)遷移學(xué)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論