Python의 로그 회귀(단계별)


대수 회귀는 처음에는 성장이나 쇠퇴가 급격하게 가속화되다가 시간이 지남에 따라 느려지는 상황을 모델링하는 데 사용되는 회귀 유형입니다.

예를 들어, 다음 그래프는 로그 붕괴의 예를 보여줍니다.

이러한 유형의 상황에서는 예측 변수와 반응 변수 간의 관계가 대수 회귀를 사용하여 잘 모델링될 수 있습니다.

로그 회귀 모델의 방정식은 다음 형식을 취합니다.

y = a + b*ln(x)

금:

  • y: 응답 변수
  • x: 예측 변수
  • a, b: xy 사이의 관계를 설명하는 회귀 계수

다음 단계별 예제에서는 Python에서 로그 회귀를 수행하는 방법을 보여줍니다.

1단계: 데이터 생성

먼저 xy 라는 두 변수에 대한 가짜 데이터를 만들어 보겠습니다.

 import numpy as np
x = np. arange (1, 16, 1)
y = np. array ([59, 50, 44, 38, 33, 28, 23, 20, 17, 15, 13, 12, 11, 10, 9.5])

2단계: 데이터 시각화

다음으로, xy 사이의 관계를 시각화하기 위한 빠른 산점도를 만들어 보겠습니다.

 import matplotlib. pyplot as plt

plt. scatter (x,y)
plt. show () 

그래프를 보면 두 변수 사이에 대수적 감소 패턴이 있음을 알 수 있습니다. 응답 변수 y 의 값은 처음에는 급격히 감소하다가 시간이 지나면서 느려집니다.

따라서 변수 간의 관계를 설명하기 위해 로그 회귀 방정식을 맞추는 것이 현명한 것 같습니다.

3단계: 로그 회귀 모델 피팅

다음으로, x 의 자연 로그를 예측 변수로 사용하고 y를 응답 변수로 사용하여 로그 회귀 모델을 맞추기 위해 polyfit() 함수를 사용합니다.

 #fit the model
fit = np. polyfit (np. log (x), y, 1)

#view the output of the model
print(fit)

[-20.19869943 63.06859979]

결과의 계수를 사용하여 다음과 같은 조정된 로그 회귀 방정식을 작성할 수 있습니다.

y = 63.0686 – 20.1987 * ln(x)

이 방정식을 사용하여 예측 변수 x 값을 기반으로 응답 변수 y 를 예측할 수 있습니다. 예를 들어, x = 12이면 y는 12.87이 될 것이라고 예측합니다.

y = 63.0686 – 20.1987 * ln(12) = 12.87

보너스: 이 온라인 로그 회귀 계산기를 사용하여 주어진 예측 변수 및 응답 변수에 대한 로그 회귀 방정식을 자동으로 계산할 수 있습니다.

추가 리소스

Python의 선형 회귀에 대한 완전한 가이드
Python에서 지수 회귀를 수행하는 방법
Python에서 로지스틱 회귀를 수행하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다