ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

知识图谱(1)-- 跑通大佬的demo

2018-11-26 18:00:05  阅读:27  来源: 互联网

标签:



一. 环境和工具

操作系统: linux16.04

语言: python2.7,java8

工具:Apache jena fuseki

python工具包: jieba,REFO,SPARQLWrapper

项目:大佬的项目:KG-demo-for-movie(大佬项目对应的文章:https://zhuanlan.zhihu.com/knowledgeg…

二. 搭建过程

1. linux16.04

linux下载地址,如果速度慢,建议使用迅雷下载。

2. python2.7

这里我先安装了Anaconda,然后通过Anaconda创建了虚拟环境

在控制台输入:
conda create -n venv python=2.7
即创建了一个名为venv的虚拟环境,且python版本为2.7,
这里有一个需要注意的地方, 即使你下载的是Anaconda3,也是可以创建一个python版本为2.7的虚拟环境的。

 创建好虚拟环境后,就需要在运行对应代码之前激活虚拟环境,执行以下代码即可激活虚拟环境。

source activate venv

3. 安装jdk8(java8)

登陆网址jdk8下载地址

选择对应jdk版本下载。

下载完成之后,开始安装和配置环境:

1. 解压:
mkdir -p /usr/lib/jvm
tar -zxvf jdk-8u131-linux-x64.tar.gz -C /usr/lib/jvm

2. 设置环境变量:
vim /etc/profile

3. 在最后面添加:
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_131  
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export  PATH=${JAVA_HOME}/bin:$PATH

4. 执行profile文件:
source /etc/profile
这样可以使配置不用重启即可立即生效

5. 检查新安装的jdk:
java -version

 4. 安装Apache jena fuseki

前往官网下载jena和jena-fuseki,解压在同一个文件夹下即可。

启动fuseki-server:

cd apache-jena-fuseki-3.9.0 
fuseki-server --config fuseki_conf.ttl
其中fuseki_conf.ttl为后面的项目中将会介绍的一个文件。

5. 安装python工具包

 pip install jiaba SPARQLWrapper refo

6. 下载大佬的项目:

git clone https://github.com/SimmerChan/KG-demo-for-movie

 ok! 到这里,东西都准备好了,然后就是跑通一下大佬的demo了。

三. 项目搭建

1. 下载项目

参考2.6

2. 启动服务器

参考2.4

3. 向服务器上传数据

这里我采用服务器启动后在管理后台上传数据,原谅我比较笨,没有成功命令上传。

1.  访问服务器
http://localhost:3030
2. 点击add data按钮
3. 点击select files..
4. 选择项目下的kg_demo_movie.nt,然后点击upload。

ok,接下来开始运行项目。

4. 运行项目

1. 首先,进入虚拟环境
source activate venv

2. 接着执行KB_query目录下的query_main.py文件。
python query_main.py

3. 开始愉快地测试:
    
    周润发演了那些电影?
    英雄本色.....(这里我就不贴了)
        
    周润发演了多少部电影?
    62

    周润发姓什么?
    I can't understand. :(

 噢,终于跑通了一个demo,超级开心,感谢大佬的教程和代码!

四. 总结

接下来会更进一步地研究代码,然后再根据大佬的教程,更进一步地解析知识图谱的整体过程。

当然,这个也只是知识图谱中的一种方法而已,并不代表整个知识图谱,学习的路还很长。

五. 参考

1. 揭开知识库问答KB-QA的面纱

2. 知识图谱-给AI装个大脑

建议先看第一个专栏,再看第二个专栏,第一个专栏可以快速了解知识图谱,第二个专栏会有很多专有名词,看起来比较费劲,不过也是本文demo的说明专栏。

 



标签:

专注分享技术,共同学习,共同进步。

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有