Cost Function
회귀를 통해 이해하는 Cost Function
만약 주택의 넓이와 가격이라는 데이터가 있고 주택가격을 예측한다면
머신러닝 모델 만들기
만약 1차 함수라면
선형회귀
모델을 구성하는 파라미터
실제 데이터(점 세개)와 구해야 할 모델 (h)
먼저 각각의 에러를 구함
각각의 에러를 제곱하고 평균을 구함
Cost Function
Cost Fnc을 최소화할 수 있다면 최적의 직선을 찾을수 있다
계산해 보면
J를 최소로 만들기
최솟값 찾기
최솟값 지점 구하기
import sympy as sym
theta = sym.Symbol('theta')
diff_th = sym.diff(38*theta**2 - 94*theta + 62, theta)
diff_th
Cost Fnc - 데이터와 모델이 완전 일치하면
Cost Fnc - 조금 빗나가면
Cost Fnc - 더 빗나가면
Gradient Descent
랜덤하게 임의의 점 선택
임의의 점에서 미분(or 편미분)값을 계산해서 업데이트
목표점의 오른쪽이라면
목표점의 왼쪽이라면
학습률 Learning Rate
학습률이 작다면
학습률이 크다면
다변수 데이터에 대한 회귀
여러개의 특성 (feature)
행렬식으로 표현
Boston 집값 예측
Boston 집 가격 데이터
데이터 읽기
각 특성의 의미
Pandas로 정리하여 데이터 파악
- PRICE 컬럼은 Label이므로 이후 과정에서 잘 다루어야 한다
Price에 대한 histogram
집값에 대한 히스토그램
각 특성별 상관계수 확인
RM과 LSTAT와 PRICE의 관계에 대해 좀 더 관찰
저소득층 인구가 낮을수록, 방의 개수가 많을 수록 집 값이 높아자는걸까?
데이터를 나누기
LinearRegression으로
모델 평가는 RMS로
성능 확인
결과
LSTAT 사용의 정확성
성능의 저하