В следующих нескольких статьях мы рассмотрим часто упускаемую из виду сверхспособность современных рекомендательных систем: наивные модели.

Самый простой алгоритм обучения

В старших классах вы могли столкнуться с интригующими головоломками, такими как задача Монти-Холла, которая включала манипулирование условными вероятностями. Но по своей сути формула Байеса довольно интуитивна:

  1. Вы придерживаетесь мнения о мире?
  2. Когда появляются новые доказательства, что вы можете сделать?

Итак, проще говоря, формула Байеса:

Belief after evidence = (Belief before evidence) * (Evidence about the belief)

Но решающим моментом является то, что эта формула на самом деле представляет собой петлю! После первого обновления вашего убеждения ваше представление о мире может быстро меняться каждую микросекунду по мере появления новых доказательств.

while (belief keeps changing):
  belief(t+1) = belief(t) * incoming_evidence(t)

В качестве примера: можно начать с очень ошибочного представления о мире, например, с абсолютной уверенностью сказать, что Земля плоская. Тем не менее, если кто-то усердно обновляет свою веру по мере появления новых доказательств, таких как спутниковые изображения, математические доказательства, геометрические аргументы, он становится все ближе и ближе к истине.

Современные рекомендательные системы используют эти циклы обновления убеждений для создания одних из самых быстрых алгоритмов совместной фильтрации. В следующем посте мы рассмотрим, как эта простая идея воплощается в эти алгоритмы. Но перед этим позвольте представить вам одну из моих восхитительных байесовских мозоль.

Распространенная ошибка в таблицах Excel

Соотношения — это простой способ сравнить эффективность явления. Например, количество людей, ответивших на предложение, деленное на количество людей, получивших предложение, — хороший способ проверить эффективность рекламной кампании.

Теперь давайте посмотрим на образец листа Excel. На приведенном ниже листе мы вычисляем коэффициент прочитанного для каждой статьи в процентах от количества раз, когда она была полностью прочитана. Строка C, кажется, показывает самую высокую вовлеченность, почти близкую к 80%. Так это лучшая история?

Несмотря на то, что у C самый высокий процент прочтений, он также получил наименьшее количество просмотров. Это означает, что у нас должно быть меньше уверенности в нашей оценке, потому что у нас было меньше возможностей обновить наши убеждения.

Простое байесовское решение

Каково среднее (или p50) количество просмотров всех статей? Скажем, 1000. Каково среднее (или p50) количество прочтений всех статей? Скажем, 200. Это ваши прежние представления о системе. Теперь добавьте их к числителю и знаменателю, и вы получите: 8+200/10+1000 ~= 20%, по сути, среднее значение по системе, говорящее вам, что вы мало что знаете об эффективности этой статьи.

Теперь давайте обновим весь лист. Теперь вы видите, что лучшей статьей является E, что соответствует вашей общей статистической интуиции.

Почему я выбрал этот пример? Чтобы подчеркнуть: эта распространенная ошибка настолько распространена, что вы иногда видите ее дважды в день в газетах, конференц-залах, дискуссиях и твиттерах. Давайте вспомним суть байесовской петли: данные/доказательства полезны только в том случае, если мы обновляем убеждение, а не наоборот.