NLP sissejuhatuse märkmed

Allikas: Lambda
NLP - Natural Language Processing


Sissejuhatus
------------


Masintõlge - (a) primitiivne: sõnad/fraasid otse, veidi teisendad/muudad järjekordi (b) grammatika ja reeglite põhine (c) statistika ja masinõpe
  paralleelkorpused (english text, estonian tekst; euroliidu dokumendid)  

Sentiment analysis: proovid tuvastada, kas positiivne/negatiivne tekst

NER (named entity recognition) : leia üles pärisnimed, soovitavalt nende tüübid ja idid

Query answering: (a) faktoloogia (b) ülesandeid . Kaks põhimeetodit: (1) andmebaasid, reeglid, kombineerimine, järeldamine 
  (2) masinõpe ja teksti jätkuvuse ennustamine (3) hübriidmeetodid a watson
  
Dialoogsüsteemid: (SIRI, Google assistant, natuke ka Amazon Alexa): 1) tuvastavad valdkonna 2) tuvastavad eesmärgi (Intent) 3) üritavad soovitud
tegevust teha. Keerukamad süsteemid püüavad küsida juurde inimeselt puuduolevat infot.

Parserid: lause -> andmestruktuur

       subject              verb    objekt  
The president of Estonia    is    Alar Karis.

 subject    verb       objekt
                       adj np 
John        ate     a red apple with a fork.


I shot an elephant in my pyjamas.

Kaks suuremat parsimisformalismi: süntaksipuu (consituency parsing) ja seostegraaf (dependency parsing)

semantiline parsimine:

lause -> tähendust esitav andmestruktuur: palju väga erinevaid prototüüplahendusi 

Proovime parsida: John opened the door. Key opened the door. Alamtask: semantic role labelling (John on agent,
võti on instrument, kuigi süntaktiliselt on identsed)

Mida me "tähenduse" all mõtleme?

N-grams
---------------------
       4
I shot an elephant      in my pyjamas.

Sobivad ülilühikeste tekstide täiendamiseks (a la mobiilis sõnade autocomplete)

Ei sobi pikema teksti jätkumise ennustamiseks


Vektorsemantika ja Bert/GPT tüüpi asjad: ei kasuta N-gramme, vaid vektorsemantikalist üldistust

ei ole olnud: I shot an elephant 
aga oli: I shot a rabbit [with a gun]

vektorsemantika
----------------
"vector in 3-space" tähendab "kolmese pikkusega numbrite list" a la [0.9, 0.54, 0.001]

"Meaning as a point in multidimensional space" : see numbrite list ongi tähendus

I                            shot                    an   elephant
[0.9, 0.54, 0.001, ...]  [0.5, 0.24, 0.02, ...]    [...]   [.....]