Это часть 5 учебного пособия Пошаговое руководство PM по созданию продуктов на основе машинного обучения из 6 частей.
Ранее мы обсуждали как настроить вашу организацию для эффективной работы - давайте посмотрим, как помочь вашим пользователям извлечь выгоду из результатов.
Модели и результаты машинного обучения не так легко объяснить
Многие алгоритмы машинного обучения являются черными ящиками: вы вводите много данных и получаете модель, которая работает таинственным образом, что затрудняет объяснение результатов. Во многих алгоритмах есть эффекты взаимодействия, которые усложняют объяснение моделей - это отношения между различными функциями, которые объясняют части поведения, которые нельзя объяснить простым сложением эффекта каждой функции по отдельности. Подумайте об этом как о сложном эффекте между функциями - целое больше, чем сумма его частей, во многих странных и замысловатых способах, не усваиваемых человеком.
Тем не менее, вы и ваша команда должны быть убеждены в том, что результаты имеют смысл, и будет легче, если вы сможете понять результаты на уровне, выходящем за рамки сухих статистических показателей. Это также помогает выявить случаи, которые не рассматриваются, или области, в которых результаты не имеют смысла, как мы видели на этапе построения модели. Это еще более важно для ваших пользователей - во многих случаях им потребуется объяснение, прежде чем они доверят вашим результатам. У вас не будет доверия с самого начала, даже если ваши результаты точны на 100%, поэтому вашим пользователям может потребоваться объяснение результатов, которые вы им показываете. В крайних случаях вы даже можете быть юридически обязаны объяснить результат, например, в случае отклонения заявки на получение кредита - по закону вы должны указать клиенту причину отказа. Чтобы усложнить задачу, ваша модель не будет точной на 100%, так как даже 80% точность считается неплохой, поэтому в некоторых случаях пользователи захотят понять результаты, которые на самом деле неверны! Другими словами, панель предназначена для того, чтобы ваш пользователь время от времени видел вопиющие ошибки (что они, вероятно, будут) и по-прежнему доверять вашим результатам в целом. Это высокая планка.
Проблема не ограничивается моделями, используемыми для внешних клиентов - необходимость заручиться доверием пользователей относится также и к внутренним пользователям; даже если они болеют за вас, ваши внутренние команды с гораздо меньшей вероятностью добьются результатов, которых они не понимают или которым не доверяют. Я видел случаи, когда команды предпочитали использовать простой для понимания механизм правил, а не модель машинного обучения, которая, вероятно, даст значительно лучшие результаты только потому, что механизм правил объясним - люди пишут правила, чтобы они могли их понять.
Это не проблема, которую вы можете отложить до тех пор, пока не построите модель (ы) - важно заранее подумать о данных и компонентах модели, которые пользователь может захотеть увидеть, и о том, как представить результаты таким образом, чтобы укрепляет доверие пользователей. Ответ может фактически изменить ваш подход к построению модели и поможет предотвратить ситуацию, когда у вас есть ответ и нет способа объяснить ответ пользователю. Тем не менее, если подумать об этом заранее, это не избавит вас от необходимости сделать это снова, как только вы получите результаты, поскольку построение модели по своей сути является итеративным процессом, и в случае изменения вашей модели могут потребоваться значительные изменения в вашем подходе.
Моделирование для объяснения
Необходимость объяснимости может повлиять на способ построения модели, в том числе на уровень детализации, который необходимо поддерживать. Допустим, мы создаем платформу для инвесторов для оценки стартапов на основе концепции Марка Андреессена, которая гласит, что три основных элемента каждого стартапа - это команда, продукт и рынок. Андриссен считает, что рынок является наиболее важным фактором, но, допустим, другие инвесторы верят, что хорошая команда может найти способы вырастить небольшой рынок, поэтому команда более важна. Вы можете получить общую оценку или вероятность успеха для компаний, которая объединяет эти 3 измерения и дает некоторую абсолютную истину, которая, по вашему мнению, является правильной, но инвесторам может не потребоваться ее покупать. В частности, инвесторы могут захотеть понять, насколько хороша компания в конкретном измерении, которое их больше всего волнует. В дополнение к вашей модели вам может потребоваться дать им возможность увидеть это. Вот несколько разных подходов:
- Постройте 3 отдельные модели для рынка, продукта и команды, каждая из которых оценивает компанию в одном измерении. Затем создайте агрегированную модель, которая объединяет все эти функции (и, возможно, многие другие) в общий результат. Инвесторы могут смотреть как на совокупный результат, так и на конкретные параметры, которые их больше всего волнуют.
- Создайте агрегированную модель и найдите способ извлечь из нее функции, которые наиболее применимы к каждому измерению, и дать пользователям представление об их ценности и важности или показать точки данных, которые соответствуют каждому измерению, чтобы повысить уверенность в результатах.
Правильный подход во многом зависит от вашего проблемного пространства, имеющихся данных, подхода к моделированию и т. Д., Но его следует подробно обсудить и оценить, прежде чем вы переходите к созданию прототипа модели.
Представление результатов пользователям
При принятии решения о том, как показывать результаты, цель должна состоять в том, чтобы сделать их ясными, правдоподобными и, самое главное, действенными. Здесь нет сборника правил - каждая проблема приводит к разному представлению результатов. Я рассмотрю несколько возможных подходов и соображений, чтобы дать вам некоторые идеи.
- Задним числом. При этом используются исторические данные и они подключаются к модели для создания прошлых прогнозов, которые можно проверить на основе известных значений. Например, если вы создаете модель, которая прогнозирует значения в году N на основе данных за год N-1, вы можете подключить данные модели за 2 года назад и посмотреть, верен ли прогноз для года назад, поскольку эта информация известный. Это также потенциальный способ проверить ваши модели. В зависимости от полноты ваших исторических данных может быть сложно получить достаточный охват данных для их полного использования без некоторых упрощающих предположений и / или настроек модели (например, если ваша модель использует данные из социальных сетей, вы не можете датировать время задним числом. где социальных сетей не было). Это также невозможно для некоторых моделей, таких как модели обучения с подкреплением.
- Объяснение ваших методов и входных данных. Простое сообщение пользователю, какие типы данных вы учли в своей модели, укрепляет доверие, помогая ему увидеть, что решения основаны на тех же типах переменных, которые они считали бы собой. если бы им пришлось принять это решение. В примере оценки стартапа Andreessen краткое объяснение части оценки рынка может быть таким: «Рыночный потенциал стартапа учитывает количество компаний на рынке и их общий объем продаж, а также рост этого рынка за последние 5 лет. во всем мире, количество запусков новых продуктов с течением времени, активность слияний и поглощений в космосе и макроэкономические тенденции ». Хотя это не полное объяснение, оно дает пользователю возможность заглянуть в черный ящик. Это определенно необходимо, если вы вводите новую оценку, как обсуждалось ранее.
- Раскрытие некоторых базовых данных. Этот подход проще всего понять пользователям и верить, поскольку они видят данные сами, но не всегда самый простой в разработке и имеет несколько недостатков: вам необходимо раскрыть данные. вы можете не захотеть или не сможете раскрывать (например, потому что это собственность, из-за юридических ограничений и т. д.), данные могут не совпадать с выводом в некоторых процентах случаев (моделирование касается вероятностей), или данные могут не совпадать даже быть там; алгоритму не требуется полное покрытие данных для 100% объектов, которые он оценивает - он может восполнить пробелы в данных, если у него достаточно большая выборка данных для аналогичных объектов.
- Упрощение и отображение только избранных результатов для облегчения принятия решений. Неудивительно, что Amazon хорошо справляется с некоторыми своими рекомендациями по продуктам. Я искал рукав для колена, см. Ниже страницу, на которую я попал из результатов поиска Google.
Amazon знает для каждого родственного продукта точную вероятность того, что я его куплю, но вместо того, чтобы дать мне 30 отсортированных вариантов похожих продуктов, мне предоставляется очень простой выбор между двумя - либо самым дешевым, либо самым продаваемым. + продукт с самым высоким рейтингом. Я ничего не знаю о критериях, которые они использовали для выбора сравнительного набора продуктов, и о том, соответствует ли он тому, что я выбрал бы, если бы у меня была такая возможность, но на данный момент они приняли решение настолько легко для меня, что мне все равно.
- Определение новой метрики. Один вопрос, который вам следует рассмотреть, заключается в том, создаете ли вы новую метрику (новый тип «оценки») или предсказываете хорошо понятную метрику. Вы можете построить свою модель для предсказания существующий показатель (например, доход компании, стоимость дома и т. д.); в качестве альтернативы вы можете создать оценку, которая воплощает определенную концепцию, которая еще не имеет принятой метрики, чтобы включить групповое ранжирование сущностей по этой концепции («оценка FICO для‹ отрасли X ›»). Решение в значительной степени сводится к тому, существует ли одна метрика, которая выражает бизнес-цель, которую вы пытаетесь достичь с помощью своей модели, или это сочетание нескольких факторов, которые необходимо как-то взвесить. Например, если мы оцениваем привлекательность объекта коммерческой недвижимости для розничного использования, мы можем захотеть создать «оценку соответствия розничной торговли», которая будет состоять из нескольких компонентов, таких как объем продаж на квадратный фут, все в стоимости за один квадратный метр. квадратный фут и месторасположение и вклад в ценность бренда (допустим, вы считаете, что местоположение на Пятой авеню добавляет престижа бренду, помимо простого пешеходного движения, которое оно привлекает). В этом случае не существует единой метрики, охватывающей эти метрики, поэтому вам, вероятно, придется смоделировать каждый компонент по отдельности, а затем объединить их с помощью какого-либо типа относительного веса. Важное соображение при выборе новой оценки заключается в том, что вам, вероятно, придется потратить больше времени и усилий на то, чтобы рассказать своим пользователям об этом. Подумайте о том, чтобы убедить первые финансовые учреждения использовать оценку FICO, когда она была впервые представлена ...
- Точность не всегда имеет значение. Многие модели генерируют результаты, которые представляют собой очень точные числа - вероятности, значения и т. д.. Если вы покажете им такие точные числа, вы рискуете, что пользователи воспримут их более буквально, чем вы намереваться. Дом с прогнозируемой стоимостью 583 790 долларов не является однозначно более ценным, чем дом стоимостью 580 625 долларов. Допустимая погрешность, вероятно, намного больше, чем разница в ~ 3 тысячи долларов. Иногда демонстрация результатов клиенту в таких точных терминах контрпродуктивна и заставляет их читать в цифрах больше, чем следовало бы. Возможно, будет хорошей идеей рассмотреть возможность предоставления результатов в виде диапазонов, децилей, оценок или какой-либо другой менее точной меры стоимости, а не показывать клиенту точный результат вашего алгоритма.
- Стратегическое предоставление доступа к необработанным данным. Помимо демонстрации результатов собственных моделей риска, Lending Club предоставляет доступ к своим необработанным данным, чтобы другие люди могли строить на их основе свои собственные модели машинного обучения. Актуален ли этот подход для вас? Может ли это стимулировать рост в какой-то другой сфере вашего бизнеса? Помимо предоставления возможных вариантов монетизации, этот подход также помогает сообществу исследователей машинного обучения ускорить темпы инноваций в этой сфере. Например, наличие наборов данных Microsoft’s COCO и CIFAR значительно улучшило возможности классификации изображений.
Опять же, выбор пользовательского опыта во многом зависит от предмета, продукта и потребностей пользователя - универсального решения не существует. Вполне возможно, что ни один из вышеперечисленных вариантов не будет иметь отношения к вашему продукту. Ключевой вывод - не недооценивать количество мыслей и усилий, которые необходимо вложить в решение проблемы, связанной с пользовательским интерфейсом - даже лучшая модель бесполезна, если пользователи не могут понять ее результаты, доверять им или действовать в соответствии с ними.
Еще одно интересное, но важное замечание
Объяснимость - это развивающаяся область исследований машинного обучения, и исследователи активно ищут способы сделать модели менее похожими на черный ящик. Одним из примеров является LIME (Local Interpretable Model-Agnostic Explanations, также здесь): объяснитель для моделей, которые являются классификаторами (алгоритмы, отображающие входные данные в категории или метки), который используется после построения модели для объяснения результаты понятны человеку. Будет ли это актуальным и / или достаточным для ваших целей, зависит от конкретного случая и моделей, которые вы используете.
Еще одна область исследований - Layer-Wise Relevance Propagation (LRP) - метод деконструкции предсказания нейронных сетей для визуализации и понимания вклада отдельных входных переменных в предсказание.
Хотя инженерные аспекты построения эффективной инфраструктуры машинного обучения в значительной степени выходят за рамки этого руководства, имейте в виду, что потребности продукта могут повлиять на инженерные решения и требования. Подробнее об этом дальше.
Чтобы прочитать больше моих работ по управлению продуктом и подписаться на мой информационный бюллетень, посетите https://producthumans.com/. Скоро появится больше контента (включая машинное обучение)!