【摘? 要】現(xiàn)如今循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)已經(jīng)成為一種動(dòng)態(tài)處理時(shí)間序列數(shù)據(jù)的高效的神經(jīng)網(wǎng)絡(luò)工具。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNNs)能夠從時(shí)間序列數(shù)據(jù)中學(xué)習(xí)特征和長期依賴關(guān)系。循環(huán)神經(jīng)網(wǎng)絡(luò)幾乎可以對(duì)任何動(dòng)態(tài)系統(tǒng)進(jìn)行建模,但是訓(xùn)練過程中極易出現(xiàn)長程依賴的問題。本文介紹了循環(huán)神經(jīng)網(wǎng)絡(luò)在深度學(xué)習(xí)領(lǐng)域的基本原理和最新進(jìn)展,并且分析了今后的研究挑戰(zhàn)。
【關(guān)鍵詞】循環(huán)神經(jīng)網(wǎng)絡(luò);動(dòng)態(tài)系統(tǒng);深度學(xué)習(xí);
RNN的提出與發(fā)展
人工神經(jīng)網(wǎng)絡(luò)(ANNs)是由被稱為人工神經(jīng)元的連接單元層構(gòu)成的,其中淺層網(wǎng)絡(luò)是指一個(gè)輸入層,一個(gè)輸出層,最多一個(gè)隱含層,沒有重復(fù)連接的人工神經(jīng)網(wǎng)絡(luò)。隨著層數(shù)的增加,網(wǎng)絡(luò)的復(fù)雜度也隨之增加,更多的層數(shù)或重復(fù)連接通常會(huì)增加網(wǎng)絡(luò)的深度,并使其能夠提供不同層次的數(shù)據(jù)表示和特征提取,這稱為深度學(xué)習(xí)。由于各層的非線性組成所造成的優(yōu)化困難,在2006年之前,深度網(wǎng)絡(luò)體系結(jié)構(gòu)方面的工作并不多[1]。而具有循環(huán)連接的神經(jīng)網(wǎng)絡(luò)被稱為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNNs),它能夠?qū)π蛄袛?shù)據(jù)建模以進(jìn)行序列識(shí)別和預(yù)測(cè)[2]。RNNs使用隱藏狀態(tài)在時(shí)間維度上對(duì)數(shù)據(jù)信息進(jìn)行保存和更新,這種結(jié)構(gòu)使RNNs能夠長時(shí)間存儲(chǔ)、記憶和處理過去的復(fù)雜信息。基于RNNs的文獻(xiàn)中已經(jīng)發(fā)表了大量的論文,從架構(gòu)涉及到應(yīng)用發(fā)展。表1匯總了RNNs隨著時(shí)間發(fā)展的主要研究進(jìn)展。
梯度下降算法的發(fā)展給RNNs的研究提供了助力,但是RNNs的模型結(jié)構(gòu)導(dǎo)致梯度消失或者爆炸的問題無法避免。為了解決上述問題,帶有特殊門控機(jī)制的LSTM網(wǎng)絡(luò)于1997年被提出[3]。到目前為止,已經(jīng)有超過1000篇關(guān)于LSTM和其變體的研究論文發(fā)表,其中,900篇是在2015年后發(fā)表的。
RNN和其主要變體
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)
RNN是前饋神經(jīng)網(wǎng)絡(luò)的一種,它通過包含跨越相鄰時(shí)間步的有向邊來增強(qiáng)單元計(jì)算,從而在模型中加入了時(shí)間的概念。在時(shí)刻t,模型的輸入為x,前一個(gè)時(shí)刻的隱藏狀態(tài)為h
則RNN的公式可以定義為:
h= tanh(Wh + Wx + b)
其中WW和b是可訓(xùn)練的權(quán)重參數(shù),可通過BPTT(backpropagation through time)算法進(jìn)行更新。
長短時(shí)記憶網(wǎng)絡(luò)(LSTM)
LSTM是一種帶有三個(gè)門控函數(shù)的特殊RNN變體,成功的解決了RNN的梯度消失爆炸問題,并且在傳統(tǒng)的機(jī)器學(xué)習(xí)深度學(xué)習(xí)領(lǐng)域廣泛應(yīng)用。LSTM定義如下:
i=??????? sigmoid(Wx + Wh + b)
f=??????? sigmoid(Wx + Wh + b)
o=??????? sigmoid(Wx + Wh + b)
c= tanh(Wx + Wh + b)
c= fΘc+ iΘc
h= oΘtanh(c)
RNN應(yīng)用方向
RNN主要應(yīng)用于自然語言處理領(lǐng)域中,比如語言模型任務(wù)。LSTM的提出改進(jìn)了用于語言建模的RNN模型,因?yàn)長STM能夠更好地學(xué)習(xí)序列中的長期依賴關(guān)系,而不是簡單的隱藏狀態(tài)。RNN還被應(yīng)用如生成文學(xué)作品如詩詞,歌詞等。此外,RNN還在文檔分類中表現(xiàn)優(yōu)秀,如GRU被用來進(jìn)行文檔級(jí)情緒分析,RCNNs被用于多個(gè)數(shù)據(jù)集的文本分類。在這種方法中,通常將單詞映射到一個(gè)特征向量,然后將特征向量序列作為輸入傳遞給RNN模型。
在語音信號(hào)識(shí)別領(lǐng)域中,語音和音頻信號(hào)會(huì)隨著時(shí)間不斷變化,音頻信號(hào)固有的時(shí)序性和時(shí)變特性使RNNs成為該領(lǐng)域?qū)W習(xí)特征的理想模型。在圖像識(shí)別領(lǐng)域中,雖然CNN在計(jì)算機(jī)視覺和圖像處理方面的應(yīng)用占主導(dǎo)地位,但RNNs在圖像標(biāo)記、圖像建模和手寫識(shí)別等方面也顯示出良好的前景。
參考文獻(xiàn):
[1]Bengio Y,Boulanger-Lewandowski N,Pascanu R.Advances in optimizing recurrent networks[C]//2013 IEEE International Conference on Acoustics,Speech and Signal Processing.IEEE,2013:8624-8628.
[2] Bengio Y,Simard P,F(xiàn)rasconi P.Learning long-term dependencies with gradient descent is difficult[J].IEEE transactions on neural networks,1994,5(2):157-166.
[3] Hochreiter S,Schmidhuber J.Long short-term memory[J].Neural computation,1997,9(8):1735-1780.
作者簡介:
劉昌?。?994-),河北滄州人,寧夏大學(xué)碩士研究生在讀,主要研究深度學(xué)習(xí)、自然語言處理方向。
(作者單位:寧夏大學(xué)信息工程學(xué)院)