image

위 그림에서 말하는 polynomial linear regression은 실제 x의 2차 n차이므로 엄밀히 말하면 linear 가 아니지만 coefficient의 형태를 중점으로 보면 linear combination과 흡사하므로 그냥 polynomial linear regression이라고 부른다.

Preprocessing

image
image

이 강의 예시에서는 하나의 x feature칼럼만 필요하고 하나의 실제값만 존재한다. 그리고 첫번째 칼럼은 의미가 없는 칼럼이므로 X matrix를 만들때 인덱스1을 사용했다. 다만 이때 칼럼 갯수가 하나이므로 결과가 벡터로 나오는 문제가 생겼다. 하단 그림 (10, ) 가 벡터라는 것을 보여준다.  모든 features는 matrix형태로 관리하는 것이 좋다. 그래서 약간의 수정 작업을 아래와 같이 한다.

image
image

image

이 강의에서는 linear regression과 polynomial linear regression과 비교하기 위해 두가 지 regression을 구현한다. preprocessing의 PolynomialFeatures class를 이용해 polynomial features를 추가로 만들어주낟. degree는 차수를 나타낸다. 그 결과 matrix를 poly_reg matrix에 저장한다. 이를 확인하면 1로 채워져 있는 첫번째 칼럼을 볼수 있는데 이는 constant이며 이는 feature가 하나인 simple linear regression과 달리 multiple regression에서는 필요하며 라이브러리 사용시에 요구된다. 

image

하단의 코드는 각각 두개의 그래프를 그린다. 최하단은 polynomial regression을 보여준다. plt.plot() 안에 들어가는 X 와 수식을 주의한다. 

정확히 이해하지 못했으므로 나중에 다시 확인 요망

image

PolynomialFeatures 의 degree를 4 로 증가하는 경우. 기존의 코드에서 단지 이부분만 수정한다. 차수를 4차까지 올려 조정하는 경우이다. 좀더 세밀한 알고리즘이 된다.

위의 그래프를 보면 선으로 딱딱하다. 그 이유는 그래프의 스텝이 x feature step 과 같은 1이기 때문이다. 좀더 부드러운 그래프를 얻기 위해 스텝을 0.1로 조정할수 있다.그 과정은 아래와 같다.

Comments are closed.

Post Navigation