唐素勤,孫亞茹,李志欣,張燦龍
(廣西師范大學 a.廣西多源信息挖掘與安全重點實驗室; b.教育學部 教育技術系,廣西 桂林 541004)
詞性標注是自然信息處理的一項基礎性工作。詞性標注結果的性能直接制約著自然語言處理技術的發展,對詞法分析、句法分析、語義分析、信息提取等研究領域有很大的影響。據維基百科統計,壯語是中國境內使用人口數位居第二和世界使用人口數排名第65的語言。壯文信息處理開始于19世紀80年代,時至今日,壯語的智能信息處理與其他少數民族語言相比仍發展緩慢。詞處理技術的不成熟和語料的嚴重匱乏是制約壯語信息處理技術發展的主要原因。
壯族文字包含古壯字和現代壯字兩種,因古壯字缺乏規范,未能成為壯族統一的文字,現代壯字也稱拼音壯文,是中華人民共和國成立后,中央人民政府幫助創制并批準推行使用的第一種少數民族新文字。拼音壯文的誕生,為壯族人民的學習和交流帶來便利,也為壯族文化的發展提供了有力的工具[1]。目前,現代壯字在諸多場合得到應用。例如,廣西省內的招牌、公章、路牌、站牌、公共標志,廣西省發放的身份證,大型會議(全國黨代會、人大會、政協會議)文件,人民幣上的第5種文字(其他4種語言分別是漢、蒙、藏、維),《廣西民族報》《三月三》等文藝雜志,農村掃盲、山歌培訓、種養科技培訓,壯族中小學課本。廣西民族出版社設有壯文編譯室,中央民族語文翻譯局設有壯文翻譯室。自1987年起,壯文翻譯室已經為每年的“兩會”、黨的十三大到十七大翻譯文件1 000多萬字,翻譯出版了《毛澤東選集》等諸多著作。
本文提出一種基于強化學習的壯語詞性標注方法。根據壯語的文法特點構建標注集,利用基于長短期記憶(Long Short-Term Memory,LSTM)網絡的序列標注模型,依據上下文的文本特征信息進行詞性選擇,改善模型的訓練結果。在此基礎上,將目標詞性作為環境反饋,通過特征學習不斷逼近目標真實值,得到精標注文本。
針對壯語文字的信息處理,目前已有編輯工具、英漢壯釋義詞典及輔助翻譯軟件等[2-4]。為推動壯語的教育、出版、交流與資產保護,中央民族語文翻譯局于2018年11月在南寧召開了壯語智能語音翻譯軟件發布會,以前沿科技推動壯語信息處理技術的發展。在自然語言處理領域,詞性標注技術是文本處理的基礎,目前英語、中文、藏文的詞性標注精確率分別為97.96%[5]、90.95%[6]和87.76%[7],使得上述語言在語義分析、信息提取、機器翻譯等方面取得了杰出的成果。壯語由于缺乏詞性標注領域的工作,目前還沒有標注語料庫,因此需從構建標注語料出發,結合人工智能技術實現壯語自動化詞性標注。
隨著人工智能的迅速發展,神經網絡模型被引入自然語言處理任務中,在序列標注領域取得了一系列的成果。例如,基于卷積神經網絡的序列標注模型,其詞性標注的準確率可達89.59%[8]。歷史經驗能夠對未來的工作有一定的輔助作用,循環神經網絡(Recurrent Neural Network,RNN)[9]的誕生,使得模型能夠有效利用記憶來輔助下一步決策,其在序列標注工作上的精確率達97.96%。但是,隨著句子長度的增加,誤差的遞增或減少會導致梯度消失或梯度爆炸。LSTM模型[10]能夠不受句子長度的限制,利用細胞單元控制和保留有效信息,避免了梯度消失或爆炸的產生。監督學習模型在進行訓練時,現實值與估計值的誤差傳遞由BP算法[11]完成,前向傳播訓練值并后向傳播誤差,從而調整各層參數,以達到期望效果。監督學習在很大程度上依賴于手工標注的特征和知識,在遇到信息不完善或缺少標簽的情況時,這一問題尤為突出,這時可采用概率的方法進行決策,在獎勵策略的推動下,生成最優決策路徑,并引入強化學習的機制[12-14]。本文嘗試將強化學習運用在詞性標注領域中,把RNN作為策略網絡,并將相關信息放在記憶網絡中作為決策的依據,提高決策效率。
本文詞性標注過程大致可以分為以下4個步驟:
1)對預標注文本進行詞向量表示。
2)神經網絡隱藏層對輸入詞向量進行特征提取,同時,將句子的語義信息作為語義特征,與特征向量進行融合。
3)輸出層依據融合后的隱藏特征做出詞性判斷。在判斷的過程中,將目標詞性作為環境反饋,反向傳播調整參數,優化策略模型。
在上述過程中,標注語料庫和標注方法是必不可少的。標注語料庫是對詞的詞性進行定義,在對預標注文本進行粗標注后,利用標注方法進行精標注。
壯語的詞匯按照詞義、結構、組合等特點可劃分為13類,即名詞、量詞、代詞、動詞、形容詞、指示詞、數詞、副詞、感嘆詞、介詞、連詞、助詞和語氣詞。前面5類統稱為實詞,其特點是能做多種詞組成分,除量詞外都能單獨用來回答問題。最后4類統稱為虛詞,其特點是不能做詞組成分,且不能單獨用來回答問題。中間4類為半實詞,其特點是介于前后兩種詞類之間,一般只能做某一種詞組成分,或只能做獨詞句,不單獨用來回答問題。在實詞中,名詞、量詞、代詞稱為體詞,經常做主語和賓語,動詞和形容詞稱為謂詞,經常做謂語。虛詞中的介詞、連詞、助詞稱為關系性虛詞,語氣詞則是功能性虛詞。
詞類是根據語法上的意義和特征對詞進行分類。壯語的詞類與漢語的詞類基本相同,具有共性[15]。圖1給出一個簡單的壯漢句法分析示例。

圖1 壯漢句法分析示例Fig.1 Example of syntactic analysis of Zhuang andChinese language
目前,壯語無詞性標注庫,因此,本文參考中英文詞類劃分的粒度和標記符號,以及前人對壯語詞類的研究,將壯文詞語分為一級、二級和三級3個不同類別,共包括3個一級類別、13個二級類別和59個三級類別。本文從《壯漢詞匯》[16]《布洛陀》[17]等壯語文本中獲取語料,根據壯語的文法特點和賓州樹庫符號構建標注集,標注規范及各類別詞數統計結果如表1所示。

表1 詞性標注規范及詞數統計Table 1 Tagging specifications of part of speech and statistics of words
監督學習的模型需要利用有標簽的語料進行訓練,對于不完備的信息,監督學習可能無法使用。在這種情況下,可以采用策略梯度法等概率的方法來學習。如果盲目采取策略,可能會使效率下降,通過記憶網絡可以把不同時間點的信息湊成一個整體,利用循環記憶來完善部分觀測信息,推理出完整的狀態信息。本文采用LSTM作為策略網絡,并將其結果作為決策的依據。
2.2.1 循環神經網絡
本文以簡單的循環神經網絡為例進行介紹,具體結構如圖2所示,其包含輸入層、隱藏層和輸出層。

圖2 循環神經網絡模型Fig.2 Recurrent neural network model
模型訓練之前需要進行預處理,一般使用word2vec[18]將輸入的文本表示成詞向量,以便于相似性計算。循環神經網絡模型是關于時間序列的模型,其將具有n個詞的待標注序列X={x1,x2,…,xt,…,xn}映射到隱藏層并進行特征提取,輸出目標詞性序列Y={y1,y2,…,yt,…,yn}。輸入層的維度與輸入文本詞特征表示的維度相同,輸出層與標簽的維度相同。在隱藏層中,當前的隱藏狀態與先前的隱藏狀態連接,以存儲歷史信息。
當前隱藏層是關于先前隱層特征ht-1與當前輸入詞特征xt的函數。隱藏層狀態在t時刻進行更新,公式如下:
ht=f(ht-1,xt)=f(Wht-1+Uxt)
(1)
其中,W是隱藏層連接的權重參數,U是輸入層與隱藏層間的權重參數,f是一個sigmoid函數,計算公式如下:
(2)
輸出層狀態表示在t時刻標簽上的概率分布,是關于隱藏特征ht的函數,具體公式如下:
yt=g(Vht)
(3)
其中,V是隱藏層與輸出層間的權重參數,g是一個softmax函數:
(4)
2.2.2 語義特征
文獻[19]將潛在的詞信息整合到基于字符的模型框架中,實現了潛在相關命名實體的消歧。文獻[6]將字符信息整合到詞表征中,在中文序列標注任務中取到了較優性能。本文假設句子的語義特征對目標詞性的選擇是有幫助的,并依據賓州樹庫構建語義特征向量。以“De dwg bouxcuengh.(我是壯族人)”為例構建的依存樹結構如圖3所示。其中,SBV表示主謂關系,POB表示動賓關系。

圖3 依存樹結構示例Fig.3 Example of dependency tree structure
本文采用從下向上遍歷依存樹的方法構建語義特征向量c。對輸入的句子X={x1,x2,…,xt,…,xn}有如下公式:
cDe=tanh(MrxDe+b)
(5)
cBouxcuengh=tanh(MrxBouxcuengh+b)
(6)
其中,Mr表示關系矩陣,b是偏差向量。
在葉節點詞向量構建完成后,依次構建上層節點向量,具體如下:
cdwg= tanh(MSBV·cDe+Mrxdwg+MPOB·cBouxcuengh+b)
(7)
通過式(7)使c包含整個句子的語義信息,并將語義特征向量整理成如下形式:
(8)
其中,Kn表示節點n與其他子節點k之間的關系矩陣。
循環神經網絡的隱藏層狀態在t時刻的公式更新如下:
ht=f(ht-1,xt-1,c)
(9)
輸出層的條件概率公式為:
yt=softmax(Vht+b,c)
(10)
2.2.3 策略模型
本文將詞性標注問題看作由狀態、行為、獎勵和策略4個要素組成。其中,將詞性看作狀態,對目標詞進行詞性標注是行為,然后依據標注的詞性在任務中的正確概率打一個分數,即獎勵,在給定一個狀態s的情況下采取任何可能行為的概率即為策略,它是一個概率密度函數。上述操作的目的是調整參數,優化策略函數,從而得到一個最優的策略。詞性標注模型如圖4所示。

圖4 詞性標注模型Fig.4 Model of part of speech tagging
輸入一個句子序列X1:T={x1,x2,…,xt,…,xT},通過模型訓練后,輸出詞性標注序列Y1:T={y1,y2,…,yt,…,yT},yt∈Υ,Υ是候選詞性標注集合。在t時刻,狀態s是目前產生的序列{y1,y2,…,yt-1},行為a就是將要選擇的下一個yt。因此,策略值Q(s,a|θ)是隨機地,參數θ通過環境中的信息特征進行學習,不斷逼近真實的Q(s,a)函數。Q在選擇行為后才得以確定,保證從起始狀態s0開始,即可生成預期獎勵最大的序列。
目標狀態確定算法的具體步驟如算法1所示。
算法1目標狀態確定算法

輸出目標狀態s
1.令當前狀態s=s0;
3.令當前狀態s=s′;
4.重復執行步驟2和步驟3,直到確定目標狀態。
強化學習的目的是找出能夠獲得最多獎勵的最優策略,根據文獻[20],目標函數可寫為如下形式:

(11)
目標值的迭代更新源自Bellman方程[21],具體如下:

(12)
其中,r是獎勵值,γ是未來獎勵值的懲罰因子(0≤γ≤1),s′和a′表示下一個狀態和行為,那么損失函數可表達為目標值與預期值的誤差,具體如下:
(13)
對目標函數求參,具體如下:
(14)
通過式(15)對參數進行更新:
θ←θ+αhθJ(θ)
(15)

詞性標注算法的具體步驟如算法2所示。
算法2詞性標注算法
1.用隨機參數θ初始化Qθ
2.預訓練Qθ
3.更新參數β←θ
4.repeat
5.for each epoch do
6.for each batch do
7.LSTM前向傳遞
8.強化學習環境反饋:
9.Y1:T={y1,…,yt,…,yT}~Qθ
10.LSTM后向傳遞:
11.更新參數
12.end for
13.end for
14.更新參數 β←θ
15.模型收斂
本文所選取的壯文語料來自壯族人民網2015年、2016年和2017年的新聞文本內容。對其預處理后進行訓練和分析,實驗詳細展示了模型在不同因素影響下的結果。
在訓練之前首先對該語料進行特殊標點符號處理,并將通過word2vec訓練得到的詞向量作為特征。本文以人工標注的900句壯文作為測試語料,采用標注庫和模型相結合進行詞性標注。使用0.1的學習率,將隱藏層的圖層大小設置為300。在模型迭代過程中給出F1值評測指標,并將標注結果看作一項機器翻譯的工作,采用BLEU[22]評測方法對訓練結果進行評估。
本文在對壯語進行詞性標注的同時,結合英文詞性標注對模型進行橫向分析。英文語料來自CoNLL2000和CoNLL2003的WSJ(華爾街日報語料庫)數據集。實驗分為3個部分進行測評,并對壯、英在不同迭代次數、不同句子長度下的詞性標注結果進行詳細分析,同時,將標注結果看成是一項翻譯工作,劃分不同元組,對BLEU數值進行分析。
在固定句子長度后,通過調整迭代次數完成詞性標注。迭代次數分別設為5、10、15、20和25,詞性標注結果如圖5所示。可以看出,隨著迭代次數的增加,壯語和英語的F1值均呈現出先增加后減小的趨勢。在迭代次數為10時,英語的標注結果達到最優;在迭代次數為15時,壯語的標注結果達到最優。因受標注庫的影響,英語的F1值起點比壯語高,并可以迅速達到最好的效果。壯語的訓練相對緩慢,但最終可以達到預期效果。

圖5 不同迭代次數下的詞性標注結果Fig.5 Tagging results of parts of speech varying with thenumber of iterations
將迭代次數固定為10和15,通過調整壯語和英語句子的長度(詞數)來完成詞性標注,詞數分別設為1、5、10和15,詞性標注的結果如圖6所示。從圖6可以看出,隨著句子長度的增加,F1值有下降的趨勢,并且壯語和英語均在詞數為1時取得最佳效果。句子長度大于10時,F1值下降趨勢明顯。

圖6 不同句子長度下的詞性標注結果Fig.6 Tagging results of parts of speech varying with thelength of sentences
為測試本文模型的序列標注性能,選取簡單的序列標注模型CRF、RNN和LSTM在相同的數據集上進行對比訓練。由于訓練模型采用相同的初始化單詞嵌入方法且數據集相同,因此不同的結果歸因于不同的網絡模型。4種模型的詞性標注性能如表2所示,其中,最優結果加粗標示。可以看出,LSTM模型相比其他模型較健壯,引入RL后在CoNLL2000和CoNLL2003數據集上的性能明顯提升,在語料庫不完善的壯語數據集上優勢顯著。

表2 4種模型的詞性標注性能比較Table 2 Comparison of part-of-speech tagging performance of four models %
本文選取4種不同方法與本文方法進行對比,結果如表3所示。其中,Florian方法[23]組合了多種機器學習分類器,在CoNLL2003挑戰賽上取得了88.76%的F1值。Chieu方法[24]在外部詞典的幫助下,其F1值達到88.31%。Passos方法[25]采用一種新的形式學習單詞嵌入,使其可以利用相關詞典的信息來改進詞表示,F1值達到90.90%。Yasunaga方法[26]通過對抗訓練實現多語言詞性標注,其F1值達到97.59%。從表3可以看出,在英語數據集上,Yasunaga方法通過對抗訓練實現多語言詞性標注,該方法的F1值最高,但是,該方法目前未針對壯語進行標注。本文方法在英語數據集上排名第三,在語料不完善的壯語數據集上取得了一定的成果。

表3 5種方法的F1值對比Table 3 Comparison of F1 values of five methods %
本文使用BLEU分數作為評估度量來衡量生成的文本與人類創建的文本之間的相似度。BLEU是對待評價譯文和參考譯文的n元組進行比較,計算出匹配片段的個數,匹配片段數越多,待評價譯文質量越好。BLEU最初用于自動判斷機器翻譯的質量,其關鍵點是機器創建的結果與人類提供的參考文獻之間的相似性。對狀語和英語數據集各選取若干樣本分別進行測試分析,同時以人工標注的結果作為參考對比。訓練集、驗證集和測試集的句子、標記和標簽的具體信息如表4所示。

表4 訓練集、驗證集和測試集的句子、標記和標簽個數Table 4 Number of sentences,tags and labels for training sets,validation sets and test sets
對于英文的評價,將n-gram設定為4,英語數據集中句子的平均長度(詞數)為23.462,評估結果如表5所示,而壯語數據集中的句子長度為6.153,因此使用BLEU-3、BLEU-4來評估壯語的表現,評估結果如表6所示。p-value是系統性能值與基線的風險判斷,p-value越小說明系統樣本觀測值越有價值。

表5 英語詞性標注結果評估Table 5 Evaluation of part of speech tagging results of English

表6 壯語詞性標注結果評估Table 6 Evaluation of part of speech tagging results of the Zhuang language
從機器翻譯的角度評測模型輸出的結果,可以評估文本的質量和模型的實用性。從表5結果可以看出,英語的人工標注結果和系統標注結果的p-value都小于0.01,說明測試結果成立,且本文方法的標注結果與真實人類的數據相當。從表6可以看出,壯語的p-value介于0.1與0.5之間,表示本文方法的樣本觀測值具有一定價值,說明測試結果可靠。
本文在研究現有壯語詞性標注方法的基礎上,提出一種基于強化學習的詞性標注方法。該方法構建壯語標注詞典,以序列標注模型LSTM為策略網絡,利用記憶網絡完善部分觀測信息,并引入強化學習框架,將目標值作為環境的反饋,通過特征學習實現調參迭代,得到精標注文本。實驗結果表明,該方法不僅可在壯語數據集上進行詞性標注,在英語數據集上也取得了較好的效果。下一步將提高詞向量的訓練質量、測試語料句質量(如句子長度、詞長度、未登錄詞等)和標注庫的質量,以改善本文方法的詞性標注性能。