質問するログイン新規登録

質問編集履歴

1

質問内容の修正

2018/10/02 07:28

投稿

yohehe
yohehe

スコア48

title CHANGED
@@ -1,1 +1,1 @@
1
- 畳み込み層におけるConv1Dの層のfilters,kernel_sizeの数値設定について
1
+ 畳み込み層におけるConv1Dの層のエラーについて
body CHANGED
@@ -1,23 +1,32 @@
1
- kerasを用いて機械学習の勉強をしております。
1
+ kerasを用いて機械学習の勉強をしており、1次元の畳み込み層を導入したいと考えております。
2
- 1次元畳み込み導入したいと考えております。層の設定を行いたい場合、例えばサンプル数をnとすると
2
+ Conv1Dの層導入の際にdimensionsのエラーがで進まずに困っております。
3
- 学習させるサンプルのinput_shapeを(n,64,1),targetのデータが(n,16,1)の場合
4
- 学習するモデル設定時に
5
3
 
6
4
 
5
+ 学習させるデータのshapeが以下の場合に
6
+ train_X.shape:(5408, 270, 1)
7
+ train_y.shape:(5408, 1)
8
+ test_X.shape:(1352, 270, 1)
9
+ test_y.shape:(1352, 1)
10
+ 以下の畳み込み層を設定してみると
7
11
  ```python
12
+
8
13
  model = Sequential()
9
- model.add(Conv1D(64, 8, padding='same', input_shape=(64, 1), activation='relu'))
14
+ model.add(Conv1D(270, 8, padding='same', input_shape=(270, 1), activation='relu'))
10
15
  model.add(MaxPooling1D(2, padding='same'))
11
- model.add(Conv1D(64,8,padding='same',activation='relu'))
16
+ model.add(Conv1D(270,8,padding='same',activation='relu'))
12
17
  model.add(MaxPooling1D(2, padding='same'))
13
- model.add(Conv1D(32,8,padding='same', activation='relu'))
18
+ model.add(Conv1D(135,8,padding='same', activation='relu'))
14
19
  model.add(Conv1D(1,8,padding='same', activation='tanh'))
15
20
  model.compile(loss='mse', optimizer='adam')
16
- history = model.fit(train_X, train_y, validation_split
21
+ history = model.fit(train_X, train_y, validation_data=(test_X,test_y))
17
-
18
22
  ```
19
- と例では設定されていました。
23
+ では
24
+ ValueError: Error when checking target: expected conv1d_21 to have 3 dimensions, but got array with shape (5408, 1)
20
25
 
26
+
27
+ と表示されてしまいます。
28
+ filtersとkernel_sizeの設定がうまくいっていないとおもうのですが、解決方法がわかりません。
29
+
21
30
  上記のConv1Dの層の64,8の部分のfilters,kernel_sizeの数値の設定についてkerasのドキュメンテーションなどを調べているのですが、わからずにおります。
22
31
 
23
32
  kerasのドキュメンテーションを見ると