비선형성과 모델 용량
비선형성이 왜 모델의 정확도를 향상시킬까요? 비선형 함수를 사용하면 다양한 입력-출력 관계를 표현할 수 있습니다. 이전 장에서 본 다운로드 시간 문제처럼 실전에서 많은 입출력 관계는 거의 선형적입니다. 하지만 그렇지 않은 문제도 많습니다. 비선형 관계의 예는 쉽게 찾아볼 수 있습니다. 사람의 키와 나이 사이의 관계를 생각해 보죠. 사람의 키는 나이에 따라 대체로 선형적으로 변하지만 어느 지점에서 구부러져 평탄해집니다. 합리적인 또 다른 예로는 범죄율이 특정 범위 안에 있을 때만 주택 가격이 이웃 지역의 범죄율에 음의 선형 관계일 수 있다는 것입니다. 이전 장에서 만든 것 같은 완전한 선형 모델은 이런 종류의 관계를 정확히 모델링할 수 없습니다. 시그모이드 함수를 사용한 모델이 이런 관계를 모델링하는 데 훨씬 더 잘 맞습니다. 물론 범죄율과 주택 가격의 관계는 그림 3-2의 왼쪽에 있는 증가하는 시그모이드 함수보다 감소하는 (뒤집힌) 시그모이드 함수에 더 가깝습니다. 하지만 시그모이드 함수 다음에 튜닝 가능한 가중치를 가진 선형 함수가 뒤따르기 때문에 신경망이 이런 관계를 모델링하는 데 문제가 없습니다.
하지만 선형 활성화 함수를 시그모이드처럼 비선형 함수로 바꾸면 데이터에 있을지도 모르는 어떤 선형 관계를 학습할 능력을 잃지 않을까요? 다행히 그렇지 않습니다. 시그모이드 함수의 (원점에 가까운) 일부 영역은 거의 직선에 가깝기 때문입니다. tanh나 렐루 같은 자주 사용되는 다른 비선형 활성화 함수도 선형 또는 선형에 가까운 영역을 가지고 있습니다. 입력의 어떤 원소와 출력 원소 사이의 관계가 거의 선형적이라면, 비선형 활성화 함수를 사용한 밀집 층은 활성화 함수의 거의 선형적인 부분을 활용해 적절한 가중치와 편향을 학습하는 것이 가능합니다. 따라서 밀집 층에 비선형 활성화 함수를 추가하면 학습할 수 있는 입력-출력 관계의 범위를 넓힐 수 있습니다.