Языковая обработка и Python

НЛТК

NLTK означает набор инструментов для работы с естественным языком.

Этот набор инструментов с открытым исходным кодом является одной из самых мощных библиотек обработки естественного языка, которая содержит пакеты, позволяющие машинам понимать человеческий язык.

Он содержит библиотеки обработки текста для токенизации, синтаксического анализа, классификации, выделения корней, тегов и семантических рассуждений на высоком уровне, но также имеет следующие полезные методы, которые пригодятся при обработке языка.

Согласие (токен):

Представление Concordance показывает нам каждое вхождение данного слова вместе с некоторым контекстом.

В этом посте я буду использовать примеры nltk.book для демонстрации.

Аналогично (токен):

Аналогично показывает слова, которые вероятны для данного токена в данном тексте.

text2.similar("affection")
#attention time regard mother love heart opinion sister wishes wife
arrival marianne kindness family it marriage sisters sake conduct mind

Concordance(token) предоставляет вам контекст, в котором токен используется в данном тексте. Similar(token) предоставляет вам другие слова, которые появляются в подобном контексте в данном тексте.

Общие_контексты ([токен1, токен2]):

Common_contexts показывает контекст, общий для 2 или более слов в данном тексте.

text2.common_contexts(["affection", "kindness"])
#the_of his_and his_was and_to of_and her_and

Здесь вывод «the_of» означает, что мы найдем слова «привязанность» и «доброта» в таких контекстах, как «привязанность» и «доброта». поэтому «the_of» — это общий_контекст для обоих слов в этом тексте.

Dispersion_plot (токены)

Диаграмма дисперсии — это мера распределения слова по частям корпуса. Этот график показывает вхождение слова и важность слов в данном тексте.

Здесь каждая полоса представляет экземпляр слова, а каждая строка представляет весь текст.

Генерировать()

Generate печатает случайный текст, сгенерированный с использованием языковой модели триграмм. Это означает, что NLTK создал модель N-грамм для данного текста, подсчитывая каждое вхождение последовательностей из трех слов.

Считать (токен)

Count подсчитывает количество вхождений токена в данный текст.

text2.count('affection')
#79

Расст.частот (текст)

FreqDist дает количество вхождений каждого словаря в тексте. most_common() используется для получения общих слов на основе вхождения, а hapaxes() используется для повторного поиска редких слов на основе вхождения.

Словосочетания ()

Коллокации — это фразы или выражения, состоящие из нескольких слов, которые с большой вероятностью могут встречаться одновременно. Например — «социальные сети», «красное вино» и т. д.

Вот и все, ребята! Это основные материалы NLTK, которые пригодятся для базовой языковой обработки, поэтому добавьте этот пост в закладки и используйте их с пользой.

Ресурсы:

https://www.nltk.org/book/ch01.html