Персонализация контента наших викторин
Введение в рекомендательные системы и проблемы персонализации игрового опыта.
Автор Федерико Шеффлер, специалист по данным в etermax
Большинство пользователей цифровых платформ сознательно или бессознательно используют рекомендательные системы для персонализации контента.
Рекомендательные системы включают в себя набор инструментов, используемых для сегментации пользователей и предоставления им рекомендаций по продуктам или контенту на основе их предпочтений. В настоящее время персонализация контента варьируется от порядка каналов социальных сетей, таких как Instagram и TikTok [1,2], до редакционных списков воспроизведения Spotify, где контент немного различается от пользователя к пользователю [3]. Использование систем рекомендаций по контенту снижает информационную перегрузку пользователей, предлагая короткий, но гораздо более персонализированный опыт.
В этой статье мы представим рекомендательные алгоритмы, рассмотрим тип информации, необходимой для создания рекомендательной системы, и кратко опишем, как мы можем использовать их в таких играх, как Trivia Crack, для организации сервера контента. В качестве примера возьмем применение этих систем в игре Trivia Crack Adventure.
Данные, данные, данные
Рекомендательные системы используют алгоритмы машинного обучения, которые определяют возможные предпочтения на основе отзывов пользователей о различных элементах или фрагментах контента. Для игр с тематическими вопросами, таких как Trivia Crack Adventure, интересно найти наиболее актуальные темы или темы для пользователей, основанные на их игровом опыте.
Самая основная и необходимая часть для запуска рекомендательной системы — доступность пользовательских данных. То, что позволяет нам определять предпочтения пользователей, — это не современные алгоритмы или большие распределенные устройства обработки, а данные. Существуют разные способы сбора сигналов о предпочтениях — или отзывов — от пользователей. В зависимости от типа сигнала их можно разделить на:
Явная обратная связь. Получается, когда пользователи напрямую демонстрируют свои предпочтения в отношении элемента или фрагмента контента. Этот тип обратной связи обычно используется в сервисах, где пользователи могут любить или не любить товары или оценивать те, которые они уже потребляли, по шкале. Тем не менее, большое количество пользователей не дают явных отзывов, если они не чувствуют себя полностью удовлетворенными или неудовлетворенными. По этой причине явная обратная связь недоступна массово и не является предпочтительным выбором для многих приложений.
Скрытая обратная связь. Возникает в результате действий и взаимодействий пользователей. Он включает в себя такие сигналы, как история просмотренных и использованных элементов, время, затраченное на взаимодействие с частью контента, и количество раз, когда пользователь выбирал элементы из определенной категории, среди прочего. Этот тип обратной связи не требует дополнительного участия пользователей, поскольку он построен на тщательном отборе доступных сигналов.
Наши викторины не являются исключением из правил, и уровень использования функций лайков очень низок. Тем не менее, у нас все еще есть много информации о взаимодействии между пользователями и викторинах. Чтобы определить и количественно оценить сходство пользователей с темами, мы придумали коэффициент сходства, который учитывает следующие факторы для каждой пары пользователь-тема:
- Количество отвеченных вопросов
- Степень успеха
- Средняя сложность ответов на вопросы
- Количество викторин на тему
- Популярность вопросов
Этот показатель позволяет нам определять предпочтения пользователей на основе их знаний, что дает нам множество возможностей для персонализации их опыта.
Создание рекомендаций с помощью совместной фильтрации
Существует два основных подхода, которые можно комбинировать для создания рекомендаций: фильтрация на основе содержимого и совместная фильтрация.
Контентная фильтрация основана на построении профилей элементов, содержащих их основные характеристики, а также профилей пользователей на основе элементов, получивших положительные отзывы. Эта информация используется для того, чтобы рекомендовать пользователям товары, похожие на те, которые им ранее нравились. Этот тип рекомендательной системы является очень эффективным средством для понимания предпочтений пользователей и предоставления рекомендаций на основе их сходства с другими элементами. Однако это не лучший подход, если наша цель — рекомендовать товары или контент, который сильно отличается от того, что потреблял пользователь. В таких играх, как Trivia Crack, пользователи отвечают на случайные вопросы, и мы должны определить контент, который может быть им интересен, еще до того, как они ответят на вопросы, относящиеся к этим темам. Из-за этого мы не выбираем контентный фильтр для первой итерации рекомендательной системы.
Совместная фильтрация, с другой стороны, основана на предпосылке, что мы можем идентифицировать элементы, которые могут понравиться пользователю, на основе предпочтений других пользователей. Собираются предыдущие предпочтения пользователя, и рекомендации делаются на основе элементов, которые выбрали другие пользователи с такими же интересами. В викторинах мы можем определить возможные темы, представляющие интерес для нового пользователя, на основе тем, которые нравятся похожим пользователям. Например, если пользователь проявил близость к вопросам о Древнем Египте, мы, безусловно, могли бы порекомендовать темы, которые понравились многим другим пользователям, имеющим близость к Древнему Египту. В то же время мы можем рекомендовать темы, которые понравились только некоторым пользователям, проявившим интерес к Древнему Египту, например, Кошки или Флаги.
Одно из основных преимуществ совместной фильтрации заключается в том, что она позволяет нам предвидеть предпочтения пользователей в отношении предметов, которые сильно отличаются от тех, которые они обычно потребляют, облегчая, а иногда и заставляя проводить управляемое исследование. Дополнительным преимуществом является то, что нам не нужно заранее знать предпочтения пользователей.
На практике сигналы близости не всегда бывают в форме симпатий или антипатий. Нашему рекомендателю темы обратная связь приходит в виде оценки сходства, описанной ранее. Как правило, большинство пользователей взаимодействуют только с небольшим набором элементов, поэтому диаграмма или матрица взаимодействия пользователя и элемента обычно пуста. С математической точки зрения матрица взаимодействия принимает форму большой разреженной матрицы, пропорциональной количеству пользователей и элементов.
Существует множество алгоритмов совместной фильтрации для получения рекомендаций из матрицы взаимодействия. Алгоритмы на основе моделей представляют сложные взаимодействия пользователя и продукта с помощью меньших матриц. С помощью методов матричной факторизации [4] информация, содержащаяся в матрице взаимодействия, сжимается в более мелкие матрицы с сохранением наиболее важных характеристик. Таким образом можно представить шаблоны сходства сотен тысяч пользователей и элементов с меньшими вычислительными затратами.
Мы стремимся давать рекомендации по контенту для всей базы активных пользователей наших приложений, если возможно определить темы, которые нравятся этим пользователям. Количество элементов исчисляется сотнями, поэтому создание рекомендательной системы не требует больших вычислительных затрат.
Проверка рекомендаций
Учитывая отсутствие явных отзывов пользователей о контенте, которым они увлечены, оценить эффективность системы рекомендаций по контенту сложно. Что касается точности и отзыва, следует использовать разработанную нами метрику сходства, определенную выше, что может привести к чрезмерной корректировке наших рекомендаций по этому критерию. Однако использование совместной фильтрации позволяет нам убедиться, что рекомендуемый контент имеет смысл с точки зрения темы, по крайней мере, на первый взгляд.
Есть много вопросов, на которые нельзя ответить, запустив тесты с обучающими данными. Нравится ли пользователям отвечать на вопросы, относящиеся к схожим темам? Улучшаем ли мы пользовательский опыт в среднесрочной и долгосрочной перспективе? Как мы влияем на экономику игры и бизнес? Мы можем убедиться, что персонализация контента улучшает взаимодействие с пользователем и не оказывает негативного влияния на бизнес, проводя A/B-тесты [5]. К счастью, у наших приложений достаточное количество пользователей, что позволило нам провести A/B-тестирование, прежде чем внедрять функции персонализации в больших масштабах. Внедрение сервера персонализированных тем в приложении Trivia Crack Adventure привело к увеличению коэффициента удержания на 7-й день примерно на 6% без негативного влияния на показатели дохода.
Предстоящие задачи
На платформах электронной коммерции и потоковой передачи пользователи ищут и выбирают контент или предметы, которые они хотят потреблять. В большинстве игровых режимов etermaxвикторины пользователи должны отвечать на случайные вопросы. Ведь это соревнование! Затем пользователи становятся пассивными потребителями и реагируют только на тот контент, который им показывают. Выявление и интерпретация неявной обратной связи от пользователей является ключом к построению лучших моделей сходства с контентом.
Кроме того, методы, основанные на коллаборативной фильтрации, создают некоторые трудности, когда речь идет о прогнозах для новых пользователей. Это называется проблемой холодного запуска. В игровой индустрии коэффициент удержания относительно низок, поэтому чрезвычайно важно произвести хорошее первое впечатление и сделать это быстро. Учитывая большое разнообразие тем вопросов в Trivia Crack и Trivia Crack Adventure, необходимо оптимизировать начальный опыт, чтобы убедиться, что пользователи знакомятся с широким кругом тем.
Еще одна проблема — вывести персонализацию на новый уровень. Как мы можем персонализировать набор вопросов, на которые пользователь отвечает во время викторины? Экстраполяция рекомендаций из пары сотен тем на сотни тысяч вопросов повлечет за собой множество технических проблем. На игровом уровне также необходимо найти баланс между тематической персонализацией и уровнем сложности простых вопросов, чтобы наши игры оставались сложными.
Мы надеемся поделиться тем, как мы справились с этими проблемами, и нашим прогрессом в персонализации контента в течение этого года.
[1] https://newsroom.tiktok.com/en-us/how-tiktok-recommends-videos-for-you
[2] https://about.instagram.com/blog/tips-and-tricks/control-your-instagram-feed
[3] «https://newsroom.spotify.com/2021-10-13/adding-that-extra-you-to-your-discovery-oskar-stal-spotify-vice-president-of-personalization-explains- как это работает/"
[5] https://medium.com/etermax-technology/ab-testing-for-better-decision-making-12b56bd9e5e1