회귀분석(선형회귀 & 로지스틱회귀)
회귀분석(선형회귀 & 로지스틱회귀)
선형회귀 이론
데이터를 놓고 그걸 가장 잘 설명할 수 있는 선을 찾는 분석하는 방법을 선형 회귀(Linear Regression) 분석이라 부른다.
예를 들어 키와 몸무게 데이터를 펼쳐 놓고 그것들을 가장 잘 설명할 수 있는 선을 하나 잘 그어놓게 되면, 특정 인의 키를 바탕으로 몸무게를 예측할 수 있다.
이런 데이터의 분포를 가지고 추세선을 도출해내는 것이라고 할수있다.
y = ax + b
이 추세선 함수에서 b는 절편에 해당한다.
손실함수와 경사하강법
당연히 추세선은 실제 데이터와 약간의 차이가 발생한다. 일종의 오차라 할 수 있는데, 손실(Loss)이라고도 한다.
위에서 보면 추세선과 실제 데이터사이에 간격이 보일것이다. 이것이 오차이다.
결국 선형 회귀 모델의 목표는 모든 데이터로부터 나타나는 오차의 평균을 최소화할 수 있는 최적의 기울기와 절편을 찾는 거다.
손실(Loss)을 함수로 나타내면 이렇게 아래로 볼록한 모양
손실함수 그래프에 점들을 순회하며 아래로 내려가면서 가장 최적의 a와 b를 갖는 부분을 찾아낸다.
이 방법을 경사하강법이라고 부르며, 이를 사용해 손실을 최소화 하는 최적의 기울기(a) 와 절편(b) 를 찾아낼수있다.
이를 공식화한 식도 존재한다.
예시를 보면 듬성듬성 점을 하강시키는데 이걸 학습률 이라고한다.
학습률을 설정해줄수있는데 낮게 설정하면 듬성듬성 하강하게 되어 최적의 값을 제대로 찾지 못한다.
로지스틱 회귀 이론
아래 실습 텝에 너무 잘 정리된 곳이 있어서 참고링크 첨부
데이터 정규화 부분 중요함
실습
[선형회귀]--------------------------------------------------------
(이론) 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/