張大奎,尹德春,湯世平,毛 煜,樊孝忠
(1.北京理工大學(xué) 計(jì)算機(jī)學(xué)院,北京 100081;2.中國(guó)人民公安大學(xué) 信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院,北京 100038)
眾所周知,漢語文本中詞與詞之間沒有顯式分詞符號(hào),因此分詞是漢語自然語言處理工作的基礎(chǔ)。基于監(jiān)督學(xué)習(xí)的分詞方法是現(xiàn)今被業(yè)界廣泛認(rèn)可的方法,這些方法需要大規(guī)模的標(biāo)注語料作為訓(xùn)練集。當(dāng)前已經(jīng)公開的通用訓(xùn)練語料主要來自新聞?lì)I(lǐng)域,相關(guān)研究[1-4]表明,有監(jiān)督方法在新聞?lì)愓Z料的測(cè)試集上表現(xiàn)優(yōu)異,但是當(dāng)測(cè)試集由新聞?lì)I(lǐng)域變換到微博、網(wǎng)絡(luò)論壇、互聯(lián)網(wǎng)文學(xué)等其他領(lǐng)域時(shí),其精度就會(huì)大幅下降。鑒于上述事實(shí),有理由認(rèn)為,當(dāng)分詞算法的優(yōu)化達(dá)到極限水平時(shí),分詞器的性能更多地取決于分詞訓(xùn)練語料的覆蓋程度和完備性。而分詞訓(xùn)練語料的構(gòu)建一直是一個(gè)需要投入大量人力和時(shí)間的工作。因此,如何更方便快捷地構(gòu)建分詞語料便成為亟待解決的問題。不少研究者在如何拓展分詞訓(xùn)練語料上做了積極嘗試,孫茂松等[5]利用中文的標(biāo)點(diǎn)符號(hào)在命名實(shí)體識(shí)別上取得了較好的成果;劉群等[3,6]使用互聯(lián)網(wǎng)上的一些半結(jié)構(gòu)化的網(wǎng)頁文本(如維基百科)中的自然標(biāo)記提高分詞器在非通用領(lǐng)域上的精度。但是以往的研究中,研究者極少認(rèn)真關(guān)注用戶在輸入漢語文本的過程中留下的分詞信息。
本研究關(guān)注用戶輸入行為,并提出了自然輸入標(biāo)記的概念。自然輸入標(biāo)記指用戶在使用電腦、手機(jī)等設(shè)備輸入漢語文本時(shí)產(chǎn)生的自然標(biāo)注信息,其提供了豐富而珍貴的分詞信息,且使獲得實(shí)時(shí)產(chǎn)生的分詞訓(xùn)練語料成為一種可能,進(jìn)而為克服基于標(biāo)準(zhǔn)通用語料訓(xùn)練的分詞器的缺陷提供了新的解決思路,比如解決在非通用、特定或變化極快領(lǐng)域的精度損失等問題[7]。本文將對(duì)自然輸入標(biāo)記的內(nèi)涵和應(yīng)用方式進(jìn)行了深入詳盡的探討。
在將漢字輸入電腦等設(shè)備時(shí),由于漢字的象形結(jié)構(gòu),用戶必須借助輸入法完成漢字的生成[8]。輸入過程中,會(huì)伴隨產(chǎn)生一些潛在的中文分詞信息,而這些信息一直未得到重視,更沒有被記錄和保存,造成了極大的浪費(fèi)。
典型的漢字、詞輸入包含一系列步驟[8],此處以目前市場(chǎng)占有份額最大的拼音輸入法[9]為例說明這一過程。如果用戶需輸入一個(gè)漢語詞“今天”,首先,會(huì)在鍵盤上輸入拼音序列“jintian”。(拼音在這里其實(shí)是一種將漢字轉(zhuǎn)化為拉丁字母的編碼系統(tǒng),不同的漢語輸入法有不同的編碼系統(tǒng)。)然后,拼音輸入法給出一個(gè)同音異形的漢語字、詞的候選列表,如圖 1所示。
圖1 典型的中文拼音輸入法示意圖
最后,用戶從這個(gè)候選列表中查找到自己需要的目標(biāo)字、詞,并且使用數(shù)字鍵,如1-9(
借助日常生活中垃圾分類處理的過程,可以更好地理解自然輸入標(biāo)記的作用和意義。日常垃圾處理過程中最大的問題是,人們習(xí)慣性地將各類垃圾混合堆放在一起,然后到垃圾處理廠后再費(fèi)時(shí)費(fèi)力地分揀。而合理的解決方法是人們應(yīng)該意識(shí)到垃圾在產(chǎn)生時(shí)都有明顯類別的,如果在投放時(shí)不是一下子都混合在一起,而是對(duì)垃圾做一些簡(jiǎn)單的分類,那么后續(xù)的處理工作將會(huì)大大簡(jiǎn)化。從漢語輸入到分詞的整個(gè)過程也存在類似垃圾處理的問題。盡管用戶在輸入文本的選詞過程中已經(jīng)產(chǎn)生了自然的分詞標(biāo)記,但是長(zhǎng)久以來都沒有被記錄,更沒有被利用,而后還需要花費(fèi)大量的時(shí)間和人力去專門構(gòu)建分詞語料。這如同本來已經(jīng)類別清晰的垃圾,卻又被混合在了一起,最后再想辦法對(duì)這些垃圾進(jìn)行分類和揀選,造成了極大的浪費(fèi)。
為了避免上面的問題,作者提出了結(jié)合自然輸入標(biāo)記的文本處理方案,希望將自然輸入標(biāo)記和文本同時(shí)記錄和存儲(chǔ)。這樣做既便于后續(xù)做進(jìn)一步的文本分析處理,又可以自動(dòng)獲得分詞訓(xùn)練語料。作者希望通過本文拋磚引玉,讓更多人關(guān)注這些我們習(xí)以為常卻又忽略的隱含分詞信息。
劉知遠(yuǎn)等人[10]的文章顯示,輸入法公司雖然已經(jīng)保留了大量類似的用戶輸入數(shù)據(jù),但由于用戶隱私等問題,他們謝絕對(duì)外提供這些數(shù)據(jù)。即使是內(nèi)部研究,也需要經(jīng)過防隱私泄露處理。本文提出的采用自然輸入標(biāo)記的處理方案,所有可獲取的用戶數(shù)據(jù),都是用戶自愿公開發(fā)表的,不存在侵犯用戶隱私數(shù)據(jù)的情況。
本文后續(xù)主要闡明自然輸入標(biāo)記的定義和特性,并論證不同用戶在輸入過程中產(chǎn)生的帶有自然輸入標(biāo)記的文本,是否可以用來高效地構(gòu)建分詞訓(xùn)練語料。首先,給出自然輸入標(biāo)記的形式化定義,并開發(fā)出一個(gè)專用記錄軟件,用于記錄用戶在輸入過程中產(chǎn)生的帶有自然輸入標(biāo)記的文本。然后,根據(jù)統(tǒng)計(jì)學(xué)中的抽樣原理收集了384個(gè)用戶輸入的帶有選擇鍵的文本,按照文本和標(biāo)準(zhǔn)分詞結(jié)果是否接近,把所有文本分為兩類。接下來,使用支持向量機(jī)(support vector machine,SVM)模型來完成自動(dòng)分類工作。用戶產(chǎn)生的接近標(biāo)準(zhǔn)分詞結(jié)果的文本就形成了可接納的自然輸入標(biāo)記文本集合。最后,引入投票機(jī)制,在所有可接納文本集合中進(jìn)一步挑選出更接近標(biāo)準(zhǔn)分詞結(jié)果的高質(zhì)量自然輸入標(biāo)記文本合集。實(shí)驗(yàn)結(jié)果顯示,支持向量機(jī)與投票機(jī)制相互配合,可以有效地選擇出高質(zhì)量自然輸入標(biāo)記文本。高質(zhì)量文本可以直接或經(jīng)過簡(jiǎn)單人工處理后當(dāng)作分詞訓(xùn)練語料。另外,實(shí)驗(yàn)中還有一些證據(jù)顯示,用戶產(chǎn)生的自然輸入標(biāo)記文本對(duì)處理未登錄詞十分有用,如命名實(shí)體識(shí)別、新詞發(fā)現(xiàn)。
在討論分詞時(shí),分詞結(jié)果采用何種標(biāo)準(zhǔn)是需要首先明確的問題。目前,分詞的標(biāo)準(zhǔn)并不統(tǒng)一,而且不同的應(yīng)用場(chǎng)景也會(huì)采用不同的分詞標(biāo)準(zhǔn)。以業(yè)界公認(rèn)的Sighan Bakeoff為例,其中的四個(gè)標(biāo)準(zhǔn)由四家機(jī)構(gòu)制定,分別是:北京大學(xué)(Peking University,PKU)、香港城市大學(xué)(City University of Hong Kong,CU)、臺(tái)灣“中央研究院”(Academia Sinica,AS)、微軟研究院(Microsoft Research,MSR)。這四種分詞標(biāo)準(zhǔn)雖然大體相同,但細(xì)節(jié)上有一些差異。北京大學(xué)(PKU)和微軟研究院(MSR)的簡(jiǎn)體中文分詞標(biāo)準(zhǔn)中,MSR的標(biāo)準(zhǔn)更加接近人們的日常輸入習(xí)慣,并且提供的語料數(shù)量也最多,因此本文采用MSR的分詞標(biāo)準(zhǔn)。全文提及的“標(biāo)準(zhǔn)分詞結(jié)果”均指符合MSR分詞標(biāo)準(zhǔn)的分詞結(jié)果。根據(jù)已有的研究工作[5,7],本文使用Sighan Bakeoff-2中的MSR語料訓(xùn)練了一個(gè)條件隨機(jī)場(chǎng)(conditional random fields,CRF)模型作為基準(zhǔn)通用分詞器(簡(jiǎn)稱CRF+MSR)。
引言中,本文介紹了用戶輸入漢語的步驟,其中最后一步,用戶使用的選擇鍵(主要是數(shù)字鍵
若給定中文句子S=c1c2…cN(ci代表一個(gè)漢字;N代表句子S的長(zhǎng)度,即S包含了多少個(gè)漢字),則π(S)=|c1…ci1-1|ci1…ci2-1|…|cn1…cN|為用戶在輸入句子S時(shí)產(chǎn)生的帶有自然輸入標(biāo)記的序列。兩個(gè)臨近“|”之間的部分被稱為一個(gè)片段(segment),π(S)=|segment1|segment2|…|segmentM|(M≤N;M代表句子S中被標(biāo)記出的段數(shù))被稱為自然輸入標(biāo)記文本(NTAs text)或自然輸入標(biāo)記語料(NTAs corpus)。
由于目前沒有類似的公開語料可供使用,所以本研究需要自行收集和構(gòu)建不同用戶的自然輸入標(biāo)記文本。參與此項(xiàng)輸入實(shí)驗(yàn)的人員均是在網(wǎng)上報(bào)名的志愿者。為了對(duì)比方便,這些志愿者被指定都輸入同一實(shí)驗(yàn)文本,同時(shí)使用我們開發(fā)的專用軟件記錄下輸入過程中產(chǎn)生的自然輸入標(biāo)記文本。圖2是本文使用的記錄軟件,它可以在不影響用戶輸入體驗(yàn)的情況下記錄用戶在輸入過程中留下的自然輸入標(biāo)記。
圖2 自然輸入標(biāo)記記錄軟件
關(guān)于實(shí)驗(yàn),有兩點(diǎn)需要說明。
第一,為了既減輕志愿者的輸入負(fù)擔(dān),同時(shí)又保持實(shí)驗(yàn)的客觀性和可對(duì)比性,本文設(shè)定用戶輸入的實(shí)驗(yàn)文本只有365個(gè)漢字,但其中包含了歧義句、命名實(shí)體、輸入時(shí)易混淆的字詞等語言現(xiàn)象。所以即使目前性能非常好的通用分詞器在處理本文的實(shí)驗(yàn)文本時(shí)精度也會(huì)大大降低。圖3給出了實(shí)驗(yàn)文本的三個(gè)例句。
圖3 實(shí)驗(yàn)文本中的例句
第二,樣本量的選擇是根據(jù)統(tǒng)計(jì)學(xué)中的抽樣原理得出的。抽樣公式為:
(1)
本實(shí)驗(yàn)抽樣時(shí)需要置信水平為95%且誤差小于5%。其中,置信水平為95%時(shí)Zα/2=1.96;誤差Δ=5%;當(dāng)P取值0.5時(shí)P×(1-P)最大,故由抽樣公式得出實(shí)驗(yàn)樣本數(shù)應(yīng)不小于384。因此,在實(shí)驗(yàn)中共收集了來自384位志愿者的自然輸入標(biāo)記文本。
通過收集來自不同用戶的自然輸入標(biāo)記文本,可以對(duì)用戶的輸入習(xí)慣有一個(gè)整體了解。本文首先關(guān)注自然輸入標(biāo)記文本的基本單位——片段。從所有收集的文本中,一共提取到了66 232個(gè)片段,其中有883個(gè)片段是不重復(fù)的。如果用Length(seg)代表一個(gè)片段的長(zhǎng)度(即一個(gè)片段中包含了多少個(gè)漢字),那么可以得到不同Length(seg)出現(xiàn)的頻數(shù)分布。為了對(duì)比,將手工標(biāo)注的標(biāo)準(zhǔn)分詞結(jié)果和由CRF+MSR產(chǎn)生的分詞結(jié)果都做相同的統(tǒng)計(jì)。圖4給出了三個(gè)統(tǒng)計(jì)結(jié)果中不同長(zhǎng)度的片段的相對(duì)出現(xiàn)頻率。結(jié)果顯示,384名用戶的自然輸入標(biāo)記文本中,Length(seg)的數(shù)值分布范圍比較大,從1到18都有取值。但是出現(xiàn)頻率最多的Length(seg)都集中在1~4,這與標(biāo)準(zhǔn)分詞結(jié)果和CRF+MSR分詞器產(chǎn)生的分詞結(jié)果的總體趨勢(shì)是吻合的。
圖4 實(shí)驗(yàn)文本的三種不同分詞結(jié)果的片段長(zhǎng)度相對(duì)頻數(shù)分布
實(shí)驗(yàn)結(jié)果說明,大多數(shù)用戶在輸入漢語時(shí),是不會(huì)一次輸入很長(zhǎng)一個(gè)片段的。從理論上來分析,輸入短片段更符合行為經(jīng)濟(jì)學(xué)和認(rèn)知語言學(xué)原理。
從行為經(jīng)濟(jì)學(xué)角度來看,如果一次性輸入的片段越長(zhǎng),輸入者在輸入過程中出錯(cuò)的概率就越大,而且修改錯(cuò)誤的操作也可能越煩瑣。這增加了用戶輸入的時(shí)間成本,同時(shí)也打斷了用戶的思維連貫性。因此,大多數(shù)用戶會(huì)采取短片段輸入的方式。更有意思的發(fā)現(xiàn)是,習(xí)慣長(zhǎng)片段輸入的用戶,幾乎都是不會(huì)盲打或?qū)︽I盤布局不熟悉的人。因?yàn)樗麄冚斎氲臅r(shí)候,都是先全神貫注地用眼睛盯著鍵盤,把需要的拼音一次性都打完,然后再將眼睛移向屏幕去確認(rèn)自己需要的那一長(zhǎng)串漢字。相反,越是熟悉鍵盤輸入、會(huì)盲打的人,眼睛越不會(huì)輕易離開屏幕,且他們的輸入皆以短片段為主,這樣便于及時(shí)地確認(rèn)輸入內(nèi)容和修改輸入錯(cuò)誤。
從認(rèn)知語言學(xué)原理來看,人們輸入過程中產(chǎn)生的片段很少包含那些沒有語言邏輯的漢字序列。以實(shí)驗(yàn)文本中的句子“主人公嚴(yán)守一把手機(jī)給扔了?!睘槔?,當(dāng)用戶輸入“給扔了”這三個(gè)字時(shí),他們產(chǎn)生的序列分別有“|給|扔|了|”、“|給|扔了|”或“|給扔了|”,沒有一個(gè)用戶的輸入結(jié)果是“|給扔|了|”。這是因?yàn)椤敖o扔”在漢語中是一個(gè)沒有語言邏輯意義的組合。由此可見,語言片段的組成反映了人們語言邏輯和認(rèn)知。
以上通過對(duì)收集文本的宏觀分析,可以確認(rèn)大部分用戶在輸入過程中產(chǎn)生的自然輸入標(biāo)記提供了豐富的分詞信息,由此得到的分詞結(jié)果中,有相當(dāng)一部分是很接近標(biāo)準(zhǔn)分詞結(jié)果的,甚至有些就是正確分詞結(jié)果。因此,下面重點(diǎn)研究如何篩選出質(zhì)量最好的自然輸入標(biāo)記文本。
本節(jié)從句子層面研究自然輸入標(biāo)記文本。通過觀察文本后獲得的最直觀印象是,不同用戶擁有不同的輸入模式。以下用實(shí)驗(yàn)文本中的例句S1=“不過評(píng)價(jià)在三星級(jí)以上的這幾款電腦”來說明各種不同的情況。如圖5所示,πg(shù)old(S1)是S1的標(biāo)準(zhǔn)分詞結(jié)果,其他分別為不同用戶的具有代表性的輸入序列。
圖5 用戶輸入的自然輸入標(biāo)記文本的不同模式
我們從中發(fā)現(xiàn)了三種用戶輸入模式:第一種是離散模式(discrete pattern),即在標(biāo)準(zhǔn)分詞結(jié)果中本屬于一個(gè)片段的漢字序列被分成了幾個(gè)片段,如π5(S1);第二種是黏合模式(adhesive pattern),指那些在標(biāo)準(zhǔn)分詞中本應(yīng)為不同片段的漢字序列黏合在一起形成了一個(gè)片段,如π3(S1)和π4(S1);第三種是可接納模式(acceptable pattern),是指用戶輸入產(chǎn)生的切分結(jié)果和標(biāo)準(zhǔn)分詞的切分結(jié)果十分接近或完全相同,如π1(S1)和π2(S1)。本文把符合可接納模式的文本稱為可接納自然輸入標(biāo)記文本,符合其他兩種模式的文本稱為不可接納自然輸入標(biāo)記文本。并且,在可接納自然輸入標(biāo)記文本中,還存在一些更接近標(biāo)準(zhǔn)分詞的高質(zhì)量自然輸入標(biāo)記文本。為了最終選出實(shí)驗(yàn)中的高質(zhì)量自然輸入標(biāo)記文本,下文將介紹具體方法:(1)使用機(jī)器學(xué)習(xí)中的分類算法找到一個(gè)可接納自然輸入標(biāo)記文本的集合; (2)使用投票機(jī)制在第一步已經(jīng)確立的集合中找出高質(zhì)量自然輸入標(biāo)記文本。
選出可接納自然輸入標(biāo)記文本是一個(gè)典型的二分類問題。訓(xùn)練分類器時(shí)使用了五個(gè)特征。
其中,Len表示句子的長(zhǎng)度;SegNum(SN)表示句子中片段的個(gè)數(shù)。這兩個(gè)特征用于判斷用戶輸入的句子中字?jǐn)?shù)和片段數(shù)是不是在一個(gè)合理的水平。SingleSegNum(SSN)表示句子中長(zhǎng)度為1的片段個(gè)數(shù);MaxConSingleSegNum(MCSSN)表示句子中最多有幾個(gè)長(zhǎng)度為1的片段連續(xù)出現(xiàn)在一起;MaxSegLen(MSL)表示句子中最長(zhǎng)片段的長(zhǎng)度。這三個(gè)特征用于判斷用戶輸入的句子中是否有大量的離散和粘合現(xiàn)象。
使用3.2節(jié)的分類方法,識(shí)別出接近標(biāo)準(zhǔn)分詞結(jié)果的可接納自然輸入標(biāo)記文本之后,還需要引入投票機(jī)制,以便在可接納自然輸入標(biāo)記文本中挑選出更接近標(biāo)準(zhǔn)分詞結(jié)果的高質(zhì)量文本。給定一個(gè)句子Si,不同的用戶輸入會(huì)產(chǎn)生不同的分割形式π1(Si),π2(Si),… ,πk(Si)(k是用戶產(chǎn)生的分割形式的總數(shù))。如果πj(Si)出現(xiàn)在不同用戶的文本中,那么這些文本(或說輸入用戶)其實(shí)是向πj(Si)投了一個(gè)支持票,所以,不同的用戶文本是在向各個(gè)句子的不同分割形式投票。這樣每個(gè)實(shí)驗(yàn)文本中出現(xiàn)的句子就都得到了一個(gè)分?jǐn)?shù),如式(2)所示。
SCOREπj(Si)=log2count(πj(Si))
(2)
其中,count(πj(Si))是統(tǒng)計(jì)多少用戶在輸入句子Si時(shí)形成了πj(Si)的分割形式。每個(gè)實(shí)驗(yàn)文本是由不同的句子組成的,其得分如式(3) 所示。
(3)
其中,numπj(Si)∈text是這個(gè)文本中包含的字句總數(shù)。
通過計(jì)算每個(gè)文本的得分,很容易在可接納自然輸入標(biāo)記文本集合中挑選出高質(zhì)量自然輸入標(biāo)記文本。以下實(shí)驗(yàn)將驗(yàn)證高質(zhì)量自然輸入標(biāo)記文本與標(biāo)準(zhǔn)分詞結(jié)果的吻合程度,以及高質(zhì)量文本作為分詞訓(xùn)練語料的效果。
4.1.1分類器
為了尋找384個(gè)文本中的可接納自然輸入標(biāo)記文本,本文訓(xùn)練了一個(gè)支持向量機(jī)(SVM)來完成文本的分類工作。首先,我們從全部用戶中挑選32個(gè)有代表性的典型用戶。這些典型用戶有著不同的輸入習(xí)慣,他們輸入的文本共包含1 089個(gè)句子。然后,我們對(duì)這些句子做了手工標(biāo)注,作為訓(xùn)練集。以圖5中S1的各種情況為例,手工標(biāo)注的訓(xùn)練數(shù)據(jù)結(jié)果如表1所示。其中標(biāo)簽(label)1和0分別代表可接納自然輸入標(biāo)記句子和不可接納自然輸入標(biāo)記句子。
表1 用于訓(xùn)練分類器的手工標(biāo)注訓(xùn)練數(shù)據(jù)樣例
本實(shí)驗(yàn)采用libSVM工具包[11],具體參數(shù)設(shè)置是:徑向基函數(shù)(radial basis function)為核函數(shù)(kernel function);gamma值為1/特征個(gè)數(shù);懲罰因子(cost value)設(shè)為1。
為了檢驗(yàn)?zāi)P偷挠行?,采?0次交叉驗(yàn)證將1 089個(gè)句子隨機(jī)平分成了10份,每次選出其中一份作為測(cè)試集,其他九份為訓(xùn)練集。如此循環(huán)進(jìn)行,讓每一份都做一次測(cè)試集。最終得到的分類精度如表2所示。
表2 分類器的10交叉檢驗(yàn)結(jié)果
續(xù)表
從表2中可以看出,選擇的五個(gè)特征在分類實(shí)驗(yàn)中的區(qū)分性是很顯著的。在本實(shí)驗(yàn)中,我們?cè)O(shè)定如果一個(gè)文本中85%的句子是可接納類型的,那么這個(gè)文本就被認(rèn)為是可接納自然輸入標(biāo)記文本。85%是一個(gè)判斷閾值,它是多次實(shí)驗(yàn)后得到的一個(gè)相對(duì)合理的經(jīng)驗(yàn)值,可以根據(jù)具體需求調(diào)整。利用該分類模型和判斷閾值,我們從384個(gè)文本中找出253個(gè)可接納自然輸入標(biāo)記文本。
4.1.2基于投票機(jī)制的分詞結(jié)果
根據(jù)3.3節(jié)中的投票機(jī)制,計(jì)算出253個(gè)可接納自然輸入標(biāo)記文本各自的分?jǐn)?shù),并按分?jǐn)?shù)的高低排序。表3給出了排名在前三位的高質(zhì)量文本的分詞情況,并與基準(zhǔn)分詞器CRF+MSR在實(shí)驗(yàn)文本上的分詞結(jié)果進(jìn)行了對(duì)比。因?yàn)镃RF+MSR是一個(gè)通用分詞器,而實(shí)驗(yàn)文本包含了歧義句、命名實(shí)體、輸入時(shí)易混淆的字詞等語言現(xiàn)象,所以CRF+MSR分詞器在本實(shí)驗(yàn)文本上各個(gè)指標(biāo)值都相對(duì)較低。
表3 通用分詞器和投票后排名前三的實(shí)驗(yàn)文本的分詞結(jié)果對(duì)比
表3說明,高質(zhì)量自然輸入標(biāo)記文本比較接近標(biāo)準(zhǔn)分詞結(jié)果,特別是對(duì)于實(shí)驗(yàn)文本中包含的命名實(shí)體、新詞等未登錄詞,這三位輸入者都毫無例外地將它們分別放在了正確的片段中,因此他們的輸入結(jié)果對(duì)未登錄詞的召回率rOOV都是100%。例如,實(shí)驗(yàn)文本的句子“主人公嚴(yán)守一把手機(jī)給扔了?!敝?,“嚴(yán)守一”是一個(gè)命名實(shí)體,且“嚴(yán)守”和“一把(手)”、“(一)把手”和“手機(jī)”都構(gòu)成交疊歧義。CRF+MSR對(duì)這個(gè)例句的分詞結(jié)果是“主人公|嚴(yán)守|一把手|機(jī)|給|扔|了|?!倍脩糨斎氲慕Y(jié)果都是“|嚴(yán)守一|”片段形式。這說明用戶輸入的高質(zhì)量自然輸入標(biāo)記文本在標(biāo)識(shí)未登錄詞方面具有優(yōu)異的表現(xiàn)。
此外,我們將這些高質(zhì)量文本和標(biāo)準(zhǔn)分詞結(jié)果做了詳細(xì)對(duì)比,找到了高質(zhì)量文本中出錯(cuò)片段的共性。這些錯(cuò)誤主要是由于一些簡(jiǎn)單詞之間存在粘合現(xiàn)象而導(dǎo)致。例如標(biāo)準(zhǔn)分詞結(jié)果“|這|幾|款|”在高質(zhì)量文本中都被寫成了“|這幾款|”。這樣的結(jié)果在分詞競(jìng)賽評(píng)測(cè)中當(dāng)然是明顯的錯(cuò)誤,但是在某些特定應(yīng)用場(chǎng)景下,卻又會(huì)是比較合適的結(jié)果。比如在統(tǒng)計(jì)機(jī)器翻譯中,從譯文的連貫性上看,“|這幾款|”就比“|這|幾|款|”的處理效果好一些。因此,這些由用戶產(chǎn)生的高質(zhì)量文本為我們提出了值得思考的語言學(xué)問題,所謂的“詞”到底該怎么界定?由用戶使用習(xí)慣出發(fā)對(duì)詞進(jìn)行界定是否合理?
相關(guān)研究表明,用戶的行為模式在很長(zhǎng)一段時(shí)間內(nèi)是保持一致的[12]。因此,那些產(chǎn)生高質(zhì)量自然輸入標(biāo)記文本的用戶也將源源不斷地提供更多類似的高質(zhì)量自然輸入標(biāo)記文本,且這些文本可方便地用于構(gòu)建分詞訓(xùn)練語料。
為了驗(yàn)證高質(zhì)量自然輸入標(biāo)記文本在構(gòu)建分詞訓(xùn)練語料上的作用,本節(jié)的實(shí)驗(yàn)將邀請(qǐng)產(chǎn)生表3中Text#top1、Text#top2、Text#top3的用戶參與,他們分別被編號(hào)為:用戶1、用戶2、用戶3。我們請(qǐng)以上三位用戶輸入從微博(weibo.com)上隨機(jī)抓取的40KB語料,以此模擬這些用戶平時(shí)輸入微博內(nèi)容的場(chǎng)景。這些語料被平均分成了A、B、C、T四份。請(qǐng)用戶1重新輸入一遍A語料以產(chǎn)生帶自然輸入標(biāo)記的A語料。同樣,用戶2、用戶3分別產(chǎn)生了帶自然輸入標(biāo)記的B、C語料。本文將用戶輸入產(chǎn)生的帶自然輸入標(biāo)記的A、B、C語料作為一個(gè)訓(xùn)練數(shù)據(jù)集,得到了一個(gè)CRF分詞器,簡(jiǎn)稱CRF+NTAs。然后又將由用戶輸入產(chǎn)生的帶自然輸入標(biāo)記的A、B、C語料和來自Bakeoff-2的MSR的訓(xùn)練語料共同作為一個(gè)訓(xùn)練數(shù)據(jù)集,得到了第二個(gè)CRF分詞器,簡(jiǎn)稱CRF+MSR+NTAs。最后從T語料中隨機(jī)選擇了1 000個(gè)句子進(jìn)行人工標(biāo)注,將其作為測(cè)試語料。表4給出了不同分詞器在測(cè)試語料上的分詞結(jié)果。
從表4的結(jié)果可以看出,直接使用由用戶輸入產(chǎn)生的高質(zhì)量自然輸入標(biāo)記文本訓(xùn)練得到的分詞器(CRF+NTAs),在分詞效果上要略好于通用分詞器(CRF+MSR),但是卻遜色于混合了高質(zhì)量自然輸入標(biāo)記文本和MSR分詞訓(xùn)練語料得到的分詞器(CRF+MSR+NTAs)。CRF+MSR在實(shí)驗(yàn)中的分詞精度低,主要是由于MSR訓(xùn)練語料來自時(shí)間較早的新聞?lì)I(lǐng)域,對(duì)基礎(chǔ)詞匯和標(biāo)準(zhǔn)的語法現(xiàn)象的涵蓋雖然比較好,但是對(duì)最新的微博領(lǐng)域的新詞和非正式的語法現(xiàn)象的涵蓋卻嚴(yán)重不足。因此,在MSR訓(xùn)練語料的基礎(chǔ)上加入了最新的高質(zhì)量自然輸入標(biāo)記文本,可以明顯提高分詞器在微博領(lǐng)域的分詞精度。
表4 不同分詞器在測(cè)試語料上的分詞效果
本節(jié)實(shí)驗(yàn)選擇了有別于傳統(tǒng)新聞?wù)Z料的微博語料,通過具體數(shù)據(jù)驗(yàn)證了以下事實(shí):有一批優(yōu)秀用戶的輸入習(xí)慣特別好,并且是一以貫之的,無論這些用戶在輸入什么,他們?nèi)粘.a(chǎn)生的可公開的自然輸入標(biāo)記文本幾乎都可以直接做為分詞訓(xùn)練語料。這為分詞訓(xùn)練語料的自動(dòng)收集和構(gòu)建提供了一個(gè)有價(jià)值的新方法。
關(guān)于自然輸入標(biāo)記,作者分別從實(shí)踐和理論上做進(jìn)一步探討。
在實(shí)驗(yàn)中,作者針對(duì)收集到的高質(zhì)量輸入標(biāo)記文本,觀察、研究了它們和標(biāo)準(zhǔn)分詞結(jié)果的差別,發(fā)現(xiàn)了高質(zhì)量輸入標(biāo)記文本最主要的兩個(gè)特征:第一,代詞經(jīng)常和其前后的一個(gè)字、詞黏合形成一個(gè)片段,如“大家好”“我叫”“這就是”“讓自己”常被作為一個(gè)片段;第二,助詞經(jīng)常和其前后的一個(gè)字、詞粘合形成一個(gè)片段,如“扔了” “寫了”“大的”“小的”等。正如前文提到的,這些是所謂的“錯(cuò)誤”,只是用戶在以他們認(rèn)可的邏輯塊來進(jìn)行輸入和確認(rèn),且這些特征都很容易處理。經(jīng)過簡(jiǎn)單處理后的高質(zhì)量輸入標(biāo)記文本和標(biāo)準(zhǔn)分詞結(jié)果的差異程度會(huì)減少很多,可以直接作為分詞器的訓(xùn)練語料使用。
隨著機(jī)器學(xué)習(xí)技術(shù)越來越成熟,訓(xùn)練數(shù)據(jù)的豐富性和完備性直接決定了機(jī)器學(xué)習(xí)的效果。在中文信息處理領(lǐng)域,科技人員和業(yè)內(nèi)工作者應(yīng)該盡可能多地發(fā)掘并引入人類集體智慧產(chǎn)生的信息,使機(jī)器學(xué)習(xí)方法的功效最大化,以去除語言處理過程中的不確定性,達(dá)到分析、理解語言的目的。本文討論的自然輸入標(biāo)記文本,正是這樣一種人類集體智慧的具體體現(xiàn),對(duì)解決漢語分詞問題是一個(gè)新穎而有益的探索與嘗試。
現(xiàn)行中文輸入過程繼承于手書漢字的形式,只是記錄漢字,并不記錄任何其他信息,無形中浪費(fèi)很多在電子設(shè)備上輸入漢語時(shí)所產(chǎn)生的多有用的信息。自然輸入標(biāo)記就是這樣一種在電子設(shè)備上輸入漢語時(shí)所產(chǎn)生的有用信息,我們完全可以在不干擾用戶閱讀和輸入的情況下,隱式地將用戶輸入過程中產(chǎn)生的自然輸入標(biāo)記記錄下來。
本文主要介紹并研究了用戶在輸入過程中產(chǎn)生的自然輸入標(biāo)記文本,同時(shí)驗(yàn)證了高質(zhì)量自然輸入標(biāo)記文本在構(gòu)建分詞訓(xùn)練語料方面的有效性。根據(jù)最新的調(diào)查顯示,2016年年底中國(guó)的互聯(lián)網(wǎng)用戶數(shù)已經(jīng)達(dá)到7.31億,即使只有較小比例的用戶提供高質(zhì)量自然輸入標(biāo)記文本,他們也將在日常工作、學(xué)習(xí)、生活中源源不斷地產(chǎn)生實(shí)時(shí)的分詞訓(xùn)練語料。將這些語料用來增量訓(xùn)練分詞器,將使分詞器具有實(shí)時(shí)進(jìn)化的能力。
如果越來越多自然標(biāo)記文本被記錄下來,相信會(huì)對(duì)分詞等其他中文信息處理問題帶來全新的解決思路。本文對(duì)自然輸入標(biāo)記進(jìn)行了驗(yàn)證性的探索,后續(xù)還會(huì)做更多的研究與應(yīng)用。
[1]Xue Nianwen,Shen Libin.Chinese word segmentation as LMR tagging[C]// Proceedings of Sighan Workshop on Chinese Language Processing in ACL 2003.Sapporo,Japan,2003:176-179.
[2]Zhang Yue,Clark Stephen.Chinese segmentation with a word-based perceptron algorithm.[C]// Proceedings of the ACL 2007.Prague,Czech Republic,2007:840-847.
[3]Jiang Wenbin,Huang Liang,Liu Qun.Automatic adaptation of annotation standards:Chinese word Segmentation and POS tagging:A case study.[C]// Proceedings of the ACL-AFNLP 2009.Suntec,Singapore,2009:522-530.
[4]Zhao Hai,Huang Changning,Li Mu,et al.A unified character-based tagging framework for Chinese word segmentation[J].Acm Transactions on Asian Language Information Processing,2010,9(2):1-32.
[5]Li Zhongguo,Sun Maosong.Punctuation as implicit annotations for Chinese word segmentation[J].Computational Linguistics,2009,35(4):505-512.
[6]Sun Weiwei,Xu Jia.Enhancing Chinese word segmentation using unlabeled data[C]// Proceedings of the EMNLP 2011.Edinburgh,UK,2011:970-979.
[7]Zhang Dakui,Mao Yu,Liu Yang,et al.The discovery of natural typing annotations:User-produced potential Chinese word delimiters[C]// Proceedings of the ACL-IJCNLP 2015.Beijing,China,2015:662-667.
[8]陳原.漢語語言文字信息處理[M].上海:上海教育出版社,1997.
[9]iResearch 2009.2009 China Desktop Software Development Research Report[OL].[2010.2.20].http://report.iresearch.cn/1290.html.
[10]Zheng Yabin,Xie Lixing,Liu Zhiyuan,et al.Why press backspace? understanding user input behaviors in Chinese Pinyin input method[C]// Proceedings of the ACL 2011.Portland,Oregon,USA,2011:485-490.
[11]Chang Chih-Chung,Lin Chih-Jen.LIBSVM:A library for support vector machines[J].Acm Transactions on Intelligent Systems & Technology,2011,2(3):389-396.
[12]Stephane Lucas.User behavior patterns:Gathering,analysis,simulation and prediction[C]// Proceedings of the HCD 2009.San Diego,CA,USA,2009:1650-1656.
張大奎(1981—),博士研究生,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)。E-mail:dakuiz@163.com
尹德春(1979—),博士,講師,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、情報(bào)分析、網(wǎng)絡(luò)安全。E-mail:yindechun163@163.com
湯世平(1975—),通信作者,博士,講師,主要研究領(lǐng)域?yàn)樽匀徽Z言處理、數(shù)據(jù)挖掘。E-mail:tangshiping@gmail.com