From Wikipedia, the free encyclopedia
Obrada prirodnog jezika je potpodručje računarske znanosti, obrade informacija i umjetne inteligencije koje proučava interakciju između računala i ljudskih (prirodnih) jezika, posebno načine kako procesirati i analizirati velike količine podataka iz prirodnog jezika pomoću računala.
Izazovi obrade prirodnog jezika često uključuju raspoznavanje govora, razumijevanje prirodnog jezika i generiranje prirodnog jezika.
Povijest obrade prirodnog jezika započela je 1950-ih, iako je moguće pronaći radove i iz ranijih perioda. 1950. godine, Alan Turing je objavio članak pod nazivom "Inteligencija" koji predlaže ono što danas nazivamo Turingovim testom kao kriterij inteligencije.
Eksperiment iz Georgetowna iz 1954. uključivao je posve automatizirani prijevod više od šezdeset ruskih rečenica na engleski. Autori su tvrdili kako će za tri do pet godina strojno prevođenje biti riješen problem.[1] Međutim, pravi napredak bio je mnogo sporiji i, nakon izvještaja ALPAC iz 1966., koji je otkrio da desetogodišnje istraživanje nije ispunilo očekivanja, financiranje za strojno prevođenje dramatično je smanjeno. Malen broj istraživanja u području strojnog prevođenja proveden je do kasnih 1980-ih kad se razvijaju prvi sustavi temeljeni na statističkom strojnom prevođenju.
Neki od najznačajnijih uspješnih sustava za obradu prirodnog jezika razvijenih u 1960-ima su SHRDLU, sustav za obradu prirodnog jezika koji radi u ograničenom "svijetu blokova" s ograničenim vokabularom, i ELIZA, simulacija psihoterapeuta koju je napisao Joseph Weizenbaum između 1964. i 1966. Gotovo bez korištenja ikakvih informacija o ljuskom razmišljanju i emocijama, ELIZA je ponekad pružala interakciju zapanjujuće nalik ljudskoj. Kada "pacijent" nadiđe njezinu vrlo malenu bazu znanja, ELIZA bi mogla pružiti generički odgovor, primjerice odgovarajući na "Boli me glava" pitanjem "Zašto kažete da Vas boli glava?".
Tijekom 1970-ih, mnogi programeri počinju pisati "konceptualne ontologije" koje strukturiraju znanje iz stvarnog svijeta u podatke koji su razumljivi računalu. Primjeri uključuju MARGIE (Schank, 1975), SAM (Cullingford, 1978), PAM (Wilensky, 1978), TaleSpin (Meehan, 1976), QUALM (Lehnert, 1977), Politics (Carbonell, 1979) i Plot Units (Lehnert 1981). Tijekom ovog razdoblja napisani su mnogi chatbot-ovi kao što su PARRY, Racter i Jabberwacky.
Sve do 1980-ih, većina sustava za obradu prirodnog jezika bazirala se na kompleksnim skupovima ručno pisanih pravila. Kasnih 1980-ih dolazi do revolucije u obradi prirodnog jezika s uvođenjem algoritama strojnog učenja za obradu jezika. Za ovo su zaslužni postojan rast računalne moći (vidi Mooreov zakon) i postupno popuštanje dominacije Chomskyjevih teorija lingvistike (npr. transformacijska gramatika) čije su teoretičarske pretpostavke obeshrabrivale uporabu lingvistike korpusa koja je temelj pristupa obradi jezika temeljenog na strojnom učenju. Neki od najranije korištenih algoritama strojnog učenja, kao što su stabla odluke, generiranju sustave čvrstih ako-onda pravila sličnih postojećim ručno pisanim pravilima. Međutim, označavanje vrsta riječi u rečenicama uvodi uporabu skrivenih Markovljevih modela u područje obrade prirodnog jezika i istraživanja se sve više usredotočuju na statističke modele koji stvaraju meke probabilističke granice temeljene na povezivanju težina sačinjenih od realnih brojeva sa značajkama iz ulaznih podataka. Cache jezični modeli, na kojima se danas temelje mnogi sustavi za raspoznavanje govora, primjer su takvih statističkih modela. Takvi modeli su u pravilu robusniji kad rade s nepoznatim ulaznim podacima, posebice onima koji sadrže pogreške (što je vrlo često kod stvarnih podataka), i daju pouzdanije rezultate kad su integrirani u velik sustav koji se sastoji od brojnih podzadataka.
Mnogi rani uspjesi zabilježeni su u području strojnog prevođenja, posebice zahvaljujući radu IBM Research-a, gdje su razvijeni znatno složeniji statistički modeli. Ovi sustavi koristili su višejezične korpuse tekstova koje su sastavili Kanadski parlament i Europska unija kao rezultat zakona koji zahtijevaju prevođenje svih vladinih odluka na sve službene jezike. Međutim, većina drugih sustava ovisi o korpusima teksta koji su izgrađeni specifično za zadatak na koji se ti sustavi primjenjuju, što je veliko ograničenje ovakvih sustava. Kao rezultat toga, velik broj istraživanja bavi se metodama koje omogućavaju efektivnije učenje na temelju ograničenih količina podataka.
Nedavna istraživanja su sve više usredotočena na algoritme nenadziranog i polunadziranog učenja. Takvi algoritmi mogu učiti na temelju podataka koji nisu ručno označeni željenim odgovorima ili mogu koristiti kombinaciju označenih i neoznačenih podataka. Ovakav način učenja je u pravilu mnogo zahtjevniji od nadziranog učenja te često daje gore rezultate za istu količinu ulaznih podataka. Međutim, u području prirodnog jezika postoji enormna količina neoznačenih podataka koji su javno dostupni (uključujući, između ostalog, i cjelokupni sadržaj World Wide Web-a) i koji često nadoknađuju gore rezultate ako korišteni algoritam ima dovoljno malu vremensku složenost da učenje na tolikom količinom podataka bude praktično.
U 2010-ima, učenje temeljeno na značajkama i strojno učenje temeljeno na dubokim neuronskim mrežama postaju rasprostranjeni pristupi u obradi prirodnog jezika, djelomice zahvaljujući naletu rezultata[2][3] koji pokazuju kako ovakve tehnike postižu najbolje rezultate na brojnim zadacima iz područja prirodnog jezika, primjerice modeliranju jezika,[4] parsiranju[5][6] i brojnim drugima. Popularni pristupi uključuju korištenje vektorskih reprezentacija riječi kako bi uhvatili semantička svojstva riječi te učenje od kraja do kraja (engl. end-to-end) zadataka više razine (npr. odgovaranje na pitanja) umjesto korištenja cjevovoda sastavljenih od zasebnih zadataka. Ova je promjena u nekim područjima povukla za sobom značajne promjene u načinu na koji se sustavi za obradu prirodnog jezika dizajniraju pa se stoga pristupi temeljeni na dubokim neuronskim mrežama mogu smatrati novom paradigmom razdvojenom od statističke obrade prirodnog jezika. Primjerice, pojam [[neuronsko strojno prevođenje]] naglašava činjenicu da pristupi strojnom prevođenju temeljeni na dubokim modelima izravno uče transformacije iz sekvence u sekvencu, čime nestaje potreba za međukoracima kao što su određivanje poretka riječi ili modeliranje jezika koji se koriste u statističkom strojnom prevođenju.
U početku su mnogi sustavi za obradu jezika bili osmišljeni ručnim sastavljanjem skupa pravila,[7][8] npr. pisanjem gramatika ili dizajniranjem heurističkih pravila za stemming. Međutim, ovakav je pristup rijetko robustan na varijacije u prirodnim jezicima.
Od takozvane "statističke revolucije"[9][10] u kasnim 1980-im i srednjim 1990-im, dobar dio istraživanja u području obrade prirodnog jezika uvelike se oslanjao na strojno učenje.
Paradigma strojnog učenja koristi statističko zaključivanje kako bi se pravila naučila automatiziranim postupkom kroz analizu velikih korpusa sastavljenih od tipičnih stvarnih primjera.
Mnogo različitih vrsta algoritama strojnog učenja primijenjeno je na probleme iz područja obrade prirodnog jezika. Ovi algoritmi kao ulaz primaju veliki skup značajki koje se generiraju na temelju ulaznih podataka. Neki od najranijih algoritama, kao što su stabla odluke, rezultiraju sustavima čvrstih ako-onda pravila koji su slični sustavima s ručno pisanim pravilima koji su tada bili česti. No, istraživanje se sve više fokusiralo na statističke modele koji donose meke probabilističke odluke na temelju odgovarajućih težina realnih brojeva koje su povezane sa svakom ulaznom značajkom. Takvi modeli imaju prednost da mogu izraziti u kojoj su mjeri sigurni u koje od mnogo različitih mogućih odgovora, čime se dobivaju pouzdaniji rezultati kad se ovakvi modeli koriste kao komponente većih sustava.
Sustavi temeljeni na strojnom učenju imaju mnoge prednosti u odnosu na ručno sastavljena pravila:
U nastavku je dan kratak pregled najčešćih zadataka kojima se bavi obrada prirodnog jezika. Neki od njih se izravno primjenjuju na stvarnim problemima, dok se kompleksniji problemi često razlažu u nekoliko podzadataka koji se rješavaju zasebno i potom nadovezuju u potpuno rješenje. Kako se isti podzadaci često pojavljuju u mnogim primjenama, danas su brojni od njih postali zaseban predmet istraživanja.
Iako su zadaci iz područja obrade prirodnog jezika često međusobno usko povezani ili isprepleteni, često se zbog praktičnosti dijele u nekoliko kategorija. U nastavku je dana grupa podjela.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.