>> [Zenelejátszási]
>> AGY SCASSELLATI: Üdvözöljük A CS50 AI sorozat.
A nevem Scass, és ma megyünk beszélni Ajánló rendszerek.
Most ajánló rendszerek hangok mint egyfajta furcsa név.
Úgy hangzik, mint talán kellene lehet ajánlást rendszerek,
és valahogy egyetértek veled.
De ezek a rendszerek, amelyek segítenek válassza ki hasonló dolgokat, amikor
kiválaszt valamit az interneten.
Netflix, például azt sugallják, más filmeket, hogy érdemes nézni.
Vagy Pandora javasol különböző dal, amit érdemes meghallgatni.
Amazon azt sugallják, milyen Más termékek érdemes vásárolni.
Facebook is arra utalnak, néhány más barátok
hogy érdemes felvenni.
Minden ilyen rendszer működik segítségével ugyanazokkal az alapvető fajta algoritmus,
és ez az, amit mi vagyunk fog ma beszélni.
>> Most ezek az algoritmusok Meglepően nagy üzlet.
Netflix néhány évvel ezelőtt 2009 kínált $ 1.000.000
díjat, ha javíthatnák ajánlási rendszert csak 10% -kal.
, Hogy 10%, bár, jelentése jelentős mennyiségű üzlet.
Becslések nehéz találni, de sokan
úgy vélik, hogy ezek a ajánlása rendszerek egy online vásárlás
rendszer, mint az Amazon vezet valahova 10% és 25% nagyobb bevétel.
Így el lehet képzelni a fajta hangerőt, hogy te
beszélünk, amikor azt gondolni, még ezek a kis algoritmusokat.
>> Szóval térjünk néhány példát.
Hogy lehet az, hogy ezek a rendszerek tényleg működik?
Két alapvető féle algoritmusok,
itt szerepet, amikor beszélünk generáló ajánlásokat.
Az elsők nevezzük tartalmat alapú szűrés.
És a tartalom alapú szűrés támaszkodik upon közötti hasonlóságokat tételek
magukat, hogy van két filmet vagy két dal vagy két vásárolt tételeket.
Fogunk használni filmek Példaként, de ez a
pályázhattak, tényleg, bármilyen típusú A kifogás, hogy keresünk.
>> Tehát ha azt gondolom, néhány A filmeket az elmúlt évben,
Láttam belülről kifelé a gyerekeim, tetszett nekik.
De mi is volt a választás.
Mehettünk volna látni Minions, tudnánk látni Age of Ultron,
vagy mi lehetett szemlélni Ant Ember a mozikban.
>> Mert ezek bármelyike filmeket, el tudnánk képzelni
generáló szolgáltatások listája vagy adottságok azokról különböző filmeket.
Így például azt mérlegelheti amely azoknak a filmeket animált.
Nos, mindkét Inside Out és csatlósai animált.
Sem Age of Ultron sem Hangya Ember animációs filmek.
És tudtam képzelni épület egy szerkezet, egy asztal, hogy
felsorolja minden egyes ilyen tulajdonságokkal.
Vajon animált, vagy nem?
Én aztán még több funkciók ebben a táblázatban
hozzáadásával több sort ebbe a struktúrába.
Kérhetnék-e vagy Nem ők a Marvel filmek.
Nos, az Inside Out és csatlósai Nem Marvel filmek,
Age of Ultron és Ant Man mindenképpen.
>> És tudtam kérni minden fajta A különböző minőségű
hogy szerettem volna, minden fajta jellemzői hogy lehet fontos nekem.
Vannak olyan szuper gazember?
Nos, nincs szuper gazember Inside Ki, de vannak olyanok a Minions
és nyilvánvaló, hogy a Két szuperhős filmeket.
>> Én is kérni a dolgokat, mint, nos, nem haladnak a Bechdel teszt?
Van két elemzi női karakterek, akik
eltölteni néhány jelentős mennyiségű ideje, amelyek egy beszélgetést, hogy
nem jár a férfiak a leadott?
Nos, ebben az esetben, az Inside Out halad A vizsgálat Minions nem sikerül, az Age of Ultron
átmegy a teszten, és a Hangya férfi képtelen.
Ezek közül bármelyik jellemzői Arra tudtam gondolni,
Mindenképpen fontosnak néhány ember számára.
>> Én is kérni a dolgokat, mint a Van-e olyan ember ezekben a filmekben, hogy
a öregdiák mondjuk, parkok és Üdülés, az egyik kedvenc show.
Nos, Inside Out Amy Poehler, hogy ez egy Alumni.
Ami számít.
Jon Hamm volt csatlósai.
Paul Rudd volt Ant Man, de senki Age of Ultron volt Parkok és szüks
is.
Szóval lehet felépíteni ezt a listát funkciók, és ők is nagyon
bármi lehet a filmekről.
Ők lehetnek arról, hogy mi képarány lőttek az,
ez lehet, hogy hány helyet azok értékesített a nyitó hétvégén.
Bármilyen jellemző, hogy szeretnék generál tudom rakni ebbe a táblázatot.
>> Most, ebben az esetben, amit épített minden fajta veretlen értékek,
igen vagy nem, lehet sikeres vagy sikertelen, de bármi lehet.
Ők lehetnek tetszőleges értékeket.
A tartalomszolgáltatók alapú szűrés, mit fogunk csinálni
A megyünk, hogy fontolja két oszlop található
és látom, hogy hasonlítanak egymásra.
Így például, ha I Elmentem megnézni Inside Out,
Lehet kérdezni, mi van a többi filmek hogy esetleg hajlandó menni látni.
Ez azt jelenti, hogy mi hajlandó költeni a pénzem, hogy nézd meg.
És tudom hasonlítani ezt csak figyelembe A két oszlopot, az egyik belülről kifelé
és egy bármely a más filmeket, és csak látta
Hány azok jellemzőit mérkőzést.
Tehát, ha összehasonlítom Inside Out A Minions, nos,
Három dolog, hogy itt meccs.
Mindketten animált, egyikük sem a Marvel filmek, és mindketten
Van Parks and Köv öregdiákok.
Így tudtam számolni, hol tartottam Sok mérkőzést voltak,
és ebben az esetben is lenne három.
>> Ha én majd hasonlítsa össze az Inside Out A mondjuk Age of Ultron,
Azt nézd meg a listát és azt mondják, nos,
csak egy dolog, hogy itt egyezést.
Mindketten át a Bechtel teszt, így hogy lesz egy tucat ember.
És közötti Inside Out és Ant Man, megint
összehasonlíthatja soronként hány dolgokat egyeznek a ketten.
Nos, az egyik az animációs, egy nem.
Az egyik egy Marvel film, az egyik nem.
Egy van egy szuper gazember, a másik nem.
Az egyik átmegy a Bechtel vizsgálat, az egyik meghibásodik rá,
de mindkettőnek Parkok és szüks öregdiák, így ismét kap egy pontszámot egy.
>> Szóval, ha kerestek filmek hogy hasonló volt Inside Out,
Tudtam nézni a filmeket, amelyek belül a legnagyobb pontszámot a tartalom
szűrés rendszert.
Tehát ebben az esetben, úgy tartaná Minions
hogy szorosabb és valószínűleg valami
hogy én pénzt költeni, hogy mint az Age of Ultron vagy Ant Man.
>> Ezek tartalma alapján szűrőrendszerek támaszkodnak csak
a tulajdonságairól A filmeket, és így
lehet építeni ezeket csak ismeretében valamit a termékek
hogy van.
Tudom használni bármilyen típusú funkciók, amelyek szeretnék,
és én építhet több összetett funkciók
vonja bonyolultabb vizsgálati A minőségi ahogy megy végig.
Sőt, azt is megnézheti ezt a táblázatot Nem mint egy statikus tárgy,
hanem inkább, hogy a méretek egy terjedelmesebb állam helyet.
És tudom kezdeni beszélni a közötti távolságok különböző filmeket.
Ezek mind olyan dolgok hogy tudjuk, hogyan
ezt a fajta adatstruktúrák hogy már láttuk a CS50.
Így tudtam képzelni épület egy adatszerkezetet egy film.
Van egy struct, hogy én már épített úgynevezett film,
és azt az öt logikai bejegyzéseket is.
Vajon animált, ez egy Marvel film, nem is olyan szuper gazember,
nem is adja át az Bechdel vizsgálat, és vannak Parks and Rec öregdiák benne?
És ezek mindegyike egy adatstruktúra, hogy én
lehet elfoglalni az adott filmet.
>> Ezután kiszámítjuk, hogy két filmek hasonló, vagy nem,
mi a pontszám, tudtam írjon ki egy sor pszeudokódja, hogy
generál, hogy ugyanazt a funkciót.
Azaz, mivel néhány film M1, tudok megtalálni a leginkább hasonló filmet is
az alábbiak szerint: pszeudokódja.
Úgy vélem, hogy melyik a legjobb pontozási rendszert, amit találtam,
A legjobb összehasonlítása, hogy én találtam.
Minden más film Én megyek keresztül,
Én meg egy mérkőzés eredménye: 0-val egyenlő.
És én megyek át, hogy film, M1, a film
Kezdtem, utánanézek minden egyes funkció
hogy meg kell látni ha van egy meccs.
Ha van egy meccs, én megnövelni a mérkőzés pontszámot.
És ha a végén a meccs kottát, hogy Én már jobb, mint a jelenlegi legjobb
pontszámot, akkor én ne feledjük, hogy a legjobb pontszámot,
és ez a legjobb meccs, hogy van.
A végén, függetlenül film ül legjobb meccs,
ez a legközelebbi Képes voltam, hogy jöjjön.
Szóval ezek tartalma alapján szűrőrendszerek,
ezek mind alapvető felépítéséből.
Ők támaszkodni az elem a szóban forgó és semmi
bármilyen, a felhasználói beállítások.
>> A másik mechanizmus, amely az általunk használt kiépítése érdekében ajánlást rendszerek
az úgynevezett együttműködő szűrés.
Együttműködésben szűrés támaszkodik Nem a tulajdonságok a tárgy maga,
de hogy az emberek, más használók azaz, hogy ők már
válaszolt ezekre ugyanaz a tárgy.
Tehát, hogy folytatni tudjam a film például Lehet, hogy egy csomó barátom
és felmérésekből őket arról, hogy vagy Nem tetszett nekik adott filmeket.
Most különböző helyeken fog generálni Ezen adatok különböző módon.
Akkor közvetlenül a felmérés a felhasználók, vagy csak egyszerűen
lásd, mit akarnak, ha te, például a Netflix.
Melyik filmet nem nézik?
>> Én megkérdőjelezheti az én Itt barátok, és megtudja,
hogy Jason tetszett minden film látta, nem meglepő ott.
Andy csak tetszett erőkkel, és Mari néni.
Sarah tetszett Inside Out és Avengers, az ellenkezője Andy.
És Sam, nos, Sam tetszett az összes szuperhős filmek,
de egyik sem a animációs filmek.
>> Én aztán kérdezni néhány új egyedi, egy másik felhasználó, mint én
és kérdezd meg, nos, ha tetszett az egyik ilyen filmeket,
lehet, hogy a jóslata amely más filmeket én is tetszik.
Azaz, ha tetszett Inside Ki, amely más filmeket
vagyok valószínűleg még szeretné látni annak alapján, amit a hasonló ember volt?
Azaz, megyek keresztül Majd szűrjük át ezt a listát
és megtalálja a akik szintén tetszett
Inside Out, akik megfeleltek az én preferenciák.
Nos, ez azt jelenti, hogy Andy és Sam, nem tetszett nekik Inside Out,
így nem fogom vizsgálni őket.
Megyek megszabadulni a adatokat az összehasonlítás.
>> Én akkor nézd meg, mit Jason és Sarah gondolta-e és összhangban
fel, amelyek a filmeket, hogy látták hogy én nem, akár tetszik nekik
vagy sem.
Én is csak számlálás, mondjuk szavazat.
Tehát Minions, például lehet, hogy egy szavazzanak rá, mert Jason tetszett.
Mind Jason és Sarah tetszett Avengers, így lenne két szavazata van.
És csak Jason tetszett Ant Man, így kapnánk egy szavazattal rendelkezik.
Tehát, ha kellett, akkor ajánlom magamnak, hogy ezek közül a filmek
Lehet, hogy a legvalószínűbb, hogy néz, megtenném Ki kell választani Age of Ultron: Avengers.
>> Tehát ezek bármelyike rendszerek, most én vagyok a
adatok keletkezett nem a film maga, hanem azokról a kedvezményekről
más felhasználók számára.
Ez azonban bizonyos nehézségek természetesen.
Mi van, ha nincs más felhasználóknak?
Nos, ez az úgynevezett indítási probléma.
Van, hogy néhány mennyiségű adatot, mielőtt te
tudja, hogy ezután a ezeket az ajánlásokat.
Az érem másik oldala is van, amint elkezdi az adatgyűjtést,
ha lehet gyűjteni több és egyre több adatot,
kapsz jobb és jobb és jobb ajánlásokat.
>> Most tudtuk lefordítani Ezt figyelembe kódot is.
Tudjuk meg egy másik fajta struktúra,
Ebben az esetben hívjuk meg a felhasználó.
És van sajátossága amely filmek felhasználó tetszett.
Vajon tetszik Inside Out, Csatlósai, Avengers, és Ant Man.
Mi aztán generál Néhány pszeudokódja követni
Ugyanezzel az eljárással, amit korábban használt.
Azaz, adott egy adott használati x, hadd ajánlani egy filmet
hogy x is tetszik.
Mi lehet átmenni és az összes film,
tudjuk inicializálni pontszáma e filmet, hogy 0.
És akkor megtalálja a A többi felhasználó, aki
ugyanolyan kedvezményeket, mint x.
És akkor minden film, ami tetszett nekik,
fogjuk növelni a pontszámot, hogy a film.
Bármelyik film a végén a legmagasabb pontszámot,
ez az egyetlen kéne ajánlani.
>> Mindez valóban homályos.
Egyik ez kihívást jelent.
Ezek mind alapvető algoritmusok hogy meg tudná végrehajtani ma.
>> Most valódi Ajánló rendszerek, befut néhány probléma.
Mi van, ha nincs senki, aki pontosan egyezik a beállítások?
Mi van, ha vannak olyan felhasználók, akik pontosan a kedvezményeket,
de akkor térhet drasztikusan abból, amit szeretsz?
Szeretem a klasszikus Godzilla filmeket, de a feleségem nem.
Szeretem nézni őket, én Netflix számla tartalmazza őket.
Her nem.
Mi történik, amikor elkezdjük keverési adatok, mint ez?
Ezek mind kihívások hogy lehet legyőzni,
ők csak hogy egy kicsit összetettebb algoritmusokat.
>> Most a való világban, amely valójában működési,
tudjuk használni, tartalom alapú szűrés, vagy tudjuk használni kollaboratív szűrés?
És a válasz: mi mindkettőt használni.
Szinte az összes fő felhasználói Ebben az esetben, az Amazon, a Facebook, a Netflix,
Pandora, mindannyian kombinált használatát Ezeknek a különböző ajánlást rendszerek.
És ha kombináljuk a választásokat Minden, nevezzük őket hibrid rendszerek.
Ezek valamilyen módon függ a jellemzői a tárgy maga,
és bizonyos értelemben ők függnek A kedvezmények más felhasználók.
Ezek a hibrid rendszerek, ők nagy üzlet,
és ők mi aktuális ma.
>> Szóval köszönöm szépen, hogy csatlakoztak hozzám.
Remélem már ütött egy kicsit kicsit értettem, hogy mit
teszi ezeket a rendszereket munkát.
Legközelebb, ha éppen online, ne feledje, hogy nem csak akkor befolyásolhatja a döntéseket,
de potenciálisan mindenki másét is.
Köszönet újra.