Linear Regression

2024. 6. 16. 18:52Artificial Intelligence/Computer Vision

Linear regression with one variable

Model representation

m = 훈련 데이터 개수, x = input 변수 (features), y = output 변수 (target 변수)

 

Cost function

비용 함수 J를 최소화 해야 함.

Gradient Descent

  • Learning rate α가 너무 작으면, gradient descent는 느릴 수 있음.
  • Learning rate α가 너무 크면, gradient descent는 최소값을 overshoot하여 수렴에 실패할 수 있음.
  • Learning rate α 값만 수정해도, local minimum에 수렴하도록 할 수 있음.

 

Linear regression with multiple variable

Model representation

n = 피처 개수, x^(i) = i번째 training example의 input 피처, {x(j)}^(i) = i번째 training example의 j번째 피처

 

Feature scaling

Features가 비슷한 scale에 존재하도록 하는 것.

ex) x1 = size of house (0-2000 feet^2) & x2 = number of bedrooms (1-5)

→ x1 = size of house / 2000 & x2 = number of bedrooms / 5

Normal equation

  • 분석적으로 local minimum으로 수렴할 때의 θ 값을 찾아냄.

  • m = 4일 때, normal equation 계산 예시. 계산한 θ 값을 넣으면 J(θ)는 최소가 됨.

 

Gradient descent와 Normal Equation 비교

Gradient Descent Normal Equation
α를 선택해야 함.
많은 iteration이 필요함.
n의 값이 커도 잘 동작함.
α를 선택하지 않아도 됨.
iteration을 하지 않음.
(X^(T) X)^(-1)을 계산해야 함.
n이 매우 크면 느림.

 

Pseudo inverse가 존재하지 않는 경우

  • (X^(T) X)는 대부분의 경우 Pseudo inverse가 존재하나, Column vector끼리 선형적으로 dependent 하면 역행렬이 존재하지 않음. X2 벡터만 가지고도 X1 벡터를 뽑아낼 수 있는 경우에 dependent 함.
  • 너무 많은 피처가 존재하는 경우 역행렬이 존재하지 않음. 이 경우에는 피처를 몇 개 지우거나, 정규화를 함.

 

* 참고 자료

컴퓨터비전 강의자료(김은이 교수님)