Under the Hood at Grammarly: trasformare lo stile di scrittura con AI

Pubblicato: 2018-05-31

Quando hai bisogno di fare una buona impressione su qualcuno a cui stai scrivendo, ciò che dici non è l'unica cosa a cui devi pensare. Come dici che è spesso altrettanto importante. Scegliere il giusto livello di formalità può essere una sfida particolare: è altamente dipendente dal contesto e spesso devi fare ipotesi su come il tuo destinatario interpreterà il tuo tono.

Immagina di scrivere una lettera di accompagnamento. Quanto sarebbe un punto di svolta se avessi uno strumento che potrebbe rilevare quando la tua scrittura è troppo casuale (o, a volte anche peggio, troppo formale)? Improvvisamente le tue decisioni su come dire ciò che stai cercando di dire diventano molto meno oscuri. Non stai solo facendo affidamento su congetture su come il tuo destinatario perceperà il tuo messaggio: hai un algoritmo che sta attingendo a molti dati che non hai personalmente. Fare un ulteriore passo avanti, cosa succede se questo strumento non solo potesse dirti quando qualcosa è spento, ma in realtà offrirti un fraseggio alternativo che il tuo destinatario vorrebbe di meglio?

Il processo di convincere un computer a trasformare automaticamente un pezzo di scrittura da uno stile all'altro si chiama Style Transfer, ed è l'argomento di un prossimo documento che ho scritto con il mio collega Sudha Rao. È un'area di particolare interesse per noi qui a Grammarly perché sappiamo quanto sia importante comunicare nel modo giusto.

Se ti sei mai chiesto come gli ingegneri di ricerca di Grammarly costruiscono i sistemi che ti forniscono suggerimenti di scrittura, continua a leggere.

Uno sfondo informale sulla formalità

Prima di immergermi nei dettagli dei nostri algoritmi, diamo un'occhiata a un esempio di linguaggio informale e formale.

Informale: devo vedere entrambi i lati della storia

Formale: devi vedere entrambi i lati della storia.

Ci sono un paio di ovvie differenze tra queste frasi. L'uso del gergo ("Gotta") e la mancanza di punteggiatura alla fine della prima frase segnalano l'informalità. C'è un tempo e un posto per questo tipo di frase, ad esempio uno scambio di messaggi di testo tra amici.

Quando abbiamo esaminato come gli umani riscrivevano le frasi informali in uno stile più formale, abbiamo scoperto che i cambiamenti più frequenti che hanno apportato hanno coinvolto la capitalizzazione, la punteggiatura e i colloquiali. Abbiamo anche notato che gli umani a volte devono fare riscritture più drastiche di una frase per migliorare la formalità:

Informale: quando sei in grado di andare alla riunione?

Formale: per favore fatemi sapere quando parteciperai alla riunione.

Ma come insegniamo ai computer a apportare modifiche come quelle sopra? Esistono diversi modi per affrontare il problema.

Quello che utilizziamo riconosce che insegnare a un computer a tradurre tra stili di scrittura è simile all'insegnamento per tradurre le lingue. Questo approccio si chiama traduzione della macchina, in cui un computer si traduce automaticamente da una lingua (come il francese) in un altro (tedesco). Quindi, quando si affronta il problema del trasferimento di stile, ha senso iniziare con un modello di traduzione, o nel nostro caso, più modelli.

Cos'è un modello di traduzione?

Uno dei recenti scoperte dell'IA è l'uso di una rete profonda o una rete neurale, tecniche per la costruzione di modelli di traduzione di macchine.

I modelli di traduzione delle macchine neurali (NMT) possono apprendere rappresentazioni del significato sottostante delle frasi. Questo aiuta il modello a imparare i modelli di frasi complessi in modo che la traduzione sia fluente e il suo significato è fedele alla frase originale.

Approcci più vecchi alla traduzione delle macchine, come modelli basati su regole o frasi (PBMT), rompono le frasi in unità più piccole, come parole o frasi, e le traducono in modo indipendente. Ciò può portare a errori grammaticali o risultati senza senso nella traduzione. Tuttavia, questi modelli sono più facili da modificare e tendono ad essere più conservativi, il che può essere un vantaggio. Ad esempio, possiamo facilmente incorporare regole che cambiano il gergo in parole standard.

Abbiamo esaminato diversi approcci alla traduzione delle macchine per vedere quale è meglio per il trasferimento di stile.

Costruire un modello

NMT e PBMT sono pieni di sfide, non da ultimo la ricerca di un buon set di dati con cui addestrare i tuoi modelli. In questo caso, abbiamo stimato che avremmo bisogno di un set di dati di centinaia di migliaia di coppie di frasi informali e formali. Idealmente, addestreresti il ​​tuo modello con milioni di coppie di frasi, ma poiché il trasferimento di stile è un'area abbastanza nuova nel campo dell'elaborazione del linguaggio naturale, in realtà non c'era un set di dati esistente che potremmo usare. Quindi, ne abbiamo creato uno.

Abbiamo iniziato raccogliendo frasi informali. Abbiamo acquistato le nostre frasi da domande e risposte pubblicate pubblicamente su Yahoo! Risposte. Abbiamo selezionato automaticamente oltre centomila frasi informali da questo set e abbiamo riscritto una squadra con un linguaggio formale, utilizzando nuovamente i criteri predefiniti. (Dai un'occhiata al nostro documento per i dettagli su questo processo.)

Una volta che hai un set di dati, puoi iniziare ad allenare il tuo modello. La formazione del modello significa dargli molte frasi "fonte" - nel nostro caso, frasi informali - insieme a molte frasi "target" - per noi, queste sono le riscritture formali. L'algoritmo del modello cerca quindi modelli per capire come arrivare dalla fonte al bersaglio. Più dati ha, meglio impara.

Nel nostro caso, il modello ha centomila frasi di fonte informali e le loro riscritture formali da cui imparare. Abbiamo anche sperimentato diversi modi di creare dati formali artificiali per aumentare le dimensioni del nostro set di dati di formazione, poiché i modelli NMT e PBMT spesso richiedono molti più dati per funzionare bene.

Ma hai anche bisogno di un modo per valutare quanto bene il tuo modello sta realizzando il suo compito. Il significato della frase è cambiato? La nuova frase è grammaticalmente corretta? È in realtà più formale? Ci sono classificatori là fuori - programmi che possono valutare automaticamente le frasi per lo stile di tono e scrittura - e abbiamo testato alcuni di quelli più comunemente usati nel mondo accademico. Tuttavia, nessuno di loro è molto preciso. Quindi, abbiamo finito per avere umani confrontare le uscite dei vari modelli che abbiamo testato e classificato per formalità, precisione e fluidità.

Abbiamo mostrato al nostro team la frase informale originale, i risultati da diversi modelli e la riscrittura umana. Non abbiamo detto loro chi - o cosa - generato ogni frase. Quindi, hanno classificato le riscritture, permettendo legami. Idealmente, il modello migliore sarebbe legato o anche meglio delle riscritture umane. Complessivamente, la squadra ha segnato le riscritture di 500 frasi informali.

Quello che abbiamo trovato

Tutto sommato, abbiamo testato dozzine di modelli, ma ci concentreremo su quelli principali: basati su regole, basate su frasi (PBMT), neurale basato sulla rete (NMT) e una coppia che combinava vari approcci.

Le riscritture umane hanno ottenuto il punteggio più alto nel complesso, ma i modelli PBMT e NMT non erano molto indietro. In effetti, ci sono stati diversi casi in cui gli umani preferivano le uscite del modello a quelle umane. Questi due modelli hanno fatto riscrivi più ampie, ma tendevano a cambiare il significato della frase originale.

I modelli basati sulle regole, d'altra parte, hanno apportato modifiche più piccole. Ciò significava che erano più bravi a preservare il significato, ma le frasi che hanno prodotto erano meno formali. Tutti i modelli hanno avuto più tempo a gestire frasi più brevi di quelle più lunghe.

Quello che segue è un esempio di una frase informale con le riscrive umane e modello. In questo caso particolare, è stato l'ultimo modello (NMT con traduzione PBMT) che ha raggiunto il miglior equilibrio tra formalità, significato e fraseggio dal suono naturale.

Informale originale: quasi non lo vedo a scuola o di solito vedo i giochi di basket dei miei fratelli.

Riscrivi umani: non lo vedo quasi mai a scuola. Di solito lo vedo con i miei fratelli che giocano a basket.

Modello basato sulle regole: quasi non lo vedo a scuola o di solito vedo le partite di basket dei miei fratelli.

Modello PBMT: non lo vedo quasi a scuola, ma le partite di basket dei miei fratelli.

Modello NMT: raramente lo vedo a scuola, o lo vedo alle partite di basket di mio fratello.

NMT (addestrato su ulteriori dati generati da PBMT): raramente lo vedo a scuola o di solito lo vedo alle partite di basket dei miei fratelli.

Il trasferimento di stile è una nuova entusiasmante area dell'elaborazione del linguaggio naturale, con il potenziale per applicazioni diffuse. Quello strumento che ho ipotizzato all'inizio, quello che ti aiuta a capire come dire cosa devi dire? C'è ancora molto lavoro da fare, ma questo strumento è possibile e sarà prezioso per le persone in cerca di lavoro, gli studenti di lingue e chiunque abbia bisogno di fare una buona impressione su qualcuno attraverso la propria scrittura. Speriamo che rendendo i nostri dati pubblici, noi e gli altri sul campo avremo un modo per confrontarsi a vicenda e far avanzare quest'area di ricerca.

Per quanto riguarda Grammarly, questo lavoro è un altro passo verso la nostra visione di creare un assistente di comunicazione completo che aiuta il tuo messaggio a essere inteso come previsto.

Joel Tetreault è direttore della ricerca presso Grammarly. Sudha Rao è uno studente di dottorato presso l'Università del Maryland ed è stato stagista di ricerca presso Grammarly. Joel e Sudha presenteranno questa ricerca alla sedicesima conferenza annuale del capitolo nordamericano dell'Associazione per la linguistica computazionale: tecnologie linguistiche umane a New Orleans, 1-6 giugno 2018. Il documento di ricerca di accompagnamento, intitolato "Ci sarà la signora, può introdurre il Gyafc Dataset: corpus, benchmarks e metriche per il trasferimento di formalità".