Книга: Эволюция разума

ЛИСП

<<< Назад
Вперед >>>

ЛИСП

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

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

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

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

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

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

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

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

<<< Назад
Вперед >>>

Генерация: 0.555. Запросов К БД/Cache: 3 / 1
Вверх Вниз