Conosciamo tutti il fenomeno: senza apparente spiegazione, alcuni post su Facebook diventano virali, totalizzando un numero di like e condivisioni anche cento volte superiori alla media. Sono spesso i post dai contenuti più estremi.
Abbiamo anche assistito a dibattiti su come il social network con sede in Hacker Way possa aver avuto un ruolo determinante nell’elezione di Donald Trump e nell’esito del referendum sulla Brexit. In tutti i casi il responsabile è sempre lo stesso, il cosiddetto algoritmo.
Facebook lo chiama ranking algorithm e ha voluto spiegarci come funziona in un blog post pubblicato a gennaio 2021.
Ranking Algorithm: definizione
Cominciamo dalla definizione: News Feed Ranking algorithm. Ranking, classifica. Il sistema che identifica il livello di interesse personale di tutti i contenuti di Facebook in base alla storia di ciascun utente, al fine di decidere cosa visualizzare. Un processo che viene applicato in tempo reale a oltre due miliardi di persone, gli utenti del network.
Più Machine Learning che algoritmo
Facebook non lo definisce esattamente algoritmo, ma parla di “numerosi livelli di modelli di ML e ranking, creati per predire quali post siano i più significativi e di valore per ogni singolo utilizzatore”.
Ranking algorithm: perché esiste?
Spesso si pensa a questo algoritmo come un’invenzione, per così dire, antidemocratica: anziché mostrarci in un neutro ordine cronologico i post dei nostri contatti, questo decide in autonomia cosa proporci, scegliendo priorità e nascondendo alcuni dei contenuti.
Una funzione indispensabile
Ma la presenza di questo sistema è indispensabile. I social network ospitano contenuti di tutti i tipi: post innocui, promozioni di prodotti, servizi o località, opinioni, link a importanti pubblicazioni, foto di gatti, annunci di eventi e così via. Il ritmo, la velocità di creazione di questi contenuti è tale che in mancanza di un ranking saremmo travolti da centinaia e centinaia di informazioni spesso prive di interesse. Chi non ne fosse convinto può sperimentare con Twitter, forse l’unico social dove l’opzione ordine cronologico è presente.
Reality Check
Quali contenuti propone Facebook agli utenti USA (quelli di cui ha messo a disposizione i dati)? Nel grafico, relativo al Q2 2021, possiamo vedere come la parte del leone sia costituita da quanto pubblicano amici, persone direttamente seguite e gruppi.
Link esterni
Il sistema cerca di mantenere gli utenti nell’ambito di Facebook, sfavorendo i post che includono link esterni. Sempre dal report relativo a inizio 2021, possiamo infatti vedere come solo il 12.9% dei post visibili in timeline contengono link esterni.
Pagine
Parlando invece di pagine, riportiamo la lista di quelle con maggior numero di visualizzazioni nel Q2 2021: in testa l’UNICEF, seguita da “Divertimento in cucina con i mie tre figli”.
E il Q1?
Breve inciso. Durante la preparazione di questo articolo non eravamo in grado di trovare i dati su scala annuale o quelli relativi al Q1 (gennaio-marzo). Il motivo è stato svelato dal New York Times del 20 agosto. Niente buonismi stile Unicef o mamme ai fornelli; l’articolo più cliccato di inizio anno era intitolato: “Un dottore in ottima salute muore due giorni dopo aver ricevuto la prima dose del vaccino COVID-19: la CDC sta investigando.”
Imbarazzo e censura made in Facebook
Troppo imbarazzante per poter rendere pubblica l’informazione. L’articolo ha comunque avuto degli imporatanti follow-up: gli scienziati affermano infatti trattarsi di casi isolati, la relazione causa-effetto (vaccino-decesso) essendo largamente minoritaria, un’esperienza che non dubitiamo molti lettori condivideranno.
Pagine di informazione poco promosse
Torniamo ai nostri dati. La prima pagina relativa ad un sito di informazione (Daily Mail) si posiziona solo al dodicesimo posto con 88,4 milioni di views. In generale le prime 20 pagine più viste rappresentano solo lo 0,8% di tutti i contenuti visualizzati.
Previsione dei contenuti interessanti
In una nota del 2018 Facebook chiarisce il razionale dietro questo comportamento del network:
“Diamo priorità ai post che inducono conversazioni e interazioni significative tra le persone. A questo scopo, prevediamo quali siano gli argomenti su cui ciascun utente vuole interagire e li mostriamo prioritariamente nel feed. Particolare enfasi ai post che inducono ‘back and forth discussion’ nei commenti e post che inducono una reazione, quali un amico che chiede un consiglio o un articolo con notizie che aprono importanti discussioni”.
Ranking
In altre parole, priorità ai post recenti che generano commenti e like. Ma ci sono anche altri parametri non esplicitati dall’azienda. Uno è il cosiddetto time spent, la quantità di tempo passata sul singolo post anche senza effettuare azioni esplicite (commenti o like).
Emoticons e video
Un altro è il peso dato agli emoticon (sad, love ecc.), che è superiore a quello dei semplici like. Esiste poi un valore proporzionale al tempo passato nel guardare i video in relazione alla durata totale degli stessi. Ma non finisce qui: altre fonti indicano come i segnali siano centinaia, inclusi alcuni inaspettati quali la velocità della connessione internet del singolo utente.
Immagini
Il ranking è anche influenzato dal contenuto delle immagini associate ai post. A questo fine è necessario che Fecebook sia in grado di riconoscervi oggetti e persone presenti, anche al fine di eliminare contenuti non desiderati. Viene utilizzato un modello di ML di nome SEER (SElf-SuperVised), che è stato istruito tramite oltre un miliardo di immagini di pubblico dominio. Notevole il fatto che il sistema sia “auto-supervisionato”: le immagini sono state date in pasto alla rete neuronale senza alcun tag o valore associato e per quanto incredibile è stata la rete neurale stessa a estrarne i parametri principali.
Machine Learning
Passiamo alla spiegazione tecnica, come proposta da Facebook.
Il sistema in grado di predire i contenuti di interesse per ogni specifico utente utilizza tecniche di Machine Learning (ML).
Una simulazione
Per illustrarlo l’azienda ci propone l’ipotetica situazione di Juan, un utente che apre oggi Facebook dopo il suo ultimo collegamento del giorno precedente. Tra i due collegamenti accade quanto segue:
- L’amico Wei ha postato la foto del suo cane;
- L’amico Saanvi ha postato un video relativo al suo jogging mattutino;
- La sua pagina favorita (astronomia) ha postato un interessante articolo contenente consigli per l’osservazione della via Lattea;
- Il suo gruppo favorito (cucina) ha postato una nuova ricetta.
Tutti post di contatti che Juan ha esplicitamente deciso di seguire, pertanto in linea di principio di eguale importanza. Per poter sceglierne le priorità, il sistema ha bisogno di comprendere cosa conti di più per Juan: effettuare dunque un’ottimizzazione a singolo obiettivo (in altre parole, trovare il massimo di una funzione).
Valutazione del singolo post
Per ogni post viene effettuata un’analisi tesa a determinarne il valore per l’utente. Prendiamo ad esempio il video del jogging di Saanvi. Si parte dagli attributi conosciuti: chi è presente o taggato nel video, quanto recente è la ripresa, eccetera. Definendo Xi,j,t le caratteristiche rispetto all’utente J del post i al tempo t, l’algoritmo definirà la probabilità Yi,j,t che Juan possa apprezzare il post. Ogni post è dunque associato ad un valore Yijt = f(Xijt1;Xijt2;…XijtC) che combina tutti gli attributi in un singolo valore (c essendo le caratteristiche del post).
Dunque se Juan tende a interagire spesso con Saanvi (o a condividerne ripetutamente i post) e il video è molto recente allora Y sarà piuttosto alto.
Obiettivi multipli del ranking
Y può essere ottimizzato per obiettivi multipli (like, commenti, condivisioni ecc.), andando a generare un valore aggregato Vijt. Tutti questi calcoli, che abbiamo visto essere effettuati per Juan, sono ripetuti per l’insieme degli utenti del social network, dove mediamente ogni utente riceve migliaia di segnali Xijt.
Scoring
In ogni determinato istante Facebook calcola dunque il punteggio per ciascun potenziale post visibile degli oltre 2 miliardi di utenti. Un compito impressionante, considerato che senza l’algoritmo ciascuno dovrebbe scegliere tra oltre mille post al giorno e dunque 1000 post/utente * 2.000.000.000 = 2.000.000.000.000, duemila miliardi di post a cui assegnare un punteggio.
Feed Aggregator
Esiste infine un aggregatore di contenuti che analizza tutte le caratteristiche di ogni post esistente e prevede il suo ranking personale (il famoso Vijt). È questo aggregatore che viene interrogato ogni volta che un utente accede a Facebook, allo scopo di creare in real-time la lista ordinata dei post da presentare nella timeline personale.
Una seconda chance
Abbiamo detto che il fattore tempo ha una sua importanza. Il sistema considera anche i post non recenti che avevano ottenuto un buon ranking, ma che per qualunque motivo non erano stati visualizzati durante sessioni precedenti. Il loro punteggio viene alzato (bumping) per offrire loro una seconda chance di essere visti (e questo spiega il fenomeno che conosciamo tutti, per cui senza apparente motivo ci capita di vedere un post vecchio di parecchi giorni in mezzo ad altri tutti recenti).
Evitare la ripetitività
Viene inoltre applicata una regola che assicura la diversità dei contenuti: il sistema evita di presentare due post simili di seguito (ad esempio, il video di un gatto intento in un’azione ridicola non sarà mai seguito dal video di altro un gatto, anche se con ranking simile).
Tik Tok
Notiamo per inciso che quest’ultima regola è totalmente opposta a quella del magico algoritmo di TikTok, argomento su cui potremo tornare in futuro.
I predictors
Come viene effettuato questo calcolo in tempo reale? Facebook utilizza innumerevoli computer sui quali agiscono delle reti neuronali appositamente trainate; ciascuno di questi è detto un predictor.
Almeno tre passaggi
I predictor effettuano numerosi passaggi sugli stessi dati: in un primo (pass 0) un semplice modello filtra i post al fine di ridurre il numero a 500 candidati. Il secondo passaggio (pass 1) è il principale: assegna ad ogni post un rank e effettua l’ ordinamento. L’ultimo passaggio (pass 2) assicura la diversità dei post di cui abbiamo parlato sopra.
Obiettivi espliciti e obiettivi presunti
Abbiamo visto che nelle spiegazioni di Facebook si enfatizza come l’algoritmo esista al solo fine di proporre a ciascun utente i contenuti per lui più interessanti. Questo contrasta con quanto leggiamo ormai da svariati anni: che l’obiettivo sia invece solo tenere gli utenti incollati allo schermo, allo scopo di aumentare l’engagement (e i ricavi pubblicitari).
Contenuti divisivi
L’esempio Covid è tuttora davanti a tutti noi: l’impressionante frequenza con cui ci capita di leggere post di persone fortemente contrarie alla vaccinazione o di favorevoli che scrivono frasi sprezzanti verso i contrari. Si tratta di post numericamente minoritari, ma che vengono proposti e riproposti creando l’impressione che siano importanti movimenti di pensiero.
Natura umana in azione
Questo il punto cruciale: l’articolo ci dice che Facebook non ha programmato esplicitamente questo algoritmo, non ha deciso di mostrare continuamente contenuti più estremi. Piuttosto, ha dato alle reti neuronali il compito di trovare i post che generano più engagement… e la natura umana stessa ha fatto il resto.
It’s your fault
Una ricerca dello stesso Facebook Integrity Team di cui ha parlato circa un anno fa il Wall Street Journal lo dice semplicemente: “il nostro algoritmo sfrutta l’attrazione umana per ciò che è diverso”. Il sistema ha dunque appreso che la natura umana, al di là delle belle parole, ha forti componenti divisive e ha agito di conseguenza.
Conclusioni
Il problema di Facebook è dunque il medesimo dell’intelligenza artificiale in genere, accusata ripetutamente di essere poco gender-equal. La cruda realtà, rispecchiata e amplificata dai nostri sistemi, non può corrispondere all’immagine della società ideale cui tutti aspiriamo, semplicemente perché quella società non esiste.
Azioni mitiganti
Da quanto abbiamo capito (senza per ora post ufficiali da parte di Facebook), nell’ultimo anno sono state comunque prese numerose misure di mitigazione del fenomeno, probabilmente sottoponendo i dati ad un ulteriore passaggio “depolarizzante” (pass 3?).
Permettendoci dunque di concludere con il consueto mantra: “Facebook ha cambiato di nuovo l’algoritmo” (M.H.B. per NL)