Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

solved task #171

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

solved task #171

wants to merge 1 commit into from

Conversation

trojanof
Copy link

Привет. Тут ноутбук с выполненным тестовым заданием.

{
"data": {
"text/plain": [
"0.0034842071949627938"
Copy link
Contributor

Choose a reason for hiding this comment

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

Как можно улучшить качество кода?
Назовите примеры того как можно увеличить метрику с использованием дополнительных данных.
Что можете сказать про получившуюся метрику map@10 ?

Copy link
Author

@trojanof trojanof Aug 16, 2023

Choose a reason for hiding this comment

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

Как можно улучшить качество кода?

Обернуть код создания разреженных матриц в функцию. Или вообще создать класс Dataset, в конструктор передавать датафрейм и дату для разбиения на трейн и тест; сразу разделять на трейн и тест и создавать матрицы, которые записывать в атрибуты созданного объекта класса Dataset.

Назовите примеры того как можно увеличить метрику с использованием дополнительных данных.

  1. Если доступны данные лайков, то использовать их вместо процентного времени просмотра, потому что это явное указание релевантности для пользователя. Или использовать взвешенную комбинацию налиция/отсутствия лайка и процента времени просмотра - предполагая, что если пользователь не поставил лайк, но время просмотра большое (скажем, близко к 100%), то контент оказался релевантным.
  2. Векторизовать метаданные об объектах; взять наиболее популярный объект для данного пользователя (по суммарному времени просмотра) и найти топ 10 схожих с ним векторов
  3. Векторизовать данные о пользователях, найти для данного пользователя наиболее близкого к нему в векторном пространстве и порекомендовать топ объектов от этого похожего пользователя (фильтруя те, с которым пользователь уже взаимодействовал)

Что можете сказать про получившуюся метрику map@10 ?

Значение метрики низкое. Значение в районе 0.1 означало бы что первый объект из предсказанных, как правило, оказывается релевантным. По полученному значению 0.00348 можно сделать вывод, что лишь некоторые объекты в рекомендациях оказываются релевантными.

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

Successfully merging this pull request may close these issues.

2 participants