나는 CNN을 잠시 동안 공부해 왔지만 아직 그것에 대해 잘 모른다. 그래서 중요한 것으로 생각한 것을 삽입했습니다.내 모델이 잘 작동합니까?
저는 10 개의 클래스가있는 1400 개의 이미지가 포함 된 손 제스처의 데이터 세트가 있습니다. 나는 spyder IDE에서 keras에 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 시대와 함께 훈련을 얻었다 : loss
Q1을
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]]
accuracy,이 모델은 잘하고 있나요? Q2 : 지나치게 적합합니까? Q3 : 최선의 방법으로 CNN을 어떻게 모델링 할 수 있습니까?
은 행렬의 대각선 부분에 매우 높은 숫자를 가지고있다 테스트 데이터 세트의 사용자의 혼동 행렬을 고려하여 시간
피팅이 맞는지 테스트하고, 일부 데이터를 열차 세트와 테스트 세트로 분할 한 다음 훈련 세트가 테스트 세트를 실행하기 시작하면 일반화가 잘되지 않으므로 모델이 지나치게 맞습니다. 새로운 보이지 않는 데이터. – DJK
나는 혼돈 행렬, precison과 recal table, sequential의 이미지를 넣어서 편집하려고한다. 그러나 올바른 형식이 아닌 코드가 있다고 말합니다. 사실 나는 아무 것도 가지고 있지 않습니다. – Sohib
문제는이 질문에 대한 정확한 대답이 없기 때문에 닫혔습니다. ANN은 올바르게 설정되어있는 한 항상 올바르게 작동합니다. 모델을 개선하기 위해 올바른 대답을 제공 할 수 없습니다. 따라서 Q1과 Q3는 답할 수 없습니다 (기술적으로 ..). – DJK