簡體   English   中英

無法從“keras.optimizers”導入 SGD 和 Adam

[英]Unable to import SGD and Adam from 'keras.optimizers'

嘗試運行---
from keras.optimizers import SGD, Adam
我收到這個錯誤---

回溯(最后一次通話):
文件“C:\Users\usn\Downloads\CNN-Image-Denoising-master ------after the stopping\CNN-Image-Denoising-master\CNN_Image_Denoising.py”,第 15 行,在 <module>
從 keras.optimizers 導入 SGD,亞當
導入錯誤:無法從“keras.optimizers”導入名稱“SGD”

以及這個錯誤,如果我從導入語句中刪除 SGD---

導入錯誤:無法從“keras.optimizers”導入名稱“Adam”

我找不到一個單一的解決方案。
我安裝了 Keras 和 TensorFlow。 我嘗試在 virtualenv 中運行該程序(不知道這會有什么幫助,但類似於我想要提到的指南)但它仍然不起作用。 如果有的話,virtualenv 會使情況變得更糟,因為它無法識別任何已安裝的模塊。 我正在使用 Python 3.9。 在 cmd 中運行程序,因為所有 IDE 只會制造更多麻煩。

我很難過。 我對 Python 的了解非常基礎; 我剛剛在 GitHub 上找到了這個東西。非常感謝任何幫助。

這個簡單的修改解決了我的問題:

from tensorflow.keras.optimizers import SGD

寫:

from keras.optimizers import gradient_descent_v2 

代替:

from keras.optimizers import SGD

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

從 tensorflow.keras.optimizers 導入 RMSprop

代替:

從 keras.optimizers 導入 RMSprop

它對我有用。

代替:

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 將不起作用,因為它會與程序的其他部分沖突。 在這種情況下,請改用我的解決方案。

from tensorflow.keras.utils import to_categorical

它同樣適用於 to_categorical。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM