3.1 비선형성과 그 필요성
이전 장의 보스턴 주택 예제를 이어서 진행해 보죠. 하나의 밀집 층을 사용해 훈련한 모델은 대략 5,000달러의 예측 오차에 해당하는 MSE를 만들었습니다. 이를 더 개선할 수 있을까요? 물론입니다. 보스턴 주택 데이터셋에서 더 좋은 모델을 만들려면 다음 코드에서처럼 밀집 층을 더 추가합니다(보스턴 주택 예제의 index.js에서 발췌).
코드 3-1 보스턴 주택 문제를 위해 두 개의 층을 가진 신경망 정의하기
export function multiLayerPerceptronRegressionModel1Hidden() {
const model = tf.sequential();
model.add(tf.layers.dense({
inputShape: [bostonData.numFeatures],
units: 50,
activation: 'sigmoid',
kernelInitializer: 'leCunNormal' ------ 커널 초기화 방법을 지정합니다. 하이퍼파라미터 최적화를 통해 이 값을 선택하는 방법에 대한 설명은 3.1.2절을 참고하세요.
}));
model.add(tf.layers.dense({units: 1})); ------ 은닉층을 추가합니다.
model.summary(); ------ 모델의 구조를 텍스트로 출력합니다.
return model;
};