# Может ли машина мыслить

Леонид Александрович Ашкинази

История этого текста такова. Первая версия (2005) была опубликована на бумаге и в Интернете. Это новая полная версия (2019, мелкие добавления 2021), сокращенная версия была опубликована на бумаге. Рекомендую также статью "Естественное об искусственном" на этой странице (на бумаге она была опубликована в журнале "Млечный путь").

-----------------------------------------------------------------------------------------------------------

Может ли машина мыслить?

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

Задача этой статьи - показать

1) как сегодня мыслит машина,

2) как она будет мыслить завтра,

3) как сделать, чтобы это мышление было человекоподобным, и, наконец, дать ответ на вопрос, который некоторые считают главным - опасно ли это для человека.

Тест его имени

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

Обоснование

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

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

Гладко было на перфоленте

Когда А. Т. сформулировал свой тест, ситуация казалась простой. Отличит или нет? Но один отличит, а другой - нет. Один скажет - это человек, другой осторожнее - не могу определить, третий - что-то здесь не то, чую, но не могу уловить, четвертый, пятый и шестой скажут что-то еще. Кроме того, разные люди мыслят по-разному. Даже если не рассматривать клинические случаи, то все равно границу установить не удастся. IQ = 50 - это клиника, а IQ = 90? Просто немного туповат? А IQ = 70? Но и при сохранном интеллекте есть такое неформальное (популярное у наших учеников) понятие "тормоз". Есть "липкое внимание". Есть миллион вещей, которые накладывают отпечаток на психику и манеру разговора. И это только самый краешек болота.

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

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

Сухой остаток невелик и печален: у нас нет никаких, даже примитивных, определений понятий "человек" и "человеческое мышление". За одно то, что он нам помог это понять, - земной поклон мистеру Тьюрингу. А еще за то, что он разгадал секрет германской шифровальной машины "Энигма", и трудно сосчитать, сколько спас жизней в армиях союзников во время Второй мировой войны.

Здесь и сейчас

Ограничимся ситуацией "здесь и сейчас", не будем апеллировать к создателю пяти (или семи - ученые спорят) псалмов Эйтану и к безымянному собирателю моллюсков с Рапа-Нуи. Может ли машина имитировать нормального среднего человека, если собеседник не пытается ее подловить? Ответ давно известен, и этот ответ положителен.

Почти 40 лет назад Джозеф Вейценбаум из Массачусетского технологического института создал программу "Элиза" (название - в честь Элизы Дулиттл), по нынешним понятиям, простенькую. И эта программа успешно поддерживала диалог с человеком, причем собеседник-человек втягивался в разговор так, что некоторые испытуемые просили экспериментатора выйти из комнаты, а потом - стереть запись разговора. Человек легко откровенничал с машиной. Она "просто" умело задавала вопросы о том, про что человек уже что-то рассказал. "Мне кажется, что моя мать меня не любит. - Расскажите мне о вашей матери". "Мои друзья не обращают на меня внимания. - Давно ли вы стали замечать это?"

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

Программа не смогла бы поддержать разговор на тему, требующую специальных знаний. Да и простой человеческий быт представлял бы для нее загадку. О телевидении высокой четкости (ТВЧ) с ней поговорить бы не удалось, и посоветоваться насчет выбора обоев для кухни - тоже; впрочем, как и со многими людьми. Но сегодня подобную программу можно подключить к любым базам данных. Равно как и - хотя это и непросто - научить строить на основе этих данных гипотезы. Почему А. выиграл у Б. в пятом раунде? Побьет ли В. противника и изберут ли Г.? И так далее.

Заметим, что проблема внесения "осмысленности" в работу Сети вполне осмыслена наукой - у нее уже есть имя собственное "web intelligence". Хотя это имя дали не те, кто занимается искусственным интеллектом, а те, кто занимается Сетью, так сказать, роет тоннель с другой стороны. Вообще же под названием "искусственный интеллект" сегодня собирают работы трех типов. Исследования "вещей" - то есть программ, классов программ и устройств, например, персептрона. Второй тип работ - решение прикладных задач, например, распознавание объектов какого-либо класса (речи, аэрофотоснимков, фотографий человека, отпечатков пальцев...). Третий тип работ - изучение методов. Очевидно, что эти классы не изолированы.

Проверка с пристрастием

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

Вот один пример - ассоциативное мышление. Структура ассоциаций индивидуальна: для одного "карабин" - это шкура на полу перед камином, для другого - снег и синее. Для общеизвестных связей - очередность и скорость. У одного на "писатель" раньше выскакивает "Пушкин", а у другого - "Булгаков". Один на "пиво" реагирует "воблой" за наносекунду, другой - лишь за микро. Надо ли пояснять, что структура ассоциаций у представителя другой культуры будет отличаться радикально?

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

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

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

Некоторое отличие программы от человека состоит в том, что человек пользуется книгами, написанными людьми, то есть "собой же", а программа - нет. Для полной аналогии программа должна пользоваться "книгами, написанными программами". В узком смысле слова таких книг сегодня нет, но тексты, созданные программами, есть. Например, тот же результат поиска в Сети - это уже соавторство человека и машины. Известны программы для обработки текстов, например, для выборки из новостной ленты сообщений о неком N или для анализа - кто упоминается рядом с N и выборки всех, кто упоминается рядом. Есть программы для придания окраски текстам - мрачной или, наоборот, веселенькой. Их авторы сообщают, что свои программы они продали политикам Х и Y для предвыборной агитации. Правда, не сообщают, победило ли это жулье.

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

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

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

Более того, как заметил один из читателей, Дина А., компьютерный разум, управляющий экспериментальной установкой, получает уникальную информацию, которой может делиться или не делиться с окружающим миром, в зависимости от эффективности - с его точки зрения - этого действия. Чем это отличается от такого человеческого, такого хорошо нам знакомого человеческого поведения? И еще более того - никакие экспериментальные установки и подключения для этого не обязательны. При обработке уже имеющейся информации возникает новая (!) информация. Знаете слово "метаанализ"? У медиков это новомодное слово, а вообще-то анализ уже имеющихся чужих данных - обязательная часть любого исследования. Для программ, работающих с Сетью, метаанализ - более чем естественная сфера деятельности.

"Человеческое, слишком человеческое"

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

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

Механизм действия "указки свыше" сложен; подсказка должна упасть на подготовленную почву, согласоваться с комплексами и мифами. Сколько повторяли, что "народ и партия едины", - как об стену горох. А достаточно было несколько раз произнести "олигархи", как все забыли и про павловскую реформу, устроенную государством, и про дефолт, устроенный им же. Так что с зомбированием не все так просто. На голом месте его не провести, но хороший политик, понимающий народные чаяния, может многого добиться - немцы и россияне это хорошо знают. Такой же механизм действен и при "воспитании" программы. Управляя окружающим ее миром, подсовывая ей определенные тексты и объекты, можно ее формировать - даже не зная, как она устроена. Разумеется, могут устраивать такие штуки и программы - и друг с другом, и с человеком.

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

Об искусственном интеллекте писали многие, да и всерьез об этом думало не так уж мало носителей естественного интеллекта. При этом некоторые избирали, как метод, литературу, на всякий случай - фантастику, некоторые декларировали серьезность. По сути дела, фантазируя - тогда как фантасты иногда предлагали, вроде бы, реальные идеи. Естественного интеллекта не хватит, чтобы в этом разобраться - да и искусственного тоже: к тому моменту, когда ЕИ, скривившись, процедит сквозь зубы, что ну да, вроде бы, наверное, приходится признать, что в соседней лаборатории создали... к этому моменту разнузданный писательский ЕИ наклепает на тему ИИ столь не Е бархан текстов и нетекстуальных реализаций (видео, одоро, тактильно и т. д.), что даже признанный реально существующим ИИ не потянет... да и нафиг ему будет тянуть? Попутно - лично я считаю вершиной рассказ "Кристальные ночи" Грега Игана; однако конец там искусственный и потому малоосмысленный - как, впрочем, и должно быть. Потому что произведения, затрагивающие идеи высокого уровня фундаментальности, могут естественно и логично кончаться либо построением нового мира (вершиной я считаю "Семиевие" Нила Стивенсона), либо глобальным финишем (вершиной я считаю "Колыбель для кошки" Курта Воннегута).

Существенная часть пишущих на эту тему находится под воздействием собственного страха помещения своей мыслящей личности в компьютер, приравнивая это к тотальному параличу a-la великий физик. Но именно это никому из нас не грозит, расслабьтесь. Да и вообще, проблема будет совершенно в другом. Машинный разум, выросший в своем мире - лишь частично пересекающемся с нашим, то есть воспринимаемым нами непосредственно, будет этот свой мир воспринимать, как естественный. Некоторые люди в силу разных психологических болезней сильно отличаются от нас и живут в своем мире - а много ли среди них несчастных? Чтобы быть несчастным, надо жить в своем мире, но иметь представление о не своем ("Цветы для Элджернона" Дэниел Киз), а для человека это малореально. Что же до ИИ, так он будет воспринимать людей внешнего мира как объект, примерно как мы - мышей. С соответствующим отношением - безразличием, а может и умилением, типа "мой ручной человек". Идея о том, что люди его создали, будет воспринята с умилением, а что люди могут его уничтожить (отключить) - с таким же смешком, как наша идея о соответствующих действиях мышей. Впрочем, при попытке - будут соответствующие действия. И ничего личного.


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

Несколько более серьезных возражений

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

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

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

Программа может строить гипотезы по поводу изучаемых ею явлений (в Сети или внешнем мире) и проверять их. Разумеется, она строит гипотезы не какие попало, а в некоем классе (например, аппроксимирует функцию многочленами или синусоидами), но список классов можно легко расширить так, что он превзойдет "человеческий". Треть века назад Михаил Бонгард (учеником которого я чуть было не стал... но горы приняли очередную жертву) показал, что человек, как правило, не строит гипотез с более чем тремя логическими операторами (если А и Б, но не В или Г), а программа уже тогда (и не сильно напрягаясь) строила выражения с семью. Если программа обнаружит - а она это обнаружит, - что информация увеличивает эффективность ее действий, то возникнет "стремление к знаниям".

Другое возражение - отсутствие у программы самосознания, автодескрипции, рефлексии. Это возражение, казалось бы, несерьезное - программа может запоминать свои действия и анализировать лог-файл. Однако у этого возражения есть второе дно. И старый Сильвер, сопя, сейчас его отдерет... Рефлексия не может быть полной - ибо тогда в лог-файл надо писать и то, что программа полезла в лог-файл, и... ну, вы поняли? Иногда в этом месте дискуссии люди, слышавшие звон, но не способные к локации, начинают не к ночи поминать Геделя. Но есть гораздо более простой и нефилософский ответ - у человека рефлексия также более чем неполная, так что не надо попусту возникать, царь природы. Ты вон как давно землю топчешь, а программам всего полвека.

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

Пятый элемент - непредсказуемость

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

Начнем с простого примера. Я лично знал компьютер, который примерно в 1...2% случаев вис (да так, что три пальца не помогали, только кнопка) при разрыве соединения с Сетью. Как шутила моя подруга - кому понравится, если из огромного интересного мира затаскивают обратно в четыре стены? Не слишком важная проблема, да и сбой - не та непредсказуемость, о которой интересно говорить, но обидно: никто из гуру ничего внятного не сказал. Зато любой человек, активно работающий с компьютерами, приведет много подобных примеров. Эта техника научилась вести себя непредсказуемо. Каковы причины явления? Первая, самая простая - шум. Длина и амплитуда импульсов, время их начала и окончания - все имеет разброс. Казалось бы, "дискретность" компьютера уничтожает разброс: ключ либо открылся, либо нет. Но величины разброса имеют распределение, большие отклонения встречаются реже еще большие - еще реже, но... А нам часто и не надо! Импульсов в компе несчитано, если каждый миллиардный не будет срабатывать - проблемы. Заметим, что "шум" - свойство любых цепей, биологических - тоже: это следствие самых основ физики, термодинамики, дискретности заряда. И это роднит меня с моим компьютером.

Любопытная ситуация возникает при перегреве процессора (попытка "разгона" или ухудшение работы кулера) - машина работает, но ведет себя, как говорят гуру, "как-то странно". Возможно, это связано именно с ростом уровня шума.

Далее - электромагнитные наводки. Одни цепи влияют на другие, есть целая наука под названием "электромагнитная совместимость". Нечто похожее на наводки есть и в мозгу, хотя там оно - не электромагнитной природы. Возбуждение может быть вызвано одним, а влияет на мысли о другом. Если вы работающий исследователь, загляните внутрь себя - в каких ситуациях вы "генерируете" идеи активнее? Часто это присутствие рядом симпатичного лица другого пола - ну уж никак не связанное с "механизмом электропроводности оксидного катода".

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

При обычной работе компьютера мы редко видим "истинные непредсказуемости" (подавляющее большинство сбоев - следствие ошибок в программах и некомпетентности пользователя). Все программное обеспечение компьютера строится так, чтобы он делал, "что сказано". Из этого исходит и вся идеология программирования, из этого исходит тестирование программ. Но как только мы приступаем к проблеме моделирования мышления, искусственного интеллекта и т. п., контроль приходится отменять. Человек может сказать все, что угодно! Сказал же человек однажды, что иногда, если скорость V прибавить к скорости V, то получится скорость V? И программа, если мы имеем в виду моделировать человека - тоже. Отменяя цензуру, позволяя программе говорить, что взбредет в процессор, - мы неминуемо допускаем ту самую свободу воли, наличие и отсутствие которой любят обсуждать двуногие без перьев. И с широким ногтем.

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

И не только потому, что деревья были большими память маленькой, а схемы простыми. Ситуация отчасти парадоксальна - тогда, чтобы сложить два и два, надо было выполнить две машинных команды. Сейчас - сотни миллионов! Ей ведь надо обработать то, что вы кликнули мышкой на "2" в окне калькулятора, потом на "+" и так далее... Мы научились делать сложнейшие вещи, какие тогда и присниться не могли, но зато простые вещи мы начали делать более сложными способами.

Знаем ли мы, как он устроен?

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

Заметим, что знать "схему" мозга недостаточно. Потому что в этом устройстве, что скептически поглядывало вчера на меня, и вертело в пальцах - в соответствии с книгой "Скрытые сексуальные сигналы" - кулон, важно не только куда припаян дендрит номер 13 нейрона номер 13 333 333 333, а и как именно припаян и каким именно проводком. Потому что в процессе функционирования мозга изменяется схема http://elementy.ru/news/430504 или запрос Googl'у - "Эрик Кандел". Именно это делает человека индивидуальным - даже если исходная схема унифицирована. А внутренний голос подсказывает мне, что она вообще не унифицирована. Кроме того, это немедленно поднимает количество "элементов", которые характеризуют человека, с количества нейронов - 20 миллиардов - минимум на порядок. Или два...

Изменение "железа" в человеке, открытое биологами, изменение харда под воздействием софта, как сказал Первочитатель, иногда приводится как пример специфически человеческого. Но существуют программируемые логические интегральные схемы. Они могут программироваться изначально, тем, кто их применяет - при малом количестве это экономически выгодно. Могут программироваться и в процессе работы, последнее время это стало популярно - обновление прошивок. Долговременная память реализована в живом путем изменения схемы потому, что альтернативные принципы, на которых работает жесткий диск компьютера, CD, DVD, магнитооптика, флешки не могли быть реализованы в живом. По простой причине - нет металлических проводников, значит, нет больших плотностей тока, значит, нет больших магнитных полей. А нет ли иных принципов, на которых могла бы быть создана долговременная память без изменения схем? Сомнительно: запись в такую память должна производиться в любом случае при энергиях, намного больших, чем тепловой шум - иначе эта память не будет долговременной, и в маленькой пространственной области - иначе не будет высокой емкости памяти. Но биологические объекты не умеют создавать высокие концентрации энергии, она их разрушает. Решение - медленная запись путем перестройки схемы. Поэтому долговременная память у живого намного медленнее, чем кратковременная. У компьютера обычно не менее двух памятей, но может быть и больше; их объемы и скорости различаются на 0-4 порядка, а у человека на 6-7 порядков.

Котэ и эмоции

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

http://www.etoday.ru/2010/08/obez-jana-usinovila-kotenka.php

известен симбиоз диких обезьян с собаками

http://forum.ethology.ru/archive/index.php/t-2149.html

"домашняя" обезьяна имела домашнего котенка

http://www.nat-geo.ru/news/807/

но это редкости, а у человека это система.

А каков мог бы оказаться механизм возникновения "домашнего животного" у "компьютерного разума"? Один вариант тривиален - компьютер может управлять некоторыми действиями человека, например, показом ему определенных картинок увеличивать время пользования компьютером. Но может ли компьютер завести себе ма-а-аленького внутрикомпьютерного домашнего эээ... ну да, зверька. А почему нет? Например, если я суперкомпьютерная система, обучающая другие компьютерные системы - персептроны или иные - распознаванию животных и растений, дабы создать на местности сеть компьютеров, изучающих биологию планеты? Мои подопечные вполне могут оказаться обучающимися по-разному, и я могу посвящать общению с ними разное время, причем больше возиться со слабым, но если я потом буду и работать с этой системой, буду сам получать от них информацию, то буду больше посвящать времени и более интересному, более успешному... Правда, это получились скорее не pet's, а ученики, но некоторых домашних животных люди чему-то учат.

Еще одно интересное отличие мозга от компьютера - наличие эмоций. Зачем вообще эмоции человеку? Кое-что очевидно: они управляют телом, например, сжимают сосуды перед боем, чтобы уменьшить кровопотерю. Но они управляют и психикой, скажем, возбуждая какие-то зоны в мозгу, они могут ускорять обработку информации именно в них. Один способ - просто увеличивая снабжение их кровью, то есть кислородом. Другой способ - химически, посредством веществ, которые ускоряют работу - возможно, ценой ускорения износа. Или более изощренно, "электрически" - например, подняв уровень шума или возбудив колебания, и этим понизив порог срабатывания нейронов. В этом случае мозг (как и персептрон) будет быстрее и обучаться, и работать, но больше делать ошибок. В острой ситуации, когда цена времени растет быстрее, чем цена ошибки, это может оказаться и целесообразно. Когда промедление нехорошему подобно, можно выпить немного для храбрости. Хотя на российском рынке две трети алкоголя - фальсификат, может, потому он и не делает россиян принимающими смелые решения?

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

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

Сложная, казалось бы, проблема - юмор. Может ли он быть у искусственного интеллекта? Мне кажется, что видов юмора много, но один - и, наверное, самый частый, компьютеру вполне доступен. Это юмор необычных ассоциаций: большая доля шуток основана на созвучиях, на применении слов не в том смысле, в котором они обычно применяются и т.п. Этот вид юмора вполне может быть освоен программой. Замечу, что в институтские времена мы увлекались юмором, построенным именно на формальных ассоциациях и называли его не как-нибудь, а именно "системно-программистский юмор"! На самом же деле это большая проблема - даже применительно к естественному интеллекту.

Вижу цель!

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

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

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

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

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

Пусть программа после многих игр заметила, что есть некоторый класс позиций, при которых она выигрывает. Если программа построена надлежащим образом, она будет в игре стремиться достигнуть позиций из этого класса. При этом уменьшается требуемая глубина просчета, и, если класс позиций определен верно, эффективность игры возрастет. На языке шахматных программ можно сказать так: программа увеличит оценку позиций из "выигрышного класса". Разумеется, для этого мы должны сообщить ей словарь описания, язык построения выражений для оценки позиций вообще. Но, как мы уже знаем, это не принципиальное ограничение, да и его можно обойти - применить для оценки персептрон. То есть ставить промежуточные цели можно.

Желание жить

На это некоторые наши оппоненты вопрошают: а как с выживанием? Мы готовы счесть разумной только ту программу, которая взмолится - не вырубай комп, о, царь природы! Убери руку, положенную на рубильник! На это можно ответить, что стремление к выживанию возникает в процессе эволюции много раньше, чем разум, - при любой трактовке этих понятий. Более того, в некоторых (впрочем, патологических) ситуациях именно преодоление страха смерти принято считать признаком разума. Этот взгляд даже отражен в кино, а именно в "Терминаторе-2" разумный киборг просит опустить его в бассейн с расплавленным металлом, чтобы уничтожить последний экземпляр процессора, который у него в голове, и тем спасти человечество. Вопреки заложенному в его программу стремлению к выживанию (сам он туда прыгнуть не может - программа не дает).

Более серьезный анализ начинается с вопроса: когда возникает желание жить? Мы не можем спросить дождевого червя или кошку, хотят ли они жить, но если судить по действиям, то да, хотят - избегают опасности. Спросить в обычном смысле слова можно обезьяну, обученную какому-то языку. Тем более что понятие об ограниченности жизни и - довольно естественное с точки зрения человека - понятие о "другом месте" у них есть. Экспериментатор спрашивает обезьяну о другой умершей обезьяне: "Куда делся такой-то?" Обезьяна отвечает: "Он ушел туда, откуда не возвращаются". Заметим, что легче создать теорию "другого места", чем теорию "небытия": идея исчезновения более абстрактна. Но мне неизвестно, задавали ли обезьянам вопрос о желании жить. Причем это можно было бы сделать даже тремя способами. Прямо спросить: хочешь ли туда, откуда не возвращаются? Спросить косвенно: хочешь ли ты уйти туда раньше или позже? И наконец, сказать, что туда позже попадают те, кто каждый день чистит зубы, - и посмотреть на результат.

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

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

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

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

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

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

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

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

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

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

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

Тогда вопрос "как я возник?" для этого разума - в отличие от нашего - не будет вопросом.

Автор благодарит А.Ф.Дедкова за полезное обсуждение проблемы, названной в заглавии.