Właśnie przeczytałem, jak zespół Pragmatic Chaos zespołu BellKor jest winning the Netflix Challenge na Wired i jestem ciekawy, jak zwykle działają tego rodzaju algorytmy. Wiem, że rozwiązanie zespołu Bellkora musi być innowacyjne na polu ... ale jak zwykle działa to pole? Czy jest to po prostu bardzo szczegółowa baza danych z łańcuchami Markowa, które są uruchamiane raz po raz czy co?Jak zwykle działają automatyczne algorytmy rekomendacji?
Odpowiedz
ale jak to zwykle działa?
Jest to technika Data Mining. Data Mining jest wykorzystywany jako część Business Intelligence (Data Warehouse i innych), próbując znaleźć relacje i informacje w ogromnych ilościach danych. Jest to dziedzina informatyki, zajmująca się również ogólnie uczeniem maszynowym, np. rozpoznawanie wzorców. Automatyczne rekomendacje są dostępne pod numerem Association Mining. Związek z wysokim wsparciem jest pokazany jako zalecenie. Algorytm k-najbliższego-sąsiada jest tylko jednym z wielu algorytmów wykorzystywanych przez osoby uczące się/eksploracji danych.
Jeśli interesuje Cię podstawowa teoria, polecam Data Mining: Practical Machine Learning Tools and Techniques autorstwa Iana H. Wittena.
Dla języka Java dostępny jest wielki pakiet uczenia maszynowego, WEKA, który może wykonać association mining. Ian Witten jest także jednym z autorów WEKA.
Zobacz artykuł z Wikipedii: Euclidean Distance.
Podstawową ideą jest użycie metryki odległości (takiej jak Euklidesa powyżej) do porównywania ludzi lub rzeczy ze sobą.
Nowa książka O'Reilly, Programming Collective Intelligence: Building Smart Web 2.0 Applications ma wspaniały rozdział na ten temat.
Znalazłem this previous article na Wired, który krótko wspomina o k-nearest-neighbor algorithm, używanym w przeszłości przez Bellkor i Cinematch.
Obserwacje poczynione przez psychologa na temat tego, jak znaleźć błąd, są również interesujące.
Większość uczestników Konkursu Netflix używa wersji Singular Value Decomposition. Algorytm ten działa poprzez wzięcie dużej macierzy i uproszczenie jej do przybliżonej macierzy 2x2. Ta matryca 2x2 może następnie zostać wykreślona na dwuwymiarowej przestrzeni, w której punkty w pobliżu siebie mają powinowactwo ze sobą w oryginalnej macierzy.
W przypadku Netflix można utworzyć matrycę z filmami będącymi kolumnami, a użytkownikami będącymi wierszami, gdzie dowolna wartość [i, j] to ocena przyznana przez użytkownika i. J. Jest to bardzo duża matryca, która może następnie zastosować SVD do wygenerowania dwuwymiarowej matrycy, która służy jako przybliżenie większej matrycy. Użytkownicy, którzy są blisko siebie, gdy są narysowani na tej płaszczyźnie, mają podobne oceny, więc jeśli jeden użytkownik nie widział filmu, który inny użytkownik zobaczył, kto jest blisko niego na tej płaszczyźnie, może to być zalecenie dla nowego użytkownika.
Zwycięskie rozwiązanie zaprojektowało odmianę prostego algorytmu SVD o nazwie SVD ++ i wymieszało to wraz z innymi skrajnymi przypadkami w celu wypróbowania algorytmu, który przekroczyłby 10% poprawę potrzebną do odebrania nagrody.
- 1. Jak stworzyć własny silnik rekomendacji?
- 2. Django: Wdrożenie programu rekomendacji
- 3. System rekomendacji strony internetowej
- 4. C# algorytmy kombinacji zamówień
- 5. Silnik rekomendacji w języku Python
- 6. Diff algorytmy
- 7. Gdzie mogę się dowiedzieć o systemach rekomendacji?
- 8. Czy TensorFlow nadaje się do systemów rekomendacji
- 9. Algorytmy symulacji miasta?
- 10. Algorytmy DSP Książka
- 11. Jak zbudować system rekomendacji na Amazon Machine Learning
- 12. Jak poprawić wyniki rekomendacji? Używam iskry ALS domyślnie
- 13. Poszukuję rekomendacji, jak konwertować PDF na format strukturalny.
- 14. Algorytmy rozkładania personelu
- 15. algorytmy wyszukiwania ranking/trafność
- 16. Jakie algorytmy używa SQL?
- 17. Jaka jest zwykle zasada nazewnictwa w clojure?
- 18. Zobacz wszystkie algorytmy filmów
- 19. Algorytmy przyrostowego wykresu
- 20. Algorytmy Pyephem Referencje
- 21. Algorytmy dla pozycji rankingowych
- 22. Algorytmy w C
- 23. Algorytmy pakowania trójwymiarowego
- 24. Algorytmy dla 3D Mazes
- 25. Algorytmy kompresji danych
- 26. Algorytmy kompresji zestawu prób
- 27. Algorytmy wyszukiwania ciągów
- 28. Algorytmy rozpoznawania wzorów
- 29. Algorytmy trójstronnego scalania tekstu
- 30. Algorytmy układu graficznego Java
Innym podejściem jest odległość manhattan (lub geometria Taxicab) (szybciej obliczyć, mniej dokładna niż Euklidesowa) – adhg