Мы почти всегда работали с числовыми наборами данных в наших стандартных задачах машинного обучения/науки о данных. Всякий раз, когда мы сталкивались со столбцом с текстовыми данными, мы всегда преобразовывали его в числовые данные, используя методы предварительной обработки данных, такие как горячее кодирование и кодирование меток.
Давайте представим, что у нас есть набор данных с простыми текстовыми данными, и мы хотим предсказать, какие комментарии в Твиттере хорошие, а какие плохие; очевидно, что кодирование меток в этом наборе данных невозможно. В результате в этом случае мы используем обработку естественного языка (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.
Итак, как видно из приведенного выше изображения, фундаментальное различие между стеммингом и лемматизацией заключается в том, что в стемминге представление слов не имеет значения, тогда как в лемматизации представление слов имеет какое-то значение.
Как обсуждалось ранее, определение основы можно применять для сентиментального анализа и обнаружения языка ненависти, потому что в этих случаях нам просто нужно определить основу слова. Напротив, лемматизация используется в чат-ботах, поскольку ответ, который человек получает от чат-бота, должен быть осмысленным.
В следующих блогах я объясню часть реализации стемминга и лемматизации.
Если вам понравилась эта статья, поделитесь ею с друзьями и коллегами!