PERSONALIZIRANO UČENJE
23 Govorica UI: Kako vas YouTube spoznava – 2. del
Proces
Google v vseh svojih produktih uporablja globoke nevronske mreže za strojno učenje2. Na podlagi video modela YouTubova nevronska mreža zabeleži videoposnetke, podobne tistim, ki jih je uporabnik že gledal. Nato poskuša napovedati čas gledanja vsakega novega videoposnetka za dani uporabniški model in jih razvrsti na podlagi napovedi. Na koncu prikaže 10 do 20 videoposnetkov (odvisno od naprave) z najvišjimi ocenami.
Proces je podoben modelu strojnega učenja, ki smo ga že opisali. Stroj v tem primeru najprej zabeleži značilnosti uporabniških in video modelov, ki jih je podal programer. Iz sklopa učnih podatkov se nauči, kakšno utež naj dodeli posamezni značilnosti, da bo pravilno napovedal čas (trajanje) ogleda. Nato, po testiranju in potrditvi, da pravilno deluje, lahko začne generirati napovedi in priporočila.
Učenje
V fazi učenja se sistemu posreduje na milijone pozitivnih in negativnih primerov. Pozitiven primer je, ko uporabnik klikne na videoposnetek in si ga določen čas ogleduje. Negativen primer je, ko uporabnik ne klikne na videoposnetek ali si ga ne ogleduje dovolj dolgo2.
Nevronska mreža dobi informacijo o značilnostih uporabnika in videoposnetka. Utež vsake vhodne značilnosti prilagodi tako, da preveri, ali je bil čas gledanja za določen videoposnetek in uporabnika pravilno napovedan.
Na stotinah milijard primerov se nauči približno milijardo parametrov (uteži vsake značilnosti)2. Mreža se lahko tudi nauči, da določenih značilnosti ne upošteva (dodeli jim ničelno pomembnost/utež). Zato je lahko model, ki ga ustvari algoritem, zelo drugačen od tistega, ki so si ga zamislili razvijalci.
Testiranje
Ko nevronska mreža konča z učenjem, jo preizkusimo na že razpoložljivih podatkih in po potrebi prilagodimo. Poleg natančnosti napovedi mora programer nastaviti izhod sistema na podlagi več vrednostnih sodb. Prikazovanje videoposnetkov, ki so preveč podobni že videnim zagotovo ne bo preveč zanimivo. Kaj v resnici pomeni, da je neko priporočilo dobro? Koliko podobnih posnetkov je treba prikazati in kako raznoliki naj bodo – z ozirom na druge posnetke in na zgodovino uporabnika? Koliko uporabnikovih interesov naj upošteva? Katere vrste priporočil imajo za posledico takojšnje zadovoljstvo, in katere dolgoročno uporabo?1,3 To so pomembna vprašanja, ki jih je treba upoštevati.
Testiranju sledi ocenjevanje priporočil v realnem času. Izmeri se skupni čas gledanja za posamezen sklop napovedanih posnetkov2. Dlje, kot si uporabnik ogleduje priporočeni sklop videoposnetkov, uspešnejši je model. Zgolj podatek o številu klikov na videoposnetke ne zadostuje za objektivno ocenjevanje. YouTube ocenjuje svoje priporočilne sisteme na podlagi tega, koliko priporočenih videoposnetkov je bilo pogledanih (skoraj) v celoti ter na podlagi skupne dolžine seje, časa do prvega daljšega ogleda in deleža prijavljenih uporabnikov1.
Vmesnik
Na koncu poglejmo še, kako so priporočila predstavljena gledalcu: koliko posnetkov naj se prikaže? Ali naj se najboljša priporočila prikažejo naenkrat, ali naj sistem nekatera prihrani za pozneje3? Kakšen način prikaza izbrati za sličice in naslove videoposnetkov? Katere druge informacije je potrebno prikazati? Katere nastavitve lahko nadzoruje uporabnik1? V odgovorih na ta vprašanja se skriva YouTubova skrivnost ohranjanja dveh milijard uporabnikov pred zasloni 24 ur na dan.
1 Davidson, J., Liebald, B., Liu, J., Nandy, P., Vleet, T., The Youtube Video Recommendation System, Proceedings of the 4th ACM Conference on Recommender Systems, Barcelona, 2010.
2 Covington, P., Adams, J., Sargin, E., Deep neural networks for Youtube Recommendations, Proceedings of the 10th ACM Conference on Recommender Systems, ACM, New York, 2016.
3 Konstan, J., Terveen, L., Human-centered recommender systems: Origins, advances, challenges, and opportunities, AI Magazine, 42(3), 31-42, 2021.
4 Spinelli, L., and Crovella, M., How YouTube Leads Privacy-Seeking Users Away from Reliable Information, In Adjunct Publication of the 28th ACM Conference on User Modeling, Adaptation and Personalization (UMAP ’20 Adjunct), Association for Computing Machinery, New York, 244–251, 2020.