頭旦才讓,仁青東主,尼瑪扎西,完么扎西,才藏太
(1. 青海師范大學 省部共建藏語智能信息處理及應用國家重點實驗室,青海 西寧 810008;2. 青海師范大學 計算機學院,青海 西寧 810008;3. 青海師范大學 民族師范學院,青海 西寧 810008;4. 西藏大學 信息科學技術學院,西藏 拉薩 850000)
藏語句子分割技術是自然語言處理中的一項重要且基礎性的研究工作。在機器翻譯、文本分類、命名實體識別和自動問答等任務中,語料往往以句子為單位進行分析和處理[1]。目前,在藏語語料構建過程中,一般都采用監督或者半監督的方法進行句子分割,這樣不僅耗費了大量的人力、物力和財力,而且語料規模難以達到藏語自然語言處理的要求,所以必須解決藏語句子的自動分割問題。
在漢語句子分割方法方面,主要以規則[2]、統計[3]、機器學習[4]和深度學習方法[5]為主,這些方法給漢語句子分割技術提供了很好的理論依據和技術參考,并廣泛應用于中文信息處理中。另外,漢語中表示句子間隔的標點符號的功能比較單一,通常只要找出表示漢語句子間隔的標點符號即可[6]。當漢語句子末尾出現句號、問號和感嘆號時,可以表示為一個獨立完整的句子,所以漢語句子分割問題已基本解決,而藏語句子邊界信息模糊,無法僅憑簡單的規則進行識別。
目前藏語句子分割方面的研究只有一些零散的文獻報道,采用的方法主要以規則、統計以及兩者結合的方法為主。2011年,李響等人[7]采用一種基于規則和最大熵模型相結合的方法來識別藏語句子邊界。2012年,才藏太[8]根據藏語語法的邏輯規則以及構建的辭典,對藏語句子進行了分割,同時采用最大熵模型識別有邊界歧義的藏語句子。2013年,趙維納等人[9]通過分析藏文句子邊界符號的特征,提出了一種基于藏語助動詞的句子分割方法。2016年,萬瑪冷智[10]通過探索藏語句子的詞法和語法規則,提出了一種基于句尾詞性的藏語句子分割方法。2019年,卻措卓瑪等人[11]總結歸納藏語句子的類型以及句子邊界信息特征,提出了一種基于混合策略的藏語句子分割方法。2020年,柔特等人[12]提出了一種藏語句子語義切分方法。上述這些研究成果給藏語句子分割技術的研究提供了一定的理論和技術基礎。
本文根據藏語句子分割規則、特點以及難點,借鑒漢英相關技術方法,提出一種融合藏語依存句法信息的藏語句子分割模型,下文將圍繞四個部分對藏語句子分割技術進行研究。
藏語句子是按照其嚴格的語法規則,由實詞和虛詞組成的,具備完整的語義,具有很強的次序性和邏輯性的句子。漢語句子分割技術和藏語句子分割技術有一定的區別和差異,所以,藏語句子分割技術無法直接使用漢語句子的分割方法和理論。

在藏語中,如何判斷某一個句點到底是否為句尾,關系到詞法分析、句法分析和語義分析等不同層面。如果從藏語文本的表層詞匯信息角度考慮,表示句尾的句點前面一般都會出現動詞、形容詞、終結詞、助詞、離合詞等。本文通過對藏語語料進行統計,句尾出現各類詞的比例如表1所示。

表1 句尾出現各類詞的比例

根據藏語文法中的句子特征和語料統計結果,藏語句子分割有以下三個難點。
1.2.1 句點的歧義性
句點功能的多種歧義使藏語句子邊界識別較為困難,示例如圖1所示。

圖1 藏語句點的歧義示例
1.2.2 借用符號的識別
隨著各民族文化交流,現代藏語文本中出現了很多借用符號,如雙引號、破折號和省略號等外來符號經常會出現在藏語句子中,增加了藏語句子分割的難度,示例如圖2所示。

圖2 藏語中出現的借用符號示例
1.2.3 長句的分割問題
長句由多個單句組成,很難在長句中找出句子內部的分割點,示例如圖3所示。

圖3 藏語長句子示例
雙向LSTM+CRF模型能夠解決文本序列標注問題,我們可以將藏語句子切分任務作為一個序列標注的問題進行處理。傳統的雙向LSTM+CRF模型包括輸入層、詞嵌入層、特征提取層和分類層。模型架構如圖4所示。

圖4 雙向LSTM+CRF模型架構
由圖4可知,詞嵌入層將輸入的詞特征序列映射成低維實值向量。若輸入序列過長,則隨著模型訓練,將會遺失長距離詞信息,致使模型不能很好的捕獲長距離句子的句法信息和語義特征。為提高模型學習時序特征能力,在特征提取層采用雙向LSTM,捕獲輸入句子中的上下文信息,獲得每個輸入序列的句法信息特征和隱藏層狀態,隨后采用CRF進行解碼。生成序列的概率P(y|X)如式(1)所示。

(1)
其中,
(2)
式中,s(X,y)是標簽分配得分函數,P是隱藏層序列映射到標簽的得分矩陣,A是轉移概率矩陣,Ai,j表示標簽i到j的轉移概率。
在漢語信息處理中使用的深度學習方法和理論一般都可以應用在藏語自然語言處理中,但在實際應用中,須針對藏語語法中的具體問題和藏語自身獨有的語法特征做適當的改動和調整。
藏語依存句法分析可以獲取句子,內部的結構信息,找出最佳句子邊界。因此,本文根據藏語句子結構特征,采用多任務學習機制,在雙向LSTM+CRF模型中融入了藏語依存句法信息。模型融入藏語依存句法信息的原因有以下三個方面:
(1) 根據藏語句子分割規則,動詞一般出現在句尾,可以充當句子邊界符號,而依存語法則是以動詞為核心,用于剖析句子成分內部的依賴關系,所以通過藏語依存句法分析可以更好地獲取藏語句子邊界信息。
(2) 我們根據藏語傳統的句法結構特征和語法理論規則,制定了符合藏語語法的依存句法標注規范,把藏語依存句法關系分為5個大類和36個小類,并研發了藏語依存句法標注系統[18],為融合藏語依存句法模型提供了可靠的數據和理論支持。
(3) 將藏語依存句法信息融入雙向LSTM+CRF模型中,避免對每個輸入序列都進行句法剖析,顯著增加了模型的適用性。
深度學習融入外部信息有多種方式[19],本文使用雙向LSTM+CRF模型進行藏語句子分割時融入了藏語依存句法信息,使模型可以學習到特征提取層和輸出層的信息,模型架構如圖5所示。

圖5 融合藏語依存語法的句子分割模型
圖5中,{x1,x2,x3,…,xn}是輸入的詞序列,{y1,y2,y3,…,yn}是模型預測出的分割標簽,{q1,q2,q3,…,qn}是模型預測出的藏語依存句法標簽序列。以下重點對模型的詞嵌入層、融合藏語依存句法的雙向LSTM層和輸出層進行介紹。
為融合藏語依存句法信息,模型的嵌入主要由詞嵌入和藏語依存句法信息嵌入兩部分組成。
模型的詞嵌入層將詞輸入序列映射為實值向量。輸入的藏語句子,都以詞作為最小單位嵌入神經網絡中,即圖5中的{x1,x2,x3,…,x5}。在詞嵌入層,首先生成一個訓練語料的詞表,需要將輸入序列中的詞都轉換為該詞在詞表中的位置,以此來確定詞的位置信息。然后構建可訓練張量,維度為[vocab_size,embedding_size],該張量中的參數可以隨著網絡訓練進行更新。其中vocab_size是詞表大小,embedding_size是詞嵌入的維度大小,最后在維度中找出對應的向量,將詞輸入序列映射為實值向量表示。


圖6 藏語句子C的依存句法分析樹
圖6中,邊表示句子中支配詞與被支配詞之間的依存關系。邊上的標簽表示詞與詞之間的依存關系類型[20]。
但是,雙向LSTM+CRF模型無法直接使用圖6所示的藏語依存句法結構,因此本文將使用如表2所示的藏語依存句法表示示例。

表2 藏語依存句法表示示例
從表2可以看到,通過句法解析后得到詞性信息和依賴關系等。對于句法信息來說,依賴關系很重要,所以本文在藏語句子分割時使用的句法信息是依賴關系。對于每個輸入語句,都將句法信息作為最小單元嵌入輸入層中,并通過序列化輸入標簽求出最終的標簽。
目前,未查閱到有關基于深度學習的藏語句子分割模型的文獻。為了解決藏語句點的歧義性、借用符號的識別問題和長句分割問題。同時,為解決長距離數據輸入和訓練過程中出現的長距離依賴問題[21],本文使用深度學習中的序列標注框架,用雙向LSTM模型進行藏語序列標注。
本文模型在詞嵌入層后均使用雙向LSTM學習時序特征,同時,拼接詞的時序特征和藏語依存句法信息的時序特征來表示最終的藏語句子分割結果。LSTM 按時序接收從嵌入層輸出的xn,雙向LSTM 層的輸出可以表示為ht,其計算過程如式(3)~式(8)所示。
X=[ht-1,xt]
(3)
it=σ[Wi·X+bi]
(4)
ft=σ[Wf·X+bf]
(5)
it=σ[Wo·X+bo]
(6)
Ct=it⊙tanh(Wc·X+bc)+ft⊙CT-1
(7)
ht=ot⊙tanh(Ct)
(8)
其中,X表示t-1時刻隱藏層的值,包含當前詞的上下文信息,xt表示t時刻的輸入向量,it是輸入門特征值,ft是遺忘門特征值,ot是輸出門特征值。Ct表示LSTM的單元狀態。Wi、Wf、Wo、Wc、bi、bf、bo和bc分別為需要學習的參數[22]。
雙向LSTM的輸出為正反向LSTM輸出的拼接,表示為ht,如式(9)所示。


(10)
最后,雙向LSTM作為特征抽取器,取到整個輸入序列的上下文信息和每個位置的上下文內容信息。在訓練過程中,使用dropout有效遺忘一些事先得到的狀態信息。提高模型的泛化性能,緩解模型的過擬合現象。
得到雙向LSTM的最終輸出后,經過CRF進行解碼。由于本文不僅要預測藏語句子分割標簽序列,而且還要預測藏語依存句法標簽,所以在雙向LSTM+CRF模型上增加了一層CRF層,主要用于藏語依存句法標簽的解碼。
由此,在訓練過程中,對于表3中的藏語輸入序列{x1,x2,x3,…,xn},模型應該識別的輸出序列是{y1,y2,y3,…,yn}和{q1,q2,q3,…,qn}。

表3 輸出樣例
表3中,{q1,q2,q3,…,qn}是預測藏語依存句法標簽,即藏語依賴關系標簽。{y1,y2,y3,…,yn}是預測的藏語句子分割標簽序列。預測的藏語句子分割標簽序列中的N代表不是句子邊界,S表示最佳句子分割點。
在本文模型的輸出層,若用yt和qt(t∈[1,5])分別表示t時刻預測到的藏語句子分割標簽和藏語依存句法標簽,則特征提取層提取到的特征ht經過CRF進行解碼后的輸出yt和qt如式(11)所示。
最終將預測分割標簽序列和藏語依存句法標簽序列和的損失相加,作為本模型的總損失。
由于目前沒有公開的藏語句子分割語料,本文將青海師范大學藏語智能信息處理及應用國家重點實驗室提供的數據作為訓練集,西藏大學信息科學技術學院提供的語料作為驗證集和測試集。通過對藏語生語料進行拼寫檢查、自動校對、字詞切分和依存句法分析后,得到了符合規定數據格式并擁有較高質量的11 600 條藏語數據。實驗數據的內容和類型主要以新聞和法律文本為主,實驗數據劃分情況見表4。

表4 藏語句子分割數據集
由于藏語句子分割模型的輸入序列是以詞為單位的,所以分詞的好壞直接影響實驗數據的性能。本文根據藏文的語法特點,首先利用改進的藏文字節對編碼進行了藏語分詞[23],具體算法如下:
其中,分詞的F1值為93.7%,藏語命名實體識別的F1值為88.45%,然后對藏語分詞語料進行了人工校對,以確保實驗數據的準確性。
本實驗的操作系統為Ubuntu 18.04,CPU為Intel E5-2684 v4,GPU為NVIDIA GTX 1080Ti,深度學習框架為TensorFlow 1.12.0。訓練中,最大句子長度為180個字符,預測標簽數為2,詞表大小為43 064。當本實驗參數設置為如表5所示時,實驗效果最佳。

表5 藏語句子分割模型參數
本文采用準確率(P)、召回率(R)、以及F1值作為藏語句子分割模型的評價指標,具體定義如式(12)~式(14)所示。
目前沒有公開的藏語句子分割語料,加上相關文獻的實驗數據、實驗環境和研究方法各不相同,實驗結果的可比性較低。所以,為了驗證本文模型的有效性,選用神經網絡中常用于序列標注的3個經典模型作為基線模型實現了藏語句子分割任務,分別為CRF、雙向LSTM、雙向LSTM+CRF以及本文提出的雙向LSTM+CRF+藏語依存句法等模型,對比實驗結果如表6所示。

表6 不同模型的藏語句子分割結果
從表6中實驗結果可以看出,第一組實驗采用CRF實現了藏語句子分割,取得了較好的效果,但是CRF不能捕捉距離長的上下文特征信息,只考慮了句子的局部特征,所以該模型的F1值最低。
第二組實驗采用雙向LSTM實現了藏語句子分割。因雙向LSTM的序列標注能力優于CRF,其既能捕獲長遠的上下文信息特征,還可具備擬合非線性的能力,故F1值達到了90.2%。
第三組實驗采用雙向LSTM+CRF實現了藏語句子分割。在特征提取層采用雙向LSTM模型,捕獲輸入句子的上下文信息,得到每個輸入的特征表示和隱藏層狀態,之后利用CRF進行解碼。F1值提高了4.1個百分點,達到了94.3%。基本解決了藏語句點的歧義性和長句分割問題。
最后,為了通過融合藏語依存句法結構信息,達到解決藏語句點歧義性和長句分割問題的目的,本文根據藏語句子結構特征,第四組實驗在原有模型雙向LSTM+CRF的基礎上拼接了用于表示藏語依存句法信息的雙向LSTM模型,這樣模型可以通過學習特征提取層和輸出層的信息,獲取句子內部結構信息。然后通過藏語依存序列化標簽處理、藏語句子特征提取等方法,找到最佳的句子邊界。經實驗,在測試集上F1值提高了5.1個百分點,達到了99.4%。驗證了本文所提模型和藏語依存樹庫在藏語句子分割任務上的有效性。
本文融入依存句法結構信息后效果提升明顯,原因主要有兩點: 一是我們首先使用文獻[18]提出的藏語依存標注系統構建了規模為6 000句的藏語依存樹,然后對所建樹庫進行人工校對后將其分成了訓練集和測試集,規模分別為5 000句和1 000句,最后選用依存句法分析任務中常用的USA和LAS作為評價指標進行實驗,測試準確率為95.6%,確保了融入依存句法結構信息的質量。二是藏語依存句法分析可以獲取以謂詞為核心的句子內部結構信息,有助于找出最佳句子邊界和提高句子分割性能。
為了更加直觀地對比和描述四組實驗效果,將實驗結果用柱狀圖展示,其中橫坐標表示四組實驗,如圖7所示。

圖7 藏語句子分割實驗效果對比
實驗表明,融合藏語依存句法的雙向LSTM+CRF模型在藏語句子分割任務中效果最佳,進一步優化了藏語句子分割模型,準確率、召回率、F1值分別為99.5%、99.4%和99.4%。驗證了雙向LSTM+CRF模型中融合藏語依存句法信息的有效性,模型能夠解決藏語句點的歧義性、借用符號的識別問題和長句分割問題。

表7 藏語句子分割的例句
本文根據藏語句子結構特征,在分析藏語句子分割規則與難點的基礎上,提出一種融合依存句法的藏語句子分割模型。該模型首先通過詞嵌入和藏語依存句法信息嵌入將輸入序列映射成實值向量;然后構建融合藏語依存句法的雙向LSTM,拼接詞語和句法信息特征, 提高上下文時序特征的學習能力;最后利用CRF預測出最佳句子分割點。通過對比實驗,驗證了本模型對藏語句子分割的有效性。實驗結果表明,該模型的F1值為99.4%。
未來工作中,我們將擴充語料,采用聯合訓練模型和預訓練模型等先進方法對藏語句子分割進行改進,也相信相關研究人員將會提出更多有價值和實際應用能力的藏語句子分割技術。
本文將開放藏語句子分割實驗數據(1)獲取地址: https://github.com/toudancairang,希望更多的研究人員參與其中,共同推動藏語句子分割的研究,促進藏語自然語言處理技術的發展。