PředmětyPředměty(verze: 837)
Předmět, akademický rok 2018/2019
   Přihlásit přes CAS
Programování pro korpusovou lingvistiku: Python a NLTK - AMLV00058
Anglický název: Programming for corpus linguistics: Python and NLTK
Zajišťuje: Ústav českého národního korpusu (21-UCNK)
Fakulta: Filozofická fakulta
Platnost: od 2016
Semestr: zimní
Body: 0
E-Kredity: 4
Způsob provedení zkoušky: zimní s.:
Rozsah, examinace: zimní s.:0/2 Z [hodiny/týden]
Počet míst: neurčen / 10 (10)
Minimální obsazenost: neomezen
Stav předmětu: vyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Úroveň:  
Poznámka: předmět je možno zapsat mimo plán
povolen pro zápis po webu
Garant: Mgr. David Lukeš
Vyučující: Mgr. David Lukeš
Rozvrh   Nástěnka   
Anotace -
Poslední úprava: Mgr. Lucie Lukešová, Ph.D. (11.05.2016)
Seminář je určen pro studenty humanitních, především filologických oborů se zájmem o korpusovou lingvistiku a
počítačové zpracování textů. Nepředpokládá se žádná předchozí zkušenost s programováním, pouze základní
uživatelská práce s PC. Absolventi kurzu se naučí pracovat s moderním, jednoduchým, leč o to užitečnějším
programovacím jazykem Python a sadou nástrojů Natural Language Toolkit, která uživateli umožňuje sestavení
vlastních korpusů, jejich prohledávání, vyhodnocování analýz (frekvenční seznamy, n-gramy...) a mnoho dalšího.
Smyslem kurzu je ukázat, že na některých úkonech je snadnější, flexibilnější a rychlejší se s počítačem domluvit
volným kombinováním příkazů v plnohodnotném (programovacím) jazyce, spíš než jen posunky (klikáním myši na
položky v menu). Absolventi získají intuici i základní praktické dovednosti k tomu, aby dokázali identifikovat a
následně i vyřešit úkoly, u nichž se přímo nabízí programatický přístup. Proměníte tak repetitivní ruční práci s daty v
jednoznačnou kuchařku, podle níž za vás většinu dřiny udělá počítač.
V dalším semestru je možné navázat kurzem Programování pro korpusovou lingvistiku II, v němž se budeme
věnovat pokročilejším metodám a podíváme se za hranice jazyka Python, abychom se naučili kombinovat svoje
vlastní programy s cizími, často psanými v jiných jazycích.
Podmínky zakončení předmětu
Poslední úprava: Mgr. Lucie Lukešová, Ph.D. (11.05.2016)

Požadavky k zápočtu: pravidelná docházka, aktivní účast na seminářích, průběžné plnění zadávaných úkolů, vypracování zápočtového úkolu.

Literatura -
Poslední úprava: Mgr. David Lukeš (16.08.2018)

Bird, S., Klein, E., & Loper, E. (2014). Natural Language Processing with Python: Analyzing Text with the Natural Language Toolkit. Retrieved from http://www.nltk.org/book/

Gries, P., Campbell, J., & Montojo, J. (2013). Practical Programming: An Introduction to Computer Science Using Python 3 (2nd ed.). Dallas, Texas: Pragmatic Bookshelf.

Jurafsky, D., & Martin, J. H. (2019). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition (3rd ed.). Retrieved from https://web.stanford.edu/~jurafsky/slp3/

Lukeš, D. (2016, January 27). How computers handle text: A gentle but thorough introduction to Unicode. Retrieved August 15, 2018, from https://dlukes.github.io/unicode.html

Matthes, E. (2015). Python Crash Course: A Hands-On, Project-Based Introduction to Programming (1st ed.). San Francisco: No Starch Press.

McEnery, T., & Hardie, A. (2011). Corpus Linguistics: Method, Theory and Practice. Cambridge University Press.

Moran, S., & Cysouw, M. (2018). The Unicode cookbook for linguists: managing writing systems using orthography profiles. Berlin: Language Science Press. Retrieved from http://langsci-press.org/catalog/book/176

Skiena, S. S. (2008). The Algorithm Design Manual. London: Springer London. https://doi.org/10.1007/978-1-84800-070-4

Sweigart, A. (2018). Cracking Codes with Python: An Introduction to Building and Breaking Ciphers. San Francisco: No Starch Press.

Vaughan, L. (2018). Impractical Python: Playful Programming Activities to Make You Smarter. San Francisco: No Starch Press.

Zinoviev, D. (2016). Data Science Essentials in Python: Collect – Organize – Explore – Predict – Value (1st ed.). Raleigh, North Carolina: Pragmatic Bookshelf.

Sylabus
Poslední úprava: Mgr. Lucie Lukešová, Ph.D. (11.05.2016)

Struktura kurzu bude v hlavních obrysech sledovat obsah knížky Natural Language Processing with Python (viz http://www.nltk.org/book/), která je pozvolným, souběžným úvodem do Pythonu i Natural Language Toolkit, určeným pro humanitně zaměřené studenty.

Psát programy v jazyce Python (viz https://www.python.org/) lze mnoha různými způsoby, my budeme primárně používat prostředí Jupyter (viz https://try.jupyter.org/), které umožňuje bezprostřední interakci a je tak přívětivé k začátečníkům. Navíc běží v prohlížeči, takže odpadají starosti s instalací. Zkušenějším kolegyním a kolegům ovšem nebude nijak bráněno v tom, aby používali prostředí jiné, jsou-li na ně zvyklí.

Témata:

1.          úvod do programovacího jazyka Python

2.          práce s předpřipravenými jazykovými daty v NLTK

3.          zpracování surových textových dat

-            formát "čistého textu", kódování

-            regulární výrazy

4.          lingvistická anotace textu:

-            morfologické a syntaktické značkování

-            klasifikace textů a extrakce informace

-            gramatiky

-            sémantická analýza

5.          pokročilejší Python

 
Univerzita Karlova | Informační systém UK