Jon*_*son 14 python cpu blas neural-network theano
我正在尝试使用CIFAR10数据集训练CNN在图像上进行物体检测,以便在我的大学举办研讨会,但是我得到以下错误:
AssertionError:AbstractConv2d Theano优化失败:没有可用的实现支持所请求的选项.你是否从优化器中排除了"conv_dnn"和"conv_gemm"?如果在GPU上,cuDNN可用并且GPU是否支持它?如果在CPU上,你是否安装了Theano可以链接的BLAS库?
我在Windows 10机器上的Jupyter笔记本(CPU上的CNN培训)中运行Anaconda 2.7.由于我已经使用git clone更新到最新的theano版本,我尝试了以下方法:
THEANO_FLAGS='optimizer_excluding=conv_dnn, optimizer_excluding=conv_gemm'THEANO_FLAGS='...' python <myscript>.py这并不令人惊讶地发出"未知命令"错误.不幸的是,我仍然得到相同的错误,当我调用print(teano.config)术语"conv_dnn"和"conv_gemm"时,不会出现.
所以这是我的问题:我怎样才能正确地设置theano标志,如何检查我是否成功了?如果这没有帮助,我该如何检查我正在构建的BLAS?我应该使用哪一个,如何更改theano的依赖?
正如你可能已经猜到的那样,对于所有这些包,依赖,构建和其他花哨的计算机科学的东西和我发现的文档只是不是noob证明所以我不是专家所以我会非常感激我们你们可以帮助我出来了!
最好
乔纳斯
小智 7
我在Windows上有相同的错误消息.位于"C:\ Users\USERNAME\.theanorc.txt"中的".theanorc.txt"文件格式错误,Theano找不到Blas库.这可以在Python控制台中看到,写入"import theano; theano.config.blas.ldflags",它给出了空白字符串('').blas-keyword必须是节标题.
[global]
floatX = float32
device = cpu
[blas]
ldflags = -LC:\\openblas -lopenblas
Run Code Online (Sandbox Code Playgroud)
在C:\ openblass路径中,我有文件:libgcc_s_seh-1.dll,libgfortran-3.dll,libopenblas.dll和libquadmath-0.dll.请参阅http://deeplearning.net/software/theano/library/config.html
小智 1
我也遇到了同样的问题,不过是在Linux下。结果发现根本没有安装BLAS,我必须单独安装它,包括设置一些新的环境变量:
export LD_LIBRARY_PATH="/home/username/anaconda2/lib"
export LD_PRELOAD="/home/username/anaconda2/lib/libmkl_core.so:/home/MEDIANET/aharjunm/anaconda2/lib/libmkl_sequential.so"
Run Code Online (Sandbox Code Playgroud)
我还必须确保 anaconda 和任何以前的 python 安装之间没有冲突的 python 路径。
我知道在 Windows 下情况会有很大不同,但由于错误消息完全相同,因此解决方法的基本前提也应该相同:安装 BLAS。您可以找到大量相关资源,例如此处。