Введение

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

Я хочу создать продукт, основанный на данных, со всеми ноу-хау в области науки о данных и машинного обучения. В моей голове возникло несколько вопросов. Как машинное обучение вписывается в жизненный цикл продукта? Как мне вооружиться ноу-хау в области науки о данных, чтобы решить стоящую передо мной бизнес-проблему? Как определить, можно ли решить проблему лучше с помощью ML? Чем отличаются показатели успеха продукта? С какими дополнительными заинтересованными сторонами мне приходится иметь дело? Как запустить решение в производство? Нужно ли мне согласие заинтересованных сторон, поскольку мы имеем дело с данными?

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

Контрольный список 5 шагов перед моделью

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

Ручной/автоматический?

Можем ли мы продолжить ручное решение или эта проблема нуждается в автоматизации?

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

Правила / ML ?

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

Во-первых, правило – это простой логический код, например если A, то B, иначе, если X, то Y...В этом случае банк может предложить 100 правил, и мы можем построить правило: система, основанная на детерминированном подходе, которая может ответить на вопрос на основе предоставленных входных данных.

Каковы проблемы с системой, основанной на правилах?

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

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

Ясно ли определение проблемы?

  • В отличие от разработки традиционного программного продукта, жизненный цикл продукта машинного обучения [Определить проблему › Подготовить данные › Создать набор моделей › Тестировать и повторить] включает в себя гораздо больше экспериментов, неопределенностей и вариаций. Вместо того, чтобы детализировать все требования в вашем PRD, сосредоточьтесь на определении целевых функций и ключевых критериев производительности, позволяя команде исследовать и экспериментировать с простыми прототипами, а не создавать комплексное комплексное решение.
  • Согласно платформе разработки Google, начните с простого и сформулируйте свою проблему как проблему бинарной классификации или одномерной регрессии, итеративно сформулируйте формулировку проблемы и постройте модель. Пример бинарной классификации: у пациента есть заболевание сердца или нет. Пример регрессии: сколько дней нужно закрыть сделку?

Доступны ли данные?

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

Данные — это сердце любого решения машинного обучения. Без достаточного набора данных для обучения контролируемые модели работают плохо, что приводит к провалу проекта.

Из-за проблем с безопасностью и конфиденциальностью данных сбор данных является сложным процессом, особенно в крупных компаниях, что приводит к разочарованию. Прежде чем тратить много времени на сбор данных, подготовку данных и преобразование данных, рекомендуется создать Proof of concept (POC), чтобы установить постановку проблемы и правдоподобное решение. Нажмите здесь, чтобы узнать больше о действиях по подготовке данных.

Есть ли у нас правильные черты?

Данные представлены в виде таблицы в виде столбцов и строк. Столбец — это атрибут, переменная-предиктор или функция. Атрибут является функцией, если он представляет структуру проблемы и влияет на результат. Не все атрибуты являются функциями. Искусство преобразования необработанных данных в значимые функции, представляющие проблему, — это разработка функций. Разработка признаков играет важную роль в процессе машинного обучения. Если выбраны правильные функции, построенная модель будет более точной, и на ее настройку будет затрачено меньше времени.

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

Измеримы ли показатели успеха?

Метрики необходимы на разных уровнях для измерения

  1. Бизнес-цели
  2. Продукт Цели и результаты
  3. Производительность модели

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

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

Если ваш продукт использует AI/ML только для улучшения функции, то эти функции не оказывают большого влияния на операционные KPI.

Чтобы определить метрики модели, вам нужно знать, какую проблему вы решаете? Это проблема классификации или проблема регрессии?

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

Пример. Классифицируйте интерес как горячий, холодный или теплый.

У вас есть следующие возможности:

Истинные положительные результаты – интерес, правильно классифицированный моделью как активный

Ложные срабатывания – интерес, ошибочно классифицированный моделью как активный

True Negatives — лид, правильно классифицированный моделью как холодный лид

False Negatives – интерес, ошибочно классифицированный моделью как холодный.

Какой показатель выбрать?

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

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

Средняя абсолютная ошибка (MAE)

  • Цель состоит в том, чтобы свести к минимуму ошибку между прогнозируемым и фактическим значением. Этот показатель представляет собой среднее значение абсолютной разницы между прогнозируемыми и фактическими значениями. Чем ниже MAE, тем лучше прогноз. Если вы прогнозируете сумму сделки, закрытой за квартал, то ошибка в прогнозе может измеряться в валюте сделки.

Среднеквадратичная ошибка (RMSE)

  • В этом случае все ошибки возводятся в квадрат перед их усреднением, RMSE дает вес большим ошибкам. Если величина ошибок играет роль, RMSE подходит для определения средних ошибок прогнозирования модели.

Теперь давайте включим все вышеперечисленные показатели в пример OKR:

Цель: разработать чат-бота с искусственным интеллектом на основе НЛП, чтобы повысить уровень удовлетворенности клиентов на 5 %.

Ключевой результат 1: увеличение доли первых ответов на 10 %.

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

Ключевой результат 2. Повышение скорости разрешения запросов пользователей на 20 %.

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

Операционные ключевые показатели эффективности: увеличение количества продаж новых продуктов на 20 %, увеличение количества продлений поддержки для существующих пользователей продукта на 90 %.

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

AI / ML Жизненный цикл продукта

Вы сформулировали проблему, собрали данные, получили согласие заинтересованных сторон на необходимость решения ML/AI, определили свои показатели успеха, что дальше?

Подготовка этикетки

Маркировка данных — это трудоемкий и важный шаг в жизненном цикле продукта машинного обучения, при этом почти 80 % времени проекта ИИ тратится на сбор, организацию и маркировку данных в соответствии с аналитической формой Cognilytica.

Что такое маркировка данных?

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

«Наземная правда» означает проверку результатов алгоритмов ML на точность в сравнении с реальным миром.

Вы можете выполнить маркировку с помощью 1. Внешних сторон или 2. Пользователей.

Факторы, которые необходимо учитывать:

  1. Нужны ли для работы по маркировке специалисты в предметной области?
  2. Для маркировки медицинских данных нужны эксперты в предметной области, а для классификации изображений собак и кошек — нет.
  3. Могут ли пользователи пометить данные как встроенную функцию продукта, аналогичную тегам Facebook?
  4. Это требует разработки дополнительных функций и мониторинга, но в конечном итоге окупается.
  5. Могу ли я передать данные внешним поставщикам, которые предоставляют маркировку как услугу?

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

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

Разработка функций

Что такое функция и что такое разработка функций?

Данные представлены в виде таблицы в виде столбцов и строк. Столбец — это атрибут, переменная-предиктор или функция. Атрибут является функцией, если он представляет структуру проблемы и влияет на результат. Не все атрибуты являются функциями.

Функция — это отдельное измеримое свойство ИЛИ характеристика наблюдаемого явления.

Функции идентификации, поведенческие функции, социальные функции — это индивидуальные функции.

Атрибуты, обеспечивающие структуру возникновения события или явления, – это функции, связанные с событием.

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

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

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

Модель обучения

Определив показатели производительности модели, специалист по обработке и анализу данных освобождается от работы. Итак, что еще нужно учитывать с точки зрения PM?

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

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

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

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

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

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

Еще одно важное решение, которое может принять PM, — это смягчить или исправить предвзятость, открыв ее для пользователей. Например, Facebook позволяет пользователям пометить/исправить рекомендацию по тегированию. Цикл обратной связи должен быть продуман и встроен в процесс обучения и развития, прежде чем он будет развернут для всех пользователей.

Развертывание модели

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

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

  1. Сколько пользователей имеют доступ к этой функции машинного обучения? Помните, что это зависит от того, что вы строите. Потребности меняются в зависимости от того, является ли это функцией продукта или продуктом, полностью управляемым ИИ.
  2. Выполняется ли прогноз в режиме реального времени или доступен с заданной периодичностью, например ежечасно, ежедневно, еженедельно и т. д. Прогноз закрытия сделки в CRM-системе продаж не обязательно должен быть в режиме реального времени, в то время как рекомендуемые акции на торговом портале должны быть в режиме реального времени.
  3. Каковы требования к задержке? Результат прогноза появляется менее чем за секунду?

Управление моделями

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

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

Вывод

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

Данные — это просто резюме тысяч историй — расскажите несколько из этих историй, чтобы сделать данные значимыми». — Чип и Дэн Хит

Использованная литература: