Po wygenerowaniu kandydata inny model przyznaje punkty i nadaje mu klasyfikację aby wybrać zestaw elementów do wyświetlenia. System rekomendacji może mieć wiele generatorów kandydatów, które korzystają z różnych źródeł, takich jak w następujący sposób:
- Powiązane elementy z matrycowego modelu rozkładu na czynniki.
- Funkcje użytkownika uwzględniające personalizację.
- „Lokalne” a „odległe” items; czyli analizę danych geograficznych pod uwagę.
- Popularne lub zyskujące popularność.
- wykres społecznościowy, czyli elementy polubione lub polecane przez ze znajomymi.
System łączy te różne źródła w wspólną pulę kandydaci, których wyniki są następnie oceniane przez pojedynczy model i pozycjonowane według taki wynik. System może na przykład wytrenować model do prognozowania prawdopodobieństwo obejrzenia filmu w YouTube przez użytkownika, biorąc pod uwagę:
- funkcje zapytań (np. historia oglądania, język, kraj, godzina);
- funkcje wideo (np. tytuł, tagi, umieszczanie filmów);
System może następnie ocenić filmy w puli kandydatów według do prognozy modelu.
Dlaczego mamy do czynienia z wynikiem generatora kandydatów?
Generatory kandydatów obliczają wynik (np. miarę podobieństwa w obszarze osadzania), może ją kusić, aby utworzyć ranking jako cóż. Należy jednak unikać tych praktyk z następujących powodów:
- Niektóre systemy korzystają z kilku generatorów kandydatów. Wyniki tych z różnych generatorów, mogą nie być porównywalne.
- Jeśli pula kandydatów jest mniejsza, system może sobie pozwolić na wykorzystanie więcej funkcji i bardziej złożony model, który może lepiej rejestrować kontekst.
Wybór funkcji celu do punktacji
Jak być może pamiętasz z dokumentu Introduction to ML Problem Kadrowanie, Systemy uczące się mogą działać jak psotny dżin: bardzo się cieszę, że uczą się celu możesz podać, ale musisz uważać, co chcesz. To psotne wpływa też na systemy rekomendacji. Wybór sposobu oceny może znacznie wpływać na ranking elementów, a w efekcie jakość rekomendacji.
Przykład:
Kliknij ikonę plusa, aby dowiedzieć się, co dzieje się w wyniku użycia poszczególnych funkcji do jego osiągnięcia.
Maksymalizuj współczynnik klikalności
Jeśli funkcja punktacji jest optymalizowana pod kątem kliknięć, system może zalecić filmy, które są „przynętą na kliknięcia”. Funkcja punktacji generuje kliknięcia, ale nie i zadbać o dobre wrażenia użytkowników. Lista użytkowników może szybko zniknąć.
Maksymalny czas oglądania
Jeśli funkcja punktacji zostanie zoptymalizowana pod kątem czasu oglądania, system może polecać bardzo długie filmy, co może negatywnie wpływać na wygodę użytkowników. Pamiętaj, że wiele krótkich filmów może przynieść równie dobre wyniki jak jeden długi.
Zwiększenie różnorodności i maksymalizowanie czasu oglądania sesji
polecać krótsze filmy, ale takie, które mogą utrzymać i zaangażował użytkownika.
Odchylenie pozycjonowania w punktacji
Elementy wyświetlane niżej na ekranie rzadziej są klikane niż elementów widocznych wyżej na ekranie. Jednakże podczas oceniania filmów system zwykle nie wie, w którym miejscu na ekranie znajduje się link do filmu. w ostatecznym rozrachunku. Wysyłanie do modelu wszystkich możliwych pozycji jest również drogie. Nawet gdyby można było wysyłać zapytania na wiele pozycji, system nadal mogą nie być spójne z wieloma wynikami.
Rozwiązania
- Tworzenie rankingów niezależnych od pozycji.
- Uszereguj wszystkich kandydatów tak, jakby byli na najwyższej pozycji na ekranie.