Самое интересное, что я понял, это то, что Item-item коллаборативнай фильтеринг это суть обычное измерение cosine similarity эмбеддингов, просто где эмбеддинги формируются из действий пользователей. Дескать, похожие продукты будут покупать похожие пользователи, которые помимо этого купят еще какие-то идентичные товары. Но моя интуиция говорит, что в онлайн покупках это очень слабый сигнал. Товаров много, пользователи покупают по одному разу, в итоге остаётся куча пустых векторов без каких либо пересечений. Это совсем не то как пользователи смотрят фильмы или слушают музыку, где каждый пользователь имеет сотни взаимодействий, и все смотрят одни и те же тайтлы.
Хотел использовать LightFM для мвп, но по причинам выше он оказался вообще непригодный. Он заточен под юзеров с историей, и даже с тем, что он предсказывает эмбединги для продуктовых фич, делает он это базируясь на тех самых взаимодействиях пользователей, и при небольших объемах данных просто превращается в тыкву. А еще там всратая документация, и фичи принимаются только бинарные.
Короче, моя гипотеза, что для холодных юзеров надо просто брать готовые эмбединги типо word2vec, или даже tf-idf, эмбедить заголовки, и это со старта позволит намного лучше определять похожие товары, чем любые истории покупок. Возможно я что-то упускаю, тогда готов обсуждать.
Хотел использовать LightFM для мвп, но по причинам выше он оказался вообще непригодный. Он заточен под юзеров с историей, и даже с тем, что он предсказывает эмбединги для продуктовых фич, делает он это базируясь на тех самых взаимодействиях пользователей, и при небольших объемах данных просто превращается в тыкву. А еще там всратая документация, и фичи принимаются только бинарные.
Короче, моя гипотеза, что для холодных юзеров надо просто брать готовые эмбединги типо word2vec, или даже tf-idf, эмбедить заголовки, и это со старта позволит намного лучше определять похожие товары, чем любые истории покупок. Возможно я что-то упускаю, тогда готов обсуждать.