Мы почти всегда работали с числовыми наборами данных в наших стандартных задачах машинного обучения/науки о данных. Всякий раз, когда мы сталкивались со столбцом с текстовыми данными, мы всегда преобразовывали его в числовые данные, используя методы предварительной обработки данных, такие как горячее кодирование и кодирование меток.

Давайте представим, что у нас есть набор данных с простыми текстовыми данными, и мы хотим предсказать, какие комментарии в Твиттере хорошие, а какие плохие; очевидно, что кодирование меток в этом наборе данных невозможно. В результате в этом случае мы используем обработку естественного языка (NLP).

Обнаружение спама в Gmail является наиболее распространенным применением обработки естественного языка. Библиотека nltk с открытым исходным кодом является самой простой и эффективной библиотекой НЛП. Токенизация — важная концепция в НЛП, ее можно выполнить с помощью библиотеки nlkt.

Что такое токенизация?

Токенизация — это процесс преобразования абзаца в предложения или слова. Давайте посмотрим, как именно мы можем выполнить токенизацию.

Прежде всего нам нужно установить библиотеку nltk.

Затем импортируйте библиотеку nltk и загрузите все пакеты из библиотеки nltk.

В этом случае я создал переменную с именем «para», в которой я сохранил речь, произнесенную MS Dhoni после того, как мы выиграли чемпионат мира. Теперь мы будем использовать токенизацию, чтобы превратить этот абзац в предложения и слова.

Теперь мы превратим абзац в предложения, используя функцию «nltk.sent tokenize()». Для преобразования абзаца в слова мы использовали функцию nltk.word_tokenize()».

Что такое стемминг и лемматизация?

Поисковые системы и чат-боты используют стемминг и лемматизацию для определения значения слова. Стемминг использует основу слова, а лемматизация использует контекст, в котором используется слово.

Например, у нас есть следующие слова test, testing, tester. Когда мы применяем к этим словам основу, она преобразуется в tes.

Использование стемминга

Наиболее важным компонентом в таких предложениях или комментариях при выполнении сентиментального анализа, обнаружении спама по электронной почте или идентификации комментариев ненависти является слово STEM, поэтому мы можем в основном судить о том, является ли это конкретное слово положительным или отрицательным, используя слово STEM. В связи с этим требуется стемпинг.

Теперь давайте разберемся, что такое лемматизация.

Лемматизация делает то же самое, что и стемминг, но главное отличие состоит в том, что при лемматизации мы получаем осмысленный вывод, понятный людям. Например, у нас есть следующие слова test, testing, tester, когда мы применяем лемматизацию к этим словам, они преобразуются в test.

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

Как обсуждалось ранее, определение основы можно применять для сентиментального анализа и обнаружения языка ненависти, потому что в этих случаях нам просто нужно определить основу слова. Напротив, лемматизация используется в чат-ботах, поскольку ответ, который человек получает от чат-бота, должен быть осмысленным.

В следующих блогах я объясню часть реализации стемминга и лемматизации.

Если вам понравилась эта статья, поделитесь ею с друзьями и коллегами!