이번 장의 주제는 신경망 학습이다. 여기서 학습이란 훈련 데이터로부터 가중치 매개병수의 최적값을 자동으로 획득하는 것을 뜻한다. 또 이번 장에서는 신경망이 학습할 수 있도록 해주는 지표인 손실 함수를 소개한다. 이 손실 함수의 결괏값을 가장 작게 만드는 가중치 매개변수를 찾는 것이 학습의 목표이다. 이번 장에서는 손실 함수의 값을 가급적 작게 만드는 기법으로, 함수의 기울기를 활용하는 경사법을 소개한다.
앞장에서는 미리 만들어진 가중치 매개변수를 이용하여 새로운 데이터에 대한 추론을 하는 방법을 알아봤다. 이번 장에서는 주어진 데이터를 이용하여 참값이 되도록 훈련을 하여 최적의 참값이 나오도록 가중치 매개변수를 구하는 방법(학습)에 대해서 알아본다.
신경망의 특징은 데이터를 보고 학습할 수 있다는 점이다. 데이터에서 학습한다는 것은 가중치 매개변수의 값을 데이터를 보고 자동으로 결정한다는 뜻이다.
<aside> 💡 2장의 퍼셉트론도 직선으로 분리할 수 있는(선형 분리 가능) 문제라면 데이터로부터 자동으로 학습할 수 있다. 선형 분리 가능 문제는 유한 번의 학습을 통해 풀 수 있다는 사실이 퍼셉트론 수렴 정리로 증명되었다. 그러나 비선형 분리 문제는 자동으로 학습할 수 었다.
</aside>
기계 학습은 데이터가 생명이다. 데이터에서 답을 찾고 데이터에서 패턴을 발견하며 데이터로 이야기를 만드는 것이 바로 기계 학습이다. 기계학습에서는 사람의 개입을 최소화하고 수집한 데이터로부터 패턴을 찾으려고 시도한다. 게다가 신경망과 딥러닝은 기존 기게 학습에서 사용하던 방법보다 사람의 개입을 더욱 배제할 수 있게 해주는 중요한 특성을 지녔다.
예를 들어, 이미지에서 ‘5’라는 숫자를 인식하는 프로그램을 구현한다고 생각해보자.
당장 머릿속에 떠오르는 알고리즘이 있는가? ‘5’를 제대로 분류하는 프로그램을 직접 고안해 설계하기란 의외로 어려운 문제임을 알 수 있다. 사람이라면 어렵지 않게 인식하지만, 그 안의 숨은 규칙성을 명확한 로직으로 풀기가 만만치 않다.
자, 이제 ‘5’를 인식하는 알고리즘을 밑바닥부터 ‘설계하는’ 대신, 주어진 데이터를 잘 활용해서 해결하고 싶어질 것이다. 그런 방법의 하나로, 이미지에서 **특징(feature)**을 추출하고 그 특징의 패턴을 기계학습 기술로 학습하는 방법이 있다. 여기서 말하는 특징은 입력 데이터(입력 이미지)에서 본질적인 데이터(중요한 데이터)를 정확하게 추출할 수 있도록 설계된 변환기를 가리킨다. 이미지의 특징은 보통 벡터로 기술하고, 컴퓨터 비전 분야에서는 SIFT, SURF, HOG 등의 특징을 많이 사용한다. 이런 특징을 사용하여 이미지 데이터를 벡터로 변환하고, 변환된 벡터를 가지고 지도 학습 방식의 대표 분류 기법인 SVM, KNN 등으로 학습할 수 있다.

그림 4-1 규칙을 ‘사람’이 만드는 방식에서 ‘기계’가 데이터로부터 배우는 방식으로 패러다임 전환 ; 회색 블록은 사람이 개입하지 않음을 의미한다.
[그림 4-1]과 같이 신경망은 이미지를 ‘있는 그대로’ 학습한다. 두 번째 접근 방식(특징과 기계학습 방식)에서는 특징을 사람이 설계했지만, 신경망은 이미지에 포함된 중요한 특징까지도 ‘기계’가 학습할 것이다.
<aside> 💡 딥러닝은 **종단간 기계학습(end-to-end machine learning)**이라고 한다. 여기서 종단간은 ‘처음부터 끝까지’라는 의미로, 데이터(입력)에서 목표한 결과(출력)를 사람의 개입 없이 얻는다는 뜻을 담고 있다.
</aside>