Боты научились узнавать число реальных пользователей одного аккаунта

facebook-offers-choices-ender-identity-fun1

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

22eYN1SM65A1

Распределения разности рейтингов двух пользователей одного аккаунта относительно средней гиперплоскости в нескольких случаях. Изображение: препринт

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

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

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

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

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

В математической статистике известно большое количество методов разделения таких выборок. Эта задача известна как кластерный анализ. В частности, авторы работы использовали EM-метод, метод К-средних и метод главных компонент. С точки зрения машинного обучения все этим методы представляют собой «обучение без учителя», то есть правильный ответ на вопрос «Сколько пользователей у данного аккаунта?» никогда не известен. Можно лишь статистически определить, разбиваются ли все рейтинги данного аккаунта на несколько групп или нет.

По результатам работы ученые показали, что более чем в 60 процентах случаев при критерии ошибки p=0,05 им удавалось правильно определить «двойные», «тройные» и так далее аккаунты. (Для проверки использовались независимые данные.)

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