일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- CASE WHEN
- 데이터 분석
- layer normalization
- 정밀도
- 웹서비스 기획
- ifnull
- Normalization
- five lines challenge
- recall
- 데이터 전처리
- 평가 지표
- beautifulsoup
- nvl2
- 강화학습
- 백엔드
- DecisionTree
- 데이터 프로젝트
- 오차 행렬
- sorted
- 감정은 습관이다
- LAG
- 지도학습
- NULLIF
- SQL
- 빠르게 실패하기
- Batch Normalization
- 비지도학습
- NVL
- 재현율
- 결정트리
- Today
- Total
Day to_day
[지도 학습] 회귀 분석의 목적과 종류 본문
❗본 포스팅은 권철민 선생님의 '파이썬 머신러닝 완벽가이드' 강의와 '파이썬 라이브러리를 활용한 머신러닝' 서적을 기반으로 개인적인 정리 목적 하에 재구성하여 작성된 글입니다.
포스팅 개요
회귀 분석의 개념과 목적에 대해서 개요 정도로 설명하고 구체적인 내용은 다음 포스팅에 담아보겠다.
회귀 분석의 목적
회귀 분석은 독립변수와 종속변수 간의 함수 관계를 규명하는 통계적 방법이다.
머신러닝 회귀 예측의 핵심은 주어진 피처와 결정 값 데이터를 기반으로 학습을 통해 최적의 회귀 계수를 찾아내는 것이다.
만약 아파트 가격을 예측하려고 하는 회귀 분석을 하려고 한다면 ‘아파트 가격’이라는 종속변수에 영향을 주는 여러 가지 요소들이 있을 것이다. 예를 들면, 방의 개수, 아파트 크기, 주변 편의시설 등.. 그러한 종속변수의 원인이 되거나 영향을 주는 것을 ‘독립 변수’라고 한다.
수식으로 표현해보면 다음과 같이 쓸 수 있다.
이때 y는 종속 변수, 즉 아파트 가격.
x1, x2, x3, x4,... , xn : 방 개수, 아파트 크기, 주변 학군 등
w1, w2, w3, w4, ... , wn : 독립 변수의 값에 영향을 미치는 회귀 계수. 즉 각 독립변수마다 얼마나 영향을 미치는 가에 대한 가중치 값이다. ⇒ 이 회귀 계수를 찾아내는 것이 목적이 된다!
최적의 회귀 모델을 만든다는 것은 바로 전체 데이터의 잔차(오류 값) 합이 최소가 되는 모델을 만든다는 의미이다. 동시에 오류 값 합이 최소가 될 수 있는 최적의 회귀 계수를 찾는다는 의미이다.
회귀의 유형
회귀는 회귀 계수의 선형/비선형 여부, 독립 변수의 개수, 종속 변수의 개수에 따라 여러 유형으로 나눌 수 있는데 가장 중요한 것은 회귀 계수이다.
회귀 계수가 ‘선형이냐 아니냐’에 따라 선형 회귀와 비선형 회귀를 나눈다.
참고로 정형 데이터의 경우 선형 회귀가 더 예측 성능이 좋다.
독립 변수 개수 | 회귀 계수의 결합 |
1개 : 단일 회귀 | 선형 회귀 |
여러개 : 다중 회귀 | 비선형 회귀 |
선형 회귀의 종류
- 일반 선형 회귀 : 예측값과 실제 값의 RSS를 최소화할 수 있도록 회귀 계수를 최적화하며, 규제(Regulation)를 적용하지 않은 모델
- 릿지 : 릿지 회귀는 선형 회귀에 L2 규제를 추가한 회귀 모델
- 라쏘 : 라쏘 회귀는 선형 회귀에 L1 규제를 적용한 방식
- 엘라스틱넷 : L2, L1 규제를 함께 결합한 모델
- 로지스틱 회귀 : 로지스틱 회귀는 회귀라는 이름이 붙어있지만 사실은 분류에 사용되는 선형 모델 (1 또는 0을 예측함. binary 분류에 성능이 좋음)
RSS(Reidual Sum of Squares) 기반의 회귀 오류 측정 (최소 제곱법)
오류 값의 제곱을 구해서 더하는 방식이다.
에러**2 : 에러의 제곱의 합
- RSS는 변수 w0 과 w1인 식으로 표현할 수 있으며 회귀 계수를 학습을 통해서 찾는 것이 머신러닝 기반 회귀의 핵심 사항이다.
- RSS는 회귀식의 독립 변수 X, 종속 변수 Y가 중심 변수가 아니라 w 변수(회귀 계수)가 중심 변수임을 인지하는 것이 중요!!
- RSS를 회귀의 비용함수라고 하며 손실함수라고도 한다. 최종적으로 더 이상 감소하지 않는 최소의 오류 값을 구하는 것이 목적이다.
비용(cost) 최소화 하기
경사 하강법 : 점진적으로 반복적인 계산을 통해 W 파라미터 값을 업데이트하면서 오류 값이 최소가 되는 W를 구하는 방식이다.
- 반복적으로 비용함수의 반환값, 즉 예측값과 실제값의 차이가 작아지는 방향성을 가지고 W 파라미터를 지속해서 보정해 나간다.
- 오류 값이 더 이상 작아지지 않으며 그 오류 값을 최소 비용으로 판단하고 그때의 W 파라미터를 반환한다.
미분으로 함수의 최소 값 찾기
기울기가 감소하지 않고 기울기가 0이 되는 지점이 비용함수가 최소인 지점이다.
R(x)를 w1으로 편미분
R(x)를 w0으로 편미분
w1, w0의 편미분 결과인 위의 계산식을 반복적으로 보정하면서 w1, w0 값을 업데이트하면 비용함수 R(W)가 최소가 되는 w1, w0값을 구할 수 있다. 하지만 실제로는 위 편미분 값이 너무 클 수 있기 때문에 보정계수 η를 곱하고 이것을 “learning rate”라고 한다.
'Machine Learning > 지도 학습' 카테고리의 다른 글
[지도 학습] 규제 선형 회귀 L1, L2 norm (Ridge, Lasso, ElasticNet) (0) | 2023.06.16 |
---|---|
[지도 학습] 로지스틱 회귀 (Logistic Regression) (1) | 2023.04.22 |
[지도 학습] 스태킹 모델에 대해서 자세히 알아보기! (구현 코드) (0) | 2023.03.20 |
[지도 학습] LightGBM 개념과 예제 코드~! (1) | 2023.03.17 |
[지도 학습] 여러가지 부스팅 알고리즘 알아보기 (GBM, Adaboost, XGBoost) (0) | 2023.03.15 |