簡體   English   中英

Keras中Conv1D的數據形狀存在問題

[英]Preblem in shape of data with Conv1D in Keras

我正在學習Keras ,並且正在嘗試根據信號的頻率對其進行分類。

因此,開始我的代碼是這樣的:

import numpy as np
from keras.models import Sequential
from keras.layers import Conv1D
from keras.layers import AveragePooling1D
from keras.layers import Dense
from keras.layers import Dropout

#DATA
time=np.arange(0,20,0.05)
signal=np.sin(time)
out=np.array([1,0,0])

#MODEL
model = Sequential()

model.add(Conv1D(4, 60, padding='same', activation='relu',input_shape=(400,1)))
model.add(AveragePooling1D(pool_size=5, strides=None, padding='valid'))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(3, activation='softmax'))

model.compile(loss='binary_crossentropy', optimizer='Adam', metrics=['accuracy'])

history = model.fit(signal, out)

我有這個錯誤。

builtins.ValueError: Error when checking input: expected conv1d_1_input to have 3 dimensions, but got array with shape (400, 1)

但我不明白問題出在哪里。

嘗試像這樣重塑數據:

history = model.fit(signal.reshape(1,400,1), out.reshape(1,3))

編輯

model.fit()需要輸入和輸出的數組,而不是單個輸入和輸出。

暫無
暫無

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

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