Обработка естественного языка для анализа отзывов онлайн-покупателей

NLP

Цель использования обработки естественного языка в описываемом проекте — анализ обзоров на товары, оставленных онлайн-покупателями.

Я начал работу над этим проектом для достижения трех бизнес-целей:

  1. Найти основные компоненты рейтингов, используя неконтролируемое обучение для обработки естественного языка.
  2. Предсказывать рейтинг товара с помощью контролируемого обучения, основываясь на конкретных отзывах.
  3. Рекомендовать с помощью алгоритма схожести товары покупателям, основываясь на истории заказов.

Используем набор данных из Kaggle, предоставленный Datafiniti. Более 70,000 отзывов на 1,000 товаров от 58,000 уникальных покупателей.

Сфокусируемся на 2 колонках этого набора данных:

  • Рейтинг отзывов по шкале от 1 до 5.
  • Сам текст отзывов, в котором покупатели свободно описывают, что им понравилось или не понравилось в товаре.

Как распределяются рейтинги?
Большинство покупателей остались довольны, 86% из них ставят оценки 4 и 5.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Распределение рейтингов от 1 (крайне недоволен) до 5 (очень доволен).

Какие слова люди используют в своих отзывах?
В заголовках слова ‘великолепно’ и ‘здорово’ появляются довольно часто.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Облако слов для заголовков

Покупатели также много описывают ‘фильмы’ и ‘товар’, которые они купили. Довольно трудно классифицировать эти отзывы по осмысленным группам, используя неконтролируемое обучение.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Облако слов для текста описания

Далее я сосредоточился на 5% всех отзывов от пользователей, которые действительно купили товар — я оцениваю эти отзывы как более подлинные и весомые. В этом наборе данных более 3,680 таких отзывов, и теперь можно произвести некоторый анализ.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 20203,680 отзывов пользователей, купивших продукт

Я искал самый популярный товар, который покупали и оценивали чаще всего.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Топ-10 проданных продуктов

Это контейнеры для еды, заказанные почти 500 раз. Сам товар выглядит так:

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020

Я отфильтровал все рейтинги с оценкой 5 звезд, чтобы найти 3 причины, почему людям нравится этот товар, и произвел латентно-семантический анализ (ЛСА), используя модель Count Vectorizer, в основном подсчитывая частотность слов.

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

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020ЛСА неконтролируемой классификации в 3 темах с использованием Count Vectorizer

Как насчет плохих рейтингов? Я выполнил неотрицательное матричное разложение (НМР), используя TF-IDF Vectorizer, который придает больший вес редким словам.

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

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020НМР неконтролируемой классификации в 2 темах с использованием TF-IDF Vectorizer

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

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Облако слов из отзывов недовольных покупателей

Можно ли использовать машинное обучение для предсказания рейтинга товара на основе этих комментариев? Люди могут читать и понимать комментарии и соотносить их с рейтингами. Как насчет машин?

Я обучил и настроил несколько моделей, такие как логистическая регрессия, случайный лес и XGBoost, соотносить слова в описании с соответствующим рейтингом.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Модель логической регрессии предсказывает рейтинг с точностью в 73%

Также можно сделать и рекомендации товаров. Бизнес может рекомендовать товары, основываясь на истории покупок и рейтингах, оставленных покупателем.

Вот 3 похожих покупателя, в результате могут быть рекомендованы товары “пустого пространства”.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Рекомендация товаров “пустого пространства”

Например, “Джесс” купила несколько семейных фильмов. Применяя тот же алгоритм, модель рекомендует “похожие” фильмы — триллеры и анимационные фильмы. Бизнес может использовать эти результаты для стимулирования продаж.

Обработка естественного языка для анализа отзывов онлайн-покупателей — IT-МИР. ПОМОЩЬ В IT-МИРЕ 2020Рекомендации товара от модели машинного обучения

В итоге, обработка естественного языка может использоваться для:

  • описательной аналитики (неконтролируемое обучение);
  • предсказательной аналитики (контролируемое обучение);
  • нормативной аналитики (алгоритм схожести).

Код на Python описанного анализа доступны на моем GitHub.

Специально для сайта ITWORLD.UZ. Новость взята с сайта NOP::Nuances of programming