- 先说一下我的环境配置
python版本==2.7.18
- 在这个版本下,首先安装theano,直接使用默认安装版本过高,运行代码会提示。因此,我们直接选择安装
pip install theano==0.9
- 然后安装lasagne
conda install -c http://conda.anaconda.org/toli lasagne
但是,并不是说上述安装成功就万事大吉了,运行代码大概率报错,信息如下:
from theano.tensor.signal import downsample
ImportError: cannot import name downsample
因此,我们需要修改虚拟环境下对应此处位置python2.7/site-packages/lasagne/layers/pool.py"
的pool.py文件。不要觉得麻烦,修改相对较为简单。
第一处修改如下(注释部分为原来文件内容,未注释为修改后的内容),此部分在文件第6行:
# from theano.tensor.signal import downsample
from theano.tensor.signal.pool import pool_2d
第二处修改如下,此部分内容为函数(get_output_for)的内容,对应文件157行至163行:
# pooled = downsample.max_pool_2d(input_4d,# ds=(self.pool_size[0], 1),# st=(self.stride[0], 1),# ignore_border=self.ignore_border,# padding=(self.pad[0], 0),# mode=self.mode,# )pooled = pool_2d(input_4d,ds=(self.pool_size[0], 1),st=(self.stride[0], 1),ignore_border=self.ignore_border,padding=(self.pad[0], 0),mode=self.mode,)
第三处修改如下:第268-274行。
# pooled = downsample.max_pool_2d(input,# ds=self.pool_size,# st=self.stride,# ignore_border=self.ignore_border,# padding=self.pad,# mode=self.mode,# )pooled = pool_2d(input,ds=self.pool_size,st=self.stride,ignore_border=self.ignore_border,padding=self.pad,mode=self.mode,)
上述修改完成后保存一下即可,再运行就不会报错了。
关于python2.7下安装opencv时可以使用下面命令,我直接一次性安装成功。
pip install opencv-python==3.4.3.18