Python:import lasagne 中遇到的问题
1.环境
Windows 10操作系统
虚拟机:VMware +Ubuntu18.04TLS
情况:在Ubuntu上先安装了anaconda3,但手中的代码是Python2.7版本的,所以用anaconda-navigator创建了一个Python2.7的虚拟环境。然后安装 Lasagne库,anaconda会自动找到其需要的所有依赖库一并安装。本以为ananconda能自动解决库与库之间的兼容问题,但其实不然。在运行测试代码的过程中遇到了如下两个问题。
(一句废话:lasagne并不依赖于sklearn库,所以sklearn库要另外安装。)
2.问题
1.Error1:cannot import name downsample
解决方法:
在终端中,进入该目录(不同电脑的目录会有一点点不同):~/anaconda3/envs/python27/lib/python2.7/site-packages/lasagne/layers
输入以下命令(也就是用编辑器打开pool.py):
$ gedit pool.py
然后将该代码中的
from theano.tensor.signal.pool import downsample
(PS:我的代码中一开始似乎没有".pool")
改为
from theano.tensor.signal.pool import pool_2d
同时,使用编辑器中的查找功能(找起来方便点),找到函数名为“downsample.max_pool_2d”的函数,并用“pool_2d”代替上述字符串。(PS:总共有两处要作如上改动)
2.Error2:‘module’ object has no attribute ‘_get_ndarray_c_version’
解决方法:该问题是由于numpy库的版本太高的缘故。我将版本降到1.15.1时,问题就解决了。推荐使用anaconda-navigator图形化界面进行操作,比较无脑and便利- -