鮑玉來 耿雪來 飛龍
關鍵詞:卷積神經網絡;關系抽取;旅游信息;詞向量
隨著“互聯網+旅游業”的不斷發展演進,旅游信息的傳播方式生發生了很大變化,涌現出大量的關于旅游網站和手機應用程序,隨之產生了大量的、冗余的旅游信息資源,“信息過載”問題也隨之產生。知識圖譜(Knowledge Graph)的提出主要被用來優化和完善當前的搜索引擎。知識圖譜能夠更好地查詢較為繁雜的相關信息,分析查詢語義.來理解用戶的查詢需求.從而改進搜索質量。在構建知識圖譜、知識庫過程中,語義抽取和處理是必要的前提.語義抽取的質量決定著知識圖譜的構建質量。語義抽取包括實體、關系和屬性等知識要素抽取。其中,關系抽取是語義抽取研究中的重要內容,是構建知識圖譜的重要步驟,實體關系抽取的準確率將極大影響所構建的知識圖譜的質量,因此研究關系抽取問題對構建知識圖譜有著積極意義。
1研究現狀
在早期的關系抽取中,人們主要是利用人工構造語義規則和模板的方法來判斷實體之間的關系后來.人工預定義的語法與規則被實體間的關系模型取代,如面向開放域的信息抽取框架;馬爾可夫邏輯網的抽取、本體推理的抽取方法_。上述傳統的關系抽取模型需要人工進行特征設計,其性能取決于人工特征設計的質量。近年來,深度神經網絡技術被越來越多地應用到關系抽取任務中.其中卷積神經網絡因其優秀的特征提取能力在實體關系抽取任務中表現出優異性能。萬靜等提出的基于循環卷積神經網絡和注意力機制的關系抽取模型,該模型包括雙向GRU的向量表示、PC.NN的特征學習和注意力權重學習.通過在NewYork Times數據集上的實驗表明,基于神經網絡的關系抽取方法可以避免一些NLP工具的錯誤,更加準確地學習到句子的語義信息_。張曉斌等應用卷積神經網絡結合雙向長短期記憶網絡的實體關系抽取模型,在SemEval-2010 Task 8數據集上取得了不錯的效果。在面向中文專業領域的關系抽取目前研究并不多見。杜嘉等面向煤礦領域知識圖譜構建,應用循環神經網路進行了煤礦專業領域本文文本的關系抽取研究,實驗結果表明詞向量可以更好地表現出文本數據中詞匯間的內在聯系。本文面向中文旅游領域信息資源,探索采用詞向量的方式表示文本數據.繼而通過卷積神經網絡獲取特征并進行分類的關系抽取方法。
2卷積神經網絡關系抽取模型
2.1卷積神經網絡
卷積神經網絡是深度學習中經常使用的網絡模型,其在計算機視覺、自然語言處理等領域有重要應用。CNN網絡的結構模型主要有5部分組成,分別是:輸入層、卷積層、池化層、全連接層以及輸出層,如圖1所示。首先將原始數據通過輸入層載入模型,其次通過卷積層進行卷積運算.通過卷積層后可以得到特征圖。池化層對輸出參數進行優化,得到對應的特征映射圖。緊接著再利用下一層卷積層對這些映射圖進行卷積操作得到特征圖,再對特征對進行池化操作,得到新的特征映射圖;通過降采樣,將其送人全連接層。依次逐層訓練這樣的訓練過程就可以得到原始數據的特征向量。將這些特征向量通過全連接層進入分類器進行最后的分類結果輸出。
2.2Word2Vec
Word2vec是一個處理文本的雙層神經網絡。它的輸入是一個文本語料庫,它的輸出是該語料庫中單詞的特征向量。Word2vec首先根據訓練文本數據構建詞匯表,然后學習單詞的矢量表示。生成的單詞矢量文件可以用作許多自然語言處理和機器學習應用程序中的特征。雖然Word2vec不是深度神經網絡.但其將文本轉換為深度學習可以理解的數字形式。Word2vec創建的向量是單詞特征的分布式數字表示,諸如單個單詞的上下文特征。因此,Word2vec通過CBOW和Skip-Gram兩種方式,可以根據上下文對單詞的含義進行高度準確地發現。CBOW模型的訓練輸入是某一個特征詞的上下文相關的詞對應的詞向量,而輸出就是這特定的一個詞的詞向量。Skip-Gram模型與CBOW相反,即輸入是特定的一個詞的詞向量,而輸出是特定詞對應的上下文詞向量。這些猜測可以用來建立一個單詞與其他單詞的關聯,或者按主題進行文檔聚類。由于本文所使用的語料規模不是特別大,所以選擇Skip-gram模型進行詞向量的轉化。
Skip-gram模型有3層結構,分別是輸入層、投影層和輸出層。所有詞的詞向量都存在于隱藏層的參數矩陣之中。模型的輸入是目標詞,輸出是目標詞的上下文。例如:當設置窗口為2的時候,對于輸入的詞W,其輸出的是W的2個上下文詞匯模型圖如圖2所示。
2.3模型設計
使用卷積神經網絡自動提取和學習句子特征,其中在窗口處理的部分.使用了詞特征和位置特征作為基礎特征并把它們進行線性組合。為了下一步的卷積運算,我們將這些線性特征轉化成對應的特征向量。卷積運算完成后,再通過非線性的轉化的方式得到句子層級的特征。神經網絡結構如圖3所示。
為了更好地表達特征,我們以詞嵌入作為基礎特征。而對詞性特征進行選擇時,也關注了實體詞本身以及其前后兩個詞的詞性,據此可以充分表達出詞性特征。在詞匯特征這部分主要考慮4個部分:實體1;實體2;實體1前后兩個詞的詞性;實體2前后兩個詞的詞性。通過Word2Vec獲取詞特征(WF),但僅靠WF是得不到完整特征信息的,加入位置特征(PF),來指定句子中的輸入標記對應的目標名詞。
位置特征是將每個詞分別與兩個實體之間的相對距離進行組合。例如,如圖5所示,前面句子中的“是”到實體“哈素?!焙汀?2平方公里”的相對距離分別是3和-1。
這里,把相對距離轉換成一個隨機初始化的維度向量d,然后求得相對距離的向量d和d,其
盡管詞向量具有強烈的特征表達能力,其利用窗口中得到的上下文特征向量來推理出句子中對應的上下文特征信息,但是它有一定的局限性,即只能在句子中每個詞的周圍產生的是局部特征信息。CNN網絡可以融合這些特征,因此,本文采用線性變換來處理窗口,具體方式如式(1)所示:
利卷積層處理特征信息的過程,是將選中的詞向量利用卷積矩陣轉換為對應的上下文特征的向量的過程,式(2),卷積層對窗口中的每一個詞組進行處理之后,輸出的是每個詞對應的上下文特征向量,而且其對應的僅僅是局部特征。
3.2人工標注
在關系抽取的過程中,本文共定義位置、星級、適宜季節、修建時間、展覽、庫存容量、面積、代表項目、海拔、長度、深度以及其他12個屬性關系。人工標注訓練級格式采用SemEval 2010
3實驗設計
3.1數據預處理
在百度、攜程、去哪兒等一些網站上通過爬蟲獲取基礎語料集,共爬取1500多篇有關旅游領域(內蒙古境內)的非結構化文本,首先進行數據清洗,去除標點符號;然后利用漢語分詞工具進行分詞,停用詞典、自定義詞典。首先進行分詞處理,以空格隔開,使文本轉換成指定的格式,如圖6所示。
3.3詞向量
使用Gensim實現Word2Vec Skip-gram模型,在本實驗中,詞向量的維度大小定為200維;滑動
3.4CNN
應用Python深度學習工具包Keras實現卷積神經網絡,其基本參數為,隱藏層設置為2個,而且它們的節點個數分別是100和200,還將卷積窗口大小設置為3。標注1000篇作為訓練樣本,500篇作為的測試樣本,訓練樣本中有句子4682個,關系屬性15976個,測試樣本中關系屬性共有7861個。
4實驗結果
實驗抽取到7558個,其中正確的屬性關系有5974個。在關系抽取是同樣使用這3個評估標準,只是計算公式有所變化.公式如下:
在實驗中,選取了詞匯級、句子級、詞匯+句子級3種不同的特征進行試驗,其中詞匯特征和句子特征結合作為分類特征的試驗結果最好,如表1、圖8所示。
本文探索了應用卷積神經網絡和詞向量模型進行旅游信息實體關系抽取方法.該方法通過Word2Vee來學習詞語的上下文信息.使用卷積神經網絡獲取更多的特征信息并進行分類。實驗證明了本文方法能有效地在非結構化的旅游信息文本中實現關系抽取。