В течение последних двух десятилетий технологии искусственного интеллекта — и в первую очередь методы машинного обучения — становятся всё более практичными и доступными: сегодня их могут применять даже разработчики, не владеющие специализированными знаниями в сфере. Всё больше из них применяют прогнозное моделирование, поэтому лидерам и менеджерам необходимо помнить об ошибках, которые могут сделать напрасной всю проделанную командой работу. Издание VentureBeat собрало 9 наиболее распространённых ошибок при обучении моделей и советы о том, как их можно избежать, чтобы корректно построить процесс машинного обучения.
Ошибка 1: смещение выборки
Отправная точка любой программы машинного обучения — формирование обучающей выборки. Обычно организации уже имеют в распоряжении некоторые данные или же знают, где подходящие данные можно получить, например, у государственных учреждений или ассоциаций по своей отрасли. Разработчикам программ машинного обучения, а также их инвесторам, необходимо грамотно сформировать обучающий набор данных. При этом нужно помнить, что выборка должна быть репрезентативной, то есть отражать характеристики совокупности в целом, иначе это может привести к искажению результатов. Например, некорректно проводить опросы исключительно в какой-либо одной точке, где люди с большей вероятность будут обладать теми или иными характеристиками.
Решение: чтобы выборка была репрезентативной, следует выбирать данные в абсолютно случайном порядке, а не использовать некоторый источник лишь потому, что к нему проще получить доступ. Чёткое определение объективного набора данных и логики модели имеют решающее значение при подборе данных. Сотрудничество с предпринимателями, а также помощь сторонних экспертов в оценке критериев отбора на раннем этапе обеспечит разработчикам надёжность выборки
Ошибка 2: отбор нерелевантных признаков
Зачастую разработчики сталкиваются со сложностями при выборе переменных. Отдельные методы машинного обучения требуют более широкого набора признаков. Однако стремясь собрать как можно больше обучающих данных нужно помнить о том, что в них должны присутствовать только подходящие, релевантные признаки.
Решение: чтобы обучаемая модель показывала высокие результаты, нужно провести тщательные исследования и анализ, так как это поможет при выборе и проектировании необходимых признаков. Понимание сферы деятельности и привлечение соответствующих специалистов — два ключевых условия подбора правильных признаков. Помимо этого, такие методы, как рекурсивное исключение признаков, случайный лес, метод главных компонент и автокодировщик помогают проводить обучение на меньшем количестве более информативных признаков.
Ошибка 3: утечка данных
Иногда разработчики машинного обучения непреднамеренно отбирают обучающие данные, отталкиваясь от критериев тех результатов, которые модель пытается предсказать. Как следствие, она покажет неправдоподобно высокие результаты. Например, если команда по ошибке включит переменную, обозначающую лечение заболевания в модель, которая должна предсказывать это заболевание.
Решение: разработчикам нужно быть внимательными при составлении обучающих наборов и использовать только данные, которые на практике будут доступны во время обучения перед тем, как модель будет оценивать результаты.
Ошибка 4: пропущенные данные
В некоторых случаях обучающие массивы могут быть неполными из-за пропущенных в записях значений. Если не сделать на это поправку или предположить, что прощенных значений в выборке нет, это может привести к её сильному смещению. Так, пропущенные значения необязательно будут случайными: например, когда респонденты с меньшей вероятностью будут отвечать на тот или иной вопрос, а подстановка недостающих данных может ввести обучаемую модель в заблуждение.
Решение: если нет возможности построить программу обучения на полных массивах данных, можно применить статистические приёмы, например, исключить пропущенные данные или использовать корректную стратегию подстановки, чтобы рассчитать значения пропущенных данных.
Ошибка 5: неправильное масштабирование и нормализация данных
При составлении обучающего набора для машинного обучения требуется собрать различные типов вводных данных, что может привести к их несбалансированности. Если не привести значения переменных к единой шкале перед тренировкой модели, это может значительно повредить эффективности обучения с использованием таких алгоритмов, как линейная регрессия, метод опорных векторов или метод k-ближайших соседей. Проблемы возникают потому, что широко различающиеся диапазоны значений приведут к большому различию признаков, а это обязательно отразится на результатах. Например, данные по зарплате могут приобрести больший вес, чем возраст, если все эти данные не обработать перед вводом.
Решение: все данные перед тренировкой модели необходимо преобразовать. Это можно сделать с помощью распространённых статистических приёмов, таких как стандартизация или масштабирование признаков в зависимости от типа данных и выбранного командой алгоритма.
Ошибка 6: пренебрежение выбросами
Результаты модели могут серьёзно исказиться, если не принимать во внимание выбросы. Например, алгоритмы вроде AdaBoost увеличивают веса наиболее трудных объектов, которыми часто оказываются выбросы, а деревья решений менее чувствительны к ним. Кроме того, в различных вариантах использования результаты, выделяющиеся из общей выборки, можно учитывать по-разному. Например, при обнаружении мошенничества акцент на выбросах в депозитах будет обязательным условием, в то время как выбросами данных с температурных датчиков можно пренебречь.
Решение: разработчикам стоит либо использовать алгоритмы моделирования, которые корректно учитывают выбросы, либо фильтровать их перед началом обучения. Для начала нужно проверить, содержатся ли в данных выбросы. Наиболее простой способ сделать это — проанализировать массивы данных и вычислить значения, которые значительно отклоняются от среднего.
Ошибка 7: неправильное вычисление признаков
Любые ошибки во вводных данных для обучения модели могут привести к тому, что модель будет выдавать отличные от запланированных, ненадёжные результаты, независимо от того, насколько качественно команда будет проводить обучение. Например, можно понизить эффективность модели для расчёта кредитного рейтинга на основе коэффициента технического использования, если включить данные о неактивных операциях из кредитных отчётов.
Решение: разработчикам нужно тщательно проверить, откуда получены обучающие данные. Критически важно ещё перед началом обучения понять, какие из них — «сырые», а какие — подделаны. Далее перед началом обучения необходимо проверить предположения и подсчёты производных признаков.
Ошибка 8: игнорирование мультиколлинеарных вводных
Применение набора данных без учёта мультиколлинеарных предикторов — ещё одна ошибка при обучении моделей, которая приведёт к неправильным результатам. Мультиколлинеарность означает наличие сильной линейной зависимости между несколькими переменными, что не позволяет оценить влияние какой-либо из них в отдельности. В данном случае незначительные изменения в выбранных признаках могут иметь существенное влияние на результаты.
Решение: Простой способ определить мультиколлинеарность — подсчитать коэффициент корреляции для всех пар переменных. Это даёт ряд возможностей для устранения любой выявленной коллинеарности, таких как построение композиций и отбрасывание избыточных переменных.
Ошибка 9: низкие показатели производительности
Большинство алгоритмов машинного обучения показывают лучшие результаты, когда в обучающих данных различного рода примеры представлены равномерно. Если данные сильно несбалансированы, очень важную роль играют правильные метрики для измерения производительности. Например, при средней штрафной ставке в 1,2 процента доля правильных ответов составит модели достигнет 98,8 процента, и ни в одном из случаев она не предскажет неуплату.
Решение: Если нет возможности создать более сбалансированный набор обучающих данных или же использовать затратный алгоритм обучения, лучшим решением станет подбор бизнес-метрик производительности. Помимо доли правильных ответов есть различные меры производительности модели, например, точность, полнота, F-мера и ROC-кривая (рабочая характеристика приёмника). Определение наиболее подходящей метрики позволит свести к минимуму ошибки при обучении алгоритма.
Важность правильных обучающих данных
Благодаря современным технологиям и инструментам исполнять тренировочные программы для машинного обучения как никогда просто. Однако, чтобы получить надёжные результаты, разработчикам нужно отлично владеть математическим моделированием и статистическими принципами, так как это позволит им подготовить надёжный набор данных, что является важным условием успешного машинного обучения.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.