HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
장지원 페이지/
기계학습개론
기계학습개론
/
#02. Linear Regression

#02. Linear Regression

선택
mid
참고 자료
https://box-world.tistory.com/6https://box-world.tistory.com/7?category=397062
텍스트
Feb 29, 2024
보편적으로 사용되는 분야 (정해진 것은 아님,classification model이 regression할 수 있도록 할 수 있다)
Regression
supervised
차수 (일주일 단위)
1-2.
📌
선회귀분석에 관한 내용
 

[Regression]

What
지도 학습의 일부로 추세선을 찾는 것이 목적이다.
위 식에서 theta를 찾는 것이 Linear Regression의 최종 목적이다.
📌
📌
가설 함수? 최적 값을 찾기 위한 함수: 가설 함수의 결과는 ‘예측 값’이다.
ex. Linear reg에서는 값의 형태, Classification(Logist reg)에서는 확률의 형태…
Cost Function
적합한 Weight(theta)를 찾기 위한 함수
이 파트에서는 여러 Cost Function 중 평균제곱오차를 기준으로 설명한다.
(평균제곱오차란?: 가설함수와 실제 y값의 차를 제곱해서 가설함수와 실제함수의 오차가 얼만큼인지를 알아보는 함수, 제곱을 안하면 오차는 0으로 수렴할 것이다)
notion image
📌
핵심 우리는 Cost Function의 값이 최소가 되는 지점을 찾아야한다.
How
어떻게 theta를 찾을까? 첫 번째 방법은 Normal equation을 통해서 찾는 방법이고(Normal equation은 Cost function과 관계 없다!), 두 번째는 Gradient descent를 이용해서 Cost function의 값을 최소화하는 theta를 찾는 방법이다.
📌
방법 1: Normal equation
(선형대수 시간에 배운 내용: ‘최소 자승법’ Ax = b에서 해가 없을 때, b과 가장 가까운 결과를 만들어주는 x를 찾는 방법)
(여기서는 A가 x이고, x는 theta겠지!?)
 
  • Example
    • notion image
 
  • Cons
    • 가 역행렬이 아니라면? (= 선형 독립이 아니라면?, 정방 행렬이 아니라면?) (What mean?)
    • feature가 많을 때 를 계산하는데 오랜 시간이 걸린다.
    •  
  • Pros
    • 파라미터가 없다. (What mean? → Learning rate 같은 파라미터가 필요 없다)
    • 반복할 필요가 없다. ⇒ Normal equation은 한 번에 theta를 찾아준다.

📌
방법 2: Gradient Descent
(경사 하강법)
 
  • 개념
    • “미분 값이 0이 되는 지점은 optima일 것이다”라는 것을 이용한 방법
    • theta를 반복적으로 갱신하며, 최적의 theta 값을 찾아 나아간다.
    • notion image
      ( = learning rate, = cost function의 theta에 대한 미분 값)
       
      if (미분 값이 0보다 크다면) → 위 식에 따라 작아지는 방향으로 갱신 if else (미분 값이 0보다 작다면) → 위 식에 따라 커지는 방향으로 갱신
      Linear Regrssion에서의 Gradient Descent 선형회귀에서의 Cost Function은 항상 Convex함수이다. 따라서 이 때는 Cost Function을 이용한 = - 수식을 통해서 파라미터를 쉽게 업데이트 할 수 있다. ⇒ 만약 Convex함수가 아니라면?: 다르게 정의해야 한다. 이는 Classification 파트에서 자세히 다룰 것이다.

      📌 주의 사항 및 추가 정보 어떻게 opitimal 값인지를 평가할까: train data를 통해 학습시키고, validation data를 통해 검증한다. 이 때 validation data가 overfitting 되기 전의 파라미터로 결정한다. 따라서 꼭 global optima가 최적의 값이 아닐 수 있다.
       
  • Batch / Stochastic
    • Batch gradient descent: 경사 하강법 각각의 스텝마다 모든 훈련 데이터를 사용한다. ⇒ 계산 횟수가 적고, 안정적으로 수렴한다.
    • Stochastic gradient descent: 경사 하강법 각각의 스텝마다 조금의 훈련 데이터를 사용한다. ⇒ 학습이 빠르고, 적은 메모리를 사용한다. (epoch를 이용하는 학습)
 
  • Multiple features
    • notion image
  • Cons
    • 파라미터가 필요하다.
    • iteration이 많이 필요하다.
 
  • Pros
    • feature가 많을 때 잘 동작한다.
Feature Scaling
학습을 위해 Scale을 바꿀 수 있다.
(동일한 범주로 Scaling 하면 좋다)
notion image
Polynomial Regression
다항식에서의 회귀 분석!?
n차 부분을 치환하면 된다.
notion image