Эффективный и прагматический универсальный интеллект

В самом начале мы упоминали о данном в [Wang, 2007] понятии эффективного интеллекта, как интеллекта, выполняющего свое предназначение в условиях ограниченных вычислительных ресурсов и информации. AIξtl работает в условиях ограниченных ресурсов и информации (среда полагается априорно неопределенной), причем оптимально по времени с точностью до некоторого замедляющего фактора. Однако подобная оптимальность является слишком слабой. Но можно ли ее улучшить?

Явным ограничением AI\xi ^{tl} является то, что выбор каждого последующего действия при увеличении истории не упрощается, а усложняется, поскольку увеличивается длина истории, а вместе с ней и сложность наикратчайших алгоритмов, способных воспроизвести эту историю (конечно, это замечание не относится к AIξ, в которой перебираются все алгоритмы, что, однако, абсолютно нереалистично). Выбор каждого нового действия рассматривается независимо от предыдущего посредством одного и того же метода. Как результат, константный замедляющий фактор не уменьшается от такта к такту, то есть, по сути, он умножается на то, сколько раз агент осуществляет выбор действия. Вполне естественно рассматривать не просто оптимальность отдельно каждого выбора действия, но и всего процесса функционирования агента. Эффективность интеллектуального агента может, в принципе, повышаться от такта к такту. Указанный аддитивный замедляющий фактор при этом не исчезнет, а просто перестанет умножаться на число тактов. И этот результат в принципе улучшить нельзя. Его можно охарактеризовать в смысле оптимальности по Парето, как и распределение ξ: не существует алгоритма интеллекта, который был бы не хуже данного во всех средах и лучше хотя бы в одной.

Можно, конечно, ослабить требование к сходимости поведения агента к оптимальному. Ведь обычно требуется не оптимальное поведение, а просто достаточно хорошее. Однако в пределе (при бесконечных ресурсах) нет причин отказываться от оптимального поведения. Проблема, скорее, в использовании оптимальности по Парето.

Действительная эффективность для всех сред сразу достигнута быть не может. Однако нас не интересуют вообще все возможные среды. Вернее, нам бы хотелось сохранить оптимальность по Парето и универсальность моделей ИМИ, но добавить к этому более высокую эффективность для нашего конкретного мира. В этой связи полезным является понятие прагматического (эффективного) ИИ, введенного в [Goertzel, 2010]. В более привычной терминологии такой ИИ следует назвать «предвзятым» (biased). Подчеркнем, что «предвзятость» вовсе не обязательно означает потерю универсальности. Парето-множество включает многие варианты оптимального ИИ, из которых какие-то оказываются гораздо более «прагматическими» (то есть эффективными в нашем конкретном мире), чем просто некоторый произвольно выбранный вариант.

В частности, мы отмечали, что распределения ξ(q) могут быть разными в зависимости от выбранной универсальной машины. Выбор этой машины не имеет значения с точки зрения оптимальности по Парето, но имеет большое значение для увеличения прагматичности ИИ.

Вернемся к нашим методологическим принципам, введенным в самом начале и гласящим, что ИИ должен быть универсальным, и эта универсальность должна сохраняться при вводе ресурсных ограничений, во многом определяющих архитектуру реального эффективного ИИ, которая также должна основываться на априорной информации о мире для ускорения обучения. Теперь мы можем пояснить, что они означают создание универсального эффективного прагматического ИИ. Касательно ξ(q) сохранение универсальности означает ξ(q)≠0 для любого алгоритма q; введение априорной информации для увеличения скорости обучения (увеличение прагматичности) означает выбор универсальной машины, определяющей наиболее адекватное (нашему миру) априорное распределение ξ(q); учет ресурсных ограничений (увеличение эффективности) означает использование распределения ξtl(q) и его уточнение по мере получения новой информации.

Выбор опорной машины

Возможность выбора опорной машины для внесения априорной информации уже отмечалась разными авторами [Solomonoff, 2010], [Pankov, 2008], и даже указывалось, что ее выбор влияет на «относительную интеллектуальность агентов» [Hibbard, 2009]. Но что это означает на практике? Есть опасность понять выбор опорной машины слишком буквально, то есть выбор, скажем, между машинами Тьюринга, лямбда-исчислениями, формальными грамматиками, алгорифмами Маркова и т.д. Все эти формализмы, действительно, задают разные ξ(q), но вряд ли стоит ожидать, что один из них существенно «прагматичнее» других. Аналогичное понимание выбора опорной машины, но в несколько более практическом варианте, приводит к попытке выбора (или создания) наиболее подходящего языка программирования. Действительно, любой язык также задает некоторое ξ(q). И выбор подходящего языка может облегчить для конкретных случаев задачу построения алгоритмических моделей. Существуют различные работы, исходящие из сходных соображений, например [Hall, 2008], [Looks, 2009].

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

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

Таким образом, естественный интеллект обладает огромной «предвзятостью» (в частности, в форме индуктивного смещения), обеспечивающей его «прагматичность» и определяющей его структуру. Это смещение можно описывать в терминах задания опорной машины при определении ξ(q), однако такая трактовка не должна пониматься упрощенно. Чтобы подчеркнуть это, будем эту «предвзятость» называть когнитивным смещением (cognitive bias), поскольку это смещение у человека реализовано в когнитивных функциях (таких как память, внимание, планирование и т.д.), отсутствующих у моделей ИМИ.

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

Адаптивность и самооптимизация

Выше было отмечено, что рассмотренные модели ИМИ по своей структуре являются неинкрементными: каждая из них представляет собой вызов в бесконечном цикле одного и того же алгоритма; от такта к такту меняется только входная строка для этого алгоритма (представляющая собой историю взаимодействия агента со средой). Интуитивно понятно, что ИМИ в такой форме будет многократно проделывать работу по предсказанию x и выбору y. Если в интеллект можно закладывать априорную информацию путем выбора распределения ξ(q) в целях повышения эффективности, то вполне естественно модифицировать это распределение и по мере накопления информации.

Подобное инкрементное обучение (правда, в более узком контексте задачи индукции) рассматривал и Соломонов [Solomonoff, 2003]. Его подход содержит важные идеи (которые мы еще обсудим), но в целом он эвристичен (его идеи проистекают во многом из эвристического программирования) и недостаточен.

Сходные идеи высказывал и Шмидхубер, предлагая адаптивный LSearch, идея которого заключается в том, что как только найдена программа q при нахождении решения текущей задачи, вероятность ξ(q) существенно увеличивается; однако сам способ модификации ξ(q) не гарантирует оптимальности [Schmidhuber, 2007a].

Шмидхубер предложил [Schmidhuber, 2007b] иной подход (названным им «машина Гёделя»), подразумевающий строго обоснованную самооптимизацию (включающую не только распределение ξ(q), но и другие компоненты интеллекта агента, и даже целевую функцию). Однако хотя этот подход и выглядит более теоретически обоснованным, в нем акт самооптимизации выполняется только тогда, когда может быть строго доказано, что он ведет к увеличению будущего подкрепления. Хотя это гарантирует, что подобная самооптимизация, по крайней мере, не ухудшит поведение агента, сомнительно, что она окажется достаточно эффективной, поскольку логически доказать, что те или иные шаги самомодификации приведут агента к гарантированному увеличению будущего подкрепления, вряд ли будет возможно во многих случаях в силу индуктивного характера самой проблемы (аналогичное методологическое сомнение нами высказывалось и относительно AI\xi ^{tl}). Хотя здесь могут использоваться и доказательства о том, что та или иная самооптимизация обязательно повысить не само будущее подкрепление, а вероятность его увеличения, ответ на вопрос о выборе надлежащей аксиоматики для машины Гёделя не дается, что делает эту машину «рамочной моделью», требующей существенного развития. В то же время, указание на необходимость самооптимизации, включающей не только уточнение ξ(q), но также и программ поиска как моделей, так и оптимальных цепочек действий, представляется совершенно справедливым (стоит отметить, что в условиях бесконечных ресурсов даже модификация ξ(q) с учетом имеющейся истории не нужна, поскольку предсказание выполняется по той же полной истории). К сожалению, подходящей теории самооптимизации в литературе отсутствует и требует разработки.

Избыточность ИМИ

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

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

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

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

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

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