GithubHelp home page GithubHelp logo

made23-recsys's Introduction

Рекомендательные Системы в Продакшене

Лекции

Слайды лекций лежат в папке slides.

Практика

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

Prerequisites

  • Установить docker
  • Сделать virtualenv c python (я использую версию 3.7)
  • Вспомнить как пользоваться вашей любимой средой разработки (я использую PyCharm)

Общее описание задачи

Пользователи приходят в музыкальный сервис botify, чтобы послушать музыку. Сперва пользователь сам выбирает начальный трек. Когда пользователь прослушал этот трек, сервис рекомендует следующий. Пользователь может послушать рекомендованный трек или скипнуть его и перейти к следующему. Либо пользователю может надоесть и он уйдет. Как поступит пользователь зависит от качества рекомендаций: если они плохие - пользователь быстро уйдет; если хорошие – "залипнет". Последовательность прослушанных пользователем треков мы будем называть "сессией". На диаграмме ниже показан процесс одной сессии.

Взаимодействие пользователя с рекомендером botify

Цель сервиса botify – максимально долго удерживать пользователя. Возможно, мы зарабатываем на рекламе или просто хотим набрать аудиторию. Сервис меряет процент прослушки каждого трека из сессии и суммирует эти проценты, чтобы получить общую длину сессии (пренебрегаем тем, что треки могут длиться разное время – обычно песни длятся около 3 минут). Качество рекомендаций напрямую влияет на то, сколько треков послушают пользователи и какой будет процент их прослушки. Следовательно качество рекомендаций влияет на длину сессии и на успех всего сервиса в целом.

Что есть в репозитории

botify

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

Описание и инструкции

sim

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

Описание и инструкции

jupyter

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

made23-recsys's People

Contributors

den4s avatar anokhin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.