권장 사항에서 암시 적 데이터를 처리하는 방법


9

추천 시스템은 특정 사용자에 대한 권장 사항과 해당 사용자가 권장 사항을 수락하는지 여부를 기록합니다. 마치

user_id item_id result
1       4       1
1       7       -1
5       19      1
5       80      1

여기서 1은 사용자가 권장 사항을 수락했음을 나타내고 -1은 사용자가 권장 사항에 응답하지 않았 음을 나타냅니다.

질문 : 위에서 설명한 로그 종류에 따라 여러 사용자에게 추천을하고 MAP @ 3 점수를 최대화하려면 암시 ​​적 데이터 (1 또는 -1)를 어떻게 처리해야합니까?

내 생각은 1과 -1을 등급으로 취급하고 인수 분해 기계 유형 알고리즘을 사용하여 등급을 예측하는 것입니다. 그러나 암시 적 데이터의 비대칭 성을 고려할 때 이것은 옳지 않은 것처럼 보입니다 (-1은 사용자가 권장 사항을 좋아하지 않는다는 것을 의미하지는 않습니다).

편집 1 행렬 인수 분해 방식의 맥락에서 생각해 보자. -1과 1을 등급으로 취급하면 몇 가지 문제가 있습니다. 예를 들어, 사용자 1은 잠재 인자 공간에서 하나의 인자 (예를 들어, 화려한 배경 음악을 갖는)에서 높은 점수를 갖는 영화 A를 좋아한다. 이 시스템은 "유쾌한 배경 음악"에서 높은 점수를받은 영화 B를 추천하지만 어떤 이유로 사용자 1은 너무 바빠서 추천을 보지 못하며 -1 등급 영화 B를 가지고 있습니다. 그런 다음 시스템은 사용자 1에게 영광스러운 BGM이있는 영화를 추천하는 반면 사용자 1은 여전히 ​​영광스러운 BGM이있는 영화를 좋아합니다. 이 상황을 피해야한다고 생각합니다.


-1이 싫어한다는 것을 의미하는 문제는 없습니다. 다른 사람이 항목을 본다는 것을 구별하는 방법 일뿐입니다. 그런 의미에서 결 측값보다 더 많은 정보를 전달합니다. 실제로 권장 사항의 정확도가 높아질 수 있습니다. 권장 거리 측정법에 따라 거리에 큰 영향을 미치지 않도록 -1에서 약간의 측정 값으로 변경하는 것이 좋습니다.
cwharland

1
암시 적 피드백에 대한 표준 논문은 Hu, Koren 및 Volinsky 입니다. -1이 싫어하거나 단순히 "보지 못했음"을 나타내는 신뢰도 추정을 포함하여 많은 권장 사항이 있습니다.
Trey

답변:


5

귀하의 시스템은 권장되는 품목에 대해서만 교육을받지 않았습니까? 그렇다면 큰 피드백 루프가 있습니다. 모든 클릭 / 뷰에서 배우고 싶습니다.

아이템을 보지 않는 것은 부정적인 신호입니다. 나는 당신이 그렇게 취급하지 않는 것이 좋습니다. 무언가와 상호 작용하지 않는 것은 거의 항상 정보가없는 것으로 취급하는 것이 가장 좋습니다. 다운 투표 (또는 10 초 동안 동영상을보고 정지 한 경우)와 같이 싫어하는 것을 나타내는 명시 적 신호가있는 경우 유효 할 수 있습니다.

이 입력을 등급과 유사한 데이터로 해석하지는 않습니다. (여러분의 경우에는 그것을 빼앗아 갈 수도 있습니다.) 대신 무게로 생각하십시오. 이것은 @Trey가 주석에서 언급 한 ALS의 Hu Koren Volinsky 논문에서 정확히 처리 한 것입니다. 이를 통해 긍정적 / 부정적 상호 작용의 상대 강도를 기록 할 수 있습니다.

마지막으로, 나는이 논문이 당신이 찾고있는 것일 가능성이 매우 높지만 음의 가중치를 제공하지는 않습니다. 이런 식으로 확장하는 것은 간단합니다. 당신이 그것을 멀리 얻으면 SparkOryx 에서 이미 알고있는 두 가지 구현에 이미 존재하는 쉬운 확장을 가리킬 수 있습니다 .


2
여러 번 보았지만 선택되지 않은 항목에 대해 약간의 음수 값을 대치하는 것이 합리적이라고 생각합니다. OP는 이러한 부정적 대치에 해당하는 데이터에 액세스 할 수 있음을 나타내지는 않지만 그 전술을 완전히 배제하지는 않습니다. 음수 값의 최적 크기는 데이터에서 확인할 수 있습니다. recsys 시나리오 에서이 작업을 수행하면 약간의 이익을 얻었습니다. 어쨌든 ... 한 번 본 항목과 선택하지 않은 항목과 N 번 본 항목을 구분하는 다른 방법을 제안하고 부정적인 대치 외에는 선택하지 않겠습니까?
cwharland
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.