,*
(1.湘潭大學(xué)計(jì)算機(jī)學(xué)院·網(wǎng)絡(luò)空間安全學(xué)院,湖南湘潭 411105;2.中國科學(xué)院計(jì)算技術(shù)研究所,北京 100190)
隨著殘疾人信息無障礙建設(shè)的發(fā)展,自然手語和漢語互譯越發(fā)重要,手語合成旨在將漢語語句翻譯為符合手語語法的連續(xù)手語動作視頻;而手語識別旨在將連續(xù)手語動作視頻翻譯為通順可懂的漢語語句。手語識別面臨兩個(gè)難題:一是手語單詞的邊緣檢測和時(shí)域分割;二是識別結(jié)果的手語文本語義可懂度的提升。近年來第一個(gè)難題已經(jīng)得到有效解決,而第二個(gè)難題還處于探索階段,本文基于該難題展開研究。
自然手語是一種視覺語言,有其自身的語法規(guī)則和特點(diǎn)。用自然手語表述事情時(shí),通常把描述主體排在前面,然后再對主體進(jìn)行描述,即賓語前置,其語序和漢語語序完全不同。此外還存在否定詞后置、量詞省略、動名詞一體,沒有“雙重否定”等規(guī)則[1],如表1、2 所示。自然手語和漢語不同的語法規(guī)則使得連續(xù)手語識別結(jié)果的手語文本語義模糊,造成了健聽人理解困難。此外,多數(shù)健聽人和少數(shù)聽障人掌握的手語為文法手語,即按照漢語語法順序表達(dá)手語單詞,這部分人對自然手語的理解也存在比較大的障礙。因此如何提高連續(xù)手語識別結(jié)果的可懂度,非常值得研究探討。
在連續(xù)手語識別領(lǐng)域,目前多數(shù)研究為對視頻的逐詞翻譯,得到的結(jié)果是不通順的語句,并且受限于手語的復(fù)雜性和多模態(tài)性,難以收集和注釋大規(guī)模的連續(xù)手語數(shù)據(jù)集?,F(xiàn)今,國外連續(xù)手語的數(shù)據(jù)集以RWTH-Phoenix[2]為代表,其包含大約7 千條德國天氣預(yù)報(bào)句子;國內(nèi)連續(xù)手語的數(shù)據(jù)集為中國手語數(shù)據(jù)集(Chinese Sign Language,CLS)[3],包含少量日常語句以及對應(yīng)的手語視頻。以上兩個(gè)數(shù)據(jù)集僅提供句子級注釋,因此并不適合用來研究手語和傳統(tǒng)語言的端到端互譯問題。數(shù)據(jù)集的缺乏阻礙了國內(nèi)外關(guān)于將連續(xù)手語動作直接翻譯為傳統(tǒng)語言的研究。在2018 年,Camgoz 等[4]首次探討了這個(gè)問題,并基于RWTH-Phoenix 重新構(gòu)建數(shù)據(jù)集,包含視頻切分、注釋以及對應(yīng)的德語文本單詞,利用機(jī)器翻譯的方法實(shí)現(xiàn)手語視頻到德語文本的端到端轉(zhuǎn)化,將手語翻譯上升到語義層次,而國內(nèi)尚未有關(guān)于這一問題的專門研究。
表1 自然手語與漢語語序?qū)Ρ仁纠齌ab.1 Word order comparison between natural sign language andChinese
表2 自然手語省略詞示例Tab.2 Examples of word omitting in natural sign language
本文提出的方法將提高連續(xù)手語識別結(jié)果的可懂度轉(zhuǎn)化為兩種語言的翻譯問題,直接對識別結(jié)果的手語文本進(jìn)行處理,將研究重點(diǎn)完全轉(zhuǎn)移到語言的處理上。由此,本文研究內(nèi)容可闡述為:將連續(xù)手語識別結(jié)果的手語文本轉(zhuǎn)化成符合漢語語法的通順的漢語語句。
將不通順的語句調(diào)整為符合語法的語句,以及語句補(bǔ)全等任務(wù)屬于自然語言處理范疇,國內(nèi)外對此都進(jìn)行了許多研究。Yuan等[5]首次提出將神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯應(yīng)用于文本語法錯(cuò)誤糾正任務(wù),利用翻譯模型對大約200 萬條平行語句進(jìn)行訓(xùn)練,實(shí)現(xiàn)英文語法錯(cuò)誤糾正。由于神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯模型依賴于大規(guī)模標(biāo)注數(shù)據(jù),難以應(yīng)用在缺乏相關(guān)數(shù)據(jù)集的領(lǐng)域。國內(nèi)Alibaba 的自然語言處理團(tuán)隊(duì)[6]在第八屆自然語言處理國際聯(lián)席會議(The 8th International Joint Conference on Natural Language Processing,IJCNLP 2017)共享任務(wù)中基于長短期記憶神經(jīng)網(wǎng)絡(luò)結(jié)合條件隨機(jī)場(Long Short-Term Memory neural network and Conditional Random Field,LSTM-CRF)模型對漢語語句進(jìn)行錯(cuò)誤位置診斷,取得了綜合指標(biāo)第一名的成績,該任務(wù)診斷冗余詞(R)、缺詞(M)、用詞不當(dāng)(S)和亂序(W)四種類型的語法錯(cuò)誤。第七屆CCF自然語言處理與中文計(jì)算國際會議(The Seventh CCF International Conference on Natural Language Processing and Chinese Computing,NLPCC-2018)提出中文語法錯(cuò)誤修正任務(wù)恰好彌補(bǔ)了上述IJCNLP 2017任務(wù)只診斷不糾正的不足,在該任務(wù)中,有道團(tuán)隊(duì)[7]利用Transformer 的翻譯模型取得了最好的結(jié)果。針對N-gram 模型依賴共現(xiàn)序列概率的缺點(diǎn),Gubbins 等[8]以依存句法分析為基礎(chǔ),訓(xùn)練節(jié)點(diǎn)之間的N-gram 模型來實(shí)現(xiàn)語句補(bǔ)全,相比傳統(tǒng)N-gram 模型提高了8.7%的準(zhǔn)確率。Park 等[9]通過微調(diào)單詞級循環(huán)神經(jīng)網(wǎng)絡(luò)模型的網(wǎng)絡(luò)結(jié)構(gòu)和超參數(shù)在微軟研究院句子補(bǔ)全挑戰(zhàn)中取得最好結(jié)果,但該工作略微缺乏在模型上創(chuàng)新。Islam 等[10]構(gòu)建了包含單詞排列錯(cuò)誤、單詞缺失的孟加拉語數(shù)據(jù)集,并利用LSTM 實(shí)現(xiàn)孟加拉語文本的校正和自動補(bǔ)全,在測試集上的準(zhǔn)確度可達(dá)79%。
根據(jù)前文所述,在手語研究領(lǐng)域,國內(nèi)缺乏解決連續(xù)手語識別文本結(jié)果的語義模糊、語序不通順等問題的相關(guān)研究;且在相似任務(wù)上,國內(nèi)外研究大多采用基于深度學(xué)習(xí)的方法,這些方法依賴于大規(guī)模標(biāo)注數(shù)據(jù),而難以獲取和構(gòu)建相關(guān)標(biāo)注數(shù)據(jù)集正是阻礙國內(nèi)研究進(jìn)程的重要因素。針對這一問題,本文提出一種利用現(xiàn)有少量標(biāo)注數(shù)據(jù),將連續(xù)手語識別結(jié)果的手語文本轉(zhuǎn)換為通順漢語文本方法。
本文的主要工作如下:
1)設(shè)計(jì)轉(zhuǎn)換規(guī)則,基于規(guī)則和N-gram 模型將手語文本語序轉(zhuǎn)換為漢語文本語序,以此規(guī)避深度學(xué)習(xí)方法需要大量字符級標(biāo)注數(shù)據(jù)的問題。
2)設(shè)計(jì)量詞定位和補(bǔ)全模型,解決手語表達(dá)中量詞省略的問題。根據(jù)量詞的特性,利用序列標(biāo)注的方法對量詞的定位更準(zhǔn)確。
針對手語表達(dá)中賓語前置以及否定詞后置的特點(diǎn),在N-gram 統(tǒng)計(jì)語言模型[11]的基礎(chǔ)上,引入自然手語語法規(guī)則作為約束,將自然手語文本語序轉(zhuǎn)換為漢語文本語序。
參考國家通用手語語法[12]以及上海、福建自然手語協(xié)會整理的語法,制定出自然手語文本到漢語文本的轉(zhuǎn)換規(guī)則。調(diào)序流程如圖1所示。對輸入的自然手語文本進(jìn)行分詞、詞性標(biāo)注,分析出依存句法樹,然后檢測該文本是否符合規(guī)則庫中的轉(zhuǎn)換規(guī)則,若符合則根據(jù)相應(yīng)的自然手語規(guī)則進(jìn)行調(diào)序。自然手語文本與對應(yīng)的漢語文本的規(guī)則轉(zhuǎn)換示例如圖2所示。
圖1 調(diào)序流程Fig.1 Flowchat of ordering
圖2 規(guī)則轉(zhuǎn)換示例Fig.2 Example of rule transformation
基于N-gram 語言模型對文本進(jìn)行調(diào)序,處理規(guī)則轉(zhuǎn)換后的文本。利用語料庫訓(xùn)練出N-gram 語言模型的N元詞表,該詞表包含訓(xùn)練語料中的所有N元詞序列頻度,集束搜索(Beam Search)算法利用N元詞表對待調(diào)序的文本進(jìn)行搜索,依據(jù)概率選擇詞匯,由此生成基于訓(xùn)練語料的概率最大詞序列。如圖3所示。
N-gram 模型全稱為N元語言模型,其假設(shè)第N個(gè)詞的出現(xiàn)只與前面N-1個(gè)詞相關(guān),常見的有二元語言模型Bi-gram 以及三元語言模型Tri-gram。
假設(shè)S表示某一個(gè)有意義的句子,S=(w1,w2,…,wn),其中wi是組成句子的詞語,n是整個(gè)句子中詞語的數(shù)量。則S出現(xiàn)的概率P(S)為:P(S)=P(w1,w2,…,wn),利用條件概率公式則有:
其中:P(w1)表示第一個(gè)詞w1出現(xiàn)的概率;P(w2|w1)表示在w1出現(xiàn)時(shí),w2出現(xiàn)的概率,以此類推。二元語言模型即第N個(gè)詞的出現(xiàn)只與第N-1 個(gè)詞相關(guān);三元語言模型即第N個(gè)詞的出現(xiàn)只與第N-1、N-2個(gè)詞相關(guān),由此分別得出概率公式如下:
N-gram 的精確度依賴于語料庫的大小和質(zhì)量,若某些N元詞序列在訓(xùn)練的語料庫中從未出現(xiàn),但實(shí)際是符合語法并且存在的,此時(shí)N-gram 將會面臨零概率問題。為此需要進(jìn)行數(shù)據(jù)平滑,數(shù)據(jù)平滑的方法是重新分配整個(gè)概率空間,使所有的概率之和為1,并且使所有的概率都不為0。本文采用的是Add-one平滑模式,即讓所有的N元詞序列至少出現(xiàn)一次。
集束搜索(Beam Search)本質(zhì)上是貪心的思想[13],不同于貪心搜索每一步只選擇概率最大的假設(shè),集束搜索則是維護(hù)一個(gè)容量為K的搜索結(jié)果庫,第t步搜索結(jié)果庫記為Ht,容量K稱為集束寬度(Beam Width)。
其中:第t步的每一個(gè)搜索結(jié)果記為i∈{1,2,…,K}在第t+1 步對于每一個(gè)搜索結(jié)果均產(chǎn)生K個(gè)搜索結(jié)果,共K2個(gè)結(jié)果,保留其中概率最大的K個(gè)結(jié)果,記為Ht+1;當(dāng)搜索到指定長度后,選擇搜索結(jié)果庫中概率最大的搜索結(jié)果作為最終輸出。
圖4 為單詞序列“我”“愛”“北京”“天安門”的集束搜索示例,其中集束寬度為2。最終,以概率最大的“我愛/北京/天安門”這一序列作為最終結(jié)果。
圖4 Beam Search示例Fig.4 Example of Beam Search
此外,在自然語言處理中,分詞的準(zhǔn)確度很大程度上影響著模型的性能,分詞直接決定每個(gè)分詞單位的語義是否完整,也決定了詞表空間的構(gòu)成,在本文工作中也不例外。因此,為保證手語詞匯的語義完整,根據(jù)2019 年出版的《國家通用手語詞典》構(gòu)建的包含8 214 個(gè)手語詞匯的詞典,利用Hanlp 分詞工具,優(yōu)先使用該詞典進(jìn)行分詞。
利用字符級雙向長短期記憶(Bidirectional Long-Term Short-Term Memory,Bi-LSTM)模型對不包含量詞的文本序列進(jìn)行處理,預(yù)測出缺失量詞的位置以及正確填補(bǔ)該量詞。本文使用序列標(biāo)注任務(wù)[14]的思想來處理這一問題,對于某一輸入序列X={x1,x2,…,xn},其中xi表示該序列的第i個(gè)字符,預(yù)測序列的字符級標(biāo)簽L=(l1,l2,…,ln)。其中,li為量詞表中對應(yīng)的量詞標(biāo)簽或者非量詞標(biāo)簽。
Bi-LSTM 是LSTM 的一種變體[15],它將兩個(gè)時(shí)間方向相反的LSTM 結(jié)構(gòu)連接到相同的輸出,以獲取歷史和未來的上下文信息,如圖5 所示。前向網(wǎng)絡(luò)接受輸入x1,x2…,xt,從第一時(shí)刻到第t時(shí)刻,計(jì)算隱狀態(tài),反向網(wǎng)絡(luò)則接受輸入xt,xt-1…,x1,計(jì)算隱狀態(tài),由此可獲取每個(gè)時(shí)刻的雙向特征yt:
其中:W1為前向網(wǎng)絡(luò)的權(quán)重矩陣;W2為反向網(wǎng)絡(luò)的權(quán)重矩陣;b是偏置。
圖5 Bi-LSTM 網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Bi-LSTM network structure
圖6 為文本“我有三狗”的量詞標(biāo)注示例,在輸入層,將每個(gè)漢字映射成字嵌入即一個(gè)固定維數(shù)的多維向量,并依次輸入Bi-LSTM 進(jìn)行處理,構(gòu)造一個(gè)包含上下文信息的序列雙向表達(dá),輸出經(jīng)過softmax層進(jìn)行分類,映射到相應(yīng)的標(biāo)簽。
本文使用刪除量詞后的文本序列作為輸入,前置位缺失量詞的字符使用對應(yīng)量詞進(jìn)行標(biāo)注,其余字符都被標(biāo)注為非量詞標(biāo)記符“O”,由此訓(xùn)練模型后既可定位到量詞位置又可得到量詞本身。
圖6 量詞標(biāo)注示例Fig.6 Examples of quantifier annotation
文本調(diào)序采用的訓(xùn)練數(shù)據(jù)集是維基百科問答語料[16],該語料總共含有150 萬條預(yù)先過濾過的、高質(zhì)量問題和答案,每個(gè)問題屬于一個(gè)類別,總共有492 個(gè)類別,其中頻率達(dá)到或超過10次的類別有434個(gè),語料內(nèi)容以日常交流用語為主,基本涵蓋了常見領(lǐng)域。本次實(shí)驗(yàn)對該語料截取50 萬條數(shù)據(jù)并只保留“title”“desc”“answer”屬性的內(nèi)容進(jìn)行訓(xùn)練。測試數(shù)據(jù)是《中國手語日常會話》[17]的日常用語500 條,部分示例如表3所示。
量詞補(bǔ)全采用的訓(xùn)練數(shù)據(jù)是根據(jù)漢語常用量詞構(gòu)建的量詞標(biāo)注數(shù)據(jù)集,數(shù)據(jù)示例如表4 所示。此外,對所有數(shù)據(jù)都進(jìn)行了清洗、去停用詞等預(yù)處理。
表3 自然手語和對應(yīng)漢語的文本示例Tab.3 Examples of natural sign language and corresponding Chinese text
表4 量詞補(bǔ)全訓(xùn)練數(shù)據(jù)示例Tab.4 Training data examples of quantifier completion
比起單獨(dú)采用N-gram 模型,融合規(guī)則信息,實(shí)驗(yàn)結(jié)果的綜合指標(biāo)明顯提升,表明將規(guī)則融入N-gram 模型中是解決自然手語文本轉(zhuǎn)換漢語文本的實(shí)用手段。
表5 文本調(diào)序?qū)嶒?yàn)評估 單位:%Tab.5 Evaluation of text ordering experiment unit:%
為了驗(yàn)證Bi-LSTM 的有效性,量詞補(bǔ)全實(shí)驗(yàn)使用隱馬爾可夫模型(Hidden Markov Model,HMM)[19]、LSTM、Bi-LSTM、Bi-LSTM+CRF 四個(gè)模型進(jìn)行對比,并評估準(zhǔn)確率、召回率、F1分?jǐn)?shù)。HMM 是序列標(biāo)注任務(wù)中應(yīng)用較早的模型,一般作為基線模型。為了排除其他因素的影響,實(shí)驗(yàn)中LSTM 和Bi-LSTM模型的詞向量維度以及所有的超參數(shù)設(shè)置相同。
由于中文量詞具有同形詞特性,一般會干擾量詞定位,測試語句中包括了部分采用量詞同形詞的語句,如表6所示。
雙語評估替換(BiLingual Evaluation Understudy,BLEU)是目前用于評價(jià)序列到序列任務(wù)的最流行的指標(biāo)之一,如文獻(xiàn)[2,4]均用BLEU 作為評估指標(biāo)。BLEU 采用一種N-gram 的匹配規(guī)則,計(jì)算出預(yù)測文本和真實(shí)文本間N元詞共現(xiàn)的占比并不能很好地反映語法結(jié)構(gòu)的調(diào)整[18],因此不適合用于評估該文本調(diào)序?qū)嶒?yàn)。為了驗(yàn)證提出方法的有效性,本文設(shè)計(jì)用以下方法進(jìn)行評估:
1)絕對準(zhǔn)確率(Absolute ACcuracy,AAC):預(yù)測語句與真實(shí)語句進(jìn)行漢字一一對比,若某個(gè)漢字位置不能對應(yīng),則整句判定結(jié)果為錯(cuò)誤。
2)最長正確子序列(Longest Correct Subsequence,LCS)匹配:將預(yù)測語句與真實(shí)語句進(jìn)行最長子序列匹配,計(jì)算整個(gè)測試集最長正確子序列的平均占比。
本次文本調(diào)序?qū)嶒?yàn)分別對Bi-gram、Tri-gram、4-gram、5-gram 模型進(jìn)行對比驗(yàn)證,設(shè)置集束寬度為20。文本調(diào)序的實(shí)驗(yàn)結(jié)果如表5 所示,只基于規(guī)則轉(zhuǎn)換絕對正確率達(dá)68.60%,表明轉(zhuǎn)換規(guī)則已經(jīng)可以正確處理多數(shù)語句;此外,從Bi-gram到4-gram,隨著上下文的依賴增長,各項(xiàng)指標(biāo)均有所上升,說明上下文信息有助于調(diào)整語句結(jié)構(gòu)。根據(jù)理論基礎(chǔ),在Ngram 模型中,N越大,實(shí)驗(yàn)結(jié)果應(yīng)越好,但基于5-gram 模型的指標(biāo)卻不升反降。這是由于平均每條測試語句的詞匯約為4.9 個(gè),當(dāng)N≥5 時(shí),依據(jù)N-gram 原理,在訓(xùn)練語料有限的條件下,每條測試語句組成的N元詞序列頻度在訓(xùn)練好的N元詞表中將會隨著N的增大而減小,由此會影響模型的整體性能。此外,實(shí)驗(yàn)結(jié)果也表明,僅訓(xùn)練50 萬條語料,4-gram 的模型大小和訓(xùn)練時(shí)長均約為Tri-gram 的2倍。因此,對于小規(guī)模短序列數(shù)據(jù)集,并不是N越大,模型效果越好,需視情況擇優(yōu)選擇。
表6 包含量詞同形詞的語句Tab.6 Sentences containing quantifier homograph
量詞定位和補(bǔ)全的實(shí)驗(yàn)結(jié)果如表7 所示,實(shí)驗(yàn)結(jié)果表明LSTM 模型綜合指標(biāo)最低,Bi-LSTM 的綜合指標(biāo)優(yōu)于其他模型。HMM 是統(tǒng)計(jì)模型,其對轉(zhuǎn)移概率和表現(xiàn)概率直接建模,統(tǒng)計(jì)共現(xiàn)概率。在該量詞定位實(shí)驗(yàn)中,量詞位置具有明顯的特征,例如量詞通常跟在數(shù)詞或代詞后,并且每個(gè)量詞有相對固定的搭配如“一條狗,一只魚”,HMM 能很好地提取這一信息。而LSTM 雖能捕獲長距離依賴,但其只能提取上文信息特征,無法利用下文信息特征,序列的特征抽取不夠充分,因此標(biāo)注效果不理想。相比之下,Bi-LSTM 解決了LSTM 的問題,又得益于非線性的建模,所以取得更好的結(jié)果。另外,根據(jù)文獻(xiàn)[14]可知,Bi-LSTM+CRF 作為目前主流的序列標(biāo)注模型,其實(shí)驗(yàn)結(jié)果應(yīng)優(yōu)于Bi-LSTM,而本次實(shí)驗(yàn)訓(xùn)練數(shù)據(jù)為低維時(shí)序數(shù)據(jù),且樣本量相對較小,這是造成Bi-LSTM+CRF 性能稍次于Bi-LSTM的主要原因。
表7 量詞標(biāo)注實(shí)驗(yàn)評估 單位:%Tab.7 Evaluation of quantifier annotation experiment unit:%
包含量詞同形詞的量詞定位和補(bǔ)全的準(zhǔn)確率、召回率、F1分?jǐn)?shù)分別為95.58%、94.56%、95.4%,表明該模型在有同形詞的情況下仍然能夠準(zhǔn)確、有效地定位量詞;但各項(xiàng)評估指標(biāo)對比無同形詞時(shí)有所下降,這是由于某些量詞同形詞也具有量詞的特征,即跟在數(shù)詞或代詞后,易以較大的概率被標(biāo)記為量詞。
本文針對自然手語語法存在賓語前置、否定后置、省略量詞等特點(diǎn),提出了兩步法來對連續(xù)手語識別結(jié)果的文本進(jìn)行語序調(diào)整以及量詞補(bǔ)全,生成符合漢語語法的通順語句。首先,基于自然手語和漢語的轉(zhuǎn)換規(guī)則以及N-gram 模型對連續(xù)手語識別結(jié)果進(jìn)行文本調(diào)序;然后,在此基礎(chǔ)上利用Bi-LSTM模型對缺失量詞的文本進(jìn)行量詞定位及補(bǔ)全;最終,將連續(xù)手語識別結(jié)果轉(zhuǎn)化為語義清晰、語序通順的漢語文本。實(shí)驗(yàn)結(jié)果表明,該方法可以有效提升連續(xù)手語識別結(jié)果的通暢度和可懂度。
此外,本文對基于視頻的連續(xù)手語識別的文本結(jié)果中存在動名詞一體、雙重否定的現(xiàn)象未作處理,因此在接下來的工作中,需要進(jìn)一步挖掘文本的上下文信息,解決自然手語翻譯成漢語時(shí)的動名詞一體問題。