Алгоритмы машинного обучения с высоты птичьего полета

Алгоритмы машинного обучения с высоты птичьего полета

Неплохой обзор основных инструментов, сгруппированный по типам, с указанием плюсов, минусов, и особенностей примерения, опубликован в паре статей на сайте со странным названием elitedatascience.com. Актуальность такого рода публикаций четко задатся картинкой (выше) с того же сайта, озаглавленной «Теорема No Free Lunch»: не существует алгоритма, одинаково подходящего для разных задач, на разных наборах данных, решаемых с разными целями. Про цели — например может потребоваться интерпретируемость модели, т.е. надо понимать как она работает, какие факторы на что влияют, а это сильно сокращает возможный набор алгоритмов. Кроме того есть довольно много технических особенностей — какие-то алгоритмы плохо масштабируются по производительности или требуемому объема пямяти с ростом количества данных или их размерности, или плохо работают в условиях разреженных данных (когда много пропусков по некоторым переменным) и пр.

В общем, выбор и настройка алгоритма — отдельная задача, тем более что один только пакет CARET языка R предоставляет доступ к 232 вариантам алгоритмических моделей. Начать в ней разбираться можно с этой статьи. Продолжить чтение «Алгоритмы машинного обучения с высоты птичьего полета»

Метрики: формулы vs смысл на примере LTV:CAC

Метрики: формулы vs смысл на примере LTV:CAC

Никогда не бойтесь спрашивать «а как вы считаете LTV?»,  это же применимо ко многим другим метрикам.

На всякий случай — LTV, оно же CLV, customer lifetime value — пожизненная стоимость клиента, сколько мы рассчитываем на нем заработать за все время; CAC это Customer Acquisition Cost, стоимость привлечения клиента.

Сложные метрики, как правило, транслируют некоторый смысл, обычно завёрнутый в определенную методологию. А реализация данного смысла согласно методологии, в разных индустриях и способах организации бизнеса (маркетинга, продаж), — может быть выполнена абсолютно по разному. Соответственно формулы получаются разные. Поэтому взять формулу расчета LTV из Википедии и начать все по ней считать налево и направо — вредно! И когда вам показывают цифру — обязательно спросите как ее посчитали. Не стесняйтесь.

Товарищи из lab.openview (около-венчурная история) рассказывают почему неправильно всегда пользоваться правилом 3x LTV:CAC и как устроен LTV в бизнесах по контрактной подписке (SaaS), что вполне обобщается на другие бизнес модели. Почему все в конечном итоге скатывается к работе в рамках когорт (на самом деле — фиксация параметров модели),  как выглядит отток (churn) в реальной жизни (подсказка — у него скорость уменьшается, пока не уйдет в ноль, и останутся только ваши пожизненные клиенты, т.н. lifer-ы), и таки как стоит сравнивать LTV с CAC

 

McKinsey’s State Of Machine Learning And AI, 2017

McKinsey’s State Of Machine Learning And AI, 2017

McKinsey опубликовал объемное исследование Artificial Intelligence, The Next Digital Frontier в котором оценил уровень развития AI и машинного обучения, а также их влияние на те или иные индустрии.

В таблице ниже собран уровень применения различных прикладных реаизаций AI в разных индустриях (по веритикали), с декомпозицией на бизнес-составляющие (по горизонтали). Две колонки справа, Promote и отчасти Provide, можно отнести к маркетингу.

1

А дальше самое интересное, какой экономический эффект можно получить при исопльзовании AI. Строчки и колонки те же.

10-50%% эффект в отдельных индустриях. $10 триллионов в Healthcare.

+1 год средней продложительности жизни, как это оценить в деньгах?

1

 

Визуализация многомерных ML-данных c помощью Facets

Визуализация многомерных ML-данных c помощью Facets

Вообще задача визуализации многомерных данных — большая и важная сама по себе. В случае работы с данными для машинного моделирования есть дополнительные требования, например выявление разреженных матриц или переменных, отсутсвующие или нулевые значения, квази-постоянные значения и прочее, влияющее на эффективность, а иногда и принципиальную работоспособность ML-алгоритмов.

Товарищи из Google Research выпустили в исходных кодах инструмент Facets, состоящий из двух частей:

  1. Facets Overview
    image3
  2. Facets Dive
    image1

По картинкам более-менее понятно что инструмент делает. Полезно. Может использоваться внутри Jupyter ноутбуков.

 

Корреляция, причинность и p-значения

Корреляция, причинность и p-значения

Извечная тема — все знают, что корреляция двух переменных не означает что между ними есть причинно-следственная связь, и тем не менее все продолжают делать выводы вида «длина волос у девушек коррелирует с окружностью бедер с p-значением (p-value) = 0.001, ну значит точно надо всем девушкам отпускать волосы, и с фигурой все будет отлично!». Ага, если бы все было так просто )

Как на самом деле может выглядеть связь между коррелирующими переменными, и чем это может быть вызвано, рассказывает в небольшой бесплатной книжке  Lee Baker,  описывающий себя как «физик, статистик и программист, дитя цветов психоделических 60-тых, удивительно как получившийся вполне нормальным» ))

Кстати, о физиках и p-значениях.

Jeff Leek из Школы Бионформатики университета Джонса Гопкинса собрал в пакет tidypvals  около 2.5 миллиона опубликованых в различных исследованиях p-значения из 25 научных направлений. Вот как выглядит картина в модном ныне джойплоте (joyplot)

28619649-6127b58a-71d7-11e7-82f0-3c911ce7d1f0

Первый пик в районе 0 — ок, да. А вот второй пик к районе 0.05, ровненько на традиционной границе отсечения по критерию стат-достоверности?? Это типа наука так делается?

Кстати, маркетологи (которые внутри направления Economics) — красавчики, у них одних на этом графике нет второго пика, только вокруг нуля. А вот как у «информатиков, математиков и физиков» второй пик на 0.05 получился выше чем первый на 0 — не понимаю. Разве что информатики накосячили? ))

Как построить гистограмму.

Как построить гистограмму.

Гистограмма — отличный инструмент визуализации данных, однако у его использования есть свои тонкости, особенно в параметризации.

Aran Lunzer and Amelia McNamara в своей статье подробно и по шагам описывает как правильно построить гистограмму из «кучки данных» (наверху). Причем в качестве иллюстрации используется замечательная интерактивная визуализация, сделанная на D3.js и доступная в исходниках.

1

 

 

Prophet: aнализ временных рядов от Facebook

Prophet: aнализ временных рядов от Facebook

Facebook Research Data Science команда недавно выложила очень интересный инструмент для анализа и прогнозирования временных рядов, опенсорный пакет на R и Python с движком на STAN. Последний является языком и средой для стат-моделирования, и крайне популярен в решении задач на основе Байесианской статистики.

Стандарно при построении прогнозов Prophet выделяет две составляющие:

  1. рост (нелинейный тренд), логистическая модель с изменямоей скоростью с автоопределением моментов изменения.
  2. периодические колебания (сизональность) на разных уровнях — год, месяц, неделя, ряды Фурье

При этом возможен гибкий учет выходных и праздников, простая индикаторная функция.

Prophet работает очень быстро, и не требует глубокого погружения в особенности программирования на STAN. Стандартно для Байесианских инструментов, от аналитика данных ожидается формулирование некоторых (простых) a priori правил и данных из предметной области. При этом коллеги из Facebook предлагают достаточно понятный способ итеративного подхода к моделированию в этой непростой области математики, который предполагает вовлечение человек в процесс на стадиях когда нужно принимат решение на основе понятного и интерпретируемого результата, оставляя сложные оптимизации и оценки внутри.

1

Посмотрим использование Prophet на примере анализа ежедневной частоты рождаемости в США (выполнен fast forward labs) Продолжить чтение «Prophet: aнализ временных рядов от Facebook»