LightFM для данных о покупках: как мне подготовить веса взаимодействия? Текущий подход использует частоту для каждого поPython

Программы на Python
Ответить
Anonymous
 LightFM для данных о покупках: как мне подготовить веса взаимодействия? Текущий подход использует частоту для каждого по

Сообщение Anonymous »

Я обучаю модель рекомендаций с помощью LightFM на неявных данных о покупке.
В моем наборе данных каждое взаимодействие представляет собой транзакцию: пользователь покупает товар.
Если пользователь покупает один и тот же товар несколько раз, я сначала агрегирую транзакции по (пользователь, товар) и вычисляю частоту покупок.
Мой текущий подход к подготовке весов взаимодействия Это:
  • Для каждой пары (пользователь, товар) вычислите частоту покупок.
  • Для каждого пользователя найдите максимальную частоту покупок среди всех товаров, которые купил пользователь.
  • Определите вес взаимодействия как:

    Код: Выделить всё

    weight(user, item) = frequency(user, item) / max_frequency_of_any_item_for_that_user
Таким образом, вес нормализуется для каждого пользователя и всегда попадает в число (0, 1].
Например, если у пользователя:
  • элемент A: 10 покупок
  • элемент B: 4 покупки
  • предмет C: 1 покупка
тогда веса становятся:
  • предмет A: 10 / 10 = 1,0
  • предмет B: 4 / 10 = 0,4
  • пункт C: 1 / 10 = 0,1
Моя цель — рекомендация Top-K из истории покупок.
Мои текущие настройки LightFM: Я хотел бы получить совет:
  • Является ли это разумным способом подготовить веса взаимодействия для LightFM в данных о покупках?
  • Удаляет ли нормализация по максимальной частоте элементов каждого пользователя слишком много полезного сигнала?
  • Существует ли лучший принцип подготовки весов взаимодействия для повторных покупок в рекомендациях с неявной обратной связью?
  • На практике при использовании LightFM для данных о покупках веса взаимодействия должны в основном отражать:
    • относительное предпочтение пользователя
    • или абсолютную интенсивность покупок?
      />
Я был бы признателен за советы от всех, кто работал с LightFM, или за рекомендации по неявной обратной связи по данным транзакций.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»