Получить подарок - это просто ... текст майнинг
С помощью несложного текст майнинга можно узнать, за что дают подарки :)
Компания дарит своим клиентам подарки. Причины различны. И сотрудники компании вносят информацию о них в систему, данные которой хранятся на HADOOP.
Данных много и они не структурированы. Поэтому, для того чтобы выяснить какие слова (теги) чаще всего встречаются в причинах выдачи подарков, можно это сделать достаточно быстро и эффективно с использованием методов машинного обучения — Text Mining.
Так как данные хранятся в HADOOP — логично использовать библиотеки, которые для этого разработаны — PYSPARK ML.
Что нам нужно:
- Создать набор данных для текст майнинга.
- Обработать его с помощью библиотек PYSPARK ML.
- Визуализировать.
1. Создание набора данных для текст майнинга.
Подключимся к HADOOP через Python, используя библиотеки PySpark:
И создадим набор данных для текст — майнига:
2. Обработка набора данных с помощью библиотек PYSPARK ML
Загрузим необходимые библиотеки для текст майнинга:
Используем RegexTokenizer для разбиения текста на отдельные слова:
Определим функцию для нормализации (лемматизации) слов и исключения из текста стоп-слов.
Приведем слова в тексте к первоначальному виду и удалим стоп-слова:
Последний штрих: загрузим все слова в один DataFrame и сохраним в файл формата csv:
Таким образом, мы получили файл со всеми словами, которые были в текстах сообщений.
3. Визуализация результатов майнинга текста.
Для визуальной оценки воспользуемся стеком ElasticSearch — Kibana.
Загрузим полученный файл в индекс ElasticSearch, используя инструмент Kibana.
Для визуализации воспользуемся инструментом визуализации — облако тегов.
Видим: в облаке есть слова, которые не относятся к причинам: “Клиент”,”Подарок”.
Последний штрих: сделаем ручную настройку для исключения этих слов из облака тегов и добавим фильтры по эти словам:
Таким же образом можно исключить и другие теги, которые визуально не относятся к словам причин подарков.
Следующий этап – для смыслового текст майнинга причин получения подарков можно использовать преобразование текста в вектор (например: библиотека MUSE), но эта тема для отдельной статьи.
Как видите, не так много нужно действий и кода, чтобы узнать — получать подарки просто!