본문 바로가기

자기개발/Programming

머신러닝(Machine Learning) 기초 - 10 : 선형 회귀 분석(Linear Regression) - 포인트와 라인 (Points and lines)

지난 포스팅에서 흩뿌려져 있는 여러 데이터 포인트들을 관통하는 하나의 line of best fit을 찾았던 것처럼 프로그램에서 동일한 수준의 추측을 하기 위해서는 데이터들의 위치/지점을 통해 선(line)이 어떻게 보일지 결정해야 한다.

선 (line)은 기울기와 y 절편 (y-intercept)를 찾아야하는데 다른 말로

 

y = mx + b

 

와 같은 방정식에서 m은 기울기, b는 절편을 의미하며 기울기는 선(line)의 경사진 정도를, 절편은 선(line)이 y축 어느 지점을 지나가는지를 뜻한다.

선형 회귀 분석을 행할 때 우리의 목적은 주어진 데이터에 대해 '최적의' m과 b를 얻는 것이며 하기에 주어진 예제와 같이 월, 그리고 매출액에 대한 선형 회귀 법을 적용할 수 있다.

 

해당 line of best fit을 이용해 원하는 월에 대한 매출액을 '예측' 하거나 매출액으로 해당 월을 찾을 수 있게 된다.

 

months = [1, 2, 3... 12]
revenue = [52, 74, 79, 95, 115, 110, 129, 126, 147, 146, 156, 184]

m = 12
b = 40

y= [ ]
y = [m * month + b for month in months]
plt.plot(months, revenue, "o")
plt.plot(months, y)
plt.show( )