kerasを用いたCNNモデルの作成で、エラーが表示され対処できない状況です。
なんとなくですが、畳み込み演算の過程で画像データが小さくなりすぎてしまい、エラーを表示しているのかと想定しています。
そこでご質問です。
・「Con - Relu - Pooling」の層を増やしたいのですが、どうしても3層以上増やすことができません。(今回発生したエラーのため、、、)どうしたら増やせるでしょうか。
・上記の質問と被りますが、画像データが小さくなるのを防ぐためにパディング処理を行おうと思うのですが、「Con2D」の層に
padding='valid' を入れればよいのでしょうか。入れても同じエラーが表示するので、亜ディング処理できているか不安です。
この件についてご確認お願いします。
python
1 2# 入力データ:data ラベルデータ:label 3model = Sequential() 4# 先に作成したmodelへレイヤーを追加 5model.add(Conv2D(64, (4, 4),input_shape=(28,28,1))) 6model.add(Conv2D(64, (4, 4))) 7 8model.add(BatchNormalization()) 9model.add(Activation('relu')) 10model.add(MaxPooling2D(pool_size=(2, 2))) 11 12model.add(Conv2D(64, (2, 2))) 13model.add(Conv2D(64, (2, 2))) 14model.add(BatchNormalization()) 15model.add(Activation('relu')) 16model.add(MaxPooling2D(pool_size=(2, 2))) 17 18model.add(Conv2D(64, (2, 2))) 19model.add(Conv2D(64, (2, 2))) 20model.add(BatchNormalization()) 21model.add(Activation('relu')) 22model.add(MaxPooling2D(pool_size=(2, 2))) 23 24 25 26★model.add(Conv2D(64, (2, 2))) 27model.add(BatchNormalization()) 28model.add(Activation('relu')) 29model.add(MaxPooling2D(pool_size=(2, 2))) 30 31 32 33model.add(Flatten()) 34model.add(Dense(256)) 35model.add(BatchNormalization()) 36model.add(Activation('relu')) 37 38model.add(Dense(15)) 39model.add(BatchNormalization()) 40model.add(Activation('softmax')) 41# Learnig Processの設定 42model.compile(loss='categorical_crossentropy', 43 optimizer="adadelta", 44 metrics=['accuracy']) 45result =model.fit(data1, label1,verbose=2, epochs=150) 46print(result)
エラーについて
python
1ValueError: Negative dimension size caused by subtracting 2 from 1 for 'conv2d_286/convolution' (op: 'Conv2D') with input shapes: [?,1,1,64], [2,2,64,64]. 2 3## 最後の層の「★model.add(Conv2D(64, (2, 2)))」でエラー
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。