Vsebina predmeta temelji na izboru sodobnih tehnik obdelave naravnega jezika podkrepljenih s praktično rabo. V predavanjih predstavimo glavne pristope in pojasnimo delovanje posameznih metod in njihovo teoretično ozadje. V okviru laboratorijskih vaj znanje povežemo s praktično rabo in ga utrdimo z uporabo odprtokodnih sistemov za obdelavo naravnega jezika. Študenti rešujejo naloge, ki temeljijo na realnih raziskovalnih in praktičnih problemih, pretežno v slovenskem in angleškem jeziku.

  1. Uvod: motivacija, razumevanje jezika, Turingov test, tradicionalni in statistični pristop, pregled področja, težav in uspehov
  2. Predprocesiranje in normalizacija teksta: uporaba regularnih izrazov (avtomatov) za iskanje in zamenjavo nizov, gramatike za prepoznavanje sintakse, podobnost nizov, Levenhsteinova razdalja
  3. Klasični jezikovni modeli: n-grami, lematizacija, leksikoni besednih oblik
  4. Vektorske predstavitve besedil: tf-idf, goste predstavitve word2vec
  5. Globoka omrežja in besedila: rekurzivne in konvolucijske nevronske mreže za besedila
  6. Nevronski jezikovni modeli: ELMo, BERT,
  7. Medjezikovne vektorske vložitve
  8. Oblikoslovno označevanje in skladenjsko razčlenjevanje za angleščino in slovenščino,
  9. Leksikalna semantika in razdvoumljanje
  10. Jezikovni viri: korpusi, slovarji, tezavri, omrežja in semantične baze, WordNet, pregled orodij in repozitorijev, luščenje terminologije.
  11. Prepoznavanje imenskih entitet (NER) in označevanje udeleženskih vlog (SRL)
  12. Tekstovno rudarjenje: prilagojene klasifikacijske metode, metodologija in evalvacija
  13. Analiza čustev
  14. Odgovori na vprašanja
  15. Povzemanje: predstavitve besedil, matrična faktorizacija, abstraktivne, ekstrakcijske metode in povpraševane metode.
  16. Strojno prevajanje: jezikovni model, prevajalni model, poravnava jezikov, parametri modelov, izzivi v prevajanju.

Obveznosti pri predmetu obsegajo pet spletnih kvizov in tri seminarske naloge z roki z oddajo v aprilu, maju in juniju.