999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

神經網絡語言模型的結構與技術研究評述

2019-08-12 03:43:36徐昊易綿竹
現代計算機 2019年19期
關鍵詞:語言模型

徐昊,易綿竹

(1.信息工程大學洛陽校區研究生四大隊,洛陽471000;2.信息工程大學洛陽校區基礎系,洛陽471000)

0 引言

語言模型是基本的自然語言處理問題之一,語言模型能夠估計某一詞序列為自然語言的概率,也就是在假設所有可能的詞語排序組合出現的概率為1 的情況下,預測每個組合,也就是句子,出現的概率。對于一個好的語言模型,正確句子出現的概率應當相對較高,而錯誤的、不合語法的句子,出現概率則相對較低,甚至接近于零。在實際應用中,許多場合都可以依靠語言模型處理問題。如在語音識別中排除錯誤的同音詞:P(I saw a van)>P(eyes awe of an);在機器翻譯中,選擇較為合理的句子:P(high winds tonight)>p(large winds tonight);或是在輸入法中,得到用戶更需要的輸出:P(你現在干什么|nixianzaiganshenme)>P(你西安在干什么|nixianzaigaanshenme)。

語言模型可以通過以下方式形式化。如果我們以S 代表句子,V={w1,w2,w3,…,wn}代表語言的單詞集合,句子S 就是一個單詞序列:S=(w1,w2,w3,…,wm),m 為句子長度。那么,一個句子的出現概率可以表示為:

P(wm|w1,w2,w3,…,wm-1)即表示在已知前m-1 個單詞的情況下,第m 個單詞為wm的概率。因此,只要把句子中每個單詞的條件概率相乘,即可計算出這一句子的出現概率。但是,由于任何一門自然語言的詞匯量都非常大,組合的序列更是數不勝數。對于詞匯量為V 的語言,任意序列中第m 個詞出現的概率P(wm|w1,w2,w3,…,wm-1)共有Vm種,要保存這么多的參數目前的無法實現的。為了解決參數過多帶來的問題,自然語言方向的研究者們提出了多種使用不同技術實現的語言模型。

1 傳統語言模型

1.1 N-Gram語言模型

N-Gram 模型采用Markov 假設[2],認為語言模型中每個詞的出現概率只與其前面n-1 個詞有關。按照公式(1),可將N-Gram 模型形式化表示如下:

上述公式中的n 即為N-Gram 模型的階數,不難看出,模型的復雜性和精度都與階數呈正相關。選取合適的n 值建立N-Gram 模型的要點,一般情況下NGram 模型的階數在1 到7 之間。

N-Gram 模型利用到了自然語言中的局部約束性質來描述自然語言,但當語言中存在遠程約束時,NGram 模型便無法表現出來。并且,N-Gram 模型受稀疏數據影響大,對未在訓練集中出現的詞,會得到概率為0 的情況,這顯然是不合理的。為此,針對N-Gram模型進行平滑處理就十分有必要,如Good-Turing 法、Kaze 回退法等。

1.2 決策樹語言模型[3]

N-Gram 模型雖然結構簡單,同時考慮了上下文的影響,但在實際的自然語言中,上下文信息并不是都對預測有益的,N-Gram 對n 以內的上文信息一視同仁并不嚴謹,并且將上文的范圍限制在n 以內也是折中之舉。因此,需要找到一種方法,能夠從上下文中分辨與預測相關的詞,并且不受其與預測對象距離的限制。

決策樹模型是樹結構模型,其非葉子節點包含問題和訓練子集兩部分,每個非葉子節點根據對問題的n個回答產生n 個子節點。葉子節點由訓練子集和從該訓練子集學習得來的條件概率組成。在有合適的問題集合的情況下,決策樹模型通過降低條件熵的方法,遞歸的生成決策樹,產生合適的問題序列。決策樹模型能夠選出與預測變量有關的上下文,并且不受距離的限制。

然而,如何選擇合適的問題集合是一個難題,在簡單模型的情況下,決策樹性能較好,問題集合的設置也比較簡單。但在自然語言處理的背景下,往往需要生成較為復雜的模型,問題集合的設置需要較高的專業知識水平,同時隨著決策樹高度的增加,越接近葉子節點,訓練子集的規模會越分越小,對參數的估計也會受到影響。這被稱為數據的碎片化問題。

1.3 最大熵模型

熵的概念最早由香農從熱力學領域引入到信息論中,熵是不確定度的度量,當一個隨機變量均勻分布時,熵的值最大;反之,若是變量的值可以完全確定,熵的值為0.。通過熵來預測變量的思想由Jaynes 提出[4],最大熵模型認為,在已知部分變量的情況下,對未知變量的最合理推斷,應當選擇最不確定即熵值最大的推斷。其原理在于,其他推斷的確定度較高,意味著是添加了我們已掌握信息以外的約束或假設才得出的,這必然是不符合邏輯的,而最隨機的推斷才是惟一不偏不倚的選擇[5]。

最大熵語言模型的建立,首先要建立對概率分布的約束,即設定特征函數,形如:

其中x,y 可以是諸如上下文或詞與詞性等,若有k個特征,則1 ≤j ≤k。之后通過給定的訓練語料,可以得到特征fj的期望值:

在滿足特征的約束的條件下,就是指在概率分布的特征期望值應與式(4)得到的樣本期望值一致的情況下,選擇能使熵H(p)的值最大的概率分布:

最大熵模型在整個訓練語料上展開,不會遇到NGram 與決策樹模型的數據碎片化問題,特征的選擇也較為靈活,可以使用各種類型的特征,如上下文與預測變量的關系、語義關系等。最大熵模型不依賴獨立性假設,可以通過特征選擇進行參數平滑,而不需要專門適配常規平滑算法。

傳統的語言模型使用數學的方法描述自然語言的,但只利用到了單詞間的統計關系,對詞語間的語義關系利用很少。雖然也有基于語言知識的統計模型,如概率上下文無關文法,但這需要研究人員人為地加入語言相關的知識,無法通過機器自動的從數據中提取知識信息,而且知識的準確度隨研究者個人的專業水平而異,可靠性存疑。

2 神經網絡學習時序問題

近年來,隨著深度神經網絡學習的興起,使用神經網絡處理自然語言問題開始成為熱門研究。2000 年,后任職于百度深度學習研究院的徐偉提出使用神經網絡學習語言模型的想法[6]。之后Bengio 等人在2003 年發表使用神經網絡估計N-Gram 模型的概率分布的研究[7],被稱作神經概率語言模型。神經概率語言模型通過詞向量體現了詞語之間的相似性,彌補了傳統的NGram 模型的缺陷,在Associated Press News 數據集上,取得比Kneser-Ney 平滑的N-Gram 模型明顯更高的性能,并在神經網絡模型中引入了詞向量的概念。

2.1 循環神經網絡

Bengio 的神經網絡語言模型使用一般的前饋神經網絡模型結構,在輸入上仍受到如N-Gram 模型一樣,上下文長度固定的限制,對遠距離歷史信息的建模能力差。2010 年,Mikolov 等利用帶有有向環的特殊結構神經網絡,即循環神經網絡(Recurrent Neural Network,RNN),訓練語言模型[8]。RNN 源自1982 年Sathasivam提出的霍普菲爾德網絡[9]。在每一時刻t,RNN 會結合當前模型狀態給出一個輸出ht,并將這一輸出作為下一時刻的輸入,網絡當前狀態由上一時刻輸出ht-1和當前輸入xt共同決定。因此,RNN 模型帶有記憶性,可以刻畫一個序列當前的輸出與過去信息的關系。由于RNN 模型結構包含有循環邊,因此被稱作循環神經網絡或遞歸神經網絡。如圖1 所示。

圖1 循環神經網絡結構示意圖

基本的RNN 結構主要由輸入層(Input Layer)、隱藏層(Hidden Layer)、輸出層(Output Layer)三部分組成,每個時刻t,輸入層節點為輸入向量xt,向量x 是輸入詞的One-hot 編碼,向量維度與詞匯表大小相同。隱藏層節點為非線性激活函數,接收輸入向量xt與上個時刻的網絡狀態ht-1,輸出向量ht并將其作為下一時刻輸出的參考。

圖2 循環神經網絡按時間展開后的結構

如圖2 所示,RNN 結構按時間在長度N 的序列上展開后,可看作一個前饋神經網絡,并可通過反向傳播算法進行訓練。這是循環神經網絡常用的訓練方法:沿時間反向傳播(Back-Propagation Through Time)。然而實際實驗表明,RNN 訓練中存在消失梯度問題,時間上相隔過遠的輸入即使發生較大變化,產生的影響也很難被梯度檢測到,這使得基于梯度的反向傳播算法訓練出的RNN 語言模型對較長距離信息的學習效果不好。根據Bengio 等人的研究,RNN 語言模型的性能約等于n 為8 到9 的前饋神經網絡模型[10]。

2.2 長短時記憶網絡

循環神經網絡有助于解決與時間序列有關的問題,能夠更好地利用傳統全連接神經網絡不能建模的信息,但是它也存在長期依賴問題(Long-Term Dependencies)。在自然語言處理中,往往會遇到復雜的上下文場景,例如在模擬“天空是…色”的句子時,一般情況下“藍色”的上文會是“天空”,但如果在更早的上文中存在“空氣污染嚴重”等類似的信息時,“天空”的下文就可能是“灰色”。簡單的循環神經網絡對這種遠距離信息的建模能力較差,而且在更復雜的場景中,有用信息與預測變量的距離有遠有近,普通循環神經網絡的性能無法處理。準確地說,RNN 模型在訓練過程中總是傾向于按照序列結尾處的權值的正確方向進行更新[11]。為此,Schmidhuber 等在1997 年提出一種具有特殊結構的循環神經網絡——長短時記憶網絡[12](Long Short-Term Memory,LSTM),LSTM 能夠記住有意義的長時記憶,也能遺忘那些司空見慣的時刻。

LSTM 與標準RNN 的結構差異在于,常用的改進型LSTM 結構用一個具有“三門”結構的網絡替換了RNN 中的單一tanh 循環體。如圖3 所示。

圖3 LSTM單元結構示意圖

LSTM 中的“門”結構主要包含一個sigmoid 神經網絡,sigmoid 激活函數因為值域為[0,1],所以用來描述有多少信息量能夠被“門”結構“保留”或“遺忘”。“遺忘門”根據當前輸入xt和上一時刻的輸出ht-1與狀態ct-1訓練權重參數W,學習哪一些信息應當被“忘記”,例如當模型先學習到“天空是藍色”后,又收到“空氣被污染”的信息,就應當忘記“藍天”的狀態:

“輸入門”則根據當前輸入xt和上一時刻輸出ht-1學習哪些信息應當被寫入新狀態,例如“空氣被污染”就是值得被寫入的新狀態ct:

計算出當前狀態后,“輸出門”會根據當前狀態ct和輸入xt,上一時刻的輸出ht-1來得到當前時刻的輸出ht,例如在當前狀態被更新為“空氣被污染”后,對于輸入“天空是…”的最大概率預測可能是“灰色”:

上述公式(6)-公式(10)組成LSTM 的前向傳播過程,通過訓練生成參數矩陣W,LSTM 能夠對具有復雜上下文場景的序列預測問題,表現出比標準循環神經網絡更優異的性能。不過,近期有研究報告指出,LSTM 結構存在功能重復的問題,“三門”結構中“遺忘門”起到了較重要的作用,因此出現了LSTM 的變體——門控循環單元(Gated Recurrent Unit,GRU),使用“重置門”和“更新門”替代了LSTM 的“三門”結構。一般實驗證明,GRU 參數更少收斂更快,但在數據集很大的情況下,LSTM 的表達性能更好。

3 神經語言模型

上文介紹了目前在自然語言處理領域常用的神經網絡模型,對于語言模型生成問題,為了達到更好的效果,無論使用哪種網絡都會改變其結構,主要是在網絡的兩端加入詞向量層(embedding)和Softmax 層。如圖4 所示。

圖4 循環神經網絡實現語言模型

3.1 詞向量層

詞向量層,或稱嵌入層,功能是將單詞轉換為詞向量。自然語言處理中,要使機器自動處理與學習自然語言,就需要把自然語言的符號數字化,將詞匯表“嵌入”一個固定維度的實數空間,就是詞的向量化表示。在過去常用的方法是one-hot 表示法,這種表示法產生的向量維度等于詞匯表的長度,每個向量只有一個維度的值為1,其余為0,N-Gram 語言模型就使用這種表示法。One-hot 表示法無法體現兩個詞之間的依賴關系,并且向量過于稀疏,將導致維數災難問題。

神經網絡語言模型中的詞向量層能夠將稀疏的向量轉換為稠密的向量,被稱為分布式表示法(Distributed Representation)[13]。這種稠密向量比一般的編號型向量包含更多的信息,通常會賦予語義相近的詞以取值相近的向量,從而使上層的循環神經網絡更好的學習詞語間的關聯性。另外還能降低輸入的維度,onehot 表示法的向量維度通常在10000 左右,而分布式的詞向量維度通常在200-1000 之間,大大減少了模型的參數量與計算量。依賴于連續詞袋模型和Skip-Gram模型[14],神經網絡語言模型中,往往通過添加詞向量層來完成嵌入過程。

添加詞向量層進行降維的方式可以看作添加一個簡單的全連接網絡,通過此全連接層的權重矩陣計算來降低維度。如圖5 所示。

圖5 詞向量層

這一技術被稱為“word2Vec”,由谷歌公司的Mikolov 等人于2013 年提出[15],詞向量層的輸入層是onehot 向量,隱藏層的激活函數是f(x)=x,輸出層為Softmax 層。Word2Vec 認為擁有相似上下文的詞的詞義是相近的,例如“貓”和“狗”都經常出現在“獸醫”的上下文中。Word2Vec 有兩種模型:連續詞袋模型(Continuous Bag-of-WordsModel,CBOW)和Skip-Gram 模型,CBOW 將一個詞的上下文的詞作為輸入,要計算向量的詞本身作為輸出,旨在訓練模型通過上下文猜出大致的詞義;Skip-Gram 模型的輸入和輸出則相反,即通過給出的詞預測可能出現的上下文。模型訓練完成后,從輸入到隱藏層的權重矩陣就包含了詞匯表中所有詞的分布式向量。對于一個特定詞,通過將其onehot 向量與權重矩陣進行相乘運算即可得到它的分布式詞向量。

實驗表明,CBOW 模型訓練出的詞向量對語法測試更準確,Skip-Gram 模型則在語義測試中準確性更高。

人在閱讀時如果遇到生僻詞,仍可能根據上下文猜測其詞義,Word2Vec 對分布式詞向量的生成過程,可以說是對這種人類行為的模仿。

3.2 Softmax層

Softmax 層是使用Softmax 函數作為激活函數的網絡層,經常作為神經網絡的最后一層作為輸出層。Softmax 函數,或稱歸一化指數函數,可將多個標量映射為一個概率分布,其值域為(0,1),公式如下:

在神經網絡語言模型中,Softmax 層將網絡的輸出轉化為詞匯表中每個單詞的輸出概率。在Softmax 之前還要先進行一次線性映射,將RNN 隱藏狀態維度的輸出映射到一個和詞匯表大小相同的向量,從而才能在這個向量的維度上進行Softmax。

相比隱藏層,詞向量層和Softmax 層的參數數量通常很大,與詞匯表的大小成正比,在整個網絡的總參數數量中占了較大比例。有研究指出[16],可以共享詞向量層和Softmax 層的參數,這樣不僅能大幅減少參數訓練量,還能提高模型最終效果。

3.3 神經語言模型的損失與性能

神經言模型通常使用困惑度(perplexity)的計算作為損失函數,在訓練中通過梯度下降法使困惑度逐步降低。

困惑度刻畫的是語言模型對樣本的預測能力,其實際是計算每一個單詞得到的概率倒數的幾何平均,可以理解成模型預測下一個詞時的平均可選擇數量。在語言模型的訓練中,通常采用困惑度的對數表達形式,使乘積求平方根計算轉換成加法計算,達到加速計算的效果。

3.4 神經網絡語言模型的性能優勢

不同語言模型之間的性能比較,需要建立在相同數據集,相同詞典的基礎上。本文使用公開英語文本數據集PTB(Penn Treebank Dataset),取其中詞頻前9998 的詞作為詞典,并對數據集中不在詞典中的詞,使用<unk>進行替換。再加上句子分隔標簽<eos>,得到總次數為10000 的詞典。使用PTB 數據集中設定好的訓練集與測試集。

使用N-Gram 方法對以上語料進行語言模型建模,分別建立3-gram 和5-gram 模型。3-gram 模型在測試集上的困惑度為186.7,5-gram 的困惑度為167.7。

使用LSTM 網絡的神經語言模型性能優異,一個隱藏層規模為300 的LSTM,經過6600 次迭代訓練,可將測試集上的模型困惑度從10000 左右減少到88。

4 結語

語言模型應用廣泛,語音識別、機器翻譯、詞性標注等自然語言領域的問題,都可依靠語言模型的研究解決。近年來隨著深度學習的興起,語音模型的訓練方法從傳統的統計學習方法轉向了神經網絡學習,自2010 年起,基于循環神經網絡的語言模型在很多自然語言處理問題上超越了傳統的統計模型,并在學術界和工業界都得到廣泛應用。廣為人知的谷歌翻譯系統使用的seq2seq 翻譯模型,其中的解碼器網絡就是一個以輸入編碼為前提的語言模型(Conditional Language Model)。

神經網路語言模型在一定程度上克服了維數災難,至今仍處于不斷發展完善中,且相關新技術層出不窮。使用卷積神經網絡取代循環神經網絡的模型使訓練過程可以并行執行、注意力機制的加入使翻譯系統更高效。隨著技術的進步,想必還會出現性能更優異的模型和更快捷的訓練方法。相信未來的神經網絡語言模型能使機器“說出”更自然的語言。

猜你喜歡
語言模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
讓語言描寫搖曳多姿
多向度交往對語言磨蝕的補正之道
累積動態分析下的同聲傳譯語言壓縮
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
我有我語言
主站蜘蛛池模板: 日韩AV无码一区| 欧美区一区二区三| 综合色在线| 中文字幕亚洲无线码一区女同| 992tv国产人成在线观看| 无码日韩人妻精品久久蜜桃| 国产经典免费播放视频| 色亚洲成人| 五月婷婷综合色| 欧美亚洲国产一区| 67194在线午夜亚洲| 国产永久免费视频m3u8| 久久99热这里只有精品免费看| 巨熟乳波霸若妻中文观看免费| 亚洲天堂久久| 亚洲最新地址| 日韩 欧美 国产 精品 综合| 国产黑丝一区| 99视频全部免费| 成人日韩欧美| 亚洲国产精品日韩欧美一区| 激情网址在线观看| 毛片在线区| 91精品伊人久久大香线蕉| 亚洲91精品视频| 任我操在线视频| 欧美人在线一区二区三区| 三上悠亚一区二区| 国产一区二区丝袜高跟鞋| 国产一区成人| 草逼视频国产| 成人午夜网址| 久青草网站| 色噜噜狠狠色综合网图区| 国产福利在线免费| 亚洲福利片无码最新在线播放| 国产91熟女高潮一区二区| 亚洲国产一区在线观看| 成人福利在线看| 国产成人亚洲精品色欲AV | 国产成人福利在线视老湿机| 九九热精品视频在线| 亚洲中文字幕久久无码精品A| 天堂亚洲网| 91丝袜在线观看| 国产福利微拍精品一区二区| 人妻无码AⅤ中文字| 国产一区二区三区夜色| 亚洲成肉网| 亚洲不卡网| 午夜欧美理论2019理论| 欧美一道本| 99re热精品视频国产免费| 在线观看免费黄色网址| 重口调教一区二区视频| 国产高清毛片| 国产欧美日韩在线在线不卡视频| 嫩草影院在线观看精品视频| 91视频区| 美女国产在线| 精品一区二区三区中文字幕| 国产一在线| 91精品国产情侣高潮露脸| 97久久免费视频| 中文字幕日韩丝袜一区| 狠狠色丁香婷婷| 日本高清有码人妻| 亚洲成人网在线观看| 国产69精品久久| 成色7777精品在线| 日本欧美一二三区色视频| 这里只有精品免费视频| 免费jizz在线播放| 久久久噜噜噜久久中文字幕色伊伊| 色综合久久无码网| 狠狠综合久久| 久久综合九九亚洲一区| 国产成人亚洲精品色欲AV| 国内精品久久人妻无码大片高| 亚洲国产天堂久久九九九| 亚洲中文字幕国产av| 国产综合在线观看视频|