为了防止环境冲突,我的MXNet-gpu 1.2.1版本是通过Anaconda安装在单独的环境中的
在使用时一切正常,但是在调用graphviz作图时却出现了问题
首先介绍下我在conda环境中是如何安装的mxnet和graphviz
(MXNet)$ conda install mxnet-gpu
通过上述指令,自动安装了1.2.1版本的mxnet-gpu,并且自动将所需的cuda9.0和cudnn7.1.2安装完成
然后我通过conda指令安装graphviz
(MXNet)$ conda install graphviz
安装的graphviz版本是2.4版本
在Python编程通过下面代码调用graphviz作图时
mx.viz.plot_network
出现了错误,提示
意思是缺乏graphviz库
通过测试如下代码
import graphviz
提示module不存在,这说明graphviz并没有安装好,所以mxnet当然无法调用
查阅相关资料后发现,原来安装的graphviz版本过高,而conda库中只有2.4版本
于是使用如下命令
(MXNet)$ pip install graphviz==0.8.1
特别注明0.8.1版本是因为mxnet-gpu-1.2.1只能兼容0.8.1~0.9.0版本(不包括0.9.0)的graphviz
安装完成,运行原程序后发现,原来的错误消失,但是出现了新的错误
原来是环境变量中配置不对
输入
$ sudo apt-get install graphviz
安装完成,运行源程序,绘图成功
环境变量是基于系统底层的,配置在环境变量中的内容对所有conda创建的环境都可以调用,所以在MXNet环境下可以调用(特别提示:由于mxnet是安装在了独立的环境中,所以只配置系统变量依然无法检测到graphviz包,所以在mxnet环境中安装graphviz也是必须的)