개발자 준비/Machine learning

회귀분석(선형회귀 & 로지스틱회귀)

osul_world 2022. 2. 20. 14:11
728x90

회귀분석(선형회귀 & 로지스틱회귀)

 

선형회귀 이론

데이터를 놓고 그걸 가장 잘 설명할 수 있는 선을 찾는 분석하는 방법을 선형 회귀(Linear Regression) 분석이라 부른다.

예를 들어 키와 몸무게 데이터를 펼쳐 놓고 그것들을 가장 잘 설명할 수 있는 선을 하나 잘 그어놓게 되면, 특정 인의 키를 바탕으로 몸무게를 예측할 수 있다.

 

img

이런 데이터의 분포를 가지고 추세선을 도출해내는 것이라고 할수있다.

y = ax + b

이 추세선 함수에서 b는 절편에 해당한다.

 

 

손실함수와 경사하강법

당연히 추세선은 실제 데이터와 약간의 차이가 발생한다. 일종의 오차라 할 수 있는데, 손실(Loss)이라고도 한다.

위에서 보면 추세선과 실제 데이터사이에 간격이 보일것이다. 이것이 오차이다.

 

 

img

결국 선형 회귀 모델의 목표는 모든 데이터로부터 나타나는 오차의 평균을 최소화할 수 있는 최적의 기울기와 절편을 찾는 거다.

 

손실(Loss)을 함수로 나타내면 이렇게 아래로 볼록한 모양

img

 

 

손실함수 그래프에 점들을 순회하며 아래로 내려가면서 가장 최적의 a와 b를 갖는 부분을 찾아낸다.

이 방법을 경사하강법이라고 부르며, 이를 사용해 손실을 최소화 하는 최적의 기울기(a) 와 절편(b) 를 찾아낼수있다.

이를 공식화한 식도 존재한다.

 

img

예시를 보면 듬성듬성 점을 하강시키는데 이걸 학습률 이라고한다.

학습률을 설정해줄수있는데 낮게 설정하면 듬성듬성 하강하게 되어 최적의 값을 제대로 찾지 못한다.

 

로지스틱 회귀 이론

아래 실습 텝에 너무 잘 정리된 곳이 있어서 참고링크 첨부

데이터 정규화 부분 중요함

 

실습

[선형회귀]--------------------------------------------------------

(이론) https://hleecaster.com/ml-linear-regression-concept/

(단순선형회귀) https://hleecaster.com/ml-linear-regression-example/

(다중선형회귀) https://hleecaster.com/ml-multiple-linear-regression-example/

 

[로지스틱]--------------------------------------------------------

(이론) https://hleecaster.com/ml-logistic-regression-concept/

(데이터 정규화) https://hleecaster.com/ml-logistic-regression-example/

(다중로지스틱회귀) https://hleecaster.com/ml-normalization-concept/

 

 

728x90