По версии Data Insight, Ozon находится на четвертом месте рейтинга топ-100 крупнейших интернет-магазинов в России. Оборот от продаж за 2018 год – 42 млрд рублей.
Ксения Бокша, руководитель отдела Data Science, и Полина Ольшевская, руководитель группы аналитиков в Ozon, рассказали Executive.ru о том, как магазин собирает, обрабатывает и использует данные пользователей для улучшения бизнес-результатов.
Executive.ru: Давайте разберемся для начала, как вы понимаете Big Data, и как устроена работа в этом направлении в Ozon?
В день мы собираем примерно 250 млн строк логов с сайта и мобильных приложений. В запакованном виде это 25-30 ГБ за один день, в распакованном – 170-200. Весь этот объем информации не «переварить» SQL-м, к нему сложно писать запросы, и невозможно обработать в Excel.
Какие выводы можно сделать по итогам одного такого дня? Эффективнее всего смотреть данные в динамике. Например, сегодня пользователь что-то выбирал, а завтра выберет что-то еще или посмотрит цены на другие товары. Поэтому эти цифры – количество строк и гигабайты – мы умножаем в самом простом случае на 30, ведь для бизнес-обработки нам интересно смотреть, что происходило за 30 дней.
Executive.ru: А как все это обрабатывается, какая команда задействована?
Со всем этим богатством надо уметь работать, смотреть в разных системах, связывать их между собой и визуализировать для бизнеса – этим занимаются аналитики и Data scientists. При этом поддержкой инфраструктуры занимается отдельная команда Data-инженеров, которые следят за накоплением и правильным хранением данных.
Executive.ru: Какие инструменты вы используете для обработки данных?
П.О.: Для анализа данных о продажах мы используем Microsoft SQL Server и постепенно переезжаем на Vertica. Казалось бы, продажи – не совсем Big Data, но в Ozon таких данных накопилось уже столько, что SQL не хватает.
В Hadoop и ClickHouse в упакованном виде лежат все возможные данные в сыром виде из разных сервисов и систем. Обрабатываем их на Python, Spark, SQL или его диалектах.
Executive.ru: Расскажите о решениях, где применяется Big Data?
К.Б.: Для маркетинга мы разработали несколько решений, которые позволяют эффективно использовать накопленные данные. Например, управление ставками в рекламных системах – модель на основе машинного обучения. В нее подаются те самые большие данные, собранные в таблицу в упорядоченном виде.
В таблице на каждого пользователя есть набор метрик: когда он заходил на сайт, и с какой частотой, какой товар добавлял в корзину и в какое время, какие товары накопились в корзине и многое другое. Даже если пользователь ничего не купил, а сразу ушел, мы смотрим – с какого устройства, и в какое время он приходил. Собирая такой массив, мы предсказываем, с какой вероятностью этот человек в ближайшие семь дней вернется и совершит покупку.
В примитивном прогнозе это просто «совершит любую покупку», но чем больше мы знаем, тем детальнее можно предсказывать, например, «совершит покупку в конкретной категории», – и настраивать сегменты в рекламных кампаниях. Чем выше мы оцениваем вероятность покупки, тем больше денег готовы предложить за клик на нашу рекламу.
Executive.ru: В одном из наших недавних материалов известный маркетолог Михаил Дымшиц выдвинул гипотезу, что «Big Data в маркетинге – это пустая трата денег».
П.О.: Иногда большие данные и предиктивные модели используются там, где это не нужно, и можно обойтись более простыми подходами. Но, конечно, есть задачи, которые не решить без использования Big Data.
Executive.ru: Насколько у вас эти предсказания сбываются в реальности? Я лично сталкивался с ними в жизни: купил некий товар, спустя месяц, примерно, приходит письмо: «у вас такая вот штучка заканчивается, купите новую». И не попали. Это, конечно, сугубо индивидуально, но все-таки...
К.Б.: Как раз эта модель – определение частотности покупок – пока работает на человеческих оценках. Это значит, что эксперт определил регулярность покупки товара и вручную настроил напоминание о повторной покупке. Конечно, экспертное мнение – это, в первую очередь, человеческий фактор, и оно может отличаться от реальных действий пользователя. Мы планируем автоматизировать этот процесс.
Например, мы проверяли эффективность модели, построенной на основе действий клиентов, в AB-тестировании «полки рекомендаций» в карточке товара. В рамках эксперимента пользователю показывались два варианта полки. В первом рекомендации подбирали менеджеры вручную: к этой книжке подойдет такая-то обложка. Во втором – полка была собрана на базе логов пользователей и исторических данных о продажах. Во втором случае продажи были выше в 10 раз. То есть, результат на базе статистики в 10 раз лучше, чем полагаясь на экспертное мнение.
Во втором кейсе мы тестировали email-рассылку. В первом случае эксперты для каждого клиента выбрали топ-5 категорий, а на другой стороне «ринга» категории выбрала модель машинного обучения (на основе Big Data). Рассылка, составленная машиной, принесла на 91% больше продаж, чем экспертная.
Особенность Ozon – огромный ассортимент в два миллиона товарных наименований, и он постоянно растет. Уместить в голове все эти товары очень сложно, тем более, выбирать из этого многообразия продающие рекомендации. Такой массив не обработать руками.
Executive.ru: Есть какой-то порог – количество данных, количество категорий и пользователей, – когда уже без применения аналитики и Big Data не обойтись?
П.О.: Здесь опять встает вопрос разделения аналитики и Big Data. Даже если у вас 20 продаж в день, то стоит хотя бы подключить бесплатную Google-аналитику и складывать данные о ваших продажах в Excel. Это, конечно, не Big Data, но в сборе такой информации есть смысл. Ведь, условно, через пять лет вы сможете смотреть продажи в динамике с самых ранних периодов – и чем более качественно и прозрачно данные будут собираться с самого начала, тем больше у вас будет возможностей с ними эффективно работать в будущем.
В тот момент, когда данные о продажах компании становится сложно удержать в голове команде из трех-четырех человек, пора задуматься об усилении аналитиком, который будет смотреть динамику продаж и делать бизнес-выводы. Когда и статистики становится настолько много, что аналитику сложно смотреть ее во всех возможных разрезах, то пора внедрять Big Data-решения.
Представьте, что маркетологу нужно из 20 товаров выбрать пять на акцию. Силами одного сотрудника довольно просто проверить цены на эти товары, посмотреть остаток на складе и как их раскупали раньше. На базе этих факторов один человек сможет принять решение и выставить пять товаров в акцию.
Когда товаров больше, мы переходим к подходу, похожему на сортировку. Берем все очевидные показатели, что товар подойдет для акции: конверсия карточки товара, остаток на складе, максимальная скидка... По всем этим параметрам товары ранжируются и оцениваются, а маркетологи определяют, что поставить в акцию.
Когда счет идет на миллионы наименований, стоит переходить на машинное обучение, чтобы модель из всего ассортимента по набору признаков сама предлагала акционные наименования и, в случае необходимости, эксперт их только проверял.
Например, мы используем машинное обучение для планирования объемов закупок: сколько и какого товара нужно завезти, исходя из исторических данных по продажам. При таком ассортименте, числе поставщиков и закупщиков ошибки неизбежны: кто-то привез больше, кто-то меньше, кто-то вообще не то. Ошибка с превышением закупки на 1% будет стоить компании 10 млн рублей. Да и сотрудники отдела закупок могут заниматься более интересной работой, чем бесконечное заполнение и отправка таблиц.
К.Б.: Разрабатывая алгоритм, мы стремились максимально точно предсказать спрос на товары Ozon не только по фактору цены, но и с поправкой на человеческий фактор. Ведь на желание купить товар влияют реклама, сезон, праздники и многое другое (например, знание о том, что скоро Новый год, первые морозы или начало учебного года, помогает предсказывать сезонные повышения спроса).
Для построения модели мы разбили на 170 признаков логи пользователей: что смотрят, что добавляют в корзину и заказывают.
Также посчитали стоимость пере- и недозакупки каждого товара, учли пожелания бизнеса о том, какой процент времени товар должен быть в наличии на складе. И чтобы обеспечить это наличие, оценили качество работы поставщиков каждого товара: вовремя ли привозят, в нужных ли количествах, на каких условиях.
Получившийся алгоритм добавляет к «идеальному» прогнозу поправки на человеческий фактор. За ночь он выбирает для каждого товара поставщиков, делает прогноз продаж и формирует заявки, исходя из расписания поставок. К семи утра наши категорийные менеджеры получают готовые таблицы с заказами.
Благодаря этому кейсу мы перешли от закупок товаров с запасом к цикличным поставкам, когда мы покупаем от одной поставки к другой и не храним на складе остатки.
Executive.ru: Что можно посоветовать людям, которые не хотят тратиться на большие отделы аналитиков или имеют не такой масштаб бизнеса, скажем, но понимают, что уже пора?
П.О.: Все решения – open source и бесплатны, то есть с открытым исходным кодом и открытым доступом. По сути, аналитику только нужно знать инструменты Excel – SQL – Python. Тогда даже один специалист сможет принести огромную пользу бизнесу: посчитать статистику, распределения и даже обучить модели.
Executive.ru: А как вы думаете, вот эта «мода на Big Data» – это действительно мода или сформировавшееся направление развития? Есть контраргументы, что поведение человека предсказать сложно или даже невозможно?
К.Б.: Да, человеческая психология – это сложно, однако есть паттерны поведения. Представьте ассортимент товаров на Ozon – два миллиона наименований – его физически невозможно охватить человеку. А теперь представьте, что 5000 товаров стоит на акции – их все тоже невозможно посмотреть даже за несколько посещений сайта. Поэтому нам нужно понять, каким пользователям о каких акционных товарах рассказать.
Если мы знаем, что клиент каждый месяц покупает у нас памперсы и детское питание, скорее всего, у него будет повышенный интерес к категории «Детские товары» и соответственно, акционным товарам в ней. Или если клиент покупал смартфон Samsung, скорее всего, нет смысла рассказывать ему, что на Ozon зарядки для IPhone продаются со скидкой.
Тестируя все эти гипотезы, мы учимся понимать клиента и подбирать все более подходящие рекомендации, показывая только то, что может быть ему полезно.
В любом случае надо понимать, что без участия экспертов по продажам разработать жизнеспособную Big Data модель невозможно. Только человек сможет определить все поведенческие факторы, влияющие на покупку, – по которым модель будет строить прогнозы.
Например, когда мы разрабатывали алгоритм для закупки товара, менеджер по закупкам игрушек спросила «А ваш алгоритм свинок спрогнозирует, или лучше их руками закупать?». Оказалось, что на приближающийся год свиньи ожидается рост продаж игрушечных свинок. Разумеется, без менеджера алгоритм не узнал бы о том, что раз в 12 лет случаются всплески спроса на товары со словом «свинья» в описании.