亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

了解 Keras 錯誤: 類型錯誤: 傳遞給參數“shape” 的值具有數據類型 float3

了解 Keras 錯誤: 類型錯誤: 傳遞給參數“shape” 的值具有數據類型 float3

狐的傳說 2022-09-06 15:57:31
所以我有這行代碼:history = model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, verbose=1, validation_data=(X_val, y_val))這會引發此錯誤:File "CNN.py", line 125, in model    history = model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, verbose=1, validation_data=(X_val, y_val))  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\training.py", line 952, in fit    batch_size=batch_size)  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\training.py", line 677, in _standardize_user_data    self._set_inputs(x)  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\training.py", line 589, in _set_inputs    self.build(input_shape=(None,) + inputs.shape[1:])  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\sequential.py", line 221, in build    x = layer(x)  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\base_layer.py", line 431, in __call__    self.build(unpack_singleton(input_shapes))  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\layers\core.py", line 866, in build    constraint=self.kernel_constraint)  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\legacy\interfaces.py", line 91, in wrapper    return func(*args, **kwargs)  File "C:\Users\Boche\AppData\Local\conda\conda\envs\ExerFloorTracking\lib\site-packages\keras\engine\base_layer.py", line 249, in add_weight    weight = K.variable(initializer(shape),批大小設置為 100,epochs 設置為 20。我不明白為什么會出現錯誤。所有需要為整數的值都是整數。我也不明白這里的參數“shape”是什么意思。如果您沒有看到代碼中有什么錯誤,如果您能向我解釋此錯誤以及觸發它的原因,我將不勝感激。
查看完整描述

1 回答

?
翻閱古今

TA貢獻1780條經驗 獲得超5個贊

所以我解決了這個問題。它來自另一行代碼。這些是我的代碼中在擬合之前出現的行:


model.add(Dense(num_neurons, activation= cnn_params["activation_output"]))

model.add(Dense(cnn_params["final_dense"]["number_neurons"], activation= cnn_params["activation_output"]))


#COMPILING MODEL

model.compile(loss=keras.losses.categorical_crossentropy, optimizer=keras.optimizers.SGD(lr=learning_rate), metrics=['accuracy', 'categorical_accuracy'])


在第一行中,您可以看到參數 。我使用功能計算了這個參數。該功能的輸出是浮點數。將其轉換為整數,如下所示:num_neurons


model.add(Dense(int(num_neurons), activation= cnn_params["activation_output"]))

解決了問題。


查看完整回答
反對 回復 2022-09-06
  • 1 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號