許 勇,劉井平,肖仰華,朱慕華
(1.復(fù)旦大學(xué) 計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,上海 200433; 2.阿里巴巴網(wǎng)絡(luò)技術(shù)有限公司,杭州 311121)
短語是指文本中可以構(gòu)成一個(gè)完整語義單元的連續(xù)詞序列,這些語義單元通常為概念、實(shí)體、地址、組織、事件等。短語挖掘是從給定語料中自動(dòng)識(shí)別高質(zhì)量短語的過程[1-2],其將文本信息抽取從單詞粒度提升到了短語粒度。
在電商領(lǐng)域,抽取出的短語在查詢建議[3]、查詢改寫[4]、術(shù)語識(shí)別[5]和搜索關(guān)鍵詞識(shí)別[6]等任務(wù)中均具有廣泛應(yīng)用。例如,給定一個(gè)查詢語句“瑯琊榜同款斗篷”,短語挖掘可以抽取出“瑯琊榜同款”這個(gè)短語。在用戶輸入“瑯琊榜”時(shí),搜索引擎系統(tǒng)可以給出查詢建議“瑯琊榜同款”。傳統(tǒng)的短語挖掘方法主要分為基于句法特征的方法和基于統(tǒng)計(jì)特征的方法兩類。基于句法特征的方法使用詞性標(biāo)注[7-8]、組塊分析[9]、依存關(guān)系[10]等句法層面的信息識(shí)別短語?;诮y(tǒng)計(jì)特征的方法[11]使用基于頻率的統(tǒng)計(jì)信息來檢測(cè)短語,這類方法從海量的語料庫中挖掘k元詞序列作為候選,得到諸如侯選短語的頻率、左右詞的信息熵、短語的信息量等統(tǒng)計(jì)特征,然后構(gòu)建有監(jiān)督的短語分類模型以識(shí)別短語。
上述短語挖掘方法都以通用領(lǐng)域文本作為研究對(duì)象,如DBLP、維基百科和Yelp等文本語料。通用領(lǐng)域文本一般是文章、新聞、評(píng)論和論文等,這些文本具有書寫規(guī)范、句法結(jié)構(gòu)完整等特點(diǎn)。電商查詢語句一般由屬性詞和品類詞(產(chǎn)品名稱)組成,通常沒有完整的句法結(jié)構(gòu),并且存在大量反序和省略的表達(dá),比如“冬季外套女韓版”“大碼休閑鞋防滑”等。這使得傳統(tǒng)方法在處理電商領(lǐng)域的文本時(shí)都存在一定的局限性。句法結(jié)構(gòu)的缺失使得基于句法特征的方法無法有效檢測(cè)出短語邊界,反序表達(dá)的存在使得基于統(tǒng)計(jì)特征的方法容易將高頻反序短語誤認(rèn)為高質(zhì)量短語。電商領(lǐng)域語料的特殊性也使得傳統(tǒng)基于遠(yuǎn)程監(jiān)督的數(shù)據(jù)標(biāo)注方法效果較差。
實(shí)體標(biāo)記序列能夠反映詞之間的修飾關(guān)系,可以有效檢測(cè)出電商領(lǐng)域文本中的反序表達(dá)。本文針對(duì)電商領(lǐng)域文本中多數(shù)詞是屬性值且每個(gè)屬性值都有指定類型的特點(diǎn),提出一種基于實(shí)體標(biāo)記序列[12-13]的雙向LSTM[14]短語分類模型。通過構(gòu)建協(xié)同訓(xùn)練[15]的短語挖掘框架,整合已有的基于統(tǒng)計(jì)特征的短語挖掘方法,以降低電商領(lǐng)域語料中標(biāo)注訓(xùn)練數(shù)據(jù)的成本。在此基礎(chǔ)上,利用Stacking方法[16-17]集成統(tǒng)計(jì)模型和語義模型的優(yōu)點(diǎn),以提升本文模型的整體性能。
基于句法特征的短語挖掘方法最早根據(jù)基于詞性標(biāo)記的規(guī)則來識(shí)別短語。文獻(xiàn)[7-8]定義了多個(gè)基于詞性標(biāo)記的規(guī)則來識(shí)別句子中的名詞短語。文獻(xiàn)[9,18]構(gòu)建有監(jiān)督的組塊分析模型從文檔中抽取出名詞短語。文獻(xiàn)[10]利用更加精細(xì)的依存句法分析進(jìn)一步提高短語挖掘的精確率。但是,基于規(guī)則的方法依賴領(lǐng)域相關(guān)的語言規(guī)則,適用范圍有限。此外,基于有監(jiān)督學(xué)習(xí)的方法依賴大規(guī)模的標(biāo)注數(shù)據(jù)才能保證模型效果,基于依存分析的方法盡管效果有所提升,但是其依賴計(jì)算量很大的句法分析器。
基于統(tǒng)計(jì)特征的分類方法主要根據(jù)基于頻率的統(tǒng)計(jì)特征來識(shí)別短語。ConExtr[19]著重分析一個(gè)短語及其子短語間的關(guān)系,使用迭代過濾策略來篩選出高質(zhì)量的短語。文獻(xiàn)[11]采用基于ZipFian排名的啟發(fā)式短語質(zhì)量排序算法。TopMine[20]采取了一種自底向上的方式來挖掘短語,先挖掘高頻候選短語,再根據(jù)重要性指標(biāo)將它們?nèi)诤铣筛L(zhǎng)的短語。SegPhrase[1]提出了融合統(tǒng)計(jì)特征與短語切分模型的方法,其基于切分后的句子進(jìn)行短語頻率統(tǒng)計(jì),在一定程度上解決了統(tǒng)計(jì)特征中短語頻率計(jì)數(shù)不準(zhǔn)的問題,同時(shí)短語的質(zhì)量?jī)?yōu)化可以反過來優(yōu)化切分模型,兩者迭代優(yōu)化以提升最終的短語挖掘效果。AutoPhrase[21]進(jìn)一步使用正例和無標(biāo)注樣本學(xué)習(xí)[22]的方法降低標(biāo)記成本,同時(shí)通過引入詞性標(biāo)記來優(yōu)化短語切分模型。由于電商領(lǐng)域文本中存在大量反序表達(dá),上述方法過于依賴基于頻率的統(tǒng)計(jì)特征,導(dǎo)致在電商領(lǐng)域文本上易出現(xiàn)錯(cuò)誤。同時(shí),AutoPhrase使用通用知識(shí)圖譜的實(shí)體名稱做正樣本標(biāo)注,該方法在電商領(lǐng)域文本中很難標(biāo)注到正樣本。
本文使用實(shí)體標(biāo)記和詞性標(biāo)記序列來構(gòu)建短語分類模型,以降低對(duì)領(lǐng)域規(guī)則以及復(fù)雜句法分析器的依賴,通過協(xié)同訓(xùn)練的方式減小標(biāo)注的成本,使用Stacking方法集成語義模型和統(tǒng)計(jì)模型,最終提升短語挖掘模型的整體性能。
電商領(lǐng)域的文本與傳統(tǒng)文本存在較大差異,這使得傳統(tǒng)短語挖掘方法處理電商領(lǐng)域文本時(shí)存在一定的局限性。電商領(lǐng)域的文本一般沒有完整的句法結(jié)構(gòu),存在反序和省略的表達(dá),表1所示為淘寶電商平臺(tái)上的一些典型查詢語句示例,其中,2列查詢語句的順序不同。
表1 淘寶平臺(tái)查詢語句示例
由于電商文本與通用領(lǐng)域文本的差異性,在應(yīng)用傳統(tǒng)方法處理電商查詢語句時(shí)會(huì)遇到以下3個(gè)問題:
1)電商查詢文本存在反序表達(dá)。例如,在查詢語句“方巾成人”時(shí),表示適用對(duì)象的“成人”這個(gè)修飾詞出現(xiàn)在品類詞“方巾”之后,基于詞性標(biāo)記的方法會(huì)錯(cuò)誤地匹配到這類反序表達(dá),將“方巾/NN 成人/NN”識(shí)別為名詞組合?;诮y(tǒng)計(jì)特征的方法傾向于將高頻的短語識(shí)別為侯選短語,而在電商語料中,部分反序表達(dá)比正常表達(dá)更為常見,如淘寶查詢語句“足球鞋 長(zhǎng)釘”的出現(xiàn)次數(shù)是“長(zhǎng)釘 足球鞋”的4倍。因此,上述方法會(huì)將這類反序表達(dá)誤認(rèn)為是一個(gè)高質(zhì)量短語。針對(duì)上述問題,本文在基于詞性標(biāo)記方法的基礎(chǔ)上,融合命名實(shí)體識(shí)別(NER)[12]標(biāo)記,提出了語義增強(qiáng)的短語識(shí)別方法。在電商領(lǐng)域,大部分詞都是屬性詞或品類詞,這些屬性詞和品類詞被定義為實(shí)體,有對(duì)應(yīng)的實(shí)體標(biāo)記。比如“冬季羽絨服”中“冬季”的標(biāo)記是“季節(jié)”,“羽絨服”的標(biāo)記是“品類”。在反序表達(dá)中,用于修飾的屬性詞通常出現(xiàn)在品類詞之后,因此,可以通過實(shí)體標(biāo)記的序列來識(shí)別反序表達(dá)。同時(shí),實(shí)體標(biāo)記特定的序列也能反映短語的質(zhì)量,比如,對(duì)于實(shí)體標(biāo)記序列“<品牌><品類>”,“品牌”詞修飾“品類”詞,能夠表達(dá)完整的語義,因此,符合該標(biāo)記序列的短語可能是一個(gè)高質(zhì)量短語,例如“小米手機(jī)”。同時(shí),詞性標(biāo)記序列也能在一定程度上反映短語的質(zhì)量,比如,符合“DT JJ NN”的短語。本文構(gòu)建一種基于實(shí)體標(biāo)記和詞性標(biāo)記序列的雙向LSTM短語分類模型,該模型融合實(shí)體標(biāo)記序列特征,相比于詞性標(biāo)記序列特征,實(shí)體特征能更有效地檢測(cè)出反序表達(dá),而相比人工預(yù)定義規(guī)則,使用雙向LSTM模型能夠更好地利用序列特征的信息。
2)電商領(lǐng)域文本很難獲取帶標(biāo)訓(xùn)練樣本。通用領(lǐng)域文本由于有大量高質(zhì)量的短語(來源于通用知識(shí)圖譜的實(shí)體名),可以通過遠(yuǎn)程監(jiān)督的方法得到大量的標(biāo)注數(shù)據(jù),而電商領(lǐng)域中缺乏這種規(guī)模的短語集合,導(dǎo)致需要人為標(biāo)注大量訓(xùn)練數(shù)據(jù)。針對(duì)該問題,考慮到短語挖掘方法可利用多類特征的特點(diǎn),本文采用協(xié)同訓(xùn)練框架。協(xié)同訓(xùn)練能夠依據(jù)特征的多視圖來有效利用未標(biāo)注數(shù)據(jù)。協(xié)同訓(xùn)練的基本思路為:一個(gè)數(shù)據(jù)對(duì)象有多個(gè)屬性集,每個(gè)屬性集構(gòu)成一個(gè)視圖,基于不同視圖可以構(gòu)建不同的分類器,分別生成偽標(biāo)注樣本用于另一個(gè)分類器的訓(xùn)練更新,使得不同視圖的分類器能夠基于少量標(biāo)注樣本相互迭代優(yōu)化。文獻(xiàn)[23]證明只要2個(gè)分類器具有較大的差異性,就可通過協(xié)同訓(xùn)練利用未標(biāo)注數(shù)據(jù)來提升學(xué)習(xí)性能。在短語挖掘問題中,本文提出的語義增強(qiáng)特征(實(shí)體+詞性)與傳統(tǒng)的統(tǒng)計(jì)特征就是2個(gè)具有較大差異的視圖。因此,可以構(gòu)建2個(gè)分類模型,通過協(xié)同訓(xùn)練的方式充分利用未標(biāo)注數(shù)據(jù),從而降低人工標(biāo)注樣本的代價(jià)。
3)電商領(lǐng)域文本缺乏完整的句法結(jié)構(gòu)。 電商查詢語句省略了大量助詞、介詞等功能詞,而基于句法和語義的模型依賴于助詞、介詞等功能詞來檢測(cè)短語邊界,這類詞在電商領(lǐng)域中很少見,使得此類方法無法有效檢測(cè)出短語邊界。而基于統(tǒng)計(jì)特征的模型能夠通過如短語左右鄰接詞的熵這類統(tǒng)計(jì)特征來有效識(shí)別短語邊界。因此,在利用協(xié)同訓(xùn)練得到基于語義增強(qiáng)和基于傳統(tǒng)統(tǒng)計(jì)特征的2個(gè)分類器之后,本文采用Stacking方法對(duì)2個(gè)分類器進(jìn)行系統(tǒng)融合。Stacking方法能夠較好地集成多個(gè)分類器各自的優(yōu)勢(shì),使得模型既能準(zhǔn)確檢測(cè)短語邊界,也能判斷短語序列本身的質(zhì)量。
定義1(k元詞序列(k-gram)) 給定一個(gè)經(jīng)過分詞的中文句子s=w1w2…wn(n表示以詞數(shù)為單位的句子長(zhǎng)度),k-gram是由s中連續(xù)k個(gè)詞組成的任意子串,即u=wiwi+1…wi+k-1。
例1一個(gè)詞序列為“大碼 休閑鞋 防滑”,其2-gram有“大碼 休閑鞋”“休閑鞋 防滑”,3-gram有“大碼 休閑鞋 防滑”。
例2一個(gè)詞序列為“大碼 休閑鞋 防滑”,其實(shí)體標(biāo)記序列為“大小 品類 功效”,詞性標(biāo)記序列為“JJ NN JJ”。
本文短語挖掘系統(tǒng)的整體框架Co-Phrase如圖1所示,具體步驟為:1)根據(jù)語料抽取出的候選短語,得到基于實(shí)體標(biāo)記、詞性標(biāo)記的語義特征和基于頻率計(jì)算得到的統(tǒng)計(jì)特征,其中,詞性標(biāo)記和實(shí)體標(biāo)記通過預(yù)先訓(xùn)練的模型對(duì)語料進(jìn)行處理得到;2)基于2類特征分別構(gòu)建分類器,基于實(shí)體標(biāo)記和詞性標(biāo)記序列特征構(gòu)造語義增強(qiáng)的短語分類器以及基于統(tǒng)計(jì)特征構(gòu)造短語分類器;3)使用協(xié)同訓(xùn)練的方法將上述2個(gè)分類器以減少標(biāo)注樣本為目的進(jìn)行迭代訓(xùn)練優(yōu)化;4)采用Stacking方法集成訓(xùn)練完畢的語義增強(qiáng)模型和基于統(tǒng)計(jì)特征的模型。
圖1 基于協(xié)同訓(xùn)練的短語挖掘系統(tǒng)框架
一個(gè)k-gram是否為高質(zhì)量短語,可以結(jié)合句法和語義特征進(jìn)行判斷。一方面,k-gram本身的詞性標(biāo)記序列和實(shí)體標(biāo)記序列信息可以用來識(shí)別短語。比如,符合“JJ NN”這個(gè)序列的k-gram可能是一個(gè)高質(zhì)量的名詞短語,如“紅色連衣裙”;符合“季節(jié) 品類”這個(gè)實(shí)體標(biāo)記序列的k-gram也可能是一個(gè)高質(zhì)量短語,其表達(dá)了特定季節(jié)的商品這樣一個(gè)完整的概念,如“秋季棉襖”。另一方面,雖然電商領(lǐng)域文本中助詞等功能詞匯存在大量缺失,但并不意味著完全沒有,因此,k-gram上下文的詞性標(biāo)記仍然有助于識(shí)別短語邊界,例如,“適合三歲男孩的玩具”,“的”字助詞可以幫助識(shí)別出短語“三歲男孩”,原因是助詞一般不會(huì)成為短語的一部分。
基于上述分析,本文構(gòu)建一種基于短語實(shí)體標(biāo)記序列和詞性標(biāo)記序列以及短語上下文中詞性標(biāo)記分布的雙向LSTM模型,將其記為SC,具體結(jié)構(gòu)如圖2所示。其中,實(shí)體標(biāo)記和詞性標(biāo)記中的PAD是填充符。
圖2 SC模型框架
本文模型同時(shí)考慮短語本身語義結(jié)構(gòu)及短語所處上下文的合理性。詞性標(biāo)記序列這類特征很難在傳統(tǒng)機(jī)器學(xué)習(xí)方法中進(jìn)行建模,因此,本文采用基于雙向LSTM的序列分類模型,其相比于傳統(tǒng)基于規(guī)則的模型能夠更好地利用序列特征。
本文協(xié)同訓(xùn)練框架主要有2個(gè)視圖的分類器,分別為基于統(tǒng)計(jì)特征的分類器和帶有語義增強(qiáng)特征的分類器。
2.4.1 基于統(tǒng)計(jì)特征的短語挖掘
對(duì)于給定的短語u=wiwi+1…wi+k-1,本文使用的統(tǒng)計(jì)特征主要分為以下4類[21]:
1)頻率特征:用來衡量短語u的常見程度,短語u越常見,其越可能是一個(gè)高質(zhì)量短語。
2)協(xié)調(diào)性特征:用來評(píng)估短語u內(nèi)部的子短語是否為常見的搭配。比如,“恒溫電吹風(fēng)”相比于“溫控電吹風(fēng)”就是更為常見的搭配。對(duì)于給定的短語u,其可以被切割成2個(gè)最可能的子短語
其中,p(u)是短語u在語料中出現(xiàn)的概率。此時(shí),可以使用PMI作為協(xié)調(diào)性的表達(dá)特征之一:PMI越大,說明2個(gè)短語組合出現(xiàn)的概率比它們共同出現(xiàn)的期望概率要大,即這2個(gè)短語越可能構(gòu)成一個(gè)固定搭配,短語u越可能是一個(gè)高質(zhì)量短語。對(duì)于單詞個(gè)數(shù)大于2的短語,比如“恒溫、控制、電吹風(fēng)”,其可能有多個(gè)切分,如“恒溫控制、電吹風(fēng)”和“恒溫、控制電吹風(fēng)”,此時(shí)需要事先找到最可能的切分。本文通過點(diǎn)互信息來尋找該最優(yōu)劃分結(jié)果
3)完整性特征:用來衡量短語u是否為一個(gè)完整的短語,若短語u多數(shù)時(shí)間是作為另一個(gè)短語的子短語出現(xiàn),則它可能不是高質(zhì)量的短語。比如“水星”一般是作為“水星家紡”的子短語出現(xiàn)。
4)信息量特征:用來衡量短語u的信息量,例如,停用詞和功能詞雖然很常見,但是它們并不包含有用的信息。
統(tǒng)計(jì)模型根據(jù)上述統(tǒng)計(jì)特征來構(gòu)建分類器,以評(píng)估短語的質(zhì)量。本文使用隨機(jī)森林算法[25]進(jìn)行短語質(zhì)量評(píng)估,決策樹作為該算法的基礎(chǔ)分類器,隨機(jī)森林算法不容易過擬合,能充分利用各類數(shù)值型和類別型特征,同時(shí)具有很高的精確率。本文將基于統(tǒng)計(jì)特征的分類器記為FC。
2.4.2 協(xié)同訓(xùn)練流程
一般而言,監(jiān)督學(xué)習(xí)算法需要大量的標(biāo)注樣本才能取得較好的效果,尤其是深度學(xué)習(xí)模型。本文針對(duì)短語挖掘問題有句法/語義和統(tǒng)計(jì)兩類特征的特點(diǎn),采用協(xié)同訓(xùn)練的方式進(jìn)行分類器學(xué)習(xí)。協(xié)同訓(xùn)練利用2個(gè)有差異的分類器為對(duì)方提供偽標(biāo)注數(shù)據(jù),從而不斷迭代優(yōu)化彼此的性能。協(xié)同訓(xùn)練流程偽代碼如算法1所示。
算法1協(xié)同訓(xùn)練算法
輸入語料庫C,標(biāo)注集合L
輸出短語得分集合S
1.Procedure 協(xié)同訓(xùn)練(C,L)
2.r←0
3.U←generateKgram(C)
4.F←generateFeature(C,U)
5.while r 6.Model1←TrainFC(L,F) 7.Model2←TrainSC(L,F) 8.PS1←Predict(Model1,U) 9.PS2←Predict(Model2,U) 10.L←L∪SamplePhrase(PS1) 11.L←L∪SamplePhrase(PS2) 12.for each u∈L do 13.remove fufrom F 14.end for 15.r←r+1 16.end while 17.end Procedure 算法1描述了短語挖掘問題中協(xié)同訓(xùn)練的流程。首先,系統(tǒng)初始化相關(guān)參數(shù),對(duì)原始語料進(jìn)行預(yù)處理,抽取出候選短語及其特征向量,同時(shí)進(jìn)行短語的詞性標(biāo)記和命名實(shí)體識(shí)別(第2行~第4行),L初始時(shí)只包含人工標(biāo)注的少量短語。然后,是協(xié)同訓(xùn)練的迭代標(biāo)注過程,總共迭代n輪,該過程主要分為2個(gè)階段:1)分別基于訓(xùn)練數(shù)據(jù)訓(xùn)練統(tǒng)計(jì)模型和語義增強(qiáng)模型(第6行~第7行);2)基于訓(xùn)練好的2個(gè)分類模型預(yù)測(cè)未知短語的得分,篩選高質(zhì)量樣本并添加到標(biāo)注數(shù)據(jù)集L中(第8行~第11行)。最后,從未標(biāo)注數(shù)據(jù)中移除已被自動(dòng)標(biāo)注的樣本(第12行~第14行)。上述2個(gè)階段不斷迭代優(yōu)化,直至達(dá)到指定迭代次數(shù)。 協(xié)同訓(xùn)練算法結(jié)束后,可以得到2個(gè)優(yōu)化后的分類器,這2個(gè)分類器有一定差異,對(duì)于不同的樣本可能會(huì)給出不同的輸出結(jié)果。因此,可以融合兩者的輸出結(jié)果,使得最終的集成模型對(duì)于原有分類器具有差異的輸出能給出正確的預(yù)測(cè)。本文使用Stacking方法進(jìn)行模型集成,Stacking方法的具體過程如圖3所示。首先,訓(xùn)練多個(gè)不同的基準(zhǔn)模型Ci,然后,以這些模型的輸出oi作為另一個(gè)模型的輸入來訓(xùn)練一個(gè)次級(jí)模型,得到最終的輸出of。與簡(jiǎn)單的模型加權(quán)平均方式不同,Stacking能很好地學(xué)習(xí)不同數(shù)據(jù)上不同分類器的權(quán)重。在本文中,Stacking集成FC和SC 2個(gè)分類器的結(jié)果以得到最終結(jié)果。 圖3 Stacking集成模型框架 本文研究電商領(lǐng)域的短語挖掘問題,以淘寶網(wǎng)的查詢語料庫作為實(shí)驗(yàn)數(shù)據(jù)集,淘寶是世界上最大的中文電商平臺(tái)。為驗(yàn)證本文語義增強(qiáng)的短語挖掘方法、協(xié)同訓(xùn)練框架以及基于Stacking的模型集成方法的有效性,對(duì)比現(xiàn)有2種短語挖掘方法,在淘寶用戶查詢語料上進(jìn)行實(shí)驗(yàn)分析。 本文實(shí)驗(yàn)收集了一周的用戶查詢語句數(shù)據(jù),然后對(duì)查詢語句進(jìn)行分詞、詞性標(biāo)記和命名實(shí)體識(shí)別,遍歷得到所有可能的k-gram(k≤5)。根據(jù)k-gram的頻率進(jìn)行過濾,閾值設(shè)為30,最終得到了2 172 324個(gè)候選k-gram。其中,中文分詞、詞性標(biāo)記、命名實(shí)體識(shí)別使用了阿里巴巴集團(tuán)內(nèi)部的工具AliNLP。 為了評(píng)估不同方法的有效性,本文從候選k-gram中隨機(jī)采樣部分?jǐn)?shù)據(jù)進(jìn)行人工標(biāo)注,用于模型訓(xùn)練和評(píng)估。總共標(biāo)注700個(gè)樣本,其中,500個(gè)樣本用于評(píng)估,200個(gè)樣本用于訓(xùn)練。本文采用了3人標(biāo)注的方式,最終標(biāo)注結(jié)果根據(jù)投票方式確定。對(duì)于有分歧的短語,選擇標(biāo)數(shù)多的標(biāo)注。本文實(shí)驗(yàn)對(duì)比方法具體如下: 1)ClassPhrase:該方法基于詞的頻率、協(xié)同性特征、完整性特征和信息量特征等統(tǒng)計(jì)特征來評(píng)估短語的質(zhì)量,其為Co-Phrase中的統(tǒng)計(jì)模型部分。 2)AutoPhrase[19]:該方法是目前效果較好的短語挖掘方法,其使用了正例和無標(biāo)注樣本學(xué)習(xí)的訓(xùn)練框架來避免人工標(biāo)注成本,同時(shí)融合基于詞性標(biāo)記的短語切分模型和統(tǒng)計(jì)模型進(jìn)一步提升短語挖掘效果。 3)Co-Phrase:即本文提出的基于實(shí)體標(biāo)記和詞性標(biāo)記的深度短語分類模型,其使用協(xié)同訓(xùn)練的短語挖掘框架,迭代優(yōu)化語義增強(qiáng)模型和統(tǒng)計(jì)特征模型的性能,并采用Stacking方法集成2個(gè)分類模型的結(jié)果。 實(shí)驗(yàn)使用精確率(Precision)、召回率(Recall)、F1和PR_AUC來評(píng)估結(jié)果。其中,精確率反映模型預(yù)測(cè)為正樣本的數(shù)據(jù)中真實(shí)正樣本的比例,召回率反映模型預(yù)測(cè)為正樣本的真實(shí)正樣本占所有正樣本的比例,F1同時(shí)考慮Precision和Recall,PR_AUC是Precision-Recall曲線下的面積,其能綜合反映分類器的性能。 表2所示為不同方法在淘寶查詢語料上的Precision、Recall、F1和PR_AUC值。圖4所示為不同方法在淘寶查詢語料上的Precision-Recall曲線。從表2可以看出,由于ClassPhrase只考慮了統(tǒng)計(jì)特征,在淘寶語料上容易學(xué)習(xí)到反序表達(dá),因此其性能最弱;AutoPhrase雖然在ClassPhrase的基礎(chǔ)上引入了基于詞性標(biāo)記的短語切分模型,能間接檢測(cè)出部分反序表達(dá),但在PR_AUC上提升較少;本文模型使用了基于實(shí)體標(biāo)記和詞性標(biāo)記的語義模型,能夠有效檢測(cè)出反序表達(dá),使得Precision達(dá)到76.5%,且F1和PR_AUC分別達(dá)到71.0%和78.7%,即本文短語挖掘框架在電商領(lǐng)域文本中的Precision、F1和PR_AUC相比對(duì)比方法均有明顯提升。 表2 3種方法在淘寶查詢語料上的評(píng)估結(jié)果 圖4 3種方法在淘寶查詢語料上的Precision-Recall曲線 協(xié)同訓(xùn)練初始訓(xùn)練樣本為200個(gè),每次迭代增加100個(gè)偽標(biāo)注樣本,迭代5輪,評(píng)估統(tǒng)計(jì)特征模型(FC)和語義增強(qiáng)模型(SC)的F1值變化情況,結(jié)果如圖5所示。 圖5 2種模型F1值隨迭代次數(shù)的變化曲線 從圖5可以得出: 1)統(tǒng)計(jì)特征模型和語義增強(qiáng)模型的性能在前幾輪迭代中都快速增長(zhǎng),這說明協(xié)同訓(xùn)練增加的樣本能夠有效提高模型的性能。在3輪迭代之后,由于偽標(biāo)注樣本噪音的影響,模型性能增長(zhǎng)逐漸平緩。 2)由于引入了實(shí)體標(biāo)記序列特征,語義增強(qiáng)模型的效果要明顯優(yōu)于統(tǒng)計(jì)特征模型。 綜上,Co-Phrase的協(xié)同訓(xùn)練過程能夠迭代優(yōu)化語義增強(qiáng)模型和統(tǒng)計(jì)特征模型的性能,降低人工標(biāo)注數(shù)據(jù)的成本,此外,通過實(shí)體標(biāo)記和詞性標(biāo)記序列構(gòu)建的語義增強(qiáng)模型在電商領(lǐng)域文本上取得了良好的效果。 為了驗(yàn)證基于Stacking的模型集成效果,本文對(duì)比不同模型的Precision-Recall曲線,結(jié)果如圖6所示。FC是統(tǒng)計(jì)特征模型,SC是語義增強(qiáng)模型,Co-Phrase是集成FC和SC的模型。FC、SC和Co-Phrase都使用迭代5輪之后的標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練。從圖6可以看出,Stacking方法能夠有效地集成不同模型的優(yōu)點(diǎn),提升模型的整體效果。 圖6 3種模型性能對(duì)比結(jié)果 本文短語挖掘方法的主要模塊及其時(shí)空復(fù)雜度分析如下: 2)候選短語特征抽取模塊:該模塊中詞性標(biāo)記、實(shí)體標(biāo)記和短語上下文特征抽取耗時(shí)較多。其中,詞性標(biāo)記由于文本序列較短,時(shí)空復(fù)雜度為O(N),實(shí)體標(biāo)記歧義較少,速度接近于字典法標(biāo)記,時(shí)空復(fù)雜度也為O(N),短語上下文特征抽取的時(shí)空復(fù)雜度為O(kN)。因此,該模塊總時(shí)空復(fù)雜度為O(N)。 3)基于語義增強(qiáng)的短語挖掘模型:該模型基于雙向LSTM對(duì)候選短語進(jìn)行分類,雙向LSTM的時(shí)間復(fù)雜度為O(w|U|),空間復(fù)雜度為O(|U|),其中,w是固定的模型參數(shù)個(gè)數(shù),而O(kN)=O(|U|),因此,該模塊的總時(shí)空復(fù)雜度為O(N)。 4)基于統(tǒng)計(jì)特征的短語挖掘模塊:該模塊使用隨機(jī)森林對(duì)候選短語進(jìn)行分類和訓(xùn)練。隨機(jī)森林在樹個(gè)數(shù)和深度固定的情況下,其時(shí)空復(fù)雜度為O(|U|)。因此,該模塊的總時(shí)空復(fù)雜度為O(N)。 5)模型集成模塊:該模塊在訓(xùn)練基分類器時(shí),時(shí)空復(fù)雜度是基于統(tǒng)計(jì)和基于語義的模型的線性疊加,時(shí)間復(fù)雜度為O(N)。在訓(xùn)練元分類器時(shí),使用邏輯回歸做分類,該分類器時(shí)空復(fù)雜度均為O(|U|),因此,該模塊總時(shí)空復(fù)雜度為O(N)。 上述各模塊的時(shí)空復(fù)雜度均為O(N),因此,本文模型框架總的時(shí)空復(fù)雜度為O(N),算法整體運(yùn)行時(shí)間隨著數(shù)據(jù)量的增長(zhǎng)而線性增加,即本文算法具備大數(shù)據(jù)處理的可行性。 本文研究電商圖譜中存在的語料反序問題,提出一種基于實(shí)體標(biāo)記與詞性標(biāo)記序列的語義增強(qiáng)模型,并針對(duì)電商領(lǐng)域語料標(biāo)注樣本成本過高的不足,構(gòu)建語義增強(qiáng)模型和統(tǒng)計(jì)特征模型的協(xié)同訓(xùn)練框架,以降低對(duì)人工標(biāo)注的要求。在此基礎(chǔ)上,利用基于Stacking的模型集成方法,整合語義增強(qiáng)模型和統(tǒng)計(jì)特征模型,提升模型最終的短語挖掘效果。實(shí)驗(yàn)結(jié)果表明,該模型的精確率和召回率較高,在淘寶查詢語料上取得了良好的短語挖掘效果。下一步將優(yōu)化基于語義的短語挖掘模型,引入單詞本身的信息,并更好地整合語義特征和統(tǒng)計(jì)特征,以高效評(píng)估短語的質(zhì)量。2.5 模型集成
3 實(shí)驗(yàn)結(jié)果與分析
3.1 實(shí)驗(yàn)設(shè)置
3.2 結(jié)果對(duì)比
3.3 迭代效果分析
3.4 模型集成效果分析
3.5 算法時(shí)空復(fù)雜度分析
4 結(jié)束語