張嘉宇,郭 玫,張永亮,李 梅,耿 楠,2,3,耿耀君
1.西北農(nóng)林科技大學 信息工程學院,陜西 楊凌 712100
2.西北農(nóng)林科技大學 農(nóng)業(yè)農(nóng)村部農(nóng)業(yè)物聯(lián)網(wǎng)重點實驗室,陜西 楊凌 712100
3.西北農(nóng)林科技大學 陜西省農(nóng)業(yè)信息感知與智能服務重點實驗室,陜西 楊凌 712100
蘋果是我國重要的經(jīng)濟作物,但是時常發(fā)生的病蟲害卻限制著我國蘋果產(chǎn)業(yè)的發(fā)展。而面對病蟲害問題時,由于基層蘋果種植從業(yè)人員缺乏專業(yè)知識,往往需要查閱專業(yè)書籍或通過搜索引擎來尋找相應的防治方法。搜索到的信息不僅存在碎片化問題還缺乏關(guān)聯(lián)性,易耽誤病蟲害防治最佳時間,使災情更加嚴重。且我國目前農(nóng)業(yè)人口老齡化現(xiàn)象嚴重,勞動力嚴重缺乏,自動化機器人等智能設(shè)備取代人類從事病蟲害防治工作已經(jīng)成為了未來蘋果種植業(yè)發(fā)展的必然趨勢,如何使得智能設(shè)備在人類先驗知識的指導下完成相關(guān)工作也是一個亟需解決的問題。因此,構(gòu)建細粒度蘋果病蟲害知識圖譜旨在將原本分散的數(shù)據(jù)進行整合,并實現(xiàn)數(shù)據(jù)之間的連通,形成一種具有細粒度知識組織結(jié)構(gòu)的知識系統(tǒng),便于對果農(nóng)和智能工具提供專業(yè)指導。
知識圖譜(knowledge graph,KG)一般以三元組(實體1,關(guān)系,實體2)作為基本元素來描述物理世界中的概念及其相互關(guān)系,這些三元組相互聯(lián)結(jié),構(gòu)成了一種揭示實體之間關(guān)系的語義網(wǎng)絡[1]。從覆蓋范圍來看,知識圖譜可以分為通用知識圖譜和行業(yè)知識圖譜[2]。其中,行業(yè)知識圖譜由于其準確度高的特性已被廣泛應用于醫(yī)學[3-4]、經(jīng)濟[5-6]、電力[7-8]等領(lǐng)域之中。近年來,農(nóng)業(yè)領(lǐng)域知識圖譜的構(gòu)建也逐漸引起了研究者們的關(guān)注。吳茜[9]根據(jù)實體類別分別構(gòu)建了三個子領(lǐng)域知識圖譜,并將子領(lǐng)域知識圖譜合并構(gòu)成了農(nóng)業(yè)領(lǐng)域知識圖譜;徐帥博等[10]使用ALBERT-BiLSTM-CRF模型進行命名實體識別,以規(guī)則匹配的方式構(gòu)成三元組關(guān)系,并搭建了枸杞病蟲害知識圖譜;井福榮[11]使用Protégé(https://protege.stanford.edu/)工具構(gòu)建了本體庫,并在該本體庫的指導下搭建作物種質(zhì)資源知識圖譜;汪敏[12]使用CiteSpace將收集到的茶樹病蟲害數(shù)據(jù)以圖譜的形式呈現(xiàn),直觀反映出了我國茶樹病蟲害防治的研究趨勢;吳賽賽[13]使用ME+R+BIESO標注法對實體和關(guān)系進行同步標注,大大減少了語料標注成本,以聯(lián)合抽取的方式完成知識抽取任務,并構(gòu)建了作物病蟲害知識圖譜;陳亞東等[14]將知識圖譜的構(gòu)建過程劃分4個層級,并從8類數(shù)據(jù)源中抽取知識,形成了蘋果產(chǎn)業(yè)知識圖譜。
通過對上述研究現(xiàn)狀的分析,當前農(nóng)業(yè)領(lǐng)域知識圖譜研究對本體定義的粒度較為粗糙,導致所包含的知識結(jié)構(gòu)不夠全面,難以直接在現(xiàn)實場景中應用。例如,文獻[10]僅定義了“病害名”“癥狀”和“農(nóng)藥”三種實體類型以及相對應的四種實體關(guān)系,缺乏大量病蟲害自身屬性信息以及防治知識;文獻[13]中雖然劃分出了精細的實體類型,但是在關(guān)系種類的定義上卻存在一定缺陷,尤其是只定義了單一的“防治農(nóng)藥”關(guān)系,而忽略了“噴灑”“涂抹”“浸泡”等具體防治措施,難以對相關(guān)智能設(shè)備進行準確指導。綜上所述,細粒度知識圖譜構(gòu)建研究對現(xiàn)代化農(nóng)業(yè)生產(chǎn)工作而言具有較大的理論意義和應用前景。
針對上述問題,本文以蘋果病蟲知識圖譜構(gòu)建為例,提出了一種細粒度蘋果病蟲害知識圖譜構(gòu)建方法。該方法采用自頂向下和自底向上相結(jié)合的方法構(gòu)建知識圖譜。首先在模式層對本體進行了細粒度定義,通過構(gòu)建更加精細的知識組織結(jié)構(gòu)以保證圖譜可以應用于現(xiàn)實場景。然后以知識圖譜構(gòu)建過程中不可或缺的兩個核心環(huán)節(jié):命名實體識別和關(guān)系抽取作為研究重點,使用符合蘋果病蟲害語料特點的深度學習模型抽取知識單元,避免過多的人工干預。最后將抽取出的三元組存入Neo4j數(shù)據(jù)庫實現(xiàn)圖譜的可視化,為精準病蟲害信息查詢,智能輔助診斷等后續(xù)工作奠定基礎(chǔ)。主要貢獻可以歸納如下:
(1)構(gòu)建了細粒度蘋果病蟲害領(lǐng)域本體庫。相較于其他農(nóng)業(yè)領(lǐng)域知識圖譜的本體庫,該本體庫更加詳細和精確,共包含19種實體類型和22種關(guān)系種類。
(2)標注了由蘋果病蟲害命名實體識別數(shù)據(jù)集和關(guān)系抽取數(shù)據(jù)集共同組成的知識圖譜數(shù)據(jù)集AppleKG,為蘋果病蟲害領(lǐng)域深度學習模型的訓練及相關(guān)實驗提供了數(shù)據(jù)基礎(chǔ)。
(3)提出了一種符合蘋果病蟲害語料特征的知識抽取方法。首先使用APD-CA模型進行命名實體識別,既避免了分詞錯誤帶來的影響,還在識別過程中引入了大量實體邊界信息及相似詞匯信息;然后使用ED-ARE模型充分利用語料上下文信息對實體間關(guān)系進行抽取。
知識圖譜的構(gòu)建方式主要可以分為自頂向下法和自底向上法[2]。由于本文旨在構(gòu)建細粒度知識圖譜,且蘋果病蟲害語料中實體與關(guān)系的構(gòu)成較為繁雜,因此采用自頂向下與自底向上相結(jié)合的方法構(gòu)建蘋果病蟲害知識圖譜。首先通過對蘋果病蟲害語料的初步分析,構(gòu)建知識圖譜的模式層;然后自頂向下進行知識抽取,在構(gòu)建數(shù)據(jù)層的過程中自底向上對模式層進行補充和改進。具體的知識圖譜構(gòu)建過程如圖1所示。
圖1 知識圖譜構(gòu)建框架圖Fig.1 Knowledge graph construction framework
其中,模式層中的主要任務是構(gòu)建蘋果病蟲害領(lǐng)域本體庫,并以此確定實體類型和關(guān)系種類。而數(shù)據(jù)層的構(gòu)建過程通常包含知識抽取、知識融合和知識更新三個步驟。但是由于蘋果病蟲害語料的領(lǐng)域性較強,語義上存在歧義的可能性較小,并且蘋果病蟲害領(lǐng)域的知識迭代更新速度較慢,長期都難以出現(xiàn)新的病害蟲害以及防治藥物。因此在蘋果病蟲害知識圖譜構(gòu)建過程中,對知識融合與知識更新兩部分的需求不高。本文將知識抽取作為數(shù)據(jù)層研究重點,著重研究命名實體識別和關(guān)系抽取兩部分內(nèi)容。
模式層是知識圖譜的核心,其中存儲的是從事實中抽象出的概念模型。通常使用本體庫對模式層中的概念,關(guān)系及屬性進行規(guī)范和描述。本文參照其他領(lǐng)域知識圖譜[15-18]的本體庫,并在西北農(nóng)林科技大學植保專家的指導下,確立了蘋果病蟲害領(lǐng)域中的概念類型及其之間的關(guān)系,最終提煉出了該領(lǐng)域的本體庫。
如圖2所示,首先預定義了4個父類概念,分別為蘋果相關(guān)信息、蘋果蟲害、蘋果病害、防治方法。之后在構(gòu)建數(shù)據(jù)層過程中對模式層進行完善和更新,對每一個概念進行了進一步的劃分。其中,蘋果相關(guān)信息根據(jù)蘋果自身的特性繼續(xù)劃分;蘋果病害和蘋果蟲害根據(jù)病蟲害侵害蘋果樹的部位,以及自身屬性進行分類;而防治方法則根據(jù)方法的表現(xiàn)形式以及防治中所用到的工具細化分類。最后,將細化后的概念作為實體類別。確定實體類別之后,對各實體類之間的關(guān)系進行精細定義,具體的關(guān)系如表1所示。在最終構(gòu)建的模式層中共包含19種實體類別和22種實體關(guān)系。
表1 關(guān)系類別詳細信息Table 1 Details of relation types
圖2 概念類型劃分Fig.2 Classification of concept
近年來,隨著蘋果病蟲害防治經(jīng)驗上的不斷積累和技術(shù)上的不斷改良與發(fā)展,現(xiàn)代的蘋果病蟲害防治領(lǐng)域已經(jīng)逐漸形成了部分專業(yè)的文本資料。本文以上述非結(jié)構(gòu)化的文本資料作為主要研究對象,標注蘋果病蟲害領(lǐng)域相關(guān)數(shù)據(jù)集,分析該領(lǐng)域語料特點,為知識抽取模型構(gòu)建研究確定研究方向,同時也為后續(xù)實驗奠定數(shù)據(jù)基礎(chǔ)。
1.2.1 原始語料采集
大部分知識圖譜構(gòu)建時常通過網(wǎng)絡爬蟲技術(shù)爬取網(wǎng)頁信息作為知識來源,但是網(wǎng)頁之間的專業(yè)程度良莠不齊,還可能包含部分錯誤知識,一定程度上會影響模型訓練以及知識圖譜的質(zhì)量。因此為了提升數(shù)據(jù)質(zhì)量,本文以專業(yè)文獻作為原始語料庫并從中抽取知識單元。首先在西北農(nóng)林科技大學植保專家的指導下,從西北農(nóng)林科技大學圖書館的館藏文獻中篩選出七本業(yè)內(nèi)較為權(quán)威的蘋果病蟲害防治相關(guān)專業(yè)文獻,具體文獻信息如表2所示。之后從中抽取文本信息,并對其進行去重,數(shù)據(jù)格式轉(zhuǎn)換等預處理操作。這些文獻年代跨度較大,可以從中抽取不同時期的蘋果病蟲害防治知識,使知識圖譜更加地全面。
表2 原始語料數(shù)據(jù)來源Table 2 Source of original corpus data
1.2.2 語料標注
獲取原始語料庫之后,本文對原始語料數(shù)據(jù)進行人工標注。歷時兩個月,最終完成了由命名實體識別數(shù)據(jù)集和關(guān)系抽取數(shù)據(jù)集共同組成的蘋果病蟲害知識圖譜綜合數(shù)據(jù)集AppleKG,該數(shù)據(jù)集的詳細信息如表3所示。其中,命名實體識別數(shù)據(jù)集包含19種實體類型、5 574條樣本和9 014個實體;關(guān)系抽取數(shù)據(jù)集包含22種關(guān)系類別、11 703條樣本和11 703條關(guān)系。在后續(xù)實驗中,命名實體識別數(shù)據(jù)集按照8∶1∶1的比例,關(guān)系抽取數(shù)據(jù)集按照6∶2∶2的比例劃分為訓練集、驗證集和測試集用于知識抽取模型的訓練和實驗。
表3 AppleKG數(shù)據(jù)集詳細信息Table 3 Details of AppleKG dataset
1.2.3 數(shù)據(jù)特征分析
為了進一步分析蘋果病蟲害領(lǐng)域語料數(shù)據(jù)的特征,本文將AppleKG數(shù)據(jù)集與其他領(lǐng)域中文語料數(shù)據(jù)集進行對比分析,該領(lǐng)域數(shù)據(jù)主要具有以下特點:
(1)蘋果病蟲害語料數(shù)據(jù)的專業(yè)性較強,包含較多領(lǐng)域術(shù)語和專有名詞,例如“對硫磷”“蘇云金桿菌”等防治藥劑名稱。直接將現(xiàn)有的自然語言處理工具應用于該領(lǐng)域語料數(shù)據(jù)會出現(xiàn)較大誤差。
(2)蘋果病蟲害語料一方面內(nèi)容豐富,實體和關(guān)系的類別較多;另一方面聚焦性強,三元組個數(shù)較其他領(lǐng)域語料相對較少。如表4所示,本文構(gòu)建的模式層包含19種實體類別和22種關(guān)系種類,明顯多于其他領(lǐng)域知識圖譜以及相同領(lǐng)域知識圖譜,但三元組個數(shù)少于其他領(lǐng)域知識圖譜。這意味著AppleKG中每種關(guān)系的樣本量比較少,要求算法能處理小樣本問題。
表4 不同知識圖譜比較Table 4 Comparison of different knowledge graphs
(3)部分蘋果病蟲害命名實體嵌套多個子實體,例如,“枝干樹皮裂縫”可以劃分為“枝干”“樹皮”“裂縫”三個子實體,導致實體邊界識別困難。
(4)蘋果病蟲害語料數(shù)據(jù)中各實體類別和關(guān)系類型的樣本分布不均勻。如表3所示,“蘋果樹部位”等常見實體類別和“危害”等常見關(guān)系類型均包含上千個樣本,而“病原菌”等稀有實體類別和“消毒”等稀有關(guān)系類型僅包含數(shù)十個樣本。樣本之間的不均勻分布導致了整體知識抽取準確性的下降。
本文根據(jù)蘋果病蟲害語料數(shù)據(jù)的特點,提出適用于該領(lǐng)域文本的知識抽取方法。該方法集成使用多種深度學習模型從語料中抽取命名實體及實體關(guān)系,并構(gòu)建三元組,促進了細粒度農(nóng)業(yè)知識圖譜構(gòu)建研究面向自動化方向發(fā)展。
知識抽取是數(shù)據(jù)層構(gòu)建過程中必不可少的核心環(huán)節(jié),它由命名實體識別和關(guān)系抽取兩個子任務組成,旨在用半自動化或自動化方法從非結(jié)構(gòu)化語料中抽取出以實體和關(guān)系所組成的知識單元。根據(jù)蘋果病蟲害語料的特點,本文構(gòu)建了APD-CA(apple disease and pest NER model based on character augmentation)模型和ED-ARE(encoding and decoding model for relation extraction of apple diseases and pests)模型分別從文本中自動抽取命名實體及實體關(guān)系。
1.3.1 基于APD-CA的命名實體識別
命名實體識別(named entity recognition,NER)旨在識別文本中具有特定意義或者指代性強的實體。本文主要面向中文蘋果病蟲害文本進行識別。由于中文不存在英文中較為明顯的實體形式標志,即句子中的詞匯之間被空格自然分割,因此中文命名實體識別不僅要確定實體的類別,還需要識別實體的邊界。通過對蘋果病蟲害語料的分析,蘋果病蟲害領(lǐng)域?qū)嶓w往往由多個名詞嵌套構(gòu)成,使得實體的邊界模糊;語料專業(yè)性較強,現(xiàn)有分詞工具在該領(lǐng)域數(shù)據(jù)上進行分詞會出現(xiàn)較多錯誤;且各實體類的樣本分布也極不均勻。針對上述問題,本文使用由本團隊提出的APD-CA模型[26]實現(xiàn)蘋果病蟲害領(lǐng)域命名實體識別任務,該模型具體結(jié)構(gòu)如圖3所示。
圖3 APD-CA模型結(jié)構(gòu)Fig.3 General architecture for APD-CA
APD-CA模型通過將詞匯序列信息以及相似詞匯引入基于字符的BiLSTM-CRF模型[27]來提升命名實體識別效果。對于一個字符序列s={c0,c1,…,cn},首先從預定義詞典中抽取出每個字符ct(0≤t≤n)的匹配詞匯wij(0≤i≤t≤j≤n)。之后為了防止語義信息的丟失,根據(jù)字符ct在詞匯wij中的位置將匹配詞匯分為四類詞匯集合{B,M,E,S},各集合的數(shù)學定義如公式(1)所示:
其中,i和j代表詞匯開始字符和結(jié)尾字符在字符序列中的下標,而{B,M,E,S}分別代表字符出現(xiàn)在詞匯的開頭、中間、結(jié)尾以及單字詞匯四種詞匯集合。如圖3所示,從預定義詞典中為字符“樹”匹配出四個詞匯,分別為:“樹根”“果樹根”“蘋果樹”和“樹”。根據(jù)字符“樹”在上述詞匯中的位置可以將四個匹配詞匯依次劃分至{B,M,E,S}四個集合中。
其次,為了能夠使模型可以并行處理多個句子樣本,需要將匹配出的詞匯向量融合為固定維度向量。該模型參考TF-IDF方法,根據(jù)匹配詞匯在語料中出現(xiàn)次數(shù)和出現(xiàn)頻率綜合評估該詞匯對當前句子樣本的重要性,并以此為權(quán)重對詞匯進行融合。當一個字符的匹配詞匯在數(shù)據(jù)集中各句子中出現(xiàn)的頻率不高,那么就足以說明這個詞匯對于當前句子樣本的重要性和獨特性,應當將該類詞匯的融合權(quán)重增大,保留更多語義信息,反之則相應減小該詞匯的權(quán)重?;谠~匯重要性的詞匯融合方法如公式(2)所示:
其中,R代表一個詞匯集合,w代表集合中的詞匯,f(w)代表詞匯w在數(shù)據(jù)集中的出現(xiàn)次數(shù),T代表數(shù)據(jù)集中的句子樣本總數(shù),n(w)代表詞匯w出現(xiàn)過的句子數(shù),N代表所有詞匯的權(quán)重之和。
然后,引入相似詞匯對字符語義信息進一步補充和增強。根據(jù)余弦相似度評估整體語料匹配詞匯集合中詞匯之間的相似性,并通過設(shè)置相似度值來篩選詞匯,將相似度高于該值的詞匯作為相似詞匯。具體示例如圖3所示,匹配詞匯“樹根”篩選出兩個相似詞匯“根”“根部”;而詞匯“蘋果樹”同樣篩選出兩個相似詞匯“梨樹”“桃樹”。篩選完成后,以相似度和原始詞匯出現(xiàn)次數(shù)的歸一化值為權(quán)重將所有相似詞匯融合為一個相似詞匯特征向量,具體融合過程如公式(3)所示:
其中,E代表四個匹配詞匯的集合,f(w)代表詞匯在數(shù)據(jù)集中的出現(xiàn)次數(shù),D代表E中所有詞匯出現(xiàn)次數(shù)之和。p代表詞匯w的相似詞匯,H代表經(jīng)過篩選后的詞匯w的相似詞匯的集合。k代表余弦相似度計算函數(shù),ew代表詞嵌入矩陣。
最后,使用上述詞匯融合方法將四個匹配詞匯集合中的詞匯依次融合為四個固定維度向量并與相似詞匯特征向量一同添加到字符原始表示向量xic(0≤i≤n)中:
其中,Xic代表進行語義增強之后的字符特征向量,G代表相似詞匯特征向量。得到增強過的字符表示Xic(0≤i≤n)后,將其輸入BiLSTM-CRF模型中進行實體識別。該模型通過引入詞匯序列及相似詞匯提供了豐富的語義信息和實體邊界信息,增強了模型對于實體邊界的識別能力,填補了由于樣本分布不均勻所導致的語義缺陷。并且該模型將字符特征向量作為每個時間步的輸入數(shù)據(jù),也有效避免了分詞錯誤帶來的影響。
1.3.2 基于ED-ARE的關(guān)系抽取
關(guān)系抽?。╮elation extraction,RE)的任務是給定一個由兩個實體構(gòu)成的實體對以及包含該實體對的句子,預測實體對之間的語義關(guān)系。本文針對蘋果病蟲害領(lǐng)域文本中各關(guān)系類別的樣本分布不均勻的問題,在BiGRU模型的基礎(chǔ)上,引入編碼解碼機制和注意力機制,提出一種用于蘋果病蟲害關(guān)系抽取的ED-ARE模型,模型具體結(jié)構(gòu)如圖4所示。
圖4 ED-ARE模型結(jié)構(gòu)Fig.4 General architecture for ED-ARE
由圖可知,該模型分為五層,分別為字符向量化層、編碼層、解碼層、注意力機制層和分類層。首先在字符向量化層將輸入的字符序列{c1,c2,…,cn}映射為低維的字符向量{e1,e2,…,en}。其次,將字符向量輸入編碼層得到序列編碼信息{h1,h2,…,hn},再經(jīng)過解碼層對上下文信息進行解碼并輸出序列{H1,H2,…,Hn},利用編解碼機制獲取更加豐富的上下文語義特征。本文在編碼層與解碼層均使用BiGRU模型,前向GRU模型如公式(5)~(8)所示:
其中,zt和rt分別代表更新門和重置門,ht-1代表前一個時間步傳入的隱藏狀態(tài),xt代表當前時間步的輸入,和ht則代表當前時間步的候選隱藏狀態(tài)和最終隱藏狀態(tài),而Wz、Wr和Wh代表相應的權(quán)重矩陣,bz、br和bh代表偏置值。反向GRU的定義同正向GRU一致,且正向GRU的輸出與反向GRU的輸出共同構(gòu)成了BiGRU模型的最終輸出。
然后,通過注意力機制捕捉字符序列中對識別實體間關(guān)系類別起決定作用的語義信息,提升關(guān)鍵信息的權(quán)重,從而提高模型關(guān)系抽取的準確率。注意力機制如公式(9)~(11)所示:
其中,H代表解碼層的輸出矩陣,W代表待訓練的權(quán)重矩陣,r則代表了輸出向量的加權(quán)之和。最終,通過softmax分類層得到蘋果病蟲害實體之間的關(guān)系。具體示例如圖4所示,ED-ARE模型將句子中“褐斑病”和“葉片”兩個實體之間的關(guān)系正確地識別為“危害”關(guān)系。
本文以標注完成的蘋果病蟲害領(lǐng)域綜合數(shù)據(jù)集AppleKG作為實驗對象,將構(gòu)建的兩個知識抽取模型與其他state-of-the-ar(tSOTA)模型進行對比。并進一步對命名實體識別模型的訓練效率和兩個模型的細化類別結(jié)果進行分析研究。
本文采用精確率(precision)、召回率(recall)、F1值(F1-score)[28]作為模型性能的評估標準。精確率體現(xiàn)了模型對負樣本的區(qū)分能力,精確率越高,模型對負樣本的區(qū)分能力越強;召回率體現(xiàn)了模型對正樣本的識別能力,召回率越高,模型對正樣本的識別能力越強。F1值是兩者的綜合,F(xiàn)1值越高,說明模型越穩(wěn)健。具體公式如下所示:
其中,S表示實際結(jié)果為正樣本的樣例個數(shù),A表示模型預測結(jié)果為正樣本的樣例個數(shù),T表示模型預測結(jié)果和實際結(jié)果均為正樣本的樣例個數(shù)。
本文的實驗環(huán)境如下所示:Intel?Core?i7-8550UCPU@1.80 GHz;Ubuntu 16.04.6;GPU型號為Geforce RTX 2080Ti;Python3.7;Pytorch 1.2.0。
為了驗證本文中基于APD-CA的蘋果病蟲害命名實體識別方法的優(yōu)越性,將該方法與BiLSTM-CRF、Lattice-LSTM[29]、LR-CNN[30]、WC-LSTM[31]和SoftLexicon[32]五種深度學習模型從模型性能和訓練效率兩個方面進行對比實驗。其中,模型性能實驗從模型整體性能以及具體類別性能兩個角度展開;而效率對比實驗將BiLSTM-CRF模型作為基線模型,采用每個epoch的相對訓練時間以及模型收斂速度作為模型效率的評估指標。實驗中使用的詞典為Lattice-LSTM中預訓練好的詞嵌入矩陣,包含70.4萬個詞匯。具體參數(shù)配置如表5所示。
表5 APD-CA模型參數(shù)設(shè)置Table 5 Hyperparameter settings of APD-CA
模型整體性能實驗結(jié)果以及模型相對訓練時間如表6所示,APD-CA模型相較于其他對比模型在三項評估指標上均達到了最佳結(jié)果,分別為93.08%、93.08%、93.08%,且訓練速度僅為基線模型的1.14倍。Lattice-LSTM雖然取得了較高精確率92.79%,但是由于模型構(gòu)造致使部分詞匯信息丟失,在一些極端情況下部分模型甚至會退化為基線模型,并且每個時間步獲取到的詞匯數(shù)量不一致導致模型無法并行化訓練,導致訓練速度緩慢。LR-CNN雖然通過卷積神經(jīng)網(wǎng)絡的堆疊以及Rethinking機制[33]解決了詞匯沖突問題,但是模型計算過于復雜,過多的參數(shù)需要通過模型訓練,本文構(gòu)建的數(shù)據(jù)集不足以支撐該模型的訓練,因此該模型識別效果不佳,F(xiàn)1值僅為91.29%,且仍存在效率問題。WC-LSTM雖然依靠對詞匯進行固定編碼大大提升了模型的訓練速度,但是該模型卻依舊忽略了字符出現(xiàn)在詞匯中間的情況,例如“輪紋病”該詞不會被引入字符“輪”所代表的特征向量中,從而造成了語義信息的丟失。SoftLexicon通過對詞匯進行分類很大程度上減少了語義信息損失,但是其直接使用了詞匯頻率作為融合權(quán)重,忽略了詞匯自身的重要性。APD-CA模型則克服了上述缺點,在蘋果病蟲害領(lǐng)域的命名實體識別中取得了較好的效果。由于在訓練過程中使用了大量的靜態(tài)數(shù)據(jù)作為模型參數(shù),訓練速度也隨之加快。
表6 命名實體識別模型性能對比Table 6 Comparison of performance of named entity recognition models
具體實體類別的識別結(jié)果如圖5所示。相較于對比模型,APD-CA模型對“種植區(qū)域”“蘋果樹部位”“害蟲生長時期”等9種實體類別的識別效果較好,達到了最佳的F1值,并且在“果實病害”“防治工具”“病菌特征”等6種實體類別上的識別效果與最佳模型極為接近。由上述實驗結(jié)果可知,APD-CA模型在整體數(shù)據(jù)上取得了較好的識別效果,解決了實體樣本分布不均勻所導致的識別效果下降的問題,并且提升了對“種植區(qū)域”“蘋果樹部位”等包含大量嵌套實體的實體類的識別效果,進一步證明了該模型的優(yōu)越性。
圖5 不同實體類別的F1值Fig.5 F1-score of different entity categories
各模型的收斂曲線如圖6所示,APD-CA模型在訓練10個Epoch之后趨于收斂,收斂速度與其他大部分模型保持一致。并且相較于其他模型,APD-CA模型在每個Epoch上的訓練時間更短,充分體現(xiàn)了該模型的訓練效率優(yōu)勢。因此無論從模型性能還是訓練效率均證明了基于APD-CA的蘋果病蟲害命名實體識別方法的有效性和優(yōu)越性。
圖6 模型收斂曲線Fig.6 Convergence curves of models
為了對比本文提出的基于ED-ARE的蘋果病蟲害關(guān)系抽取方法與其他深度學習模型的抽取效果,將該方法與CNN[34]、LSTM[35]、BLSTM[36]、Att-BLSTM[37]四種模型進行性能對比實驗。并對每種關(guān)系的實驗結(jié)果做出了詳細展示。該實驗具體參數(shù)配置如表7所示。
表7 ED-ARE模型參數(shù)設(shè)置Table 7 Hyperparameter settings of ED-ARE
模型整體性能實驗結(jié)果如表8所示,ED-ARE模型的精確率、召回率和F1值均優(yōu)于對比模型,分別為95.59%、93.88%、94.73%。ED-ARE的F1值相較于CNN高5.74個百分點,原因在于其克服了CNN不適宜學習長文本語義信息的缺點。ED-ARE的F1值相較于LSTM高4.5個百分點,因為ED-ARE使用了雙向GRU,相比LSTM不但考慮了上文信息,還考慮了下文信息。ED-ARE的F1值相較于BLSTM高3.42個百分點,這是由于ED-ARE模型中注意力機制有效提升了影響關(guān)系抽取的關(guān)鍵信息的權(quán)重,使得關(guān)系抽取的效果更好。EDARE的F1值相較于Att-BLSTM高3.41個百分點,相比Att-BLSTM,本文的ED-ARE模型引入了編碼解碼機制,在編碼層和解碼層中均采用了BiGRU網(wǎng)絡,GRU相比LSTM既可以學習長距離依賴信息,又由于參數(shù)少而效率更高,同時利用雙層BiGRU結(jié)構(gòu)充分學習蘋果病蟲害文本的上下文語義信息,獲取更加豐富的文本特征,增強ED-ARE模型的關(guān)系抽取能力。綜上可知,本文構(gòu)建的ED-ARE模型在蘋果病蟲害關(guān)系抽取任務中達到了最優(yōu)效果。
表8 關(guān)系抽取模型性能對比Table 8 Comparison of performance of relation extraction models 單位:%
各關(guān)系的實驗結(jié)果如圖7所示,ED-ARE模型在蘋果病蟲害數(shù)據(jù)集上的關(guān)系抽取效果總體上優(yōu)于對比模型,并在17種關(guān)系類別上的F1值表現(xiàn)較好。不同模型在各個關(guān)系類別上的表現(xiàn)有相似性,例如在“別稱”“分布”“屬于”等關(guān)系上,不同模型都達到了較高的F1值,這是因為這些關(guān)系類別在數(shù)據(jù)集中的樣本數(shù)量較多,模型可以得到充分訓練,實現(xiàn)好的關(guān)系抽取效果。在“消毒”“套袋”“灌溉”等關(guān)系上,不同模型的表現(xiàn)又有差異性,因為這幾種關(guān)系在數(shù)據(jù)集中的樣本數(shù)很少,模型難以充分學習到相應特征信息,因此表現(xiàn)效果不佳。相對來講,ED-ARE受樣本分布不均勻影響最小,尤其對于“套袋”關(guān)系來說,F(xiàn)1值遠遠高于其他模型,因為ED-ARE模型使用了雙層BiGRU結(jié)構(gòu),充分學習文本上下文特征,增強了模型關(guān)系抽取的性能。由此可見,本文提出的ED-ARE模型更適宜解決蘋果病蟲害關(guān)系樣本不均勻的問題。
圖7 不同關(guān)系類別的F1值Fig.7 F1-score of different relationships
獲取到經(jīng)過處理的知識之后,對知識的存儲及可視化是知識圖譜構(gòu)建過程中的重要環(huán)節(jié)。當前較為主流的圖數(shù)據(jù)庫有Neo4j、OrientDB、Arangodb、JanusGraph等。其中,Neo4j圖數(shù)據(jù)庫(https://neo4j.com/)因其高效的關(guān)系遍歷、完全ACID兼容和豐富的可視化界面等優(yōu)勢而被廣泛使用。因此本文將知識融合后的2 136個實體節(jié)點,5 345個三元組導入Neo4j圖數(shù)據(jù)庫進行存儲和表示。蘋果病蟲害知識圖譜的部分可視化實例如圖8所示。
知識圖譜構(gòu)建完成并實現(xiàn)可視化之后,主要可以應用于精準病蟲害信息查詢和智能病蟲害輔助診斷兩個方面:
(1)精準病蟲害信息查詢
信息查詢是知識圖譜最為基本且重要的應用方式,本文所構(gòu)建的細粒度蘋果病蟲害知識圖譜可以通過關(guān)鍵字對蘋果病蟲害相關(guān)信息進行檢索,并以圖的形式呈現(xiàn)查詢結(jié)果。例如在圖譜中查詢“蘋小食心蟲”,查詢結(jié)果如圖8所示,包含詳細的害蟲屬性信息以及精確的防治信息。而使用傳統(tǒng)搜索引擎或者通用知識圖譜對病蟲害信息進行查詢所得到的信息往往比較模糊且科普性較強,難以直接應用于現(xiàn)實防治場景中。具體實例如圖9所示,在百度百科上查詢出的結(jié)果為非結(jié)構(gòu)化文本信息,難以直觀體現(xiàn)知識之間的關(guān)聯(lián)關(guān)系;在通用知識圖譜“知識工廠”(http://kw.fudan.edu.cn/)中的查詢結(jié)果雖然同樣以圖的形式表示,但大多為該種蟲害的基本屬性,缺乏危害部位、防治措施等相關(guān)信息。
圖8 知識圖譜可視化示例Fig.8 Knowledge graph visualization example
圖9 查詢結(jié)果實例Fig.9 Query result example
(2)智能病蟲害輔助診斷
基于蘋果病蟲害知識圖譜的智能病蟲害輔助診斷可以憑借其包含的豐富知識對病蟲害進行精確診斷,并引導果農(nóng)科學治理果園,具體流程如圖10所示。當病蟲害發(fā)生時,果農(nóng)對病蟲害自身特征以及造成的危害癥狀進行觀察,輸入相關(guān)描述語句。之后,根據(jù)預定義詞典從輸入語句中提取詞匯信息并挖掘相似詞匯。在此基礎(chǔ)上,使用本文構(gòu)建的APD-CA模型和ED-ARE模型從中抽取命名實體及實體間關(guān)系形成三元組。然后,根據(jù)三元組信息構(gòu)建Neo4j數(shù)據(jù)庫中獨有的Cypher查詢語句對蘋果病蟲害知識圖譜進行搜索并返回搜索結(jié)果,即與查詢語句相關(guān)的子圖。最后,果農(nóng)通過搜索結(jié)果進行病蟲害診斷并采用相應的防治措施。如果查詢結(jié)果不符合當前狀況,還可以優(yōu)化相關(guān)Cypher語句進行二次查詢。
圖10 智能病蟲害輔助診斷流程Fig.10 Intelligent disease and pest assisted diagnosis process
通過分析蘋果病蟲害語料的特點,本文提出了一種自頂向下與自底向上相結(jié)合的細粒度蘋果病蟲害知識圖譜構(gòu)建方法。首先構(gòu)建了包含19種實體類型和22種關(guān)系種類的細粒度蘋果病蟲害領(lǐng)域本體庫。并在此基礎(chǔ)上,標注了蘋果病蟲害知識圖譜數(shù)據(jù)集AppleKG,為后續(xù)相關(guān)研究奠定數(shù)據(jù)基礎(chǔ)。然后提出了一種符合蘋果病蟲害語料特征的知識抽取方法,分別使用APD-CA模型和ED-ARE模型對命名實體和實體關(guān)系進行抽取。最后,使用Neo4j數(shù)據(jù)庫對知識圖譜進行存儲與可視化,并對基于細粒度蘋果病蟲害知識圖譜的相關(guān)應用進行了討論。
雖然本文在細粒度蘋果病蟲害知識圖譜研究中已經(jīng)取得了初步成果,但仍有可提升空間。在未來的工作中,需要進一步研究命名實體識別和關(guān)系抽取兩個子任務之間的內(nèi)在依賴關(guān)系,避免命名實體識別過程中產(chǎn)生的誤差進一步影響后續(xù)關(guān)系抽取的效果;同時,隨著蘋果病蟲害防治知識的發(fā)展與變化,如何對新抽取出的知識自動進行質(zhì)量評估并融入原有知識圖譜,提高蘋果病蟲害知識圖譜的智能化更新水平也是一個值得深入研究的方向。