Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用scikit neuralnetwork时出现导入错误_Python_Anaconda_Theano - Fatal编程技术网

Python 使用scikit neuralnetwork时出现导入错误

Python 使用scikit neuralnetwork时出现导入错误,python,anaconda,theano,Python,Anaconda,Theano,我在Windows8上使用Anaconda和Python3.4 64位 尝试使用软件包scikit neuralnetwork时,此行代码引发以下异常: from sknn.mlp import Classifier, Layer 我安装了GCC和g++(4.8.1)编译器,并将它们正确添加到PATH中,但仍会出现以下错误: WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to

我在Windows8上使用Anaconda和Python3.4 64位

尝试使用软件包scikit neuralnetwork时,此行代码引发以下异常:

from sknn.mlp import Classifier, Layer
我安装了GCC和g++(4.8.1)编译器,并将它们正确添加到PATH中,但仍会出现以下错误:

WARNING (theano.configdefaults): g++ not detected ! Theano will be unable to               execute optimized C-implementations (for both CPU and GPU) and will default to   Python implementations. Performance will be severely degraded. To remove this   warning, set Theano flags cxx to an empty string.
Problem occurred during compilation with the command line below:
g++ -shared -g -D NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION -m64 -DMS_WIN64 -IC:\Users\Mi\Anaconda3\lib\site-packages\numpy\core\include -    IC:\Users\Mi\Anaconda3\include -o C:\Users\Mi\AppData\Local\Theano\compiledir_Windows-8-6.2.9200-Intel64_Family_6_Model_61_Stepping_4_GenuineIntel-3.4.3-64\lazylinker_ext\lazylinker_ext.pyd C:\Users\Mi\AppData\Local\Theano\compiledir_Windows-8-6.2.9200-Intel64_Family_6_Model_61_Stepping_4_GenuineIntel-3.4.3-64\lazylinker_ext\mod.cpp -LC:\Users\Mi\Anaconda3\libs -LC:\Users\Mi\Anaconda3 -lpython34
Traceback (most recent call last):
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\gof\lazylinker_c.py", line 65, in <module>
    raise ImportError()
ImportError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\gof\lazylinker_c.py", line 82, in <module>
    raise ImportError()
ImportError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Mi\Desktop\temp22.py", line 10, in <module>
    from sknn.mlp import Classifier, Layer
  File "C:\Users\Mi\Anaconda3\lib\site-packages\sknn\mlp.py", line 17, in <module>
    import theano
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\__init__.py", line 55, in <module>
    from theano.compile import \
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\compile\__init__.py", line 9, in <module>
    from theano.compile.function_module import *
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\compile\function_module.py", line 18, in <module>
    import theano.compile.mode
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\compile\mode.py", line 11, in <module>
    import theano.gof.vm
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\gof\vm.py", line 568, in <module>
    from . import lazylinker_c
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\gof\lazylinker_c.py", line 117, in <module>
    preargs=args)
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\gof\cmodule.py", line 1989, in compile_str
    compile_stderr = decode(p_out[1])
  File "C:\Users\Mi\Anaconda3\lib\site-packages\theano\compat\__init__.py", line 35, in decode
    return x.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe8 in position 10: invalid continuation byte
警告(theano.configdefaults):未检测到g++!Theano将无法执行优化的C实现(对于CPU和GPU),并将默认为Python实现。性能将严重下降。要删除此警告,请将无标志cxx设置为空字符串。
使用下面的命令行编译时出现问题:
g++-shared-g-D NPY\u NO\u已弃用\u API=NPY\u 1\u 7\u API版本-m64-DMS\u WIN64-IC:\Users\Mi\Anaconda3\lib\site packages\numpy\core\include-IC:\Users\Mi\Anaconda3\include-o C:\Users\Mi\AppData\Local\Theano\compiledir\Windows-8-6.2.9200-Intel64\u系列\u 6\u模型\u 61\u步进式英特尔4\u Genuinex-3.4\3.4-64\lazyder\linkerC:\Users\Mi\AppData\Local\Theano\compiledir\u Windows-8-6.2.9200-Intel64\u Family\u 6\u Model\u 61\u Stepping\u 4\u GenuineIntel-3.4.3-64\lazylinker\u ext\mod.cpp-LC:\Users\Mi\Anaconda3\libs-LC:\Users\Mi\Anaconda3-lpython34
回溯(最近一次呼叫最后一次):
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\gof\lazylinker_C.py”,第65行,在
提高警惕()
强求恐怖
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\gof\lazylinker_C.py”,第82行,在
提高警惕()
强求恐怖
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Users\Mi\Desktop\temp22.py”,第10行,在
从sknn.mlp导入分类器,层
文件“C:\Users\Mi\Anaconda3\lib\site packages\sknn\mlp.py”,第17行,在
进口茶
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\\uuuu init\uuuu.py”,第55行,在
从theano.compile导入\
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\compile\ \uuuu init\uuuuu.py”,第9行,在
从a No.compile.function\u模块导入*
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\compile\function\u module.py”,第18行,在
导入theano.compile.mode
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\compile\mode.py”,第11行,在
导入theano.gof.vm
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\gof\vm.py”,第568行,在
从…起导入lazylinker_c
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\gof\lazylinker_C.py”,第117行,在
preargs=args)
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\gof\cmodule.py”,第1989行,在compile\u str中
compile_stderr=解码(p_out[1])
文件“C:\Users\Mi\Anaconda3\lib\site packages\theano\compat\ \uuuu init\uuuuuu.py”,第35行,解码
返回x.decode()
UnicodeDecodeError:“utf-8”编解码器无法解码位置10中的字节0xe8:无效的连续字节

此错误通常通过运行以下命令来解决,如中所述


由于您现在已经安装了自己的GCC安装,您可能需要处理环境变量,尤其是
PATH
,以使事情正常运行。

一个好建议:我在Windows中遇到了这种错误消息,theano的员工经常说,theano不是为Windows而设计的,而是为linux或mac而设计的。于是我换上了linux,瞧,它成功了。我浪费了很多时间寻找解决方案,不,我很高兴来到这里问题通常是这些问题都与编译器有关。我的意思是,当需要编译器时,我通常会遇到这些问题,我安装它,将它添加到path,它可以与许多其他程序一起工作,但不能与我实际需要的程序一起工作。不管怎样,谢谢你的建议,将来一定要考虑买一台新机器。这正是我所说的。我经常在Windows下使用theano,但总是会发生一些事情,并且总是通过一些聪明的黑客手段解决这些问题,但我意识到这比我立即使用Linux的成本更高。我是对的。同样的机器速度也更快……不管怎样,我为你的拼搏增加了两张选票。:)您的机器上是否碰巧安装了Python2?我这样问是因为它通常是这些“utf-8”编解码器错误的来源。当您认为Python2正在使用Python3时,可能有什么东西正在使用Python2?我一回来就会尝试运行您建议的命令。但是,关于路径,编译器已经在路径中,我可以通过简单地键入g++或gcc从命令提示符运行它们。这就是我如何检查安装的编译器版本。我认为Theano在Windows上有一些C++编译器的问题。它肯定可以与MinGW一起使用,但是您需要确保MinGW是
路径中的第一个编译器。最安全的做法可能是卸载GCC(以及
路径中手动添加的任何部分),然后使用
conda install
安装MinGW和libpython。经过一些努力,我从所有编译器中清理了我的计算机,最后使用conda安装了编译器,到目前为止,它似乎工作正常。谢谢
conda install mingw libpython