徐潤華,曲維光,陳小荷,王東波
(1.金陵科技學(xué)院人文學(xué)院,江蘇 南京210038;2.南京師范大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南京210046;3.南京師范大學(xué) 文學(xué)院,江蘇 南京210097;4.南京農(nóng)業(yè)大學(xué) 信息科學(xué)技術(shù)學(xué)院,江蘇 南京210095)
“四字格”這個術(shù)語最早由陸志韋先生[1]提出,是指由四個漢字組成的一種獨(dú)特語言格式。在漢語言文學(xué)發(fā)展的歷史中,四字格的形式起著非常重要的作用,四字格形式在語音、語法、構(gòu)詞、語用、修辭等方面都對漢語產(chǎn)生了深刻的影響。四字格不僅在字?jǐn)?shù)、結(jié)構(gòu)、韻律等方面有著獨(dú)特的優(yōu)勢[2],它還有著深厚的文化土壤,從老子的“千里之行,始于足下”到孔子的“學(xué)而不厭,誨人不倦”,名人名言多見四字警句。
四字格結(jié)構(gòu)的能產(chǎn)性和派生性極強(qiáng),利用四字格派生出新詞語的模式,在漢語言發(fā)展史上一直起著積極的作用,推動著漢語的發(fā)展。直到今天,利用四字格模式創(chuàng)造出的新詞數(shù)量在現(xiàn)代漢語詞匯中仍然呈上升趨勢,四字詞語的數(shù)量有增無減。楊曉黎[3]通過統(tǒng)計(jì)得出結(jié)論認(rèn)為“在新詞語中雙音節(jié)優(yōu)勢已經(jīng)讓位于四音節(jié)詞語了”。在信息化迅猛發(fā)展的今天,可以很容易地獲取大規(guī)模語料,對四字格結(jié)構(gòu)的研究不能僅僅局限于文獻(xiàn)和理論,而應(yīng)該將目光更多地投向語料庫,投向大量真實(shí)文本中的四字格。
語料庫中的四字格所面臨的最大問題是,同一個詞在文本中是否保持了相同的切分形式。如果不能很好地解決四字格的切分和識別工作,會給漢語的自動分詞工作帶來麻煩。目前,自然語言處理尚缺乏對漢語四字格的專門性研究,本文希望通過對語料庫中漢語四字格的研究,給自然語言處理領(lǐng)域的自動分詞工作,以及在自動分詞基礎(chǔ)上進(jìn)行的語料深加工、句法分析、話語理解等后續(xù)任務(wù)帶來有益的幫助。
不同語料庫中的四字格由于語料來源、語言風(fēng)格、切分原則等方面的差異而呈現(xiàn)出多樣性和特殊性。為了能更好地揭示出語料庫中四字格的全貌,引入多個語料庫來進(jìn)行四字格的研究十分有必要。本文研究所選用的分詞語料庫是Sighan中文分詞競賽的部分訓(xùn)練語料①語料來源網(wǎng)址:http://www.sighan.org:北京大學(xué)《人民日報》分詞語料庫、微軟亞洲研究院中文分詞語料庫、中國國家語委中文分詞語料庫這三個簡體中文分詞語料庫。選取三個不同的語料庫來進(jìn)行四字格的分類工作,可以更全面地考察多語料庫中的四字格并在此基礎(chǔ)上進(jìn)一步比較各個語料庫之間的四字格切分特點(diǎn)。
語料庫中的四字格,通常指的是那些結(jié)構(gòu)穩(wěn)定、意義凝固、可獨(dú)立運(yùn)用且長度為四的詞語。因此在分詞語料庫中,四字格最直觀的形式特征就是它的長度。但長度為四的分詞單位,并不一定都是四字格。其中包含了相當(dāng)數(shù)量的“非四字格”卻長度為四的分詞單位。這些“非四字格”分詞單位主要由數(shù)字串、命名實(shí)體等構(gòu)成。例如,數(shù)字串或含數(shù)字串的詞串:“七八千元”、“五十余篇”;人名和地名,尤其以音譯詞居多,如“莎拉波娃”、“巴勒斯坦”;機(jī)構(gòu)名如“順天集團(tuán)”、“西康鐵路”等。這些四字長的分詞單位是不能歸入到四字格范疇中去的。這里需要說明一下成語。成語多是四字格[4],它結(jié)構(gòu)穩(wěn)定基本不存在切分不一致的情況。而且作為一個封閉的類別,對成語進(jìn)行識別也較為容易?;诔烧Z的結(jié)構(gòu)穩(wěn)定、容易識別的特點(diǎn),為了更直接地針對開放性、派生性強(qiáng)的四字格結(jié)構(gòu)進(jìn)行研究,成語也沒有被納入本文研究的四字格范疇之內(nèi)。
通過篩選、去除上述成分之后,北京大學(xué)《人民日報》1998年1月分詞語料庫中四字格篩選后數(shù)量為2830條;微軟亞洲研究院中文分詞語料庫中四字格篩選后數(shù)量為2739條;中國教育部國家語委分詞語料庫中四字格篩選后數(shù)量為1999條。
周薦[5]把四字格分為“陳述式”、“偏正式”、“述賓式”等八種類型。本文提出的四字格的分類方法,并不單純從語法層面去分析四字格的結(jié)構(gòu),而是更偏重于為計(jì)算機(jī)處理四字格切分、識別任務(wù)而服務(wù)的一種分類方法,所以對四字格結(jié)構(gòu)內(nèi)部的組成關(guān)系并不十分關(guān)注。分詞語料庫中的四字格,按照四字格的構(gòu)詞模式,大致可以分為“詞語構(gòu)成型”、“結(jié)構(gòu)構(gòu)成型”、“固定結(jié)構(gòu)型”這三種類型,如表1所示。
詞語構(gòu)成型,指的是那些內(nèi)部構(gòu)成方式簡單易于觀察,在語料庫中常常切分成兩種穩(wěn)定切分形式的四字格,例如,“工薪階層”,或者切分為一個完整的四字格結(jié)構(gòu),或者就是切分為“工薪 階層”的形式。詞語構(gòu)成型還可以細(xì)分為“‘2+2’式”和“‘3+1’或‘1+3’式”,兩者都是從音段組合規(guī)律上對四字格所進(jìn)行的劃分[6]。
表1 四字格的構(gòu)詞模式
結(jié)構(gòu)構(gòu)成型四字格的內(nèi)部結(jié)構(gòu)復(fù)雜,在語料庫中切分形式不穩(wěn)定,例如,“各負(fù)其責(zé)”,可能出現(xiàn)“各負(fù) 其責(zé)”的形式,也可能出現(xiàn)“各 負(fù) 其 責(zé)”的形式。當(dāng)四字格被切分成形如“鍋 碗 瓢 盆”這樣處于同一層次的四個單音節(jié)詞時,則稱之為“四字駢語”[7]。詞語構(gòu)成型的四字格內(nèi)部全部是由詞構(gòu)成,而結(jié)構(gòu)構(gòu)成型的四字格內(nèi)部不全是由詞構(gòu)成,它可能是“結(jié)構(gòu)”+“詞”的形式,例如,“大飽耳福”;也可能是“結(jié)構(gòu)”+“結(jié)構(gòu)”的形式,例如,“筆簡意深”,這種前后結(jié)構(gòu)形式對稱的四字格也稱為并列式四字格[8]。
固定結(jié)構(gòu)型,指的是用法固定結(jié)構(gòu)穩(wěn)定不可變的一些四字格,常見于一些表示轉(zhuǎn)折或條件關(guān)系的四字格,例如“不管怎樣”、“也就是說”等。
圖1 四字格切分不一致類型的對應(yīng)關(guān)系
分詞語料庫中的切分不一致現(xiàn)象一直是中文信息處理領(lǐng)域的難點(diǎn)。四字格的切分不一致現(xiàn)象是整個分詞語料庫中分詞不一致研究工作的重要組成部分之一。四字格也屬于分詞單位,馮志偉[9]認(rèn)為:“四字成語和習(xí)慣用語,各成分意義結(jié)合緊密,難以拆開,不切分”,但是在實(shí)際的分詞過程中,四字格往往不被切分成一個完整的分詞單位,而是被“切碎”了:例如,“傾而不倒”這個四字格,在語料庫中既出現(xiàn)過“傾_而_不_倒”這樣的切分實(shí)例,也出現(xiàn)過“傾_而_不倒”這樣的切分實(shí)例。切分不一致大大降低了分詞的精度,影響了自然語言處理的后續(xù)工作。切分不一致問題若得不到較好解決,將會對漢語自動分詞、分詞規(guī)范統(tǒng)一、語料庫建設(shè)等方面造成影響。
除了成語之外,沒有被詞典收錄的四字慣用語、習(xí)語,都可以算作多詞表達(dá)的一種[10]。多詞表達(dá)需要從整體上把握多詞合成后所表達(dá)的意義,而四字格切分不一致的現(xiàn)狀會給多詞表達(dá)的相關(guān)研究帶來困難。
對于一個四字格而言,只要它在分詞語料庫中沒有被切分成一個四字長的分詞單位,就認(rèn)為它被切碎了。在理論上,切碎了的四字格可以是各種各樣的形式,但無論這些四字格的切分不一致結(jié)果多么紛繁復(fù)雜,最終都可以歸結(jié)到三種四字格的切分不一致類型中:被切分成兩個詞(2型四字格)、被切分成三個詞(3型四字格)、被切分成四個詞(4型四字格)。一個四字長的分詞單位,所有可能的切分形式,都包含于這三種切分不一致類型中。
分詞語料庫中四字格的三種切分不一致類型,和本文前述的從四字格構(gòu)詞模式角度提出的四字格分類體系是對應(yīng)的。2型四字格對應(yīng)的是詞語構(gòu)成型四字格,3型四字格和4型四字格對應(yīng)的是結(jié)構(gòu)構(gòu)成型四字格,其中3型四字格對應(yīng)于結(jié)構(gòu)構(gòu)成型四字格中的“‘結(jié)構(gòu)’+‘詞’式”。具體的對應(yīng)關(guān)系如圖1所示。
四字格切分不一致的提取工作,就是要找出語料庫內(nèi)部和語料庫之間某個特定四字格所有不同的切分形式。例如,北京大學(xué)語料庫中有這樣一個四字格:“懲惡揚(yáng)善”,在別的語料庫中出現(xiàn)了“懲_惡_揚(yáng)_善”和“懲惡_揚(yáng)善”兩種切分形式,切分不一致提取工作就需要把這兩種不同的切分形式都找出來。為了能夠發(fā)現(xiàn)所有的切分不一致情況,提取算法需要同時檢索這六個不同的切分串:“懲惡_揚(yáng)善”、“懲_惡揚(yáng)善”、“懲惡揚(yáng)_善”、“懲_惡_揚(yáng)善”、“懲惡_揚(yáng)_善”、“懲_惡_揚(yáng)_善”。這其實(shí)就包含了“懲惡揚(yáng)善”這個四字格所有可能的切分形式。
(1)實(shí)驗(yàn)方案及數(shù)據(jù)
本實(shí)驗(yàn)考察了三個語料庫之間的四字格切分不一致數(shù)據(jù),同時也對三個語料庫各自內(nèi)部的四字格切分不一致數(shù)據(jù)進(jìn)行了統(tǒng)計(jì)。考察了四字格切分不一致的三種類型(2型、3型、4型四字格),以及每種類型的類別數(shù)(types)和實(shí)例數(shù)(tokens)這兩個統(tǒng)計(jì)量。統(tǒng)計(jì)數(shù)據(jù)如表2和表3所示,數(shù)據(jù)示例如表4所示。
表2 分詞語料庫內(nèi)部的四字格切分不一致數(shù)據(jù)
表3 分詞語料庫之間的四字格切分不一致數(shù)據(jù)
表4 語料庫中四字格切分不一致的數(shù)據(jù)示例
(2)實(shí)驗(yàn)分析
觀察數(shù)據(jù)可以看出,三個語料庫內(nèi)部的四字格切分不一致數(shù)量要遠(yuǎn)少于三個語料庫之間的四字格切分不一致數(shù)量。例如,國家語言文字工作委員會語料庫內(nèi)部的四字格切分不一致例數(shù)僅有220例,而語委語料庫和微軟語料庫之間的切分不一致例數(shù)卻多達(dá)7055例。這也和直覺相符:一個語料庫內(nèi)部的切分方式和切分原則相對穩(wěn)定,而不同語料庫之間的切分方式和切分原則差異較大。
在進(jìn)行分詞語料庫之間四字格切分不一致的比較時,四字格切分一致數(shù)量和切分不一致數(shù)量的比例是衡量兩個語料庫之間四字格切分相似程度的一個重要依據(jù)。通過計(jì)算“四字格切分不一致數(shù)量/四字格切分一致數(shù)量”的值可以發(fā)現(xiàn),《人民日報》語料庫和國家語委語料庫之間的這個比值為(311+445)/(845+806)=45.8%,是所有語料庫之間的最低值,說明這兩個語料庫之間的四字格切分方式最接近;《人民日報》語料庫和微軟亞洲研究院語料庫之間的這個比值為(855+615)/(1041+960)=73.5%,是所有語料庫之間的最高值,說明這兩個語料庫之間在四字格的切分問題上“分歧”最多。
分詞語料庫中的四字格分為兩類:一類是未被切碎、可以利用詞長或者詞性信息直接找到的、形如“_茶飯不思_”形式的四字格;另一類,是被切碎成若干更小長度的分詞單位、無法在語料庫直接找到、形如“_如_詩_如_畫_”形式的四字格。四字格識別研究所要針對的正是第二類四字格。
被切碎了的四字格又分為兩種,一種是在某個語料庫中被切碎,但在其他語料庫中未被切碎的四字格;另一種是在各個語料庫中都被切碎,但確實(shí)應(yīng)當(dāng)被切分為一個分詞單位的四字格。對于前者的識別,只需通過建立一個簡單的四字格實(shí)例詞表即可實(shí)現(xiàn);而對于后者,我們無法在語料庫中找到匹配實(shí)例,要識別出這些四字格,就必須要借助于統(tǒng)計(jì)模型來訓(xùn)練大量數(shù)據(jù)、機(jī)器學(xué)習(xí)四字格的結(jié)構(gòu)特征并以此對四字格進(jìn)行自動標(biāo)注。
條件隨機(jī)場(Conditional Random Field,CRF)是一種用于在給定輸入節(jié)點(diǎn)值時計(jì)算指定輸出結(jié)點(diǎn)值的條件概率的無向圖模型,是一個基于統(tǒng)計(jì)的序列標(biāo)注和分割的方法[11]。目前,CRF廣泛應(yīng)用于自然語言處理的各個方面,特別是在序列化標(biāo)注例如詞性標(biāo)注任務(wù)中,CRF表現(xiàn)優(yōu)異。我們可以把四字格的識別過程想像為一種特殊的詞性標(biāo)注:給每個分詞單位一個標(biāo)記,該標(biāo)記用于表明分詞單位是或者不是四字格的成分之一。把連續(xù)出現(xiàn)的有四字格標(biāo)記的分詞單位找出來,當(dāng)它們的詞長相加正好為四的時候,就可以認(rèn)為這是一個四字格。
CRF模型需要大量做過人工標(biāo)注的語料用于訓(xùn)練。單靠人力去發(fā)現(xiàn)語料庫中被切碎了的四字格并對其進(jìn)行四字格信息的標(biāo)注,是一項(xiàng)極其耗時耗力的工作。一種可行的方法是,利用不同語料庫之間四字格的切分不一致數(shù)據(jù)來實(shí)現(xiàn)四字格訓(xùn)練語料的自動獲取。例如,有語料庫A和B,在語料庫A中可以找到四字格“為國分憂”,而它在語料庫B中則被切成了“為_國_分憂”,那么“為_國_分憂”這個切分實(shí)例就可以成為CRF模型訓(xùn)練語料的一部分。采用這種思路來自動獲取訓(xùn)練語料,上文關(guān)于四字格切分不一致的統(tǒng)計(jì)結(jié)果就可以直接為CRF模型的訓(xùn)練過程提供大量數(shù)據(jù)。
俞士汶[12]提出,形如“調(diào)查_研究”、“總結(jié)_經(jīng)驗(yàn)”這樣的“四個字短語,通常應(yīng)切分”。2型四字格均由兩個詞語構(gòu)成,結(jié)構(gòu)方式上趨近于詞組,在語料庫中的切分不一致情況多屬于切分粗細(xì)的問題,而非切分正誤的問題。因此,本研究的四字格識別工作只把3型四字格和4型四字格作為識別對象。去除2型四字格的切分不一致結(jié)果,只保留切分成3型和4型四字格的切分不一致結(jié)果,本文研究選取的三個分詞語料庫中共有2742例四字格切分不一致數(shù)據(jù)。如表5所示。
表5 切分成3型和4型的四字格切分不一致數(shù)據(jù)(例數(shù))
除了四字格本身,還需要提供四字格的上下文語境信息用于CRF模型訓(xùn)練,即真正用于CRF模型訓(xùn)練的,是包含了四字格的句子,而不是單獨(dú)的四字格本身。對應(yīng)于2742個四字格切分不一致實(shí)例,用于CRF模型訓(xùn)練的包含四字格的句子也是2742個。
圖2 四字格的特征列
按照CRF模型的語料格式要求,針對3型四字格和4型四字格這兩種識別對象,給出兩種四字格特征列,如圖2所示。圖中的第一列是文本,第二列是詞性標(biāo)記和詞長信息,第三列是四字格標(biāo)記?!皀one”表示該詞不是四字格成分,“head_3”、“body_3”、“tail_3”或“head_4”、“body1_4、body2_4”、“tail_4”分別表示該詞是四字格成分的首部、中部、尾部,后面的數(shù)字“3”或“4”表示該四字格被切碎成了3個或者4個部分。
CRF模型是一個通用工具,用戶需要定制自己的特征模板。模板的基本格式為%x[行、列],它用于確定輸入數(shù)據(jù)中的一個詞例。行,表示%x相對于當(dāng)前詞例的行數(shù);列,表示%x在列上的絕對列數(shù)。以訓(xùn)練語料中的“陽光/n走遍/v它/r不/d為/p人/n知/v的/u另/r一/m 面/n”這句話來示例特征模板,假設(shè)當(dāng)前詞為“為”,本研究所采用的CRF特征訓(xùn)練模板如圖3所示。
圖3 特征模板示例
基于CRF模型的識別實(shí)驗(yàn)采用的訓(xùn)練語料是北京大學(xué)《人民日報》1998年1月語料、微軟亞洲研究院中文分詞語料、中國國家語委分詞語料。封閉測試語料選用的是北京大學(xué)《人民日報》1998年1月語料,開放測試語料選用的是北京大學(xué)《人民日報》1998年2~6月語料,實(shí)驗(yàn)結(jié)果如表6和表7所示。
表61998年1月至6月北京大學(xué)《人民日報》語料庫中的四字識別結(jié)果
表71998年1月至6月北京大學(xué)《人民日報》語料庫識別結(jié)果中的3、4型四字格分布
作為開放測試語料,1998年2月至6月的《人民日報》語料并未參與到四字格切分不一致數(shù)據(jù)的獲取過程中,但利用CRF模型對其進(jìn)行的四字格識別實(shí)驗(yàn)仍然取得了93%以上的正確率,甚至部分超過了封閉測試的效果;表7列出了半年《人民日報》語料中識別出的3、4型四字格分布,可以看出識別出的被切碎四字格的數(shù)量較多、分布平均,3型四字格和4型四字格之間的比例也趨于平衡沒有明顯的偏重,這些都表明了,利用四字格切分不一致數(shù)據(jù)并輔以CRF模型來識別四字格的方法能行之有效地解決多語料庫中四字格的識別難題。
識別得到的四字格中,有些可以在北京大學(xué)、國家語委、微軟三個訓(xùn)練語料庫中找到完全匹配的實(shí)例,例如,
持續(xù)不斷 從頭做起
催人淚下 多黨合作
凡此種種 蜂擁而來
干旱少雨 公布于眾
但這些四字格只占識別得到的2229例四字格中很小的一部分,占比最多的國家語委語料庫也只有3.8%;絕大多數(shù)識別得到的四字格在三個訓(xùn)練語料庫中都找不到與之完全匹配的實(shí)例,換言之都被切碎了,例如,
冰封雪蓋 官去室空
船推浪移 肩扛手提
車毀人傷 肩扛背馱
房倒屋塌 以短養(yǎng)長
這部分識別出的四字格是無法通過查找匹配實(shí)例來識別的,也進(jìn)一步驗(yàn)證了本研究引入統(tǒng)計(jì)模型參與識別工作的必要性。相關(guān)數(shù)據(jù)詳見表8。
表8 四字格識別結(jié)果在三個語料庫中是否有匹配實(shí)例的分布數(shù)據(jù)
本文的研究對象是語料庫中的四字格,本文著重對“四字格的分類”、“四字格的切分”、“四字格的識別”這三個問題進(jìn)行了深入研究。如圖4所示。
圖4 四字格研究框架
通過抽取不同分詞語料庫中的四字格并進(jìn)行篩選、分類,本文解決了第一個問題;利用篩選、分類的結(jié)果,在不同語料庫中尋找它們所有的切分形式,分析歸納這些四字格切分形式上的特點(diǎn),本文解決了第二個問題;利用不同語料庫間四字格的切分不一致結(jié)果,在分詞語料庫中實(shí)現(xiàn)了對四字格的識別工作,至此本文解決了第三個問題。通過實(shí)驗(yàn)表明,多語料庫中的四字格識別正確率可以達(dá)到93%以上。
本研究依然有許多尚未完成或亟需改善之處:四字格分類體系仍顯粗糙;研究所使用的分詞語料庫規(guī)模有待擴(kuò)大;四字格資源需要繼續(xù)補(bǔ)充和完善。下一步工作考慮引入語法、語義方面的知識來進(jìn)一步提高四字格特別是可派生型四字格的識別效果。
[1]陸志韋.漢語的并立四字格[J].語文研究,1956,(1):45-82.
[2]馬國凡.四字格論[J].內(nèi)蒙古師范大學(xué)學(xué)報,1987,(3):51-58.
[3]楊曉黎.四音節(jié)新詞語及其成因[J].江淮論壇,1996,(4):100-103.
[4]莫彭齡.“四字格”與成語修辭[J].常州工學(xué)院學(xué)報,2003(3):54-58.
[5]周薦.論四字語和三字語[J].語文研究,1997,(4):26-31.
[6]鞠君.四字格中“1+3”音段和“3+1”音段組合規(guī)律初探[J].漢語學(xué)習(xí),1995,(1):37-39.
[7]安華林.“四字駢語”初探[J].信陽師范學(xué)院學(xué)報,2001,(1):79-82.
[8]時秀娟.淺析漢語并列式四字格結(jié)構(gòu)及其理據(jù)性[J].萊陽農(nóng)學(xué)院學(xué)報,2001,(3):44-47.
[9]馮志偉.確定切詞單位的某些非語法因素[J].中文信息學(xué)報,2001,(5):8-14.
[10]劉榮、王弈凱:2011:《利用統(tǒng)計(jì)量和語言學(xué)規(guī)則提取多字詞表達(dá)[J].太原理工大學(xué)學(xué)報,2011,(3):133-137.
[11]Lafferty,J.McCallum,A.Pereira,F(xiàn).,Conditional random fields:Probabilistic models for segmenting and labeling sequence data[C]//Proceedings of the 18th International Conference on Machine Learning(ICML 2001),2001:282-289.
[12]俞士汶,段慧明,朱學(xué)鋒,等.北京大學(xué)現(xiàn)代漢語語料庫基本加工規(guī)范[J].中文信息學(xué)報,2002,(5):49-64.