【问题标题】:Unable to import SGD and Adam from 'keras.optimizers'无法从 'keras.optimizers' 导入 SGD 和 Adam
【发布时间】:2021-08-08 18:53:06
【问题描述】:

尝试运行---
from keras.optimizers import SGD, Adam
我收到此错误---

回溯(最近一次通话最后一次):
文件 "C:\Users\usn\Downloads\CNN-Image-Denoising-master ------ 停止后\CNN-Image-Denoising-master\CNN_Image_Denoising.py",第 15 行,在
从 keras.optimizers 导入 SGD,Adam
ImportError:无法从“keras.optimizers”导入名称“SGD”

还有这个错误,如果我从 import 语句中删除 SGD ---

ImportError: cannot import name 'Adam' from 'keras.optimizers'

我找不到一个解决方案。
我安装了 Keras 和 TensorFlow。我尝试在 virtualenv 中运行该程序(不知道这会有什么帮助,但是一个类似于我想要提到的指南)但它仍然不起作用。如果有的话,virtualenv 会使情况变得更糟,因为它无法识别任何已安装的模块。我正在使用 Python 3.9。在 cmd 中运行程序,因为所有的 IDE 都会产生更多的麻烦。

我被难住了。我对 Python 的了解非常基础。我刚刚在 GitHub 上找到了这个东西。任何帮助将不胜感激。

【问题讨论】:

    标签: python tensorflow keras


    【解决方案1】:

    这个简单的修改解决了我的问题:

    from tensorflow.keras.optimizers import SGD
    

    【讨论】:

      【解决方案2】:

      看看https://github.com/tensorflow/tensorflow/issues/23728:

      从 tensorflow.keras.optimizers 导入 RMSprop

      而不是:

      从 keras.optimizers 导入 RMSprop

      它对我有用。

      【讨论】:

      • 这是我检查的第一件事,但我无法确定它的头或尾。唯一可以解决的问题(根据我当时的推断)是 OP 自己写的最后几行。但我对如何在我的代码中使用它感到困惑。我会继续努力去理解它。如果我弄明白了会更新。
      • 好的@George,我认为它可能有效。我不确定,因为我之前进行了一些更改,以便将这个错误放在一边并专注于其他错误。但希望我把一切都恢复到原来的样子,如果我这样做了,那么这个错误就解决了。感谢您指出该特定行。我自己在阅读该主题时错过了它!
      • 这实际上不是解决方案,因为keras.optimizers坏了,是代码的问题,一旦迁移到独立的keras,就会影响tf.keras。
      【解决方案3】:

      写:

      from keras.optimizers import gradient_descent_v2 
      

      而不是:

      from keras.optimizers import SGD
      

      【讨论】:

        【解决方案4】:

        而不是:

        from keras.optimizers import SGD
        

        写:

        from keras.optimizers import gradient_descent_v2
        

        然后像这样使用它:

        sgd = gradient_descent_v2.SGD(...)
        

        --

        致建议使用的人

        from tensorflow.keras.optimizers import SGD
        

        仅当您在整个程序中使用 TensorFlow 时它才有效。如果您想专门使用 keras,导入 tensorflow.keras.optimizers 将不起作用,因为它会与程序的其他部分发生冲突。在这种情况下,请改用我的解决方案。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-10-26
          • 1970-01-01
          • 1970-01-01
          • 2022-01-03
          • 1970-01-01
          • 2019-09-10
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多