회귀를 통해 이해하는 Cost Function

JERRY·2025년 4월 6일
0

Machine Learning

목록 보기
13/31
post-thumbnail

수동 Cost Function

만약 주택의 넓이와 가격이라는 데이터가 있고 주택가격을 예측한다면

머신러닝 모델 만들기

어떻게 만들까?

만약 1차 함수라면

선형 회귀

모델을 구성하는 파라미터를 어떻게 찾을까?

간단한 수학~ 점 세 개를 표현하는 직선

직선상에 있지 않은 세 점을 직선으로 표현하기

실제 데이터(점 세 개)와 구해야 할 모델(h)

각각의 에러를 제곱하고 평균을 구함

Cost Fnc을 최소화할 수 있다면 최적의 직선을 찾을 수 있다

계산

python으로 계산

Symbolic 연산이 가능

최솟값 찾기

Python이든 손으로 직접 하든 구할 수 있습니다.

결과


Cost Function

Cost Function - 데이터와 모델이 완전 일치하면?

Cost Function - 조금 빗나가면

Cost Function - 더 빗나가면

그러나 실제는 데이터는 너무 복잡해서 손으로 풀기 어렵다

Cost Function의 최솟값을 찾기 위해서 특단의 대책이 필요

How?


Gradient Descent

랜덤하게 임의의 점 선택

임의의 점에서 미분(or 편미분)값을 계산해서 업데이트

목표점의 오른쪽이라면

목표점의 왼쪽이었다면

여기서 또 중요한 개념 학습률 - Learning Rate

학습률이 작다면

학습률이 크다면


다변수 데이터에 대한 회귀

여러개의 특성(feature)

행렬식으로 표현


Boston 집값 예측

데이터 확인

각 특성의 의미

데이터 파악을 위해 pandas로 정리

Price에 대한 histogram

각 특성별 상관계수 확인

RM과 LSTAT와 PRICE의 관계에 대해 좀 더 관찰

저소득층 인구가 낮을 수록, 방의 개수가 많을 수록 집 값이 높아짐?
이 가설은 문제가 없을까?

데이터를 나누고 LinearResgression을 사용

모델 평가(RMS)

성능 확인

그런데, LSTAT를 사용하는 것이 맞는 걸까?

당연히 성능은 나빠진다

이런 류의 고민은 아마 계속될 것

0개의 댓글