
150
2
부
지도 학습
6.
모델 튜닝 및 모델 확정
3
장에서 설명한 바와 같이, 인공 신경망의 중간층 노드 수를 결정하는 것은 과학보다는 기술
에 가깝다. 중간층에 입력 데이터를 저장하는 노드와 너무 많이 연결되면 일반화 능력이 부
족한 신경망이 생성된다. 따라서 훈련셋에는 중간층의 노드 수를 늘려 성능을 향상시키지만
새로운 데이터셋에는 노드 수를 줄여 성능을 향상시킨다.
3
장에서 설명한 바와 같이, 인공 신경망에는 학습률, 모멘텀, 활성화 함수, 에폭 수와 배치
크기 등의 하이퍼파라미터가 있다. 격자 탐색 과정 동안 모든 하이퍼파라미터를 튜닝하지
만, 문제를 단순화하기 위해 은닉층 수에 대한 격자 탐색만 수행하는 것으로 제한한다. 다른
하이퍼파라미터에 대한 격자 탐색 수행 방법도 다음 코드에서 설명하는 것과 동일하다.
‘’’
Hidden_layer_sizes: 튜플, 길이 = n_layers-2, 기본값 (100,)
i 번째 요소는 i 번째 은닉층에 있는 뉴런의 수를 나타냄
‘’’
param_grid={‘hidden_layer_sizes’: [(20,), (50,), (20,20), (20, 30, 20)]}
model = MLPRegressor()
kfold = KFold(n_splits=num_folds, random_state=seed)
grid = ...