시작하기무료로 시작하기

숫자 학습하기

이제 scikit-learn에 기본 제공되는 샘플 데이터셋인 digits 데이터셋으로 모델을 만들어 볼게요. digits 데이터셋0부터 9까지의 손글씨 숫자를 8x8 픽셀로 담고 있어요:

주어진 이미지로 10개의 가능한 숫자 중 어느 것인지 구분해야 하므로, 여기서는 다중 클래스 분류를 다룹니다.

데이터셋은 이미 X_train, y_train, X_test, y_test로 분할되어 있으며, 데이터의 30%가 테스트용으로 사용돼요. 레이블은 이미 원-핫 인코딩된 벡터이므로 Keras의 to_categorical() 함수를 사용할 필요가 없습니다.

이제 새로운 model을 만들어 봅시다!

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

Keras로 시작하는 딥 러닝

강의 보기

연습 안내

  • 16개의 뉴런과 relu 활성화 함수를 사용하는 Dense 레이어를 추가하고, 8x8 숫자 이미지의 전체 픽셀 수를 받는 input_shape를 지정하세요.
  • 출력이 10개이고 softmax 활성화를 사용하는 Dense 레이어를 추가하세요.
  • adam, categorical_crossentropy, accuracy 지표로 모델을 컴파일하세요.
  • X_train에 대해 예측을 수행해 모델이 정상 동작하는지 확인하세요.

실습형 인터랙티브 연습

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

# Instantiate a Sequential model
model = Sequential()

# Input and hidden layer with input_shape, 16 neurons, and relu 
model.add(Dense(____, input_shape = (____,), activation = ____))

# Output layer with 10 neurons (one per digit) and softmax
model.____(____)

# Compile your model
model.____(optimizer = ____, loss = ____, metrics = [____])

# Test if your model is well assembled by predicting before training
print(model.predict(____))
코드 편집 및 실행