?

湖北省潛江市小龍蝦產業知識圖譜關鍵技術研究

2022-06-06 05:32汪嘉珮熊曉亮蔡旭邵彎劉俊麗
科學與財富 2022年2期
關鍵詞:網絡爬蟲數據可視化知識圖譜

汪嘉珮 熊曉亮 蔡旭 邵彎 劉俊麗

摘?要:本文針對潛江龍蝦養殖領域知識分散和資源利用率低等問題,通過研究知識圖譜關鍵技術,應用知識圖譜相關技術來構建潛江小龍蝦產業知識庫,目的是幫助龍蝦養殖戶提供養殖技術;為客戶、散戶提供龍蝦方面知識庫,解決養殖戶查詢知識困難,客戶選擇產品獲取信息困難的問題;同時,該研究可以應用于產品推薦系統中幫助客戶進行選購方案決策。

關鍵詞:Neo4j;潛江龍蝦養殖;知識圖譜;網絡爬蟲;數據可視化

0 引 言

湖北潛江市漁業養殖近幾年來不斷發展,整體產業規模不斷增大,養殖面積不斷提高,主產區明顯聚焦,產量快速增長,同時,養殖戶所面臨的技術問題也越來越復雜,潛江小龍蝦在養殖的過程中所需要的養殖技術、面臨的病害難癥如果不能被及時解決,即使每年高校有大量水產專業的畢業生會去往潛江養殖基地就業,但是應屆生技術經驗薄弱,之前在校的實踐機遇比較少,書本上的知識更新速度是跟不上養殖的大環境發展的速度的,這樣能夠指導養殖的人才是比較欠缺的,容易造成在養殖環節理論與實踐脫節;為了龍蝦養殖方面的知識普及,本文將采用知識圖譜構建龍蝦養殖方面的知識庫,其中包括養殖方面的常識知識、養殖技術、防病防害技術。

1 知識圖譜

“知識圖譜”最起始為谷歌知識搜索功能的產品名稱,被學術界和工業界廣泛使用,成為各類結構化知識庫的統稱。知識圖譜,就是將人類知識結構化形成的知識系統,其中包括基本事實、通過規則和其他有關的結構化信息,可用于信息檢索、推理決策等智能任務。知識圖譜是人工智能研究和智能信息服務的基礎核心技術,能夠賦予智能體精準查詢、深度理解與邏輯推理等能力,被廣泛運用于搜索引擎、問答系統、智能對話系統及個性化推薦等知識驅動的任務。按照類型劃分,知識圖譜可以包含語言知識、常識知識、世界知識、認知知識、專業知識等,知識圖譜的特點是結構化,一般用三元組形式表示不同元素間的負責關系,從而形成一個復雜的網絡。

三元組作為知識圖譜的核心其表達形式分別為< 實體 1,關系,實體 2> 和< 實體,屬性,屬性值> ,以表示實體之間關系和實體的特征。用實體“潛江龍蝦”作例子,其種類包括“潛江龍蝦小青2-4、潛江龍蝦中青4-6、潛江龍蝦大青6-8、潛江龍蝦蝦苗、湖北潛江伊東藻、潛江螃蟹”。其中< 實體 1,關系,實體 2> 對應< 潛江龍蝦,種類,潛江龍蝦小青2-4> ,< 實體,屬性,屬性值> 對應< 潛江龍蝦,繁殖季節,全年> 。

2 Neo4j 圖數據庫

Neo4j 是基于 Java 的可視化良好的開源 NoSLQ 非關系型數據庫,存儲結構為圖形結構,由節點、關系和屬性組成,以實體表示節點,實體間的關系表示鏈接節點的有向邊,屬性為節點和關系提供具體信息[5]??梢杂行Ы鉀Q農業特殊性、開放數據共享、農業數據繁雜和農業知識獲取等問題。相比傳統數據格式,Neo4j數據庫信息更加直觀,而且使用Cypher語言查詢時,不需要復雜的連接運算。Cypher的查詢效率不會隨著數據的增加而降低。因此,本文將構建一種基于Neo4j的潛江龍蝦管理知識圖譜。

3 潛江漁類技術知識圖譜問題的構建

本文中知識圖譜的繪制用Mac系統版本的Neo4j,電腦為Mac Book Pro,處理器為2.6 GHz六核Intel Core i7,操作系統為mac OS Big Sur,驗證語言為Cypher語言。通過知識獲取、構建圖譜、知識圖譜更新及知識圖譜應用等4個步驟。將數據導入Neo4j圖數據庫中。

3.1模式層設計與構建

本文的數據源主要從潛江小龍蝦苗四寶水產網www.qjsbsc.com.cn、潛江小龍蝦源頭養殖基地網www.zqylp.com,定義了276 個實體,304 個關系。

3.2數據層設計與構建

數據層的構建包含各大實體類、屬性及實體間的關系。

構建模式層以龍蝦為一級實體,以品種、常見病害、生育期、繁殖方式等二級實體作為小龍蝦的屬性值,再以小青中青、大青大紅等三級實體作為品種的屬性值,以概述、特點等四級實體作為“小青中青、大青大紅”的屬性值。二級節點以水位管理技術、

4 知識存儲

本文將采用 Neo4j 來進行知識存儲。Neo4j 有三種知識導入方法:Cypyer 語法創建法、Load 命令導入法和 Shell 命令導入法。

4.1 知識的導入方法。

Neo4j數據庫知識導入3種方法之一是Cypher語言中的CREATE語句??梢噪S時插入數據更新知識,但當遇到大規模數據時,會偶爾出現數據重復、缺漏、錯誤等問題。第2種是Cypher語言的Load.csv文件的導入,需要將csv文件放入Neo4j的安裝目錄import下,可選擇本地或者遠程導入,而且不支持即時更新。第3種是官方提供的Neo4j-admin import工具,這種方法占用資源少,但是需要脫機導入,且只適用于初始化導入。

4.2 模塊導入。

第2步,依據得到的知識數據分別構建二級節點模塊,包括品種節點模塊、生育周期節點模塊、繁殖方式節點模塊、常見病害節點模塊、飼養管理節點模塊、水稻田間管理節點模塊、小龍蝦苗間選擇與放養模塊以及水稻品種選擇和栽培模塊。

(1)品種節點模塊。品種節點模塊包含若干個三級節點,即不同品種小龍蝦的名字,如小青、中青以及大青大紅等。每個三級節點都包含節點的名字、產地、介紹以及特點等屬性。發育全過程分為4個階段:幼體、幼蝦、成體、成蝦,以小青和大青大紅節點導入為例,具體的CREATE語句如下:

CREATE(大青大紅:小龍蝦{name:‘中青’,nationality:‘潛江’,introduce:‘大青大紅又稱紅頰,幼蝦獨立生活,主要攝食浮游動物,體長1.0~3.0 cm;’})

本模塊中包括二級節點品種和小青、中青等三級節點,所以建立的是上下位關系。同樣以小青和大青大紅節點為例,具體的構建語句為:

CREATE

(小龍蝦)-[:Include]->(小青),

(小龍蝦)-[:Include]->(大青大紅)

構建好品種節點模塊后,輸入“MATCH n:小龍蝦RETURN n”來查詢導入的品種數目是否與知識結構表中的品種數目相同,是否與之匹配。

(2)生育期節點模塊。生育期節點模塊包含二級節點生育期和發育全過程分為4個階段:幼體、幼蝦、成體、成蝦等三級節點。

CREATE

(小龍蝦)-[:Include]->(生育期),

(生育期)-[:Include]->(幼體)

(3)繁殖方式節點模塊。繁殖方式節點模塊包含二級節點繁殖方式和脫殼管理、稻田管理、水位管理、水質管理與日常巡查、防病除害等三級節點。每個三級節點中都有名字和介紹2個屬性。

(4)常見病害節點模塊。常見病害節點模塊包含二級節點常見病害和黑鰓病、爛鰓病、爛尾病、水霉病、纖毛蟲病等三級節點。每個三級節點都有名字和發病特點2個屬性。

4.3 知識圖譜更新

構建小龍蝦種植管理知識圖譜的目的是讓更多學者方便、快速了解小龍蝦知識,但是本知識圖譜的內容可能無法包含所有的小龍蝦品種以及與小龍蝦相關的知識,而且隨著科技發展,會出現越來越多的小龍蝦品種。本文所選用的知識導入方法的最大好處就是可以隨時更新知識,可以實現更新的知識第一時間出現在知識圖譜中。

本文構建的知識圖譜中刪減、更新內容是利用從底到端的方式進行的,一步一步逐層進行,防止刪除正確的知識或者導入更新知識導致關系構建錯誤。

4.4 知識圖譜的試驗驗證

4.4.1 Cypher語言查詢驗證。完成小龍蝦知識圖譜構

因為本文是關于小龍蝦的知識圖譜,所以主要是小龍蝦知識的查詢應用,下面舉例介紹。

查詢小龍蝦黑鰓病以及黑鰓病的防治方法:

match(p:常見病害{name:"黑鰓病"})return p或者match(p:常見病害)where p1.name="黑鰓病"return p1;

match(p1)-[:WAY]->(爛尾?。撼R姴『name:‘爛尾病’})return p1.概述

查詢結果如圖6所示,查詢時間僅需22 ms,要比其他查詢方法節省很多時間。

通過上述的一些舉例,本文構建的知識圖譜可以利用Cypher語言查詢到使用者需要的小龍蝦知識,查詢效率高于網絡查詢和書籍查閱,而且想要查詢的內容消息都是最新更新的,準確率也較高。

4.4.2 對比驗證。

本節針對不同使用人群通過使用不同查詢途徑做了試驗對比。具體使用人群為種植農戶、農學學者以及普通用戶,本文從中各選擇了2位;測評標準包括時間、準確率以及全面性。比如,種植用戶通過網絡去查詢或詢問有經驗的種植者;而農學學者通過知識圖譜查詢方式進行文獻和書籍查詢;普通用戶使用網絡和文獻相結合的方法查詢。在查詢時間上,基于Neo4j知識圖譜查詢方式占據了絕對的優勢;在準確率上,種植農戶和農學學者傳統查詢方式準確率要高于知識圖譜查詢方式,但是知識圖譜查詢方式的平均準確率要高于傳統查詢方式;從全面性來看,知識圖譜查詢方式處于劣勢,因為Neo4j知識庫初步構建,需要經過不斷完善。從總體考慮,Neo4j可以作為一個新型的知識庫逐漸代替傳統的知識庫。

4.5 存在的問題

本文在構建知識圖譜過程中,遇到了一些不可避免的問題。一是在構建知識圖譜時,利用csv文件將小龍蝦知識進行分類,用loadcsv方式將csv文件導入Neo4j中,但發現如何對知識結構進行整理是一大難題,因為一級、二級、三級節點以及它們的屬性各自交叉,因而對小龍蝦知識的整理不是那么理想。二是采用CREATE語句構建時,發現語句頗為繁瑣,而且當導入大量語句時,會出現導入速度緩慢問題。

5 潛江龍蝦養殖知識圖譜可視化展示

Shell 命令導入法使用 neo4j-admin import 工具進行數據導入

6 結語與展望

本文初步設計了潛江龍蝦養殖領域語義類型和語義關系,對知識圖譜技術、構建流程和圖數據庫進行了介紹,采用 Neo4j進行知識存儲,開發了潛江龍蝦養殖領域知識圖譜可視化平臺,實現了實體查詢功能,幫助養殖戶提高專業技術知識,增加潛江龍蝦養殖領域信息資源利用率,并為潛江龍蝦領域知識圖譜系統研究奠定基礎。本文潛江龍蝦養殖數據為人工實體抽取,從多源異構數據中自動識別高精度實體仍是知識圖譜的最大難點之一。下一步將深入研究潛江龍蝦養殖領域的自動實體抽取技術,實現潛江龍蝦知識圖譜智能問答等功能,為養殖戶提供更智能的信息獲取服務。

參考文獻

[1]周井娟.中國潛江龍蝦養殖業發展軌跡及技術變遷[J].中國農學通報,2016,32(8):22-29.

[2]Tong P, Zhang Q, Yao J. Leveraging Domain Context for Question Answering Over Knowledge Graph [J]. Data ence and Engineering, 2019, 4(4) : 323-335.

[3]婁國哲,王蘭成.基于知識圖譜的網絡輿情知識組織方法研究[J].

[4]情報理論與實踐,2019,42(1):58-64.

[5]袁培森,楊承林,宋玉紅,等.基于 Stacking 集成學習的水稻表型組學實體分類研究[J].農業機械學報,2019,50(11):144-152.Shenshouer.Neo4j[EB/OL].[2016-05-21].http ://neo4j.org/.

[6]徐增林,盛泳潘,賀麗榮,等.知識圖譜技術綜述[J].電子科技大學學報,2016,45(4):589-606.

作者簡介:汪嘉珮(1995-),女,漢族,湖北省孝感市,碩士研究生,助教,研究方向:人工智能、計算機應用。本文通訊作者:熊曉亮。

基金項目:武漢工商學院2021年校級科學研究項目“湖北省潛江市小龍蝦產業知識圖譜關鍵技術研究”(A2021015,主持人:汪嘉珮);

猜你喜歡
網絡爬蟲數據可視化知識圖譜
大數據時代背景下本科教學質量動態監控系統的構建
可視化:新媒體語境下的數據、敘事與設計研究
煉鐵廠鐵量網頁數據獲取系統的設計與實現
基于R語言的大數據審計方法研究
基于知識圖譜的智慧教育研究熱點與趨勢分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合