что приводит к недопущению в машинном обучении
9 проблем машинного обучения
Искусственный интеллект врывается в нашу жизнь. В будущем, наверное, все будет классно, но пока возникают кое-какие вопросы, и все чаще эти вопросы затрагивают аспекты морали и этики. Какие сюрпризы преподносит нам машинное обучение уже сейчас? Можно ли обмануть машинное обучение, а если да, то насколько это сложно? И не закончится ли все это Скайнетом и восстанием машин? Давайте разберемся.
Разновидности искусственного интеллекта: Сильный и Слабый ИИ
Для начала стоит определиться с понятиями. Есть две разные вещи: Сильный и Слабый ИИ. Сильный ИИ (true, general, настоящий) — это гипотетическая машина, способная мыслить и осознавать себя, решать не только узкоспециализированные задачи, но еще и учиться чему-то новому.
Слабый ИИ (narrow, поверхностный) — это уже существующие программы для решения вполне определенных задач: распознавания изображений, управления автомобилем, игры в Го и так далее. Чтобы не путаться и никого не вводить в заблуждение, Слабый ИИ обычно называют «машинным обучением» (machine learning).
Про Сильный ИИ еще неизвестно, будет ли он вообще изобретен. Судя по результатам опроса экспертов, ждать еще лет 45. Правда, прогнозы на десятки лет вперед — дело неблагодарное. Это по сути означает «когда-нибудь». Например, рентабельную энергию термоядерного синтеза тоже прогнозируют через 40 лет — и точно такой же прогноз давали и 50 лет назад, когда ее только начали изучать.
Машинное обучение: что может пойти не так?
Если Сильного ИИ ждать еще непонятно сколько, то Слабый ИИ уже с нами и вовсю работает во многих областях народного хозяйства.
И таких областей с каждым годом становится все больше и больше. Машинное обучение позволяет решать практические задачи без явного программирования, а путем обучения по прецедентам.
Поскольку мы учим машину решать конкретную задачу, то полученная математическая модель — так называется «обученный» алгоритм — не может внезапно захотеть поработить (или спасти) человечество. Так что со Слабым ИИ никакие Скайнеты, по идее, нам не грозят: алгоритм будет прилежно делать то, о чем его попросили, а ничего другого он все равно не умеет. Но все-таки кое-что может пойти не так.
1. Плохие намерения
Начать с того, что сама решаемая задача может быть недостаточно этичной. Например, если мы при помощи машинного обучения учим армию дронов убивать людей, результаты могут быть несколько неожиданными.
2. Предвзятость разработчиков алгоритма
Даже если авторы алгоритма машинного обучения не хотят приносить вред, чаще всего они все-таки хотят извлечь выгоду. Иными словами, далеко не все алгоритмы работают на благо общества, очень многие работают на благо своих создателей. Это часто можно наблюдать в области медицины — важнее не вылечить, а порекомендовать лечение подороже.
На самом деле иногда и само общество не заинтересовано в том, чтобы полученный алгоритм был образцом морали. Например, есть компромисс между скоростью движения транспорта и смертностью на дорогах. Можно запрограммировать беспилотные автомобили так, чтобы они ездили со скоростью не более 20 км/ч. Это позволило бы практически гарантированно свести количество смертей к нулю, но жить в больших городах стало бы затруднительно.
3. Параметры системы могут не включать этику
По умолчанию компьютеры не имеют никакого представления о том, что такое этика. Представьте, что мы просим алгоритм сверстать бюджет страны с целью «максимизировать ВВП / производительность труда / продолжительность жизни» и забыли заложить в модель этические ограничения. Алгоритм может прийти к выводу, что выделять деньги на детские дома / хосписы / защиту окружающей среды совершенно незачем, ведь это не увеличит ВВП — по крайней мере, прямо.
И хорошо, если алгоритму поручили только составление бюджета. Потому что при более широкой постановке задачи может выйти, что самый выгодный способ повысить среднюю производительность труда — это избавиться от всего неработоспособного населения.
Выходит, что этические вопросы должны быть среди целей системы изначально.
4. Этику сложно описать формально
С этикой одна проблема — ее сложно формализовать. Во-первых, этика довольно быстро меняется со временем. Например, по таким вопросам, как права ЛГБТ и межрасовые / межкастовые браки, мнение может существенно измениться за десятилетия.
Во-вторых, этика отнюдь не универсальна: она отличается даже в разных группах населения одной страны, не говоря уже о разных странах. Например, в Китае контроль за перемещением граждан при помощи камер наружного наблюдения и распознавания лиц считается нормой. В других странах отношение к этому вопросу может быть иным и зависеть от обстановки.
Также этика может зависеть от политического климата. Например, борьба с терроризмом заметно изменила во многих странах представление о том, что этично, а что не очень — и произошло это невероятно быстро.
5. Машинное обучение влияет на людей
Представьте систему на базе машинного обучения, которая советует вам, какой фильм посмотреть. На основе ваших оценок другим фильмам и путем сопоставления ваших вкусов со вкусами других пользователей система может довольно надежно порекомендовать фильм, который вам очень понравится.
Но при этом система будет со временем менять ваши вкусы и делать их более узкими. Без системы вы бы время от времени смотрели и плохие фильмы, и фильмы непривычных жанров. А так, что ни фильм — то в точку. В итоге вы перестаете быть «экспертами по фильмам», а становитесь только потребителем того, что дают.
Интересно еще и то, что мы даже не замечаем, как алгоритмы нами манипулируют. Пример с фильмами не очень страшный, но попробуйте подставить в него слова «новости» и «пропаганда»…
6. Ложные корреляции
Ложная корреляция — это когда не зависящие друг от друга вещи ведут себя очень похоже, из-за чего может возникнуть впечатление, что они как-то связаны. Например, потребление маргарина в США явно зависит от количества разводов в штате Мэн, не может же статистика ошибаться, правда?
Конечно, живые люди на основе своего богатого жизненного опыта подозревают, что маргарин и разводы вряд ли связаны напрямую. А вот математической модели об этом знать неоткуда, она просто заучивает и обобщает данные.
Известный пример: программа, которая расставляла больных в очередь по срочности оказания помощи, пришла к выводу, что астматикам с пневмонией помощь нужна меньше, чем людям с пневмонией без астмы. Программа посмотрела на статистику и пришла к выводу, что астматики не умирают, поэтому приоритет им незачем. А на самом деле такие больные не умирали потому, что тут же получали лучшую помощь в медицинских учреждениях в связи с очень большим риском.
7. Петли обратной связи
Хуже ложных корреляций только петли обратной связи. Это когда решения алгоритма влияют на реальность, что, в свою очередь, еще больше убеждает алгоритм в его точке зрения.
Например, программа предупреждения преступности в Калифорнии предлагала отправлять больше полицейских в черные кварталы, основываясь на уровне преступности — количестве зафиксированных преступлений. А чем больше полицейских машин в квартале, тем чаще жители сообщают о преступлениях (просто есть кому сообщить), чаще сами полицейские замечают правонарушения, больше составляется протоколов и отчетов, — в итоге формально уровень преступности возрастает. Значит, надо отправить еще больше полицейских, и далее по нарастающей.
8. «Грязные» и «отравленные» исходные данные
Результат обучения алгоритма сильно зависит от исходных данных, на основе которых ведется обучение. Данные могут оказаться плохими, искаженными — это может происходить как случайно, так и по злому умыслу (в последнем случае это обычно называют «отравлением»).
Вот пример неумышленных проблем с исходными данными: если в качестве обучающей выборки для алгоритма по найму сотрудников использовать данные, полученные из компании с расистскими практиками набора персонала, то алгоритм тоже будет с расистским уклоном.
В Microsoft однажды учили чат-бота общаться в Twitter’е, для чего предоставили возможность побеседовать с ним всем желающим. Лавочку пришлось прикрыть менее чем через сутки, потому что набежали добрые интернет-пользователи и быстро обучили бота материться и цитировать «Майн Кампф».
Пример умышленного отравления машинного обучения: в лаборатории по анализу компьютерных вирусов математическая модель ежедневно обрабатывает в среднем около миллиона файлов, как чистых, так и вредоносных. Ландшафт угроз постоянно меняется, поэтому изменения в модели в виде обновлений антивирусных баз доставляются в антивирусные продукты на стороне пользователей.
Злоумышленник может постоянно генерировать вредоносные файлы, очень похожие на какой-то чистый, и отправлять их в лабораторию. Граница между чистыми и вредоносными файлами будет постепенно стираться, модель будет «деградировать». И в итоге модель может признать оригинальный чистый файл зловредом — получится ложное срабатывание.
9. Взлом машинного обучения
Отравление — это воздействие на процесс обучения. Но обмануть можно и уже готовую, исправно работающую математическую модель, если знать, как она устроена. Например, группе исследователей удалось научиться обманывать алгоритм распознавания лиц с помощью специальных очков, вносящих минимальные изменения в картинку и тем самым кардинально меняющих результат.
Даже там, где, казалось бы, нет ничего сложного, машину легко обмануть неведомым для непосвященного способом.
Первые три знака распознаются как «Ограничение скорости 45», а последний — как знак «STOP»
Причем для того, чтобы математическая модель машинного обучения признала капитуляцию, необязательно вносить существенные изменения — достаточно минимальных, невидимых человеку правок.
Если к панде слева добавить минимальный специальный шум, то получим гиббона с потрясающей уверенностью
Кто виноват и что делать
В 2016 году Рабочая группа по технологиям больших данных при администрации Обамы выпустила отчет, предупреждающий о том, что в алгоритмы, принимающие автоматизированные решения на программном уровне, может быть заложена дискриминация. Также в отчете содержался призыв создавать алгоритмы, следующие принципу равных возможностей.
Но сказать-то легко, а что же делать? С этим не все так просто.
Во-первых, математические модели машинного обучения тяжело тестировать и подправлять. Если обычные программы мы читаем по шагам и научились их тестировать, то в случае машинного обучения все зависит от размера контрольной выборки, и она не может быть бесконечной.
К примеру, приложение Google Photo распознавало и помечало людей с черным цветом кожи как горилл. И как быть? За три года Google не смогли придумать ничего лучше, чем запретить помечать вообще любые объекты на фотографиях как гориллу, шимпанзе и обезьяну, чтобы не допускать повторения ошибки.
Во-вторых, нам сложно понять и объяснить решения машинного обучения. Например, нейронная сеть как-то расставила внутри себя весовые коэффициенты, чтобы получались правильные ответы. А почему они получаются именно такими и что сделать, чтобы ответ поменялся?
Исследование 2015 года показало, что женщины гораздо реже, чем мужчины, видят рекламу высокооплачиваемых должностей, которую показывает Google AdSense. Сервис доставки в тот же день от Amazon зачастую недоступен в черных кварталах. В обоих случаях представители компаний затруднились объяснить такие решения алгоритмов.
Винить вроде бы некого, остается принимать законы и постулировать «этические законы робототехники». В Германии как раз недавно, в мае 2018 года, сделали первый шаг в этом направлении и выпустили свод этических правил для беспилотных автомобилей. Среди прочего, в нем есть такие пункты:
Но что особенно важно в нашем контексте:
Очевидно, что мы будем все больше и больше полагаться на машинное обучение — просто потому, что оно в целом будет справляться со многими задачами лучше людей. Поэтому важно помнить о недостатках и возможных проблемах, стараться все предусмотреть на этапе разработки систем — и не забывать присматривать за результатом работы алгоритмов на случай, если что-то все же пойдет не так.
Кризис машинного обучения в научных исследованиях: обладает ли научной ценностью эксперимент, результаты которого не удалось воспроизвести?
Дисклеймер Статья выражает личное мнение автора, основанное на приведённых в ссылках материалах. Это спорная область и конструктивное обсуждение приветствуется.
В настоящее время в научных кругах назревает понимание кризиса воспроизводимости. Могу поспорить, что основным его источником является применение в научных целях техник машинного обучения.
Машинное обучение всё больше вытесняет традиционно применяемые в научных исследованиях методы статистического анализа. Каковы будут последствия такого замещения для научного сообщества и процесса познания? Некоторые считают, что присущий машинному обучению «подход чёрной коробки» привёл к кризису воспроизводимости научных исследований. В конце концов, может ли эксперимент быть признан научным, если другие исследователи не могут получить тот же результат?
Прим. перев. Автор статьи использует слово «подход», однако стоит отметить, что «чёрная коробка» — скорее побочный эффект. Никто не пытается намеренно скрыть алгоритмы машинного обучения, они прозрачны и поддаются анализу. Проблема состоит в том, что исследователи, применяющие МО в своих исследованиях, далеко не всегда хорошо знакомы с линейной алгеброй — основой алгоритмов. Вектор (для регрессии) или массив (для нейросетей) весов открыт для изучения, проблема состоит только в том, чтобы найти нужные данные среди множества других. Поэтому переводчик склонен был бы назвать подход «чёрной коробки» «эффектом Уолдо».
Машинное обучение (МО) нашло применение в исследованиях всех областей науки и во многом заменило традиционную статистику. И хотя для анализа данных зачастую проще использовать именно МО, присущий этой технологии «подход чёрной коробки» вызывает серьёзные проблемы при интерпретации результатов.
Термин «кризис воспроизводимости» означает, что тревожно большое количество результатов научных экспериментов не нашли своего подтверждения при проведении тех же манипуляций другими группами учёных. Это может означать, что результаты, полученные в ходе изначальных работ, ошибочны. Согласно данным одного анализа, до 85 % всех проведённых в мире исследовательских работ в области биомедицины не привели к значимым результатам.
Адепты статистики и машинного обучения в научных кругах ведут нескончаемый горячий спор относительно кризиса воспроизводимости.
Один из исследователей ИИ, Али Рахими, назвал технологии машинного обучения разновидностью алхимии. Полный текст заявления можно прочитать в соответствующей статье его блога.
Машинное обучение отлично вписывается в научный процесс, что делает практически неизбежным использование этой технологии в исследовательской работе. МО можно рассматривать в качестве инженерной задачи — как сборочный конвейер с моделированием, настройкой параметров, подготовкой данных и оптимизацией компонентов. Цель машинного обучения — поиск оптимальных ответов или прогнозов, что в свою очередь входит в одну из задач исследовательского процесса.
Типы и алгоритмы МО и сами могут стать предметом исследования. В научных источниках можно найти множество статей и материалов на тему методов машинного обучения, как раньше можно было найти работы по статистическим методам.
В феврале 2019 Дженевьера Аллен сделала тревожное заявление для Американской ассоциации содействия развитию науки: учёные, полагающиеся на машинное обучение, обнаруживают определённую систематику в данных, даже если алгоритм просто зацикливается на информационном шуме, который в ходе повторного эксперимента, как правило, не повторяется.
Указанная проблема характерна для множества научных дисциплин, поскольку машинное обучение применяется в различных областях исследования, таких как астрономия, геномика, энвайроментология, здравоохранение.
В качестве яркого примера она ссылается на исследования в области геномики, в которых обычно обрабатываются датасеты размером в сотни гигабайт и даже несколько терабайт. Аллен утверждает, что когда учёные используют плохо изученные алгоритмы машинного обучения для кластеризации профилей генома, это зачастую ведёт к получению правдоподобно выглядящих, но невоспроизводимых результатов.
При этом другая группа исследователей, используя те же методы анализа, может получить значительно отличающиеся результаты, таким образом оспаривая и дискредитируя первоначальный эксперимент. Это может происходить по нескольким причинам:
Недостаточное понимание алгоритма МО
Недостаточное понимание алгоритма — очень распространённая проблема в машинном обучении. Если вы не знаете, как алгоритм выводит результат, как вы можете быть уверены, что он не «жульничает», выводя несуществующие корреляции между переменными?
Это серьёзная проблема при работе с нейросетями ввиду множества параметров (зачастую для глубоких нейросетей количество параметров может составлять миллионы). Помимо этих параметров надо принимать в расчёт и гиперпараметры — такие как скорость обучения, метод инициализации, количество итераций, архитектура нейросети.
Для решения проблемы мало осознать, что исследователь недостаточно хорошо понимает работу алгоритма. Как можно сравнить результаты, если в разных работах применялись отличающиеся по структуре нейронные сети? Многослойная нейронная сеть имеет очень сложную динамическую структуру. Поэтому даже добавление единственной переменной или смена одного гиперпараметра может значительно повлиять на результаты.
Недостаточное знакомство с исходными данными
Плохое понимание исходных данных также является серьёзной проблемой, но эта проблема существовала и во время работы с традиционными статистическими методами. Ошибки в сборе данных — такие как ошибки квантования, неточности считывания и использование замещающих переменных — самые распространённые затруднения.
Субоптимальные данные всегда будут проблемой, но понимать, какой алгоритм применить к какому типу данных — невероятно важно, это значительно повлияет на результат. Это можно продемонстрировать на примере простой регрессии.
При использовании линейной регрессии с бОльшим количеством параметров, чем точек данных (очень частая ситуация в геномике, поскольку имеется очень большое количество генов и довольно мало точек данных), выбор оптимизации параметров серьёзно повлияет на то, какие параметры будут определены в качестве «важных».
При использовании регрессии LASSO это приведёт к приближению переменных, определённых в качестве незначительных, к нулю. Тем самым будет проведён отбор переменных с исключением избыточных.
Гребневая регрессия сжимает названные параметры до пренебрегаемо малых величин, но не исключает их из набора.
При использовании эластичной сети (комбинации LASSO и гребневой регрессии), мы снова получим совсем другие результаты.
Если мы не будем использовать регрессию, алгоритм очевидно будет страдать от переобучения, поскольку у нас будет больше переменных, чем точек данных, и алгоритм просто заполнит все точки данных.
Конечно, для линейной регрессии можно выполнить статистические тесты, которые помогут установить точность в виде доверительных интервалов, p-тесты и тому подобное. Однако такая роскошь не доступна для нейронных сетей, поэтому можем ли мы быть уверены в выводах? Лучшее, что мы можем сделать — точно определить архитектуру и гиперпараметры модели и предоставить открытый исходный код, чтобы другие исследователи могли проанализировать модель и использовать её самостоятельно.
Неверная интерпретация результатов
Ошибочная оценка результатов может быть весьма распространена в научном мире. Одна из причин — видимая корреляция не всегда отражает реальную взаимосвязь. Есть несколько причин, почему переменные А и B могут коррелировать:
Продемонстрировать корреляцию двух значений легко, гораздо сложнее определить её причину. Погуглив «spurious correlations» (ложная корреляция), вы найдёте весьма интересные и забавные примеры, имеющие статистическое значение:
Всё это может выглядеть забавными совпадениями, но смысл в том, что алгоритм машинного обучения, обработав эти переменные единым набором, воспримет их как взаимозависимые, не подвергая эту зависимость сомнению. То есть алгоритм будет неточным или ошибочным, поскольку ПО выделит в датасете паттерны, которых не существует в реальном мире.
Это примеры ложных корреляций, которые в последние годы опасно распространились в связи с использованием наборов данных из тысяч переменных.
Если у нас есть тысяча переменных и миллионы точек данных, определённые корреляции неизбежны. Алгоритмы могут сконцентрироваться на этом и предположить причинно-следственную связь, невольно реализуя технику p-hacking, не слишком одобряемую в академических кругах.
Что такое p-hacking
Суть p-hacking’а состоит в дотошном поиске в наборе данных статистически значимых корреляций и принятии их за научно обоснованные.
Чем больше у вас данных, тем вероятнее найти ложные корреляции двух переменных.
Обычно научный подход последовательно включает формулирование гипотезы, сбор данных и анализ собранных данных для подтверждения обоснованности гипотезы. В процессе же p-hacking’а сначала проводится эксперимент, и по его результатам формируются гипотезы, объясняющие полученные данные. Иногда это делают без злого умысла, но временами учёные прибегают к такому методу только для того, чтобы получить возможность опубликовать больше материалов исследований.
Форсирование корреляций
Ещё одна проблема алгоритмов машинного обучения заключается в том, что алгоритм должен делать предположения. Алгоритм не может «ничего не найти». Это означает, что алгоритм либо найдёт способ интерпретировать данные независимо от того, насколько они соотносятся между собой, либо не придёт к какому-либо определённому заключению (обычно это означает, что алгоритм был неверно настроен или данные плохо подготовлены).
В настоящий момент автор не знает алгоритма машинного обучения, который мог бы прийти к заключению, что данные не подходят для того, чтобы делать обоснованные выводы. Предполагается, что это работа учёного.
Зачем использовать машинное обучение?
Хороший вопрос. Машинное обучение упрощают анализ данных и алгоритмы МО делают за пользователя громадную работу. В тех областях, где учёные имеют дело с действительно большими объёмами данных, традиционные методы статистического анализа оказываются неэффективными и применение МО — единственный разумный способ обработки информации. Однако следует учитывать, что увеличение продуктивности работы за счёт ускорения анализа данных может быть скомпрометировано недостаточным качеством полученных прогнозов.
Что можно сделать?
Конечно, не всё так трагично. Та же проблема всегда присутствовала при использовании традиционных статистических методов анализа. Она лишь усугубилась с появлением больших наборов данных и алгоритмов, которые находят корреляции автоматически и не настолько прозрачны, как стандартные методы. И это усиление выявило недостатки научного процесса, которые ещё предстоит преодолеть.
В то же время при разработке систем машинного обучения нового поколения предстоит проделать серьёзную работу, чтобы можно было точно определить достоверность и воспроизводимость результатов анализа.
Как говорится, плох тот рабочий, что винит в неудаче инструмент, и учёным следует уделять больше внимания применяемым алгоритмам МО, чтобы удостовериться в обоснованности выводов их исследований. Институт рецензирования предназначен для отсеивания необоснованных научных работ, но это также и задача каждого отдельно взятого исследователя. Учёные должны знать принципы работы применяемых ими методов, чтобы понимать ограничения этих инструментов. Если их познаний в этой области недостаточно — возможно, стоит заглянуть на кафедру статистики.
Рахими (тот учёный, что считает МО разновидностью алхимии) предлагает несколько подходов, которые позволят определить, как и когда лучше всего применять определённый алгоритм. Он утверждает, что при выборе алгоритма следует проводить исследования абляции — последовательно удаляя параметры, чтобы определить их влияние на выбранную модель МО. Он также предлагает делать анализ срезов — изучая производительность алгоритма, чтобы определить, как улучшения в определённых областях могут отразиться на чём-то ещё. Наконец, он предлагает прогонять алгоритм на разных наборах гиперпараметров, анализируя производительность системы для каждого из них. Таким образом можно повысить уверенность в результатах прогнозов, полученных с помощью МО.
Из-за природы научного процесса, если вышеописанные проблемы будут решены, ложные взаимоотношения, выведенные в результате исследований с применением машинного обучения будут выявлены и дискредитированы. Истинные же корреляции пройдут проверку временем.
Заключение
Машинное обучение в науке представляет проблему из-за того, что результаты недостаточно воспроизводимы. Однако учёные в курсе этой проблемы и работают над моделями МО, дающими более воспроизводимый и прозрачный результат. Настоящий прорыв произойдёт, когда эта задача будет решена для нейросети.
Дженевьера Аллен подчёркивает фундаментальную проблему искусственного интеллекта: учёные до сих пор не понимают механизма машинного обучения. Научное сообщество должно направить согласованные усилия на изучение принципов работы этих алгоритмов и на определение того, как лучше использовать основанные на обработке данных методы для получения надёжных, воспроизводимых и научно обоснованных выводов.
Даже Рахими, считающий МО алхимией, всё же признает его потенциал. Он отмечает, что алхимия породила металлургию, фармацевтику, технологии окраски тканей, современные процессы получения стекла. Но алхимики также верили в возможность трансмутации металлов в золото и в то, что пиявки — отличный способ для лечения заболеваний.
Как сказал физик Ричард Фейнман в своей речи перед выпускниками Калифорнийского технологического института в 1974 году:
Первый принцип [науки] заключается в том, чтобы не одурачить самого себя. И как раз себя-то одурачить проще всего.