CS/AI | CV

선형 회귀 1

damzzi 2021. 7. 22. 16:49

"기계가 배운다"

-Task별 모델(선형 회귀, 선형 분류 등)을 배움

-즉, 모델의 파라미터를 배운다는 뜻

 

 

학습이란?

사람이 다양한 경험을 통해 지식이 성장해 가는 것

-경험 : 우리가 모은 데이터와 우리가 알려준 정답(클래스 레이블)

-작업 목표(지식) : 우리가 결정한 task 모델(영상 분류, 음성 분류 등)

-성능 지표(성장) : 정답에 가까운 솔루션을 찾아가고 있는 것인지(평가)

 

 

  • 가설 설정

: 선형 모델이라고 가정했을 때

H(x) = Wx + b 라는 방정식으로 나타낼 수 있음

 

함수의 답과 정답의 차이가 적은 영역을 찾으면 가장 학습할 데이터를 잘 표현하고 있는 것

 

 

  • Cost funtion(오차) 정의

cost fun = loss fun = objective fun

H(x) - y 

예측된 값

참값(정답) -> GT(Ground Truth)

 

예측된 값과 참값의 차이를 cost funtion이라고 함

 

cost funtion이 가장 작은 값이 되는 순간의 W와 b 구하는 것이 중요

-> 학습을 통해 찾고자 하는 모델 파라미터, 즉 학습결과가 됨

 

 

*cost funtion과 같은 값을 구할 때 제곱을 하는 이유는 보통 음수가 나왔을 때 제곱을 통해 양수화 시켜주기 위함

 

↓ what is cost funtion ↓

https://youtu.be/SHEPb1JHw5o

 

1/m인 이유는 전체 샘플의 수로 나눈다 -> 에러 평균

 

 

주어진 데이터에 의해 머신이 스스로 알아서 W, b값을 찾게 됨

 

 

 

 

  • 경사 하강 알고리즘(Gradient descent algorithm)

https://box-world.tistory.com/7

 

초기값 설정 후 반복적인 갱신통해 min 값을 찾아내는 방법

더이상 W값이 변하지 않을 때 까지 반복하면 됨

해당 지점의 기울기는 곧 미분 값

 

기울기가 점점 작아지는 방향으로 이동하기!

만약 기울기가 점점 커지는 방향으로 이동하게 되면 W를 넘어 발산할 수도 있음

 

 

 

 

경사 하강법은 2차 함수에서 cost가 가장 적은 곳의 변수(파라미터)를 구하는 방법

-> 미분 활용

더 이상 w값이 변하지 않을 때까지 반복

 

 

@선형회귀

1) 가설 설정

2) cost 설계

3) GD(경사 하강법)

 

 

 

Linear Hipothesis는 Convex Funtion(Global minimum)

어디에서부터 보든지 극점은 한 개 -> 항상 최소점 동일

 

cf) Non convex funtion은 시작해서 가다보면 도착한 끝 점이 다름

    (국소적 최소점(local minimum)이 여러 개)

 

 

convex, non convex 구별

https://www.youtube.com/watch?v=hrSdndm4EPA