Изменения

Перейти к: навигация, поиск

Рекомендательные системы

196 байт добавлено, 23:56, 24 декабря 2020
Численная оптимизация
<tex> J(\Theta) = \sum_{(u,i) \in D}{(p^T_uq_i - r_{ui})^2} + \lambda (\sum_u{||p_u||^2} + \sum_i{||q_i||^2}) </tex>.
Множество параметров: для каждого объекта и пользователя есть свой вектор, который нужно оптимизировать. Дабы Чтобы найти минимум функции воспользуемся градиентом можно использовать метод градиентного спуска. Для этого нам понадобится градиент {{---}} вектор из частных производных по каждому параметру., который в нашем случае будет выглядеть так:
<tex> \nabla J(\Theta) = (\dfrac{\partial J}{\partial \theta_1}, \dfrac{\partial J}{\partial \theta_2},\dots,\dfrac{\partial J}{\partial \theta_n})^T </tex>.
Можно воспользоваться [[ CatBoost | градиентным бустингом]]Шаг градиентного спуска можно записать следующим образом: <tex> \Theta_{t+1} = \Theta_t - \eta \nabla J(\Theta) </tex>.
Проблема же заключается в том, что алгоритм не работает медленнодостаточно, а минимумы которые он находит {{---}} локальные, а не глобальные.
==Измерение качества рекомендаций==
442
правки

Навигация