pybind11-OpenKE — 知识图谱嵌入工具包¶
基于 OpenKE-PyTorch 开发的知识图谱嵌入工具包, 底层数据处理利用 C++ 实现,使用 pybind11 实现 C++ 和 Python 的交互。
不久后将完成, 稍事等待.
教程和 API 参考文档可以访问 pybind11-openke.readthedocs.io。 源代码可以访问 github.com/LuYF-Lemon-love/pybind11-OpenKE。
- 📁 pybind11_ke/
pybind11-OpenKE 源代码保存在
pybind11_ke/。- 📚 docs/
所有的文档源文件保存在
docs/。 所有的*.rst构成了文档中的各个部分。- 🌰 examples/
pybind11-OpenKE 的例子保存在
examples/,修改自OpenKE-PyTorch。- 💡 benchmarks/
常用的知识图谱保存在
benchmarks/。- 📜 README.rst
项目主页。
- ⁉️ Questions / comments
如果你有任何问题,可以在 Github issue 提问。
备注
本项目基于 OpenKE-PyTorch 的版本保存在 thunlp-OpenKE-PyTorch 分支。
新特性¶
易用的
利用 C++ 重写底层数据处理、C++11 的线程库实现并行、pybind11 实现 Python 和 C++ 的交互,进而能够做到跨平台 (Windows, Linux)。
使用 Setuptools 打包了 pybind11-OpenKE, 使得能够像其他第三方库一样使用。
增加了文档。
正确的
增加了
R-GCN[SKB+18] 模型。增加了
CompGCN[VSNT20] 模型。修复了 SimplE模型实现的问题 。
修复了 HolE 深度学习框架(pytorch)的版本适配问题。
高效的
使用
torch.nn.parallel.DistributedDataParallel完成数据并行,使得pybind11-OpenKE能够利用多个GPU同时训练。增加超参数扫描功能(随机搜索、网格搜索和贝叶斯搜索)。
扩展的
在模型训练过程中,能够在验证集上评估模型。
增加了学习率调度器。
能够利用 wandb 输出日志。
实现了早停止。
支持的知识图谱嵌入模型:
类型 |
模型 |
|---|---|
平移模型 |
|
语义匹配模型 |
|
图神经网络模型 |
欢迎来到 pybind11-OpenKE 文档!¶
pybind11-OpenKE 是一个知识图谱嵌入工具包,使用 pybind11 来完成 C++ 数据预处理模块与 Python 用户接口的交互, 使用 C++11 线程标准库进行并行化,能够运行在 Windows 和 Linux 操作系统上。
为了使用 pybind11-OpenKE,请先 安装 这个项目。
备注
这个项目依旧出于积极开发中。
目录¶
教程
API
- API
- pybind11_ke.utils
- pybind11_ke.data
- pybind11_ke.module
- pybind11_ke.module.model
- pybind11_ke.module.loss
- pybind11_ke.module.strategy
- pybind11_ke.config
- Indices and tables
参考