Алгоритм наиболее популярных постов на основе лайков, репостов и просмотров

Я работаю над сайтом, на котором будут миллионы историй. Рассказы во всех форматах: тексты, видео, фото и другие мультимедийные элементы. Истории могут быть отфильтрованы по разному признаку, некоторые из которых являются «новыми», которые, очевидно, будут сначала содержать последние истории, «избранными» историями, которые будут отмечены как избранные вручную, и «популярными», для которых мне нужно придумать алгоритм.

Пока что я беру среднее количество лайков на facebook, количество репостов (включая facebook, твиттер или любые другие репосты) и количество просмотров. Но мне это не нравится. Потому что присвоение одинакового веса и возраста всем трем показателям не звучит искренне по причинам вроде рассылки спама в соцсетях и т. Д.

С нетерпением жду нескольких действительно хороших алгоритмов для определения рейтинга популярности историй.

----Добавление-----

Алгоритм популярности обсуждает алгоритм только на основе «лайков», а алгоритм основан на категоризации результатов по категориям временных меток: популярны в день, неделю и месяц. тогда как в этом есть ответ, который почти отвечает на мой запрос, но не совсем потому, что метрики предполагается там. Я ищу точную метрику с искренним объяснением. Например, «facebook * 2», с объяснением, почему * 2 для facebook. Надеюсь, сейчас не дублирую!



person Chandan Gupta    schedule 10.03.2014    source источник
comment
Алгоритм популярности обсуждает алгоритм только на основе лайков, а алгоритм основан на категоризации результатов по категориям меток времени: популярно на день, неделя и месяц. тогда как в этом есть ответ, который почти отвечает на мой запрос, но не совсем потому, что метрики предполагается там. Я ищу точную метрику с искренним объяснением. Например, facebook * 2, с объяснением, почему * 2 для facebook. Надеюсь, сейчас не дублирую!   -  person Chandan Gupta    schedule 10.03.2014


Ответы (1)


Я предлагаю попробовать использовать алгоритм регрессии. Наиболее широко используется линейная регрессия, но если эта модель не подходит - смело исследуйте другие .

  1. Сначала определите особенности каждой истории. Ваши особенности - лайки, твиты, репосты, просмотры ... Я бы также добавил логический индикатор (переменная, которая может принимать значения только 0 или 1) для каждого из типов (видео / фото / ...).
  2. Затем создайте обучающий набор - набор историй, которым вы (или другие эксперты-люди) поставили оценку.
  3. Теперь, используя эти функции и обучающий набор - используйте некоторый алгоритм регрессии, чтобы создать модель, которая наилучшим образом соответствует вашим функциям на уже рассмотренных вами примерах. 1
  4. После того, как у вас есть модель, вы можете использовать ее для оценки всех остальных документов.

Что касается обнаружения спамеров - вы можете попробовать алгоритмы обнаружения аномалий


(1) На самом деле, шаги 2 и 3 могут быть выполнены вместе - с использованием методов активной регрессии - в активной регрессии обучающийся (алгоритм) запрашивает у вас примеры, которые заставят алгоритм учиться так быстро, как он может. Судя по моим экспериментам, PAlice очень эффективен. алгоритм регрессии.

person amit    schedule 10.03.2014
comment
Но разве людям не сложно вручную выставить оценку посту на основе количества лайков и комментариев? Я имею в виду, что люди даже не могут точно сказать, популярный ли это пост .. верно? - person eshb; 26.07.2017