본문 바로가기

Mean normalization3

43. 추천 시스템 : 관련된 다른 상품을 추천해주기(Low Rank Matrix Factorization) 이번에는 collaborative filtering algorithm에서 한단계 더 나아가서 어떤 손님이 영화를 보고자 할때 관련된 다른 영화들을 추천해주는 방법에 대해서 알아보도록 하겠습니다. 이전에 배운 예제를 다시 가져오면 아래 그림과 같습니다. 5개의 영화가 있고 4명의 유저가 있습니다. 이들이 준 평점들은 Y로 나타낼 수 있습니다. Y가 주어졌기 때문에 이것을 x 와 세타로 표현하면 아래 그림의 오른쪽 matrix와 같이 됩니다. Y = 세타T(j) * x(i) 여기에서 모든 영화가 가지고 있는 x features들을 하나의 row로 합쳐서 X vector를 만들면 아래 그림 왼쪽 밑에와 같이 됩니다. 또, 모든 사람이 가지고 있는 선호도인 세타 parameters들을 하나의 row로 합쳐서 θ.. 2016. 9. 4.
36. 자율학습 두번째 (Principal Component Analysis) : PCA Algorithm 앞에서 살펴본 data compression 또는 dimensionalilty reduction 을 이용해서 오늘날까지 널리 사용되고 인기있는 알고리즘이 바로 PCA(Principal Component Analysis) Algorithm 입니다. 2차원의 데이터를 1차원으로 줄이기 위해서 아래 그림과 같이 직선을 하나 그립니다. 그리고 이 직선에 모든 2차원 데이터들을 투영시켜서 한점으로 나타낼 수 있게 됩니다. 이때의 두 점과의 거리 즉, 2차원 데이터의 점과 직선에 투영되어 생성된 점 사이의 거리를 때로는 projection error 라고 불리우기도 합니다.이 projection error가 가장 최소화 되는 직선을 찾고 이로 인해서 2차원 데이터를 1차원으로 낮추는대 사용이 됩니다. 만약에 왼쪽 .. 2016. 8. 22.
9. Gradient Descent Algorithm 사용시 유의할 점 이번에는 Gradient Descent 알고리즘을 사용할때 유의할 내용에 대해서 알아보겠습니다. Feature Scaling 이제 우리는 많은 features들의 data를 사용할 수 있게 되었습니다.각각의 features는 다른 정보를 나타내는 값들이기 때문에 이 값들이 어떤것은 사이즈를 나타내어 단위가 1000단위로 표현이 되고 어떤것은 층수를 나타내어 1~10까지의 단위로 표현이 되기도 할 것입니다.만약 이런 데이터들을 그대로 사용하면 어떻게 될까요 아래 그림과 같이 등고선의 형태가 각 feature의 단위에 따라서 홀쭉한 형태로 나타나거나 뚱뚱한 형태로 나타날 것입니다. 이렇게 되면 알고리즘이 목표로 하는 중앙의 점으로 찾아갈때 오래 걸리게 됩니다. 길 등고선을 따라 하강을 해야 하게 되기 때문입.. 2016. 7. 10.