自然語言處理技術又稱為NLP 技術,是信息技術的發(fā)展前沿,能夠實現人機交互。深度學習是幫助機器進行自主學習的重要方式,是機器學習算法的總稱。目前,深度學習已經有了長足的發(fā)展,被廣泛應用在自然語言處理、遙感影像翻譯等多個領域中,在自然語言處理方面主要集中在分詞識別、句法分析、語言分析、智能問答等方面,大大提升語言處理效率。通過利用深度學習,能夠提高對抽象化文本的翻譯能力,厘清文本間的關系,還能將相關的學習方法和結論儲存到語料庫中,提升NLP技術的判別能力和特征自學能力。
深度學習模型結構需要具有3 層以上的隱層節(jié)點,甚至會高達十幾層[1]。與傳統(tǒng)的淺層學習模式相比,多層學習模式呈現非線性映射結構,可以完成更加復雜的函數計算。深度學習需要基于特征學習,需要通過非監(jiān)督式預訓練算法來根據原始樣本進行逐層變化,映射出一個新的特征空間。另外,還可以通過生成性訓練方法來避免由于網絡函數過強而導致的過擬合問題。深度學習代表著需要經過多個節(jié)點進行計算,并將經過節(jié)點后的結算結果作為下一次節(jié)點的輸入數據,然后進行逐層計算。
利用深度學習方式需要通過特征來處理問題,因此需要將采用特征當成是應用前提。舉個例子,在進行文本分類時,需要通過經常用詞的方式進行集合,然后將集合特征用來指代文本,接著在使用不同的分類算法進行文本分類。如果是進行圖像處理,則需要將圖像特征作為深度學習的特征。特征的選擇會直接影響到任務的最終結果,因此要慎重選擇。在過去,傳統(tǒng)的機器會依賴于人工進行特征選取,這樣的方法難以提升機器的智能性和自動化,需要應用到大量人力,而且處理的效率不高。另一方面,人工選取特征就代表著需要依靠人類智慧和知識進行深度學習,但這樣的方式限制了機器學習向更先進地步發(fā)展的步伐,會阻礙到機器智能化發(fā)展。因此,需要擺脫人工特征選擇方式,實現深度學習的無監(jiān)督特征學習,進而提升深度學習質量和效率。
傳統(tǒng)深度學習方法無法實現自動學習特征的主要原因有三個方面。
第一,表示的深度不夠。一般來說,在給目標進行精度函數采用時,需要使用2 層網絡結構就,而這兩層深度結構需要大量的計算節(jié)點,當深度結構與計算節(jié)點呈現數級增長時,使用深度的計算方式可以更加節(jié)約計算成本。這就不需要使用到計算節(jié)點表示的函數族。第二,深度學習的規(guī)律是基于人類認知規(guī)律,因此深度學習的分層相對于人類逐漸學習的過程。通過進行分層分析,就會導致總任務與子任務處于不同的認知層面,也就難以從中總結出自動學習特征。第三,人腦存在分層結構。深層學習是基于人類的認知,這就導致深層學習的存在仿生效果,難以脫離分層認知和學習。
前饋神經網絡(簡稱FNN)是需要作用在多任務環(huán)境下的神經網絡模型[2]。隨著自然語言處理環(huán)境越來越復雜,神經模型也需要隨之進行升級優(yōu)化,但神經網絡訓練問題也會影響到自然語言處理。這時候使用前饋神經網絡可以提升自然語言處理效率,主要依靠FNN 的反向傳播算法,通過這種學習方式能夠對不同層級存在的問題進行優(yōu)化,及時調整相關網絡參數。卷積神經網絡(簡稱CNN)是FNN 的主流模型之一,它可以利用卷積核來擴展描述空間,增加模型的深度,是一種改進過得深度神經網絡。在一般FNN 中,會通過全連接結構來連接輸入層和隱藏層,而CNN 卻可以通過不同的卷積層節(jié)點來實現對區(qū)域的鏈接,核心的卷積節(jié)點就是卷積核。目前,CNN 被廣泛應用在NLP 領域的語義角色標注、語料訓練、文本分析等方面。而且,CNN的池化技術能夠固定每個區(qū)域的大小并能夠使用平均值或最大值來代替矩陣區(qū)域,有效降低特征采用的難度。
遞歸神經網絡是對時間遞歸結構進行表達的一種方式,能夠為數據設置明確的時間序列關系。同時,RNN 還具有訓練神經記憶的能力,能夠將前后輸入的信息建立有效聯(lián)系。通過構建擁有RNN 的深度學習模型,能夠將隱含層的信息激活,然后再根據不同時刻進行遞歸,使其形成一個連接隱藏層和輸入層的參數矩陣,最后在通過計算得出偏向量。RNN 是樹形神經網絡結構,可以將它應用到語義標注、句法分析、機器翻譯等方面。
詞向量指的是通過利用神經網絡方式來對稀有文本進行整合分析,通過在較小特征中進行大規(guī)模語料分析,能夠獲得有關上下文關系的分布式特征詞編碼技術。詞向量的主要作用是進行詞匯分析,通過對文本中的詞組進行隔離分析,能夠豐富語料庫的詞匯量。在詞向量方面,我國的研究成果主要集中在SENNA 詞向量、HLBL 詞向量、word2vec 詞向量以及glove 詞向量等[3]。不同詞向量有不同的規(guī)則,詞向量主要代表的是詞向量之間的組合關系,如與其他詞相加時代表是什么意思或減掉某些詞語或定語就會變成另外一個意思,因此詞向量具有極強的應用意義。舉個例子,glove 詞向量能夠通過矩陣的方式來表現不同的性能,使得測量指標更加具有針對性,可以快速解決很多自然語言處理問題。
循環(huán)神經網絡(簡稱RNN)是隱藏層和自身相聯(lián)系的一種神經網絡,它的計算結果將會應用到下一次隱藏層的計算。RNN 的優(yōu)化算法為BPTT 算法,能夠用來處理語料庫的機器翻譯、文本生成、語音識別等工作。RNN 的反饋只能向后傳遞5-10 層,因此可以在此基礎上建立長短時記憶模型。長短時記憶模型是基于記憶結構之前的輸入幫助網絡學習到新的Cell 結構。RNN 和長短時記憶模型被廣泛應用在NLP 領域,如應用到情感分析、詞性標注、實體命名識別等方面。另一方面,由于改進后的長短時記憶模型比較復雜,人們也隨之提出另一種RNN 變體,就是GRU,它有效簡化長短時記憶模型的步驟,可以得到更好的自然語言處理效果。
目前,我國在進行深度學習模型構建時,一般都會使用Nivre 分析來確定最終的語言特征分類。這種方法的好處是在進行特征分類后,所分取出來的特征能夠聯(lián)系上下文,即可以作為文本上下文的依存關系,然后結合全文完成句法分析。在建立Nivre 分析模型時,可以采用三元組的方式來表示模型的格局,進而建立一個科學合理的神經網絡模型。在三元組中,需要包含三個主要部分,分別是堆棧、節(jié)點序列以及依存弧集合,人們常常會使用字母S 來代表堆棧,采用I 來代表節(jié)點序列,最后采用A 來表示依存弧集合。通過建立三元組神經網絡模型,能夠在分析動作是提取到句法特征,進而實現對句法的分析,為最終分析決策提供重要數據支持。在建立三元組網絡神經模型時,需要注意三元組的相關信息,主要包括三個方面信息,分別是有詞信息、詞性信息和依存弧信息。
第一,有詞信息。有詞信息指的是文本中存在的詞組的相關信息。不管是在堆棧還是節(jié)點序列緩中,都會包含大量的詞信息,有些詞信息可能已經被處理,也有些詞信息還沒有被處理,這些詞信息都是重要的三元組信息,它們帶有明顯的特征。因此,在進行網絡神經模型潛入前,可以通過稀疏的方式進行表達,但如果這些詞信息已經完成潛入,就需要通過稠密的方式進行表達,由此可以看出潛入前后的表達方式是不一樣的。第二,有詞就會有詞性信息,這些詞性信息會與模型保持一一對應的關系,這樣才能為每個詞提供相對應的詞性。第三,依存弧信息。依存弧信息的主要功能就是為已經被處理了的詞信息提供相應的依存關系,具有連接文本信息的重要作用。通過獲得三元組的相關信息,然后在將這些信息進行重新組合,就能得出二階特征,豐富不同詞的特征和為詞進行模型組合時提供可參考的意見。應用三元組的神經網絡模型,能夠幫助不同類型的詞進行重新組合,并且能夠將新組合的詞作用到不同層級中,有效提升自然語言處理效率。
隨著深度學習模型層級不斷提升,通過人工智能就可以實現非線性函數狀態(tài)下的語言特征組合,但這樣的神經網絡模型需要依托于三元組信息,根據神經網絡三元組的特征表現出來,然后按照多層級方式進行分類訓練,這樣就能實現提取不同特征的要求。具體來說,深度學習的神經網絡模型主要分為四個層級,分別是輸入層、嵌入層、隱含層以及softmax 層。
輸入層是最基礎的層級,是整個神經網絡模型的根本,只有通過輸入層將相關信息輸入模型中,才能繼續(xù)之后的分析、整合工作。輸入層的功能是能夠與已經完成構建的分析格局相聯(lián)系,然后對三元組進行處理,幫助整個神經網絡活動以構建格局中的元特征內容。嵌入層是一個信息處理層,它位于輸入層之上。嵌入層是由與三元組相對應的子嵌入層組合而成,各個子嵌入層之間能夠獨立存在,然后負責獲取詞信息、詞性和依存弧特征,接著在完成三元組稀疏和稠密的轉換。隱藏層是嵌入層的上層層級,在嵌入層完成稠密特征的轉換后,隱含層會對稠密特征進行處理,使其能夠變換成可以進行非線性函數變化的模型。softmax 層是最后一個層級,能夠將自然語言非線性轉換成能夠分析的數據,并根據分析的結果對這些特征進行分類和預測,進而實現對自然語言處理的訓練??梢哉f,softmax 層是確保神經網絡能夠進行自然語言處理訓練的重要保障。
通過對既有理論進行堆疊,可以得出新的訓練模型,受限玻爾茲曼機就是其中一種。通過理論堆疊形成的訓練模型被稱為是深度信念網絡模型,它能夠通過對網絡訓練來進行數據還原,即對輸入層數據進行還原訓練。在訓練過程中,深度信念網絡模型能夠根據可見層的受限玻爾茲曼機進行原始數據的輸入,然后在通過對原始數據進行層級內部處理,且還能對層級的數量進行檢驗,確保層級數能夠滿足執(zhí)行需要。如果檢驗得出的結果是不能滿足執(zhí)行步驟,就需要重新進行原始數據的獲取,直到得出的結果能夠滿足執(zhí)行需求為止。深度信念網絡能夠對內部層級數進行微調,這樣就能根據深度學習算法模型進行整合和優(yōu)化,是得層級內部能夠達到最優(yōu)解。有專家指出,深度信念網絡的層數設置方式可以由自編碼其來完成,通過自編碼器的自動化、智能化編碼,能夠達到網絡的泛化和拓展。自編碼器是一種半監(jiān)督學習和非監(jiān)督學習的人工神經網絡,主要的作用是能夠將輸入信息作為學習目標,然后進行表征學習。通過自編碼器進行自主學習,能夠有效解決編碼器問題和升級編碼器性能,因此可以通過自編碼器實現網絡模型的層數設置。在這個過程中,自編碼器能夠取代網絡中的深度信念網絡訓練,實現對數據的簡單堆疊,進而形成相應的自編碼網格。這是一種雖神經網絡自然語言稀疏特性進行隱藏的網格編碼方式,可以通過抑制神經元的狀態(tài)來實現稀疏自編碼網格。根據多次實踐應用,發(fā)現自編碼網格方式能夠對自然語言特征進行學習,為語言特征檢索提供更加快速、準確的搜索途徑。
綜上所述,深度學習用語NLP 領域的步驟如下,第一步,將原始文本輸入神經網絡模型中,通過機器自主學習獲得文本特征;第二步,將特征作為深度神經網絡輸入;第三步,根據不同需求選用不同的學習模型。
深度學習是一個處于快速發(fā)展的新興技術,還有很多問題沒有得到解決。人們對于深度學習的了解還處于起步階段,沒有足夠的理論依據來指導實驗,人們難以確定網絡架構是否已經是最優(yōu)質的。目前深度學習在NLP 的應用前景十分良好,可以將其應用到文法分析、信息抽取等方面,只有不斷提升機器智能和拓展智能領域,才能為NLP 技術提供更有力的支持。因此,需要重視深度學習在NLP 領域的嘗試,不斷提升深度學習網絡架構,促進NLP技術更好發(fā)展。