Современные средства компьютерной обработки текста позволили автоматизировать многие рутинные задачи лексикографов и терминологов. Помимо привычных программных средств, применяемых для вспомогательных задач прикладной лексикографии специалистами по составлению терминологических и других словарей, в решении таких задач может помочь язык программирования Python и его библиотеки, такие как NLTK (Natural Language Toolkit), pymorphy2, mystem и др. Python - один из самых распространенных и доступных в изучении языков программирования, который все шире применяется в прикладной лингвистике. Статья продолжает цикл публикаций, знакомящих практикующих лингвистов и лексикографов с Python и его возможностями для обработки текстов на естественном языке (natural language processing). Описываются техники, которые можно использовать для предварительной обработки текстов с целью последующего извлечения из них терминологии и составления терминологических словарей, в том числе для нужд письменного перевода. В настоящее время эта задача пересекается с использованием систем машинного перевода, в ряде которых реализована функция приоритетного использования пользовательского терминологического двуязычного словаря. Кроме того, некоторые из описанных приемов помогут извлечь информацию из больших корпусов текстов и проанализировать их содержание. В статье описывается порядок выполнения токенизации и лемматизации текста или корпуса текстов, приемы для выделения наиболее частотных лемм, рассматриваются разные подходы к поиску в тексте частотных словосочетаний методом нахождения n-грамм. Техники для автоматического нахождения потенциальных узкоспециальных терминов проиллюстрированы примерами из научно-технического текста. На материале художественного текста показаны методы анализа содержания, например, подсчет частотности определенных лемм в корпусе. Все приведенные примеры кода можно скопировать и запустить в облачной среде Google Colab без установки каких-либо программ на компьютер. Надеемся, что эти приемы облегчат повседневную работу лексикографов, а может быть, и побудят лингвистов к изучению языка Python.
Modern computer text processing tools have made it possible to automate many routine tasks of lexicographers and terminologists. In addition to the usual software used by terminologists for auxiliary tasks in composing terminological and other dictionaries, the Python programming language and its libraries (such as NLTK, pymorphy2, mystem and others) can help to solve such tasks. Python is one of the most widespread and accessible programming languages, more and more widely used in applied linguistics. This article continues the series of publications introducing practicing linguists and lexicographers to Python and its natural language processing capabilities. Techniques are presented that can be used to preprocess texts for the purpose of extracting terminology and compiling terminological dictionaries, including those for the needs of translation. Currently, this task intersects with the use of machine translation systems, some of which implemented the priority usage of a user’s terminological bilingual dictionary. In addition, some of the described techniques can help in the analysis of large corpora content. The article describes the tokenization and lemmatization of texts or corpora, methods of singling out the most frequent lemmas; different approaches to searching for frequent word combinations in a text by means of the n-gram finding are also discussed. Techniques for automatic finding of potential terms are illustrated by examples from a scientific news text. Content analysis techniques, such as frequency counting of specific lemmas in a corpus, are shown on the evidence taken from a fiction text. All the code examples can be copied and run in the Google Colab cloud environment without installing any software on the computer. We hope that these techniques will facilitate the everyday work of lexicographers and, perhaps, motivate linguists to learn Python.
Идентификаторы и классификаторы
- Префикс DOI
- 10.33910/2687-0215-2022-4-2-107-121
- eLIBRARY ID
- 59459717