Con BERT si cambia. Le ricerche su Google parleranno sempre di più il nostro linguaggio (per ora solo negli USA). Reti neurali per comprendere significato e intenzione della query.

Di BERT si parla molto da qualche giorno. La verità è che il progetto non è del tutto nuovo, anche se Google Search lo ha ufficializzato solo il 25 ottobre scorso in un post di Pandu Nayak dal titolo altisonante: Understanding searches better than ever before. In breve, si tratta di una tecnica di apprendimento automatico (machine learning) basata sul modello delle reti neurali e applicata al contesto del NLP (natural language processing). La notizia è che, dopo una lunga fase di test, BERT comincia a essere utilizzato per gestire le ricerche su Google. ‘Gestire’ significa – ricordiamolo – capire che cosa l’utente sta cercando e restituirgli il risultato più coerente con i suoi obiettivi.

In questo post cerchiamo di spiegare le conseguenze pratiche di BERT sia per l’utente di Google Search sia per coloro che si occupano di SEO. Ma forniamo anche qualche indicazione sugli aspetti tecnici del progetto, che segna un nuovo traguardo nell’ambito dell’intelligenza artificiale e in particolare del riconoscimento del linguaggio naturale.

Il nome della nuova tecnica di machine learning è Bidirectional Encoder Representations from Transformers: BERT, appunto. Google ci lavora da diverso tempo. Circa un anno fa il codice è stato reso disponibile alla comunità degli sviluppatori in modalità open source: le risorse di BERT sono accessibili su GitHub, qui. L’algoritmo processa le parole di un testo non una alla volta, ma valutando le relazioni fra ciascuna parola e le altre dello stesso testo. Da questo punto di vista, BERT si muove sulle orme di RankBrain. In particolare, per ciascun termine è considerata rilevante la relazione con il termine che lo precede e con quello che lo segue.

Che cosa cambia per l’utente

Prima di approfondire la questione dal punto di vista tecnico, vediamo come BERT promette di cambiare l’esperienza dell’utente di Google Search e in che modo tutto questo impatterà su chi si occupa di SEO. Come sempre, il condizionale è d’obbligo. È troppo presto per trarre conclusioni sull’impatto di questo nuovo cambiamento, che potremo valutare solo col tempo.

La prima cosa da dire è che per ora l’effetto BERT sarà visibile solo nella versione americana di Google Search in inglese. Sappiamo però che l’algoritmo è predisposto per lavorare con 103 lingue, per cui un’estensione agli altri mercati è solo questione di tempo. Grazie alla capacità di ricostruire il contesto della frase, e quindi assegnare a ciascun termine un valore appropriato, il nuovo algoritmo aiuta Google a comprendere il senso delle query espresse in linguaggio naturale.

Questa capacità sarà sfruttata dal motore di ricerca per generare con maggiore frequenza SERP con una featured snippet. Google ha dichiarato che ciò avverrà una volta su dieci. L’esempio proposto nel post di Nayak è suggestivo. Immaginiamo che l’utente imposti la sua ricerca con la seguente query: «can you get medicine for someone pharmacy». Dal punto di vista semantico, il problema di Google è comprendere la funzione di «for someone» all’interno della frase. Ecco il risultato della ricerca, rispettivamente senza e con il supporto di BERT:

Fonte: Google.

La seconda featured snippet propone, in prima posizione, un risultato molto più pertinente. Il contributo del nuovo algoritmo è importante soprattutto quando le query sono relativamente lunghe e includono proposizioni (per, con, di ecc.) o altri termini che in uno scenario tradizionale sono classificati come stop word. E noi sappiamo che nel paradigma mobile il numero di termini utilizzati all’interno delle query di ricerca degli utenti tende a crescere. Soprattutto, l’utente tende a formulare le proprie richieste utilizzando espressioni sempre più vicine al linguaggio naturale.

La lezione per il SEO specialist

A cambiare il contesto dell’esperienza è stato l’avvento delle interfacce vocali, che utilizziamo al posto del dispositivo touch screen per interagire con il telefono, le applicazioni a bordo e i servizi online. A maggior ragione, dunque, dobbiamo aspettarci che BERT faccia la differenza nel caso di ricerche effettuate con gli smart speaker come Google Home, in cui l’interfaccia è solo di tipo vocale.

Per chi si occupa di SEO le conseguenze sono abbastanza evidenti. Dobbiamo aspettarci una progressiva riduzione di importanza – dal punto di vista di Google – delle singole keyword e soprattutto del loro indice di frequenza nel testo da ottimizzare. Del resto, il fenomeno è già in atto da alcuni anni, proprio in ragione della crescente capacità degli algoritmi di Google di comprendere il significato della frase (anziché della parola) e il contesto della ricerca.

A nostro avviso c’è uno solo modo di ottimizzare per BERT: scrivere bene. Quando diciamo «scrivere bene» ci riferiamo all’importanza di utilizzare un linguaggio chiaro e perspicuo, sia dal punto di vista lessicale sia sul piano sintattico. Smettiamola, se ancora lo stiamo facendo, di pensare a Google Search come una macchina stupida, che comprende solo a spizzichi e bocconi. BERT ci conferma che è proprio il contrario: Google è una macchina dotata sempre più di intelligenza (artificiale).

La ‘magia’ del transformer

Come funziona, in dettaglio, l’algoritmo di BERT? Al cuore di tutta la faccenda c’è il transformer. Si tratta di un’architettura alternativa a quella delle reti neurali ricorrenti (recurrent neural network, RNN), più frequentemente utilizzate nelle applicazioni di NLP (traduttori automatici, sistemi di risposta in linguaggio naturale, sistemi di modellizzazione del linguaggio).

Le RNN processano la lingua in modo sequenziale, da sinistra a destra o da destra a sinistra. Leggendo una parola alla volta, le RNN sono costrette a eseguire più passaggi per prendere decisioni che dipendono da parole lontane l’una dall’altra.

La natura sequenziale delle RNN rende più difficile sfruttare appieno dispositivi di calcolo rapido come le TPU e le GPU, che eccellono nell’elaborazione in parallelo e non sequenziale. Le reti neurali convoluzionali (CNN) sono molto meno sequenziali delle RNN. Nelle CNN, però, il numero di passaggi necessari per combinare le informazioni provenienti da parti distanti dell’input cresce con l’aumentare della distanza.

Ecco dunque perché un nuovo tipo di architettura – il transformer, appunto – può costituire un notevole progresso. Il transformer esegue un numero di passi ridotto e costante, in base a un criterio empirico. In ogni passo, applica un meccanismo di autoattenzione che modella direttamente le relazioni tra tutte le parole di una frase, indipendentemente dalla loro rispettiva posizione.

L’attenzione è ciò che ti serve

Il transformer si compone di due meccanismi separati: un codificatore che legge il testo in input e un decodificatore che produce una previsione. In realtà nel caso di BERT è necessario solo il meccanismo dell’encoder, dato che si tratta di generare un modello linguistico. L’encoder legge l’intera sequenza di parole contemporaneamente. In questo senso è detto bidirezionale, anche se sarebbe più preciso definirlo non-direzionale.

Questa caratteristica permette al modello di imparare il contesto di una parola in base a tutto ciò che la circonda (a sinistra e a destra della parola). A ogni passaggio, l’encoder svolge un calcolo probabilistico. Nel meccanismo di addestramento di BERT, il modello riceve coppie di frasi come input e impara a prevedere se la seconda frase della coppia è la frase successiva nel documento originale.

Per comprendere ancora più in dettaglio come agisce il meccanismo di autoattenzione, rimandiamo al paper di Ashish Waswani e altri Attention is all you need (12 giugno 2017). Waswani e i suoi colleghi sono stati i primi a sperimentare questo modello. Si guardi anche il paper di Jacob Devlin e altri (parte del team di AI di Google) intitolato BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (24 maggio 2019). Una descrizione molto chiara è anche quella proposta da Rani Horev nel suo post BERT Explained: State of the art language model for NLP.

[Crediti: foto di apertura di Simon Steinberger da Pixabay]

1 COMMENT

Comments are closed.