| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> ripplenet程序实现笔记(TensorFlow版本) -> 正文阅读 |
|
[人工智能]ripplenet程序实现笔记(TensorFlow版本) |
Ripple原文地址:?https://arxiv.org/pdf/1803.03467v4.pdf ripple算法的Tensorflow版本下载地址:https://github.com/hwwang55/RippleNet Pytorch版本下载地址:https://github.com/qibinc/RippleNet-PyTorch? 说明:ripplenet文章所附的tensorflow版本的程序里要求的是TensorFlow-GPU-1.4.0 Numpy=1.14.5,sklearn=0.19.1 根据要求配置环境我配置的环境如下 python3.6.5 TensorFlow-GPU-1.4.0 Cuda 8.0??cudnn6.0(注意cuda8.0和cudnn6.0只能匹配pytorch1.0所以使用pytorch实现时需注意) numpy == 1.16.6(文章中用的是numpy1.14.5,但经过试验后没法运行程序) scipy == 1.41 sklearn == 0.19.1 一、python环境配置首先下载anaconda3,(我的电脑里面因为安装了VS2019,所以已经安装好了Microsoft Visual C++ 2015-2019 Redistributable (X86) 和(X64)两个版本。如果电脑没有安装VS软件,可以先安装一下这两个东西。)一般直接在清华镜像源里下载(清华镜像源)anaconda3和python对应的关系见anaconda python 版本对应关系因为需要的是3.6.5版本python,所以下载anaconda4.3.0版本的(其实第一次我下载的适配python3.5版本的anaconda4.2.0.版本的也是可以使用的)安装就一路next到底就可以,当然,我建议不要将anaconda安装到c盘,因为后续要建立很多环境下载很多拓展包,会把c盘空间占的很满,导致电脑变慢,所以我安装的是f盘 一路next就可记得勾选添加路径,这里我们不选择默认python3.6,因为之后各种项目用到的python版本是不同的,在配置环境的时候,可以用不同的python版本 当你勾选了添加环境变量以后,使用anaconda prompt和使用cmd就没有什么区别了, 那么使用win+R打开运行,输入cmd,再输入代码
(注意这里的python版本并不是我们要用的,是安装anaconda自带的),就可以看到配置信息了 二、安装TensorFlow对应的cuda和cudnn安装这个首先要知道自己电脑是否有gpu,有才可以安装,论文中要求使用tensorflow-gpu-1.4.0版本,对应的cuda为8.0版本和cudnn6.0版本 由于cuda更新较快,所以需要下载cuda历史版本 cudnn官网下载图,记得看清楚版本号详细参考文章cuda安装教程+cudnn安装教程 三、配置tensorflow所需要的环境1、安装tensorflow重新打开cmd(或者输入exit()退出python) 创建名字叫mytf的环境,输入
(这里如果输入3.6则是python3.6系列里最新的版本,也可以直接输入3.6.5安装,还要注意一点的就是我之前用的-name创建环境会出现PackageNotFoundError: Package not found这个错误,后来按照他提示的步骤也没解决,只能用-n来创建,我记得好像-name也可以创建来着) 完成之后就着这样的 输入
(mytf为环境名字) 激活环境 输入
安装tensorflow-gpu版本的,注意这里安装的时候不要加--upgrade --ignore这俩个字符串,如果加这俩个后面可能会导致conda使用的时候报错,-i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com是我后面加的阿里镜像源(加镜像源-i前一定要有空格),这样下载速度会加快很多,不加也可以,只不过在国内下载国外的软件会很慢,还是不是因为网络问题报错,还要重新下载 (我又卸载了重新安装了一下,上面是使用镜像源与使用镜像源对比速度500kb/s vs12.8mb/s,高下立判了家人们) 接下来我们检验以下tensorflow是否安装成功 重新进入cmd 使用
进入环境 输入
进入python中,接下来输入
如果出现 (最后一行print要输一个回车才能输出)说明安装成功 2、安装numpy包在实现程序的过程中,我一开始安装的numpy版本是1.14.5,就是按照原文的numpy版本安装的,但是在最后运行的时候会报错说版本不匹配,于是我又从网上找了一下发现文章要求的sklearn0.19.1包对应的numpy是1.16.6版本的,所以我又下载了numpy1.16.6版本的,发现最后成功运行,所以我们安装1.16.6版本的numpy 在安装时,我们发现在上一步安装的tensorflow时,已经安装了一个版本的numpy 可是这个不是我们需要的版本,但是不用慌,只需要直接输入
它就会自动删除原版本的numpy换成安装的版本?完成! 3、安装sklearn0.19.1包在安装sklearn包时,它有前置条件,就是要求有numpy以及scipy,我们接着下载对应版本scipy1.4.1包,使用代码
?安装成功后,打开环境所对应的文件夹会发现多出来numpy和scipy包的文件夹如图 4、安装sklearn0.19.1包最后在前面都安装成功以后就可以安装sklearn了,同样使用阿里镜像源
这个时安装完成的程序图 Ok到这里环境配置就已经完成了 5、另一种方法上面前四点说明的是比较简单的直接下载方式,但是会因为网络原因等其他关系下载失败,那么我这里简绍另一种安装方式,就是直接将所需要的拓展包下载到电脑上,使用pip安装,这样就不用担心因为网络问题而进行不下去了 可以在python拓展包这个网站中,下载到各种各样的拓展包 这里还有一个缺点就是有些历史版本找不到,不过这里需要注意的是,这里下载的时候一定要记得自己创建的环境python版本,用上图举例安装pytorch1.6.0,cp36就是指着python版本是3.6的,amd64就是64位操作系统适用的,?下载到电脑上后,打开cmd中的环境,进入到下载的路径中 输入
这里需要提醒一点,输入pip install时后面跟的时文件的全称,包括后缀.whl ?安装会快捷很多,不受网络影响 四、运行ripple算法程序1、pycharm中配置环境ripple算法的tensorflow版本下载地址:https://github.com/hwwang55/RippleNet Pytorch版本下载地址:https://github.com/qibinc/RippleNet-PyTorch? 那么现在开始运行程序,打开pycharm,先打开你整个ripple程序包 然后选择整个项目运行的环境,点击setting,再点击右上角的齿轮会有add字样,选择下面的已经存在的环境选项,找到自己安装anaconda的地方,我安装的地方是f盘,选择envs文件夹,打开自己创建的环境mytf,选中Python.exe就可以了 ?(这里需要注意的时,可能pycharm版本更新的很快,最新版本的pycharm在设置环境的之后会出现unsupported字样,那就是pycharm最低版本高于整个项目的python版本。举个栗子,我之前环境用的Python3.5,但是下载的2021.2.2版本的pycharm发现不支持python3.5版本,所以又卸载了新的下载的2019版本的) 配置好的环境如上图,可以看到环境里有文章需要的包,如果一开始没显示完全就点右边的绿色小圆圈,在配置成功以后pycharm右下角会出现 2、运行程序终于到了这一步了,按照文章要求 第一步、在下面terminal栏中首先输入
进入src文件夹(注意要在自己创建的环境中运行,没有在创建的环境中运行会显示找不到numpy,找不到TensorFlow等问题) 第二步、然后预处理数据
预处理过后我们可以看到movie文件夹中多了俩个txt文件,这个就是预处理的结果 第三步、输入
开始处理数据 在运行时又会多出俩个文件kg_final.npy和ratings_final.npy,那么这时候就是在运行程序了(当时我电脑风扇狂响),然后我们可以打开任务管理器看下 内存和gpu都保持高位运行,也说明就是在运行程序。我的笔记本还是960m的,所以运行起来非常慢,我记得当时第一次运行了整整一晚上,就是睡觉前开始跑,醒来才出结果,调用一张之前的结果图 OK到这里整个程序就全部运行完成了 最后说一句,pytorch版本的程序我也运行成功了,无非就是重新配一个要求的环境再运行一遍,只要注意版本匹配就不是很困难,这里就不赘述了。这篇文章主要参考了WIN10 配置并运行RippleNet算法,并且改进了和更新了许多这篇文章中不足的地方,其中有一部分就是跟着这篇文章踩的坑ˉ_ˉ,所以我才又想写这个笔记,不过还非常感谢这位博主,不然我一点都不会。 五、针对运行后的结果还存在的一些疑问1、至于最后显示的这个结果,我好像只知道它是遍历了10次,至于5次或者20次的结果如何,我想后续再实验一下。 2、然后训练集分类器auc值逐渐增大,说明效果越来越好,后面acc准确率也在逐渐增大,但是后面的测设集分类器的auc值只能说保持稳定,而且又和训练集分类器auc差距这么大,不知道算不算正常现象,中间的eval auc代表什么意思还不太懂。 3、现在想知道最后的训练结果如何看到,不知道看哪里或者说怎么看,还有就是输出的kg_final.npy和ratings_final.npy如何打开,尝试用python或者txt方式打开都是乱码的。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 8:38:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |