日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用neo4j_知识图谱Task00:Neo4j安装配置

發布時間:2024/1/23 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用neo4j_知识图谱Task00:Neo4j安装配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

知識圖譜開源內容:

https://github.com/datawhalechina/team-learning-nlp/tree/master/KnowledgeGraph_Basic?19

學習目標

  • 理解知識圖譜的基本原理
  • 熟悉Neo4j并具備基本的調用相應python庫進行操作的能力。

任務安排

Task01:知識圖譜介紹(1天)

  • 知識圖譜簡介
  • 怎么構建知識圖譜
  • 知識圖譜的存儲
  • Neo4j 介紹與安裝
  • Neo4j 實戰
  • 通過 Python 操作 Neo4j
  • 通過csv文件批量導入圖數據

Task02:基于醫療知識圖譜的問答系統操作介紹(1天)

  • 引言
  • 運行環境
  • 搭建知識圖譜
  • 啟動問答測試
  • 代碼目錄介紹

Task03:Neo4j圖數據庫導入數據(1天)

  • 引言
  • Neo4j簡介
  • Neo4j 數據導入
  • 總結

Task04:用戶輸入->知識庫的查詢語句(2天)

  • 引言
  • 什么是問答系統
  • 任務實踐
  • 主體類 EntityExtractor 框架介紹
  • 命名實體識別任務實踐
  • 意圖識別任務實踐

Task05:Neo4j 圖數據庫查詢(2天)

  • Neo4j介紹
  • 基于知識圖譜的問題系統 主體類 AnswerSearching 框架介紹
  • 代碼分模塊介紹

打卡規則

  • 注冊 CSDN、Github 或 B站等賬戶。
  • 按照任務安排進行學習,完成后寫學習筆記Blog 或 進行視頻直播。
  • 在每次任務截止之前在群內填寫問卷打卡,遇到問題在群內討論。
  • 未按時打卡的同學視為自動放棄,被抱出學習群。

致謝

  • 特別鳴謝:QASystemOnMedicalGraph
  • 特別感謝 @LSGOMYP 對本項目的幫助與支持。
  • 特別感謝:datawhale組織本地活動!

知識圖譜Task00:Neo4j安裝配置(Centos)

安裝配置

一、CentOS服務器安裝neo4j并使用本地瀏覽器訪問

1、下載

wget?https://neo4j.com/artifact.php?name=neo4j-community-4.2.1-unix.tar.gz
#?注1:4.2.1需要java版本11.0+,如果你的java是8.0,可以下載neo4j-community-3.0.3
#?注2:如果下載速度比較慢的話,可以選擇手動下載,然后上傳到服務器
#?注3:如果未安裝jdk,請使用`yum install java-1.8.0-openjdk`

2、解壓

tar?-zxvf??name=neo4j-community-4.2.1-unix.tar.gz

3、啟動

cd?neo4j-community-4.2.1
bin/neo4j?start

啟動成功如下

2021-01-10?09:33:02.314+0000?INFO??No?SSL?certificate?found,?generating?a?self-signed?certificate..
2021-01-10?09:33:03.041+0000?INFO??Starting...
2021-01-10?09:33:05.307+0000?INFO??Bolt?enabled?on?localhost:7687.
2021-01-10?09:33:09.688+0000?INFO??Started.
2021-01-10?09:33:11.352+0000?INFO??Remote?interface?available?at?http://localhost:7474/

4、本地訪問

注:如果你是安裝在本地,那直接輸入http://localhost:7474/即可,以下步驟可跳過。

端口重定向

本地遠程訪問服務器的地址,需要在本地使用ssh鏈接,將服務器的7474端口重定向到本機.

在本地終端輸入以下命令

ssh?-L?7474:127.0.0.1:7474?usname@192.168.xxx.xxx

這時候打開http://127.0.0.1:7474,訪問成功!

二、通過 Python 操作 Neo4j

1、neo4j模塊:執行CQL ( cypher ) 語句

??# step 1:導入 Neo4j 驅動包

??from?neo4j?import?GraphDatabase
??# step 2:連接 Neo4j 圖數據庫
??driver?=?GraphDatabase.driver("bolt://localhost:7687",?auth=("neo4j",?"password"))
??#?添加?關系?函數
??def?add_friend(tx,?name,?friend_name):
??????tx.run("MERGE?(a:Person?{name:?$name})?"
????????????"MERGE?(a)-[:KNOWS]->(friend:Person?{name:?$friend_name})",
????????????name=name,?friend_name=friend_name)
??#?定義?關系函數
??def?print_friends(tx,?name):
??????for?record?in?tx.run("MATCH?(a:Person)-[:KNOWS]->(friend)?WHERE?a.name?=?$name?"
??????????????????????????"RETURN?friend.name?ORDER?BY?friend.name",?name=name):
??????????print(record["friend.name"])
??# step 3:運行
??with?driver.session()?as?session:
??????session.write_transaction(add_friend,?"Arthur",?"Guinevere")
??????session.write_transaction(add_friend,?"Arthur",?"Lancelot")
??????session.write_transaction(add_friend,?"Arthur",?"Merlin")
??????session.read_transaction(print_friends,?"Arthur")
??????

上述程序的核心部分,抽象一下就是:

??neo4j.GraphDatabase.driver(xxxx).session().write_transaction(函數(含tx.run(CQL語句)))

或者

??neo4j.GraphDatabase.driver(xxxx).session().begin_transaction.run(CQL語句)

2、py2neo模塊:通過操作python變量,達到操作neo4j的目的

??# step 1:導包
??from?py2neo?import?Graph,?Node,?Relationship
??# step 2:構建圖
??g?=?Graph()
??# step 3:創建節點
??tx?=?g.begin()
??a?=?Node("Person",?name="Alice")
??tx.create(a)
??b?=?Node("Person",?name="Bob")
??# step 4:創建邊
??ab?=?Relationship(a,?"KNOWS",?b)
??# step 5:運行
??tx.create(ab)
??tx.commit()

py2neo模塊符合python的習慣,寫著感覺順暢,其實可以完全不會CQL也能寫。

關注“格數致知”,走向對世界的深度認知

總結

以上是生活随笔為你收集整理的使用neo4j_知识图谱Task00:Neo4j安装配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。