i disse dage uanset om du ser på en video på YouTube, en film på YouTube eller et produkt på
Anbefalingssystemer er vidtrækkende i omfang, så vi vil nulstille en vigtig tilgang kaldet samarbejdsfiltrering, som filtrerer information ved hjælp af interaktioner og data indsamlet af systemet fra andre brugere. Det er baseret på ideen om, at folk, der var enige i deres evaluering af visse ting, sandsynligvis vil blive enige igen i fremtiden.
en hurtig Primer på Anbefalingssystemer
et anbefalingssystem er en underklasse af informationsfiltrering, der søger at forudsige “vurdering” eller “præference”, som en bruger vil give et emne, såsom et produkt, film, sang osv.
Anbefalingssystemer giver personlig information ved at lære brugerens interesser gennem spor af interaktion med den pågældende bruger. Ligesom maskinlæringsalgoritmer gør et anbefalingssystem en forudsigelse baseret på en brugers tidligere adfærd. Specifikt er det designet til at forudsige brugerpræference for et sæt varer baseret på erfaring.
matematisk er en anbefalingsopgave indstillet til at være:
- sæt af brugere (U)
- sæt af elementer (I), der skal anbefales til u
- Lær en funktion baseret på brugerens tidligere interaktionsdata, der forudsiger sandsynligheden for element I til U
Anbefalingssystemer klassificeres bredt i to typer baseret på de data, der bruges til at drage slutninger:
- indholdsbaseret filtrering, der bruger Elementattributter.
- Samarbejdsfiltrering, der bruger brugeradfærd (interaktioner) ud over Elementattributter.
nogle vigtige eksempler på anbefalingssystemer på arbejdspladsen inkluderer:
- produktanbefalinger på
og andre shoppingsider - film og TV vis anbefalinger på
- artikelanbefalinger på nyhedssider
Hvad er Samarbejdsfiltrering?
Samarbejdsfiltrering filtrerer oplysninger ved hjælp af interaktioner og data indsamlet af systemet fra andre brugere. Det er baseret på ideen om, at folk, der var enige i deres evaluering af visse ting, sandsynligvis vil blive enige igen i fremtiden.
konceptet er enkelt: når vi vil finde en ny film at se, beder vi ofte vores venner om anbefalinger. Naturligvis har vi større tillid til anbefalingerne fra venner, der deler smag, der ligner vores egen.
de fleste samarbejdsfiltreringssystemer anvender den såkaldte lighedsindeksbaserede teknik. I den kvarterbaserede tilgang vælges et antal brugere ud fra deres lighed med den aktive bruger. Inferens for den aktive bruger foretages ved at beregne et vægtet gennemsnit af de valgte brugeres vurderinger.
Samarbejdsfiltreringssystemer fokuserer på forholdet mellem brugere og elementer. Ligheden mellem varer bestemmes af ligheden mellem klassificeringerne af disse varer af de brugere, der har bedømt begge varer.
Der er to klasser af Samarbejdsfiltrering:
- brugerbaseret, som måler ligheden mellem målbrugere og andre brugere.
- Elementbaseret, som måler ligheden mellem de elementer, der er målrettet mod brugere, vurderer eller interagerer med og andre elementer.
Samarbejdsfiltrering ved hjælp af Python
samarbejdsmetoder udarbejdes typisk ved hjælp af en værktøjsmatrice. Anbefalingsmodelens opgave er at lære en funktion, der forudsiger nytten af pasform eller lighed med hver bruger. Værktøjsmatricen er typisk meget sparsom, enorm og har fjernet værdier.
i de følgende matricer repræsenterer hver række en bruger, mens kolonnerne svarer til forskellige film efter punkttegn. Cosinus-ligheden er den enkleste algoritme, der er nødvendig for at finde ligheden mellem vektorerne. Den sidste, som er hjælpematricen efter den første matrice, indeholder kun delvise data, som er nødvendige for at forudsige sandsynligheden for den forventede vurdering af “root”, som kunne gives af brugeren.
i de følgende matricer repræsenterer hver række en bruger, mens kolonnerne svarer til forskellige film, undtagen den sidste, der registrerer ligheden mellem den bruger og målbrugeren. Hver celle repræsenterer den vurdering, som brugeren giver til den film.
cosine_similaritet(p, k) = p.k
|p/.|spørgsmål|
cosine_similarity(joe, beck) =
Når en ny bruger slutter sig til platformen, anvender vi den enkleste algoritme, der beregner cosinus eller korrelation lighed mellem rækker (brugere) eller kolonner (film) og anbefaler elementer, der er forbundet med K-nærmeste naboer.
disse er mange ligninger, der kan håndtere spørgsmålet om lighedsmål, nogle få omfatter:
- Pearson lighed
- Jaccard lighed
- Spearman rank korrelation
- gennemsnitlige kvadrerede forskelle
- nærhed–effekt–Popularitet lighed
Relateretlæs mere om datavidenskab