OpenKE 的使用(四)— HolE (未成功)和 ComplEx 论文复现
前言: 之前踩了VM中ubuntu不能使用Nvidia驱动的坑,于是我在安装好Windows+Ubuntu双系统,并在Ubuntu 20.04子系统中配置好深度学习环境后,终于得以成功使用OpenKE对KGE模型进行复现,本篇主要是关于HolE和ComplEx模型的实现,如下是我实验的环境,论文原文、博主胡萝不青菜对论文的理解和OpenKE的GitHub地址
Environment: 联想R7000P,Ubuntu 20.04(子系统),Pytorch,cuda 11.5,cuDNN,OpenKE
Paper: HolE 和 ComplEx
Paper Understanding: 博主胡萝不青菜对两篇论文的理解
Download from Github:
git clone -b OpenKE-PyTorch https://github.com/thunlp/OpenKE
说明: git clone -b OpenKE-PyTorch https://github.com/thunlp/OpenKE 命令如果执行出错,可以参考OpenKE 的初步探索(VM 中的 Ubuntu 踩坑)的准备工作:VM 中 Ubuntu 20.04 系统 git 的配置及与 github 的连接 部分,虽然是在VM中Ubuntu系统中的配置,但是原理和操作都是一样的
HolE
数据集:WN18RR
手动复制examples文件夹中的train_hole_WN18RR.py 到OpenKE目录下,并在此处打开终端
使用的命令如下:
python train_hole_WN18RR.py
报错: 找到的方法未能解决,我又看了下源码说明,如下图。Pytorch版本没有写HolE,但很奇怪,我下载到本地是有的,运行不了或许情有可原 我尝试安装Tensorflow,用conda创建名为tensorflow-gpu 的环境:conda create --name tf_exp tensorflow-gpu ,激活并进入环境:source activate tf_exp ,再次执行python train_hole_WN18RR.py ,又报错:ModuleNotFoundError: No module named 'torch' ,说明hole这个版本自身还是pytorch版本的,与此OpenKE下的其他模型的版本一样 于是我把Pytorch版的OpenKE删除,下载Tensorflow版本的OpenKE[-b OpenKE-Tensorflow2.0-alpha是下载此分支的源码],执行以下命令:
git clone -b OpenKE-Tensorflow2.0-alpha git@github.com:thunlp/OpenKE.git
执行以下命令:
cd OpenKE
bash make.sh
更改两个给定的两个样例的文件名为example_train_hole.py,example_test_hole.py ,如下: 执行:python example_train_hole.py ,出现问题AttributeError: module 'tensorflow' has no attribute 'keras' ,尝试解决后,又报新错 解决后,又报新错,已无力解决,到此为止吧,暂不复现HolE了,希望有大佬评论区指点迷津:
ComplEx
数据集:WN18RR
Pytorch版OpenKE:
手动复制examples文件夹中的train_complex_WN18RR.py 到OpenKE目录下,并在此处打开终端
使用的命令如下:
python train_complex_WN18RR.py
|