Внутри технологии — решение персонализации в Roblox — блог Roblox

Внутри технологии – Решение персонализации в Roblox – Блог Roblox

Исходный узел: 2902471

Внутри технологии это серия блогов, которая идет рука об руку с нашими Подкаст «Технические переговоры». Здесь мы более подробно рассмотрим ключевые технические проблемы, которые мы решаем, и поделимся уникальными подходами, которые мы применяем для этого. В этом выпуске Внутри технологии, мы поговорили со старшим техническим менеджером Мишель Гонг, чтобы узнать больше о том, как работа команды персонализации помогает пользователям Roblox находить впечатления, которые им понравятся. 


Какие технические задачи вы решаете?

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

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

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

Какие инновационные решения мы создаем для решения этих технических проблем?

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

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

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

Каковы ключевые выводы в результате выполнения этой технической работы?

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

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

Какая ценность Roblox, по вашему мнению, лучше всего соответствует тому, как вы и ваша команда решаете технические проблемы?

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

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

Что вас больше всего волнует в том, куда движутся Roblox и ваша команда? 

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

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


Если это похоже на задачи и возможности, которые вы хотите реализовать, ознакомьтесь с нашими доступными вакансиями. roblox.com/карьера.

Отметка времени:

Больше от Roblox