Пять звёзд за деньги: как ML вычисляет фейковые отзывы и накрутку рейтингов

Рассказываем, почему поиск фейковых отзывов стал задачей машинного обучения и как мы в Wildberries с ними боремся.

Обложка: Пять звёзд за деньги: как ML вычисляет фейковые отзывы и накрутку рейтингов

Каждый день на маркетплейсах появляются миллионы отзывов — именно на них опираются пользователи при выборе товара. Покупатели смотрят на рейтинг, отзывы (особенно с фотографиями) и принимают решение, нажать на кнопку «Заказать» или нет.

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

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

Почему одной модерацией уже не обойтись

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

Но с ростом объемов данных контролировать этот процесс вручную стало сложнее. Ежедневно на товары WB приходит около 4-5 млн отзывов, из которых не менее 3-5% являются фейковыми — рынок накруток сейчас весьма активный.

Даже если взять минимальную оценку в 3%, получается, что мы говорим о 120-150 тысячах потенциально фейковых отзывов каждый день.

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

В крупных иностранных компаниях обстановка не менее сложная из-за большего количества пользователей по всему миру. Так, Amazon в 2025 превентивно заблокировали сотни миллионов аккаунтов — для этого их системы анализируют тысячи точек данных и подтягивают отзывы начиная аж с 1995 года, чтобы обнаружить фейки и оскорбительный контент.

Поддельные отзывы можно отнести к тому же классу задач, как и мошеннические банковские операции, фрод в рекламе и подозрительные действия в онлайн-играх — все это fraud detection.

Но в отличие от банковских транзакций, где информация не содержит графики и медиа, отзывы включают в себя:

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

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

Но на практике такой подход практически не работает. Во-первых, не все пользователи пишут текст — просто ставят от 1 до 5 звезд. Во-вторых, ChatGPT и другие модели уже давно научились создавать человекоподобные отзывы. И в-третьих, пользователь может искренне написать о товаре в стиле ИИ.

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

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

Так, модель должна не только отличать красивый отзыв от «так себе написанного», а анализировать опыт покупки и попытку искусственно повлиять на рейтинг.

Один анализ текста сам по себе не поможет в понимании, фейковый отзыв или нет.

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

Поэтому вопрос «фейк или не фейк» в меньшей степени решается одной лишь модерацией текста и уж тем более единственной ML-моделью.

Как работают наши ML-модели

В Wildberries одновременно работают более 20 моделей, которые ищут фейковые отзывы о товарах. Можно сказать, что это своеобразный оркестр, где агенты отвечают за анализ определенных паттернов и разных аспектов данных.

Саму работу можно разделить на два этапа:

Предмодерация

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

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

Постмодерация

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

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

Про оценку качества моделей

В Wildberries качество решений оценивается сразу на нескольких уровнях.

Часть метрик считается автоматически, однако финальное понимание того, насколько хорошо система распознаёт мошенничество, невозможно получить без ручной проверки.

На регулярной основе асессоры просматривают отзывы на предмет поиска подозрительных факторов фейкового отзыва. Таким образом мы можем быстро найти узкие места в нашей системе. Более того, у нас есть эксперты-асессоры и детективы, которые обладают большей экспертизой и рассматривают более сложные кейсы.

Как мы уже говорили, ежедневно поступает 4-5 млн новых отзывов — их нужно провалидировать очень быстро на этапе премодерации. Затем на постмодерацию приходит столько же и даже больше оценок — их нужно рассмотреть повторно. Таким образом, каждый день мы анализируем не менее 10 млн отзывов на предмет фейка.

Немного философии: что хуже — пропустить фейк или скрыть настоящий отзыв?

С точки зрения машинного обучения это классическая задача управления ошибками двух типов:

  1. False Positive — ложное срабатывание. Система решила, что отзыв фейковый, хотя он был настоящим.
  2. False Negative — пропуск. Система оставила фейковый отзыв, посчитав его настоящим.

Каждая ошибка системы несет свои риски. Представим отзыв с низкой оценкой.

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

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

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

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

Почему рейтинг — не равно честность

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

Аномалию по рейтингу в моменте отловить невозможно, нужно смотреть на множество факторов. У товара может быть рейтинг 5.0, и это будет абсолютно честный рейтинг.

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

Почему графы видят то, чего не замечают простые модели

Сейчас фрод редко выглядит как 10 одинаковых отзывов с разных аккаунтов. Чаще это сети пользователей, которые координируют свои действия: покупают товары одного поставщика, публикуют отзывы с похожей динамикой или искусственно повышают рейтинг новых карточек. По отдельности каждый аккаунт может выглядеть вполне обычным, но вместе они образуют характерную структуру.

Именно поэтому в систему подключаются графовые алгоритмы.

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

Вместо привычной таблицы с признаками граф представляет данные в виде сети. Вот пример графа, который показывает связи мошенников:

Пять звёзд за деньги: как ML вычисляет фейковые отзывы и накрутку рейтингов_51
Пример графа, который показывает связи мошенников

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

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

Для выявления таких сценариев есть несколько подходов:

  • Community detection — поиск сообществ связанных пользователей.
  • Graph anomaly — поиск нетипичных структур графа: появление связей, повторяющиеся паттерны поведения, плотные кластеры.
  • Link prediction + графовые нейросети — превентивное выявление скрытых связей между аккаунтами.
Анализ поведения пользователей на основе графа позволяет посмотреть на тех же пользователей, но с другой стороны. Это сильно упрощает анализ и позволяет находить более сложные слаженные структуры.

По сути, классическая ML-модель анализирует подозрительность в поведении пользователя, а граф, наоборот, естественность его поведения в сравнении с другими аккаунтами. Таким образом мы выявляем схемы, которые невозможно заметить при анализе отдельно взятых отзывов.

Вместо заключения: закончится ли борьба с фейками и что дальше

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

Так, когда научились выявлять одинаковые тексты, появились перефразы, а анализы аккаунтов привели к развитию сетей пользователей. Поэтому сейчас современные системы строятся не вокруг идеального детектора, а объединяют несколько подходов: NLP, анализ поведения, графы и так далее.

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

Рекомендуем