본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Linear Regression
종속변수 y와 독립변수 x와의 선형 상관 관계를 모델링하는 회귀 분석 기법
  • 귀뚜라미는 날씨가 더운 날 더 자주 우는 것으로 추정이 된다.

  • 그래서 온도에 따른 우는 횟수를 측정 해 보니 위 그래프와 같이 나왔다.

  • 이 그래프는 파란색 선과 같은 선형 관계를 가진다.
  • 저 그래프를 그리는 수식 y = mx+b 을 알아낸다면 어떤 온도에서 귀뚜라미가 얼마나 우는지, 또는 귀뚜라미가 얼마나 울면 어느 정도의 온도인지 알 수 있다.

기계 학습 과정

편집 원본 편집
  • 위 예시는 단순한 2차원 직선 그래프를 그리지만, 실제 일상 속의 현상은 저렇게 단순하지 않은 경우가 많다.
  • 요소가 2개를 넘어서서 3차원, 4차원, 심지어 10차원 이상일 수도 있고, 직선이 아니라 곡선을 그릴 수도 있다.[1]
  • 이렇게 여러 특성을 반영한 선형적 관계를 컴퓨팅 파워를 이용해 반복 계산하는 과정이 기계 학습과정이다.

아래와 같은 반복 과정을 거친다.

  • 선형 회귀 알고리즘은 오차를 최소화하는 직선을 찾는 방식으로 작동한다. 보통 평균 제곱 오차(Mean Squared Error, MSE)를 최소화하는 직선을 계산하며, 학습 과정에서 다음을 자동으로 수행한다.
    1. 초기 직선 설정: 처음에는 무작위 기울기와 절편으로 시작한다.
    2. 오차 계산: 데이터의 실제 y 값과 예측 y 값 사이의 오차(잔차)를 계산한다.
    3. 오차 최소화: 기울기와 절편을 조정하면서 오차가 최소화되는 방향으로 업데이트한다.
    4. 최적화 종료: 오차가 최소가 되면 최종적으로 구해진 직선의 기울기와 절편을 반환한다. 이 과정은 경사 하강법(Gradient Descent) 등의 최적화 알고리즘을 통해 이루어지며, 학습 데이터의 패턴에 맞춰 가장 적합한 직선이 자동으로 학습된다.

줄여서 LINE이라고 외우기도 하지만 한국의 기술사 학원 등에서 만들어낸 것으로 보인다. 전 세계적으론 CRUD, ACID, CIA, SOLID 처럼 통용되진 않는다.

  • 선형성(Linearity): 독립변수(X)과 종속변수(Y)가 선형 관계에 있음
  • 독립성(Independence): 종속변수는 다른 종속변수의 값에 의해 영향을 받지 않음
  • 정규성(Normality): 오차항은 다변량 정규분포를 띔
  • 등분산성(Homoscedasticity): 오차항의 분산은 모든 종속변수에 대해 동일함
    • Equal Variance 라고도 불리지만 주로 한국에서 외우기 쉽게 번역한 것이고, 학술적으로 정확하진 않다.

해석 가능성(interpretability)

편집 원본 편집
  • 선형 회귀는 단순한 수학적 모델로, 각 특성에 대해 선형 계수를 할당하기 때문에 각 특성이 타겟 변수에 미치는 영향을 쉽게 해석할 수 있다.
    • 예를 들어 연봉을 예측하는 선형 회귀 모델은 아래와 같은 식으로 표현될 수 있고, 곱해지는 값을 통해 특성의 영향도를 파악할 수 있다.
    • ex) 연간 소득 = 2500+(4000×교육 수준)+(200×근무 연수)+(10000×직위)+(300×평가 점수)+(50×주당 근무 시간)
  • 양수 계수는 양의 영향을, 음수 계수는 음의 영향을 나타낸다.

R 의 lm() 결과 읽기

편집 원본 편집

R 에서 model = lm(weight ~ Time, data) 로 단순 선형 회귀를 적합하고 summary(model) 을 보면 다음 항목이 나온다.

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)  24.4654     6.7279   3.636  0.00456 **
Time          7.9879     0.5236  15.255 2.97e-08 ***
Residual standard error: 12.29 on 10 degrees of freedom
Multiple R-squared:  0.9588,	Adjusted R-squared:  0.9547
F-statistic: 232.7 on 1 and 10 DF,  p-value: 2.974e-08
항목 읽는 법 위 예
Estimate 회귀계수 추정값. (Intercept) 는 절편, 변수 줄은 기울기 회귀식 weight = 24.4654 + 7.9879 × Time
기울기의 뜻 설명변수가 1 늘 때 반응변수가 기울기만큼 늘어난다 Time 이 1 늘면 weight 가 약 7.99 늘어난다
t|) 각 계수가 0 인지 검정하는 t 통계량과 p-값 기울기 p-값 2.97e-08 이라 Time 의 효과가 유의하다
F-statistic, p-value 모형 전체가 유의한지 보는 F-검정 F = 232.7, p-값 2.974e-08 < 0.05 이므로 회귀 모형이 유의하다
Multiple R-squared 결정 계수. 반응변수 변동 가운데 모형이 설명하는 비율 0.9588, 약 96% 를 설명한다
Adjusted R-squared 설명변수 수를 고려해 조정한 결정 계수 0.9547
Residual standard error 잔차의 표준 편차 추정값과 자유도 12.29, 자유도 10
  1. ↑ 특성이 많아 10차원 이상으로 넘어가는 경우는 다반사지만 직선이 아닌 곡선으로 학습되도록 하려면 먼저 선형 모델을 그려 본 후 곡선으로 학습을 하도록 따로 설정을 해줘야 한다. 기본적인 선형 회귀 모델은 독립 변수와 종속 변수간의 관계가 선형적(직선)이라고 가정하기 때문에 알아서 곡선을 만들어내진 못한다.