[英]reshape error of fully connected deep neural network input in python
我正在實現一個完全連接的深度神經網絡。 為網絡提供數據需要重塑我的數據,但我面臨這個錯誤。 這是解決它的任何建議嗎?
import time
start=time.time()
import numpy as np
from keras.layers import Dense
from keras.models import Sequential
from scipy.io import loadmat
Tar_train = (x['t_train'])
Tar_val = (x['t_val'])
Tar_test = (x['t_test'])
Signal_train = x['data_train']
Signal_val = x['data_val']
Signal_test = x['data_test']
Signal_train = np.reshape(Signal_train,(240*64))
Signal_val = np.reshape(Signal_val,(240*64))
Signal_test = np.reshape(Signal_test,(240*64))
model = Sequential()
model.add(Dense(20 , activation='relu' , input_shape=(240*64,) ))
model.add(Dense(200, activation='relu'))
signal_train 的大小是 (1274, 240, 64) signal_validation 的大小是 (510, 240, 64) signal_test 的大小是 (764, 240, 64)
錯誤是:ValueError:無法將大小為 19568640 的數組重塑為形狀(15360,)
假設錯誤發生在第一個np.reshape
中,請使用
Signal_train = np.reshape(Signal_train, (-1, 240*64))
Signal_val = np.reshape(Signal_val, (-1, 240*64))
Signal_test = np.reshape(Signal_test, (-1, 240*64))
這是因為當您展平兩個維度的 rest 時,會保留第一個維度(1274,對於Signal_train
)。 例如,當您將 1274 張 240 x 64 的圖像展平為 1274 個尺寸為 240*64 的向量時,總共仍有 1274 張圖像。
尺寸尺寸-1
表示讓 numpy 使用適合原始尺寸的任何尺寸尺寸。 在這種情況下,第一個-1
隱含1274
等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.