더북(TheBook)

Sequential() 함수와 Dense() 함수는 2장에서 이미 소개한 바 있습니다. 이 함수를 불러와 선형 회귀를 실행하는 코드는 다음과 같습니다.

model.add(Dense(1, input_dim=1, activation='linear')) ----- ➊
model.compile(optimizer='sgd', loss='mse') ----- ➋
model.fit(x, y, epochs=500) -----  ➌

단 세 줄의 코드에 앞서 공부한 모든 것이 담겨 있습니다. 어떻게 설정하는지 살펴보겠습니다.

먼저 가설 함수는 H(x) = wx + b입니다. 이때 출력되는 값(=성적)이 하나씩이므로 Dense() 함수의 첫 번째 인자에 1이라고 설정합니다. 입력될 변수(=학습 시간)도 하나뿐이므로 input_dim 역시 1이라고 설정합니다. 입력된 값을 다음 층으로 넘길 때 각 값을 어떻게 처리할지를 결정하는 함수를 활성화 함수라고 합니다. activation은 활성화 함수를 정하는 옵션입니다. 여기에서는 선형 회귀를 다루고 있으므로 'linear'라고 적어 주면 됩니다. 딥러닝 목적에 따라 다른 활성화 함수를 넣을 수 있는데, 예를 들어 다음 절에서 배울 시그모이드 함수가 필요하다면 ‘sigmoid’라고 넣어 주는 식입니다. 딥러닝에서 사용하는 여러 가지 활성화 함수에 대해서는 9장에서 상세히 배웁니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.