본문 바로가기

[모두를 위한 딥러닝/시즌2] Lab-04-1 Multivariable Linear regression

 

Lab-04-1 Multivariable Linear regression

 

다음은 모두를 위한 딥러닝 시즌 2의 Lab-04-1 Multivariable Linear regression를 학습하고 요약정리한 내용입니다. 강의에서 말씀하시는 다항 선형 회귀(Multivariable/Multivariate Linear Regression)는 통계에서 다중 선형 회귀(Multiple Linear Regression)이므로 앞으로 '다항' 선형 회귀는 '다중' 선형 회귀로 표시하겠습니다. 그리고 Multivariable/Multivariate Linear Regression은 통계에서 '다변량' 선형 회귀라고 부르며 이는 '다중' 선형 회귀와 다른 것이므로, '다변량' 선형 회귀로 표시하겠습니다. 강의 내용을 기반으로 요약하되, 보충 설명이 필요한 경우 부스트코스 위키독스를 참고했습니다.

학습 목표

다중 선형 회귀(Multiple Linear Regression)에 대해 알아본다.

핵심 키워드

다중 선형 회귀(Multiple Linear Regression), 가설 함수(Hypothesis Function),

평균 제곱 오차(Mean Squared Error), 경사 하강법(Gradient descent)

1. 데이터에 대한 이해(Data Definition)


코드

 • 다중 선형 회귀(Multiple Linear Regression): x가 2개 이상인 선형 회귀(x로부터 y를 예측하는 1차식)
cf) 다변량 선형 회귀(Multivariate/Multivariable Linear Regression): y가 2개 이상인 선형 회귀

 • 샘플(sample): 전체 훈련 데이터의 개수를 셀 수 있는 1개의 단위

ex) 위의 슬라이드의 경우 샘플 개수가 총 5개
 • 특성(feature): 각 샘플에서 y를 결정하게 하는 각각의 독립 변수 x

ex) 위의 슬라이드의 경우 피쳐 개수가 총 3개

2. 가설(Hypothesis) 수립


x의 길이가 길어질수록 행렬로 계산하는 것이 편하고 속도도 빠름!

3. 손실 계산하기(Compute loss)


단순 선형 회귀와 같은 cost function

4. 경사 하강법(Gradient Descent)


단순 선형 회귀와 같은 gradient descent

5. 전체 코드


 • forward 연산: H(x) 식에 입력 x로부터 예측된 y를 얻는 것
코드 ex) hypothesis = model(x_train)
 • backward 연산: 학습 과정에서 비용 함수를 미분하여 기울기를 구하는 것
코드 ex) cost.backward()

pytorch에서 제공하고 있는 nn.Module과 F.mse_loss를 사용하면 더 편리하게 코드 구현 가능!