OpenKE-PyTorch使用

知识嵌入库OpenKE-Pytorch的使用

相关链接

使用pytorch实现的知识嵌入开源框架
github链接 OpenKE-Pytorch
官网链接 OpenKE

简单介绍

这是一个基于PyTorch的知识表示学习(KRL)的高效实现。我们使用C++来实现一些底层操作,如数据预处理和负采样。对于每个特定的模型,它是由PyTorch与Python接口实现的,因此有一个方便的平台可以在GPU上运行模型。OpenKE由4个存储库组成

  • OpenKE-PyTorch:基于PyTorch的项目,它为知识图谱嵌入模型提供了优化和稳定的框架。

  • OpenKE-Tensorflow1.0。用TensorFlow实现的OpenKE,同样为知识图谱嵌入模型提供了优化和稳定的框架。

  • TensorFlow-TransX:基于TensorFlow的轻量级和简单版本的OpenKE,包括TransE、TransH、TransR和TransD。

  • Fast-TransX:利用OpenKE的框架对TransE及其扩展模型进行高效的轻量级C++推理,包括TransH、TransR、TransD、TranSparse和PTransE。

模型

截至2021.11支持如下的嵌入模型:

OpenKE (PyTorch):

  • RESCAL
  • DistMult, ComplEx, Analogy
  • TransE, TransH, TransR, TransD
  • SimplE
  • RotatE

安装方式

这里使用openke-pytorch版本

  1. 下载pytorch
  2. Clone OPenKE-Pytorch部分
git clone -b OpenKE-PyTorch https://github.com/thunlp/OpenKE --depth 1
cd OpenKE
cd openke

注意事项
这里git clone可能遇到 Failed connect to github.com:443; Connection timed out 的问题, 属于是gihub访问原因,我参考了网上各种修改代理的方法均失败,最终我的方法是把github同步到国内的码云,然后git clone中的https地址改成码云的。
如果是permission denied问题那是文件夹没有给写权限,不信你可以试试mkdir一个文件夹保证也是失败。解决手段就是赋予写权限.

数据集说明

训练集

entity2id.txt
首行是接下来的行数
接下来每行一个(实体, id)二元组
OpenKE-PyTorch使用

relation2id.txt
首行是接下来的行数
接下来每行一个(关系, id)二元组
OpenKE-PyTorch使用

train2id.txt
首行是接下来的行数
接下来每行一个(实体id, 实体id, 关系id)三元组
OpenKE-PyTorch使用

测试集

test2id.txt
首行是接下来的行数
接下来每行一个(实体id, 实体id, 关系id)三元组
OpenKE-PyTorch使用

验证集

valid2id.txt
首行是接下来的行数
接下来每行一个(实体id, 实体id, 关系id)三元组
OpenKE-PyTorch使用

快速测试

cd ../
cp examples/train_transe_FB15K237.py ./
python train_transe_FB15K237.py

注意事项
如果训练开始遇到GPU显存不够的情况请自行指定GPU,具体可搜索解决方法。
如果训练完毕遇到FileNotFoundError: [Errno 2] No such file or director: "xxx",自行建立对应的目录

原文链接: https://www.cnblogs.com/chaosliang/p/15572610.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    OpenKE-PyTorch使用

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/214972

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 上午2:36
下一篇 2023年2月13日 上午2:37

相关推荐