Skip to content
This repository has been archived by the owner on May 16, 2024. It is now read-only.

[HW2] Рачкин Владимир Сергеевич #7

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

robozmey
Copy link

@robozmey robozmey commented Apr 14, 2024

HW2

Abstract

Взять бейзлайновый DSSM (recommendations_dssm) и накрутить на него какую-нибудь интересную эвристику.

Если слушателю понравился трек из топ-100, значит он точно не хейтер мейнстримной музыки и если в рекомендациях от DSSM есть, что-то из топа, то порекомендуем.

Детали

В файле custom.py реализовал класс CustomRecommender. Мы просто берём случайны трек из рекомендаций от DSSM

Просто идём по рекомендациям от DSSM. Если слушатель прослушал 80% трека из топ-100, порекомендуем ему трек от DSSM который есть в топ-100.

В файле server.py добавили наш рекомендер к остальным

Результаты A/B эксперимента

table

Как повторить эксперимент

Повтор

В репозиторий уже загружены результаты в файле cache/botify-recommender-1/data.json. Можно сразу перейти к просмотру

# Запускаем Botify (Нужно немного подождать пока запуститься
cd botify
docker-compose up -d --build --force-recreate --scale recommender=1
# Запускаем симуляцию
cd ../sim
python -m sim.run --episodes 2000 --config config/env.yml single --recommender remote --seed 31337
cd ..
# Чистим кэш
rm -rf cache
# Сохраняем результаты
python ./script/dataclient.py --recommender 1 log2local ./cache/
# Останавливаем Botify
docker-compose stop

Просмотр

Для просмотра результатов смотрим Week 1 Seminar.

T4 - бейзлайн (DSSM). T7 - наша эвристичка.

@robozmey robozmey changed the title Рачкин Владимир Сергеевич [HW2] Рачкин Владимир Сергеевич Apr 15, 2024
Copy link
Owner

@anokhin anokhin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Здравствуйте, спасибо за ваше решение!

Идея хорошая, но у вас неправильно заведен A/B эксперимент:
нужно сравнить ваш рекомендер (тритмент) с лучшим из семинаров (контроль), а не со всеми.
Предлагаю вам 0.8 за это задание, либо пришлите таблицу с корректным сравнением и получите полный балл.

Соображения, которые не влияют на оценку:

  1. По сравнению с семинарами у вас несколько изменений: (1) сортировка скоров dssm (2) эвристика с топом треков.
    Было бы интересно рассмотреть их отдельно - возможно, какое-то из них не нужно.

Если вы согласны с баллом, закройте, пожалуйста, пулл реквест, но НЕ МЕРЖИТЕ его. Если есть вопросы, приходите в личку.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants