農業知識圖譜:農業領域的信息檢索,命名實體識別
Github 鏈接:
Demo:
http://p2052x6533.iok.la:44910/
目錄結構:
.
├── MyCrawler// scrapy爬蟲項目路徑(已爬好)
│ └── MyCrawler
│ ├── data
│ └── spiders
├── data processing// 數據清洗(已無用)
│ └── data
├── demo// django項目路徑
│ ├── Model// 模型層,用於封裝Item類,以及neo4j和csv的讀取
│ ├── demo// 用於寫頁面的邏輯(View)
│ ├── label_data// 標註訓練集頁面的保存路徑
│ │ └── handwork
│ ├── static// 靜態資源
│ │ ├── css
│ │ ├── js
│ │ └── open-iconic
│ ├── templates// html頁面
│ └── toolkit// 工具庫,包括預載入,命名實體識別
│ └── KNN_predict
├── KNN_predict// KNN演算法預測標籤
├── dfs_tree_crawler// 爬取互動百科農業實體樹形結構的爬蟲
└── wikidataSpider// 爬取wiki中的關係
可復用資源
hudong_pedia.csv : 已經爬好的農業實體的百科頁面的結構化csv文件
labels.txt: 5000多個手工標註的實體類別
predict_labels.txt: KNN演算法預測的13W多個實體的類別
項目配置
系統需要安裝:
項目部署:
1、將hudong_pedia.csv導入neo4j:開啟neo4j,進入neo4j控制台。將hudong_pedia.csv放入neo4j安裝目錄下的/import目錄。在控制台依次輸入:
// 將hudong_pedia.csv 導入
LOAD CSV WITH HEADERS FROM"file:///hudong_pedia.csv"ASline
CREATE (p:HudongItem)
// 新增了hudong_pedia2.csv
LOAD CSV WITH HEADERS FROM"file:///hudong_pedia2.csv"ASline
CREATE (p:HudongItem)
// 創建索引
CREATECONSTRAINTON(c:HudongItem)
ASSERT c.titleISUNIQUE
以上兩步的意思是,將hudong_pedia.csv導入neo4j作為結點,然後對titile屬性添加UNIQUE(唯一約束/索引)
進入/wikidataSpider/wikidataProcessing中,將new_node.csv,wikidata_relation.csv,wikidata_relation2.csv三個文件放入neo4j的import文件夾中(運行relationDataProcessing.py可以得到這3個文件),然後分別運行
// 導入新的節點
LOADCSVWITHHEADERSFROM"file:///new_node.csv"ASline
CREATE(:NewNode { title: line.title })
//添加索引
CREATECONSTRAINTON(c:NewNode)
ASSERT c.titleISUNIQUE
//導入hudongItem和新加入節點之間的關係
LOADCSVWITHHEADERSFROM"file:///wikidata_relation2.csv"ASline
MATCH(entity1:HudongItem) , (entity2:NewNode)
CREATE(entity1)-[:RELATION {type: line.relation }]->(entity2)
LOADCSVWITHHEADERSFROM"file:///wikidata_relation.csv"ASline
MATCH(entity1:HudongItem) , (entity2:HudongItem)
CREATE(entity1)-[:RELATION {type: line.relation }]->(entity2)
以上步驟是導入爬取到的關係
2、下載詞向量模型:http://s3-us-west-1.amazonaws.com/fasttext-vectors/wiki.zh.zip將wiki.zh.bin放入 KNN_predict 目錄 。 (如果只是為了運行項目,步驟2可以不做,預測結果已經離線處理好了)
3、進入demo/Model/neo_models.py,修改第9行的neo4j賬號密碼,改成你自己的
4、進入demo目錄,然後運行腳本:
sudoshdjango_server_start.sh
這樣就成功的啟動了django。我們進入8000埠主頁面,輸入文本,即可看到以下命名實體和分詞的結果(確保django和neo4j都處於開啟狀態)。
4 月 AI 求職季
8 大明星企業
10 場分享盛宴
20 小時獨門秘籍
4.10-4.19,我們準時相約!
新人福利
關注 AI 研習社(okweiwu),回復1領取
【超過 1000G 神經網路 / AI / 大數據資料】
上交大 Acemap 團隊發布學術知識圖譜 AceKG,涵蓋 1 億多個學術實體
※CCF-GAIR 2018 將在 6 月底席捲鵬城,三大新玩法了解一下?
※用Pytorch 實現的 Capsule Network
TAG:AI研習社 |