Большинство современных компьютеров — полностью цифровые машины, тогда как человеческий мозг использует как цифровые, так и аналоговые методы. Однако аналоговые методы легко воспроизводятся в цифровом варианте с любой степенью точности. Американский специалист в области компьютерных технологий Карвер Мид (род. в 1934 г.) показал, что аналоговые методы мозга можно напрямую воспроизвести в кремниевом варианте, и реализовал это в виде так называемых нейроморфных чипов[128]. Мид продемонстрировал, что данный подход может быть в тысячи раз более эффективным, чем цифровая имитация аналоговых методов. Если речь идет о кодировании избыточных алгоритмов новой коры, возможно, имеет смысл воспользоваться идеей Мида. Исследовательская группа IBM под руководством Дхармендра Модхи применяет чипы, имитирующие нейроны и их контакты, в том числе их способность образовывать новые контакты[129]. Один из чипов, названный SyNAPSE, напрямую модулирует 256 нейронов и примерно четверть миллиона синаптических связей. Цель проекта заключается в симуляции новой коры, состоящей из 10 млрд нейронов и 100 трлн контактов (что эквивалентно человеческому мозгу), которая использует всего один киловатт энергии.
Более пятидесяти лет назад фон Нейман заметил, что процессы в головном мозге происходят чрезвычайно медленно, но отличаются массированной параллельностью. Современные цифровые схемы действуют как минимум в 10 млн раз быстрее, чем электрохимические переключатели мозга. Напротив, все 300 млн распознающих модулей коры мозга действуют одновременно, и квадрильон контактов между нейронами может активизироваться в одно и то же время. Следовательно, для создания компьютеров, которые могли бы адекватно имитировать человеческий мозг, необходимы соответствующий объем памяти и производительность вычислений. Нет нужды напрямую копировать архитектуру мозга — это очень неэффективный и негибкий метод.
Какими же должны быть соответствующие компьютеры? Многие исследовательские проекты направлены на моделирование иерархического обучения и распознавания образов, происходящих в новой коре. Я сам занимаюсь подобными исследованиями с привлечением иерархических скрытых моделей Маркова. По моим оценкам, для моделирования одного цикла распознавания в одном распознающем модуле биологической новой коры требуется около 3000 вычислений. Большинство симуляций построено на значительно меньшем числе вычислений. Если принять, что головной мозг осуществляет около 102 (100) циклов распознавания в секунду, получаем общее число 3 х 105 (300 тыс.) вычислений в секунду для одного распознающего модуля. Если же умножить это число на общее число распознающих модулей (3 х 108 (300 млн, по моим оценкам)), получаем 1014 (100 трлн) вычислений в секунду. Примерно такое же значение я привожу в книге «Сингулярность уже близка». По моим прогнозам, для функциональной симуляции головного мозга требуется скорость от 1014 до 1016 калькуляций в секунду. По оценкам Ганса Моравека, основанным на экстраполяции данных для начальной обработки зрительных сигналов во всем головном мозге, это значение составляет 1014 калькуляций в секунду, что совпадает с моими расчетами.
Стандартные современные машины могут работать со скоростью до 1010 калькуляций в секунду, однако с помощью ресурсов облака их производительность можно существенно увеличить. Самый быстрый суперкомпьютер, японский компьютер «К», уже достиг скорости 1016 калькуляций в секунду. Учитывая массированную избыточность алгоритмов новой коры, хороших результатов можно добиться с помощью нейроморфных чипов, как в технологии SvNAPSE.
Что касается требований к памяти, нам нужно около 30 бит (примерно 4 байта) для каждого контакта с одним из 300 млн распознающих модулей. Если к каждому распознающему модулю подходит в среднем восемь сигналов, получаем 32 байта на распознающий модуль. Если учесть, что вес каждого входного сигнала составляет один байт, получаем 40 байт. Добавим 32 байта для нисходящих контактов — и получим 72 байта. Замечу, что наличие восходящих и нисходящих разветвлений приводит к тому, что число сигналов намного больше восьми, даже если учесть, что многие распознающие модули пользуются общей сильно разветвленной системой связей. Например, в распознавании буквы «p» могут участвовать сотни распознающих модулей. Это означает, что тысячи распознающих модулей следующего уровня участвуют в распознавании слов и фраз, содержащих букву «p». Однако каждый модуль, ответственный за распознавание «p», не повторяет это древо связей, питающих все уровни распознавания слов и фраз с «p», у всех этих модулей древо связей общее.