본문 바로가기
AI · 인공지능/딥러닝 Tutorial

[딥러닝 입문 - 6] 단일 회귀 분석과 다중 회귀 분석(1/4)

by 두우우부 2021. 5. 30.
반응형

6. 단일 회귀 분석과 다중 회귀 분석

이 장에서는 기초적인 기계 학습 기법 중 대표적인 단일 회귀 분석과 다중 회귀 분석을 수식을 사용하여 설명합니다. 또한 다음 장에서는 이 장에서 소개한 수식을 Python으로 구현하는 것도 소개할 예정입니다.

 

이 튜토리얼의 주제인 딥 러닝 이전에, 단 회귀 분석과 다중 회귀 분석을 소개하는 데는 두 가지 이유가 있습니다. 첫 번째는 단일 회귀 분석과 다중 회귀 분석의 수학이 신경망을 포함한 딥 러닝 수학의 기초가 되기 때문입니다. 두 번째는 단일 회귀 분석 알고리즘을 통해서는 미분을, 다중 회귀 분석 알고리즘을 통해서는 선형 대수학에 대한 이해도를 높일 수 있기 때문입니다.

 

기계 학습 기법은 지도학습(supervised learning), 비지도학습(unsupervised learning)강화학습(reinforcement learning)으로 대별되며, 단일 회귀 분석은 지도 학습에 포함됩니다. 본 튜토리얼에서 다루는 대다수의 방법이 지도 학습입니다.

 

지도 학습 중에서도 전형적인 문제 설정은 두 가지로 대별됩니다. 주어진 입력 변수에서 10이나 0.1 같은 실수를 예측하는 회귀(regression)와, '레드 와인', '화이트 와인' 등의 카테고리를 예측하는 분류(classification)의 두 가지입니다.

 

단일 회귀 분석은 회귀를 수행하기 위한 방법이며, 하나의 입력 변수에서 하나의 출력 변수를 예측합니다. 반면 다중 회귀 분석은 여러 입력 변수에서 하나의 출력 변수를 예측합니다. 이 두 개의 수법은 지도 학습이기 때문에 훈련 시에는 입력 변수 x와 목적 변수 t가 쌍으로 준비되어 있어야 합니다.

 

회귀 분석 알고리즘은 다음의 3단계로 진행됩니다.

  • Step 1 : 모델을 결정
  • Step 2 : 목적 함수를 결정
  • Step 3 : 최적의 파라미터를 요구

 

6.1. 단 회귀 분석

6.1.1. 문제 설정 (단 회귀 분석)

단 회귀 분석은 하나의 입력 변수에서 하나의 출력 변수를 예측합니다. 쉬운 예로 방 넓이 x로부터 월세 y를 예측하는 문제를 생각해 보겠습니다.

 

6.1.2 Step 1 : 모델을 결정 (단 회귀 분석)

먼저, 입력 변수 x와 출력 변수 y의 관계를 어떻게 정할지 결정합니다. 

이렇게 공식화된 것을 모델 또는 수학적 모델이라고 합니다.

 

단 회귀 분석의 모델을 구체적으로 생각해 봅시다. 예를 들어, 월세와 방의 넓이의 조합으로 표현되는 데이터를 3개 모아서, 「월세」를 y축에 「방 넓이」를 x축으로 잡고, 이를 늘어놓으면 다음과 같이 되었다고 합시다.

 

이 경우, 방이 넓어질수록 월세가 높아지는 관계가 예상됩니다. 또한, 이 두 변수 간의 관계는 직선으로 표현될 것으로 판단됩니다.

그래서 두 개의 매개 변수 w와 b에 의해 특징지어진 직선의 방정식

 

y = wx+b 에 의해 방의 넓이와 임대료의 관계를 나타내는 것을 생각해 보겠습니다. 여기에서

 

w는 가중치(weight), b는 바이어스(bias)의 머리글자를 사용하고 있습니다.

 

단 회귀 분석에서는 이러한 모델로 직선 y=wx+b를 사용합니다. 그리고 두 개의 매개변수인 w와 b를, 직선과 데이터가 잘 fit 되도록 조정합니다.

 

파라미터로 특징 지워진 모델을 사용하는 경우, 주어진 데이터 세트에 적합하도록 최적의 파라미터를 구하는 것이 목표입니다. 이번에는 데이터 세트로 방의 넓이 x, 월세 t의 쌍으로 구성된 데이터 집합을 사용합니다. 총 N개의 데이터가 있고, n번째 데이터가

 

로 표현될 때, 데이터 세트는

 

 

 

로 나타낼 수 있습니다. 이를 이용하여 새로운 x를 입력하면 이에 대응하는 t를 예측하는 모델을 훈련합니다.

 

6.1.3 전처리

다음 단계로 진행하기 전에 데이터 전처리(preprocessing)를 하나 소개합니다. 데이터의 중심화(centering)는 데이터의 평균값이 0이 되도록 모든 데이터를 평행 이동하는 작업을 말합니다. 다음 그림은 데이터 집합

 

 

를 평균이 (0, 0)이 되도록 평행 이동하는 예입니다.

 

중심화에 의한 데이터 전처리의 장점 중 하나로, 조정해야 할 매개 변수를 줄일 수 있다는 것입니다. 중심화 처리를 수행하면 절편을 고려할 필요가 없기 때문에, 데이터 간의 관계를 표현하는 직선의 방정식을

 

처럼 간결하게 표현이 가능합니다.

 

데이터 세트의 입력 변수와 목적 변수의 평균을 각각 

 

로 했을 경우, 

 

 

중심화 후의 입력 변수와 목적 변수는

가 됩니다.

 

이후는 설명을 쉽게 하기 위해, c라는 첨자를 생략하고 미리 중심화를 실시했다는 전제 하에 데이터를 처리합니다. 또한 그 데이터에 fit 시키고 싶은 모델은

 

로, 이쪽도 첨자 c를 생략하고 설명합니다.

 

6.1.4. Step 2 : 목적 함수를 결정 (단 회귀 분석)

여기서의 목표는 방의 넓이와 월세의 관계를 직선의 방정식으로 모델링하는 것입니다. 이 때문에, 미리 수집된 일부 데이터 세트를 사용하여, 모델이 방 넓이에서 예측한 월세(예측치)와 그 방 넓이에 해당하는 실제 월세(목표치)의 차이가 작아지도록 모델의 매개 변수를 결정합니다.

 

이번에는 목적 함수로 예측치와 목표치의 오차 제곱합(sum-of-squares error)을 사용합니다. 오차 제곱합이 0일 때, 또는 그때의 예측치 y는 목표치 t와 완벽하게 일치(t=y)하고 있습니다. n번째 데이터의 방 넓이 xn가 주어졌을 때 모델의 예측치 yn과, 대응하는 목표치 tn 사이의 오차 제곱은

입니다. 이를 모든 데이터에 걸쳐서 합한 것이 다음의 오차 제곱의 합입니다.

 

 

이번에 이용한 모델은

 

이기 때문에, 목적 함수는

 

로 표기할 수 있습니다.

 

[딥러닝 입문 - 6] 단일 회귀 분석과 다중 회귀 분석(2/4)

 

[딥러닝 입문 - 6] 단일 회귀 분석과 다중 회귀 분석(2/4)

6.1.5. Step 3 : 최적의 파라미터를 구함 (단 회귀 분석) 이 목적 함수를 최소화하는 매개 변수를 구합니다. 여기에서 목적 함수는 차이의 제곱합이며, 항상 양수 또는 0을 취하는 아래로 볼록한 이

doooob.tistory.com

 

반응형