错误模块'keras.optimizers'没有属性'RMSprop'

k10s72fa  于 2022-11-13  发布在  其他
关注(0)|答案(5)|浏览(161)

我正在运行下面的代码,它返回了一个错误AttributeError:模块“keras.optimizers”没有属性“RMSprop”。我使用pip install tensorflow下载了tensorflow 。

from keras import layers
from keras import models

model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu',
                        input_shape=(150, 150, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Flatten())
model.add(layers.Dense(512, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))

model.summary()

from keras import optimizers

model.compile(loss='binary_crossentropy', optimizer=optimizers.RMSprop(lr=1e-4), metrics=['acc'])

有人能帮我解释一下这是怎么回事吗?谢谢你的时间。

9jyewag0

9jyewag01#

正如你所说的,你是通过pip install tensorflow安装了tensorflow(包括keras),而不是直接安装keras。不再推荐通过pip install keras安装keras了(另请参阅此处的说明)。
这意味着keras可以通过tensorflow.keras获得。您应该使用from tensorflow.keras import optimizers,而不是通过from keras import optimizers导入。

jdg4fx2g

jdg4fx2g2#

您应该改为:

from tensorflow import keras
from keras import optimizers
optimizer=keras.optimizers.RMSprop(learning_rate=0.01)
ltskdhd1

ltskdhd13#

我也遇到过同样的错误,我通过导入如下优化器来避免它:

from tensorflow.keras import optimizers

然后我应用了RMSprop:

optimisers.RMSprop(...)
oxalkeyp

oxalkeyp4#

它的工作原理

from keras.optimizers import rmsprop_v2
model.compile(loss='binary_crossentropy', optimizer='rmsprop')

但我不知道为什么..

4dbbbstv

4dbbbstv5#

import tensorflow
from tensorflow.keras import optimizers
optimizer = tensorflow.keras.optimizers.RMSprop(lr=0.0003,decay=1e-6)

请注意RMSproprmsprop

相关问题