Если такой подход к разумности кажется вам обманом, поскольку сам алгоритм не является разумным, то готовьтесь – худшее еще впереди.
Следующим по сложности шагом после функции автозаполнения идет агент по выдаче рекомендаций. Вспомните свой любимый онлайн-магазин. Изучив ваши предыдущие заказы или даже просто историю просмотров на сайте, этот агент постарается отыскать в своем каталоге товары, которые с наибольшей вероятностью смогут вас заинтересовать. Они подбираются путем анализа базы данных, содержащей миллионы транзакций, поисковых запросов и товаров. Также впечатляет и количество параметров, которые потребуется извлечь из обучающего набора: в каталоге
Сопоставление пользователей с товарами на основании предыдущих операций требует статистического анализа колоссального масштаба. Как и в случае с функцией автозаполнения, традиционного понимания здесь не требуется, так как для подбора рекомендаций не нужны психологические модели покупателей или литературная критика новел. Поэтому неудивительно, что возникает закономерный вопрос: а следует ли вообще называть таких агентов «разумными»? Тем не менее никаких сомнений о самом «обучении» быть не может: с накоплением опыта такие агенты действительно становятся лучше.
Многие вещи со временем усложняются. Онлайн-магазины отслеживают не только покупки, но и пользовательское поведение на сайте. Они могут собирать различную информацию, например товары, которые вы сначала положили в корзину, а затем удалили из заказа, или артикулы, которые вы оценили или добавили в список пожеланий. Есть и другая информация, которую можно получить из одной покупки: время суток, адрес, способ оплаты и даже время, потраченное на оформление заказа. Разумеется, все это подсчитывается для миллионов пользователей.
Поскольку поведение покупателей, как правило, достаточно однообразно, данный массив информации можно использовать для постоянного совершенствования работы агента. Ряд алгоритмов обучения способен динамически адаптироваться к новым условиям, другие же периодически переучиваются в автономном режиме. Но все они используют множество сигналов, полученных в результате наших действий, для коррекции своего поведения. Таким образом они постоянно изучают и отслеживают наши предпочтения, поэтому неудивительно, что временами мы покупаем совершенно не тот товар, которые изначально планировали.
Интеллектуальные агенты могут даже предлагать какие-то товары, чтобы отследить нашу реакцию. Такой способ получения информации по своей ценности ничем не уступает оформлению покупки. Интернет-магазины выступают в роли автономных обучающих агентов, постоянно находящихся на тонкой грани между изучением и эксплуатацией покупателей.
Изучение того, что агенты не знали о вас, может оказаться столь же важным, как и фактическая продажа товара. Проще говоря, агенты любопытны. Эта же стратегия используется спам-фильтрами и другими приложениями, которые должны изучить ваши предпочтения для прогнозирования дальнейших действий. В один прекрасный день техника для дома будет также заинтересована в прогнозировании ваших следующих действий.
Это лишь простейшие примеры. Используя такие же или схожие статистические методы в разных частях и масштабах системы, компьютеры могут научиться распознаванию лиц, транскрибированию речи и переводу текста с одного языка на другой. Если верить некоторым компаниям, специализирующимся на онлайн-знакомствах, то и здесь можно задействовать агентов по подбору потенциальных партнеров. Иными словами, агенты способны подражать сложному человеческому поведению, которое мы не можем полностью смоделировать, и делают они это совершенно не так, как мы.
Машинное обучение – это не только анализ поведения в уже произошедших событиях. Иногда ИИ приходится сталкиваться с новыми ситуациями. Как помочь новому клиенту? Кому порекомендовать новую книгу? В данном случае вся хитрость в том, чтобы научить машины обобщению на основании данных от схожих клиентов или товаров.
Даже новый клиент, который никогда не пользовался данным сервисом, оставляет небольшой информационный след (например, свое местоположение или адрес электронной почты). Способность к обнаружению и использованию сходств иногда называют «распознаванием образом», причем такая способность важна не только на этапе «холодного» старта. На самом деле обобщение (то есть обнаружение закономерностей и сходств) является основой разумного поведения.
Что мы имеем в виду, говоря, что два элемента похожи? Книгу можно описать по количеству страниц, языку, тематике, цене, дате выхода, автору и даже индексу ее читабельности. Если говорить о покупателях, то нужными характеристиками могут считаться возраст, пол или местоположение клиента. В машинном обучении такие характеристики иногда называют «признаками» или «сигналами». При достаточности данных ими можно пользоваться для поиска похожих объектов. Таким образом, машина может делать общие выводы об одной ситуации и применять их к другой, благодаря чему совершенствуется ее опыт.
Одна из ключевых проблем машинного обучения – отбор правильных признаков. Цена книги, к примеру, может быть важнее использованного шрифта. А по мере обработки более сложных элементов, таких как изображения, данная проблема становится еще более актуальной. Если сравнить две фотографии на паспорт, снятые с разницей в одну минуту, то на уровне необработанных (сырых) пикселей данные изображения не будут идентичными. Этого достаточно, чтобы компьютер рассматривал их как два совершенно разных изображения. Нам бы хотелось, чтобы компьютер оценивал такие изображения по более подходящим критериям, нежели пиксели. Тогда компьютер не будет сбит с толку небольшими и незначительными изменениями в изображении. Так какими же признаками изображения необходимо руководствоваться для распознавания одного и того же лица на разных фотографиях?
Это оказалось невероятно сложной задачей, усугублявшейся при изменении освещения, положения объекта и фона, сопутствующих натурным съемкам.
Запрограммировать все варианты напрямую в компьютер чрезвычайно трудно, поэтому инженеры снова обратились к машинному обучению. Один из таких методов, называемый глубоким обучением, продемонстрировал в ряде областей наилучшие результаты. Как и в предыдущих примерах, глубокое обучение сводится к использованию больших данных для оценки миллионов параметров.
Одной из самых нашумевших фраз в исследованиях ИИ является, пожалуй, «глубокое обучение». Несмотря на непривычное название, это всего лишь еще один подход, основанный на больших данных. Именно он помог достичь столь впечатляющих результатов в исследованиях ИИ за последние годы. Глубокое обучение использует технологию под названием «нейронная сеть». Это программный модуль, разработанный для имитации мириад нейронов человеческого мозга, соединенных синапсами, которые и реализуют его беспрецедентную вычислительную мощность. Многие простые процессоры нейронной сети соединены так, что значения на выходе одного процессора могут выступать в роли входных значений для других. Такие входные значения ранжируются по степени своего влияния. Суть в том, что сеть «говорит» сама с собой, используя выходные значения для изменения «входных весов» – то есть обучается, как и мозг.
За несколько коротких лет нейронные сети обогнали устоявшиеся технологии в звании «лучшего способа решения сложных проблем восприятия»: от расшифровки медицинских снимков и распознавания лиц до управления автомобилями. Рассмотрим задачу: в наборе фотографий необходимо выбрать все изображения футбольного матча. Конечно же, программист может написать алгоритм для поиска типичных признаков (например, футбольные ворота), но это слишком большая работа. Нейронная сеть может выполнить работу за вас путем первоначального подбора нужных признаков, таких как границы объектов на изображениях, с последующим переходом к распознаванию самих объектов и даже действий. Например, мяч, поле и игроки с высокой долей вероятности указывают на футбольный матч. Каждый узел слоя ищет определенные признаки на разных уровнях абстракции.
Разница между выходным значением и правильным ответом будет подаваться обратно в сеть для соответствующей корректировки весовых коэффициентов до тех пор, пока не будет постоянно (или большую часть времени) выходить правильный ответ. Процесс, при котором система обучается, получая положительное или негативное подкрепление за свои действия, называется «обучение с подкреплением». Для оптимизации способа сбора подходящих признаков в данные программисту требуется только настроить количество узлов и слоев. Однако, поскольку довольно часто нельзя объяснить, как именно нейронная сеть делает то, что делает, такой «подбор» значений сводится к методу проб и ошибок.
Основанные на абстрактной аналогии с корой человеческого мозга, нейронные сети теперь превратились в сложные математические объекты. В своих ранних воплощениях они не были особенно полезными, но с современным оборудованием и гигантскими наборами данных нейронные сети обрели новую жизнь и оказались способны обеспечить лучшую результативность при выполнении определенного круга задач восприятия (в основном, в областях зрения и речи). Как правило, глубокое обучение используется в составе более крупных систем машинного обучения.
А теперь представьте себе, что все эти «винтики и шестеренки» машинного обучения могут одновременно применяться ко многим частям одной и той же системы. Поисковая система пользуется ими, чтобы научиться тому, как правильно выполнять ваши запросы, оценивать подходящие ответы, переводить документы… все это делается помимо выдачи результатов поиска и выбора правильной рекламы для показа. И это лишь то, что происходит на поверхности.
Скорее всего, неизвестная для пользователей система будет также выполнять тесты для сравнения производительности всевозможных методов на разных случайных подмножествах пользователей. Это еще называется
Несмотря на кажущуюся простоту таких механизмов, результатом их одновременного и постоянного использования в широком масштабе является чрезвычайно адаптивное поведение, которое нам кажется весьма разумным.
Новый способ мышления
Например, Институт судебных экспертиз Нидерландов в Гааге через месяц после выступления Рашида воспользовался системой машинного обучения для поиска подозреваемого в убийстве, который в течение 13 лет скрывался от полиции. Программа смогла проанализировать и сравнить колоссальные объемы образцов ДНК, что потребовало бы колоссального времени для выполнения вручную.
Также к машинному обучению прибегают страховая и кредитная отрасли, используя алгоритмы для создания профилей рисков отдельных лиц. Медицина обращается к статистическому ИИ для сортировки наборов генетических данных, слишком объемных для анализа человеком.
В период зарождения ИИ высоко ценилось понятие «объяснимость», то есть способность системы показать, как именно она пришла к определенному решению. Когда система символического мышления на основе правил делает свой выбор, человек может отследить всю логическую цепочку и понять «ход мыслей» ИИ.
И все же логические выводы, к которым приходит современный ИИ, основанный на больших данных, представляют собой сложный статистический анализ огромного количества точек данных. Это означает, что мы отказались от «почему» в пользу «что». Даже если технический специалист с высокой квалификацией постарается воспроизвести логику выполнения, на выходе может получиться нечто бесполезное. По словам Криса Бишопа из
Питер Флэч из Бристольского университета пытается научить этому принципиально новому образу мышления своих студентов с направления информатики. Программирование – это абсолют, а машинное обучение является в нем степенью неопределенности. Он считает, что нам стоит проявить больше скептицизма. Например, если
Опасность скрыта в том, что мы перестаем задавать вопросы. Сможем ли мы настолько привыкнуть к сделанному за нас выбору, что перестанем это замечать? Теперь, когда интеллектуальные машины начинают принимать непостижимые решения по ипотечным кредитам, диагностике болезней и виновности в совершении преступлений, ставки становятся еще выше.
Что если медицинский ИИ решит, что через несколько лет вы начнете сильно пить? Оправдают ли в таком случае врачей за отказ в трансплантации? Сложно ли будет оспорить решение по вашему делу, если никто не знает, как оно было получено? Некоторые люди могут доверять ИИ куда больше других. «Люди слишком охотно принимают все, что нашел алгоритм, – говорит Флэч. – Компьютер говорит "нет". В этом вся проблема». А вдруг уже где-то есть интеллектуальная система, которая прямо сейчас дает оценку вашей личности – вам настоящему и вам будущему. Вспомните тот случай с Латанией Свини из Гарвардского университета. Однажды она с удивлением обнаружила, что ее поисковый запрос в
В последние годы у нас было несколько крупных промахов. В 2015 году
2016 год тоже отметился: произошел первый несчастный случай, связанный с беспилотным автомобилем. Тогда водитель перевел автомобиль
Существует бесчисленное количество историй, которые не попадают в новости, потому что системы ИИ работают так, как нужно. Однако мы не можем узнать, делают ли подобные системы именно то, что мы от них хотим. Нам нужно уделять пристальное внимание типу данных, которые мы передаем системе, ведь мы поручаем машинам принятие все более сложных решений. Переосмысления требует не только технология, но и ее использование в нашей повседневной жизни.
В эпоху больших данных многие люди обеспокоены конфиденциальностью информации. Но Виктор Майер-Шенбергер из Оксфордского института интернета считает, что на самом деле беспокойство должно вызывать неправильное использование вероятностного прогноза. «В данной сфере существуют серьезные этические дилеммы», – говорит он.
Чтобы ориентироваться в этом мире, нам потребуется изменить представления о том, что же означает искусственный интеллект. Знаковые интеллектуальные системы, которые мы уже создали, не играют в шахматы и не планируют гибель рода человеческого. «Они не похожи на
Когда люди мечтали о создании ИИ по своему образу и подобию, они ожидали увидеть разумные машины, которые будут с человеком на равных. ИИ, который есть сейчас, – он как пришелец. Это форма разума, с которой мы никогда ранее не сталкивались.
Интересно, о чем думает ИИ? Чтобы понять чье-то поведение, нужно знать, о чем этот человек думает. То же самое и с искусственным интеллектом. Новая техника по созданию снимков нейронных сетей в процессе обнаружения проблемы позволяет лучше понять принципы работы сетей – это приведет к повышению эффективности и надежности ИИ.
За последние несколько лет алгоритмы глубокого обучения, основанные на нейронных сетях, достигли прогресса во многих областях ИИ. Проблема в том, что мы не всегда знаем, как именно все происходит. «Система глубокого обучения – это настоящий "черный ящик", – говорит Нир Бен Зрихем из Техниона (Израильского технологического института) в городе Хайфа. – Если система работает – отлично. Если же нет, то вам крупно не повезло».
Нейронные сети – это больше, чем сумма своих компонентов. Они состоят из множества простых элементов – искусственных нейронов. «Вы не можете указать на какую-то конкретную область в сети и сказать, что весь интеллект запрятан там», – говорит Зрихем. Но из-за сложности соединений нейронов невозможно проследить шаги, которые выполняет алгоритм глубокого обучения для достижения нужного результата. В таких случаях сама машина действительно больше похожа на оракула, а ее результаты принимаются на веру.
Для наглядной демонстрации своей точки зрения Зрихем с коллегами создал образы глубокого обучения в процессе работы. По их мнению, подобная техника похожа на функциональную МРТ для компьютеров, поскольку фиксирует активность алгоритма в процессе решения какой-то задачи. Подобные образы позволяют исследователям отследить различные этапы работы нейронной сети, включая тупиковые ситуации.
Чтобы получить нужные динамические образы, команда поставила перед нейронной сетью задачу – сыграть в три классические игры
Результаты похожи на сканы головного мозга человека (см. рис. 2.1), но каждая точка представляет собой снимок одной игры в отдельный момент времени. Различные цвета показывают, насколько успешно действовал ИИ в данный момент игры.
Возьмем, например,
Создание идеальной игровой стратегии – это, конечно, интересно. Но такие сканы помогут нам отточить эффективность алгоритмов, предназначенных для решения реальных задач. Например, наличие изъянов в алгоритме информационной безопасности означает, что при определенных ситуациях систему можно будет легко обмануть, или же алгоритм для одобрения заявки на банковский кредит может выказывать предвзятость к определенной расе или полу. При использовании данной технологии в реальном мире нужно четко понимать, как все работает и что может пойти не так.
Нет сомнений в том, что машинное обучение через нейронные сети имело ошеломительный успех. И все же оно не идеально. Обучение системы для выполнения конкретной задачи происходит медленно, к тому же система не может повторно использовать полученные знания для выполнения другой задачи. От этой проблемы страдает весь современный искусственный интеллект. Компьютеры могут обучаться и без нашего руководства, но приобретаемое таким образом знание совершенно бесполезно за пределами решаемой задачи. Они подобны детям, которые, научившись пить из бутылочки, не понимают, что же делать с кружкой.
Рис. 2.1. Результат «сканирования мозга» нейронной сети
Мюррей Шанахан с коллегами из Имперского колледжа Лондона пытаются решить эту проблему старомодным способом, при котором техники машинного обучения отходят на задний план. Идея Шанахана – воскрешение символического ИИ и объединение его с современными нейронными сетями.
Символический ИИ так и не смог достичь успеха, поскольку описание всего необходимого ИИ вручную оказалось непосильной задачей. Современный ИИ смог преодолеть эту трудность, обучаясь собственным представлениям о мире. Однако эти представления невозможно передать в другие нейронные сети.
Работа Шанахана направлена на то, чтобы реализовать передачу определенных знаний между задачами. Награда этой разработки – ИИ, который быстро учится и требует меньше данных о мире. Андрей Карпати, исследователь машинного обучения в
Высший образ мышления
Человеческий мозг представляет собой сеть из 100 триллионов синапсов, соединяющихся 100 миллиардами нейронов, большинство из которых изменяют свое состояние от 10 до 100 раз в секунду. Подобная структура мозга позволяет нам справляться с такими задачами, как распознавание объектов на картинке.
С другой стороны, суперкомпьютер имеет порядка 100 триллионов байт памяти, а его транзисторы могут выполнять операции в 100 миллионов раз быстрее, чем мозг. Такая архитектура делает компьютер более подходящим для быстрой обработки четко определенных задач.
Однако некоторые задачи решаются эффективнее именно при «мозговой» обработке, даже с учетом сопутствующих недостатков. Например, неопределенным задачам (таким как распознавание лиц) не обязательно нужны высокоточные схемы распознавания по точному маршруту.
Некоторые исследователи изучают мозгоподобные аппаратные архитектуры для имитации маломощных потребностей мозга. Мозг выполняет все вычисления на примерно 20 Вт, что эквивалентно очень тусклой лампочке. Суперкомпьютеру на такие же вычисления требуется 200 000 Вт.
Другие группы ученых стремятся изучить способности мозга по обработке и хранению информации в одном месте. В настоящее время для этих целей создаются проекты по созданию новых «мозгоподобных» компьютерных схем: параллельных, а не последовательных, аналоговых, а не цифровых, медленных и энергосберегающих.
Люди упорно не способны соответствовать идеалу разумности. При принятии решений мы допускаем одни и те же ошибки, и на нас легко влияет информация, не относящаяся к делу. Если же мы поспешно принимаем какое-то решение без должного размышления, то считаем, что «доверяемся интуиции». Раньше нам казалось, что отсутствие таких «особенностей» человека делает компьютеры лучше, однако недавние исследования в области когнитивных наук говорят нам об обратном.
Для людей характерны два взаимодополняющих процесса принятия решений. Первый – медленный, осмотрительный, основанный на логике. И второй – быстрый, импульсивный, способный к сопоставлению текущей ситуации с предыдущим опытом, что позволяет нам быстрее прийти к каким-либо выводам. Второй тип как раз и является залогом столь эффективного человеческого интеллекта.
Несмотря на всю логичность и осмотрительность, у рационального процесса есть и другая сторона – принятие решений требует больших затрат времени и энергии. Допустим, встречная машина начинает перестраиваться в вашу полосу. Вместо того, чтобы пускаться в длительные рассуждения и вычисления оптимальной, но явно запоздалой стратегии, вы должны действовать незамедлительно: воспользоваться звуковым сигналом, нажать на тормоз или перестроиться. Такой «ускоренный» процесс подходит для некритических ситуаций. Если тратить слишком много сил на вычисление оптимальных решений для таких простых вещей, как выбор между темно-синей или темно-голубой рубашками, то очень скоро у вас не останется ни времени, ни сил для принятия важных решений.
Так должен ли ИИ включать в себя интуитивный компонент?
Многие системы ИИ состоят из двух частей. Первая моментально реагирует на ситуацию, а вторая проводит более детальные логические рассуждения. Некоторые роботы создавались с низкоуровневыми слоями, являющимися строго реактивными, и более высокоуровневыми слоями, подавляющими реактивные действия и превращающими их в целенаправленное поведение. Этот подход доказал свою полезность, например когда идущим роботам нужно было преодолеть неровную поверхность.
Была и другая попытка замотивировать ИИ к принятию более правильных решений путем наделения систем эмоциями. Например, если автономный робот несколько раз безрезультатно пытается выполнить одно и то же действие, то реакция «разочарования» должна эффективно побудить его к поиску других вариантов.
Создание машин, имитирующих эмоции, – непростая задача. Марвин Минский, один из создателей ИИ, считает, что эмоции возникают не как следствие одной лишь реакции мозга, а как взаимодействие, включающее в себя множество областей мозга и связующее мозг с телом. Эмоции побуждают нас выбирать те или иные решения. Поэтому идея эмоционально мотивировать части программы, вероятно, подготовит почву для создания человекоподобного интеллекта.
– Люди редко застревают в какой-то проблеме надолго, потому что мы знаем множество способов, как справиться с каждой ситуацией или задачей, – говорит Минский. – Каждый раз, когда ваш излюбленный метод терпит неудачу, вы ищите другой подход. Например, если вам скучно выполнять какую-то работу, то вы можете либо поискать кого-то, кто выполнит ее за вас, либо разозлиться на того, кто поручил вам эту задачу. Мы можем назвать такие реакции эмоциональными, однако они помогают нам справляться с появляющимися проблемами.
Кришна Палем, ученый из Университета Райса в Хьюстоне (штат Техас), является одним из немногих исследователей, которые создают энергосберегающие «мозгоподобные» компьютеры. Его устройства не удостоятся наград за точность – большинство приборов не смогут даже правильно сосчитать сумму элементов. Для них 2 + 2 может с легкостью оказаться 5. Но не позволяйте запутать себя погрешностью в вычислениях. Палем создает машины, которые смогут стать новым рассветом для компьютерных вычислений.
Неточность слабо ассоциируется с компьютерами. С тех пор, как в 1930-х годах Тьюринг установил основополагающие принципы компьютерных вычислений, машины стали приверженцами точности. Их создавали по принципу следования пошаговым инструкциям с точным и повторяемым воспроизведением последовательности. Они не должны были допускать ошибок.
Но, возможно, нам следует разрешить компьютерам ошибаться. Это может оказаться лучшим способом для раскрытия новой волны умных устройств и вывести из тупика высокопроизводительные вычисления. Так мы сможем выполнять сложное моделирование, выходящее за рамки возможностей современных суперкомпьютеров, – модели, которые лучше предсказывают изменение климата, помогают проектировать эффективные автомобили и самолеты, а также раскрывают тайны образования галактик. Такие модели смогут даже раскрыть самую главную загадку всего сущего. Для этого им нужно позволить нам смоделировать человеческий мозг.
До сих пор нам приходилось соглашаться на компромисс между производительностью и энергоэффективностью: компьютер может быть либо быстрым, либо маломощным, но не все сразу. Это означает не только потребность более мощных смартфонов в улучшенных батареях, но и то, что суперкомпьютеры сами станут источником энергии. Экзафлопс-машинам следующего поколения, способным выполнять 1018 операций в секунду, нужно будет потреблять до 100 МВт – это мощность небольшой электростанции. Итак, гонка компьютеров по достижению большего с меньшими затратами началась.
Один из способов – сократить время, которое компьютер тратит на выполнение кода. Чем меньше времени затрачено, тем меньше энергии потреблено. Программистам нужно найти способ получения желаемых результатов быстрее. Возьмем классическую задачу коммивояжера: найти кратчайший маршрут, проходящий через несколько городов. Известно, что решить данную задачу довольно трудно, учитывая тот факт, что количество маршрутов при увеличении количества городов возрастает в геометрической прогрессии. Палем утверждает, что зачастую программисты довольствуются маршрутом, который и наполовину не дотягивает до «лучшего», поскольку дальнейшее улучшение маршрута отнимает слишком много компьютерного времени. В последней версии этого метода предлагается с помощью машинного обучения получать приблизительный результат выполнения отдельных кусков кода. Тогда в процессе работы с программой этот результат будет использоваться каждый раз вместо фактического выполнения исходного фрагмента кода.
Но экономия энергии за счет урезания приложений совсем незначительна. Для настоящей экономии энергии потребуется изменить принципы работы оборудования. Компьютеры могут сэкономить огромное количество энергии, просто перестав эксплуатировать свои транзисторы на полную мощность. Однако в данном случае придется пожертвовать точностью. Команда Палема пытается создать компьютеры, которые смогут ошибаться в расчетах в допустимых пределах. Возьмите любой кажущийся вам хорошим алгоритм, и он решит ту же задачу иначе, поскольку обладает другой физической системой под капотом.
Стандартные компьютерные микросхемы используют кремниевые включения, которые называются «каналами». Они выступают в роли переключателя между включенным (1) и выключенным (0) состоянием. Переключение контролируется вентилем, который останавливает прохождение тока через канал до подачи напряжения. Затем вентиль открывается, как шлюз на дамбе, пропуская ток. Но эта технология комплементарных элементов «металл-оксид-полупроводник» (КМОП-структура) хорошо работает только в том случае, если имеет надежный пятивольтовый источник питания. Начните понижать напряжение, и канал потеряет стабильность – будет иногда переключаться, а иногда – нет.
В 2003 году Палем, перешедший в Технологический институт Джорджии в Атланте, понял, что грядут неприятности. Стало ясно, что способность электронной промышленности к удвоению количества транзисторов в микросхеме каждые 18–24 месяцев (тенденция к миниатюризации, известная как закон Мура) подходит к концу.
Миниатюризация приводила к ошибкам на уровне микросхем. Во многом это было связано с перегревом, радио- или перекрестными помехами между микросхемами с плотной компоновкой. Теперь на первый план вышла проблема потребления энергии. Что если бы можно было приспособить такую нестабильность системы для экономии энергии?
Ответ Палема заключался в попытке разработать вероятностную версию КМОП-структуры с намеренной нестабильностью. Команда Палема создала цифровые схемы, в которых старшие разряды, представляющие собой точные значения, получали пятивольтовое питание. Младшие разряды подпитывались от 1 вольта. Таким образом можно было исказить до половины битов, представляющих число.
Получалось, что разработанная Палемом версия сумматора – общей логической схемы, складывающей два числа, – не работала с обычной точностью. «Когда сумматор складывает два числа, он дает достаточно правильный, но не точный ответ, – говорит он. – Но с точки зрения использования энергии это – наиболее дешевое решение».
Переложите эту модель на миллиарды транзисторов, и вы получите существенную экономию энергии. Хитрость заключается в том, чтобы выбрать приложения, для которых не особо важны младшие разряды. Например, цвет пикселя представляется большим диапазоном чисел. В одном эксперименте Палем с коллегами создали цифровой видеодекодер, который при преобразовании пиксельных данных в экранные цвета неточно интерпретировал младшие разряды.
Они обнаружили, что зрители заметили лишь небольшое ухудшение качества изображения. «Человеческий глаз многое усредняет, – поясняет Палем. – Подумайте о том, как мы воспринимаем иллюзии. Мозг выполняет колоссальную работу по достраиванию изображения».
Воодушевленные этим успехом, исследователи из Университета Райса переключились на другую сферу применения, затрагивающую органы чувств, – слуховые аппараты. Первые тесты показали, что неточная цифровая обработка в слуховом аппарате может вдвое снизить энергопотребление, но приводит к снижению разборчивости лишь на 5 %. Результаты показывают, что эти методы подходят для снижения энергопотребления смартфонов и персональных компьютеров, поскольку они представляют собой аудиовизуальные устройства. Многие сферы применения ИИ (например, распознавание изображений и переводы) также выиграют от использования данных методов.