Если наш алгоритм находит какую-то аномалию в отзывах, тип найденной аномалии записывается в score. Ниже будут даны пояснения к каждой из них.
Более подробный результат можно получить скачав консольную утилиту из репозитория и запустив ее с ключом --explain.
Все примеры, которые даны ниже - условны, они верны только на момент написания этого текста и при тех параметрах, которые использовались в этот момент. Любой новый отзыв может немного изменить ситуацию.
Алгоритм устанавливает связи между компаниями через отзывы. Если достаточно много пользователей оставляли отзывы на какую-то другую компанию - эта пара называется "связью".
Связи между компаниями - это обычное дело, например, большинство популярных организаций Новосибирска имеют связи с другими такими же популярными огранизациями. Аудитория посетителей новосибирского зоопарка так же оставляет много отзывов на аэропорт Толмачево, крупные ТРЦ, аквапарк, оперный театр, набережную и планетарий.
Количество (процент) посетителей, которые попали в "опасную связь".
Опасной (по этому критерию) является связь, где обе компании оценены слишком высоко (выше порогового значения). Например, связь между Зоопарком и планетарием - относится к опасным на момент написания этого текста (обе компании имеют высокий рейтинг 4.9 внутри этой связи).
Опасная связь может объясняться двумя причинами - либо просто посетителям очень нравятся оба заведения, либо одна ботоферма используется для накрутки рейтинга обоих заведений.
Количество посетителей зоопарка, которые попали в эту опасную связь - всего 3% (иногда банан - это просто банан), это гораздо ниже порогового значения, поэтому отзывы помечены как надежные.
Большое количество связей с огранизациями с таким же наименованием. Например, если аудитория организации "Дворец маникюра Ингеборга" не ходят в зоопарк, планетарий, ТРЦ, кинотеатры, бары, рестораны, аэропорты, винные магазины, библиотеки, даже не ходят в "Студию красоты Фекла", но активно ходят исключительно в другие заведения с названием "Дворец маникюра Ингеборга".
Чем больше опасных связей с одинаковыми наименованиями - тем выше риск.
Большое количество "длинных" связей (между городами). Почти всегда аудитория заведения в одном городе активно ходит в заведения в том же городе, и гораздо реже в заведения в других городах. При этом ботофермы часто работают по всем городам (держать отдельный "парк" ботов для каждого города - дорого и сложно).
Чем больше городов задействованы в опасных связях, тем выше риск. Тонкий момент: например, для новосибирского аэропорта Толмачево (г. Обь, спутник Новосибирска), много связей ведут в "другой город", в Новосибирск. Но связей много, а всего городов - два, так что, все ОК.
Даже такие организации как ЖД вокзал и аэропорты - успешно проходят по этому критерию.
Медианный "возраст посетителя" меньше порогового значения. Под возрастом мы понимаем разницу между первым отзывом посетителя и конкретным отзывом на эту компанию. Таким образом, у каждого посетителя есть один отзыв с возрастом 0 дней, а отзывы оставленные позже - имеют более высокий возраст.
Алгоритму кажется подозрительным если большое количество отзывов на заведение оставлено пользователями, которые только начали оставлять отзывы.
Так как "возраст" - это разница между датой этого отзыва и датой первого отзыва, эта величина не изменяется со временем.
Для ориентира - медианный отзыв посетителя крупного популярного ТРЦ - 200 дней, вокзала Новосибирск-Главный - 150 дней, зоопарка - 374 дня.
Важно: алгоритм использует именно медианное, а не среднее значение. Если у заведения есть два отзыва с возрастом 90 и 100 дней и придет новый посетитель и оставит свой первый отзыв (с возрастом 0 дней), медианное значение изменится очень незначительно, с 95 до 90.
Медианное количество отзывов от посетителя ниже порогового значения. Это характерно для ботов, которых заводят для раскрутки (особенно, если завели недавно).
Как и все критерии - отдельный посетитель очень незначительно влияет на этот показатель, берется медианное значение.
Доля "пустых" пользователей, которые алгоритм не смог исследовать. Алгоритм отбрасывает отзывы от:
Некоторое количество пустых пользователей - это нормально, но слишком большое означает, что оценка заведения определяется отзывами, надежность которых мы не можем проверить. Пожалуй, этот критерий меньше всего указывает на накрутку, скорее он означает "Возможно, отзывы верны, возможно накручены, но важные данные от нас по какой-то причине скрыты. Утверждать о надежности отзывов невозможно.".