26 мая 2024, воскресенье, 15:15
TelegramVK.comTwitterYouTubeЯндекс.ДзенОдноклассники

НОВОСТИ

СТАТЬИ

PRO SCIENCE

МЕДЛЕННОЕ ЧТЕНИЕ

ЛЕКЦИИ

АВТОРЫ

Полный бред! Скептицизм в мире больших данных

Издательство «Манн, Иванов и Фербер» представляет книгу Карла Бергстрома и Джевина Уэста «Полный бред! Скептицизм в мире больших данных» (перевод Елизаветы Пономарёвой).

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

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

Предлагаем прочитать фрагмент из главы «Полная чушь в больших данных».

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

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

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

Поскольку в сердце этой системы лежат данные, редко нужна профессиональная подготовка в области теории вычислительных систем, чтобы обнаружить неубедительные заявления или сомнительное применение. В большинстве случаев нам не нужно детально разбираться в алгоритме обучения. Также нам ни к чему понимать, как устроена программа, которую он генерирует. (В так называемых моделях глубокого обучения никто, включая создателя алгоритма, на самом деле не понимает, как работает сгенерированная им программа.) Всё, что вам нужно, чтобы найти проблемы, — проанализировать обучающий набор данных и метки, которые скармливают алгоритму. Начните с неудачных данных и меток, и вы получите плохую программу, которая в ответ будет давать неудачные прогнозы. Это происходит так часто, что в информатике ситуация описывается выражением «мусор на входе — мусор на выходе». Мы хотим прикрутить фитиль раздутой славы искусственного интеллекта, сосредоточившись на данных, а не на деталях алгоритмов внутри черного ящика.

Перспективы ИИ подстегивают экономическую активность и вдохновляют на потрясающие научно-фантастические сюжеты, но также формируют безосновательные ожидания, стимулируют безответственные исследования как в промышленности, так и в науке, угрожают лишить нас всякой надежды на приватность личных данных и сбивают с толку законодателей. Исследователи и технические специалисты слишком много времени уделяют соблазнительному фантастическому будущему и слишком мало — унылому настоящему. Как сказал Закари Липтон, исследователь ИИ из университета Карнеги — Меллона, «законодатели абсолютно серьезно проводят совещания, на которых говорят о правах роботов, вместо того чтобы обсудить дискриминацию, проникающую в решения, принимаемые алгоритмами». Исследовать тонкости контроля над алгоритмами может быть скучнее, чем сочинять билль о правах роботов или изобретать способы спасти человечество от восстания суперинтеллектуальных машин, как в «Терминаторе». Но чтобы решить проблемы, которые ИИ ставит перед нами прямо сейчас, нам нужно понимать данные и алгоритмы, которые мы уже используем для решения более банальных задач.

Существует огромная пропасть между паникой на тему ИИ в масс-медиа и реальностью, в которой на самом деле ведутся исследования в этой области. Илон Маск, основатель Tesla, SpaceX и PayPal, на национальном собрании 2017 года предупреждал правительства штатов в США, что ИИ представляет «фундаментальный риск существованию человеческой цивилизации». Примерно в то же время журнал Fast Company раздувал подобные страхи в статье под названием «ИИ изобретает язык, который не могут понять люди. Не пора ли его остановить?». Звучит жутко. Там рассказывалось о неудачном исследовании в Facebook*. Пытаясь создать чат-бота, который мог бы вести убедительную беседу, исследователи попытались заставить компьютерные алгоритмы учить друг друга речи. Но язык, на котором они говорили, совсем не напоминал человеческую речь. Fast Company сообщил, что ученые быстро закрыли проект. Очевидно, Skynet начал обретать сознание, но катастрофа была предотвращена. Ну, или, по крайней мере, такой вывод можно было сделать из посвященных исследованию статей.

Так как же звучал язык роботов? Давайте взглянем на отрывок из беседы чат-ботов.

Робот Боб. Я могу могу я я всё остальное.
Бот Алиса. Шарики мне ничего мне мне мне мне мне мне мне мне мне мне мне мне.
Боб. Ты я всё остальное.
Алиса. Шарики возьми шарик мне мне мне мне мне мне мне мне мне мне мне мне.

Возможно, ИИ и правда эволюционирует до создания собственного языка и обретет сознание. Если так, надеемся, что он будет жить в мире и гармонии с людьми. Но этот чат-бот в Facebook* не пошел по пути эволюции. В своей записи о проекте команда ученых из Facebook* рассказала, что в их исследовании язык чат-ботов превратился просто в повторение бессмыслицы. Пресса раздула из этого драматическую историю о том, как шокированные ученые торопятся закрыть проект, чтобы спасти человечество. Но когда журналисты Snopes спросили разработчиков, что случилось, те ответили, что совершенно не волновались. Их изумила только реакция прессы. «Не было никакой паники, — рассказал один из исследователей. — И проект не был закрыт». Ученые не боялись за человечество. Они просто заметили, что чат-боты не двигаются к цели обучения — речи, понятной человеку, — и начали всё сначала.

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

Как машины видят

Готовы поспорить: размышляя о новейших цифровых технологиях, вы не задумываетесь о почтовой службе США. Но на самом деле мало какая индустрия настолько зависит от прогресса в области машинного обучения.

Почтовая система США обрабатывает полмиллиарда почтовых отправлений каждый день. Это огромное число. Если все семь миллиардов человек на планете отправят письмо или посылку, то с ними можно будет справиться за пару недель. Хотя, конечно, адрес на каждом нужно прочитать и интерпретировать. Если он напечатан, то эту задачу вполне резонно поручить машинам. Подписи от руки сложнее, но в почтовой службе США разработали замечательную программу распознавания почерка, которая корректно интерпретирует рукописные адреса в 98 % случаев. Это и открытки из отпуска, которые посылает ваш доктор, и обращение вашей бабушки депутату, и письмо вашей шестилетней дочери в зоопарк с просьбой снять видео с маленьким жирафенком.

Как быть с теми 2 % писем, которые не могут прочитать машины? Они отправляются в огромный почтовый комплекс в Солт-Лейк-Сити. Там эксперты по адресам дешифруют нечитабельные надписи двадцать четыре часа в сутки, семь дней в неделю, в тридцать три смены. Самый оперативный сотрудник может обработать более 1800 адресов в час, а это адрес в две секунды! За ним даже эльфам Санты сложно угнаться.

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

Как компьютер это делает? Мы уже почти всё объяснили в примере с кошками и собаками. Сначала мы собираем обучающий набор. Нам нужна большая коллекция цифр, написанных от руки, — тысячи изображений, — которые люди пометили как 0, 1, 2... 9. В основном предел способности компьютера обучиться зависит от доступности качественных меток, на которых можно тренировать машину. К счастью для почтовой системы, еще много лет назад была создана огромная база помеченных цифр, написанных вручную. Это Усовершенствованная база Национального института стандартов и технологий (MNIST), в которую входит 70 тысяч размеченных изображений цифр, сходных с теми, что показаны ниже.

Так как же алгоритм «видит» изображения? Если у вас нет подготовки в области машинного зрения, это может показаться волшебством. Давайте ненадолго отвлечемся, чтобы узнать, как оно работает.

Компьютер хранит изображения в виде матриц. Матрицу можно представить себе как таблицу, состоящую из строк и столбцов. Каждая ячейка в таблице содержит число. Для простоты представим, что изображение черно-белое. Если ячейка черная, то ее значение — 0, в противном случае ее значение — 1**.

Изображение ниже, состоящее из 28 строк и 28 столбцов, обозначает цифру 4. В нем 784 квадрата, каждый из которых — 1 или 0. Компьютеры распознают изображения через такие матрицы. Видеть цифру 4 — значит идентифицировать уникальные качества матрицы, которые соответствуют четверке, написанной от руки, а затем сравнить матрицы сходных изображений.

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

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

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

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

Граница, показанная выше, — наша модель — отлично справляется и корректно отделяет данные из обучающего набора. Каждая точка выше границы — темная, а каждая ниже — светлая. Однако когда мы добавили еще сотню точек (на рисунке ниже), у нас одиннадцать темных оказались ниже границы, а девять светлых точек — выше нее. Вышло так, что наша линия, которую мы выбрали на основе обучающего набора, вилась и кружилась между темными и светлыми точками и приняла случайный мусор в данных за значимую закономерность. Наша модель переобучилась.
Ошибочно помечены: 11 темных, 9 светлых

Чтобы избежать переобучения, попытаемся использовать более простую модель. Давайте возьмем в качестве границы прямую линию. Хотя прямая может быть слишком простой для большинства наборов данных, здесь она проиллюстрирует нашу идею. Эта менее сложная модель несовершенна — не существует прямой линии, которая бы идеально отделяла светлые точки от темных, — но мы можем найти прямую линию, которая будет ошибаться только в случае с семью темными и десятью светлыми точками.
Более простая модель не будет изгибаться и закручиваться во все стороны, чтобы каждая точка оказалась на своем месте, она не переобучается. Таким образом, она работает почти одинаково хорошо как на обучающем наборе, так и на тестовых данных. Во время тестирования эта модель ошиблась с шестью темными точками и пятью светлыми точками.
Ошибочно помечены: 7 темных, 10 светлых

Ошибочно помечены: 6 темных, 5 светлых

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

Мусор на входе — мусор на выходе

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

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

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

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

Давайте вернемся к почтовой службе. В этом случае данные, использованные для обучения алгоритма, и правда очень хороши. База рукописных букв и цифр MNIST всеобъемлюща. Легко проставить корректные метки для каждого изображения. Тут практически нет места чуши. Методы исправно работают, машины сортируют почту быстро и эффективно, экономя отправителям и получателям миллионы долларов.

Однако даже сравнительно простая задача чтения рукописных адресов наталкивается на проблему ошибки выборки. Если бы наши обучающие данные включали только цифры, написанные жителями США, алгоритм неправильно бы классифицировал многие единицы как семерки, потому что в остальном мире единицу иногда пишут с «носиком» на вершине (а семерку — с черточкой, чтобы ее отличить).

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

Неизвестно, что именно расследовать и какие источники считать авторитетными. А после того как вы дали ответ, вполне уважаемые люди всё равно могут не согласиться с вами и заявить, что это не подделка, а субъективное мнение, сатира или иной вариант недостоверной информации. И так как фейковые новости постоянно эволюционируют, обучающий набор 2020 года может устареть уже к 2021 году.

Чтобы разоблачить очередной стартап в области ИИ, часто достаточно выяснить, какими обучающими наборами в нем пользуются. Откуда они взялись? Кто их помечал? Насколько они репрезентативны? Вспомним нашу схему черного ящика.

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

* Facebook — проект компании Meta, которая признана в России экстремистской и запрещена, — Полит.Ру.
** Изображения с оттенками серого предоставляют больше возможностей. Вместо 1 или 0 значения ячеек могут находиться между 0 и 225, где меньшие числа соответствуют более темным оттенкам серого. Для цветных ячеек каждая из них получает значения для красного, зеленого и синего по отдельности. — Прим. авт.
*** Когда доступен обучающий набор с метками, мы называем это машинным обучением с учителем. Если метки с правильными или неправильными ответами недоступны, мы в целом считаем это машинным обучением без учителя. В качестве примера задачи машинного обучения без учителя можно привести задачу найти группы клиентов, которые совершают покупки сходным образом. В этой главе мы фокусируемся на задачах машинного обучения с учителем. — Прим. авт.
**** Когда модель игнорирует как шум, так и важные закономерности данных, это называют недообучением, что также может быть проблемой. В таком случае алгоритм может работать примерно одинаково как с обучающим набором, так и с тестовыми данными, но для обоих наборов качество работы будет равно плохим. — Прим. авт.

Редакция

Электронная почта: polit@polit.ru
VK.com Twitter Telegram YouTube Яндекс.Дзен Одноклассники
Свидетельство о регистрации средства массовой информации
Эл. № 77-8425 от 1 декабря 2003 года. Выдано министерством
Российской Федерации по делам печати, телерадиовещания и
средств массовой информации. Выходит с 21 февраля 1998 года.
При любом использовании материалов веб-сайта ссылка на Полит.ру обязательна.
При перепечатке в Интернете обязательна гиперссылка polit.ru.
Все права защищены и охраняются законом.
© Полит.ру, 1998–2024.