PředmětyPředměty(verze: 895)
Předmět, akademický rok 2021/2022
  
Programování pro korpusovou lingvistiku: Python a NLTK II - AMLV00063
Anglický název: Programming for corpus linguistics: Python and NLTK II
Zajišťuje: Ústav českého národního korpusu (21-UCNK)
Fakulta: Filozofická fakulta
Platnost: od 2019
Semestr: letní
Body: 0
E-Kredity: 4
Způsob provedení zkoušky: letní s.:
Rozsah, examinace: letní s.:0/2 Z [hodiny/týden]
Počet míst: neurčen / neurčen (10)
Minimální obsazenost: neomezen
Virtuální mobilita / počet míst: ne
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š
Anotace -
Poslední úprava: Mgr. David Lukeš (03.01.2021)
Seminář navazuje na předmět AMLV00058 (Programování pro korpusovou lingvistiku: Python a NLTK). Absolvování předchozího předmětu není přísnou prerekvizitou, nicméně:

1. studenti, kteří jej absolvovali, budou mít při zápisu přednost
2. předmět není vhodný pro začátečníky, předpokládá se předchozí znalost Pythonu přibližně na úrovni prvních pěti kapitol http://www.nltk.org/book/

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ů. Oproti předchozímu semestru půjdeme více do hloubky: podíváme se na složitější algoritmy používané při zpracování přirozeného jazyka, a zároveň se naučíme psát delší a komplikovanější programy a propojovat je s dalšími existujícími nástroji.
Podmínky zakončení předmětu -
Poslední úprava: Mgr. David Lukeš (26.11.2019)

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. David Lukeš (03.01.2021)

Hlavní okruhy (zde pro přehlednost tematicky sdružené, pořadí v rámci semestru se částečně liší):

1. pohled "pod kapotu" různých postupů využívaných při zpracování přirozeného jazyka

·         generování textu

·         morfologické značkování

·         klasifikace textu

2. seznámení s příkazovou řádkou, psaní programů pro příkazovou řádku

3. správa zdrojového kódu

·         organizace / strukturace delších programů, volba textového editoru

·         verzování (git, https://github.com/)

·         zveřejňování (free / libre / open-source software)

4. objektově orientované programování v Pythonu

·         tvorba vlastních nových typů objektů, tzv. tříd

·         jak poznat situace, kdy se vyplatí po těchto složitějších nástrojích sáhnout

 
Univerzita Karlova | Informační systém UK