코드네임 :
CSS229 - Machine Learning Lecture 1 + 2 본문
1 내용이 얼마 없길래.. 같이...
지도학습(Supervised Learning)이란?
정답이 있는 데이터 set을 학습하는 것
입력데이터 X가 들어왔을때 이를 잘 표현하는 Y를 뽑아내는 h를 만드는 것 (h: X -> Y)
회귀(Regression)
x값으로 부터 y값을 얻어내는 것


x 가 input feature
y 가 output / target variable
(x,y)가 training example
training example 의 리스트가 training set
X 가 x(input values)의 공간
Y 가 y(output values)의 공간
h : X -> Y에서 함수 h가 가설(hypothesis)
y(target variable)가 연속적이라면 regression problem (회귀 문제)
y가 소수의 이산값만을 취할 수 있다면 classification problem (분류 문제)

주어진 training set(input)을 알고리즘으로 학습시켜 h함수를 만들어 예측값이 나오게 하는것이 지도 학습
선형 회귀
(입력 데이터와 출력 데이터의 관계를 선형모델로 표현하는 방법)
가설 함수 h

비용 함수 (Cost function)
- h(ypothesis) 함수의 정확도를 측정하기 위해 필요 !!!
목적: 이 J(세타) 값을 최소화하는 세타 파라미터를 찾는 것.
- 평균 제곱 오차(MSE):

https://brunch.co.kr/@linecard/443
앤드류 응의 머신러닝 강의 (2-2) : 비용 함수
온라인 강의 플랫폼 코세라의 창립자인 앤드류 응 (Andrew Ng) 교수는 인공지능 업계의 거장입니다. 그가 스탠퍼드 대학에서 머신 러닝 입문자에게 한 강의를 그대로 코세라 온라인 강의 (Coursera.org
brunch.co.kr
경사하강법 (Gradient descent)
: J(세타) (cost function)을 최소로 만드는 적당한 parameter 세타의 값을 찾는방법
- 기울기 방향으로 조금씩 내려가면서 최적값에 다가가는 알고리즘
- 반복적으로 세타를 바꾸어나가며 비용 함수를 줄여나감 (즉, 세타를 비용함수가 최소가 되게 하는 값으로 수렴시킴)

alpha는 학습률(learning rate) (너무 크면 튕기고, 너무 작으면 오래 걸림)
:=는 theta가 계속 변한다는 뜻의 기호
theta_j는 내가 조정할 변수

Batch Gradient Descent ( 배치 경사 하강법 )
: 전체 데이터를 한 번에 다 사용해서 파라미터(theta)를 업데이트하는 방식

⬇️

이런 과정들을 마치게 되면 theta의 값이 계속 변하면서 h함수를 조정하고,
주어진 데이터에 가장 적합한 직선을 만들어내게 된다 (아래그림)

Stochastic Gradient Descent (SGD) (확률적 경사 하강법)
Batch Gradient Descent의 느린 속도 단점 보완 위해 사용!
: 데이터 한 개씩 보고 바로바로 업데이트 하는 방식


BGD보다 역동적으로 움직이지만(왼) , 최적의 global minimum 값이 아닌 근접한 값을 얻게 됨
ㄴ 이를 보완할 방법 중 하나는 학습률 alpha를 시간이 지남에 따라 감소시키는 것 (변수의 움직임이 점점 더 작은 폭으로 움직이게 되어 global minimum에 가까운 값을 찾을 수 있음)
Normal Equation ( 정규 방정식 )
: 경사하강법 없이! 한 방에 최적의 theta 를 계산하는 공식
(경사하강법은 반복하면서 최적 theta 값을 찾아가지만,
정규방정식은 비용함수를 미분해 0으로 만든 방정식을 풀어 바로 최적해 theta를 구한다!!)
- 다만, 역행렬이 존재하지 않거나 feature 가 많을 땐 사용 어렵
- 오직 선형회귀 알고리즘에서나 사용 가능

⬇️







고마워요 챗지피티...
(아래는 원문)


'🤖AI > CS229' 카테고리의 다른 글
CSS229 - 3 (0) | 2025.04.07 |
---|