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

– Записали последнее условное суждение? Если я не сбилась со счета, оно должно быть тысяча первым. Осталось еще несколько миллионов>96[11].

Решение этого парадокса, конечно же, заключается в том, что ни одна система гипотетических умозаключений не может строго следовать явно выраженным правилам. В тот или иной момент она должна, как сказал Джерри Рубин (а чуть позже – и корпорация «Найк»), «просто делать это» (имеется в виду рекламный слоган фирмы «Найк» Just do it! – Прим. пер.). Подразумевается, что правило должно просто выполняться за счет рефлекторной, грубой силы системы, без лишних вопросов. В этот момент система, если она имеет форму машины, будет не следовать правилам, а просто подчиняться законам физики. Аналогичным образом, если демоны (правила замещения одних символов другими символами) считывают и записывают репрезентации, а внутри каждого демона есть демоны еще меньше (и еще глупее), то в какой-то момент нам все же придется отказаться от их услуг, позвать охотников за привидениями и заменить самых маленьких и самых глупых демонов машинами. В случае людей и животных это будут машины, построенные из нейронов: нейронные сети. Давайте посмотрим, каким образом наша картина того, как работает мышление, подкрепляется простыми идеями о том, как работает мозг.

Первые шаги в этом направлении сделали математики Уоррен Маккалок и Уолтер Питтс, которые писали о «нейрологических» свойствах связанных между собой нейронов>97. Нейроны сложны и до сих пор не объяснены, однако Маккалок и Питтс (а вслед за ними – и многие другие разработчики моделей нейронных сетей) выделяют как наиболее значимую одну из их функций. Нейроны складывают совокупность атрибутов, сравнивают полученную сумму с порогом и сигнализируют о том, превышен ли порог. Это описание того, что они делают, с концептуальной точки зрения; с физической точки зрения то же самое можно описать следующим образом: возбужденный нейрон может быть активен в разной степени, и степень активности зависит от уровня активности входящих аксонов других нейронов, присоединенных в синапсах к дендритам нейрона (входящим структурам). Синапс имеет вес, варьирующийся от положительного (возбуждающий синапс) до нулевого (без воздействия) и далее до отрицательного (тормозящий синапс). Уровень возбуждения каждого входящего аксона умножается на вес синапса. Нейрон суммирует эти входящие уровни; если сумма превышает пороговый уровень, то нейрон возбуждается и поочередно посылает сигналы всем нейронам, соединенным с ним. Хотя нейроны всегда находятся в возбужденном состоянии, и входящие сигналы только заставляют их возбуждаться заметно быстрее или медленнее, иногда бывает удобно говорить о них как о неактивных (низкий уровень возбуждения) и активных (высокий уровень).

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