Anbefalingssystemer er programmer , der forsøger at forudsige, hvilke objekter ( film , musik , bøger , nyheder , hjemmesider ) vil være af interesse for brugeren, givet visse oplysninger om hans profil .
De to hovedstrategier til at bygge anbefalingssystemer er indholdsbaseret filtrering og kollaborativ filtrering [1] [2] . Indholdsbaseret filtrering opretter bruger- og objektprofiler, brugerprofiler kan indeholde demografiske oplysninger eller svar på et specifikt sæt spørgsmål, objektprofiler kan omfatte genrenavne, skuespillernavne, kunstnernavne og andre attributoplysninger afhængigt af typen af objekt. For eksempel i Music Genome Project vurderer en musikanalytiker hver sang ud fra hundredvis af forskellige musikalske karakteristika, som kan bruges til at bestemme brugerens musikalske præferencer. Samarbejdsfiltrering bruger oplysninger om tidligere brugeradfærd, såsom køb eller vurderinger. I dette tilfælde er det lige meget, hvilke typer objekter du arbejder med, men der kan tages hensyn til implicitte egenskaber, som ville være svære at tage højde for, når du opretter en profil. Hovedproblemet med denne type anbefalingssystemer er "koldstarten": manglen på data om brugere eller objekter, der for nylig er dukket op i systemet.
Mens de arbejder, indsamler anbefalingssystemer data om brugere ved hjælp af en kombination af eksplicitte og implicitte metoder. Eksempler på eksplicit dataindsamling:
Eksempler på implicit dataindsamling:
Recommender-systemer sammenligner den samme type data fra forskellige personer og beregner en liste med anbefalinger til en bestemt bruger. Nogle eksempler på deres kommercielle og ikke-kommercielle brug er givet i artiklen om kollaborativ filtrering . For at beregne anbefalinger anvendes en graf over interesser [3] . Recommender-systemer er et praktisk alternativ til søgealgoritmer, da de giver dig mulighed for at opdage objekter, der ikke kan findes sidst. Mærkeligt nok bruger anbefalingssystemer ofte søgemaskiner til at indeksere usædvanlige data.