Разлика между Rescorer и UserSimilarity в Mahout

Внедрявам потребителски препоръчител, който трябва да работи само върху категории елементи, за да избегна изчисленията върху безполезни данни. За да бъда по-ясна, ако даден потребител е в страница с категория, не искам да изчислявам предпочитанията за всички елементи, а само за потребители, които са прегледали нещо в същата категория.

За да направя това, мисля да внедря персонализирано UserSimilarity, за да кажа на Mahout, че даден потребител не е подобен, ако никога не е рецензирал артикул в тази категория. Мога да направя същото, като внедря Rescorer с филтрирана проверка.

Знам, че userSimilarity се използва в началото на алгоритъма, за да се избегне извършването на изчисления върху целия набор, но не знам дали е същото в Rescorer. Rescorer ми изглежда като пост процесор... Просто искам да избегна тежки изчисления. Трябва ли да използвам Rescorer или Custom UserSimilarity? Как да избера между двете?


person Matroska    schedule 04.02.2012    source източник


Отговори (1)


IDRescorer всъщност играе две роли, както като начин за предварително филтриране на елементи, които да бъдат разгледани, така и за последваща обработка на техните резултати. Те съответстват на неговите методи isFiltered() и rescore(). Това, което искате да направите, е точно това, което правите с isFiltered(). Върнете true за всичко, което не е в категорията, която обмисляте.

person Sean Owen    schedule 04.02.2012