簡體   English   中英

AttributeError: 模塊 'keras.utils' 沒有屬性 'Sequence'

[英]AttributeError: module 'keras.utils' has no attribute 'Sequence'

回溯(最近一次調用):文件“C:\\Users\\gutolinPC\\Desktop\\tensorflow.py”,第 3 行,從 keras.datasets 導入 mnist 文件“C:\\Program Files\\Python37\\lib\\site-packages\\ keras__init__.py”,第 3 行,來自 . 導入 utils 文件“C:\\Program Files\\Python37\\lib\\site-packages\\keras\\utils__init__.py”,第 6 行,從 . import conv_utils File "C:\\Program Files\\Python37\\lib\\site-packages\\keras\\utils\\conv_utils.py", line 9, in from .. import backend as K File "C:\\Program Files\\Python37\\lib\\ site-packages\\keras\\backend__init__.py", line 89, in from .tensorflow_backend import * File "C:\\Program Files\\Python37\\lib\\site-packages\\keras\\backend\\tensorflow_backend.py", line 5, in import tensorflow as tf File "C:\\Users\\gutolinPC\\Desktop\\tensorflow.py", line 3, in from keras.datasets import mnist File "C:\\Program Files\\Python37\\lib\\site-packages\\keras\\datasets__init__.py ",第 4 行,來自 . import imdb File "C:\\Program Files\\Python37\\lib\\site-packages\\keras\\datasets\\imdb.py", line 8, in from ..preprocessing.sequence import _remove_long_seq File "C:\\Program Files\\Python37\\lib \\site-packages\\keras\\preprocessing__init__.py”,第 12 行,來自 . 導入圖像文件“C:\\Program Files\\Python37\\lib\\site-packages\\keras\\preprocessing\\image.py”,第 11 行,來自 keras_preprocessing 導入圖像文件“C:\\Program Files\\Python37\\lib\\site-packages” \\keras_preprocessing\\image__init__.py”,第 6 行,在 from .dataframe_iterator import DataFrameIterator 文件“C:\\Program Files\\Python37\\lib\\site-packages\\keras_preprocessing\\image\\dataframe_iterator.py”,第 10 行,在 from .iterator import BatchFromFilesMixin,迭代器文件“C:\\Program Files\\Python37\\lib\\site-packages\\keras_preprocessing\\image\\iterator.py”,第 13 行,在 IteratorType = get_keras_submodule('utils').Sequence AttributeError: module 'keras.utils'沒有屬性“序列”

贏得 10

蟒蛇 3.7.0

凱拉斯 2.2.4

Keras-應用程序 1.0.7

Keras-預處理 1.0.9

張量板 1.13.1

張量流 1.13.1

張量流估計器 1.13.0

完整代碼

import numpy

from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense
from keras.utils import np_utils


numpy.random.seed(42)


(X_train, y_train), (X_test, y_test) = mnist.load_data()

X_train = X_train.reshape(60000, 784)
X_test = X_test.reshape(10000, 784)

X_train = X_train.astype('float32')
X_test = X_test.astype('float32')
X_train /= 255
X_test /= 255


Y_train = np_utils.to_categorical(y_train, 10)
Y_test = np_utils.to_categorical(y_test, 10)


model = Sequential()


model.add(Dense(800, input_dim=784, activation="relu",         
kernel_initializer="normal"))
model.add(Dense(10, activation="softmax", kernel_initializer="normal"))


model.compile(loss="categorical_crossentropy", optimizer="SGD", metrics=["accuracy"])

print(model.summary())


model.fit(X_train, Y_train, batch_size=200, epochs=25, validation_split=0.2, verbose=2)


scores = model.evaluate(X_test, Y_test, verbose=0)
print("Точность работы на тестовых данных: %.2f%%" % (scores[1]*100))

較新版本的 keras==2.4.0 和 tensorflow==2.3.0 將按如下方式工作。

更換:

from keras.utils import np_utils

為了

from keras import utils as np_utils

我在 Keras 2.4.3 中遇到同樣的錯誤。 寫作時

from keras import utils

要么

from keras.utils import to_categorical

解決:

from keras.utils import np_utils

Apparenytly 這從版本到版本的變化。

對於 Keras 版本 - 2.5.0 和 TF 版本 - 2.5.0

from tensorflow.keras.utils import to_categorical

並與

keras.utils.to_categorical()

使用 keras==2.2.4 和 tensorflow==1.14.0 運行上述代碼。

沒有錯誤。

升級 TensorFlow 應該可以解決這個問題。 干杯:)

我正在運行 Tensorflow 2.5.0 版。 通過反復試驗,我發現 keras.utils.np_utils 有效。 我猜他們在某些更新中將它移到了 np_utils 中,因此 .to_categorical 可以正常工作。

將“np_utils.to_categorical”更改為“keras.utils.np_utils.to_categorical”

我有同樣的問題。 我的 keras 版本是 2.7.0,我的 tensorflow 版本是 2.7.0,但行

keras.utils.Sequence

沒有為我工作。 您可以使用

keras.utils.all_utils.Sequence

反而

我正在運行 Tensorflow 2.6.0 版。 在 colab 上通過反復試驗,我發現 tf.keras.utils.to_categorical(y_train, num_classes) 有效。

暫無
暫無

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

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