dudy_du
dudy_du
·
5 years ago
1ч перевода интервью с мдк
МДК Июль 18 * 7 мин читать
Недавно мы говорили о том, как важно для любого контент-проекта предлагать релевантный контент своей аудитории. Сегодня мы поговорим о том, насколько важно правильно его показать и как создание нового алгоритма основной подачи помогло нам увеличить ключевые показатели проекта. Базовый алгоритм ранжирования должностей Год назад, когда мы запускали MDK, мы столкнулись с вопросом ранжирования постов в ленте. Поскольку контент в MDK создается множеством авторов и попадает в одну общую ленту, нам пришлось решать, какие посты показывать пользователям в первую очередь, а какие размещать чуть ниже. Более того, мы должны были найти правильный баланс между показом самых интересных постов и предложением нового контента, который пользователи еще не видели. Эти задачи были хорошо решены с помощью классического алгоритма горячей подачи, с которого мы начали. Она устроена следующим образом. Каждый пост имеет свой рейтинг, который упрощается формулой: 𝑟𝑎𝑡𝑖𝑛𝑔 = 𝛼 ∗ 𝑡𝑖𝑚𝑒 + компания LG(𝑣𝑜𝑡𝑒), где time-Время публикации поста после момента запуска MDK; 𝛼 — коэффициент времени; vote — оценка поста пользователями. График этой функции для положительных значений голосования показан на рисунке ниже. Для наглядности максимальное значение по оси времени на графике ограничено 12, а по оси голосования — 100, но понятно, что график может быть расширен до бесконечных значений этих переменных. Горячая функция номинальности питания Из графика видно, что каждый новый пост всегда выходит с более высоким базовым рейтингом, чем все предыдущие, потому что переменная времени постоянно растет. После публикации сообщения его начинают оценивать другие пользователи, и рейтинг сообщения начинает расти из-за изменения оси голосования. Чем больше голосов получает пост, тем выше его рейтинг. Это позволяет интересному посту обогнать новые посты и подняться на вершину ленты. Следует отметить, что в данной формуле используется не линейная зависимость рейтинга поста от количества полученных голосов, а логарифмическая. Функция логарифма работает таким образом, что каждый новый голос имеет меньшее влияние на рейтинг поста, чем предыдущий. Это делается для того, чтобы популярные посты не могли всегда оставаться в верхней части ленты, собирая все больше голосов и бесконечно увеличивая свой рейтинг. Проблемы с горячей комбикормовые Этот алгоритм основной подачи в большинстве случаев работает достаточно хорошо. Это позволяет показывать в верхней части ленты самые интересные посты, которые были лучше всего оценены пользователями, при этом постепенно заменяя их другими интересными, но более новыми постами. Однако этот алгоритм имеет один существенный недостаток, который заключается в его формуле. Дело в том, что он рассчитан на одну среднюю частоту использования приложения. В нашем случае это примерно раз в 6 часов. Если вы открываете приложение каждые 6 часов, потом все работает нормально. Лента успевает обновляться и в верхней части горячей можно увидеть самые интересные посты, которые вы еще не видели. Проблемы начинаются, когда вы посещаете приложение более или менее часто, чем в среднем интервал. Например, если вы открываете приложение раз в 2 часа, горячая лента не успевает полностью обновиться. Таким образом, в верхней части ленты, наряду с новыми интересными постами, вы увидите те посты, которые вы уже просматривали. В данном случае, поиск новых постов превращается в довольно сложную задачу. Вам нужно среди множества старых и новых постов найти те посты, которые вы еще не видели. Это еще больше осложняется тем, что за то время, пока вас не было в приложении, рейтинг постов изменился, так как они продолжали получать новые голоса от других пользователей, а это значит, что все посты тоже меняются местами. Если вы посещаете приложение реже, чем этот средний интервал, например, один раз в день, то вы, скорее всего, увидите только сообщения, которые вышли за последние 6 часов, потеряв другой интересный контент, который был создан в приложении немного раньше, но уже упал в горячей ленте. Таким образом, ваше общее впечатление от контента снижается, так как вы не видите всех интересных постов за день. Частично мы уже пытались решить проблему этой формулы, введя плавающий рацион времени, который меняется в зависимости от времени последнего открытия приложения. Однако такой подход имеет и ряд недостатков. Если смотреть ленту очень часто, то она начинает очень быстро меняться, и вы теряете самые интересные посты, под которыми еще идут горячие дискуссии. Если вы посещаете приложение очень редко, то, конечно, вы увидите самые интересные посты, которые вы пропустили, но вы не сможете вступать в дискуссии с другими членами сообщества, поскольку основное обсуждение уже закончилось. Более того, когда вы снова откроете приложение через короткий промежуток времени, соотношение времени изменится, и у вас может сложиться впечатление, что контент в приложении резко ухудшился, хотя вы просто видите больше нового контента, который пользователи еще не успели оценить. Кроме того, при таком подходе возникают некоторые технические проблемы. Дело в том, что алгоритм считает, что если вы открыли ленту, вы ее просмотрели, хотя на самом деле это не всегда так. Поведение пользователей Другая проблема горячего питания, возможно, менее очевидная, но, на наш взгляд, гораздо более важная, связана с психологией потребления. Дело в том, что люди любят выполнять конкретные задачи. Если мы четко понимаем, что от нас требуется, то всегда стремимся выполнить это, чтобы получить чувство удовлетворения от выполненной задачи. В случае бесконечной горячей подачи мы не знаем, сколько сообщений нам нужно просмотреть. Мы продолжаем прокручивать его вниз и вниз, пока не достигнем сообщений с очень низкими рейтингами, в то время как наше впечатление от просматриваемого контента продолжает снижаться.
10 лайков за фулл
12 comments