Samarbejdsfiltrering

Kollaborativ filtrering , kollaborativ filtrering er en af ​​metoderne til at konstruere forudsigelser  ( anbefalinger) i anbefalingssystemer , der bruger kendte præferencer (estimater) for en gruppe brugere til at forudsige ukendte præferencer for en anden bruger. [1] Hans grundlæggende antagelse er, at de, der værdsatte ting på samme måde i fortiden, har en tendens til at give lignende værdier til andre ting i fremtiden. [1] For eksempel ved hjælp af kollaborativ filtrering er en musikapplikation i stand til at forudsige, hvilken slags musik en bruger vil kunne lide , givet en ufuldstændig liste over hans præferencer (synes godt om og ikke kan lide). [2] Prognoser laves individuelt for hver bruger, selvom de anvendte oplysninger er indsamlet fra mange deltagere. På denne måde adskiller kollaborativ filtrering sig fra den mere simple tilgang , som giver en gennemsnitlig score for hvert objekt af interesse, for eksempel baseret på antallet af afgivne stemmer for det. Forskning på dette område udføres aktivt i vores tid, hvilket også skyldes tilstedeværelsen af ​​uløste problemer i kollaborativ filtrering.

Beskrivelse

I informationseksplosionens tidsalder er personaliserede anbefalingsmetoder såsom kollaborativ filtrering meget nyttige, fordi antallet af objekter selv i en kategori (såsom film, musik, bøger, nyheder, hjemmesider) er blevet så stort, at en enkelt person ikke er i stand til at se dem alle for at vælge de rigtige.

Kollaborative filtreringssystemer bruger normalt et to-trins skema [1] :

  1. Find dem, der deler den "aktive" (forventede) brugers værdidomme.
  2. Brug scorerne fra de ligesindede fundet i det første trin til at beregne forudsigelsen.

Algoritmen beskrevet ovenfor er bygget med hensyn til brugerne af systemet.

Der er også en alternativ algoritme, opfundet af Amazon [3] , bygget med hensyn til genstande (produkter) i systemet. Denne algoritme inkluderer følgende trin:

  1. Vi bygger en matrix, der definerer forholdet mellem par af objekter for at finde lignende objekter.
  2. Ved hjælp af den konstruerede matrix og information om brugeren opbygger vi prognoser over hans vurderinger.

For et eksempel kan du se Slope One- familien af ​​algoritmer

Der er også en anden form for kollaborativ filtrering, der er afhængig af implicit observation af brugerens normale adfærd (i modsætning til eksplicit observation, som indsamler brugervurderinger). I disse systemer observerer du, hvad en given bruger gjorde, og hvad andre gjorde (hvilken musik de lyttede til, hvilke videoer de så, hvilke sange de købte), og bruger dataene til at forudsige brugerens adfærd i fremtiden, eller forudsige hvad brugeren gerne vil gøre, hvis der er en vis mulighed. Disse forudsigelser skal foretages i henhold til forretningslogik , da det for eksempel er nytteløst at tilbyde nogen at købe en musikfil, som han allerede har.

Typer af kollaborativ filtrering

Der er 2 hovedmetoder, der bruges til at skabe anbefalingssystemer - kollaborativ filtrering og indholdsbaserede anbefalinger. Også i praksis anvendes en hybrid metode til byggeanbefalinger, som omfatter en blanding af ovenstående metoder. Kollaborativ filtrering er til gengæld også opdelt i 3 hovedtilgange (typer) [4] :

Nabobaseret

Denne tilgang er historisk set den første inden for kollaborativ filtrering og bruges i mange anbefalingssystemer. I denne tilgang vælges en undergruppe af brugere, der ligner ham, til en aktiv bruger. Kombinationen af ​​vægte og undergruppescores bruges til at forudsige aktive brugerscores [5] . Denne tilgang har følgende hovedtrin:

  1. Tildel en vægt til hver bruger under hensyntagen til ligheden mellem hans vurderinger og den aktive bruger.
  2. Vælg flere brugere, der har den maksimale vægt, det vil sige, at de minder mest om den aktive bruger. Denne gruppe af brugere kaldes naboer [6] .
  3. Beregn forudsigelsen af ​​aktive brugervurderinger for elementer, som han ikke har bedømt, under hensyntagen til vægte og vurderinger af naboer.

Modelbaseret

Denne tilgang giver anbefalinger ved at måle parametrene for statistiske modeller for brugervurderinger bygget ved hjælp af metoder såsom Bayesianske netværk , clustering , latente semantiske modeller såsom singular værdidekomponering , probabilistisk latent semantisk analyse , latent Dirichlet-distribution og Markov-baserede beslutningstagningsmodeller . [5] Modeller er udviklet ved hjælp af data mining, maskinlæringsalgoritmer til at finde mønstre baseret på træningsdata. Antallet af parametre i modellen kan reduceres afhængigt af typen ved hjælp af principalkomponentmetoden .

Denne tilgang er mere kompleks og producerer mere præcise forudsigelser, da den hjælper med at afdække latente faktorer, der forklarer de observerede score. [7]

Denne tilgang har en række fordele. Den håndterer sparsomme matricer bedre end den adjacency-baserede tilgang, hvilket igen hjælper med skalerbarheden af ​​store datasæt.

Ulemperne ved denne tilgang er den "dyre" skabelse af modellen [8] . Der er en afvejning mellem nøjagtighed og modelstørrelse, da nyttig information kan gå tabt på grund af modelreduktion.

Hybrid

Denne tilgang kombinerer de nabolagsbaserede og modelbaserede tilgange. Den hybride tilgang er den mest almindelige i udviklingen af ​​anbefalingssystemer til kommercielle steder, da den hjælper med at overvinde begrænsningerne ved den oprindelige oprindelige tilgang (baseret på naboskab) og forbedre kvaliteten af ​​forudsigelser. Denne tilgang overvinder også problemet med sparsomhed og informationstab. Denne tilgang er dog kompleks og dyr at implementere og anvende. [9]

Problemer

Data sparsomhed

Som regel er de fleste kommercielle anbefalingssystemer baseret på en stor mængde data (produkter), mens de fleste brugere ikke bedømmer produkter. Som et resultat er vare-bruger-matrixen meget stor og sparsom, hvilket giver problemer ved beregning af anbefalinger. Dette problem er især akut for nye, nyligt opståede systemer. [4] Også sparsomhed med data forværrer koldstartsproblemet .

Skalerbarhed

Med stigningen i antallet af brugere i systemet dukker problemet med skalerbarhed op. For eksempel, med 10 millioner kunder og en million varer , er en samarbejdsfiltreringsalgoritme med samme kompleksitet allerede for kompliceret til at beregne. Desuden skal mange systemer reagere øjeblikkeligt på online-anmodninger fra alle brugere, uanset deres købshistorik og vurderinger, hvilket kræver endnu større skalerbarhed.

Koldstartsproblem

Nye varer eller brugere er et stort problem for anbefalingssystemer. Den indholdsbaserede tilgang hjælper en del af problemet, da den er afhængig af attributter frem for vurderinger for at hjælpe med at inkludere nye elementer i anbefalinger til brugere. Problemet med at give en anbefaling til en ny bruger er imidlertid sværere at løse. [fire]

Synonymi

Synonymi er tendensen til, at lignende og identiske objekter har forskellige navne. De fleste anbefalingssystemer er ikke i stand til at opdage disse skjulte forbindelser og behandler derfor disse elementer som forskellige. For eksempel hører "film for børn" og "børnefilm" til samme genre, men systemet opfatter dem som forskellige. [5]

Bedrageri

I anbefalingssystemer, hvor alle kan bedømme, kan folk bedømme deres emner positivt og deres konkurrenter dårligt. Anbefalingssystemer er også blevet en stor indflydelse på salg og fortjeneste, da de blev meget brugt på kommercielle websteder. Dette resulterer i skrupelløse leverandører, der forsøger svigagtigt at rangordne deres produkter og nedgradere deres konkurrenter. [fire]

Diversitet

Kollaborativ filtrering blev oprindeligt designet til at øge diversiteten for at give brugerne mulighed for at opdage nye produkter fra et uendeligt antal. Nogle algoritmer, især dem, der er baseret på salg og vurderinger, skaber dog meget vanskelige betingelser for promovering af nye og lidet kendte produkter, da de erstattes af populære produkter, der har været på markedet i lang tid. Dette øger igen kun "rig bliver rigere"-effekten og fører til mindre variation. [ti]

Hvide krager

De "hvide krager" er brugere, hvis mening konstant ikke falder sammen med størstedelen af ​​resten. På grund af deres unikke smag er det umuligt for dem at anbefale noget. Sådanne mennesker har dog problemer med at få anbefalinger i det virkelige liv, så søgningen efter en løsning på dette problem er ikke i gang i øjeblikket. [5]

Ansøgning i sociale netværk

Kollaborativ filtrering er meget brugt i kommercielle tjenester og sociale netværk. Den første use case er at skabe en anbefaling til interessant og populær information baseret på fællesskabets "stemmer". Tjenester som Reddit og Digg  er typiske eksempler på systemer, der bruger kollaborative filtreringsalgoritmer.

Et andet anvendelsesområde er at skabe personlige anbefalinger til brugeren, baseret på hans tidligere aktivitet og data om præferencer for andre lignende brugere. Denne implementering kan findes på websteder som YouTube , Last.fm og Amazon [3] , samt i geolokaliseringstjenester såsom Gvidi og Foursquare .

Se også

Noter

  1. 1 2 3 En undersøgelse af kollaborative filtreringsteknikker, 2009 , s. en.
  2. En integreret tilgang til TV-anbefalinger af TV Genius Arkiveret 6. juni 2012.
  3. 1 2 Amazon, 2003 , s. en.
  4. 1 2 3 4 Problemer i anbefalingssystemer, 2010 , s. 7.
  5. 1 2 3 4 En undersøgelse af kollaborative filtreringsteknikker, 2009 , s. 3.
  6. K-nærmeste nabo-algoritme
  7. Skalerbar og nøjagtig kollaborativ filtrering, 2009 .
  8. En undersøgelse af kollaborative filtreringsteknikker, 2009 , s. 3-4.
  9. Problemer i anbefalingssystemer, 2010 , s. 6.
  10. The problem of diversity, 2009 , s. 23.

Litteratur