«IT BLOG - nenad badovinac»

Veštačka inteligencija u obradi prirodnog jezika - klasifikator
web stranica

Obrada prirodnog jezika (NLP) je sposobnost kompjuterskog programa da razume ljudski jezik u govoru i pismu. To je komponenta veštačke inteligencije koja predstavlja niz aplikacija iz stvarnog sveta u brojnim naučnim oblastim, uključujući medicinska istraživanja, pretraživače i poslovnu inteligenciju.
Kako funkcioniše obrada prirodnog jezika?

NLP omogućava računalima da shvate prirodni jezik. Bez obzira na to da li je jezik govorni ili pisani, obrada prirodnog jezika koristi veštačku inteligenciju kako bi primila podatke iz stvarnog sveta, obradila ih i dala im smisao na način koji kompjuter može da razume. Baš kao što ljudi imaju različite senzore - uši da čuju i oči da vide - kompjuteri imaju programe za čitanje, kao i mikrofone za snimanje zvuka. Kao što ljudi imaju mozak za obradu takvih podataka, tako kompjuteri maju program za obradu svojih ulaznih podataka. U nekom trenutku obrade, ulazni podatak se pretvara u kod koji kompjuter može da razume.

Predobrada podataka uključuje pripremu tekstuelnih podataka za mašine kako bi ih mogli analizirati. Proces predobrade priprema podatke u oblik za korišćenje i označava karakteristike u tekstu s kojima algoritam može raditi. Predobrada ima nekoliko koraka:

  • Tokenizacija - To je proces u kojem se tekst raščlani na manje jedinice (reči).
  • Brisanje zaustavnih reči - To je proces u kojem se uobičajene reči uklanjaju iz teksta tako da ostaju samo jedinstvene reči koje predstavljaju više relevantnih informacija o tekstu.
  • Lematizacija - Proces u kojem se reči svode na izvorni oblik.
Nakon što su podaci prethodno obrađeni, razvija se algoritam za njihovu obradu. Najčešće se koristi sistem baziran na mašinskom učenju. Algoritmi mašinskog učenja koriste statističke metode. Oni uče na koji način da izvršavaju zadatke koristeć podatake o treningu. Tako prilagođavaju svoje metode. Koristeći kombinaciju mašinskog učenja, dubokog učenja i neuronskih mreža, algoritmi za obradu prirodnog jezika usavršavaju pravila kroz ponovljene obrade i učenje.
Zašto je obrada prirodnog jezika važna?

Preduzeća koriste velike količine nestrukturnih podataka i trebaju nači način za njihovu efikasnu obradu. Velik deo informacija prikupljenih online i pohranjenih u bazama podataka prirodni je ljudski jezik. Donedavno preduzeća nisu mogla analizirati takve podatke. U ovom procesu koristi se obrada prirodnog jezika.

Primena procesa obrade prirodnog jezika?

  • Klasifikacija teksta. Uključuje proces dodeljivanje posebnih oznaka tekstovima kako bi ih smestili u kategorije. To može biti korisno za analizu osećaja, što pomaže algoritmu obrade prirodnog jezika da odredi osećaj ili emociju iza teksta. Na primer, kada je marka "A" pomenuta u "X" broju tekstova, algoritam može da odredi koliko je tih spominjanja bilo pozitivno, a koliko negativno.
  • Ekstrakcija teksta. Uključuje proces automatskog pronalaženja važnih informacija u tekstu. Primer toga je izdvajanje ključnih reči, koje izvlači najvažnije reči iz teksta, što može biti korisno za optimizaciju pretraživača. Za obradu prirodnog jezika potrebno je programiranje koje nije potpuno automatizovano. Postoji mnogo jednostavnih alata za izdvajanje ključnih reči koji automatizuju većinu procesa - korisnik mora postaviti parametre unutar programa. Na primer, alat može izvući najčešće korišćene reči u tekstu.
  • Mašinsko prevođenje. Ovo je proces u kojem kompjuter prevodi tekst s jednog jezika, kao što je engleski, na drugi jezik, i to bez ljudske intervencije.
  • Generisanje prirodnog jezika. Uključuje korišćenje algoritama za obradu prirodnog jezika za analizu nestrukturnih podataka i automatsko kreiranje sadržaja na bazi tih podataka.
Gore navedene funkcije koriste se u raznim aplikacijama u stvarnom svetu:

  • analiza povratnih informacija kupaca - ovde veštačka inteligencija (AI) analizira recenzije društvenih medija;
  • automatsko prevođenje – pomoću alata kao što su Google Translate:
  • akademsko istraživanje i analiza – AI može da analizira ogromne količine akademskog materijala i istraživačkih radova;
  • analiza i kategorizacija medicinske dokumentacije - AI se koristi za predviđanje i sprečavanje bolesti;
  • programi za obradu teksta koji se koriste za plagijat i lekturu - koristeći alate kao što su Grammarly i Microsoft Word;
  • predviđanje kretanja vrednosti dionica i uvid u finansijsk trgovanje - korištenje AI-a za analizu istorije tržišta dionica.
Evolucija obrade prirodnog jezika

NLP se oslanja na razne discipline, uključujući razvoj informatike i kompjuterske lingvistike. Evolucija uključuje sledeće glavne faze:

  • 1950-ih. Obrada prirodnog jezika ima svoje korene u ovoj dekadi. Alan Turing je osmislio Turingov test kako bi potvrdio da li je računalo inteligentno ili ne. Test uključuje automatizovano tumačenje i generisanje prirodnog jezika kao kriterija inteligencije.
  • 1950. do 1990-ih godina. NLP se uglavnom baziralo na pravilima, koristeći ručno izrađena pravila koja su razvili lingvisti kako bi odredili način na koji će kompjuter obraditi prirodni jezik. Kompjuteri su postali sve brži i mogli su se koristiti za razvoj pravila na bazi lingvističke statistike.
  • 2000-2020. Povećala se popularnost Obrade prirodnog jezika. S rastom kompjuterske snage, obrada prirodnog jezika dobila je brojne primene u stvarnom svetu. Danas pristupi NLP-u uključuju kombinaciju klasične lingvistike i statističkih metoda.
Primeri korišćenja modela obrade prirodnog jezika:

  1. Obrada prirodnog jezika pomaže aplikaciji Livox koja komunicira sa osobama s invaliditetom.
  2. SignAll pretvara znakovni jezik u tekst. Pomaže komunikaciju gluvo-nemih osoba.
  3. Mašinsko prevođenje omogućava prevladavanje prepreka u komunikaciji ljudi. Google Translate svaki dan koristi 500 miliona ljudi za razumevanje više od 100 svetskih jezika.
  4. Tehnologija obrade prirodnog jezika primenjuje se i za održavanje aviona. Pomaže mehaničarima u obradi informacija koje se koriste u servisiranju avion.
Moj lični projekt primene mašinkog učenja u obradi prirodnog jezika.

Tradicionalne metode klasifikacije tekstova koriste ključne reči. Koristeći NLP tehnike za klasifikaciju tekstova predložio sam model uz algoritam mašinskog učenja koji koristi vektorizovani tekst i posebne parametre koje je moguće dodatno optimizovati. Rezultate koje sam dobio u istraživanju predstavljenog algoritma pokazali su da su najbolji rezultati dobiveni korišćenjem Algoritma mašinskog učenja - "Support vector machine" kao oblika klasifikatora teksta. Na osnovu rezultata eksperimentalne analize parametare sam dodatno poboljšao i to me potaklo da dodatno radim na unapredjenju mog algoritma kako bi dobio još kvalitetniji model klasifikacije web tekstova. Naučni rad napisan na temu ovog NLP projekta dostupan jena linku: Klikni i pogledaj projekat.