国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于卷積神經(jīng)網(wǎng)絡(luò)的中文人物關(guān)系抽取方法

2018-09-17 07:52司文豪賈雷萍戚銀城
關(guān)鍵詞:向量詞語矩陣

司文豪,賈雷萍,戚銀城

(1.中國(guó)電建集團(tuán)華中電力設(shè)計(jì)研究院有限公司,河南 鄭州 450007; 2.華北電力大學(xué)電子與通信工程系,河北 保定 071003)

0 引 言

互聯(lián)網(wǎng)上絕大部分原始數(shù)據(jù)都是以非結(jié)構(gòu)化的自然語言形式存在,不能很好地被利用。信息抽取是把文本中包含的信息進(jìn)行結(jié)構(gòu)化處理,變成表格一樣的組織形式,以方便進(jìn)一步的分析、處理和應(yīng)用[1-2]。人物關(guān)系抽取是信息抽取的重要研究?jī)?nèi)容。從文本數(shù)據(jù)中識(shí)別出人名命名實(shí)體及表達(dá)二者關(guān)系的描述子,最后以〈people, relation, people〉的三元組的形式存入數(shù)據(jù)庫,可以進(jìn)一步對(duì)人物網(wǎng)絡(luò)行為進(jìn)行分析或應(yīng)用到知識(shí)問答、商業(yè)推薦、廣告系統(tǒng)等領(lǐng)域。

基于機(jī)器學(xué)習(xí)的方法進(jìn)行人物關(guān)系提取效果較好,但是需要人工選定特征。而卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)能從訓(xùn)練數(shù)據(jù)中自動(dòng)學(xué)習(xí)并提取特征,可以解決人工特征少而不全的缺陷,在自然語言處理領(lǐng)域得到應(yīng)用。文獻(xiàn)[3]提出一種動(dòng)態(tài)卷積神經(jīng)網(wǎng)絡(luò)(Dynamic Convolutional Neural Network, DCNN)結(jié)構(gòu),用其進(jìn)行句子的語義建模。該模型使用動(dòng)態(tài)池化方式,對(duì)一個(gè)線性序列做全局池化操作。該模型可以處理不同長(zhǎng)度的輸入句子,并在能夠明確捕捉短期和長(zhǎng)期關(guān)系的句子上引入特征圖。文獻(xiàn)[4]針對(duì)答案選擇問題提出了采用雙通道CNN來抽取輸入問題和答案之間的相似性與不相似性,整合成最終的句子向量并計(jì)算相似性。文獻(xiàn)[5]提出對(duì)單層CNN進(jìn)行敏感性分析,以探索模型各個(gè)組成部分對(duì)模型性能的影響,主要用于區(qū)分重要和相對(duì)不重要的句子分類設(shè)計(jì)。

本文將深度學(xué)習(xí)應(yīng)用到中文人物關(guān)系抽取上,提出一種基于CNN的中文人物關(guān)系抽取方法,并將該方法應(yīng)用到來自互聯(lián)網(wǎng)上的包含大量人物關(guān)系描述的中文短文本數(shù)據(jù)集上,用分類的方法抽取人物關(guān)系,達(dá)到較好效果。

1 中文文本挖掘預(yù)處理

1.1 文本樣本數(shù)據(jù)的預(yù)處理

文本樣本數(shù)據(jù)的預(yù)處理包括文本收集、文本清洗、編碼處理、文本流的語言學(xué)處理和數(shù)學(xué)處理等過程。利用爬蟲系統(tǒng)收集的網(wǎng)絡(luò)文本是以靜態(tài)頁面代碼的形式存在且包含很多無用數(shù)據(jù),需要進(jìn)行清洗、統(tǒng)一編碼、分詞、詞性標(biāo)注、去除停用詞等處理。在分詞和標(biāo)注詞性的同時(shí)還需要給每個(gè)詞分配一個(gè)權(quán)重,代表該詞在句子中的重要程度,即文本流的數(shù)學(xué)處理。本文采用基于條件隨機(jī)場(chǎng)(Conditional Random Field, CRF)的分詞模型[6]完成分詞工作。

1.2 基于分布式表示的詞向量表達(dá)

傳統(tǒng)的獨(dú)熱表示(one-hot representation)僅僅將詞符號(hào)化,不包含任何語義信息。實(shí)際上,詞的語義由其上下文決定[7-8]。分布式詞向量表示是用低維稠密的實(shí)向量來表示單詞,使得2個(gè)語義上相近的詞語映射到向量空間后在距離上相近。此外,低維空間的稠密向量用到深度學(xué)習(xí)模型中也不會(huì)有維數(shù)災(zāi)難問題。

谷歌的開源工具Word2vec用大量標(biāo)注的語料通過神經(jīng)網(wǎng)絡(luò)算法來訓(xùn)練語言模型,獲得每個(gè)詞語的向量表示[9-11]。

本文采用搜狗實(shí)驗(yàn)室公開的中文全網(wǎng)新聞?wù)Z料庫來訓(xùn)練Word2vec模型,該語料庫包含來自多家新聞?wù)军c(diǎn)近20個(gè)欄目的分類新聞數(shù)據(jù),涵蓋軍事、教育、財(cái)經(jīng)、旅游、體育、文化等多個(gè)領(lǐng)域,中文詞條數(shù)近4億。為了驗(yàn)證訓(xùn)練效果,即檢驗(yàn)詞向量中是否包含了原始詞語的語義信息,利用訓(xùn)練好的詞向量模型找與“林丹”相近的詞語,并通過余弦距離給出相似程度,相似度最高的前10個(gè)結(jié)果如表1所示。

表1 與“林丹”相似的詞語表

序號(hào)相近詞相似度1陶菲克0.692鮑春來0.653謝杏芳0.614疲于奔命0.605蓋德0.596張寧0.587湯杯0.568招架0.559羽壇0.5510敗下陣來0.52

將訓(xùn)練好的模型應(yīng)用到本文預(yù)提取人物關(guān)系的數(shù)據(jù)集上,來完成將劃分好的詞語轉(zhuǎn)化成詞向量表達(dá)的工作,每一個(gè)詞向量的維數(shù)為50。

GE等提出將氣相離散為大量氣體微團(tuán)[19],借助擬顆粒的運(yùn)動(dòng)狀態(tài)來描述氣體運(yùn)動(dòng),氣體與固體顆粒的相互作用由擬顆粒與固體顆粒的作用來代替;通過模擬氣體顆粒與真實(shí)固體顆粒之間的碰撞等相互作用,精確把握氣固兩相流動(dòng)中的一些宏觀現(xiàn)象和微觀特性,這種模型稱為擬顆粒模型。

2 基于CNN的人物關(guān)系抽取方法

2.1 總體方案

本文將經(jīng)典的CNN模型用于中文人物關(guān)系抽取,主要工作包含數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理和標(biāo)注,用CNN模型提取特征并分類,總體方案流程如圖1所示。

圖1 總體方案流程圖

設(shè)一個(gè)句子由n個(gè)詞組成,每個(gè)詞都用詞向量表示,則該句子可以表示為:

X1:n=X1⊕X2⊕…⊕Xn

(1)

其中Xi∈Rk代表句子中第i個(gè)詞的詞向量,且維數(shù)為k,⊕表示拼接操作。通常Xi:i+j表示詞語Xi,Xi+1, …, Xi+j的拼接。

設(shè)有一個(gè)包含h個(gè)詞語的窗口Xi:i+h-1,濾波器W∈Rhk可以抽取一個(gè)特征ci:

ci=f(W?Xi:i+h-1+b)

(2)

其中?表示卷積操作,b∈R是偏置項(xiàng),f是激勵(lì)函數(shù)。如果用濾波器遍歷句子中所有可能的詞語窗口,則可得提取的特征:

C=[c1,c2,…,cn-h+1]

(3)

其中C∈Rn-h+1,即特征圖。

本文采用的CNN模型結(jié)構(gòu)[12]如圖2所示。

圖2 CNN模型結(jié)構(gòu)圖

該CNN模型共有4層,具體如下:

1)輸入層是n×k的矩陣,該矩陣由句中所有詞語的詞向量從上而下排列組成,n和k分別表示詞語數(shù)量和詞向量維數(shù)。

2)卷積層通過卷積濾波完成特征抽取。濾波器的個(gè)數(shù)為F,濾波器大小為h×k, h表示句子中詞向量的個(gè)數(shù)。

3)池化層(Pooling)采用k-Max池化且k=1。這種池化方式可以把變長(zhǎng)輸入X整理成固定長(zhǎng)度的輸入。

4)全連接+Softmax層。池化層輸出的一維向量以全連接的方式,與Softmax分類器相連,輸出標(biāo)簽的概率分布。

2.2 訓(xùn)練方案

本文采用隨機(jī)梯度下降算法(Stochastic Gradient Descent, SGD[13])訓(xùn)練,學(xué)習(xí)率更新方法采用Adadelta[14],可以對(duì)學(xué)習(xí)率進(jìn)行自適應(yīng)調(diào)整。在模型的全連接層,采用Dropout[15]策略,即隨機(jī)選取要休息的神經(jīng)元。被選中的神經(jīng)元的權(quán)重在本批樣本訓(xùn)練中不更新,還保留原來的值,等到下批樣本到來時(shí),部分神經(jīng)元開始工作,另外一批神經(jīng)元開始休息,防止過擬合的同時(shí)也減少了計(jì)算量。

由于隨機(jī)梯度下降算法每次迭代只對(duì)一個(gè)訓(xùn)練樣本計(jì)算梯度,直到收斂為止,一旦遇到噪音就會(huì)出現(xiàn)局部最優(yōu)解問題。針對(duì)該問題,本文在SGD基礎(chǔ)上采用Mini-batch[16]策略,即從所有訓(xùn)練樣本中選取m個(gè)樣本作為一個(gè)批次進(jìn)行迭代,每次迭代也是使用1個(gè)樣本,最后得到m個(gè)梯度,再加權(quán)平均并求和作為本批次的下降梯度,直到收斂為止。

3 實(shí)驗(yàn)與結(jié)果分析

3.1 本文數(shù)據(jù)集

采用百度百科有“娛樂人物”和“行業(yè)人物”標(biāo)簽的人物數(shù)據(jù)作為待抽取人物關(guān)系的數(shù)據(jù)集。如短文本“2010年12月13日,林丹和謝杏芳的愛情長(zhǎng)跑修成正果,兩人在廣州市海珠區(qū)民政局登記結(jié)婚?!北疚膶?duì)5種人物關(guān)系進(jìn)行分類,分別為:配偶、分手(包含夫妻離婚,情侶分手2種情況)、情侶、父母子女、兄弟姐妹,每類關(guān)系標(biāo)注了1000條數(shù)據(jù)。

3.2 實(shí)驗(yàn)設(shè)計(jì)

數(shù)據(jù)集經(jīng)過預(yù)處理、詞向量轉(zhuǎn)化后得到的結(jié)果,以[Revs, W, W2, Word_idx_map, Vocab]格式保存在pkl文件“mr.p”中。由于詞向量的選取對(duì)實(shí)驗(yàn)結(jié)果有很大影響,其由2個(gè)參數(shù)決定:輸入詞矩陣的類型(Static和Non-Static)和詞矩陣的初始化。因此本文進(jìn)行了3種實(shí)驗(yàn),來驗(yàn)證前面得到的詞向量對(duì)模型性能的影響:

1)CNN-Rand:詞矩陣隨機(jī)初始化,矩陣類型為Non-Static,詞向量作為訓(xùn)練過程中可優(yōu)化的參數(shù)在訓(xùn)練過程中進(jìn)行更新。

2)CNN-Static:詞向量在模型訓(xùn)練中固定不變,矩陣類型為Static。

3)CNN-Non-Static:用訓(xùn)練好的詞向量初始化詞矩陣,詞向量作為訓(xùn)練過程中可優(yōu)化的參數(shù)在訓(xùn)練過程中進(jìn)行更新,矩陣類型為Non-Static。

3.3 實(shí)驗(yàn)結(jié)果及分析

利用3種模型對(duì)本文數(shù)據(jù)集進(jìn)行人物關(guān)系抽取實(shí)驗(yàn),提取配偶、分手、情侶、父母子女、兄弟姐妹這5類人物關(guān)系,實(shí)驗(yàn)結(jié)果如表2所示。

表2 3種模型的準(zhǔn)確率

模型準(zhǔn)確率/%CNN-Rand88.91CNN-Static92.67CNN-Non-Static92.87

很顯然,用已經(jīng)訓(xùn)練好的詞向量初始化詞矩陣得到的準(zhǔn)確率要比隨機(jī)初始化詞矩陣的模型準(zhǔn)確率高3.76%,表明預(yù)訓(xùn)練的詞向量確實(shí)包含了大量原始句子的語義特征,更容易被模型學(xué)習(xí)并分類。從詞矩陣類型上看,Non-Static比Static在模型準(zhǔn)確率上提高了0.2%,說明在CNN模型訓(xùn)練過程中對(duì)詞向量進(jìn)行適當(dāng)調(diào)優(yōu)也是有效果的。

對(duì)于準(zhǔn)確率最高的模型CNN-Non-Static,進(jìn)一步統(tǒng)計(jì)每類關(guān)系下模型分類正確的數(shù)量,得出該模型的召回率,見表3。

表3 5種人物關(guān)系的召回率

關(guān)系類別標(biāo)注數(shù)據(jù)/條召回?cái)?shù)/條召回率/%配偶100092092.0分手100080480.4情侶100079279.2父母子女100094194.1兄弟姐妹100088988.9

由表3可見,父母子女及配偶關(guān)系的召回率最好,情侶及分手的召回率相對(duì)較差,5類人物關(guān)系上的平均召回率為86.92%。情侶及分手的召回率相對(duì)較差的主要原因是情侶和分手這2類關(guān)系的原始文本對(duì)應(yīng)的人物有可能與配偶關(guān)系對(duì)應(yīng)的人物有重合,而一般描述配偶關(guān)系的詞語特征比較明顯,描述情侶和分手關(guān)系的詞語特征相對(duì)模糊。另外,情侶和分手這2類關(guān)系還更多依賴輸入語句前后的特征,需要模型具有一定的記憶功能,而本文采用的CNN模型沒有記憶功能,因此影響了這2類關(guān)系抽取的準(zhǔn)確率和召回率。

4 結(jié)束語

本文以互聯(lián)網(wǎng)上大量包含人物關(guān)系的中文自然語言文本為研究對(duì)象,以抽取其中的人物關(guān)系為目的,將人物關(guān)系抽取任務(wù)轉(zhuǎn)化成文本分類問題,利用卷積神經(jīng)網(wǎng)絡(luò)提取詞向量特征并對(duì)人物關(guān)系進(jìn)行分類。百度百科數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,該方法可以應(yīng)用到工程中完成對(duì)人物關(guān)系的抽取任務(wù)。

本文在對(duì)人物關(guān)系分類時(shí),沒有考慮人物性別屬性和人物關(guān)系的位置特征,因此無法識(shí)別出父子、母子等更細(xì)粒度的關(guān)系及誰是父親,誰是兒子。這需要在詞向量表達(dá)和構(gòu)建人物關(guān)系抽取模型時(shí)做進(jìn)一步優(yōu)化。

猜你喜歡
向量詞語矩陣
容易混淆的詞語
向量的分解
聚焦“向量與三角”創(chuàng)新題
找詞語
初等行變換與初等列變換并用求逆矩陣
向量垂直在解析幾何中的應(yīng)用
向量五種“變身” 玩轉(zhuǎn)圓錐曲線
矩陣
矩陣
矩陣
大田县| 永清县| 大悟县| 台北市| 洛川县| 桃江县| 新泰市| 紫云| 乐山市| 怀柔区| 隆安县| 湘西| 元氏县| 方正县| 廉江市| 西贡区| 肃宁县| 鹤岗市| 白城市| 安平县| 内乡县| 安丘市| 丹江口市| 盐亭县| 江北区| 南昌县| 嘉荫县| 乌什县| 越西县| 屏南县| 鄯善县| 缙云县| 图木舒克市| 廊坊市| 贵州省| 平顺县| 呼玛县| 芜湖县| 东乡县| 南通市| 涞源县|