Эволюция разума
Шрифт:
Фон Нейман был глубоко убежден в ускорении прогресса и в его значительном влиянии на жизнь людей в будущем. Через год после смерти фон Неймана, в 1957 г., его коллега математик Стэн Юлам цитировал слова фон Неймана, сказавшего в начале 1950-х гг., что «любое ускорение технологического прогресса и изменения образа жизни людей создает впечатление приближения некой важнейшей сингулярности в истории человеческой расы, за пределами которой человеческая деятельность в том виде, какой мы знаем ее сегодня, больше не может продолжаться». Это первый известный случай использования слова «сингулярность» для описания технологического прогресса человечества.
Важнейшая догадка фон Неймана заключалась в обнаружении сходства между компьютером и мозгом. Заметим, что частью человеческого интеллекта является эмоциональный интеллект. Если догадка фон Неймана верна и если согласиться с моим утверждением, что небиологическая система, удовлетворительно воспроизводящая интеллект (эмоциональный
Большинство современных компьютеров — полностью цифровые машины, тогда как человеческий мозг использует как цифровые, так и аналоговые методы. Однако аналоговые методы легко воспроизводятся в цифровом варианте с любой степенью точности. Американский специалист в области компьютерных технологий Карвер Мид (род. в 1934 г.) показал, что аналоговые методы мозга можно напрямую воспроизвести в кремниевом варианте, и реализовал это в виде так называемых нейроморфных чипов [128] . Мид продемонстрировал, что данный подход может быть в тысячи раз более эффективным, чем цифровая имитация аналоговых методов. Если речь идет о кодировании избыточных алгоритмов новой коры, возможно, имеет смысл воспользоваться идеей Мида. Исследовательская группа IBM под руководством Дхармендра Модхи применяет чипы, имитирующие нейроны и их контакты, в том числе их способность образовывать новые контакты [129] . Один из чипов, названный SyNAPSE, напрямую модулирует 256 нейронов и примерно четверть миллиона синаптических связей. Цель проекта заключается в симуляции новой коры, состоящей из 10 млрд нейронов и 100 трлн контактов (что эквивалентно человеческому мозгу), которая использует всего один киловатт энергии.
128
Carver Mead, Analog VLSI and Neural Systems, Reading, Mass.: Addison-Wesley, 1986.
129
IBM Unveils Cognitive Computing Chips, IBM, Aug 18, 2011, http://www-03.ibm.com/press/us/en/pressrelease/35251.wss
Более пятидесяти лет назад фон Нейман заметил, что процессы в головном мозге происходят чрезвычайно медленно, но отличаются массированной параллельностью. Современные цифровые схемы действуют как минимум в 10 млн раз быстрее, чем электрохимические переключатели мозга. Напротив, все 300 млн распознающих модулей коры мозга действуют одновременно, и квадрильон контактов между нейронами может активизироваться в одно и то же время. Следовательно, для создания компьютеров, которые могли бы адекватно имитировать человеческий мозг, необходимы соответствующий объем памяти и производительность вычислений. Нет нужды напрямую копировать архитектуру мозга — это очень неэффективный и негибкий метод.
Какими же должны быть соответствующие компьютеры? Многие исследовательские проекты направлены на моделирование иерархического обучения и распознавания образов, происходящих в новой коре. Я сам занимаюсь подобными исследованиями с привлечением иерархических скрытых моделей Маркова. По моим оценкам, для моделирования одного цикла распознавания в одном распознающем модуле биологической новой коры требуется около 3000 вычислений. Большинство симуляций построено на значительно меньшем числе вычислений. Если принять, что головной мозг осуществляет около 102 (100) циклов распознавания в секунду, получаем общее число 3 х 105 (300 тыс.) вычислений в секунду для одного распознающего модуля. Если же умножить это число на общее число распознающих модулей (3 х 108 (300 млн, по моим оценкам)), получаем 1014 (100 трлн) вычислений в секунду. Примерно такое же значение я привожу в книге «Сингулярность уже близка». По моим прогнозам, для функциональной симуляции головного мозга требуется скорость от 1014 до 1016 калькуляций в секунду. По оценкам Ганса Моравека, основанным на экстраполяции данных для начальной обработки зрительных сигналов во всем головном мозге, это значение составляет 1014 калькуляций в секунду, что совпадает с моими расчетами.
Стандартные современные машины могут работать со скоростью до 1010 калькуляций в секунду, однако с помощью ресурсов облака их производительность можно существенно увеличить. Самый быстрый суперкомпьютер, японский компьютер «К», уже достиг скорости 1016
Что касается требований к памяти, нам нужно около 30 бит (примерно 4 байта) для каждого контакта с одним из 300 млн распознающих модулей. Если к каждому распознающему модулю подходит в среднем восемь сигналов, получаем 32 байта на распознающий модуль. Если учесть, что вес каждого входного сигнала составляет один байт, получаем 40 байт. Добавим 32 байта для нисходящих контактов — и получим 72 байта. Замечу, что наличие восходящих и нисходящих разветвлений приводит к тому, что число сигналов намного больше восьми, даже если учесть, что многие распознающие модули пользуются общей сильно разветвленной системой связей. Например, в распознавании буквы «p» могут участвовать сотни распознающих модулей. Это означает, что тысячи распознающих модулей следующего уровня участвуют в распознавании слов и фраз, содержащих букву «p». Однако каждый модуль, ответственный за распознавание «p», не повторяет это древо связей, питающих все уровни распознавания слов и фраз с «p», у всех этих модулей древо связей общее.
Сказанное выше верно и для нисходящих сигналов: модуль, ответственный за распознавание слова apple, сообщит всей тысяче стоящих ниже модулей, ответственных за распознавание «e», что ожидается образ «e», если уже распознаны «a», «p», «p» и «l». Это древо связей не повторяется для каждого модуля, распознающего слово или фразу, который хочет информировать модули нижестоящего уровня, что ожидается образ «e». Это древо общее. По этой причине среднее оценочное значение в восемь восходящих и восемь нисходящих сигналов для каждого распознающего модуля является вполне разумным. Но даже если мы повысим это значение, это не сильно изменит конечный результат.
Итак, с учетом 3 х 108 (300 млн) распознающих модулей и 72 байт памяти для каждого, получаем, что общий объем памяти должен составлять около 2 х 1010 (20 млрд) байт. А это весьма скромное значение. Такой памятью обладают обычные современные компьютеры.
Все эти расчеты мы выполнили для приблизительной оценки параметров. Учитывая, что цифровые схемы примерно в 10 млн раз быстрее сетей нейронов в биологической коре, нам не нужно воспроизводить массированный параллелизм человеческого мозга — весьма умеренного параллельного процессинга (по сравнению с триллионным параллелизмом в головном мозге) будет вполне достаточно. Таким образом, необходимые вычислительные параметры вполне достижимы. Способность нейронов головного мозга к переподключению (помним, что дендриты постоянно создают новые синапсы) тоже можно имитировать с помощью соответствующего программного обеспечения, поскольку компьютерные программы гораздо пластичнее биологических систем, которые, как мы видели, впечатляют, но имеют пределы.
Избыточность мозга, необходимая для получения инвариантных результатов, безусловно, может быть воспроизведена в компьютерном варианте. Математические принципы оптимизации подобных самоорганизующихся иерархических систем обучения вполне понятны. Организация мозга далеко не оптимальна. Но она и не должна быть оптимальной — она должна быть достаточно хорошей, чтобы обеспечить возможность создавать инструменты, компенсирующие ее собственные ограничения.
Еще одно ограничение новой коры заключается в том, что в ней нет механизма, устраняющего или хотя бы оценивающего противоречащие друг другу данные; отчасти это объясняет весьма распространенную нелогичность человеческих рассуждений. Для решения данной проблемы у нас есть весьма слабая способность, называемая критическим мышлением, но люди ею пользуются гораздо реже, чем следовало бы. В компьютерной новой коре можно предусмотреть процесс, выявляющий противоречащие данные для их последующего пересмотра.
Важно отметить, что конструирование целого отдела мозга осуществить проще, чем конструирование одного нейрона. Как уже было сказано, на более высоком уровне иерархии модели часто упрощаются (тут просматривается аналогия с компьютером). Чтобы понять, как работает транзистор, нужно в деталях понимать физику полупроводниковых материалов, а функции одного реального транзистора описываются сложными уравнениями. Цифровая схема, осуществляющая перемножение двух чисел, содержит сотни транзисторов, но для создания модели такой схемы хватит одной или двух формул. Целый компьютер, состоящий из миллиардов транзисторов, можно смоделировать с помощью набора инструкций и описания регистра на нескольких страницах текста с привлечением нескольких формул. Программы для операционных систем, компиляторов языков или ассемблеров достаточно сложны, однако моделирование частной программы (например, программы распознавания языка на основе скрытых иерархических моделей Маркова) тоже сводится к нескольким страницам формул. И нигде в подобных программах вы не встретите детального описания физических свойств полупроводников или даже компьютерной архитектуры.