郭麗娟,彭 雪,李正華,張 民
(蘇州大學 計算機科學與技術學院,江蘇 蘇州 215006)
樹庫作為標注了詞類、句法和語義等各種語言信息的資源,一方面能為漢語句法學研究提供真實、準確的語言知識;另一方面可以用于訓練和測試句法分析器[1]。目前學術界成規(guī)模的樹庫主要包括短語結(jié)構(gòu)樹庫和依存樹庫兩種類型。和短語結(jié)構(gòu)句法相比較,依存句法具有以下優(yōu)勢: ①更適合描述漢語中詞間關系錯綜復雜的句法結(jié)構(gòu),并且通過依存關系標簽可以直接表達詞語之間的句法語義關系; ②形式簡單,便于標注; ③句法分析結(jié)果的存儲空間較小[2]。
現(xiàn)有漢語句法樹庫的文本主要來源于《人民日報》、語文課本、政府白皮書等規(guī)范文本。然而在日益發(fā)展的互聯(lián)網(wǎng)中產(chǎn)生了大量的用戶生成數(shù)據(jù),例如,產(chǎn)品評論、聊天記錄、問題答案等網(wǎng)絡用語,極大地豐富了漢語文本。使用在現(xiàn)有的傳統(tǒng)樹庫上訓練得到的句法分析器處理網(wǎng)絡文本時,其分析準確率急劇下降,說明對于數(shù)據(jù)驅(qū)動的分析模型而言,人工標注數(shù)據(jù)的規(guī)模、質(zhì)量很大程度上影響著分析結(jié)果的準確率。這類分析模型表現(xiàn)出明顯的領域相關性,在移植到新領域時,性能會急劇下降[3]。
為了解決這類問題,一方面,學術界有很多學者通過研究樹庫轉(zhuǎn)換[4-5]、樹庫融合[6-7]等方法來提高句法分析性能,并改善領域移植效果,然而,受到樹庫類型和規(guī)模的限制,漢語方面還未有比較深入的研究[8];另一方面,便是構(gòu)建大規(guī)模樹庫以解決此問題。目前在英文網(wǎng)絡文本上的樹庫構(gòu)建工作已經(jīng)逐步展開。2012年谷歌組織面向郵件、博客、問題答案、新聞組、評論五個來源的英文網(wǎng)絡文本,標注了小規(guī)模評測數(shù)據(jù),命名為Google English Web Treebank[3]。漢語方面,邱立坤等[8]構(gòu)建了包括新聞、醫(yī)藥、口語、專利、微博五個領域的漢語依存樹庫。但與英文相比,面向漢語網(wǎng)絡文本的依存句法樹庫構(gòu)建進展仍相對緩慢。
基于以上的討論,我們?yōu)榱颂岣邼h語網(wǎng)絡文本的依存句法分析性能,亟需對不同類型的網(wǎng)絡文本分別標注一定規(guī)模的語料,為后續(xù)的研究工作提供支持?;趯h語依存樹庫構(gòu)建技術比較深入的研究,我們研制了一個新的數(shù)據(jù)標注規(guī)范作為指導,在基于瀏覽器的在線標注系統(tǒng)中,對于多領域多來源的文本進行程序化的標注,構(gòu)建了一個面向多領域多來源文本的漢語依存句法樹庫。
表1羅列了目前公開的較大規(guī)模的漢語句法樹庫。Sinica漢語樹庫由中國臺灣中央研究院構(gòu)建,從現(xiàn)代漢語平衡語料庫中抽取句子進行開發(fā)并標注[9]。賓大漢語樹庫(CTB)最初由美國賓夕法尼亞大學發(fā)起,目前由布蘭迪斯大學薛念文教授等維護和更新,標注了新聞、評論、廣播、訪談等語料[10]。北大漢語樹庫(PCT)由北大中文系逐步建設[11],標注了語文課本、政府白皮書、新聞等語料。清華漢語樹庫(TCT)由清華大學周強教授等建設[12],標注了文學、學術、新聞等語料。哈爾濱工業(yè)大學漢語依存樹庫(HIT-CDT)由哈工大社會計算與信息檢索研究中心建設[13],標注了《人民日報》語料。北大漢語多視圖依存樹庫(PKU-CDT)由北大計算語言學研究所構(gòu)建,該樹庫是以依存語法為核心的多視圖漢語樹庫標注體系,標注了新聞、醫(yī)藥、專利等語料[8]。
表1 目前公開的較大規(guī)模的漢語句法樹庫
我們的目標是面向多領域多來源文本,不斷積累,構(gòu)建大規(guī)模的依存句法樹庫。為達到這個目標,在制定依存關系標簽時,我們充分借鑒HIT-CDT、PKU-CDT及通用依存樹庫(universal dependencies,UD)等樹庫構(gòu)建的結(jié)果;針對規(guī)范的新聞文本,以及網(wǎng)絡文本中的各種語言現(xiàn)象,例如,頻繁出現(xiàn)的諧音字、插入語、重復、大量表情符、標點符號缺失、舊詞新意等現(xiàn)象,結(jié)合語言學理論,在標注實踐中總結(jié)規(guī)律,不斷擴展,最終制定了一個面向多領域多來源文本的漢語依存句法數(shù)據(jù)標注規(guī)范(目前規(guī)范已有60多頁),作為整個工作的基礎。規(guī)范的標簽集合如表2所示。
我們了解到,標注規(guī)范的制定一定程度上緩解了標注一致性低的問題,但依存關系標簽的多樣性和句法的模糊性,仍會導致在樹庫構(gòu)建過程中不同標注者的一致性較差,給樹庫構(gòu)建帶來困難。
構(gòu)建局部標注樹庫對此提供了一個新的解決思路。局部標注意味著標注者只需要標注句子中部分詞語,增強了標注者的注意力,使得標注者可以更加將精力集中在這些詞語中。通過這種方式,不同標注者之間更容易得到一致的標注結(jié)果,為了能最大程度地節(jié)省標注時間和成本,又能盡可能得到更多的對分析器有用的信息,對模型訓練更有幫助,我們選取待標注數(shù)據(jù)的原則及流程如下。
1)選取句子中置信度較低的部分詞語進行標注Dozat和Manning[14]提出基于圖的神經(jīng)網(wǎng)絡雙仿射模型,使用神經(jīng)網(wǎng)絡模型計算一個句子x中每條依存弧的分數(shù)。我們利用這個模型來得到句法樹分數(shù),即句法樹分數(shù)只包括了從核心詞到依存詞的依存弧的分數(shù),如式(1)所示。
(1)
其中,d表示依存句法樹,w表示模型參數(shù),Score(h→m)通過神經(jīng)網(wǎng)絡模型計算得到。
該模型使用了CRF-loss,所以每棵句法樹的概率如式(2)所示。
(2)
其中,y(x)表示句子x所有可能的句法樹。
因此,每條依存弧的邊緣概率,就是所有包含這條依存弧的句法樹的概率之和,如式(3)所示。
(3)
Li等[15]研究了句法分析任務中,基于局部標注數(shù)據(jù)的主動學習方法,取得了令人滿意的結(jié)果。借鑒Li等[15]的工作,我們根據(jù)每個詞語的最有可能的一個核心詞h0=argmaxhp(h→i|x)的邊緣概率來衡量每個單詞wi的置信度,如式(4)所示。
│x)
(4)
置信度越低說明依存弧越不確定,所以在之后選取出句子時,選取置信度較低的α%的詞語進行標注,并將這α%的詞語的平均置信度作為句子置信度。
表2 依存關系標簽集合
假設一個實際選取任務:“從一批未標注數(shù)據(jù)池U中抽取1 000句由5~25個詞語構(gòu)成的句子組成待標注數(shù)據(jù)池U3,U3中每個句子選取50%的詞語進行標注”。
我們用上面這個例子來具體闡述選取局部標注詞語的流程:
① 句法分析器分析詞語的置信度。對于未標注數(shù)據(jù)池U中每一個句子,使用句法分析器進行句法分析測試,通過句法分析器分析出每個句子中各個詞語的置信度,這些帶有詞語置信度的句子組成數(shù)據(jù)池U1。
② 選取符合句子長度的句子。從帶有詞語置信度的數(shù)據(jù)池U1中選取數(shù)據(jù)池U2,U2中每個句子由5~25個詞語(標點不算詞語)組成。
③ 選取一定比例的詞語進行標注。
A. 先將數(shù)據(jù)池U2中的每個句子中的詞語置信度從低到高地排序,取前50%(假設句子有6個詞語,選取前3=6×50%個)的詞語的置信度的平均值作為整個句子的置信度,且每個句子選出的50%詞語即為該句的待標注詞語;
B. 將U2中的句子按照句子置信度從低到高排序,選取前1 000個句子構(gòu)成待標注數(shù)據(jù)池U3。
在選取數(shù)據(jù)時要遵循高比例優(yōu)先選取原則。即我們在選取不同要求下的待標注數(shù)據(jù)時,僅考慮選取句子中待標注的詞語比例,比例越高越優(yōu)先選取,而與句子長度無關。因為句法分析器分析的置信度越低,意味著該詞語的標注難度越高,更需要對這類詞語進行高比例的選取并標注。
2)舍棄相似度過高且置信度較高的句子
我們按照1)選出一批新的待標注數(shù)據(jù)后,還要和自身數(shù)據(jù)池中其他句子,以及已標注過的數(shù)據(jù)池中所有句子進行相似度計算,確保將新數(shù)據(jù)中相似度較高且置信度較高的句子舍棄。這樣可以避免重復工作,以減少人力、物力,從而使標注者集中對難度較高的句子進行標注,保證標注的數(shù)據(jù)的高質(zhì)量,以及多樣性。
以計算句子a和句子b的相似度為例,具體的相似度計算方法如下:
A. 為了防止句子分詞出錯帶來的影響,將所有句子處理成以char +bichar為單位,例如:“我 是 中國人 ?!碧幚沓伞拔?我是 是 是中 中 中國 國 國人 人 人。 。 ”;
B. 將句子a中的char和bichar構(gòu)成一個集合AS,句子b中的char和bichar構(gòu)成一個集合BS;
C. 相似度計算如式(5)所示。
(5)
相似度Similarity的閾值按實際數(shù)據(jù)情況來定。
假設句子a和句子b都是待標注句子,且兩者相似度超過設定閾值,則舍棄置信度較高的句子。
假設句子a是待標注句子,句子b是已標注句子,且兩者相似度超過設定閾值,則舍棄句子a。
3)加入地雷
為了更好地提高數(shù)據(jù)質(zhì)量,在按照1)和2)數(shù)據(jù)選取原則選取一批新數(shù)據(jù)后,我們會在新的數(shù)據(jù)批次中將以前標注過的有答案的句子作為地雷混入。我們放入地雷有兩大作用:
① 自動評價標注者的標注情況;
② 進一步檢查之前的標注結(jié)果,以便提高標注質(zhì)量。
通過以上3個步驟順序選取出待標注數(shù)據(jù),放入標注系統(tǒng)中進行人工標注。
從提高數(shù)據(jù)質(zhì)量的目標出發(fā),同時又能最大化減少數(shù)據(jù)標注管理者的工作,實現(xiàn)大規(guī)模數(shù)據(jù)標注。我們在一個基于瀏覽器的在線標注系統(tǒng)中進行程序化標注。圖1給出了標注系統(tǒng)的標注界面。標注前,所有待標注的詞語都用方框標記;當一個方框中的詞語用弧和標簽標注出它的核心詞后,該詞語的方框會消失;標注者必須標注完所有方框中的詞語,才能單擊“提交”按鈕。這種標注界面的設計主要是為了支持局部標注(同樣也適用于完整標注)。
圖1 標注界面
圖2給出了一個句子的整個處理流程:
① 標注系統(tǒng)將一個句子隨機分配給兩個標注者標注。標注完成后,如果兩個標注結(jié)果完全一致,將答案入庫,流程結(jié)束。否則進入步驟②。
② 兩個標注結(jié)果至少有一條弧不一致,就會觸發(fā)審核機制,系統(tǒng)會將這個句子隨機分配給一位專家進行審核,確定唯一答案。進而,標注系統(tǒng)將審核過的答案,反饋給出錯的標注者進行學習。學習過程中,如果沒有出現(xiàn)投訴,那么就將確定的答案入庫,流程結(jié)束;否則進入步驟③。
③ 標注人員對答案不認可,提出投訴(若有投訴,我們鼓勵標注者多提供投訴理由,以便實現(xiàn)異步溝通,提高數(shù)據(jù)質(zhì)量)。系統(tǒng)會將投訴句子隨機分配給一位權威專家,確定唯一答案并入庫,流程結(jié)束。
圖2 標注流程圖
基于以上的樹庫構(gòu)建實踐工作,我們目前標注了各1萬句左右的三個不同領域的依存句法樹庫,具體數(shù)據(jù)來源如表3所示。哈工大CDT分為cdt_v1和cdt_v2兩批數(shù)據(jù)批次;淘寶頭條 分為content_v1和content_v2兩批數(shù)據(jù)批次;PCTB7數(shù)據(jù)為一個數(shù)據(jù)批次pctb7。對于這些數(shù)據(jù),我們按標注時間先后順序(cdt_v1,content_v1,content_v2,cdt_v2,pctb7)分批次放入系統(tǒng)中標注,分批標注的數(shù)據(jù)詳細信息如表4所示。
表3 數(shù)據(jù)來源說明表
表4 數(shù)據(jù)批次信息說明表
標注系統(tǒng)會將一個句子隨機分配給兩個標注者標注,所以,我們從以下幾個方面對每個數(shù)據(jù)批次進行分析: ①所有標注者標注的依存弧平均準確率、一致性及句子一致性; ②單個標注者標注依存弧的準確率; ③樹庫標簽的分布情況。
其中對于準確率和一致性的計算方法如下:
A. 依存弧的準確率:假設一個句子有5條依存弧需要標注,某個標注者提交的答案中有3條依存弧與最終系統(tǒng)給出的答案相同,則準確率=3/5;
B. 依存弧的一致性:假設一個句子有5條依存弧需要標注,隨機分配給a和b兩個人標注,兩人最終提交的答案(不受他人影響)中一致的依存弧為2條,則一致性=2/5;
C. 句子一致性:假設一個數(shù)據(jù)批次有10個句子,其中有1個句子被不同的兩個標注者標注為完全一致,即需要標注的這個句子中所有依存弧都一致,則句子一致性=1/10。
在計算每個數(shù)據(jù)批次依存弧的準確率、一致性及句子一致性時,需要注意的兩個點是:
① 計算依存弧準確率的分母是計算依存弧一致性的分母的兩倍,因為一個句子我們會分配給兩個人標注,在計算準確率時,標注者對同一個句子的不同標注結(jié)果算作兩個不同句子;
② 對于兩個人標注一致的依存弧,我們不考慮其正確性,只考慮兩人對于一條依存弧的標注理解是否一致。
對于每個數(shù)據(jù)批次中所有標注者標注的依存弧,對平均準確率、一致性及句子一致性進行了統(tǒng)計分析,如圖3所示。結(jié)合圖3和表4,可以得到以下信息。
圖3 各批次整體評價指標
(1) 隨著標注工作的推進,標注者的標注水平在逐步上升,整體準確率、一致性及句子一致性都有所提高;整體依存弧準確率都在83%以上,一致性都在70%以上。說明我們?yōu)闃俗⒐ぷ髦贫ǖ囊?guī)范具有一定的科學性、系統(tǒng)性及完整性,可以充分指導標注者標注。
(2) 單從某個數(shù)據(jù)批次來看,有以下兩點。
① content_v2中依存弧準確率和一致性都相對較低。原因是:一方面,和前面兩批數(shù)據(jù)相比,content_v2的句子長度更長,且都是對一定比例置信度較低的詞語進行人工標注,一定程度上導致準確率和一致性相對較低;另一方面,和后面兩批數(shù)據(jù)相比,content_v2的句子長度較短,但其準確率、一致性卻依舊較低,充分說明了網(wǎng)絡文本數(shù)據(jù)的標注難度要遠大于規(guī)范文本數(shù)據(jù)。另外,content_v2中句子一致性比前兩個數(shù)據(jù)批次要高,且多是長度較短的句子,說明標注者更容易理解短句子。
② pctb7中依存弧的準確率、一致性及句子一致性相比cdt_v2都有所下降。原因是:一方面,相較于cdt_v2,pctb7中的句子長度增加,使得標注難度增大;另一方面,pctb7中不僅存在需要標注20%比例詞語的句子,而且存在需要標注50%和30%比例詞語的句子。說明一個句子中需要標注的詞語(且這些都是模型分析出置信度較低的詞語)增多也會增加標注難度。因此,在之后的數(shù)據(jù)選取中,盡量不選過長的句子,且一個句子中按比例選取的需要標注的詞語個數(shù)不得超過某個設定的參數(shù),超出的詞語,我們不作為標注任務,以防標注難度過高,從而影響數(shù)據(jù)質(zhì)量。
另外,我們對整個樹庫中標注不一致的標簽進行了統(tǒng)計,計算方法為:如果對于某條弧兩人標注不一致,則將該弧對應正確的標簽數(shù)加1;假設整個數(shù)據(jù)批次中某個標簽正確答案個數(shù)為A,被標為不一致的個數(shù)為B,則不一致性=B/A,發(fā)現(xiàn)標簽不一致性較高的幾個為:dfsubj(45.14%),cmp(37.97%),sasubj(32.65%),pobj(30.56%),coo(29.67%)。
除了以上對新樹庫數(shù)據(jù)的弧、標簽進行統(tǒng)計分析外,我們也將新標注的樹庫和原樹庫進行了比較。但由于新標注樹庫與原樹庫是根據(jù)不同標注規(guī)范進行的標注,標簽不易于比較,所以選擇對無標簽的弧一致性進行統(tǒng)計分析發(fā)現(xiàn):cdt和原樹庫CDT的無標簽弧一致性為81.58%;pctb7和原樹庫PCTB7的無標簽弧一致性為66.29%。
由于標注者過多,我們選取的分析對象的標準是: ①在5個數(shù)據(jù)批次中至少標注了3個數(shù)據(jù)批次; ②標注者在每批數(shù)據(jù)中標注的依存弧的數(shù)目至少達到1 000條。根據(jù)以上標準,我們選取了11位標注者并對他們標準的依存弧準確率進行了統(tǒng)計,如圖4所示。
圖4 單個標注者準確率
從圖4中我們可以得到以下信息:
① 11位標注者隨著參與標注工作時間的遞增,雖然有所波動,但其依存弧準確率整體呈上升趨勢。
② 通過觀察發(fā)現(xiàn),前5位參與了所有數(shù)據(jù)批次標注的標注者的依存弧準確率普遍較高,然而后面只參加了3批數(shù)據(jù)批次的6位標注者標注的依存弧準確率波動很大并且參差不齊。說明標注工作需要長期堅持,中途一段時間不標注,會對規(guī)范有所遺忘,對標注質(zhì)量有所影響。所以在選取標注者時,應該側(cè)重選擇可以長期穩(wěn)定的標注者,以保證標注質(zhì)量。
③ 通過分析單個標注者在不同數(shù)據(jù)批次中標注的依存弧準確率,檢驗標注者是否能以認真的態(tài)度去勝任標注工作。比如標注者J,他的標注數(shù)量很少,標注的依存弧準確率低于整體準確率,并且他標注的依存弧準確率隨著時間的推移并沒有提高,反而有所下降,那么針對這樣的標注者,我們會考慮對其重新培訓或者辭退,以確保標注數(shù)據(jù)的質(zhì)量。
由于較多標簽的出現(xiàn)頻率很低,所以我們對只有在一個數(shù)據(jù)批次中數(shù)量大于100個的標簽進行統(tǒng)計分析。在數(shù)據(jù)中都分別抽取1 000句全標注數(shù)據(jù)及局部標注數(shù)據(jù)(20%),由于pctb7這批數(shù)據(jù)我們沒有進行全標注,所以只抽取了局部標注(20%)數(shù)據(jù),標簽的分布統(tǒng)計如表5所示。
表5 樹庫標簽分布情況表(%)
根據(jù)表4和表5分析得到以下信息:
① 無論是在全標注還是局部標注的數(shù)據(jù)中,用來標注漢語句子中主干(subj(主語)、obj(動賓)、att(定語)、adv(狀語)、cmp(補語))關系的標簽占比較大。說明漢語句子中這些主干關系對應的詞語置信度整體上都較低,體現(xiàn)了人工標注的重要性。
② 用于標注謂語的root(根節(jié)點)、sasubj(同主語)和dfsubj(不同主語)這三個標簽的占比較大,說明謂詞關系在句子中是比較常見的;也能說明從句法角度來看謂詞是句子中最重要的詞。同時我們可以發(fā)現(xiàn): a)sasubj和dfsubj這兩個標簽在局部標注數(shù)據(jù)中的占比遠大于在全標注數(shù)據(jù)中的占比,說明選取局部數(shù)據(jù)時,這兩個標簽所對應的詞語置信度普遍較低,被大量地選取并標注; b)在content_v2的局部標注數(shù)據(jù)中sasubj和dfsubj的占比是最大的,說明在長句子的網(wǎng)絡文本中謂語句更多。
③ pobj(介賓)和adjct(附加成分)這兩個標簽的數(shù)量占比較大,原因是:對于pobj來說,漢語中的動詞和介詞理解歧義較大,所以標注者在選擇是obj還是pobj時可能會有一些歧義;對于adjct來說,漢語是一種結(jié)構(gòu)化語言,其中有許多只為句子結(jié)構(gòu)完整的助詞、嘆詞等無意義的詞語,目前我們都用adjct來進行標注,那么在之后的規(guī)范更新中都可以將這些著重考慮。另外,pobj在規(guī)范文本中的占比較大,而在網(wǎng)絡文本中,助詞、嘆詞等非常常見,所以在content_v1的全部標注數(shù)據(jù)中adjct這個標簽的占比是最大的。
本文介紹了目前我們在面向多領域多來源文本的漢語依存句法樹庫構(gòu)建方面所做的一些工作。我們基于前期研制的數(shù)據(jù)標注規(guī)范和在線標注系統(tǒng),聘請了15位標注者,標注了約3萬句的高質(zhì)量漢語依存句法數(shù)據(jù)。本文重點介紹了數(shù)據(jù)選取、標注流程等問題,對標注數(shù)據(jù)的質(zhì)量及標注過程中的一些現(xiàn)象進行了統(tǒng)計分析。
通過這些工作,我們在漢語依存句法樹庫的人工標注方面積累了一定經(jīng)驗。首先,由于句法標注工作的困難性,我們需要在數(shù)據(jù)以及標注方面都進行嚴格的流程控制,以確保標注數(shù)據(jù)質(zhì)量;其次,通過統(tǒng)計與分析發(fā)現(xiàn),整體數(shù)據(jù)的標注弧一致性及句子的一致性都較低,需要審核專家進行進一步的檢查,體現(xiàn)了雙人標注的重要性。目前我們標注的樹庫規(guī)模還很小,未來我們在現(xiàn)有的樹庫基礎上會進一步構(gòu)建大規(guī)模的面向不同領域不同來源的漢語依存句法樹庫。