王 超 王 崢
(1.南京烽火星空通信發(fā)展有限公司 南京 210019)(2.武漢郵電科學研究院 武漢 430074)
隨著社交網(wǎng)絡的近幾年的快速發(fā)展,推特、微博、微信等以短文本為主的社交網(wǎng)絡平臺已成為實時信息的主要來源,對社交媒體的分析也受到越來越多的關(guān)注[1~2]。目前在國內(nèi),微博平臺發(fā)展迅猛,其用戶量大,傳播速度快,貼近日常生活,在熱點事件的報導和傳播方面占據(jù)主導地位[3],諸多基于此類社交網(wǎng)絡的應用如關(guān)系抽取以及實體鏈接[4~5]等,首先必須依賴于微博文本中所涉及到的命名實體,因此對微博文本內(nèi)容進行命名實體識別,從而挖掘出社交媒體中的包含的信息如人物關(guān)系、輿論走向、熱點事件跟蹤等是一項很有意義的研究。
目前,國內(nèi)外命名實體識別的研究已趨于成熟,但主要是針對正式文本[6~8],而對非正式文本的研究也多集中在英文[9],針對中文非正式文本如中文微博的研究則相對較少[10~11]。對于亞洲語種(中文,日文,韓文等),詞與詞之間沒有固定的分隔符,對中文進行分詞通常是處理中文信息任務的基礎(chǔ),因此分詞的準確性會很大程度上影響命名實體識別效果,加之微博文本本身文本短,用語不規(guī)范,詞匯新奇,噪聲多的特點,使得分詞的準確性大大降低,從而導致傳統(tǒng)命名實體識別方法的性能在微博文本上會下降 20%[12]。
文獻[12]提出了基于拼音相似距離以及文本相似距離聚類算法對微博文本進行規(guī)范化,消除了微博的語言表達不規(guī)范造成的干擾。文獻[13]則是字位置嵌入來表征分詞信息,即在字嵌入的基礎(chǔ)上附加字的位置信息,其研究表明字的位置信息對命名實體識別有較大影響。
本文結(jié)合文獻[13]的研究,首先構(gòu)建微博語料對到LSTM中文分詞模型進行訓練,以提高分詞的準確性,然后對的分詞結(jié)果標注集合進行改進,使其分詞結(jié)果不僅攜帶字的位置信息,而且附加詞性信息,根據(jù)分詞結(jié)果選取適當?shù)腃RFs的特征模板,提高了命名實體識別的效果。
詞嵌入通過在一個連續(xù)的低維度空間中表示單詞,能夠捕獲詞匯的語義或語法的屬性,即相似的單詞會用相似的低維度向量表示,詞嵌入已經(jīng)在各種自然語言處理任務中取得了較好的效果[14]。而對于中文語言處理,由于沒有詞邊界,因此會為每一個漢字訓練一個字嵌入,這時通常會存在一個大小為|C|字符字典C,該字符字典一般從訓練集中提取,部分未知字符將會人工標注為一個特定的符號添加到字典中去。每一個中文字符c∈C會被表示成一個實向量vc∈Rd,其中d為向量空間的維數(shù),然后該向量會被加入到字嵌入矩陣M∈Rd×||C中去。在本文中,字嵌入向量將通過word2vec[15]獲取,作為2.2中分詞系統(tǒng)的輸入。
LSTM是循環(huán)神經(jīng)網(wǎng)絡(RNN)的擴展,用來避免RNN長期依賴問題,是目前應用廣泛的分詞模型,它的核心是一個記憶細胞c用來保持和更新當前狀態(tài)。記憶細胞的行為由三個“門”控制:輸入門(i)、忘記門(f)和輸出門(o)。定義在門上的操作為元素依次相乘,因此當門為非零向量是可以對輸入進行縮放,當門為零向量時可以忽略此時的輸入。輸出門上的輸出將會反饋給下一時刻t+1作為隱藏狀態(tài)以及作為神經(jīng)網(wǎng)絡當前時刻t的上一層輸入?!伴T”的定義以及細胞的更新和輸出如下:
其中σ表示sigmoid函數(shù),tanh表示雙曲正切函數(shù);i(t),f(t),o(t),c(t),分表示表示輸入門,忘記門,輸出門以及記憶細胞在時刻t的激活向量,均與隱藏向量h(t)∈RH2大小相同;帶有不同下標的參數(shù)矩陣Ws均為方陣,其中Wic,Wfc,Woc為對角矩陣。
在中文分詞任務中,LSTM記憶單元的輸入來自上下文窗口的漢字,對于每一個漢字,記憶單元的輸入為
由c(t-k1):(t+k2)中的字嵌入連接而成,其中k和k12分別表示距離當前漢字向左或向右的索引位置。其輸出會經(jīng)過一個線性變換:
之后,通過推理函數(shù):
來計算整個句子分詞標注序列級總得分。
已有的研究工作中常用的標注集有三種[16]:二詞位、四詞位和六詞位標注集,各詞位標注集的定義如表1所示。
表1 三類詞位標注集的定義
以上各詞位標注都是在不斷強化詞位置信息,而忽略了詞性信息,考慮到詞性是信息抽取中一個常用且有效的特征,且命名實體大多為名詞和動詞,極少含有形容詞、量詞和代詞等其他詞性的詞語且大多數(shù)命名實體都在兩個字及意思,為了減少標記任務的求解空間,本文采用三詞性-四詞位標注集作為LSTM的分詞標注,標注集的定義如表2所示。
表2 三詞性-四詞位標注集
條件隨機場(Conditional random fields)是一種用來計算在給定輸入隨機變量時,輸出隨機變量的條件概率的無向圖模型,它結(jié)合了最大熵模型和隱馬爾可夫模型的特征,具有表達長距離依賴性和交疊性特征的能力,能夠較好地解決標注偏置等問題,因此在命名實體識別等方面有著廣泛的應用。
線性鏈CRFs是基于一階馬爾科夫鏈的假設(shè),對于給定的觀測序列o=<o1,o2,…oT>,其對應的狀態(tài)序列s‘的概率定義如式(9):
其中Λ為模型的參數(shù)集,Z0為所有狀態(tài)序列上的歸一化因子,λk為特征權(quán)重可在模型訓練中采用極大似然估計獲得,fk為二值特征函數(shù)。
本文利用鏈式條件隨機場的推理過程對微博文本的觀測序列和訓練產(chǎn)生的參數(shù)λ,找出一個能夠準確標注微博文本中命名實體的最優(yōu)標記,利用維特比算法求取后驗概率Y*=argmaxp(Y|X)最大時的標記序列。
確定求解過程之后,需要選擇對應的文本特征,此處特征選取依然基于字級別的特征,由于2.2中的LSTM中文分詞已經(jīng)提供了當前字符詳細的分詞信息,因此可以大大簡化特征模板。文獻[17]選取了比較合適的基于詞語的特征模板和標記集合用于微博命名實體識別以及事件抽取,并取得相對較好的結(jié)果,本文將其特征模板和標記集合進行適當修改,選取了一個大小為5的觀測窗口用來提取當前字符的上下文特征,用來構(gòu)建特征模板,具體含義如表3所示。
表3 CRFs特征模板
由于特征模板是基于字級別的特征,所以本文定義了一個基于實體位置的標記集合用來表示當前字的實體類型,如表4所示。
表4 實體類型標注集合
本文利用新浪微博平臺提供的接口隨機抽取了2015年9月到2017年4月份的21之間的未標注的1,404,026條微博用于訓練word2vec字嵌入,word2vec采用Skip-Gram訓練目標,參數(shù)設(shè)置為默認值,所有的字嵌入為100維。
然后又抽取了同時間段的2600條至少包含三個命名實體的微博作為命名實體識別的語料庫,其中1800條經(jīng)過人工添加分詞標注以及命名實體類型標注作為訓練集,剩下未標注800條作為測試集。
本文設(shè)置了3組實驗。
1)ICTCLAS+四詞位標注:利用ICTCLAS2016分詞軟件對微博文本進行分詞,然后依照2.3構(gòu)建CRFs特征模板進行命名實體識別。
2)LSTM+四詞位標注:利用LSTM神經(jīng)網(wǎng)絡模型對微博文本進行中文分詞,沿用文獻[18]的LSTM分詞模型的參數(shù)設(shè)置,分詞結(jié)果采用四位詞標注結(jié)果,然后依照2.3構(gòu)建CRFs特征模板進行命名實體識別。
3)LSTM+三詞性-四詞位標注:用LSTM神經(jīng)網(wǎng)絡模型對微博文本進行中文分詞沿用Chen等LSTM分詞模型參數(shù)設(shè)置,分詞結(jié)果采用三詞性-四詞位標注結(jié)果,然后依照2.3構(gòu)建CRFs特征模板進行命名實體識別。
在命名實體識別性能評估中,采用了的P(準確率)、R(召回率)和F(綜合指F值)等評測指標,以F值為主要評測指標。
通過對測試集中的800條微博文本人工標記命名實體類型,將以上三組實驗的處理結(jié)果與人工標注結(jié)果進行對比,分別得到每組實驗的P值,R值以及F值如表5所示。
表5 不同實驗結(jié)果的比較
實驗表明,相比于通用分詞軟件,本文使用特定的微博文本對LSTM神經(jīng)網(wǎng)絡分詞模型進行訓練得到的分詞結(jié)果能夠明顯提升中文微博命名實體識別的效果;而在分詞標注中添加了詞性信息在一定程度上也提高了命名實體識別的的效果。
本文結(jié)合目前應用廣泛的LSTM中文分詞模型以及CRFs命名實體識別模型,通過特定的訓練集以及改進的分詞標注集,能夠有效提升中文微博命名實體識別的效果,但也存在以下兩點不足:1)只能針對特定中文微博文本領(lǐng)域;2)需要大量的人工標注。因此后續(xù)的研究工作要著重于將該方法應用到開放領(lǐng)域,以及尋找一種自動標注的機器學習方法進行改善。