일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 선형회귀
- 효묘블로그
- unsupervised learning
- 경사하강법
- 딥러닝공부
- 비지도학습
- 파이썬강의
- 자바
- 자바강좌
- python강좌
- acmicpc.net
- 딥러닝
- 비용함수
- 머신러닝 강좌
- 머신러닝
- 자바시작하기
- JAVA강좌
- Gradient Descent
- 파이썬강좌
- 머신러닝 강의
- Python강의
- supervised learning
- 머신러닝공부
- C언어
- 백준 알고리즘
- java
- 인공지능
- 지도학습
- c언어 오목
- feature scaling
- Today
- Total
컴공과컴맹효묘의블로그
Polynomail Regression 다항식 회귀 본문
선형회귀 이해에 대한 내용은 아래 나와있습니다.
적절한 독립변수를 설정해서 더 좋은 결과를 만들어내는 회귀모델에 대해서 설명하도록 하겠습니다.
우선 독립변수가 두 개인 선형 회귀모델입니다.
(x에 따라서 y의 값이 달라질 때, x를 독립변수, y를 종속변수라고 부릅니다.)
만약 독립변수 x1이 집의 가로폭, x2가 집의 세로폭 이라고 가정하고, 종속변수 y가 집의 가격이라고 가정합시다. 그렇다면 위 모델은 집의 가격을 어느정도 예측해주는 모델일겁니다.
하지만, 새로운 독립변수를 추가해서 회귀모델을 더 적합하게 만들 수 있습니다. 바로 집의 넓이인 x3를 추가합니다.
x3=x1*x2
즉, 독립 변수를 주어진대로만 사용하지말고, 문제의 목적을 이해해서 새롭게 모델을 만드는 것이 좋을 때도 있습니다.
Polynomial Regression 다항식 회귀
다음은 다항식 회귀 모델의 한 예시입니다.
회귀분석 모델에서 그 모델이 수행하는 문제마다 최고차항을 다르게 해주어야합니다.
예를 들어, 집의 크기(면적)을 독립변수 x1이라고 하고 집의 가치를 종속변수 y라고 가정한다면, 때로는 좋지 못한 결과가 나올 수도 있습니다. 참고로 회귀분석에서 다차항은 모두 고유한 독립변수로 취급됩니다.
만약 최고차항이 이차항까지 있다고 가정하면, 집의 면적이 너무 커질 때, 집의 가치가 기하 급수적으로 내려갈 수도 있습니다.
만약 삼차항 회귀 모델이라면 이차항 회귀 모델보다는 적합해 보입니다.
이런 다항식 회귀를 사용할때에는 조심해야하는 부분이 있습니다. 바로 Feature Scaling입니다.
만약 면적 x1이 10에서 100까지 범위를 가진다면, x1^2은 100에서 10,000까지의 범위를 가지고, x1^3은 1,000에서 1,000,000까지의 범위를 가집니다. 이렇게 기하급수적으로 늘어나는 범위를 잡아주기위해 Feature Scaling을 해주면 더 적합한 모델을 만들 수 있습니다.
Feature Scaling에 대한 글은 여기에 있습니다.
이제 상황에 맞춰서 독립변수를 다르게 설정할 수 있다는 것을 배웠습니다. 하지만, 어떤상황에서 어떤 독립변수를 사용할지 혼란스러울 때가 많을겁니다. 그래서 Endrew Ng교수님의 다음 수업에는 자동으로 어떤 feature를 골라줄지 알려주는 알고리즘을 알려준다고 합니다.
'컴퓨터 > 머신러닝' 카테고리의 다른 글
수알못의 머신러닝 공부 : Logistic Regression을 이용한 Classification을 Python으로 구현 (0) | 2020.04.02 |
---|---|
수알못의 머신러닝 : 선형회귀 - normal equation 정규방정식 (0) | 2019.08.23 |
머신러닝 회귀 분석 Feature Scaling (0) | 2019.08.19 |
수알못의 머신러닝 공부 : 학습률(learning rate)을 적절히 설정하는 방법 (0) | 2019.08.15 |
수알못의 머신러닝 공부 : 행렬과 벡터로 경사하강법을 (0) | 2019.07.25 |