본문 바로가기
IT 기록/머신러닝

[머신러닝]04-1.여러개의 입력(feature)의 Linear Regression

by Lazy Quant 2018. 7. 16.
반응형

※본 포스팅은 직접 강의하는 내용이 아닌, 김성훈 교수님의 머신러닝 강의를 정리하기 위한 포스팅입니다.

김성훈 교수님의 강의는 모두를 위한 머신러닝/딥러닝(http://hunkim.github.io/ml)에서 들을 수 있습니다.


여러개의 입력 값으로 Linear Regression

X1(quiz 1) 

X2 (quiz 2) 

X3 (midterm1) 

Y(final) 

73 

80 

75 

152 

93 

88

93 

185 

89 

91 

90 

180 

96 

98 

100 

196 

73 

66

70 

142 

학습목표 : Quiz1, Quiz2, Midterm의 성적이 있을 때 Final score를 예측하는 것



Hypothesis



Cost function

cost function의 핵심은 우리가 예측한 값과 실제 값의 차이

이와 같이, 입력 값이 더 많더라도 동일하게 수를 늘려주면 된다. 그러나 값이 많아질수록 처리가 번거로워진다.


어떻게 하면 간단하게 처리할 수 있을까?

Matrix multiplication를 이용해 Hypothesis를 간단하게 표현할 수 있다.



Hypothesis using matrix

Hypothesis 1 : 


이전까지의 강의를 통해 우리는 linear regression의 가설을 Hypothesis 1과 같이 표현했다. 이 때 Hypothesis 1을 행렬을 이용하면 아래의 수식과 같이 표현할 수 있다.



Hypothesis 2 : 


1번 가설과, 2번 가설은 수학적으로 동일한 의미이다. 그러나 이론에서 공부한 Hypothesis 1을 텐서플로우로 더 쉽고 편하게 구현하기 위해 Hypothesis 2와 같이 표현한다.



Many x instances

matrix의 놀라운 장점은 instance의 수대로 matrix를 만들어도 곱을 할 수 있다.

위의 수식과 같이 [5, 3]의 행렬과 [3, 1]의 행렬을 곱해서 [5, 1]의 행렬의 값을 얻을 수 있다.

이처럼 instance의 수와 관계없이 동일한 가설의 식을 이용해 텐서플로우로 구현할 수 있다.



반응형

댓글