파이썬 텐서플로우 & 머신러닝 기초

파이썬 텐서플로우 & 머신러닝 기초 2강 - 선형 회귀(Linear Regression)

green333 2021. 7. 8. 23:19
728x90
SMALL

선형 회귀(Linear Regression) 

변수 사이의 선형적인 관계를 모델링 한 것

 

선형적이다

"직선적이다"

일상생활의 많은 현상들은 선형적인 성격을 가짐 --> 이 관계에 적용할 수 있는 기계학습의 대표적인 모델이 바로 선형회귀!

 

 

데이터가 직선적인 관계를 가지는 것(선과 점 사이 차이가 존재하기는 함)

 

학습을 시킨다?

자신의 프로그램 안에 선형 회귀 모델을 구축하는 것

-> 주어진 데이터를 학습시킴으로 가장 합리적인 "직선"을 찾아내는 것. 즉, 어떠한 "식"을 발견하는 것

-> 데이터가 3개 이상일때 의미가 있다.

 

goal : 가장 합리적인 직선을 발견하는 것!

 

가장 합리적인 직선 : 데이터와 근접한 중간에 있는 직선

 

가설이 필요하다.

H(x) = Wx + b

W : 직선의 기울기

 b : y 절편

 

선형회귀의 핵심 : W와 b 값을 수정하면서 가장 합리적인 식을 찾아내는 것 !

(W, b 값을 수정하는 것 == 프로그램을 학습시키는 것)

 

즉, 선형 회귀란 주어진 데이터를 이용해 일차방정식을 수정해나가는 것

학습을 많이 해도 "완벽한 식"을 찾아내지 못할 수도 있다.

하지만 실제 사례에서는 근사값을 찾는 것 만으로도 충분할 때가 많다.

 

 

직관적으로 이해하기

첫 번째 라인(데이터와 가장 먼 상태)에서 시작 -> 각 데이터 와의 거리를 분석 -> 데이터와 더욱 근접하게 jump ->

반복함으로써 합리적인 직선 발견 !

 

jump하는 과정 -> 학습이 진행되는 것

 

jump 폭이 점점 줄어드는 것을 확인 할 수 있다.

 

 

정리

학습 데이터(training data)로 세운 가설 식( H(x) = Wx + b)이 가장 합리적인 식이 될 수 있도록 식을 수정하고 변경해나가는 방법

 

 

https://www.youtube.com/watch?v=IhNNpyWKorY&list=PLRx0vPvlEmdAbnmLH9yh03cw9UQU_o7PO&index=2 

 

LIST