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

1. Понимание области

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

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

2. Понимание бизнес-процессов

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

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

3. Предвзятые ярлыки

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

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

4. Недостаточный исследовательский анализ данных (EDA)

Перед обучением модели машинного обучения крайне важно выполнить исследовательский анализ данных (EDA). Это включает в себя использование таких инструментов, как DF.describe() и DF.plot(), для понимания характеристик данных, включая их распределение, пропущенные значения и выбросы. Проводя EDA, вы можете определить потенциальные проблемы с данными и разработать стратегии для их решения.

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

5. Правильное разделение и использование данных

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

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

6. Выбор правильного количества функций

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

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

7. Вопросы о параметрах производительности

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

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

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