Несколько слов о том, как мы, практикующие данные, должны быть более осведомлены и внимательны к нашим собственным предубеждениям.

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

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

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

С 2016 года я работаю в группе защиты от спама платформы знакомств и социальных сетей, где моей целью является создание решений для обнаружения спамеров и предотвращения их распространения. В начале моей карьеры в компании я совершенно ничего не знал о наших пользователях (как и ожидалось); Я не знал полностью ни нашу демографию, ни их поведенческие модели. Я хочу сказать, что с первого взгляда я не мог сказать, был ли пользователь спамером или нет; кто угодно мог быть одним! Затем, с каждым днем, вы начинаете испытывать и узнавать что-то новое. Ах, этот географический регион, кажется, больше спама, ах, этот домен электронной почты - ужасные новости, ах, такие имена никогда не бывают хорошими и так далее. Проще говоря, я создавал в уме профиль спамера, основываясь исключительно на том, что я узнал, увидел и с чем имел дело. Теперь я должен спросить себя: справедливо ли это знание? Репрезентативен ли этот профиль для всего населения? Является ли мой мысленный портрет «идеального» спамера беспристрастным? Это некоторые из вопросов, которые я задаю себе каждый раз, когда работаю с данными, и, что наиболее важно, каждый раз, когда обучаю новую модель машинного обучения. Почему я задавал эти вопросы? Ну, для начала, я считаю, что в этой работе вы всегда должны задавать себе вопросы. Во-вторых, потому что именно так я признаю человеческую предвзятость и то, какой эффект она могла бы иметь, если бы я ее проигнорировал.

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

Предвзятость подтверждения, тип когнитивной предвзятости, относится к тенденции интерпретировать информацию, свидетельства и данные таким образом, чтобы поддержать и подтвердить взгляды и гипотезы человека, игнорируя при этом любые возможные противоречивые доказательства. Предвзятость подтверждения - одна из самых распространенных, и нетрудно представить, почему это так, в конце концов, предпочтение и подтверждение идей, основанных на том, что мы поддерживаем, в некотором смысле кажется логичным. Ранее я упоминал некоторые возможные теории и характеристики, которые я мог бы узнать о спамерах после столь долгой работы с ними, например, вероятность того, что пользователь будет спамером, если он находится в определенном регионе. Этот факт правдоподобен. Есть регионы с более высокой концентрацией спамеров, чем другие, и, поскольку эта закономерность в какой-то степени распространена, я мог бы подсознательно узнать и подтвердить, что если пользователь X приходит из региона Y, он может быть спамером. Но является ли это достаточным основанием для вывода о том, что этот пользователь является настоящим спамером? Конечно, нет! Тем не менее, при определенных и неблагоприятных обстоятельствах, например, если бы мне пришлось пометить профиль пользователя в течение напряженного дня, я мог бы случайно отметить пользователя как подозрительного, тем самым подтвердив свое предвзятое мнение только потому, что моя гипотеза гласила, что этот пользователь может действительно быть спамером. Тем не менее, я редко делаю это вручную, поэтому шансов, что это произойдет, почти 0.

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

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

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

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

Во-первых, я всегда думаю о часовых поясах. Это потому, что каждый раз, когда я делаю что-то, связанное со временем, например, выбираю X данных за последние Y часов, моя выборка будет в основном сделана из наблюдений из географического региона, который был в пиковое время в эти Y часов. Например, я нахожусь в Европе, поэтому, если в 9 часов утра я сделаю запрос, чтобы выбрать X вещей за последний час, моя выборка, скорее всего, будет сделана из европейских пользователей и людей с бессонницей. Итак, в некотором роде я добавляю предвзятость к своим выборочным данным. Еще один случай, который я выявил, - это различия между платформами и версиями приложений. Запрашивая данные, мы должны помнить, что пользователи используют разные платформы или выпускают версию приложения, что означает, что они могут генерировать разные типы данных. Например, предположим, что однажды группа разработчиков решает, что в следующей версии приложения пользователям будет разрешено загружать миллион изображений в свои профили. Затем, по любой случайной и очень неудачной случайности, в тот же день я решил построить модель, которая обнаруживает спамеров на основе количества изображений, не зная о таких изменениях в приложении. Затем, поскольку функция «миллиона изображений» является новой и не у всех будет обновление, у меня не будет хорошего представления об этой новой группе людей, у которых в профилях миллион изображений, что приведет к некоторым нежелательным результатам во время время обучения и вывода.

Решения?

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

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

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

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

Заключение

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

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