Under the Hood at Grammarly: Transformarea stilului de scriere cu AI

Publicat: 2018-05-31

Când trebuie să faci o impresie bună cuiva căreia îi scrii, ceea ce spui nu este singurul lucru la care trebuie să te gândești. Cum spui este adesea la fel de important. Alegerea nivelului corect de formalitate poate fi o provocare deosebită – depinde foarte mult de context și de multe ori trebuie să ghiciți despre modul în care destinatarul vă va interpreta tonul.

Imaginează-ți că scrii o scrisoare de intenție. Cât de mult ar schimba jocul dacă ai avea un instrument care ar putea detecta când scrisul tău este prea casual (sau, uneori și mai rău, prea formal)? Dintr-o dată, deciziile tale despre cum să spui ceea ce încerci să spui devin mult mai puțin tulburi. Nu te bazezi doar pe presupuneri cu privire la modul în care destinatarul tău va percepe mesajul tău - ai un algoritm care se bazează pe o mulțime de date pe care nu le deții personal. Făcând un pas mai departe, ce ar fi dacă acest instrument nu numai că ar putea să vă spună când ceva nu este în regulă, ci și să vă ofere de fapt expresii alternative pe care destinatarul dvs. ar dori mai bine?

Procesul de a face ca un computer să transforme automat un text de la un stil la altul se numește transfer de stil și este subiectul unei lucrări viitoare pe care am scris-o împreună cu colegul meu Sudha Rao. Este o zonă de interes deosebit pentru noi aici, la Grammarly, deoarece știm cât de important este să comunicăm corect.

Dacă v-ați întrebat vreodată cum inginerii de cercetare de la Grammarly construiesc sistemele care vă oferă sugestii de scriere, citiți mai departe.

Un fundal informal asupra formalității

Înainte de a explora detaliile algoritmilor noștri, să aruncăm o privire la un exemplu de limbaj informal vs. formal.

Informal: Trebuie să văd ambele părți ale poveștii

Formal: Trebuie să vezi ambele părți ale poveștii.

Există câteva diferențe evidente între aceste propoziții. Folosirea argoului („Gotta”) și lipsa punctuației la sfârșitul primei propoziții semnalează informalitate. Există un timp și un loc pentru acest tip de propoziție - un schimb de mesaje text între prieteni, de exemplu.

Când ne-am uitat la modul în care oamenii au rescris propozițiile informale într-un stil mai formal, am constatat că cele mai frecvente modificări pe care le-au făcut implicau scrierea cu majuscule, punctuația și colocvialisme. De asemenea, am observat că oamenii trebuie uneori să facă rescrieri mai drastice ale unei propoziții pentru a îmbunătăți formalitatea:

Informal: Când vii la întâlnire?

Formal: Vă rog să-mi spuneți când veți participa la întâlnire.

Dar cum învățăm computerele să facă editări ca cele de mai sus? Există mai multe moduri de abordare a problemei.

Cel pe care îl folosim recunoaște că predarea unui computer să traducă între stiluri de scriere este similară cu predarea acestuia să traducă limbi. Această abordare se numește traducere automată, în care un computer traduce automat dintr-o limbă (cum ar fi franceza) în alta (germană). Deci, atunci când abordăm problema transferului de stil, este logic să începem cu un model de traducere sau, în cazul nostru, cu mai multe modele.

Ce este un model de traducere?

Una dintre descoperirile recente în AI este utilizarea tehnicilor de învățare profundă sau rețele neuronale pentru construirea de modele de traducere automată.

Modelele de traducere automată neuronală (NMT) pot învăța reprezentări ale sensului de bază al propozițiilor. Acest lucru ajută modelul să învețe modele complexe de propoziție, astfel încât traducerea să fie fluentă și sensul său să fie fidel propoziției originale.

Abordările mai vechi ale traducerii automate, cum ar fi modelele bazate pe reguli sau pe fraze (PBMT), împart propozițiile în unități mai mici, cum ar fi cuvinte sau fraze, și le traduc independent. Acest lucru poate duce la erori gramaticale sau rezultate fără sens în traducere. Cu toate acestea, aceste modele sunt mai ușor de modificat și tind să fie mai conservatoare, ceea ce poate fi un avantaj. De exemplu, putem încorpora cu ușurință reguli care schimbă argoul în cuvinte standard.

Am analizat mai multe abordări diferite ale traducerii automate pentru a vedea care este cea mai bună la transferul de stil.

Construirea unui model

NMT și PBMT sunt pline de provocări, dintre care nu în ultimul rând este găsirea unui set de date bun cu care să vă antrenați modelele. În acest caz, am estimat că vom avea nevoie de un set de date de sute de mii de perechi de propoziții informale și formale. În mod ideal, v-ați antrena modelul cu milioane de perechi de propoziții, dar, deoarece transferul de stil este un domeniu destul de nou în domeniul procesării limbajului natural, într-adevăr nu a existat un set de date pe care să-l puteam folosi. Deci, am creat unul.

Am început prin a aduna propoziții informale. Ne-am obținut propozițiile din întrebări și răspunsuri postate public pe Yahoo! Răspunsuri. Am selectat automat peste o sută de mii de propoziții informale din acest set și am avut o echipă să rescrie fiecare cu limbaj formal, din nou folosind criterii predefinite. (Consultați lucrarea noastră pentru detalii despre acest proces.)

Odată ce aveți un set de date, puteți începe să vă antrenați modelul. Antrenarea modelului înseamnă a-i oferi o mulțime de propoziții „sursă” – în cazul nostru, propoziții informale – împreună cu multe propoziții „țintă” – pentru noi, acestea sunt rescrierile formale. Algoritmul modelului caută apoi modele pentru a afla cum să ajungă de la sursă la țintă. Cu cât are mai multe date, cu atât învață mai bine.

În cazul nostru, modelul are o sută de mii de propoziții sursă informale și rescrierile lor formale din care să învețe. De asemenea, am experimentat diferite moduri de a crea date formale artificiale pentru a crește dimensiunea setului nostru de date de antrenament, deoarece modelele NMT și PBMT necesită adesea mult mai multe date pentru a funcționa bine.

Dar aveți nevoie și de o modalitate de a evalua cât de bine modelul dvs. își îndeplinește sarcina. S-a schimbat sensul propoziției? Este noua propoziție corectă din punct de vedere gramatical? Este de fapt mai formal? Există clasificatoare – programe care pot evalua automat propozițiile pentru ton și stilul de scriere – și am testat unele dintre cele mai frecvent utilizate în mediul academic. Cu toate acestea, niciuna dintre ele nu este foarte precisă. Așadar, am ajuns să-i punem pe oameni să compare rezultatele diferitelor modele pe care le-am testat și să le clasifice după formalitate, acuratețe și fluență.

Am arătat echipei noastre propoziția informală originală, rezultate din mai multe modele diferite și rescrierea umană. Nu le-am spus cine – sau ce – a generat fiecare propoziție. Apoi, au clasat rescrierile, permițând legături. În mod ideal, cel mai bun model ar fi legat sau chiar mai bun decât rescrierile umane. În total, echipa a marcat rescrierile a 500 de propoziții informale.

Ce am găsit

În total, am testat zeci de modele, dar ne vom concentra pe cele de top: bazat pe reguli, bazat pe fraze (PBMT), bazat pe rețea neuronală (NMT) și un cuplu care a combinat diverse abordări.

Rescrierile umane au obținut cel mai mare punctaj general, dar modelele PBMT și NMT nu au fost atât de în urmă. De fapt, au existat mai multe cazuri în care oamenii au preferat rezultatele modelului celor umane. Aceste două modele au făcut rescrieri mai extinse, dar au avut tendința de a schimba sensul propoziției originale.

Modelele bazate pe reguli, pe de altă parte, au făcut modificări mai mici. Aceasta însemna că erau mai buni la păstrarea sensului, dar propozițiile pe care le produceau erau mai puțin formale. Toate modelele au avut mai ușor în manipularea propozițiilor mai scurte decât a celor mai lungi.

Următorul este un exemplu de propoziție informală cu rescrierile umane și model. În acest caz particular, a fost ultimul model (NMT cu traducere PBMT) care a găsit cel mai bun echilibru între formalitate, înțeles și formularea cu sunet natural.

Original informal: nu-l văd niciodată la școală, nici de obicei îl văd la meciurile de baschet ale fraților mei.

Rescrie umană: nu-l văd aproape niciodată la școală. De obicei îl văd cu frații mei jucând baschet.

Model bazat pe reguli: nu-l văd niciodată la școală, de obicei, îl văd la meciurile de baschet ale fraților mei.

Model PBMT: Cu greu îl văd și la școală, dar la meciurile de baschet ale fraților mei.

Model NMT: Îl văd rar la școală, fie îl văd la meciurile de baschet ale fratelui meu.

NMT (antrenat pe date suplimentare generate de PBMT): Îl văd rar la școală și, de obicei, îl văd la meciurile de baschet ale fraților mei.

Transferul de stil este o nouă zonă interesantă a procesării limbajului natural, cu potențial pentru aplicații pe scară largă. Instrumentul pe care l-am emis la început - cel care vă ajută să vă dați seama cum să spuneți ceea ce trebuie să spuneți? Mai sunt încă multe de făcut, dar acest instrument este posibil și va fi de neprețuit pentru cei care caută un loc de muncă, pentru cei care învață limbi străine și pentru oricine trebuie să facă o impresie bună cuiva prin scrisul lor. Sperăm că, făcând datele noastre publice, noi și alții din domeniu vom avea o modalitate de a ne compara reciproc și de a avansa acest domeniu de cercetare.

În ceea ce privește Grammarly, această lucrare este încă un pas către viziunea noastră de a crea un asistent de comunicare cuprinzător care să vă ajute mesajul să fie înțeles așa cum s-a dorit.

Joel Tetreault este director de cercetare la Grammarly. Sudha Rao este doctorand la Universitatea din Maryland și a fost stagiar de cercetare la Grammarly. Joel și Sudha vor prezenta această cercetare la cea de-a 16-a conferință anuală a capitolului nord-american al Asociației pentru Lingvistică Computațională: Tehnologiile Limbii Umane în New Orleans, 1-6 iunie 2018. Lucrarea de cercetare însoțitoare, intitulată „Dear Sir or Madam , May I Introduce Dataset GYAFC: Corpus, Benchmarks and Metrics for Formality Style Transfer,” va fi publicat în Proceedings of NAACL.