더북(TheBook)

(그림 3-3의 아래처럼) 비선형 활성화 함수가 네트워크의 용량을 높여 주므로 신경망에 은닉층을 더 추가하면 보스턴 주택 문제에 더 잘 맞는 모델을 얻을 수 있지 않을까요? index.js에 있는 multiLayerPerceptronRegressionModel2Hidden() 함수가 바로 그것입니다. 이 함수는 신경망 회귀 모델 훈련 (은닉층 두 개) 버튼에 연결되어 있습니다. (보스턴 주택 예제의 index.js에서 가져온) 다음 코드를 확인해 보죠.

 

코드 3-2 보스턴 주택 문제를 위해 세 개의 층을 가진 신경망 정의하기

export function multiLayerPerceptronRegressionModel2Hidden() {
  const model = tf.sequential();

 

첫 번째 은닉층을 추가합니다.
  model.add(tf.layers.dense({               
    inputShape: [bostonData.numFeatures],   
    units: 50,                              
    activation: 'sigmoid',                  
    kernelInitializer: 'leCunNormal'        
  }));

 

두 번째 은닉층을 추가합니다.
  model.add(tf.layers.dense({               
    units: 50,                              
    activation: 'sigmoid',                  
    kernelInitializer: 'leCunNormal'        
  }));/

 

  model.add(tf.layers.dense({units: 1}));
  model.summary(); ------ 모델 구조를 텍스트로 출력합니다.
  return model;
};
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.