Traducere automată în NLP: exemple, flux și modele

Publicat: 2021-01-21

Cuprins

Introducere

Există peste 6.500 de limbi recunoscute în lume. Se simte o nevoie de timp pentru a înțelege resursa scrisă în diferite culturi. În această încercare, multe cărți vechi sunt traduse în limbile locale și păstrate pentru referință.

Sanscrita, de exemplu, limba veche a moștenirii hinduse se spune că are informații pline de resurse din epocile străvechi. Acest lucru se datorează faptului că foarte puțini cunosc limba sanscrită. Este probabil să depindă de un mecanism pentru a căuta informații din scripturi și manuscrise.

De multe ori ne dorim ca computerele să înțeleagă limbajul natural. Lucrul bun despre computere este că pot calcula mai repede decât noi, oamenii. Cu toate acestea, provocarea de a învăța un limbaj natural este foarte dificil de replicat pe un model de calcul.

Traducere automată

Termenul „traducere automată” (MT) se referă la sistemele computerizate responsabile cu producerea traducerilor cu sau fără asistență umană. Exclude instrumentele de traducere pe computer care sprijină traducătorii prin furnizarea de acces la dicționare online, bănci de date terminologice la distanță, transmitere și recepție de texte etc.

Înainte de era tehnologiei AI, au fost dezvoltate programe de calculator pentru traducerea automată a textului dintr-o limbă în alta. În ultimii ani, AI a fost însărcinată să realizeze traducerea automată sau automată a fluidității și versatilității limbilor umane a scripturilor, dialectelor și variațiilor. Traducerea automată este o provocare, având în vedere ambiguitatea și flexibilitatea inerentă a limbajului uman.

Ce este NLP?

Procesarea limbajului natural (NLP) este una dintre ramurile în răspândirea tehnologiei Inteligenței Artificiale (AI). Această disciplină este preocupată de crearea de modele computaționale care procesează și înțeleg limbajul natural. Modelele NKP fac, în esență, computerul să înțeleagă gruparea semantică a obiectelor (de exemplu, cuvintele „pisica și câinele” sunt destul de asemănătoare din punct de vedere semantic cu cuvintele „pisica și liliacul”), textul în vorbire, limbajul de traducere și așa mai departe.

Procesarea limbajului natural (NLP) face ca sistemul informatic să utilizeze, să interpreteze și să înțeleagă limbile umane și vorbirea verbală, cum ar fi engleza, germana sau o altă „limbă naturală”. O serie de aplicații NLP este văzută în practică astăzi.

Acestea sunt de obicei grupate în cazurile de utilizare respective, cum ar fi recunoașterea vorbirii, sistemele de dialog, regăsirea informațiilor, răspunsul la întrebări și traducerea automată au început să remodeleze modul în care oamenii identifică, regăsesc și utilizează resursa de informații.

Exemple de NLP

  • Sistemele de recunoaștere a vocii/vorbirii sau sistemele de interogare precum Siri lucrează la întrebare și returnează un răspuns. Aici transmiteți vocea unui computer și acesta vă înțelege mesajul.
  • Programe de calculator care citesc rapoarte financiare în limba engleză simplă și produc numere (de exemplu, rata inflației).
  • Portalul de locuri de muncă care preia detaliile candidaților și auto-construiește CV-ul și aplicația la job, potrivite cu competențele.
  • Google Translate prelucrează textul din șirul de intrare și îl mapează cu limba pentru a-l traduce în zbor.
  • Motoarele de căutare asemănătoare Google vă returnează documentele după ce introduceți un cuvânt din subiect în caseta de căutare. De exemplu, când căutați Tajmahal, Google vă oferă documente care conțin Tajmahal ca artefact și chiar o marcă „Tajmahal”. Aici sunt luate în considerare sinonimele engleze și modelele plurale engleze.

Fluxul NLP

Procesarea limbajului natural este un fel de inteligență artificială. Dacă doriți să construiți un program NLP, puteți începe să scrieți reguli precum „ignorați un s la sfârșitul unui cuvânt”. Acesta este modul vechi de a face lucrurile și se numește abordare „bazată pe reguli”.

Cu toate acestea, tehnicile mai avansate folosesc învățarea statistică, în care vă programați computerul să învețe modele în limba engleză. Dacă faceți acest lucru, puteți chiar să vă scrieți programul o singură dată și să îl antrenați să funcționeze în multe limbi umane.

Obiectivul NLP este de a face limbajele umane inteligibile, astfel încât un mecanism programat să poată interpreta și înțelege manuscrisele. Aici, mecanismul programat îl numim o mașină, iar manuscrisul este scriptul de limbaj alimentat programului. Programul computerizat extrage astfel datele lingvistice sub forma cunostintelor digitale.

Mașina, mai degrabă decât modelele de învățare statistică, transformă apoi atributele limbajului într-o abordare statistică bazată pe reguli, menită să abordeze probleme specifice și să îndeplinească sarcina de procesare a limbajului.

În multe sisteme mai vechi, în special cele de tip „traducere directă”, componentele analizei, transferului și sintezei nu au fost întotdeauna clar separate. Unele dintre ele combinau și date (dicționar și gramatică) și reguli și rutine de procesare.

Noile sisteme au prezentat diferite grade de modularitate, astfel încât componentele sistemului, datele și programele pot fi adaptate și modificate fără a afecta eficiența generală a sistemului. O etapă ulterioară în unele sisteme recente este reversibilitatea componentelor de analiză și sinteză, adică datele și transformările utilizate în analiza unei anumite limbi sunt aplicate invers la generarea textelor în limba respectivă. Aflați mai multe despre aplicațiile procesării limbajului natural.

Evoluția traducerii automate

Până la sfârșitul anilor 1980, în această fază au fost efectuate cercetări considerabile în traducerea automată, când au fost dezvoltate primele sisteme de traducere automată statistică (SMT).

În mod clasic, sistemele bazate pe reguli au fost folosite pentru această sarcină, înlocuite ulterior în anii 1990 cu metode statistice. Foarte recent, modelele de rețele neuronale profunde au ajuns pentru a obține rezultate de ultimă generație într-un domeniu care este denumit pe bună dreptate traducere automată neuronală.

Traducerea automată statistică a înlocuit sistemele clasice bazate pe reguli cu modele care învață să traducă din exemple.

Modelele de traducere automată neuronală se potrivesc unui singur model în loc de o conductă rafinată și obțin în prezent rezultate de ultimă generație. De la începutul anilor 2010, acest domeniu a abandonat în mare măsură metodele statistice și apoi a trecut la rețelele neuronale pentru învățarea automată.

Câteva succese timpurii notabile privind metodele statistice în NLP au ajuns în traducerea automată, destinate să lucreze la IBM Research. Aceste sisteme au fost capabile să profite de corpurile textuale multilingve existente produse de Parlamentul Canadei și UE ca rezultat al legilor care impun traducerea tuturor procedurilor guvernamentale în diferite limbi oficiale ale sistemelor corespunzătoare ale guvernului.

Cu toate acestea, multe alte sisteme erau dependente de corpuri care au fost dezvoltate special pentru sarcinile implementate de aceste sisteme, ceea ce a fost și continuă o restricție majoră la dezvoltarea sistemelor. Prin urmare, a apărut o nevoie de o mare cantitate de cercetare în metodele de învățare eficientă din date limitate.

De exemplu, termenul de traducere automată neuronală (NMT) subliniază faptul că abordările bazate pe învățarea profundă a traducerii automate învață direct transformări secvență-la-secvență, evitând necesitatea unor pași intermediari, cum ar fi alinierea cuvintelor și modelarea limbajului care a fost folosit în traducerea automată statistică. (SMT). Google a început să folosească un astfel de model în producție pentru Google Translate la sfârșitul anului 2016.

Model de secvență la secvență

În mod normal, modelul secvență-la-secvență cuprinde două părți; în primul rând, un codificator , iar în al doilea rând, un decodor. Sunt două modele diferite de rețele neuronale care lucrează mână în mână ca o singură rețea mare.

Partea decodor a modelului generează apoi o secvență mapată în ieșire. Decodorul criptează șirul și adaugă sens secvenței în reprezentare. O abordare codificator-decodor, pentru traducerea automată neuronală, codifică întregul șir de intrare al unei propoziții într-un vector de lungime finită de unde este decodificată traducerea.

În linii mari, funcția unei rețele de codificator este de a citi și analiza secvența de intrare pentru a obține sens și apoi de a genera o reprezentare dimensională mică a șirului de intrare. Modelul transmite apoi această reprezentare către rețeaua de decodor.

Encoder – Decoder LSTM este o rețea neuronală recurentă concepută pentru a aborda probleme de la secvență la secvență, numite uneori seq2seq. Memoria pe termen lung (LSTM) este o arhitectură de rețea neuronală recurentă artificială (RNN) utilizată în învățarea profundă.

De exemplu, când șirul din secvența de intrare este „Ce este acest loc”, atunci după ce această secvență de intrare este analizată prin rețeaua de codificator-decodor sintetizează șirul folosind blocurile LSTM (un tip de arhitectură RNN). generează cuvinte în succesiune în fiecare pas al iterației decodorului.

După bucla totală de iterație, secvența de ieșire este construită, spuneți ceva de genul „Acest loc este Pune”. Rețeaua LSTM este potrivită pentru a clasifica pe baza regulilor, a analiza pentru a procesa intrarea și a face predicții folosind exemplele de date instruite.

Atentie Model

Model „Atenție”, care a îmbunătățit foarte mult calitatea sistemelor de traducere automată. Atenția permite modelului să se concentreze pe părțile relevante ale secvenței de intrare după cum este necesar.

Un model de atenție diferă de un model clasic secvență-la-secvență în două moduri principale:

  • Codificatorul transmite mult mai multe date către decodor. În loc să treacă ultima stare ascunsă a etapei de codificare, codificatorul transmite toate stările ascunse decodorului.
  • Un decodor de atenție face un pas suplimentar înainte de a-și produce ieșirea.

Model de transformator

Un calcul secvenţial nu poate fi paralelizat deoarece trebuie să aşteptăm ca pasul anterior să se termine înainte de a trece la următorul. Acest lucru prelungește atât timpul de antrenament, cât și timpul necesar pentru a rula inferența. O modalitate de a evita dilema secvențială este utilizarea rețelelor neuronale convoluționale (CNN) în loc de RNN. Transformatorul este un model care folosește atenția pentru a crește viteza. Mai precis, folosește autoatenția. Aici, fiecare encoder este format din două straturi:

  • Autoatenție
  • O rețea neuronală Feed Forward

Transformers folosesc rețele neuronale convoluționale împreună cu modele de atenție pentru traducerea automată. Transformatoarele sunt un tip de arhitectură de rețea neuronală care a câștigat popularitate. Transformatoarele au fost folosite recent de OpenAI în modelele lor de limbaj și folosite recent de DeepMind pentru AlphaStar, programul lor pentru a învinge un jucător profesionist de top Starcraft. Transformers depășesc modelul Google Neural Machine Translation în anumite sarcini.

Concluzie

Pe scurt, mecanismul de auto-atenție din sistem permite variației intrărilor să interacționeze între ele („self”) și le permite să decidă cui ar trebui să acorde mai multă atenție („atenție”). Rezultatele procesate sunt astfel agregate ale acestor interacțiuni și ponderate cu scoruri de atenție.

Înțelegerea fundamentală a MT în NLP ajută analiștii de date și oamenii de știință de date să se pregătească pentru a întreprinde proiecte prestigioase care implică proiecte în disciplina NLP a AI. Cursurile de formare în materie, de către furnizori precum upGrad , ajută la călătoria înainte. Brandul upGrad este o platformă online de învățământ superior care oferă o gamă largă de programe relevante pentru industrie, pregătite să vă conducă succesul profesional.

Dacă sunteți interesat să aflați mai multe despre învățarea automată și inteligența artificială, consultați Diploma PG în Învățare automată și inteligență artificială a IIIT-B și upGrad, care este concepută pentru profesioniști care lucrează și oferă peste 450 de ore de pregătire riguroasă, peste 30 de studii de caz și sarcini, Statut de absolvenți IIIT-B, peste 5 proiecte practice practice și asistență pentru locuri de muncă cu firme de top.

Învață cursul ML de la cele mai bune universități din lume. Câștigă programe de master, Executive PGP sau Advanced Certificate pentru a-ți accelera cariera.

Î1. Care sunt tipurile de traducere automată în NLP?

Traducerea automată, cunoscută și sub numele de interpretare robotizată, este procesul prin care computerele sau mașinile traduc în mod independent și rapid volume mari de text dintr-o anumită limbă sursă într-o limbă țintă, fără niciun efort depus de ființe umane. Cu alte cuvinte, traducerea automată funcționează prin utilizarea unei aplicații care ajută la traducerea textului dintr-o limbă de intrare în alta. Există patru tipuri diferite de traducere automată în NLP: traducere automată statistică, traducere automată bazată pe reguli, traducere automată hibridă și traducere automată neuronală. Principalul avantaj al traducerii automate este furnizarea unei combinații eficiente de viteză și rentabilitate.

Q2. Este NLP la fel cu AI?

După cum spun unii experți, AI este, practic, replicarea computerizată a inteligenței umane, care poate fi setată să ia decizii, să execute anumite operațiuni și să învețe din rezultate. Și când concentrezi inteligența artificială pe lingvistica umană, rezultă NLP. Deci, NLP este un subdomeniu al AI, care dă putere ființelor umane să vorbească cu mașinile. Din nou, NLP este acel subset de AI care permite computerelor să înțeleagă, să interpreteze și să proceseze limbajul uman și să îndeplinească sarcini specifice. Cu ajutorul NLP, computerele pot detecta fraze și cuvinte cheie, pot percepe intenția limbajului și o pot traduce cu acuratețe pentru a genera un răspuns adecvat.

Q3. Este NLP un domeniu bun de carieră?

În ultima vreme, NLP a evoluat ca o tehnologie revoluționară în domeniul științei datelor și AI. Creșterea utilizării dispozitivelor inteligente, adoptarea de soluții în cloud și dezvoltarea de aplicații NLP pentru o experiență îmbunătățită de servicii pentru clienți sunt factorii majori care contribuie la expansiunea bruscă a pieței NLP. Studiile sugerează că NLP este una dintre cele șapte abilități tehnice cele mai solicitate în 2021, cu dimensiunea pieței estimată să depășească 34 de miliarde de dolari la un CAGR de aproape 22%. Salariul mediu al profesioniștilor NLP este de aproximativ 80.000 până la 110.000 USD pe an în SUA.