MacOS安装知识图谱学习相关软件

深蓝学院的知识图谱课程需要安装以下软件:

1、 mysql

2、 pytorch

3、 pycharm

4、jupyter notebook

不用安装,下载即可使用

4、 Protege-5.5.0

5、 neo4j-community

6、 apache-jena

7、 apache-jena-fuseki-3.12.0

8、 d2rq-0.8.1

安装过程中碰到一些问题,总结一下方便后来者吧(其实直接在系统里安装好环境比虚拟机要好用很多):

mysql在mac上我们使用brew来管理是最方便的,安装brew如果使用国外默认地址会很慢,已经有高手写好了脚本,让你可以选择国内最大的几个镜像来安装,整个过程交互式的,没有难度了:

/bin/zsh -c"$(curl -fsSL https://gitee.com/huwei1024/HomebrewCN/raw/master/Homebrew.sh)"

感谢作者(https://blog.csdn.net/qq_29496469/article/details/113834952)

然后就可以使用

brew install mysql 来安装mysql最新版了

mysql.server start来启动

mysql.server stop 关闭

命令行访问mysql -uroot

如果要客户端访问,可以用pycharm,也可以用mysql workbench(官网的)

pytorch是python的库,省心点可以用anaconda,可以管理整个python环境,为不同的项目创建不同的环境,安装相同包的不同版本,个人数据科学省心推荐,但是公司要购买,可以用Miniforge3的conda代替(如果你的mac是最新的M1芯片,那么是不能安装anaconda的,只能使用Miniforge3的conda,命令行管理,其实对熟悉的人来说更方便),anaconda是可视化的,且提供了pycharm/jupyter notebook/jupyter lab等软件.

安装好anaconda或Miniforge3的conda之后,就可以用

conda install pytorch 来安装pytorch1.8.0版了

下面是直接可用的软件,在使用d2rq和jena的时候还是遇到很多问题的,先提供一下百度网盘地址,节省下载时间:

链接: https://pan.baidu.com/s/110AkcS1_ctzy-b9xceMRdg 密码: moj6

问题1:d2rq运行报错:

./generate-mapping -u root -o kg_demo_movie_mapping.ttl jdbc:mysql:///kg_demo_movie

Database connection to jdbc:mysql:///kg_demo_movie failed (user: root): Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property. (E54)

这个错误实际上是mysql-connect-java包有问题,下载5.1版最新的5.1.49,放到lib/db-drivers中,把原来的5.1.18删除,可以过了,只是有个提示,ssl默认的,可以指定关闭ssl

./generate-mapping -u root -o kg_demo_movie_mapping.ttl jdbc:mysql:///kg_demo_movie\?useSSL=false

这样是完全没有任何报错的

5.1.49版mysql-java包也在百度网盘中.


问题2:

./dump-rdf -o kg_demo_movie.nt ./kg_demo_movie_mapping.ttl

这个报错java.lang.IllegalArgumentException: Invalid version number: Version number may be negative or greater than 255

这个是我机器上的java版本是1.8.0.281,小版本281超过了255造成的,作者毕竟很早之前写的了...那时恐龙还是满地跑的...

有两个解决方案:安装jdk-11.0.10_osx-x64_bin.dmg,这个jdk小版本号不超过255,就搞定了.

还有就是安装1.8.0.xx降级版了(如果一定要用1.8的话)

搞定之后就可以启动d2rq-server了,这里略过了一些修改实体定义文件的细节,有需要的可以私信交流,movie项目运作起来应该看起来是这样的:

http://localhost:2020

在首页底部有SPARQL入口,基于ajax的sparql,链接:http://localhost:2020/snorql/

周星驰演过哪些电影:

SELECT ?n WHERE {

?s rdf:type :Person.

?s :personName "周星驰".

?s :hasActedIn ?o.

?o :movieTitle ?n

}

LIMIT 10


少林足球的演员表:

SELECT ?n WHERE {

?s rdf:type :Movie.

?s :movieTitle "少林足球".

?a :hasActedIn ?s.

?a :personName ?n

}

LIMIT 10


问题3:apache-jena用了最新版3.17,

Server ERROR Exception in initialization: the loading of content into /apache-jena-fuseki-3.17.0/run/configuration/fuseki_conf.ttl#model_inf was aborted because of Read-only object file

解决方案:

这是由于fuseki版本升级所导致的问题,ja:baseModel <#tdbGraph> ;改为 ja:MemoryModel <#tdbGraph> ;即可顺利运行。

问题4:运行后的fuseki_server没有数据,并没有add one等正常按钮,原因是设置问题,默认localhost被关闭了,解决:

进入 apache-jena-fuseki-3.17.0\run

修改 shiro.ini 配置文件

注释 /$/** = localhostFilter,然后重启


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容