Отбор и подготовка данных под проекты машинного обучения

Software
Источник: GAAP.RU
Опубликовано: 8 мая 2020

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


Авторы оригинальной статьи: Чандру Чилакапати (Chandu Chilakapati), управляющий директор Alvarez & Marsal Valuation Services; Дэвин Рошфор (Devin Rochford), директор Alvarez & Marsal Valuation Services

По материалам: CFO

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

  1. Как много данных требуется?
  2. Есть ли опасность так называемого “перекрестного заражения” наборов данных?
  3. Присутствуют ли смещения в данных?
  4. Каков подход к обращению с данными нечислового формата?

Разберем их по отдельности.

Как много...?

Каждый проект машинного обучения по-своему уникальный, поэтому объемы данных, требующихся в каждом отдельном случае, зависят от сложности задачи и качества самих данных. Однако во многих случаях ответ можно сформулировать следующим образом: “Меньше, чем вы думаете” - и несильно покривить против истины.

Термин “машинное обучение” часто используется рядом с “большими данными”, это верно, однако на деле машинное обучение вполне можно применять к наборам данных, исчисляемых тысячами и даже сотнями (и в том, и в другом случае в данной области это немного). Чтобы проверить данное утверждение, авторы статьи применяли обычные алгоритмы контролируемого машинного обучения в отношении 30 отдельных элементов вводных данных, взвешенных с равной вероятностью для предотвращения предпочтения какого-либо конкретного элемента всем прочим. Эти 30 элементов данных получили исход, предсказать который ни один живой аналитик на основе случайно отобранных данных не смог бы. А вот алгоритмы машинного обучения стали предсказывать исход с вероятностью более 90% после более чем 4000 наблюдений. Так что “большие данные” вовсе не обязательны для машинного обучения!

Опасность “перекрестного заражения”

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

С разбивной данных, основанных на случайной выборке, могут возникнуть сложности, если набор данных имеет множественные наблюдения одного и того же элемента с течением времени. Для примера, предположим, что компания в розничной торговле хочет создать механизм прогнозирования прибыльности торговой точки на основе ежемесячных наблюдений прибыльности по всем своим торговым точкам за последние пять лет. Если случайным образом разбить эти данные, в обоих основных наборах (тестовом и обучающем) могут оказаться наблюдения по одной и то же торговой точке за пять лет. В этом случае, даже если убрать из данных идентификационные номера каждой торговой точки, алгоритмы машинного обучения все равно смогут определить, какая из них какая, и аккуратно предсказать прибыльность по каждой – на основе того, каким был идентификатор, а не на основе каких-то еще факторов, влияние которых хотелось бы узнать. Поэтому сопоставление тестовых и обучающих результатов отразит по итогу искусственно завышенную точность по причине “перекрестного заражения”.

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

А было ли смещение?

Одним из ключевых преимуществ алгоритмов машинного обучения является то, что они не применяют эвристических правил и не подвержены смещению, превалирующему в принятии решений человеком. Алгоритмы просто используют данные и имеющиеся у них инструменты построения точных предсказаний. Обратной стороной медали является то, что если в самих данных все-таки было смещение, алгоритмы не смогут его скорректировать и исправить. Почти классический пример – отсев резюме кандидатов на открытые вакансии в компании, проверка качества которого выявила, что оптимальный кандидат на ту или иную должность должен а) иметь имя “Джаред” и б) играть в лакросс в школьной команде*.

*Созданное смещением предпочтение кандидатам-мужчинам при найме на работу также имело место в очень известной компании Amazon, опробовавшей технологии искусственного интеллекта в подборе персонала – см. по этой теме: “Сотрудничество” AI и человеческого интеллекта: преимущества и ограничения” (от 19/10/2019)

Те, кто занимался разработкой этих алгоритмов, должно быть, руководствовались тем соображением, что если они опустят такие факторы как расовая принадлежность, пол, образование, они создадут менее смещенную модель. Безусловно, но даже в этом случае данные, с которым они работали, содержали в себе скрытое смещение (в результате чего все резюме от молодых людей по имени “Джаред”, в случае если те играли в лакросс в школе, отбирались из общей кипы, а все прочие - отсеивались). Рейтинги предыдущих кандидатов оказались смещены, потому что выставлялись людьми с определенной расовой принадлежностью и другими характеристиками, что и привело к недопустимому смещению в функционировании всего алгоритма.

Как этого не допустить? Если обращаться к помощи машины в предсказании будущей результативности (рейтинга) кандидата, опираясь при этом на исторические рейтинги, необходимо сначала убедиться, что в исторических наборах данных смещение отсутствует. Если в подготовке исторических наборов участвовали люди и допустили смещение, машина просто его повторит. Любопытно, что в приведенном здесь примере смещение выявила не компания, к которой обратились с просьбой провести отсев резюме кандидатов, а топ-менеджеры самой организации-заказчика – на основе личного опыта.

Как быть с данными нечислового формата?

Разработка алгоритма контролируемого машинного обучения предполагает, что работать будем с числовыми данными. Прибыли, убытки и другие финансовые показатели – здесь никаких проблем не возникнет. Но что если, как во многих проектах, потребуется интерпретация нечисловых данных? Если не перевести грамотно содержание текста или графических элементов в цифры, модели это потенциально может очень навредить. Предположим, структура компании разбита по сегментам, каждый из которых можно “конвертировать” в цифровой индекс, исходя из алфавитного расположения первой буквы в названии. Логика вроде бы проста как по своей сути, так и в плане применения, но что если в результате “потребительские товары” окажутся рядом с какими-нибудь “ремонтными принадлежностями”, в результате чего алгоритм будет их рассматривать как очень близкие, хотя на самом-то деле – ничего общего? Есть различные подходы к безопасной конвертации нечисловых данных, такие как векторизация текста – трансформация текстовых элементов в числовой вектор признаков, который машина сможет понять.

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

Теги: машинное обучение  “большие данные”  “перекрестное заражение”  данные нецифрового формата  нечисловые данные  векторизация текста