ciot Ce este NLP (Natural Language Processing)? - Unite.AI
Conectează-te cu noi

Inteligenta Artificiala

Ce este NLP (Natural Language Processing)?

mm
Actualizat on

Procesarea limbajului natural (NLP) este studiul și aplicarea tehnicilor și instrumentelor care permit computerelor să proceseze, să analizeze, să interpreteze și să raționeze despre limbajul uman. NLP este un domeniu interdisciplinar și combină tehnici stabilite în domenii precum lingvistică și informatică. Aceste tehnici sunt folosite împreună cu AI pentru a crea chatbot și asistenți digitali precum Google Assistant și Amazon Alexa.

Să luăm ceva timp pentru a explora rațiunea din spatele procesării limbajului natural, unele dintre tehnicile utilizate în NLP și câteva cazuri de utilizare obișnuită pentru NLP.

De ce este importantă procesarea limbajului natural (NLP).

Pentru ca computerele să interpreteze limbajul uman, ele trebuie convertite într-o formă pe care computerul o poate manipula. Cu toate acestea, acest lucru nu este la fel de simplu ca convertirea datelor text în numere. Pentru a obține sens din limbajul uman, modelele trebuie extrase din sutele sau miile de cuvinte care alcătuiesc un document text. Aceasta nu este o sarcină ușoară. Există puține reguli dure și rapide care pot fi aplicate interpretării limbajului uman. De exemplu, exact același set de cuvinte poate însemna lucruri diferite în funcție de context. Limbajul uman este un lucru complex și adesea ambiguu, iar o declarație poate fi rostită cu sinceritate sau sarcasm.

În ciuda acestui fapt, există câteva linii directoare generale care pot fi folosite atunci când interpretați cuvinte și caractere, cum ar fi caracterul „s” care este folosit pentru a indica faptul că un articol este plural. Aceste linii directoare generale trebuie să fie folosite împreună pentru a extrage sensul din text, pentru a crea caracteristici pe care un algoritm de învățare automată le poate interpreta.

Procesarea limbajului natural implică aplicarea diverșilor algoritmi capabili să preia date nestructurate și să le convertească în date structurate. Dacă acești algoritmi sunt aplicați în mod greșit, computerul nu va reuși adesea să obțină sensul corect din text. Acest lucru se poate observa adesea în traducerea textului între limbi, unde sensul precis al propoziției este adesea pierdut. Deși traducerea automată s-a îmbunătățit substanțial în ultimii ani, erorile de traducere automată apar în continuare frecvent.

Tehnici de procesare a limbajului natural (NLP).

Foto: Tamur prin WikiMedia Commons, Public Domain (https://commons.wikimedia.org/wiki/File:ParseTree.svg)

Multe dintre tehnici de care sunt utilizate în procesarea limbajului natural pot fi plasate în una din două categorii: sintaxă sau semantică. Tehnicile de sintaxă sunt cele care se ocupă de ordonarea cuvintelor, în timp ce tehnicile semantice sunt tehnicile care implică sensul cuvintelor.

Sintaxă Tehnici NLP

Exemple de sintaxă includ:

  • Lematizarea
  • Segmentarea morfologică
  • Etichetarea părții de vorbire
  • Analizare
  • Sentința de rupere
  • Pentru a putea reduce
  • Segmentarea cuvintelor

Lematizarea se referă la distilarea diferitelor inflexiuni ale unui cuvânt într-o singură formă. Lematizarea ia lucruri precum timpurile și pluralele și le simplifică, de exemplu, „picioarele” ar putea deveni „picior” și „dungi” pot deveni „dungă”. Această formă simplificată a cuvântului face mai ușor pentru un algoritm să interpreteze cuvintele dintr-un document.

Segmentarea morfologică este procesul de împărțire a cuvintelor în morfeme sau în unitățile de bază ale unui cuvânt. Aceste unități sunt lucruri ca gratuite morfeme (care pot sta singure ca cuvinte) și prefixe sau sufixe.

Etichetarea unei părți de vorbire este pur și simplu procesul de identificare care parte de vorbire este fiecare cuvânt dintr-un document de intrare.

Analizare se referă la analizarea tuturor cuvintelor dintr-o propoziție și corelarea lor cu etichetele lor gramaticale formale sau efectuarea unei analize gramaticale pentru toate cuvintele.

Ruperea propoziției sau segmentarea graniței propoziției, se referă la a decide unde începe și unde se termină o propoziție.

Pentru a putea reduce este procesul de reducere a cuvintelor la forma rădăcină a cuvântului. De exemplu, conectat, conexiunea și conexiunile ar fi toate derivate la „conectare”.

Segmentarea cuvintelor este procesul de împărțire a bucăților mari de text în unități mici, care pot fi cuvinte sau unități stemmed/lematizate.

Tehnici semantice NLP

Tehnicile NLP semantice includ tehnici precum:

  • Recunoașterea entității denumită
  • Generarea limbajului natural
  • Dezambiguizare cuvânt-sens

Recunoașterea entității denumite implică etichetarea anumitor porțiuni de text care pot fi plasate într-unul dintr-un număr de grupuri prestabilite diferite. Categoriile predefinite includ lucruri precum date, orașe, locuri, companii și persoane fizice.

Generarea limbajului natural este procesul de utilizare a bazelor de date pentru a transforma datele structurate în limbaj natural. De exemplu, statisticile despre vreme, cum ar fi temperatura și viteza vântului, ar putea fi rezumate cu limbaj natural.

Dezambiguizarea sensului cuvântului este procesul de atribuire a unui sens cuvintelor dintr-un text pe baza contextului în care apar cuvintele.

Modele de învățare profundă pentru NLP

Perceptronii multistrat obișnuiți nu sunt capabili să se ocupe de interpretarea datelor secvențiale, unde ordinea informațiilor este importantă. Pentru a face față importanței ordinii în datele secvențiale, se folosește un tip de rețea neuronală care păstrează informațiile din etapele anterioare ale antrenamentului.

Rețele neuronale recurente sunt tipuri de reţele neuronale care buclă peste datele din pașii de timp anteriori, luându-le în considerare la calcularea ponderilor pasului de timp curent. În esență, RNN-urile au trei parametri care sunt utilizați în timpul trecerii de antrenament înainte: o matrice bazată pe starea ascunsă anterioară, o matrice bazată pe intrarea curentă și o matrice care se află între starea ascunsă și ieșire. Deoarece RNN-urile pot lua în considerare informațiile din pașii de timp anteriori, pot extrage modele relevante din datele text, luând în considerare cuvintele anterioare din propoziție atunci când interpretează semnificația unui cuvânt.

Un alt tip de arhitectură de învățare profundă folosită pentru procesarea datelor text este o rețea de memorie pe termen lung (LSTM).. Rețelele LSTM sunt similare cu RNN-urile ca structură, dar din cauza unor diferențe în arhitectura lor, acestea tind să funcționeze mai bine decât RNN-urile. Ei evită o problemă specifică care apare adesea atunci când se utilizează RNN numită problema gradientului exploziv.

Aceste rețele neuronale profunde pot fi fie unidirecționale, fie bidirecționale. Rețelele bidirecționale sunt capabile să ia în considerare nu doar cuvintele care vin înainte de cuvântul curent, ci și cuvintele care vin după acesta. Deși acest lucru duce la o precizie mai mare, este mai costisitor din punct de vedere computațional.

Cazuri de utilizare pentru procesarea limbajului natural (NLP)

Fotografie: mohammed_hassan prin Pixabay, licență Pixabay (https://pixabay.com/illustrations/chatbot-chat-application-artificial-3589528/)

Deoarece Procesarea limbajului natural implică analiza și manipularea limbajelor umane, are o gamă incredibil de largă de aplicații. Aplicațiile posibile pentru NLP includ chatbot, asistenți digitali, analiza sentimentelor, organizarea documentelor, recrutarea talentelor și asistența medicală.

Chatboții și asistenții digitali precum Alexa și Google Assistant de la Amazon sunt exemple de platforme de recunoaștere și sinteză a vocii care folosesc NLP pentru a interpreta și a răspunde la comenzile vocale. Acești asistenți digitali îi ajută pe oameni cu o mare varietate de sarcini, permițându-le să-și descarce unele dintre sarcinile cognitive pe alt dispozitiv și să-și elibereze o parte din puterea mentală pentru alte lucruri mai importante. În loc să căutăm cea mai bună rută către bancă într-o dimineață aglomerată, putem doar să-l punem pe asistentul nostru digital.

Analiza sentimentelor este utilizarea tehnicilor NLP pentru a studia reacțiile și sentimentele oamenilor față de un fenomen, așa cum sunt comunicate prin utilizarea limbajului. Captarea sentimentului unei declarații, cum ar fi interpretarea dacă o recenzie a unui produs este bună sau proastă, poate oferi companiilor informații substanțiale cu privire la modul în care produsul lor este primit.

Organizarea automată a documentelor text este o altă aplicație a NLP. Companii precum Google și Yahoo folosesc algoritmi NLP pentru a clasifica documentele de e-mail, punându-le în coșurile adecvate, cum ar fi „social” sau „promoții”. De asemenea, folosesc aceste tehnici pentru identifica spam-ul și împiedicați-l să ajungă în căsuța dvs. de e-mail.

De asemenea, grupurile au dezvoltat tehnici NLP pentru a identifica potențiale angajări de locuri de muncă, găsindu-le pe baza abilităților relevante. Managerii de angajare folosesc, de asemenea, tehnici NLP pentru a-i ajuta să trimită listele de candidați.

Tehnicile NLP sunt, de asemenea, folosite pentru a îmbunătăți asistența medicală. NLP poate fi folosit pentru a îmbunătăți detectarea bolilor. Fișele de sănătate pot fi analizate și simptomele extrase prin algoritmi NLP, care pot fi apoi utilizați pentru a sugera posibile diagnostice. Un exemplu în acest sens este platforma Amazon Comprehend Medical, care analizează dosarele de sănătate și extrage boli și tratamente. Aplicațiile NLP în domeniul sănătății se extind și asupra sănătății mintale. Există aplicații precum WoeBot, care vorbește utilizatorii printr-o varietate de tehnici de gestionare a anxietății bazate pe terapia cognitiv-comportamentală.

Postări recente