Глава седьмая Цифровая кора — модель биологической коры

Не верь тому, что может думать, но не видно, где у него мозги.

Артур Уизли, персонаж книги «Гарри Поттер и узник Азкабана» Дж. К. Роулинг

Нет, меня не интересует создание мощного разума. Все, что меня интересует, — это создание заурядного ума, что-то вроде ума президента Американской телефонной и телеграфной компании.

Алан Тьюринг[85]

Можно считать, что компьютер «мыслит», если человек не может отличить его от другого человека.

Алан Тьюринг

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

Алан Тьюринг

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

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

Теперь, осуществляя переход от биологического к небиологическому разуму, мы ускоряем процесс обучения еще в тысячи или миллионы раз. После того как цифровая новая кора усваивает какую-то информацию, она может передать ее через минуты или даже секунды. Вот лишь один пример. В моей первой компании Kurzweil Computer Products (KCP, теперь это Nuance Speech Technologies), основанной в 1973 г., мы потратили несколько лет на то, чтобы обучить компьютеры распознавать печатные буквы на отсканированных документах; эта технология называлась омнифонтовым распознаванием знаков (распознаванием знаков любого типа). Эта технология продолжала развиваться на протяжении 40 с лишним лет, и сегодня Nuance производит программу под названием OmniPage. И теперь, если нужно, чтобы ваш компьютер смог распознавать печатные буквы, не нужно учить его этому несколько лет, как это делали мы. Вы просто загружаете выученную компьютером информацию в виде компьютерной программы. В 1980-х гг. мы начали заниматься распознаванием речи, и эта технология, которая также развивалась на протяжении нескольких десятилетий, теперь лежит в основе функционирования Сири (виртуальный помощник в вашем айфоне). И вновь, если нужно, вы за секунды можете включить те знания, что исследовательские компьютеры осваивали на протяжении десятилетий.

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

При усилении биологической новой коры искусственным аналогом не нужно беспокоиться о том, сколько дополнительных единиц новой коры может физически поместиться в нашем теле или мозге, поскольку большая часть этой структуры будет находиться в облаке, как и большая часть используемых сегодня компьютерных систем. Я уже писал, что, по моим оценкам, в нашей биологической новой коре содержится около 300 млн распознающих модулей. Больше в наш череп вместить невозможно — даже после появления у нас в ходе эволюции крупного лба и с учетом того, что новая кора занимает до 80 % всего объема мозга. Но, когда наше мышление будет происходить в облаке, исчезнут природные ограничения, и мы сможем использовать миллиарды или триллионы распознающих модулей — столько, сколько нужно и сколько будет позволять закон ускорения отдачи.

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

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

Имитация мозга

Один из подходов к созданию искусственного мозга состоит в точной имитации биологического мозга. Например, докторант из Гарварда Дэвид Делримпл (род. в 1991 г.) планирует воспроизвести головной мозг нематоды (круглого червя)[87]. Делримпл выбрал нематоду по той причине, что у нее достаточно простая нервная система, состоящая примерно из 300 нейронов, которую он планирует воспроизвести на молекулярном уровне. Он также собирается создать компьютерную модель тела нематоды в соответствующей реальности окружающей среде, так что эта виртуальная нематода сможет (виртуально) добывать себе пищу и делать всякие другие вещи, которые обычно делают нематоды. Делримпл считает, что эта работа станет первым полным воссозданием головного мозга биологического животного в форме виртуального мозга виртуального животного. Являются ли такие виртуальные нематоды (да и биологические нематоды) существами сознательными — вопрос спорный, однако в своей борьбе за пропитание, в процессах пищеварения, попытках избежать хищников и в воспроизведении они должны опираться на определенный осознанный опыт.

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

Развитие идей Маркрама происходило по экспоненциальному закону. В 2005 г. — в первый год реализации проекта — было осуществлено моделирование действия одного нейрона, а в 2008 г. его научная группа моделировала активность целой колонки новой коры головного мозга крысы, состоящей из 10 тыс. нейронов. К 2010 г. исследователи смогли осуществить моделирование 100 колонок, что в сумме составляло около миллиона клеток (Маркрам назвал эту группу клеток мезоцепью). Одна из проблем заключается в том, что мы не имеем возможности проверить точность этого моделирования. Чтобы это сделать, с помощью данной модели нужно продемонстрировать процесс обучения, о чем я расскажу ниже.

К концу 2014 г. Маркрам планировал создать модель целого мозга крысы, состоящую из 100 мезоцепей; эта система включает 100 млн нейронов и примерно 1 трлн синапсов. В своем выступлении на конференции TED (Technology Entertainment Design) в 2009 г. в Оксфорде Маркрам заявил: «Нет ничего невозможного в том, чтобы создать головной мозг человека, и мы сделаем это через 10 лет»[88]. Но теперь он планирует решить эту задачу к 2023 г.[89]

Маркрам и его коллеги строят свою модель на детальном анатомическом и электрохимическом анализе нейронов. С помощью созданного ими автоматического устройства, которое они назвали «пэтч-кламп-роботом»[90], они анализируют состояние специфических ионных каналов, нейромедиаторов и ферментов, отвечающих за электрохимическую активность каждого нейрона. По утверждению Маркрама, эта автоматическая система проделала тридцатилетний объем работы за шесть месяцев. Именно на основании этого анализа они сформулировали идею «кубиков лего», составляющих основную функциональную единицу новой коры.

Реальный и прогнозируемый прогресс в развитии проекта «Голубой мозг»[91].


Важный вклад в развитие метода внесли нейрофизиолог Эд Бойден из Массачусетского технологического института, профессор Крейг Форест из отдела механики Технологического университета Джорджии и его студент Сухаса Кодандарамайах.

Они создали автоматическую систему, способную сканировать нервную ткань с точностью до одного микрометра, не повреждая тонкие мембраны нейронов. «Это то, что может делать робот, но не может человек», — прокомментировал Бойден.

Наконечник «пэтч-кламп робота», созданного в Массачусетском технологическом институте, сканирует нервную ткань.


Говорят, что после моделирования поведения одной колонки новой коры Маркрам заявил: «Теперь нам остается только масштабировать процесс»[92]. Масштабирование, безусловно, важный фактор, но есть и еще один — обучение. Если «Голубой мозг» должен «говорить, мыслить и вести себя во многом как человек», о чем Маркрам говорил в интервью на ВВС в 2009 г., его новая кора должна иметь значительное содержание[93]. Но, как может подтвердить всякий, кто пытался беседовать с новорожденным ребенком, чтобы достичь этой цели, мозг должен очень многому научиться.

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

Второй подход заключается в том, чтобы скопировать образы, содержащиеся в новой коре одного или нескольких взрослых людей, обладающих достаточными знаниями, чтобы нормально пользоваться речью и вообще вести себя как развитый взрослый человек. В данном случае проблема заключается в том, чтобы найти неинвазивный и недеструктивный метод сканирования с достаточным временным и пространственным разрешением и скоростью, чтобы провести эту процедуру быстро и без потерь. Мне кажется, этот метод «загрузки информации» не будет реализован до 2040-х гг.

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

Американский специалист в области информатики Дхармендра Модха и его коллеги из корпорации IBM на клеточном уровне создали модель участка человеческой зрительной коры, состоящий из 1,6 млрд виртуальных нейронов и 9 трлн синапсов, что по размеру эквивалентно новой коре кота. Эта система работает в 100 раз медленнее, чем суперкомпьютер IBM BlueGene/P, состоящий из 147 456 процессоров. Эта работа была удостоена премии Гордона Белла, которая вручается Ассоциацией вычислительной техники (ACM).

Задача таких моделей, как «Голубой мозг» или новая кора Модха, заключается в уточнении и подтверждении функциональной модели. Модель человеческого искусственного разума в принципе будет использовать именно такие алгоритмы. Однако молекулярные модели помогают усовершенствовать эти алгоритмы и более полно изучить наиболее важные детали. В ходе наших экспериментов 1980-х и 1990-х гг., посвященных созданию технологии распознавания речи, нам удалось усовершенствовать наши алгоритмы, когда мы поняли суть реальных превращений, происходящих в слуховом нерве и некоторых участках новой коры. Даже если наша функциональная модель безупречна, понимание ее функционирования в биологическом мозге даст важную информацию о функции и дисфункции человеческого организма.

Для создания моделей мозга нам нужна очень подробная информация о функционировании настоящего мозга. Группа Маркрама собирает собственные данные. Сбору подобной информации и ее передаче широкой научной общественности посвящено несколько крупномасштабных проектов. Например, в результате сканирования головного мозга мышей лаборатория в Колд-Спринг-Харбор получила 500 терабайт информации, которую выложила для общественного доступа в июне 2012 г. Этот проект позволяет пользователям изучать мозг таким же образом, как программа Google Earth позволяет изучать поверхность планеты. Вы можете перемещаться внутри мозга и при более сильном приближении рассматривать отдельные нейроны и их контакты. Вы можете выделить отдельную связь и следовать по ней вдоль всего мозга.

Шестнадцать отделов Национального института здоровья США объединились и выделили 38,5 млн долларов на реализацию проекта под названием «Коннектом человека»[94]. Проект выполняется под руководством Университета Вашингтона в Сент-Луисе, Университета Миннесоты, Гарвардского университета, Массачусетского генерального госпиталя и Университета Калифорнии в Лос-Анджелесе и направлен на создание трехмерной карты связей нейронов в головном мозге человека. С этой целью применяются различные неинвазивные технологии сканирования, включая новые варианты МРТ, магнитоэнцефалографию (МЭГ — измерение магнитных полей, образующихся в результате электрической активности мозга) и диффузионную трактографию (анализ пучков нервных волокон в головном мозге). Как я расскажу в десятой главе, пространственное разрешение неинвазивных методов сканирования мозга увеличивается с невероятной скоростью. Одними из первых результатов проекта были данные Ван Видена и его коллег из Массачусетского генерального госпиталя о том, что в головном мозге существует регулярная сеть нейронов, напоминающая структуру возбуждения нейронов новой коры, о которой я рассказывал в четвертой главе.

Специалист в области компьютерной нейробиологии из Оксфордского университета Андерс Сэндберг (род. в 1972 г.) и шведский философ Ник Востром (род. в 1973 г.) разработали детальный план эмуляции головного мозга, в котором определены подходы к моделированию головного мозга человека (и других существ) на разном уровне детализации — от сложных функциональных моделей до имитации действия отдельных молекул[95].

Схема эмуляции активности человеческого мозга (Andrs Sandberg, Nick Bostrom, Whole Brain Emulation: A Roadmap).


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

[96]

Нейронные сети

В 1964 г., когда мне было 16 лет, я написал письмо профессору Фрэнку Розенблатту из Корнельского университета с просьбой рассказать о машине под названием Mark 1 Perception. Профессор создал эту машину за четыре года до того, и она, как было заявлено, обладала свойствами человеческого мозга. Розенблатт пригласил меня к себе, чтобы опробовать машину.

Система Perception была построена на основе электронных моделей нейронов. На вход в систему подавались двумерные значения. В случае речевых образов одно измерение соответствовало частоте, а второе — времени, так что каждое значение демонстрировало интенсивность частоты в данный момент. В случае зрительных образов каждая точка представляла собой пиксел в двумерном массиве. Входные сигналы случайным образом поступали на модельные нейроны первого уровня. Все связи характеризовались синаптическим потенциалом, отражающим их значимость, который исходно устанавливался случайным образом. Каждый нейрон суммировал поступающие к нему сигналы. Если суммарный сигнал превышал некое пороговое значение, нейрон возбуждался и посылал выходной сигнал на следующий контакт. Если суммарный сигнал был меньше порогового значения, нейрон не возбуждался и выходной сигнал равнялся нулю. Выходные сигналы всех нейронов случайным образом поступали на нейроны следующего уровня. Таких уровней в системе Mark 1 Perception существовало три, и каждый из них мог быть организован в различной конфигурации. Например, какой-то уровень мог иметь обратную связь с предыдущим. На высшем уровне в результате случайного выбора выходных сигналов одного или нескольких нейронов формировался ответ (алгоритм действия сетей нейронов подробно описан в приложении[97]).

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

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

Однако достаточно скоро стало очевидно, что Perception может усвоить лишь ограниченный объем материала. Когда я посетил профессора Розенблатта в 1964 г., я попытался слегка изменить входные данные. Система была натренирована на распознавание печатных букв и делала это достаточно точно. Она довольно хорошо выполняла задачу самоассоциации (узнавала букву, если я закрывал ее часть), но не справлялась с инвариантностью (путалась при изменении размера буквы или шрифта).

Во второй половине 1960-х гг. нейронные сети стали невероятно популярными, и «коннекционизму» была посвящена как минимум половина исследований в области искусственного интеллекта. Между тем, более традиционный подход к созданию искусственного интеллекта состоял в попытках программирования решений специфических задач, таких как распознавание инвариантных свойств печатных букв.

В том же 1964 г. я посетил Марвина Минского, одного из основоположников исследований в области искусственного интеллекта. Хотя он сам выполнил несколько пионерских исследований по изучению нейронных сетей еще в 1950-х гг., он был недоволен активным развитием исследований в этом направлении. Считалось, что нейронные сети не нуждаются в программировании, поскольку обучаются решать задачи самостоятельно. В 1965 г. я поступил в Массачусетский технологический институт. Минский был моим научным руководителем, и я разделил его скептицизм в отношении идеи коннекционизма.

В 1969 г. Минский и Сеймур Пейперт — основатели лаборатории искусственного интеллекта при Массачусетском технологическом институте — написали книгу Perceptrons[98], в которой излагалась проблема персептрона, заключавшаяся в том, что такие персептроны, как Mark 1, не способны определить является ом изображение связанным. Эта книга вызвала бурю гнева. Человек может очень легко определить, является ли образ цельным (связанным), и для компьютера эта задача не представляет никакой сложности. Тот факт, что персептроны не могут этого сделать, многими был воспринят как полный провал.

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

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

Два изображения с обложки книги «Перцептроны» (авторы Марвин Мински и Сеймур Паперт). Верхнее изображение: неподключенный образ (темный участок состоит из двух разъединенных частей. Внизу: образ подключенный.

Разреженное кодирование: векторное квантование

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

Спектр трех гласных звуков. Слева направо: звук [i], как в слове «appreciate», [и], как в «acoustic», и [а], как в «ah». По оси Y отложены звуковые частоты. Чем темнее полосы, тем больше энергии соответствует этой частоте.


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

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

Кое-что у нас получилось. Мы смогли натренировать нашу систему на распознавание речи конкретного человека, пользовавшегося небольшим набором слов (несколько тысяч). Далее мы попытались научить ее распознавать десятки тысяч слов, речь разных людей и непрерывную речь (без пауз между словами), но столкнулись с проблемой инвариантности. Разные люди произносят одну и ту же фонему по-разному: в устах одного человека фонема «и» может звучать, как «а» у другого человека. Даже один и тот же человек не отдает себе отчета в том, как он произносит отдельные фонемы. Характер звучания часто зависит от соседних фонем. Некоторые фонемы полностью исчезают. Произношение слов (то есть сочленение фонем) также весьма вариабельно и зависит от контекста. Те лингвистические правила, которые мы заложили в нашу программу, не смогли учесть чрезвычайную вариабельность разговорной речи.

Спектр слова «hide» («хайд» — прятать). Горизонтальные линии соответствуют формантам — частотам с наиболее высокой энергией.


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

Даже при условии множественных повторов структур мозга мне кажется совершенно невероятным, что мозг обрабатывает 3000 отдельных звуковых сигналов. У меня вызывала большое сомнение столь низкая эффективность эволюции. Теперь мы знаем, что еще до того, как звуковые сигналы попадают в новую кору, в слуховом нерве происходит очень значительное сокращение объема информации. В наших искусственных системах распознавания речи мы тоже применяли фильтры (сначала 16, а потом 32; больше, как оказалось, использовать бессмысленно). Таким образом, в нашей системе в каждый момент времени входной сигнал был представлен 16 числами. И нам предстояло свести эти 16 потоков данных к единому потоку, сохранив при этом информацию, необходимую для распознавания речи.

С этой целью мы использовали математический метод, называемый векторным квантованием. Итак, представьте себе, что в любой момент времени звук (выходящий из уха к мозгу) представлялся компьютерной программой в виде набора из 16 чисел — выходные сигналы, прошедшие 16 частотных фильтров (в человеческом ухе было бы 3000 чисел, соответствующих выходным сигналам из 3000 волосковых клеток). На языке математики каждый подобный набор чисел (3000 в биологической системе или 16 в компьютерной модели) называют вектором.

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

Если у нас имеется множество таких векторов, при нанесении их на график мы можем заметить формирование определенных кластеров.

Для идентификации кластеров нужно решить, сколько их будет. В нашей работе мы обычно допускали существование 1024 кластеров, которые могли пронумеровать и обозначить 10-разрядным двоичным числом (поскольку 210 = 1024). Наша выборка векторов представляет необходимое нам разнообразие. Сначала мы предполагали, что первые 1024 вектора образуют одноточечные кластеры. Затем мы рассматривали 1025-й вектор и находили ближайшую к нему точку. Если это расстояние больше самого маленького расстояния между двумя любыми точками из 1024, мы считаем эту точку началом нового кластера. Тогда мы «схлопываем» два ближайших кластера в единый кластер (при этом у нас по-прежнему остается 1024 кластера).

После добавления 1025-го вектора один из наших кластеров содержит более одной точки. Мы продолжаем действовать таким же образом, все время сохраняя 1024 кластера. Когда мы добавим все точки, мы можем представить каждый многоточечный кластер в виде геометрического центра точек этого кластера.

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


Мы повторяем этот процесс до тех пор, пока не учтем все точки из нашей выборки. Обычно мы укладываем в 1024 (210) кластера миллионы точек (мы также работали с 2048 (211) и с 4096 (212) кластерами). Каждый кластер можно представить в виде единственного вектора, расположенного в геометрическом центре всех точек кластера. Таким образом, сумма расстояний от всех точек кластера до центральной точки минимальна.

В результате применения данного метода вместо миллионов точек, с которыми мы начинали работать, у нас остается всего 1024 точки, оптимальным образом распределенные в пространстве. Неиспользованные части пространства не принадлежат ни одному кластеру.

Далее мы нумеруем наши кластеры (в данном случае приписываем им номера от 0 до 1023). Этот номер является сокращенным, «квантованным» представлением кластера, вот почему данный метод называется методом векторного квантования. Любой новый входящий вектор будет характеризоваться номером кластера, центр которого расположен ближе всего к этому новому вектору.

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

Я описал суть метода в применении к двумерным векторам, но работа с 16-мерными векторами осуществляется по совершенно аналогичной схеме. Мы выбираем векторы с 16 числами, соответствующими 16 различным частотным полосам, так что каждая точка в нашей системе располагается в 16-мерном пространстве. Нам трудно вообразить пространство, распространяющееся более чем в трех измерениях (ну максимум в четырех, если мы добавим шкалу времени), но у математиков нет таких ограничений.

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

Чтение мыслей с помощью скрытых моделей Маркова

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

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

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

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

Я задал себе вопрос: нет ли какого-то математического метода, который помог бы нам анализировать образы в мозге говорящего человека на основании произнесенных слов? Одной фразы, конечно, было бы недостаточно, но если бы у нас имелся большой набор образцов, возможно, мы смогли бы использовать эту информацию для «прочтения» образов в новой коре говорящего человека (или хотя бы сформулировать математический эквивалент, который позволил бы нам распознавать новые словосочетания).

Часто люди недооценивают мощь математического аппарата; подумайте, ведь поиск самой разной информации за считаные секунды с помощью поисковых программ основан на математическом подходе. Так вот, когда в начале 1980-х гг. я занимался проблемой распознавания речи, оказалось, что для решения стоявших перед нами задач практически идеально подходит так называемый метод скрытых моделей Маркова. Русский математик Андрей Андреевич Марков (1856–1922) создал математическую теорию иерархических последовательностей состояний. Модель основана на возможности перехода из одного состояния в другое по цепочке; если переход совершается успешно, следующее состояние характеризуется более высоким уровнем иерархии. Вам это ничего не напоминает?

Простой пример одного слоя в скрытой модели Маркова. Символы от S1 до S4 обозначают «скрытые» состояния системы. Параметры переходов Pi,j соответствуют вероятности перехода из состояния S1 в состояние Sj. Эти вероятности определяются системой путем обучения на тренировочных данных и в рабочем порядке. Новая последовательность (например, новая последовательность звуков) соотносится со значениями Pi,j для определения вероятности воспроизведения моделью этой последовательности.


В модели Маркова учитываются вероятности переходов из каждого состояния в следующее. В ней рассматривается ситуация, когда система следует такой иерархической линейной цепи состояний, но их невозможно проанализировать напрямую — отсюда название «скрытые модели Маркова». На самом нижнем иерархическом уровне подаются сигналы, и это все, что мы можем видеть. Марков предложил математический метод расчета, показывающий, что вероятность каждого перехода должна быть основана на значении выходного сигнала. Этот метод в 1923 г. усовершенствовал знаменитый английский математик Норберт Винер (1894–1964). В результате стало возможным определять связь между звеньями в цепи Маркова; в частности, все связи, характеризующиеся очень низкой вероятностью, стали считаться несуществующими. Именно так действует и человеческая новая кора: если какие-то связи не используются или используются очень редко, они воспринимаются как маловероятные и со временем исчезают. В нашем случае наблюдаемым выходным сигналом является речевой сигнал, издаваемый говорящим человеком, а состояния в цепи Маркова и связи между ними описывают иерархическую организацию новой коры.

Я задумал систему, в которой мы могли бы собирать образцы человеческой речи, применять метод скрытых моделей Маркова для выявления иерархии состояний с их связями и вероятностями (модель новой коры), а затем использовать эту иерархическую сеть для распознавания новых словосочетаний. Для создания системы, способной распознавать речь разных людей, следовало натренировать скрытые модели Маркова на образцах речи многих людей. Добавляя элементы иерархии для воспроизведения иерархической природы языковой информации, мы получили бы в чистом виде иерархические скрытые модели Маркова (ИСММ).

Мои коллеги в компании Kurzweil Applied Intelligence весьма скептически отнеслись к этому плану, учитывая сходство этой модели с самоорганизующимися нейронными сетями, которые уже не были столь популярны и не помогли нам серьезно продвинуться в наших предыдущих исследованиях. Я же указывал, что связи в системе нейронных сетей являются фиксированными и не адаптируются к входным сигналам — веса адаптируются, а связи нет. В системе скрытых моделей Маркова — при условии, что она правильно подготовлена, — исчезают неиспользуемые связи и происходит адаптация.

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

После этого все последующие системы распознавания речи строились на иерархических скрытых моделях Маркова. Другие исследовательские группы, по-видимому, обнаружили достоинства этой модели независимо, и начиная с середины 1980-х гг. именно этот подход лег в основу большинства автоматизированных систем распознавания речи. Скрытые модели Маркова используются и для создания речи: не забывайте, что иерархическая организация нашей биологической новой коры важна не только для распознавания входных сигналов, но и для создания выходных сигналов, таких как речь или движение.

ИСММ также используются в системах, понимающих смысл предложений на более сложном понятийном уровне иерархии.

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


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

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

Простая скрытая модель Маркова для распознавания двух слов разговорной речи.


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

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

После тренировки системы мы приступаем к распознаванию речи, рассматривая альтернативные пути и выбирая наиболее вероятный путь с учетом реальной последовательности входных векторов. Другими словами, если мы видим последовательность состояний, которая с большой вероятностью соответствует данному словосочетанию, мы делаем вывод, что данное словосочетание задается этой кортикальной последовательностью. Такая основанная на ИСММ новая кора содержала метки слов и потому была способна предложить транскрипцию того, что слышала.

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

Эволюционные (генетические) алгоритмы

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

Мы называем данные параметры «Божьими параметрами», поскольку они устанавливаются до включения самоорганизующегося метода определения топологии скрытых моделей Маркова (или, в случае биологической новой коры, до того как человек начинает заучивать урок путем создания связей между нейронами новой коры). Возможно, название неправильное, поскольку эти исходные данные, записанные в ДНК, определены ходом биологической эволюции, хотя некоторые усматривают в этом процессе божий промысел (я, безусловно, считаю эволюцию духовным процессом и обращусь к этой теме в девятой главе).

Когда мы начали устанавливать «Божьи параметры» при моделировании иерархических систем обучения и распознавания, мы опять-таки обратились к природе и попытались оценить их путем моделирования процесса эволюции. Мы использовали так называемые генетические (эволюционные) алгоритмы, основанные на моделировании полового размножения и мутаций.

Я опишу этот процесс в упрощенном виде. Сначала мы определяли способ кодирования возможных решений данной проблемы. Если проблема заключалась в оптимизации исходных параметров какой-то цепи, мы определяли список всех параметров (приписывая каждому специфический объем информации (число битов)) этой цепи. Этот список является своеобразным генетическим кодом генетического алгоритма. Мы случайным образом создавали тысячи и более таких генетических кодов. Каждый код (который представляет собой один набор исходных параметров) рассматривается в качестве модельного организма («решения»).

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

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

Итак, мы описали появление одного поколения модельных организмов. Далее мы повторяли все те же процессы для каждого следующего поколения: определяли, насколько улучшился дизайн (то есть рассчитывали среднее улучшение оценки для всех выживших организмов). Когда результаты оценки организмов из двух последовательных поколений практически переставали улучшаться, мы останавливали цикл и использовали лучшие образцы из последнего поколения[99].

Суть генетического алгоритма (ГА) заключается в том, что создатели программы не программируют решение, а позволяют ему сформироваться в результате многократных имитаций конкуренции и улучшений. Биологическая эволюция — процесс умный, но медленный, и мы попытались этот медленный процесс ускорить. Компьютер действует достаточно быстро, чтобы имитировать смену множества поколений за несколько часов или дней, а наши эксперименты длились несколько недель, так что мы могли наблюдать смену сотен тысяч поколений. Но этот многократно повторяющийся процесс мы должны были воспроизвести лишь однажды. Как только мы запустили процесс искусственной эволюции, достаточно быстро смогли применить полученные усовершенствованные правила к решению реальных проблем. В нашей системе распознавания речи мы использовали их для обнаружения исходной топологии сети и других критических параметров. Итак, мы использовали две самоорганизующиеся системы: ГА для симуляции биологической эволюции, что позволило определить специфический дизайн коры, и ИСММ для симуляции организации коры, определяющей процесс обучения у человека.

Еще одно важное требование для успешного применения ГА заключается в обеспечении надежного метода оценки всех возможных решений. Эта оценка должна быть быстрой, поскольку в каждом поколении приходится анализировать тысячи возможных вариантов. Метод ГА прекрасно подходит для нахождения точного аналитического значения в задачах с очень большим числом переменных. Например, при проектировании моторов приходится учитывать более сотни переменных и удовлетворять десяткам различных условий. Использование инженерами General Electric метода ГА при создании реактивного двигателя позволило добиться более точного соответствия необходимым требованиям, чем применение традиционных методов.

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

Проект «Электрическая овца» Скотта Дрейва — основанная на генетическом алгоритме программа, которая умеет рисовать. Функция оценки использует в качестве оценщиков многие тысячи людей. Рисунки изменяются во времени — вы можете увидеть их на сайте electricsheep.org.

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

Далее мы экспериментировали, вводя в систему небольшие изменения. Например, мы создавали некоторые пертурбации (случайные небольшие изменения) входного сигнала. Другое изменение состояло в том, что мы заставляли соседние марковские цепи «протекать» друг в друга: результаты одной модели влияли на «соседние» модели. В то время мы не отдавали себе в этом отчета, однако производимые нами изменения действительно напоминали процессы, происходящие в структурах биологической коры.

В первую очередь такие изменения снижали эффективность системы (точность распознавания). Однако если мы повторяли эволюционный процесс (то есть перезапускали генетический алгоритм) при наличии подобных изменений, это позволяло адаптировать систему и оптимизировать ее к данным условиям. Обычно это приводило к восстановлению эффективности. Если затем мы удаляли внесенные изменения, эффективность вновь падала, поскольку система эволюционировала для их компенсации. Адаптированная система становилась зависимой от внесенных изменений.

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

Тут возникает дилемма в нашем понимании функционирования биологических кортикальных цепей. Например, было подмечено, что иногда происходит «протечка» кортикальных контактов, что объясняется самой природой биологических связей: электрохимические свойства аксонов и дендритов зависят от электромагнитного воздействия соседних контактов. Представьте, что нам удастся провести эксперимент с реальным мозгом, в котором подобная возможность устранена. Сделать это трудно, но не невозможно. Представьте, что в результате подобного эксперимента мы обнаружили, что кортикальные цепи работают менее эффективно. Нам пришлось бы заключить, что это явление — очень умное эволюционное приспособление, необходимое для достижения максимальной эффективности функции новой коры. А еще пришлось бы признать, что иерархические модели, описывающие восходящие потоки образов и нисходящие предсказательные сигналы, на самом деле гораздо сложнее, поскольку должны учитывать еще и взаимное влияние контактов.

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

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

Вернемся к нашим экспериментам по распознаванию речи. Мы обнаружили, что результаты получаются лучше, если мы запускаем эволюцию (то есть ГА) независимо в исходной системе для 1) иерархических скрытых моделей Маркова для внутренней структуры фонем и для 2) ИСММ для структуры слов и фраз. На обоих уровнях использовались ИСММ, но метод ГА создавал вариации на стыке этих двух уровней. Метод позволил моделировать такие явления, как размывание фонем, что часто случается при сочленении некоторых слов.

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

Используя описанную комбинацию методов самоорганизации системы, мы добились больших успехов. Наши системы распознавания речи впервые смогли разбирать непрерывную речь, состоящую из относительно неограниченного набора слов. Была достигнута высокая точность распознавания речи разных людей, говоривших с разным акцентом и на разных диалектах. Сейчас, когда я пишу эту книгу, последним достижением является программа под названием Dragon Naturally Speaking (версия 11.5) для PC компании Nuance (ранее Kurzweil Computer Products). Тем, кто сомневается в возможностях систем распознавания речи, я советую испытать этот продукт — через несколько минут настраивания на ваш голос при практически непрерывной речи и почти неограниченном наборе слов точность распознавания часто достигает 99 %. Dragon Dictation — более простое, но тоже удивительное бесплатное приложение для айфона, не требующее голосового тренинга. Персональный помощник Сири, установленный на современных айфонах, использует ту же самую технологию распознавания речи, содержащую дополнительный модуль, воспринимающий разговорную речь.

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

ЛИСП

ЛИСП (LISP, LISt Processor — процессор списков) — язык программирования, созданный пионером в области ИИ Джоном Маккарти в 1958 г. Как следует из названия, этот язык оперирует списками. Каждое утверждение в нем представляет собой список элементов, а каждый элемент — это либо еще один список, либо «атом» — неделимая единица, представляющая собой число или символ. Список внутри списка тоже может быть списком, так что ЛИСП способен на рекурсию. Кроме того, предложения являются рекурсивными, если один список содержит в себе другой, тот — третий и т. д. до тех пор, пока не будет определен исходный список. За счет такой структуры ЛИСП позволяет осуществлять иерархические построения. Список может быть условным, то есть «возбуждается» лишь в том случае, когда удовлетворяются все составляющие его элементы. Иерархию таких условий можно использовать для идентификации образов с возрастающим уровнем сложности.

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

Возник даже «мини-бум» компаний по созданию «искусственного интеллекта», предлагавших программы-переводчики и другие программные продукты, однако в середине 1980-х гг. стало ясно, что сам по себе язык ЛИСП не может решить проблему создания разума, и инвестиционный пузырь лопнул.

Впрочем, нельзя сказать, что поклонники ЛИСП полностью заблуждались. На самом деле каждый распознающий модуль новой коры можно рассматривать как предложение на языке ЛИСП — в каждом модуле содержится список элементов, причем каждый элемент тоже может представлять собой список. Таким образом, новая кора действительно занимается обработкой списков символов, что очень сильно напоминает процесс, описываемый программой ЛИСП. Более того, новая кора одновременно обрабатывает 300 млн таких «предложений».

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

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

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

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

Иерархические системы памяти

Как я рассказывал в третьей главе, Джеф Хокинс и Дайлип Джордж в 2003–2004 гг. создали модель новой коры, которая включала в себя иерархические списки. Эта модель описана в книге Хокинса и Блейксли On Intelligence, опубликованной в 2004 г.[100] Более новую и очень элегантную версию теории иерархической временной памяти можно найти в докторской диссертации Дайлипа Джорджа (2008)[101]. Компания Numenta использовала эту модель в системе под названием NuPIC (Numenta Platform for Intelligent Computing) и включила в программы распознавания образов и извлечения данных для таких клиентов, как Forbes и Power Analytics Corporation. Проработав какое-то время с Numenta, Джордж занялся созданием новой компании, названной Vicarious Systems, при поддержке фонда Founder Fund (основанного Питером Тилем, также поддерживающим Facebook, и Шоном Паркером, первым президентом Facebook) и фонда Good Ventures, которым руководит сооснователь Facebook Дастин Московиц. Джордж сообщает о значительных успехах автоматического моделирования, усвоения и распознавания информации с высокой степенью иерархической сложности. Он называет свою систему «рекурсивной кортикальной сетью» и планирует использовать ее, среди прочего, для медицинской диагностики и робототехники. Метод иерархических скрытых моделей Маркова по своей математической природе очень близок к этим иерархическим системам памяти, особенно если мы позволяем ИСММ самостоятельно образовывать связи между распознающими модулями. Как было отмечено в третьей главе, ИСММ позволяет учитывать ожидаемое распределение величин всех входных сигналов в расчете вероятности соответствующего образа. Не так давно я организовал новую компанию, Patterns, Inc., которая будет заниматься созданием самоорганизующихся иерархических моделей новой коры на основе ИСММ и родственных методов для распознавания человеческой речи. Система, над которой мы работаем, будет постоянно читать различные материалы, включая «Википедию» и другие источники информации, а также слушать все, что мы говорим, и следить за всем, что мы пишем (конечно, если мы позволим). Задача заключается в создании помощника, способного отвечать на ваши вопросы — еще до того, как вы их сформулируете, — снабжать вас полезной информацией и направлять вас в течение дня.

Раздвигаем границы ИИ. Повышение компетентности

1. Длинная утомительная речь, как пенистое украшение пирога[102].

2. Предмет детской одежды, возможно, во время путешествия на корабле.

3. Виновный в поедании воинов короля Хротгара на протяжении двенадцати лет; дело поручено воину Беовульфу[103].

4. Процесс постепенного развития в мозге или в организме при беременности[104].

5. Национальный День учителя и день дерби в Кентукки.

6. Он, по выражению Вордсворта, парит, но не улетает[105].

7. Слово из четырех букв, обозначающее железную накладку на копыте лошади и коробку для карт в казино.

8. В третьем акте оперы Верди, написанной в 1846 г., этот бич божий смертельно ранен своей любовницей Одабеллой.

Примеры из викторины «Джеопарди!», на все вопросы которой Ватсон дал правильные ответы: разглагольствование, фартук, Грендель, гестация, май, жаворонок, shoe (башмак, подкова). В ответ на 8-й вопрос Ватсон ответил: «Это Аттила?» Его попросили уточнить, тогда он сказал: «Это Аттила, гунн?» — что сочли правильным ответом.

Техника, которую компьютер применяет для ответов на вопросы «Джеопарди!», очень напоминает мою собственную. Машина начинает поиск от ключевого слова в вопросе, а затем прочесывает свою память (в случае Ватсона это 15-терабайтный банк человеческих знаний) для выявления кластеров ассоциаций с этим словом. Она тщательно проверяет наилучшие совпадения с полным контекстом вопроса: категория и тип ответа, зашифрованные в вопросе время, место и пол и т. д. И когда машина чувствует себя достаточно «уверенной», она подает сигнал. Для игрока в «Джеопарди!» это мгновенный и интуитивный процесс, но я уверен, что в моей голове происходит что-то очень похожее.

Кен Дженнингс, чемпион викторины «Джеопарди!», проигравший Ватсону

Я приветствую наших новых компьютерных повелителей.

Кен Дженнингс, перефразируя Симпсонов, после поражения Ватсону

Бог мой, [Ватсон] умнее отвечает на вопросы «Джеопарди!», чем средний игрок. Он поразительно умен.

Себастьян Трун, бывший директор лаборатории в Стэнфорде

Ватсон ничего не понимает. Это огромный паровой каток.

Ноам Хомский

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

На сегодня новое в сфере ИИ — это потрясающие возможности доступных для широкой публики приложений. Например, подумайте о самодвижущихся автомобилях Google (которые уже пробежали более 200 тыс. миль по большим и малым городам): эта технология позволит уменьшить число аварий, повысит пропускную способность дорог, избавит людей от рутинной водительской заботы и даст множество других важных преимуществ. Сегодня машины без водителя могут с некоторыми ограничениями передвигаться по общественным дорогам Невады, однако их повсеместное широкое распространение ожидается не раньше конца десятилетия. А вот технологии, которые следят за дорогой и предупреждают водителей о возможной опасности, уже установлены на многих моделях автомобилей. Одна такая технология отчасти основана на успешной модели обработки зрительных образов в головном мозге, предложенной Томазо Поджо из Массачусетского технологического института. Эта система под названием Mobil Eye разработана бывшим аспирантом Поджо Амноном Шашуа. Система предупреждает водителя о таких опасностях, как возможное столкновение или наличие на дороге ребенка; она уже установлена на автомобилях марок Volvo и BMW.

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

Английский математик Алан Тьюринг (1912–1954) разработал тест, теперь носящий его имя, который основан на способности компьютера вести беседу на человеческом языке с помощью письменных сообщений[106]. Тьюринг полагал, что в языке отражается весь человеческий разум и что никакая машина не сможет пройти тест, просто овладев языковыми приемами. Хотя в тесте используется письменная речь, Тьюринг считал, что машина смогла бы пройти его лишь при условии, что будет обладать разумом, эквивалентным разуму человека. Критики утверждали, что истинный тест на наличие у машины «человеческого» разума должен включать в себя также зрительную и слуховую компоненты[107]. Поскольку многие из созданных мной систем ИИ обучают компьютер воспринимать и обрабатывать человеческую речь, форму букв и музыкальные звуки, возможно, вы предполагаете, что я встану на защиту этой более полной версии теста для оценки интеллекта. Однако я согласен с тем, что исходной версии теста Тьюринга вполне достаточно — добавление зрительных или слуховых сигналов на входе или на выходе на самом деле совсем не усложняет прохождение теста.

Не нужно быть экспертом в области ИИ, чтобы оценить эффективность Ватсона в игре «Джеопарди!» Хотя я достаточно хорошо понимаю методологию, заложенную в основу действия его ключевых подсистем, это не ослабляет мою эмоциональную реакцию на то, что он (оно?) может делать. Даже полное понимание принципов работы всех подсистем (которого нет ни у кого) не помогает предсказать реакцию Ватсона на конкретную ситуацию. Машина содержит сотни взаимодействующих между собой подсистем, каждая из них одновременно прорабатывает миллионы альтернативных гипотез, так что предсказать ответ всей системы невозможно. Анализ мыслительного процесса, происходящего «в голове» Ватсона за три секунды при ответе на вопрос викторины, у человека занял бы несколько столетий.

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

Понимание естественной речи, особенно в качестве приложения к автоматическим системам распознавания речи, теперь стало элементом серийной продукции. В то время, когда я писал эту книгу, автоматизированный персональный помощник Сири, установленный на модели айфона 4S, произвел фурор в мире сотовых телефонов. Вы можете спросить или попросить Сири практически обо всем, что должен знать и уметь каждый уважающий себя смартфон, например: «Где здесь поблизости индийский ресторан?», или «Сообщи моей жене, что я уже иду», или «Что думают люди о новом фильме Брэда Питта?» — и практически всегда Сири исполняет поручение. Сири может в некоторой степени поддерживать беседу на общие темы. Если вы спросите ее, в чем заключается смысл жизни, она ответит: «42». Поклонники фильма «Автостопом по галактике» знают, что это «ответ на главный вопрос о жизни, вселенной и всяком таком». На вопросы на знание (включая вопрос о смысле жизни) может ответить описанная ниже программа Wolfram Alpha. Существует уже целый мир «чат-ботов», которые нужны только для того, чтобы болтать. Если вы захотите поболтать с нашим чат-ботом по имени Рамона, зайдите на сайт KurzweilAI.net и кликните по ссылке Chat with Ramona.

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

Сири использует технологию распознавания речи на основе иерархических моделей Маркова, разработанную компанией Nuance. Расширения для использования разговорной речи впервые были созданы в рамках проекта CALO[108], финансированного агентством DARPA[109]. Сири снабжена собственной технологией компании Nuance, кроме того, компания предлагает очень похожую технологию под названием Dragon Go[110].

Методы, используемые для понимания разговорной речи, очень напоминают иерархические скрытые модели Маркова, да и сами ИСММ часто применяются для данных приложений. Хотя иногда в подобных системах не указано, что они используют скрытые модели Маркова или иерархические скрытые модели Маркова, математические основы их функционирования практически идентичны. Все эти системы применяют иерархию линейных последовательностей, каждый элемент которых имеет вес, контакты самостоятельно адаптируются, а вся система в целом самостоятельно организуется в процессе обучения. Обычно обучение продолжается постоянно на протяжении всего времени работы системы. Этот подход отражает иерархическую структуру разговорного языка — это естественное восхождение по понятийной иерархической лестнице от звуков к словам и далее к словосочетаниям и сложным речевым построениям. Имеет смысл применять ГА для параметров, контролирующих конкретный алгоритм обучения в таких классах иерархических систем, и находить оптимальные элементы алгоритма.

За последнее десятилетие возникли новые способы создания подобных иерархических структур. В 1984 г. Дуглас Ленат начал реализацию проекта Cyc (от enCYClopedic) с целью разработки правил кодирования «бытовых знаний». Эти правила были организованы в виде сложной иерархической структуры, и каждое правило, опять же, включало в себя линейную последовательность утверждений. Например, одно такое утверждение может информировать, что у собаки есть лицо (морда). Далее Cyc выводит более общее правило о структуре лиц: на лице есть два глаза, нос и рот и т. д. Нам не нужно иметь отдельное правило для описания собачьей морды и отдельное — для кошачьей, но мы, конечно же, можем создать дополнительное правило, описывающее различие между кошачьей и собачьей мордой. В системе также реализуется следственный механизм: если есть правила, утверждающие, что кокер-спаниель — собака, что собака — животное и что животные потребляют пищу, то на вопрос, питается ли кокер-спаниель, система ответит утвердительно. За прошедшие с тех пор три десятилетия были затрачены тысячи человеко-лет трудов и написано и проверено более миллиона таких утверждений. Интересно, что язык, на котором пишут правила для Cyc (его называют CycL), практически идентичен языку ЛИСП.

Тем временем приверженцы альтернативной теории мыслительного процесса считают, что наилучший подход к пониманию разговорной речи и вообще к созданию разумных систем заключается в автоматизированном обучении системы на многочисленных примерах понятий и явлений. Мощный пример системы такого рода — программа-переводчик Google Translate, которая способна переводить с 50 языков на 50 языков. Это подразумевает 2500 направлений перевода, хотя в большинстве пар языков программа не переводит напрямую с первого языка на второй, а переводит сначала с первого языка на английский, а уже с него на второй язык. Это приводит к сокращению числа направлений перевода всего до 98 (и еще небольшого числа языковых пар, в которых перевод осуществляется напрямую). Данная программа перевода не использует грамматических правил, а создает обширные базы данных для всех пар на основе переведенных документов из программного продукта Rosetta stone («Розеттский камень»)[111]. Для шести официальных языков ООН[112] Google использует документы ООН, поскольку они всегда публикуются на шести языках. Для других языков применяются другие источники.

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

За последнее десятилетие было сделано два важных открытия, которые в значительной степени повлияли на развитие систем понимания разговорной речи. Первое имеет отношение к иерархическому строению систем. Несмотря на то что подход Google заключается в поиске ассоциаций между линейными последовательностями слов в разных языках, иерархическая структура языка неизбежно влияет на этот процесс. Системы, применяющие метод иерархического обучения (такие как иерархические скрытые модели Маркова), обеспечивают гораздо более высокую эффективность. Однако создание таких систем — далеко не автоматический процесс. Что верно для людей, которые за один раз осваивают один иерархический уровень понятий, то верно и для компьютеров, так что процессом обучения необходимо тщательно руководить.

Другое открытие заключается в том, что для усвоения основного массива знаний хорошо работают правила, сформулированные людьми. Для перевода коротких фрагментов текста такой подход часто обеспечивает более точный результат. Например, DARPA выше оценило переводы коротких текстов с помощью китайско-русского словаря, основанного на правилах, чем переводы Google Translate. Что же касается других элементов языка, к которым относятся миллионы редких фраз и заключенных в них понятий, тут точность переводов, основанных на правилах, непозволительно низкая. Если построить график точности понимания разговорной речи от количества данных, на которых обучалась система, системы, основанные на правилах, сначала показывают более высокую эффективность, но точность распознавания не поднимается выше 70 %. Напротив, статистические системы достигают точности 90 %, но для этого им нужно «изучить» очень большой массив данных.

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

Именно так работают Сири и Dragon Go: для определения наиболее общих и надежных явлений используются заранее сформулированные правила, а усвоение более редких элементов языка находится в руках конкретных пользователей. Когда создатели Cyc обнаружили, что достигли потолка эффективности при обучении системы на заранее сформулированных правилах, они также переключились на этот подход. Правила, определенные лингвистами, выполняют две важнейшие функции. Во-первых, они обеспечивают приемлемую начальную точность, так что систему можно допускать к широкому использованию, где она будет улучшаться автоматически. Во-вторых, они служат надежной основой для низших уровней понятий, от которых начинается автоматический подъем на более высокие иерархические уровни.

Как отмечалось выше, Ватсон является удивительным примером реализации комбинированного подхода, в котором сочетается настройка системы по предварительно сформулированным правилам и ее иерархическое статистическое обучение. Для создания системы, способной играть в «Джеопарди!» на разговорном языке, компания IBM объединила несколько лучших программ. С 14 по 16 февраля 2011 г. Ватсон соревновался с двумя ведущими игроками: Брэдом Раттером, выигравшим в эту викторину больше денег, чем кто-либо другой, и Кеном Дженнингсом, который удерживал звание чемпиона викторины рекордное время — 75 дней.

Точность систем распознавания разговорной речи как функция объема тренировочных данных. Наилучшие результаты получаются при сочетании заранее сформулированных правил для освоения «основного» языка и самостоятельной тренировки для освоения «деталей».


В моей первой книге «Эра разумных машин», написанной в середине 1980-х гг., я предсказывал, что компьютер станет чемпионом мира по шахматам примерно к 1998 г. Еще я предсказал, что если это произойдет, то мы либо станем хуже думать о человеческом разуме, либо лучше думать о разуме машин, либо потеряем интерес к шахматам. И если принять во внимание историю, скорее всего, должно было произойти последнее. Так и вышло. В 1997 г., когда суперкомпьютер IBM Deep Blue обыграл чемпиона мира по шахматам Гарри Каспарова, мы немедленно стали утверждать, что именно так и должно было случиться, поскольку компьютеры — логические машины, а шахматы, в конце концов, игра на логику. Победу компьютера не сочли ни важным, ни удивительным событием. Многие критики принялись утверждать, что компьютер никогда бы не смог одолеть человеческую речь — со всеми метафорами, сравнениями, каламбурами, двусмысленностями и юмором.

Вот почему Ватсон так много значит: «Джеопарди!» — именно такая сложная и напряженная игра на знание языка. Типичные вопросы викторины содержат непростые обороты человеческой речи. Однако для большинства зрителей, возможно, не очевидно, что Ватсон не только понимает вопросы, заданные в неожиданной и запутанной форме, но большая часть его знаний не была сформирована людьми. Он обзавелся этими знаниями самостоятельно, прочитав 200 млн страниц документов на человеческом языке, включая «Википедию» и другие энциклопедии, что составляет 4 трлн байт информации. Как вы понимаете, «Википедия» написана не на ЛИСП или CycL, а «нормальными» предложениями со всеми присущими языку двусмысленностями и путаницами. При ответе на вопрос викторины Ватсон должен проверить все 4 млрд знаков реферативного материала (конечно, «Джеопарди!» — не вопросы, а загадки, но это техническая сторона дела — по форме это настоящие вопросы). Если Ватсон способен понять вопрос и ответить на него на основании 200 млн страниц текста — и всего за три секунды! — ничто не может помешать подобным машинам прочесть миллиарды имеющихся в Интернете документов. Именно это сейчас и происходит.

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

Ватсон действует по такому же принципу. Используя архитектуру UIMA (Unstructured Information Management Architecture), Ватсон распоряжается буквально сотнями различных систем — многие отдельные языковые компоненты Ватсона аналогичны тем, что применяются в широко используемых системах распознавания разговорного языка, — и все они либо пытаются напрямую дать ответ на вопрос викторины, либо как минимум прояснить вопрос. UIMA выступает в роли эксперта-менеджера, разумно сочетающего результаты отдельных систем. UIMA превзошла более ранние системы (включая разработанные нами еще до создания компании Nuance) в том, что составляющие ее системы могут участвовать в получении результата, даже если не пришли к финальному ответу. Достаточно, чтобы подсистема помогла найти путь к ответу. Кроме того, UIMA может рассчитать степень собственного доверия к полученному ответу. Человеческий мозг тоже это делает: обычно вы совершенно уверены в ответе, если у вас спросят, как зовут вашу мать, но гораздо менее уверены, если речь идет о человеке, которого вы видели один раз год назад.

Таким образом, вместо того чтобы разработать единственный путь разрешения речевых проблем, возникающих при ответах на вопросы «Джеопарди!», специалисты из IBM объединили все имевшиеся на тот момент модули распознавания речи. В некоторых используются иерархические скрытые модели Маркова, в других — заранее сформулированные языковые правила, кодирующие основной массив языковых данных. UIMA оценивает эффективность каждой системы в каждом случае и оптимальным образом объединяет результаты. Важная роль UIMA, которую подчеркивают создавшие ее специалисты из IBM, вызывает определенное недопонимание, возникающее при обсуждении способностей Ватсона. Некоторые зрители полагают, что Ватсон на самом деле не понимает речь, поскольку трудно сказать, в каком модуле происходит это «понимание». Но хотя UIMA тоже обучается на своем собственном опыте, «понимание» Ватсоном языка происходит не только благодаря ей, но распределено по всем многочисленным модулям, включая самоорганизующиеся языковые модули, действующие по методам, аналогичным ИСММ.

Отдельная часть системы использует произведенную UIMA оценку достоверности ответа Ватсона для заключения пари. Хотя Ватсон специфическим образом оптимизирован именно для этой игры, его базовые знания и технология поиска новых знаний легко могут быть адаптированы для решения более широкого круга задач. Возможно, некоторые думают, что машине сложнее будет управляться с менее общими и более узкопрофессиональными данными (например, в сфере медицины), чем с «общими» знаниями, требующимися для игры в «Джеопарди!» На самом деле ситуация как раз противоположная. Профессиональные знания упорядочены в гораздо большей степени, лучше структурированы и менее двусмысленны, поэтому с помощью той же самой технологии вполне можно достичь точного понимания языка в подобных специфических областях. Я уже упоминал, что в настоящее время IBM и Nuance совместно трудятся над адаптацией Ватсона для работы в сфере медицины.

Диалог с Ватсоном во время викторины короткий: ему задают вопрос, он дает ответ. Он не вовлекается в разговор, в котором были бы упомянуты все предыдущие высказывания всех игроков. (А вот Сири в какой-то степени это делает: если вы попросите ее отправить сообщение вашей жене, она в первый раз попросит ее назвать, но после этого запомнит.) Проследить за всей информацией, упомянутой в ходе разговора (что, безусловно, было бы необходимо для прохождения теста Тьюринга), — серьезное дополнительное требование, но выполнить его, по сути, не сложнее, чем то, что Ватсон уже умеет делать.

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

Еще одно ограничение викторины заключается в том, что ответы обычно очень короткие. Например, игроков не просят перечислить пять основных сюжетных линий «Повести о двух городах»[113]. Для обсуждения таких вопросов нужна несколько иная версия Ватсона. Самостоятельно выявить главные темы книги, не копируя чужие мысли (даже без слов), это совсем другая задача, гораздо более сложная, чем те, которые сейчас умеет решать Ватсон; я бы назвал эту задачу тестом на уровне теста Тьюринга. (Говоря это, я хочу подчеркнуть, что большинство людей при решении подобной задачи воспользуются не собственными мыслями, а скопируют уже готовые идеи.) В любом случае, 2029 г. еще не наступил, так что я пока не ожидаю появления машинного разума, способного пройти тест Тьюринга. Кроме того, я хочу отметить, что оценка ответов на такие вопросы, как выявление ключевых идей литературного произведения, сама по себе не является очевидной задачей. Если спрашивают, кто подписал Декларацию независимости, верность ответа оценить легко. С более сложными понятийными вопросами дело обстоит намного сложнее.

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

Я не готов передвинуть мой прогноз о прохождении компьютером теста Тьюринга с 2029 г. на более раннюю дату, однако прогресс, который достигнут в создании подобных Ватсону машин, вселяет уверенность, что вскоре появятся компьютеры с ИИ уровня теста Тьюринга. Если бы кто-то специально занялся созданием версии Ватсона, оптимизированной для прохождения теста Тьюринга, возможно, такая машина появилась бы совсем скоро.

Американский философ Джон Серль (род. в 1932 г.) недавно заявил, что Ватсон не способен думать. Опираясь на свой мысленный эксперимент «Китайская комната» (я расскажу о нем в одиннадцатой главе), он утверждает, что Ватсон лишь манипулирует символами, но не понимает их смысла. На самом деле, Серль неточно описывает Ватсона, поскольку понимание Ватсоном языка основано не на манипуляции символами, а на иерархическом статистическом процессе обучения. Характеристика Серля верна лишь в том случае, если рассматривать каждую стадию самоорганизующегося процесса как «манипуляцию символами». Но если это так, то и человеческий мозг нельзя назвать мыслящим.

Забавно, когда Ватсона критикуют за то, что он всего лишь выполняет статистический анализ языка, но не владеет «истинным» пониманием человеческой речи. Иерархический статистический анализ — это именно то, что делает человеческий мозг, разбирая несколько гипотез на основе статистических выводов (на каждом иерархическом уровне новой коры). И Ватсон, и человек обучаются и отвечают на вопросы на основании одного и того же иерархического подхода. Во многих отношениях знания Ватсона намного обширнее человеческих; ни один человек не может утверждать, что прочел всю «Википедию», которая составляет лишь часть базы данных Ватсона. Напротив, человек пока еще может справляться с более сложными понятийными задачами, чем Ватсон, но этот пробел вскоре закроется.

Важной системой, демонстрирующей мощь применения компьютерных возможностей для обработки организованных баз знаний, является программа Wolfram Alpha. Эта отвечающая программа (в отличие от поисковой программы) разработана британским физиком и математиком Стивеном Вольфрамом (род. в 1959 г.) и его коллегами из компании Wolfram Research. Если вы спросите Wolfram Alpha (на сайте WolframAlpha.com) сколько существует простых чисел меньше миллиона, она ответит: «78 498». Этот ответ программа не отыщет, она его вычислит и после ответа выдаст вам уравнения, которыми пользовалась. Если вы попытаетесь получить ответ с помощью обычных поисковых программ, они направят вас к сайтам, где вы найдете нужный алгоритм. Далее вам потребуется загрузить эти формулы в программу типа «Математика» (также созданную Вольфрамом), но на это уйдет гораздо больше времени (и усилий), чем просто обращение к Wolfram Alpha.

Программа Wolfram Alpha содержит 15 млн строк кода «Математики». Ее функция заключается в расчете ответа на основании примерно 10 трлн байт данных, тщательно подобранных сотрудниками Wolfram Research. Программе можно задать множество фактических вопросов типа «В какой стране самый высокий валовый внутренний продукт на душу населения?» (ответ: в Монако, 212 тыс. долл. США) или «Сколько лет Стивену Вольфраму?» (ответ (на момент написания книги): 52 года, 9 месяцев и 2 дня). Как я уже говорил, Wolfram Alpha используется в технологии Сири. Если вы задаете Сири фактический вопрос, она переадресует его Alpha. Кроме того, Alpha осуществляет некоторые поисковые функции для поисковой программы Bing.

Недавно Вольфрам сообщил, что Alpha дает правильный ответ в 90 % случаев[114]. Он также указал, что число отказов сокращается вдвое каждые 18 месяцев. Это очень мощная система, которая использует созданные вручную методы и собранные вручную данные. Именно для этого мы когда-то впервые сделали компьютеры. По мере того как мы открываем и компилируем научные и математические методы, мы все шире привлекаем компьютеры, которые используют эти методы гораздо лучше, чем невооруженный человеческий разум. Большинство наших научных методов кодируется в программе Alpha параллельно с постоянно обновляемыми данными во многих областях знания — от физики до экономики. Во время нашей частной беседы с Вольфрамом он сообщил, что применение самоорганизующихся методов, подобных тому, что использует Ватсон, позволяет достигать точности 80 %. A Alpha способна на 90 % точности. Конечно же, эти значения в определенной степени субъективны, поскольку пользователи (включая меня самого) выбирают вопросы, на которые их система отвечает хорошо, и то же касается самоорганизующихся методов. Кажется, 80 % — достаточно верная оценка точности ответов Ватсона при игре в «Джеопарди!», но такой точности было довольно, чтобы он смог обыграть двух лучших игроков.

По моему мнению, такие самоорганизующиеся методы, как я описал для теории мысленного распознавания образов (ТМРО), необходимы для понимания сложной и часто неоднозначной иерархии, встречающейся в реальном мире, в том числе в человеческом языке. Идеальным сочетанием для надежной разумной системы была бы комбинация иерархического подхода, основанного на ТМРО (который, как я считаю, лежит в основе функционирования человеческого мозга), и точной кодировки научных данных. А это и есть сочетание человека и компьютера. В ближайшие годы мы усилим оба полюса. Хотя наша биологическая новая кора достаточно пластична, ее базовая архитектура имеет физические ограничения. Увеличение размеров новой коры в лобной части нашего мозга стало важной эволюционной инновацией, но теперь мы не в состоянии расширить наши лобные доли ни в тысячу раз, ни даже на 10 %. Я хочу сказать, что мы не можем сделать это биологическим путем, но мы совершим это технологически.

Как создать разум

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

Тим Бернерс-Ли [115]

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

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

Распознающие модули отвечают за связывание с другими распознающими модулями выше и ниже по иерархии. Заметим, что все эти контакты в компьютерном варианте действуют через виртуальные связи (которые, как в виртуальных сетях, представляют собой просто указатели), а не через реальные контакты. Данная система гораздо более гибкая, чем в биологическом мозге. В человеческом мозге новые образы должны быть «приписаны» к реальным распознающим модулям, а между аксонами и дендритами должны образовываться реальные связи. Обычно для этого используется существующая физическая связь, имеющая отношение к данному образу, и за счет дополнительного роста аксонов и дендритов осуществляется новое взаимодействие.

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

Существует несколько математических методов, которые можно использовать для создания самоорганизующихся иерархических распознающих модулей. Лично я по нескольким причинам предпочитаю метод скрытых иерархических моделей Маркова. Я уже несколько десятилетий пользуюсь этим методом, начиная с самых первых систем распознавания речи и понимания разговорного языка, созданных в 1980-х гг. Да и если говорить в общем, ученые, занятые распознаванием образов, имеют больше опыта в применении данного метода, чем каких-либо других. Этот метод или аналогичные ему математические методы также широко применяются для понимания разговорной речи.

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

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

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

Очень важный этап — обучение мозга, как биологического, так и компьютерного. Как я уже писал, иерархическая система распознавания образов (и цифровая, и биологическая) за один момент осваивает не больше двух иерархических уровней (а скорее один). Чтобы усовершенствовать систему, я начну с предварительно обученных иерархических сетей, которые уже научились распознавать человеческую речь, печатные буквы и структуры разговорного языка. Такая система сможет читать документы, написанные разговорным языком, но за один раз по-прежнему сможет осваивать примерно один понятийный уровень. Ранее усвоенные понятия создадут достаточно прочную основу для продвижения на следующие уровни. Система может вновь и вновь обращаться к уже прочитанным документам, достраивая новые понятийные уровни при каждом следующем прочтении. Так и люди глубже понимают текст, когда читают его повторно. В нашем доступе имеются миллиарды страниц информативного материала, такого как «Википедия».

Система также будет содержать модуль критического мышления, который станет осуществлять постоянное сканирование всех существующих образов и оценивать их совместимость с другими образами (идеями) цифровой новой коры. У биологической новой коры такой функции нет, вот почему люди иногда совмещают в своей голове совершенно несовместимые идеи. В случае обнаружения противоречивых данных модуль попытается найти решение, используя как кортикальные структуры самой системы, так и весь массив имеющихся литературных данных. Принятие решения может просто сводиться к установлению некорректности одной из идей (если она противоречит большинству имеющихся данных). В более конструктивном плане может быть выявлена идея более высокого понятийного уровня, которая позволяет разрешить кажущееся несоответствие путем объяснения обеих исходных идей. Система добавит это решение в виде нового образа и свяжет его с теми идеями, которые запустили поиск. Модуль критического мышления будет работать постоянно.

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

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

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

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

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

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

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

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

Загрузка...