과적합을 해결하는 방법으로 드롭아웃(dropout)이 있습니다.

    신경망 모델이 과적합되는 것을 피하기 위한 방법으로, 학습 과정 중 임의로 일부 노드들을 학습에서 제외시킵니다.

    ▲ 그림 4-16 일반적인 신경망과 드롭아웃이 적용된 신경망

    다음은 텐서플로 2에서 드롭아웃을 구현하는 예시 코드입니다.

    model = tf.keras.models.Sequential([
        tf.keras.layers.Flatten(input_shape=(28,28)),
        tf.keras.layers.Dense(128, activation='relu'),
        tf.keras.layers.Dropout(0.2), ------드롭아웃 적용
        tf.keras.layers.Dense(10, activation='softmax')
    ])
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.