I Disse dager, enten du ser på en video På YouTube, en film På Netflix eller Et produkt På Amazon, kommer du til å få anbefalinger for flere ting å se, like eller kjøpe. Du kan takke adventen av maskinlæringsalgoritmer og anbefalingssystemer for denne utviklingen. Recommender systemer er vidtrekkende i omfang, så vi kommer til å fokusere på en viktig tilnærming kalt samarbeidsfiltrering, som filtrerer informasjon ved hjelp av interaksjoner og data samlet inn av systemet fra andre brukere. Det er basert på ideen om at folk som ble enige om i evalueringen av visse elementer, sannsynligvis vil bli enige igjen i fremtiden.
En Rask Primer på Anbefalingssystemer
et anbefalingssystem er en underklasse av informasjonsfiltrering som søker å forutsi «vurdering» eller «preferanse» en bruker vil gi et element, for eksempel et produkt, film, sang, etc.
Recommender systemer gir personlig informasjon ved å lære brukerens interesser gjennom spor av samhandling med den brukeren. I likhet med maskinlæringsalgoritmer, gjør et anbefalingssystem en prediksjon basert på brukerens tidligere oppførsel. Spesielt er den designet for å forutsi brukerpreferanse for et sett med elementer basert på erfaring.
Matematisk er en anbefalingsoppgave satt til å være:
- sett med brukere (U)
- sett med elementer (I) som skal anbefales Til U
- Lær en funksjon basert på brukerens tidligere samhandlingsdata som forutsier sannsynligheten for element I Til U
Recommender systemer er grovt klassifisert i to typer basert på dataene som brukes til å lage slutninger:
- Innholdsbasert filtrering, som bruker elementattributter.
- Samarbeidsfiltrering, som bruker brukeradferd (interaksjoner) i tillegg til elementattributter.
noen viktige eksempler på recommender systemer på jobb inkluderer:
- Produktanbefalinger på Amazon og andre nettbutikker
- Film-og tv-showanbefalinger På Netflix
- Artikkelanbefalinger på nyhetssider
Hva Er Samarbeidsfiltrering?
Samarbeidsfiltrering filtrerer informasjon ved hjelp av interaksjoner og data som samles inn av systemet fra andre brukere. Det er basert på ideen om at folk som ble enige om i evalueringen av visse elementer, sannsynligvis vil bli enige igjen i fremtiden.konseptet er enkelt: når vi vil finne en ny film å se på, spør vi ofte vennene våre om anbefalinger. Naturligvis har vi større tillit til anbefalingene fra venner som deler smak som ligner på vår egen.
de fleste samarbeidende filtreringssystemer bruker den såkalte likhetsindeksbaserte teknikken. I nabolagsbasert tilnærming velges en rekke brukere basert på deres likhet med den aktive brukeren. Slutning for den aktive brukeren gjøres ved å beregne et vektet gjennomsnitt av vurderingene til de valgte brukerne.
Samarbeidsfiltreringssystemer fokuserer på forholdet mellom brukere og elementer. Likheten av elementer bestemmes av likheten av karakterene til de elementene av brukerne som har vurdert begge elementene.
Det er To klasser Av Samarbeidsfiltrering:
- Brukerbasert, som måler likheten mellom målbrukere og andre brukere.
- Elementbasert, som måler likheten mellom elementene som målretter brukere rangere eller samhandle med og andre elementer.
Samarbeidsfiltrering Ved Hjelp Av Python
Samarbeidsmetoder utarbeides vanligvis ved hjelp av en verktøymatrise. Oppgaven til anbefalingsmodellen er å lære en funksjon som forutsier bruken av passform eller likhet med hver bruker. Verktøyet matrise er vanligvis svært sparsom, stor og har fjernet verdier.
i følgende matriser representerer hver rad en bruker, mens kolonnene tilsvarer forskjellige filmer Av Pixar. Cosinus likheten er den enkleste algoritmen som trengs for å finne likhetene til vektorene. Den siste, som er bruksmatrisen etter den første matrisen, inneholder bare delvise data, som er nødvendig for å forutsi sannsynligheten for forventet vurdering av «rot» som kan gis av brukeren.
i følgende matriser representerer hver rad en bruker, mens kolonnene tilsvarer forskjellige filmer, bortsett fra den siste som registrerer likheten mellom den brukeren og målbrukeren. Hver celle representerer karakteren som brukeren gir til den filmen.
cosine_simularitet (p, q) = p. q
|p|.|q/
cosine_similarity(joe, beck) =
når en ny bruker blir med på plattformen, bruker vi den enkleste algoritmen som beregner cosinus eller korrelasjonslikhet av rader (brukere) eller kolonner (filmer) og anbefaler elementer som er k-nærmeste naboer.
Dette er mange ligninger som kan håndtere spørsmålet om likhetstiltak, noen inkluderer:
- Jaccard likhet
- Spearman rank correlation
- Mean squared differences
- Nærhet-innvirkning-popularitet likhet
Relatertles Mer om Data Science