더북(TheBook)

코드 4-1 MNIST 데이터셋을 위한 합성곱 신경망 모델 정의하기

function createConvModel() {
  const model = tf.sequential();

 

첫 번째 conv2d 층
  model.add(tf.layers.conv2d({         
    inputShape: [IMAGE_H, IMAGE_W, 1], 
    kernelSize: 3,                     
    filters: 16,                       
    activation: 'relu'                 
  }));

 

합성곱 층 다음에 오는 풀링 층
  model.add(tf.layers.maxPooling2d({  
    poolSize: 2,                      
    strides: 2                        
  }));

 

conv2d-maxPooling2d 패턴 반복하기
  model.add(tf.layers.conv2d({                         
    kernelSize: 3, filters: 32, activation: 'relu'})); 

 

  model.add(tf.layers.maxPooling2d({poolSize: 2, strides: 2}));
  model.add(tf.layers.flatten());  ------ 밀집 층에 주입하기 위해 텐서를 펼치기
  model.add(tf.layers.dense({
    units: 64,
    activation:'relu'
  }));
  model.add(tf.layers.dense({units: 10, activation: 'softmax'})); ------ 다중 분류 문제이므로 소프트맥스 활성화 함수 사용하기 
  model.summary(); ------ 모델 구조 출력하기
  return model;
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.