문제

가족 구성원이 좋아하는 것에 따라 HTPC로 영화를 분류하기 위해 앱을 작성하려고합니다.

통계 나 AI를 모르지만 물건은 여기 매우 육즙이 있습니다. 어디서 시작 해야할지 모르겠습니다.

내가 성취하고 싶은 것은 다음과 같습니다.

  1. 각 사용자가 좋아하는 각 사용자의 샘플 세트를 구성하여 각 샘플 속성을 별도로 평가합니다. 예를 들어, 사용자는 서양 영화를 많이 좋아하므로 서양 장르는 해당 사용자에게 약간 더 가중치를 부여 할 것입니다 (배우, 감독 등과 같은 다른 속성에 대해서는).

  2. 사용자는 다른 사용자를 기반으로 제안을받을 수 있습니다. 예를 들어, Spielberg (사용자 간의 연결) 및 사용자 B와 같은 사용자 A와 B가 Batman을 좋아하지만 사용자 A는 Katie Holmes를 혐오하는 경우 사용자 A에 대한 영화를 계량하면 (예를 들어, 각 속성, 예를 들어, 각 속성이 별도로 각 속성 사용자 A는 액션 영화를 너무 좋아하지 않으므로 등급을 조금 줄이십시오. Katie Holmes는 메인 스타가 아니기 때문에 다른 속성만큼이나 고려하지 마십시오).

기본적으로 사용자의 세트를 사용자 B의 세트와 유사하게 비교하고 사용자 A의 등급을 제시합니다.

나는 이것을 구현하는 방법에 대한 조잡한 아이디어를 가지고 있지만, 밝은 마음은 이미 이미 훨씬 더 나은 해결책을 생각했다고 확신합니다.

실제로, 빠른 연구 후에는 베이지안 필터가 작동하는 것 같습니다. 그렇다면 이것이 더 나은 접근법일까요? 영화 데이터를 "정규화"하고 각 사용자의 분류기를 훈련 한 다음 각 영화를 분류하는 것만 큼 간단합니까?

귀하의 제안에 일부 뇌 용융 개념이 포함되어 있다면 (특히 AI 에서이 주제에 대해 경험이 없음), 고기에 다이빙하기 전에 연구 할 기본 사항 목록도 포함되어 있다면 감사하겠습니다.

감사!

도움이 되었습니까?

해결책

이것에 유용한 몇 가지 알고리즘이 있습니다.

ARTMAP : 서로에 대한 확률을 통한 그룹 (이것은 빠르지 않지만 문제에 가장 적합한 것입니다.)

ArtMap은 일반적인 속성 그룹을 보유하고 있으며 백분율을 통해 동시성의 가능성을 결정합니다.아르트 맵

KMEANS : 이것은 서로의 거리에 따라 벡터를 분리합니다.Kmeans : Wikipedia

PCA : Varing 비트에서 모든 값의 평균을 구분합니다. 이것은 얼굴 감지와 컴퓨터 비전의 배경 감산을 수행하는 데 사용할 수있는 것입니다.PCA

다른 팁

이것은 비슷합니다 이 질문 OP가 추천 시스템을 구축하고자하는 곳. 간단히 말해서, 우리는 영화에 대한 사용자 등급 (예 : 1-5 별 등급)과 각 영화에 대한 일련의 속성 (연도, 장르, 배우, ..)으로 구성된 일련의 교육 데이터가 제공됩니다. 우리는 보이지 않는 영화에 대한 등급을 얻을 수 있도록 추천자를 구축하고 싶습니다. 따라서 INPT 데이터는 다음과 같습니다.

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

그리고 미지급 영화 x :

10    20     2009   drama   ?

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

가장 간단한 접근법은 a를 사용하는 것입니다 K-nearest 이웃 연산. 평가 된 영화 중에서 영화 X에 "가장 가까운"영화를 검색하고 등급을 결합하여 예측을 생성합니다. 이 접근법은 처음부터 매우 간단하기 위해 쉽게 구현할 수 있다는 이점이 있습니다.

다른보다 정교한 접근법이 존재합니다. 예를 들어 a 의사 결정 트리, 교육 데이터에 대한 일련의 규칙에 맞습니다. 당신은 또한 사용할 수 있습니다 베이지안 네트워크, 인공 신경망, 벡터 머신을 지원합니다, 다른 많은 것 중에서 ... 이들 각각을 겪는 것은 적절한 배경이없는 사람에게는 쉽지 않을 것입니다. 그래도 외부 도구/라이브러리를 사용할 것으로 기대합니다. 이제 당신은 베이지안 네트워크에 익숙해 보이므로 간단한 순진한 베이 즈 네트는 실제로 매우 강력 할 수 있습니다. 한 가지 장점은 누락 된 데이터에서 예측을 허용한다는 것입니다.

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

프로그래밍이 필요없는 간단한 직관적 패키지로 다른 알고리즘을 가지고 놀고 싶다면, 나는 당신이 Weka (나의 첫 번째 선택), 주황색, 또는 RapidMiner. 가장 어려운 부분은 데이터 세트를 필요한 형식으로 준비하는 것입니다. 나머지는 알고리즘을 선택하고 적용하는 것만 큼 쉽습니다 (모두 몇 번의 클릭으로!)

너무 많은 세부 사항을 사용하지 않으려는 사람에게는 직관적이고 구현하기 쉽기 때문에 가장 가까운 이웃 방법을 사용하는 것이 좋습니다. 여전히 사용 옵션 Weka (또는 다른 도구 중 하나)는 조사 할 가치가 있습니다.

K-Nearest Neighbor 알고리즘이 바로 골목에있을 수 있습니다.

의 일부 작업을 확인하십시오 최고의 팀넷플릭스 상.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top