숫자 학습하기
이제 scikit-learn에 기본 제공되는 샘플 데이터셋인 digits 데이터셋으로 모델을 만들어 볼게요. digits 데이터셋은 0부터 9까지의 손글씨 숫자를 8x8 픽셀로 담고 있어요:
데이터셋은 이미 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(____))