8

가족 구성원이 좋아하는 것을 기반으로 HTPC로 영화를 분류하는 앱을 작성하려고합니다.다른 사용자를 기반으로 사용자가 원하는 것을 찾을 수있는 알고리즘

통계 나 AI는 모르지만 물건은 here입니다. 어디서부터 시작해야할지 모르겠다.

는 여기에 내가 달성하고자하는 내용은 다음과 같습니다

  1. 각 사용자로부터 샘플 세트를 작성, 각 샘플 별도로 특성 평가, 좋아한다. 예를 들어 사용자가 서부 영화를 많이 좋아할 수 있으므로 서구 장르는 해당 사용자에게 약간의 가중치를 부여합니다 (배우, 감독 등 다른 속성에 대해서도 마찬가지 임).

  2. 사용자는 다른 사용자의 추천을 기반으로 추천을받을 수 있습니다. 예를 들어, Spielberg (사용자 간 연결)와 B 사용자가 모두 Batman Begins을 좋아하지만 사용자 A가 Katie Holmes를 싫어하면 사용자 A의 영화 무게를 다시 따릅니다 사용자 A는 액션 영화를별로 좋아하지 않으므로 등급을 조금 낮추십시오. 케이티 홈즈가 주연 배우가 아니기 때문에 다른 속성만큼 계정을 고려하지 마십시오.

기본적으로, 사용자 B의 세트에 유사한 사용자의 집합을 비교하고, 사용자 A에 대한 평가와 함께 올

나는이를 구현하는 방법에 대한 원유 아이디어를 가지고,하지만 난 어떤 밝은 마음들은 이미 훨씬 더 나은 해결책을 이미 생각해 봤습니다. 그래서 ... 어떤 제안 이요?

사실 빠른 연구 끝에 베이지안 필터가 작동하는 것으로 보입니다. 그렇다면이 방법이 더 나은 방법일까요? 단순히 동영상 데이터를 "표준화"하고 각 사용자에 대한 분류자를 교육 한 다음 각 동영상을 분류하는 것만 큼 간단할까요?

당신의 제안에 뇌의 용융 개념이 포함되어 있다면 (나는 특히 AI에서 이러한 과목에 익숙하지 않다.) 고기에 뛰어 들기 전에 연구 할 기초가되는 목록을 포함한다면 제안 해 주시면 고맙겠습니다. 물건.

감사합니다.

ARTMAP : 그룹

+1

중복 http://stackoverflow.com/questions/626220/how-do-recommendation-systems-work – cletus

+0

감사합니다. 내 예제를 기반으로보다 구체적인 대답을 찾고 있습니다. 내가 추천 시스템에 대해 할 수있는 모든 것을 읽는 것이 흥미로울 것이지만, 나는 올바른 방향으로 먼저 조정하는 것을 선호한다. :) – Ivan

답변

2

이 물건에 대한 몇 가지 흥미로운 기사가 ​​있었다 확률을 통해 서로에 대해 (이것은 빠르지는 않지만 그 문제에 대한 가장 좋은 것은 IMO입니다)

ARTMAP는 공통 속성 그룹을 보유하고 비율을 통해 유사성 가능성을 결정합니다. ARTMAP

KMeans :이 서로 KMeans: Wikipedia

PCA에서있는 거리에 의해 벡터를 seperates 다음 varing 비트의 모든 값의 평균을 분리해서 것이다.이것은 컴퓨터 비전에서 얼굴 탐지 및 배경 차감을 수행하는 데 사용하는 것입니다. PCA

+0

감사합니다. ARTMAP에 대해 읽어 본 결과 좋은 후보자로 보입니다. 과학 논문보다 코드를 더 잘 이해하기 때문에 http://users.visualserver.org/xhudik/art/doc/index.html을 발견하고이 http : // stackoverflow를 생성했습니다.com/questions/1609296/artmap-adaptive-resonance-theory-implementatios-basics ... KMeans도 흥미로워 보이지만 한번에 하나씩 :) – Ivan

+0

이 책은 아주 쉬운 소개 자습서를 가지고 있습니다 ... http : // www .amazon.com/AI-Application-Programming-Tim-Jones/dp/1584502789 그러나 IRC에는 Fn에 오류가 있습니다. – monksy

4
+0

거기에 흥미로운 것들이 몇 가지있다. 고마워요! – Ivan

2

케이 - 가장 가까운 이웃 알고리즘은 바로 골목까지 할 수있다.

+0

나 자신을 시도하고 구현하기에 충분할 정도로 간단 해 보인다. 좋은 학습 자원, 고마워! – Ivan

4

이는 영업 이익은 추천 시스템을 구축하고 싶어 this question 유사하다. 간단히 말해서, 우리는 영화에 대한 사용자 등급 (예 : 1-5 등급 등급)과 각 영화 (연도, 장르, 배우 등)에 대한 속성 집합으로 구성된 일련의 교육 데이터를 제공받습니다. 우리는 보이지 않는 영화에 가능한 등급을 출력하도록 권장 사항을 작성하려고합니다.

user movie year genre ... | rating 
--------------------------------------------- 
    1 1  2006 action   | 5 
    3 2  2008 drama   | 3.5 
    ... 

및 등급이 지정되지 않은 영화 X 용 : 그래서 됨 Inpt 데이터처럼 보이는

10 20  2009 drama ? 

우리가 등급을 예측합니다. 보이지 않는 모든 영화에 대해이를 수행 한 다음 예상 영화 등급을 기준으로 정렬하고 상위 10 개를 출력하면 추천 시스템이 제공됩니다.

가장 간단한 방법은 k-nearest neighbor 알고리즘을 사용하는 것입니다. 등급이 매겨진 영화 중에서 영화 X에 가장 가까운 영화를 검색하고 등급을 결합하여 예측을 만듭니다. 이 접근법은 처음부터 쉽게 구현할 수있는 매우 간단하다는 장점이 있습니다.

기타보다 정교한 접근법이 존재합니다. 예를 들어, decision tree을 구축하고 교육 데이터에 일련의 규칙을 적용 할 수 있습니다. Bayesian networks, artificial neural networks, support vector machines을 사용할 수도 있습니다. 각각의 배경을 제대로 이해하지 못하는 사람에게는 쉽지 않을 것입니다. 아직도 외부 도구/라이브러리를 사용할 것으로 기대됩니다. 이제 베이지안 네트워크에 익숙한 것 같습니다. 따라서 단순한 순진한 베이 넷이 실제로 매우 강력 할 수 있습니다. 한 가지 장점은 누락 된 데이터에서 예측이 가능하다는 것입니다.

주요 아이디어는 다소 동일합니다. 가지고있는 입력 데이터를 가져 와서 모델을 훈련시킨 다음이를 사용하여 새로운 인스턴스의 클래스를 예측하십시오.

더 프로그래밍이 필요없는 간단한 직관적 인 패키지의 서로 다른 알고리즘과 주위에 재생하려면

, 난 당신이 Weka (제 1 선택), Orange, 또는 RapidMiner를 살펴 보시기 바랍니다. 가장 어려운 부분은 데이터 집합을 필요한 형식으로 준비하는 것입니다. 나머지는 알고리즘을 선택하고 적용하는 것만 큼 쉽습니다 (몇 번의 클릭만으로!)

너무 많은 세부 정보를 찾으려하지 않는 사람에게는 직감적 인 방법으로 가장 가까운 이웃 방법을 사용하는 것이 좋습니다. 쉽게 구현할 수 있습니다. 여전히 Weka (또는 다른 도구 중 하나)을 사용하는 옵션을 살펴볼 가치가 있습니다.

+0

굉장한 대답, 고마워. 나는 이번 주말 Weka로 뛰어 들어서 내가 무엇을 생각해 내는지 볼 것입니다. – Ivan

관련 문제