私はしばらくの間、CNNを勉強していて、まだそれについてよく分かりません。だから私は重要だと思ったものを挿入した。私のモデルはうまく機能していますか?
私は手のジェスチャーのデータセットを持っています。これには、10クラスの1400イメージが含まれています。私はスパイダーIDEのケラスでCNNモデルを構築しています。シーケンシャルは以下の通りです。
model = Sequential()
model.add(Convolution2D(32, 3,3,border_mode='same', input_shape=input_shape))
model.add(Activation('relu'))
model.add(Convolution2D(32, 3, 3))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.5))
model.add(Convolution2D(64, 3, 3))
model.add(Activation('relu'))
model.add(Convolution2D(64, 3, 3))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.5))
model.add(Convolution2D(64, 3, 3))
model.add(Activation('relu'))
model.add(Convolution2D(64, 3, 3))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.5))
model.add(Flatten())
model.add(Dense(64))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes))
model.add(Activation('softmax'))
model.compile(loss='categorical_crossentropy', optimizer='rmsprop',metrics=["accuracy"])
私は30のエポックと獲得とそれを訓練し:
Test Loss: 0.260991449015
Test accuracy: 0.928571430274
precision recall f1-score support
class 0 1.00 0.93 0.96 28
class 1 0.96 0.96 0.96 26
class 2 0.92 1.00 0.96 24
class 3 0.72 0.87 0.79 30
class 4 0.97 0.97 0.97 35
class 5 0.90 0.93 0.92 29
class 6 0.93 1.00 0.97 28
class 7 1.00 0.97 0.98 33
class 8 1.00 0.95 0.97 19
class 9 0.95 0.71 0.82 28
avg/total 0.93 0.93 0.93 280
Confusion matrix, without normalization
[[26 0 0 0 1 0 1 0 0 0]
[ 0 25 1 0 0 0 0 0 0 0]
[ 0 0 24 0 0 0 0 0 0 0]
[ 0 0 1 26 0 3 0 0 0 0]
[ 0 1 0 0 34 0 0 0 0 0]
[ 0 0 0 1 0 27 1 0 0 0]
[ 0 0 0 0 0 0 28 0 0 0]
[ 0 0 0 0 0 0 0 32 0 1]
[ 0 0 0 1 0 0 0 0 18 0]
[ 0 0 0 8 0 0 0 0 0 20]]
Q1:このモデルはうまくやっていますか? Q2:私はあまりフィットしませんか? Q3:CNNを可能な限り最良の方法でモデル化するにはどうすればよいですか?
は、テストデータセットのご混同行列は、行列の対角部分に非常に高い数字を持つ、ほとんど他の場所でゼロ考えると、あなたの時間
あなたが過ぎているかどうかテストするには、データの一部をトレインセットとテストセットに分割します。トレーニングセットがテストセットを実行し始めると、モデルはオーバーフィットになります新しい目に見えないデータへ – DJK
私は、混同行列、precisonとrecalテーブル、いくつかの画像を順次並べて編集しようとしています。しかし、正しくフォーマットされていないコードがあると言っています。実際に私は何も持っていない。 – Sohib
この問題は、問題に対する正確な答えがないため、閉じられました。 ANNは、正しくセットアップされている限り、常にうまく機能します。モデルを改善するための正解はありません。 Q1とQ3は答えられません(技術的に..)。 – DJK