我正在构建一个以 keras 和 tensorfrolw 作为后端的神经网络。它有从 0 到 9 的 3 个输入和从 0 到 9 的 3 个输出。数据在一个 numpy 数组中提供,如下所示: [ ['1' '4' '0'] ['6' '2' '1'] ...]。我是深度学习的新手,这是我的第一个神经网络之一,所以我迷路了,不知道是什么导致了这个错误。我知道我可能需要更改优化器、损失、指标和可能更多的属性,如果有人对此有任何见解,请分享。model = keras.Sequential([ keras.layers.Flatten(3, input_shape=(3, 3)), keras.layers.Dense(9, activation="relu"), keras.layers.Dense(9, activation="relu"), keras.layers.Dense(3, activation="relu")])model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])model.fit(training_input, training_output, epochs=5)当我运行这个程序时,我得到这个错误:Traceback (most recent call last): File "C:/Users/---/---/---/---/---/---/---/main.py", line 15, in <module> keras.layers.Flatten(3, input_shape=(3, 3)), File "C:\Users\---\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow_core\python\keras\layers\core.py", line 571, in __init__ self.data_format = conv_utils.normalize_data_format(data_format) File "C:\Users\---\AppData\Local\Programs\Python\Python37\lib\site-packages\tensorflow_core\python\keras\utils\conv_utils.py", line 191, in normalize_data_format data_format = value.lower()AttributeError: 'int' object has no attribute 'lower' \
2 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
当我不应该提供的时候,我已经为 flatten 层提供了一个参数。破获:
import tensorflow.keras.layers as l
h = i = l.Input(shape=(10, 5))
h = l.Flatten(50)(h) # don't do this!
o = l.Dense(50)(h)
model = keras.Model(inputs=i, outputs=o)
model.compile(optimizer='adam', loss='mse')
没有指定参数,模型编译:
import tensorflow.keras.layers as l
h = i = l.Input(shape=(10, 5))
h = l.Flatten()(h) # do this!
o = l.Dense(50)(h)
model = keras.Model(inputs=i, outputs=o)
model.compile(optimizer='adam', loss='mse')
添加回答
举报
0/150
提交
取消