Уроки, которые я извлек из проектов прогнозирования в дикой природе, которые помогут вам получить лучшие результаты с самого начала и запустить свои модели в производство.

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

Специалисты по данным часто жалуются на качество данных, неработающие конвейеры данных или сложность операций MLops. Однако я думаю, что многие модели были обречены на провал еще до того, как их обучили.

Как и в случае с любым другим проектом, масштабы и цели могут решить, провал или успех вашего проекта прогнозирования. Иногда мы тратим слишком мало времени на эти важные шаги, когда начинаем новый проект. Особенно об этой опасности должны знать команды, находящиеся на определенном расстоянии от будущих пользователей (например, группы цифровых инноваций, лаборатории данных и другие кросс-функциональные отделы).

Позвольте мне поделиться некоторыми советами о том, как вы можете избежать проклятия PoC на ранней стадии проекта.

Думайте исходя из решения

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

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

  • Какие действия можно предпринять?
  • Кто будет принимать решение о том, какие действия следует предпринять?
  • Как вы можете принимать эти решения на основе прогноза?
  • Что еще нужно для решений?
  • Когда и как часто обычно принимаются такие решения?

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

Стив (участник проекта): «Если бы мы только знали, какой клиент собирается уйти, мы могли бы предложить ему скидку. Это было бы прекрасно!"

Вы: «Кто будет решать, получит ли покупатель скидку и сумму?»

Стив: «О, это менеджеры по работе с клиентами. Посмотрим, сможет ли Сара присоединиться к нашему обсуждению».

Вы: «Привет, Сара, мы подумали о новом приложении, которое могло бы тебе помочь. Он мог бы предсказывать клиентов, которые собираются уйти, и вы могли бы предложить им скидку!»

Сара (менеджер по работе с клиентами): «Хм. Наши клиенты обычно уходят из-за отсутствия функций. Они редко просят скидки, как только они на борту. У нас не так много клиентов. Я уже знаю тех, кто несчастлив и почему».

Это не обязательно делает вашу модель прогнозирования оттока бесполезной (и Сара может не знать своих клиентов так хорошо, как она думает), но вам необходимо получить больше информации о решениях, которые будет поддерживать ваша модель.

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

Заинтересованное лицо может сказать вам, что ему нужна регрессионная модель для еженедельного прогноза потребления сырья с горизонтом 6 месяцев. Однако все, что им действительно нужно для принятия решений (покупка большего или меньшего количества сырья), может быть моделью классификации, которая показывает, является ли потребление в следующем месяце примерно таким же, на 20% ниже или на 20% выше потребления в прошлом месяце. .

Вот почему вы всегда должны думать, исходя из решения.

Привлеките всех соответствующих людей на борт и посвятите себя

Как только вы узнаете соответствующие решения, вы должны привлечь соответствующих лиц, принимающих решения, и принять участие в проекте. Один из лучших способов получить приверженность проекту со стороны лиц, принимающих решения, — привлечь их к постановке целей проекта.

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

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

Питер (владелец данных): «Это наши данные. Вы не можете использовать его».

Вы: «Но это же данные компании. Наша модель зависит от этого».

Питер: «Никогда не предполагалось, что эти данные будут использоваться для автоматических прогнозов. Мне нужно еще три позиции, чтобы гарантировать качество данных. Я учту это при планировании расходов на персонал. Мы можем поговорить в следующем году».

Заранее проясните требования всех соответствующих заинтересованных сторон. Другой пример: проще сразу начать с Python, чем потом узнать, что операционная группа даже не подумает о развертывании приложения Julia.

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

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

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

Почему кто-то должен использовать вашу модель, если она им не выгодна? Если только их босс говорит им использовать его, вы можете быть уверены, что они найдут малейшие причуды и несоответствия в вашей модели.

Люди не будут заботиться о лучшем R² или отличном счете F1. Они заботятся о своей работе и времени, а также, возможно, о статусе. Для некоторых из них будет достаточно мотивации, чтобы использовать модное приложение ИИ, но для других вам придется предложить более существенное улучшение. Это гораздо менее эзотерично, чем вы думаете. Спросите своих заинтересованных лиц и будущих пользователей:

Как вы и ваши коллеги заметите, что наш проект удался?
Как это облегчит вашу работу?

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

Как ваши клиенты заметят, что наш проект удался?
Как это облегчит их жизнь?

Чтобы задать эти вопросы и получить ответы, может потребоваться несколько часов, но это будет гораздо полезнее, чем две недели настройки гиперпараметров.

Говорите о рисках и требованиях

Если у вас есть обязательства всех заинтересованных сторон, вы знаете, какие решения поддерживать и как улучшить жизнь каждого, остается одна небольшая сложность в прогнозировании проектов: действительно трудно предсказать будущее.

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

Начните проект с самого начала с оптимизмом, но будьте честны, что большой прогресс будет таким: «Отлично, теперь мы знаем, что индекс доверия потребителей бесполезен для прогнозирования продаж».

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

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

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

Рассказ о рисках и требованиях поможет управлять ожиданиями заинтересованных сторон и облегчит вашу жизнь.

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