시작하기무료로 시작하기

Keras로 지표와 검증 설정하기

이전 연습 문제에서 수어 알파벳을 예측하는 모델을 학습했지만, 성능이 얼마나 좋은지는 명확하지 않았습니다. 이번 연습에서는 결과를 더 해석하기 쉽게 만들어 보겠습니다. 검증 분할을 사용하지 않았기 때문에, 훈련 세트에서만 성능이 좋아지는 것을 확인했을 뿐이며, 그중 얼마나 과적합 때문인지 판단하기 어렵습니다. 또한, 별도의 지표(metric)를 지정하지 않아 손실 함수 감소만 확인했는데, 이것만으로는 명확한 해석이 어렵습니다.

참고로 kerastensorflow에서 이미 임포트되어 있습니다.

이 연습은 강의의 일부입니다

Python으로 시작하는 TensorFlow

강의 보기

연습 안내

  • 첫 번째 Dense 층의 노드 수를 32로 설정하고, 활성화 함수는 sigmoid를 사용하며, 입력 형태는 (784,)로 지정하세요.
  • 옵티마이저는 Root Mean Square Propagation, 손실 함수는 categorical crossentropy, 지표는 accuracy를 사용하세요.
  • 에포크 수를 10으로 설정하고, 데이터셋의 10%를 검증에 사용하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Define sequential model
model = keras.Sequential()

# Define the first layer
model.add(keras.layers.Dense(____, ____, ____))

# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))

# Set the optimizer, loss function, and metrics
model.compile(optimizer='____', loss='____', metrics=['____'])

# Add the number of epochs and the validation split
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)
코드 편집 및 실행