NLP
Section outline
-
NLP: příprava dat
Jako humanitní vědci jsme často fascinováni různými vizualizacemi textů, jako jsou dnes populární tag-cloudy. Někdy však máme tendenci zapomínat, co vše se za takovými vizualizacemi skrývá, že než je možné vytvořit atraktivní vizualizaci, je potřeba textová data zpracovat. Při tom nám může pomoci rozsáhlá výzkumná oblast na pomezí lingvistiky a informatiky, která se zabývá zpracováním přirozeného jazyka (anglicky natural language processing, proto zaužívané NLP). V rámci první přednášky k tomuto tématu se zaměříme na samotné základy zpracování textových dat. Ukážeme se, co obnáší jejich normalizace. Vysvětlíme si význam procedur, jakými jsou tokenizace, lemmatizace a filtrování tzv. stop-slov, přičemž se budeme opírat o terminologii standardizovanou v rámci NLP (Jurafsky & Martin, 2017, zejména kap. 2.3; Perkins, 2014, kap. 1 a 2). V praktické části si ukážeme, jak uplatnění takových procedur vypadá, když pomocí nich zpracováváme např. textová data v klasických jazycích, jako je latina či řečtina, za využití knihovny CLTK pro Python.
NLP: Analýza
Máme-li textová data před-připravená, můžeme s nimi zahájit první kvantitativní analytické operace. Vysvětlíme si, jaký význam v tomto ohledu zaujímají metriky frekvenční distribuce. Představíme si model textových dat “bag-of-words”, který textová data nahlíží redukovaně jako množinu základních tvarů všech slov použitých ve vybraném textovém dokumentu doplněnou o jejich frekvenci (viz Manning, Raghavan, & Schütze, 2008, s. 107-108). Ukážeme si, jak je pomoci tohoto jednoduchého modelu možné srovnávat mezi sebou různé dokumenty, a tak usuzovat např. na autorství daných dokumentů (např. sporných děl připisovaných určitému autorovi) (viz Riddell, kap. Working with Texts). Dále si představíme některé základní podoby funkce tf-idf, které naopak umožňuje odkrýt distinktivní rysy jednotlivých dokumentů (Manning, Raghavan, & Schütze, 2008, s. 116-118; Ramsay, 2011, s. 11-17). Nakonec si nastíníme, jak vypadají dnes v rámci digital humanities stále populárnější metody modelování témat (Brett, 2012). V praktické části si vyzkoušíme webovou aplikaci Voyant Tools (Sinclair & Rockwall, 2018).
Rozšiřující literatura
- Blei, D. M. (2012). Topic Modeling and Digital Humanities. Journal of Digital Humanities, 2(1).
- Bird, S., Klein, E., & Loper, E. (n.d.). Natural Language Processing with Python – Analyzing Text with the Natural Language Toolkit [online e-kniha]. Dostupné z: http://www.nltk.org/book/.
- Brett, M. R. (2012). Topic Modeling: A Basic Introduction. Journal of Digital Humanities, 2(1).
- Jockers, M. L., & Mimno, D. (2013). Significant themes in 19th-century literature. Poetics, 41(6), 750–769. https://doi.org/10.1016/j.poetic.2013.08.005Jurafsky, D., & Martin, J. H. (2017). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition (Third Edition Draft).
- Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to Information Retrieval. Cambridge: Cambridge University Press.
- Meeks, E., & Weingart, S. B. (2012). The Digital Humanities Contribution to Topic Modeling. Journal of Digital Humanities, 2(1), 2–6. https://doi.org/10.1613/jair.301
- Mohr, J. W., & Bogdanov, P. (2013). Introduction-Topic models: What they are and why they matter. Poetics, 41(6), 545–569. https://doi.org/10.1016/j.poetic.2013.10.001
- Perkins, J. (2014). Python 3 Text Processing with NLTK 3 Cookbook: Over 80 practical recipes on natural language processing techniques using Python’s NLTK 3.0. Birmingham - Mumbai: Packt Publishing (open source).
- Ramsay, S. (2011). Reading Machines: Toward and Algorithmic Criticism. Urbana - Chicago - Springfield: University of Illinois Press.
- Riddell, A. (n.d.). Text Analysis with Topic Models for the Humanities and Social Sciences [soubor online tutoriálů]. Dostupné z: https://de.dariah.eu/tatom/index.html#text-analysis-with-topic-models-for-the-humanities-and-social-sciences
- Sinclair, S., & Rockwell, G. (2018). Voyant Tools [webová aplikace]. Dostupné z: https://voyant-tools.org/