티스토리 뷰

AI/딥러닝(sung kim)

multi-variable linear regression

취뽀가자!! 2018. 5. 22. 20:34

multi-variable linear regression

저번엔느 문제를 쉽게 하기 위해 입력 변수(feature)가 하나밖에 없는 단순 모델을 보여줬지만, 여기서는 여러 개의 입력 변수를 다루기 위한 전초적으로 2개의 입력을 처리하는 것을 보여주겠다.

시험 성적을 예로 들어 보겠다. 왼쪽 모델은 시험 성적을 공부 시간으로만 판단하는 것이다. 하지만 성적에 영향을 줄 수 있는 것에는 공부시간뿐만 아니라, 졸린 상태였는지, 휴대폰을 만지면서 하였는지 모두 살펴봐야 한다. 


원래 우리가 쓰던 hypothesis이다. 


위의 경우는 공부시간만 넣은 경우다. 휴대폰 사용시간, 티비 시청 시간 등 값을여러개 넣고 싶을 경우에는 어떻게 해야 할까?


이와 같이 표현하면 된다.


위 Hypothesis를 cost함수로 나타내면 

이처럼 나타낼 수 있다.


만약 hypothesis의 값이 3개가 아닌 n개일 경우에는 

이렇게 나타 낼 수 있다.


하지만 이와 같이 나타냈을 때  식이 너무 길어지고 복잡해지는 느낌이 있다.


그래서 위 식을 우리는 행렬(Matrix)로 표현할 것이다.


Matrix multiplication

Matrix란?

위 그림처럼 열과 행을 곱한 후 더한 것이 바로 행렬이다.

그럼 이제 행렬을 이용해 여러값의 Hypothesis를 표현해 보겠다.


Hypothesis using matrix


이것을 행렬을 이용하여 나타내어 보면


위의 식처럼 나타 낼 수 있다. 

그리고 이 행렬을 간략한 기호로 나타내면 X(large)로 나타낸다.

위 식을 보면 H(x)=Wx + b와 수학적 의미에서는 다른점이 거의 없다. 하지만 구현을 할때에는 저렇게 표현해주는 것이 더 편리하다. 왜냐하면 X를 앞에다가 두고 계산을 하게 되면 알아서 행렬을 계산해 주기 때문이다.

Many x instances

지금부터는 지금까지 설명한 인스턴스가 하나였는데 n개인 경우에는 어떻게 표현하는지에 대해 알아보겠다.


이렇게 표현하게 되면 굉장히 많은 인스턴스를 한번에 처리할 수 있게 되는 것이 가장 큰 장점이다.




다시 정리해보면 X는 [5, 3]이고, W는 [3, 1]이다. 여기서 3이 위치하는 부분은 무조건 같아야 한다. 왜냐하면 X와 W의 열과 행의 개수는 같아야 하기 때문이다. 계산을 할 때는 3을 생략하고 합쳐서 나타내면 된다.





--------------------------------------

이 글은

https://hunkim.github.io/ml/, https://gist.github.com/haje01/202ac276bace4b25dd3f, http://pythonkim.tistory.com/8 

의 내용을 보고 정리한 글입니다.








댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
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
글 보관함