매직코드
article thumbnail
Published 2021. 8. 4. 13:31
파이썬 머신러닝 05. 회귀 ML&DL/study

회귀 알고리즘을 하나하나 자세히 공부하기 보기보다는 큰 틀에서 어떤 종류의 알고리즘이 있고,

어떤 특징이 있는지 대략적으로 공부하고자 작성했다.

회귀 알고리즘?

여러 개의 독립변수과 한 개의 종속변수 간의 상관관계를 모델링하는 기법

독립변수 : 영향을 미치는 요소

종속변수 : 영향을 받는 요소

독립변수 개수 회귀계수의 결합
1개 : 단일 회귀 회귀계수가 선형 : 선형회귀
여러개 : 다중 회귀 회귀계수가 비선형 : 비선형회귀

 

회귀 알고리즘의 종류

- 선형회귀 : 실제 값과 예측 값의 차이를 최소화하는 직선형 회귀선을 최적화하는 방식

  • 일반 선형회귀 
  • 릿지(L2 규제)
  • 라쏘(L1 규제, 피쳐 선택 기능)
  • 엘라스틱넷(릿지+라쏘)

- 로지스틱 회귀

- 회귀 트리


단순 선형 회귀

하나의 특징(독립변수)을 가지고 라벨값(종속변수)을 예측하기 위한 회귀모델

가장 단순한 모델로 변수들의 관계를 일차식 y = ax + b의 형태로 만들어 최적의 a, b값을 찾아 선을 만든다.

최적의 a, b값을 찾기 위해서 경사 하강법을 이용한다.

 

다항 회귀

독립변수가 여러개인 경우 라벨값을 예측하기 위한 회귀모델

다항 회귀의 차수를 높일수록 = 독립변수가 많을수록 = 피쳐가 많을수록 과적합의 문제가 크게 발생할 수 있다.

 

릿지 Ridge

최적의 오차값을 구한 이후에 과적합을 개선하기 위해 회귀계수를 규제시켜 최선의 모델을 찾는 방법

회귀계수를 규제시킨다는 것은 조건을 건다는 것과 같은 의미

이 그래프에서 원래 최소오차값은 좌표에 찍여있는 검은색 점이다.

하지만 과적합을 해결하기 위해 초록색 원 모양의 규제(조건)을 추가했다.

최소 오차값이 초록색 원 모양에 들어오는 경우가 규제(조건)를 만족하면서 가질 수 있는 최소오차값이다.

규제를 만족하면서 가질 수 있는 최소오차값을 찾기위해 기존의 최소오차값(검은색 점)에서 오차범위를 점차 늘려(빨간색 타원) 규제(초록색원)와 만나는 지점을 찾는다.

릿지의 경우 규제를 걸 때 오차의 제곱값을 이용하기 때문에 2차식인 원의 모양으로 그래프에 표현하게 된다.

 

라쏘 Lasso

릿지와 비슷한 모델이지만 규제를 걸 때 오차의 절댓값을 이용한다는 점이 다르다.

절댓값을 이용하기 때문에 최소오차값이 0과 만나는 지점이 발생할 확률이 높고, 0이되면 해당 피쳐는 삭제된다.

이러한 특성 때문에 라쏘는 피쳐를 선택할 수 있는 기능이 있다고 본다.

릿지와 마찬가지로 최소오차값(검은색 점)이 있고, 규제(초록색 마름모)와 만날 수 있도록 오차범위(빨간색 타원)를 점진적으로 늘려가며 적합한 오차값을 찾는다. 라쏘의 경우 오차의 절댓값을 이용하기 때문에 절댓값함수에 의해 마름모꼴로 그래프에 표현된다.

 

엘라스틱넷

릿지와 라쏘를 결합한 모델이다. 그래프로 표현하지면 다음과 같은 모양으로 표현할 수 있다.

로지스틱 회귀

로지스틱 회귀는 이름은 회귀이지만 실제로는 분류 알고리즘으로 사용된다.

시그모이드 함수의 최적선을 찾고 반환값을 확률로 간주해 확률에 따라 분류를 결정하는 분류 모델이다.

최적선이 0.5라고 한다면 회귀식에 따라 y 값이 0.5보다 작으면 조건에 해당되지 않음, 0.5보다 크면 조건에 해당됨으로 분류한다.

이 포스팅에서는 회귀식을 따로 설명하지는 않는다.

 

회귀 트리

지금까지는 선형 방식의 회귀 알고리즘을 봤다면 회귀트리는 선형방식이 아닌 트리방식의 회귀 알고리즘이다.

분류 트리와 비슷하지만 분류 트리는 Yes, No에 대해서 평가하는 반면 회귀트리는 각 데이터의 평균값(숫자값)을 구해 회귀 예측값을 계산단다.

 

profile

매직코드

@개발법사

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!