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

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

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

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

В этой статье мы рассмотрим 5 основных причин смещения в машинном обучении и способы уменьшения их влияния.

№1: Ошибка в алгоритме

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

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

№2: Ошибка в выборке

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

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

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

№3: Предвзятость

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

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

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

№4: Ошибка в измерениях

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

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

№5: Некорректные исключения

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

Заключение

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

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

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

Читайте также:

Читайте нас в Telegram, VK и Яндекс.Дзен


Перевод статьи Sara A. Metwalli: 5 Types of Machine Learning Bias Every Data Scientist Should Know.

Предыдущая статьяScrum на грани вымирания?
Следующая статьяНезаслуженно забытый ForkJoinPool