앤드류 응 교수님의 Coursera Machine Learning 강의를 정리한 포스팅입니다.


추천시스템은 머신러닝 분야의 중요한 응용 분야중의 하나이다. 많은 실리콘 밸리 회사들이 더 좋은 추천 시스템을 만들기 위해 노력하고 있다. 아마존, 넷플릭스 등등의 회사들이 웹 사이트에서 이러한 추천 시스템을 활용하고 있다. 이러한 추천 시스템은 이러한 회사들이 더 좋은 수익을 올릴 수 있도록 도와준다. 그러므로 추천 시스템의 성능을 개선하는 것은 기업의 이익에 큰 영향을 미친다. 추천 시스템 분야는 학계보다는 산업계에서 더 선호되는 분야라고 한다.


예 : 영화 평점 예측하기


Movie 

 Alice

Bob

Carol

Dave

 Love at last

 5

 5

 0

 0

 Romance Forever

 5

 ?

 ?

 0

 Cute puppies of love

 ?

 4

 0

 ?

 Nonstop car chases

 0

 0

 5

 4

 Swords vs. karate

 0

 0

 5

 ?


Notation


n_u = no.users. (= 4)

n_m = no.move (= 5)

r(i,j) = 1 if user j has rate movie i (rating을 한 경우 1로 정의)

y(i,j) = rating given by user j to movie i (only if r(i,j) = 1) (movie i가 user j 에게 받은 평점)



?은 아직 영화를 보지 않고, 평점을 내리지 않은 것이다. 이를 예측하는 것이 바로 기본적인 추천 시스템의 목적이다.