【问题标题】:Import theano gives the AttributeError: module 'theano' has no attribute 'gof'导入 theano 给出 AttributeError:模块 'theano' 没有属性 'gof'
【发布时间】:2017-05-01 16:41:22
【问题描述】:

我有 python 3。 我使用

安装了“Theano”前沿和“Keras”
pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git

还有

pip install --upgrade git+git://github.com/Theano/Theano.git

pip install git+git://github.com/fchollet/keras.git

但是当我尝试导入 Theano 时,我收到以下错误:

AttributeError: module 'theano' has no attribute 'gof'

我在网上找了一个解决方案,但一无所获...

这是我收到错误的一段代码(最后一行产生错误):

import sys
import numpy as np
import pandas as pd
from sklearn import preprocessing

from keras.models import Sequential

由于我没有足够的 python 经验,我完全迷失了,不知道该怎么办......

任何帮助将不胜感激。

【问题讨论】:

  • 你能让theano 自己工作吗?如果只执行import theano,会出现错误吗?例如,您可以运行其中一些示例deeplearning.net/software/theano/tutorial/examples.html 中的代码吗?还可以查看similar question posted on quora。我在运行theano 时遇到了一个非常相似的问题,并通过删除它并通过anaconda重新安装它来解决它@
  • 甚至 import theano 都会给我一个错误...我没有尝试过部分导入 theano,但即使它成功,它似乎并不重要,因为 keras 将要导入它...我会尝试通过anaconda重新安装它。你是怎么做到的?
  • 我对 keras 一无所知,但从你写的内容来看,尤其是你必须自己安装 theano,看起来它只是在引擎盖下使用 theano,所以如果你不能让 theano 本身工作,你就不能使用 keras .谷歌搜索表明该错误来自安装的不兼容的 numpy 版本,而且您使用开发分支意味着您应该检查它们支持的版本。 Anaconda 是 python 的包管理器,是pip 的替代品。设置好之后(请参阅他们的文档),您可以简单地使用 conda install theano 安装 theano
  • 另外,我猜你已经检查过其他similar question?他们使用相同的安装程序并得到相同的错误
  • 我不敢相信!使用 conda 安装它工作!谢谢,请提交作为答案,以便我接受

标签: python theano keras


【解决方案1】:

问题是由于theano的安装损坏引起的,与keras本身无关。

此错误似乎是由于安装的 theano 版本中的冲突,正如 this answer 中对相关问题的建议。

一个简单的方法可以解决问题,而不必摆弄已安装的版本,所有这一切都是使用 conda 作为包管理器并让它做脏活。 如果您选择这样做,请注意您应该使用它管理所有 python 模块(即使使用最新版本,您也可以使用 anaconda 自带的 pip 安装软件包)。

请参阅the official documentation 了解如何安装 Anaconda。 设置好 anaconda 后,您可以简单地使用 conda install theano 安装 theano。

使用conda 通常还可以方便地在与 python 安装的其余部分隔离的环境中安装某些特定应用程序所需的包,例如您的 Keras,以便于维护。 阅读relevant docs 以了解其工作原理。

【讨论】:

  • 小小补充,安装完 conda 后一定要重启你的 Python 实例,否则还是会报错
  • 这是否意味着我们需要卸载我们所做的一切并全部重做?
【解决方案2】:

我使用 conda 安装 theano,但仍然遇到同样的错误。经过多次试验和错误以及 StackOverflow 搜索,对我有用的是首先运行:

conda install m2w64-toolchain

后跟:

conda install theano

或者,您可以在创建环境时将模块链接在一起,例如:

conda create -n myenv python=3.5 m2w64-toolchain theano

遵循@gtnbz2nyt 的建议并重新启动您的 Python 实例也很重要。

【讨论】:

    【解决方案3】:

    问题似乎出在您的 g++ 编译器上。尝试卸载它并再次运行您的脚本。它会发出一个暗示性能下降的警告,但它仍然可以工作。

    'Python 3.6.3 |Anaconda custom (32-bit)| 
    (default, Oct 15 2017, 07:29:16)       
    [MSC v.1900 32 bit (Intel)]
    Type "copyright", "credits" or "license" for more information.
    
    IPython 6.1.0 -- An enhanced Interactive Python.
    
    import theano
    WARNING (theano.tensor.blas): Using NumPy C-API based implementation 
    for BLAS functions.
    '
    

    【讨论】:

      【解决方案4】:

      对于 macOS Catalina:

      conda create -n pymc3 python=3.8
      conda activate pymc3
      pip install pymc3
      

      【讨论】:

        猜你喜欢
        • 2017-10-21
        • 2018-06-23
        • 1970-01-01
        • 2017-08-01
        • 2015-10-05
        • 1970-01-01
        • 2015-12-17
        • 2019-07-30
        • 1970-01-01
        相关资源
        最近更新 更多