Книга
Книга
知識②獲得七学
ЯЯ
ПРИОБРЕТЕНИЕ ЗНАНИЙ
Под редакцией U ОСУГИ, Ю. САЭКИ
Перевод с японскогоканд. техн, наук Ю. Н. ЧернышоваПеревод с японскогоканд. техн, наук Ю. Н. Чернышовапод редакциейд-ра 中из.-мат, наук Н. Г. Волковапод редакциейд-ра 中из.-мат, наук Н. Г. Волкова
Перевод с японскогоканд. техн, наук Ю. Н. Чернышова
Перевод с японскогоканд. техн, наук Ю. Н. Чернышова
под редакцией
д-ра 中из.-мат, наук Н. Г. Волкова
под редакцией
д-ра 中из.-мат, наук Н. Г. Волкова
工学博士大須賀節雄、 Ph.D佐伯胖共編
知識工学講座3
才一厶社才一厶社
才一厶社
才一厶社
Москва «/Лир» 1990
ББК 32.973.1 П76
УДК 007^01.33
Авторы: Осуга С., Саэки Ю., Судзуки X.,Кобаяси X., Оцуки С., Кнтнхасн Т., Танака Ю ,Дрикава С., Синохара Т., Мияхара Т., Харагутн М.
Приобретение знаний: Пер. с япон./Под ред. П76 С. Осугн, Ю. Саэки,—М.: Мир, 1990.—304 с., ил.
ISBN 5-03-001263-Х
Книга является переводом третьего тома 10-томной серии по инженерии знаний, написанной крупными японскими специалистами. Посвящена методике приобретения знаний и обучения с точки зрения построения экспертных систем и баз знаний. Рассмотрены психологические аспекты обучения, методы и проблемы, связанные с извлечением ^знаний. Обсужиены вопросы представления знаний для работы в режиме диалога и спосоЗы ведения диалога. Много внимания уделено проблемам построения баз знаний. Проанализированы прикладные аспекты автоматического синтеза программ на Лиспе.
Для студентов университетов и специалистов по соз- данию обучающих систем и тренажеров.
14020700G0-444В ~04HG 1)-9014020700G0-444В ~04HG 1)-905-905-90ББК 32.973.1ББК 32.973.1
14020700G0-444
В ~04HG 1)-90
14020700G0-444
В ~04HG 1)-90
5-90
5-90
ББК 32.973.1
ББК 32.973.1
Редакция литература по информатике 〃 робототехнике
86 歸 sim A^ATU §86 歸 sim A^ATU §
86 歸 sim A^ATU §
86 歸 sim A^ATU §
ISBN 5-03-001263-Х (русск.)ISBN 4-274-07346 (япон.)ISBN 5-03-001263-Х (русск.)ISBN 4-274-07346 (япон.)
ISBN 5-03-001263-Х (русск.)
ISBN 4-274-07346 (япон.)
ISBN 5-03-001263-Х (русск.)
ISBN 4-274-07346 (япон.)
© С, Осуга, 10. Саэкп. «Ом с я»,Токио, 1987
© перевод на русский язык,Ю. Н. Чернышов 1990
ОТ ПЕРЕВОДЧИКА
Среди многочисленных проблем искусственного интеллекта исследования по представлению и использованию знаний занимают особое место. И не столько потому, что опн тесно связали с самым загадочным явлением природы — мышлением человека, сколько потому, что результаты этих исследований первыми начали приносить ощутимую пользу, воплотившись во множестве экспертных систем.
Экспертные системы, ассимилируя знания ведущих специалистов самых разнообразных профилей, играют важную роль в распространении этих знаний, в повышении квалификации пользователей, а в последние годы благодаря развитию международных сетей связи способствуют созданию общедоступных баз знаний в различных сферах деятельности человека. “
Как известно, компьютеры пятого поколения, первые образцы которых, по оценке экспертов, должны появиться в 90-е гг., будут в максимальной степени использовать результаты исследований в области инженерии знаний. Вспомним, что универсальность существующих компьютеров достигается за счет определенного набора команд и независимого механизма их обработки, а проблема—лишь в преобразовании решаемой задачи в последовательность таких команд. Точно так〉ке в компьютерах пятого поколения универсальность должна быть достигнута за счет представления знаний в некотором унифицированном формате и создания механизма нх обработки (машины логических выводов). При этом любая поставленная человеком задача может быть решена компьютером, естественно, при условии, что он (компьютер) имеет необходимые для ее решения знания.
Таким образом, очевидно, что будущее вычислительной техники и международных коммуникационных сетей во многом связывают с системами, основанными на знаниях.
Развитие экспертной системы, как н интеллектуальная жнзнь человека, складывается из двух процессов: накопления знании и их использования. Но если человек приобретает знания из Ьпыта в течение всей жизнн, то экспертная система на первом этапе получает свои знания от эксперта и, будучи передамиол пользователям, в большинстве случаев может лишь систематиз):- ровать имеющиеся знания, скажем проверять их непротизоречи- вость и надежность. (Хотя более развитые экспертные CIICтe^^ы имеют функции приобретения новых знаний в диалоге с опытными пользователями.)
Развитие работ в области создания интеллектуальных систол во многом сдерживается нехваткой соответствующих специалистов—инженеров по знаниям. Они должны владеть методами представления и использования знаний, методами программирования, а также обладать достаточной эрудицией для общения со специалистами других профилен, в частности хорошо презстаз*
лять, как, из кого и какие знания извлекать. К сожалению, таких инженеров в нашей стране, впрочем, как и во всем мире, па так много.
Важность проблемы подготовки ин жен ср о в по знаниям несомненна. Этот факт упоминается во многих книгах по экспертным системам, однако самим вопросам приобретения знаний, т. е. тому, как должны работать эти инженеры, уделяется мало внимания. Приятным исключением является кннга Попова Э. В. «Экспертные системы: решение неформализованных задач в диалоге с ЭВМ».——М.: Наука, 1987, в которой две главы посвящены разбору приобретения знании, в частности построению новых примеров понятий, приобретению знаний, нх представлению и другим вопросам.
Настоящая книга, продолжающая серию книг по инженерии знаний, по существу первая в нашей стране, последовательно и разносторонне излагающая все вопросы, связанные с приобретением знаний и обучением, В ней читатели найдут и прекрасное эссе об истории исследований обучения животных н человека, и конкретное описание языка запроса по образцу в базу данных, и строгое математическое нзложенпе теории индукции н аналогии. Многие математические результаты получены авторами книг” несомненно, будет полезной полная классификация методов ин* дукции и описания отдельных алгоритмов и приемов приобретём иия знании.
Книга может служить прекрасным учебным пособием для тех, кто желает посвятить свои интересы созданию экспертных систем и программных систем компьютеров новых поколений.
Ю. Н. Уерн“以08
ПРЕДИСЛОВИЕ
Инженерия знаний — это область информационной технологии, цель которой ——превращение знаний, накапливать н применять которые на практике до сих пор мог только человек, в объект обработки на компьютерах. Для этого необходимо проанализировать знания и особенности их обработки человеком и компьютером, а также предложить их машинное представление. Чтобы эта область утвердилась как одно из научных направлений, необходимо дать строгое определение, что такое знания. К сожалению, многочисленные исследования, совокупность которых получила название инженерии знаний, еще не привели нас к определению знаний. В этом смысле инженерия знаний как научное направление пока находится на пороге становления. Тем не менее очевидно, что цель, поставленная перед инженерией знаний,——обеспечить возможность использования информации в компьютерах на более высоком уровне, чем до сих пор, — актуальна. В современной вычислительной технике формат информации, с которой оперирует компьютер, а именно программ н баз данных, определяется в соответствии с архитектурой компьютеров. Подобная информация имеет достаточно низкий уровень, являясь лишь малой частью разнообразной информации, с которой мы имеем дело в реальном мире. И даже такую информацию в отдельных случаях можно обработать лишь на специализированных компьютерах. Это означает, что возможности современных компьютеров ограничены и они могут обрабатывать лишь небольшую часть информации, которая нам необходима. Для того чтобы компьютеры могли обрабатывать информацию на более высоком уровне, необходимо поднять до соответствующего уровня форму представления информации. И само собой разумеется, что информация высокого уровня или по крайней мере некоторая ее часть будет иметь настолько общую форму представления, что ее уже можно будет назвать знаниямн.
Строгого определения знаний пока нет, но почти не вызывает сомнения, что это будут нетрадиционные программы — они будут включать и непроцедурные элементы и использоваться так же, как и ннформацня из человеческой памяти. Таким образом, в инженерии знаний прежде всего крайне необходима техника использования знаний, т. е. актуальна проблема использования знаний. Однако, как бы ни развивалась техника использования знаний, она не найдет применения, пока нет самих знаний. Решение проблем накопления в памяти информации, имеющей форму знаний, требует разработки еще одной техники, полностью отличной от техники использования знаний, ио которая тесно связана с последней в том смысле, что они взаимно дополняют друг друга и образуют в совокупности технику обработки знаний. Это проблема приобретения знаний пли в более широком
смысле—проблема обучения. Имешю так можно назвать функции извлечения информации из окружающей среды и их накоп
ление в памяти с целью использования.
Проблема обучения имеет несколько аспектов: 1—функгдии обучающегося, 2 ——свойства среды ——источника Ш!формацш1, 3 — взаимодействие обучающегося и среды. В принципе уровень знаний повышается постоянно по мере абстра!ироваиия нх смыела, поэтому функции, которыми должен обладать обучающийся, различны В 3HEUCHMGCTH ОТ урОВНЯ Н2ОбХОД!1МОИ ему 11ВфО])М:Щ1Н1. То же можно сказать и о среде, которая дает пмформацшо обучающемуся, а уровень представления исходной информации за- виент от уровня, достигнутого обучающимся. Кроме гого, наличие взаимосвязи между обучающимся и средой обусловливается его способностями и эффективностью обучення. Пос^е получения информации низкого уровня сам обучающийся может повы
сить ее уровень, следуя соответствующлм инструкциям.
Итак, при обучении ставятся ио крайней мере две цели. Первая — извлечение информации из среды, вторая — повышелие ее уровня и структурирование. Пока не получена вся информа
ция, она не может стать знанием, и данные низкого уровня, например исходные данные, могут быть использованы так?ке па низком уровне. С повышением уровня данных возрастает их универсальность в плаке применения. Вторая цель достигается с помощью различных средств. Следовательно, необходимо обсуждать обе цели проблемы обучения с учетом указанных выше трех аспектов. Более того, помимо функций обучающегося, связанных с получением информации об объекте и повышенпем ее уровня, необходимы функции управления процессом обучения.
При изучении проблемы обучения необходимо применять различные подходы, взятые из жизни. Функции обучения присущи живым существам по нх природе, поэтому предложены такие подходы, как наблюдение и моделирование функций обучения животных и человека, изучение модели обучения с помощью математики илн символической логики, моделирование процесса обучения при обработке образов, выполняемой чисто с практической тичкн зрения, и другие подходы. Короче говоря, проведено мно- зкество исследований функций обучения, но по сравнению со сложностью проблемы обучения полученные результаты недостаточны для систематического обсуждения. Тем не менее при рассмотрении инженерии знаний нельзя пройти мимо проблемы обу- чення, охватывающей почти половину задач обработки знаний, В данной книге важное место занимает систематическое нзложе- нне современного состояния исследований этой проблемы и сто- ренннкн различных подходов к ее решению во многих областях могут обсудить ее с соответствующих точек зрения.
Февраль 1987Февраль 1987Издание 呼mi —во многом заслуга сотрудников издатель- ства «Омся»( без помощи которых выход книги в свет был бы невозможен.
Февраль 1987
Февраль 1987
С. Осуга
10. Сажи
ГЛАВА t
ВВЕДЕНИЕ
С. Осуга (Токийский университет)
По мере развития и практического применения техники обработки знаний повышался интерес к таким функциям, как обучение и приобретенне знакни е помощью компьютеров. Поскольку объектом обработки являются знания, то неизбежно появляется стремление к созданию систем с функиняАТн приобретения, хранения и применения знаний. Однако большинство обучающихся систем, разработанных до настоящего времен% ориентированы на анализ механизма приобретения информации человеком и его воспроизведения в машине, а сложное эвристическое обучение, свойственное человеку, практически не реализовано. Если это предел возможностей обучения с помощью машин, то каким бы большим ни был вклад подобных систем в исследования способности человека к обучению и исследованию процесса обучения как науки, написанные человеком программы по-прежнему будут лучше созданных самими машинами в процессе обучения.
Разумеется, существование этого предела не предсказано никакой теорией, и цель современных исследований процесса обучения — повысить уровень функций, имеющих прикладное значение. Кроме того, обучение с помощью машин важно не только в практическом плане, но и в плане объяснения способности человека к обучению и как фундамент научного направления, так что в этом смысле ценность подобных исследований огромна. В то же время при разработке систем, рассчитанных на получение логических выводов на порядок более высокого уровня, чем предложенные до сих пор, желательно не только принимать во внимание ценность этих исследований, ио и уточнить сами цели исследований.
Ниже после общих замечаний о том, что такое обучение, рассмотрены приобретение знаний и обучение с практической точки зрения.
ОБУЧЕНИЕ
КАК ОПРЕДЕЛИТЬ ФУНКЦИИ ОБУЧЕНИЯ! 一
Обучение — широкое понятие, поэтому этот термин часто используют, не задумываясь о его глубоком смысле. Итак, прежде всего начнем с определения. Общепринятый смысл обучения можно пояснить так: в процессе повторения однотипных экспериментов методом проб и ошибок или экспериментов с одной и той же исходной совокупностью данных происходит модификация системы, которая при этом демонстрирует на каждом этапе экспериментов лучшие результаты, чем на предыдущем этапе. Подобное определение не что иное, как наблюдение со стороны действий обучающейся системы в конкретной среде, т. е. обобщенное определение, и, опираясь на него, сложно реализовать обучение с помощью машины — необходимо превратить это определение в более конструктивное. '
ПОДХОДЫ К ИССЛЕДОВАНИЮ ОБУЧЕНИЯ
Существуют различные аспекты исследования функций обучения, поэтому необходимо уточнить различия между целями и подходами к исследованиям. Здесь можно выделить три направления. Первое —— изучение функций мышления и обучения человека и их моделирование на компьютерах, второе ——изучение функций информационно-логического обучения, третье——исследования процесса обучения в области обработки образов. Все эти направления в будущем должны слиться, но пока до этого еще далеко,
L Когнитивный подход. Обучение ——это функция,свойственная животным по их природе, поэтому потрадиции исследования процесса обучения животныхн человека главным образом проводились в психо-
логии, а в последнее время в биологии и нейрофизиологии в связи с изучением механизма памяти, С другой стороны, развитие компьютеров стимулирует исследования, связанные с моделированием процесса обучения человека и объяснением функций обучения на основе результатов моделирования. Это одна из важных целей исследования процесса обучения. При этом нет необходимости принимать во внимание, превышает ли она возможности человека, есть ли в ней практическая ценность? В общем случае обучение и для человека нелегкий процесс; как правило, обучение проходит медленно и не очень эффективно. Объяснение причин этого явления еще сыграет свою роль в разработке новых методов обучения. При подобном подходе моделирование функций обучения человека и животных выполняют посредством наблюдения и анализа результатов. В настоящее время такое моделирование выполняют многие исследователи, поэтому для успешного использования предложенных ими методов прежде всего необходимо знать, в чем состоит моделирование и какие ограничения оно имеет. Это обсуждается в гл. 2.
Кстати, как связан когнитивный под?:од с инженерией знаний, имеющей важное прикладное значение? Сегодня для многочисленных систем (точнее, для их экспертных оболочек), если их рассматривать в качестве систем инженерии знаний как таковой, связи не усматривается. Область применения большинства существующих систем ограничена, на что указывают многие специалисты, но если начать выяснять причины этого факта, то как раз и обнаруживается связь между инженерией знании и когнитивизмом. Например, для современных систем нет принципиальной разницы между специалистом и начинающим, просто предполагается, что есть разлитое в объеме специальных знаний, имеющихся у того и у другого, но специалист мсжет описать своп знания. Кроме того, предполагается, что специалист, решая задачи с использованием знаний, вызывает и обрабатывает их последовательно. Однако с позиций когнитивизма эти допущения не всегда верны.
Следовательно, системы, созданные при этих допущениях, ведут себя не так, как человек. Эти проблемы рассматриваются в гл. 3.
Исследования функций обучения имеют глубокую связь с разработкой и исследованиями систем обучения с помощью компьютеров. Такие системы развиваются в направлении синтеза моделей приобретения знаний через диалог и тесно связаны с проблемами понимания языков. Наиболее интересное направление в этой области ——исследования способностей к обучению, при которых модель учащегося выводится из результатов наблюдения. Приобретению знаний в ■диалоге посвящена гл. 4.
Можно ожидать, что в процессе этих исследований появятся новые методы машинного обучения.
Информационно-логический подход. - Вместе с прогрессом вычислительной техники развиваются исследования, в которых функции обучения рассматриваются с позиций информатики с целью теоретического объяснения обобщенного механизма обучения. Центральной темой исследований здесь является не психологический, а математический анализ и моделирование функций; акцент делается на классификацию и анализ традиционных методов обучения, а также на объяснение функций сбора информации и других функций. В последние годы при классификации методов обучения особое внимание уделяют их связи с функциями логических выводов, в частности с индукцией, аналогией и другими разделами логики. Об этом будет идти речь в гл. 7 и последующих главах.
Классификация по взаимосвязи со средой, напрн- мер обучение с преподавателем и без него, играет важную роль в исследовании индивидуального обу- ие—А. В настоящее время ведется много исследова- нн伪,но все они рассматривают обучение с преподавателем, когда человек подготавливает среду обу- 1【енмя, используя уже известные факты, либо само обучение проходит под руководством человека. Обу・ ”енне без преподавателя более сложно.
Подход с позиций обработки образной информации и другие подходы. С практической точки зрения эффективность обучения машины можно обнаружить в одном из двух случаев: 1 — обучение приведет к результатам, которые не могли быть запрограммированы человеком (не известным человеку); 2 — обучение более простым способом приведет к результатам, которые, вообще говоря, мог бы непосредственно запрограммировать человек, и в этом состоит их практическая ценность.
В первом случае в процессе обучения открываются новые факты. Хотя обучение и открытйе не одно и то же. Открытие — это процесс, при котором, например, из совокупности экспериментальных данных выводится физический закон, а в процессе обучения—решение очередной задачи может быть найдено па основе полученных до этого результатов благодаря запоминанию данных и автоматическому составлению указателей для их поиска. Оба этих процесса в сочетании могли бы дать поразительный эффект, но, как отмечено выше, это функции эвристического обучения без преподавателя. В настоящее время пока не существует системы, в которой эти функции были бы реализованы на практическом уровне, хотя можно привести ряд примеров исследований, связанных с логически ми выводами по аналогии, индукции и обучением на основе примеров. Эвристическое обучение, которое может привести к открытию неизвестных фактов, имеет большое значение для человека, поэтому в будущем определенные надежды возлагают на исследования систем поддержки открытий, работающих в сотрудничестве с человеком. Эвристическое обучение — это не совсем открытие новых общих физических законов пли обнаружение специфичных объектов со структурой, удовлетворяющей заданным требованиям, как в проблемах проектирования, тем не менее оно включает функции систематизации информации. В практическом плане в системах поддержки открытий на основе примеров не обойтись без баз данных. Добавление, обновление и удаление данных ——это самые примитивные функции баз данных, но при реалнза-
пии машинного обучения их нельзя игнорировать. Об этом говорится в гл. 6.
Во втором случае человек сам может запрограммировать результаты, но обучение эффективнее по сравнению с той рутинной работой, включая подготовительные операции, которую придется делать человеку, в частности особенно заметен эффект при работе с образной информацией. Например, при распознавании речи обучение сводится к запоминанию образцов голоса конкретных лиц и последующему их использованию; важно обучение при обработке изображений и т. д. Можно привести много примеров обучения такого рода, отметим лишь, что для успешной работы подобных систем необходимо дать им практическую направленность, в том числе и результатам обучения.
Выше были рассмотрены три подхода к исследованиям обучения в их взаимодействии. Как уже было отмечено, важными функциями обучения являются получение новой информации из среды и ее систематизация для последующего использования.
ПРИОБРЕТЕНИЕ ЗНАНИЙИ ОВЛАДЕНИЕ МАСТЕРСТВОМ
Следует остановиться и на третьей точке зрения на обучение, которая складывается из двух аспектов: 1 ~ приобретение н структуризация знаний; 2 — овладение мастерством и квалификация. Первый аспект, как уже отмечалось выше, состоит в получении кодированной информации из внешнего мира и ее систематизации. При этом приобретаются разнообразные знания, начиная от простейших исходных данных типа измерений в физической системе или даыных изображений и кончая переработанной, структурированной и проверенной информацией типа фи- зических законов и экспертных знаний; функции обучения в зависимости от типа знаний будут раз- личаться. Само обучение каждого типа можно оце- ннть по тому, насколько широко и полно будут описаны среда и объекты.
Овладение мастерством достигается благодаря непрерывным упражнениям, как, например, в игре в
гольф или игре на фортепиано, но полученные при этом знания нельзя представить в виде кодов, и подобный процесс называют подсознательным обучением. Это обучение имеет непосредственное отношение к строению физических органов, отвечающих за движение и мышление. С позиции информатики это обучение низкого уровня, и компьютер в этом случае чрезвычайно сложно сделать объектом обучения.
Таким образом, в понятие ссобучение» можно вкладывать различный смысл. В следующих разделах ограничимся знаниями, которые представляют объекты в виде кодов, и рассмотрим функции обучения, обращая основное внимание на практическую сторону проблемы обучения.
1.2. МЕТОДЫ ПРИОБРЕТЕНИЯ ЗНАНИЙ
ЭТАПЫ ПРИОБРЕТЕНИЯ ЗНАНИЙ
Приобретение знаний реализуется с помощью двух функций: получения информации извне и ее систематизации, При этом в зависимости от способности системы обучения к логическим выводам возможны различные формы приобретения знаний, а также различные формы получаемой информации. Форма представления знаний для их .использования определяется внутри системы, поэтому форма информации, которую она может принимать, зависит от того, какие способности имеет система для формализации информации до уровня знаний. Если обучающаяся система совсем лишена такой способности, то человек должен заранее подготовить все, вплоть до формализации информации, т, е. чем выше способности машины к логическим выводам, тем меньше нагрузка на человека.
Функции, необходимые обучающейся системе для приобретения знаний, различаются в зависимости от конфигурации системы. В дальнейшем при рассмотрении систем инженерии знаний предполагается, что существует система с конфигурацией, показанной на рис, 1.1, которая включает базу знаний и механизм
логических выводов, использующий эти знания при решении задач. Если база знаний пополняется знаниями о стандартной форме их представления, то этими знаниями также можно воспользоваться. Следовательно, от функций обучения требуется преобразование полученной извне информации в знания и пополнение ими базы знаний.
Можно предложить следующую классификацию этапов обучения, соответствующих способностям Компьютеров к формализации.
А. Получение информации без логических выводов.
Ввод программ.
Ввод фактических данных.
5 ^Получение извне информации, уже пр вдета в< ленной в форме знаний.
L Получение готового набора знаний, представленных во внутреннем формату
Получение знаний, представленных во внутреннем формате, в режим® диалога,
Получение знаний, представленных во внешнем формате, и их понимание.
В, Обучение по примерам.
L Параметрическое обучение.
У R6'“eH"e на основе выводов по ан&аогвд,
3, Обучение на основе выводов по индукций эвристическое обучение.
F. Приобретение знаний на метауровн备
Компьютер
'базовая структура систем обработки знак罐
ОБУЧЕНИЕ БЕЗ ВЫВОДОВ И ОБУЧЕНИЕС ВЫВОДАМИ НА НИЗКОМ УРОВНЕ
Категорию А можно назвать обучением без выводов или механическим запоминанием, это простой про цесс получения информации, при котором необязательны функции выводов, а полученная информация в виде программ или данных используется для решения задач в неизменном виде. Другими словами, это способ получения информации, характерный для существующих компьютеров.
Категория Б — это получение информации извне, представленной в форме знаний, т. е. в форме, которую можно использовать для выводов. Обучающейся системе необходимо иметь функцию преобразования входной информации в формат, удобный для дальнейшего использования и включения в базу знаний.
Приобретение знаний на этом этапе происходит в наиболее простой форме: это знания, предварительно подготовленные человеком во внутреннем формате, какнмн являются большинство специальных знаний, изначально заданных в экспертных системах. В слу- чае прикладных систем инженерии знаний необходимее мо преобразовать специальные знания из какой-либо области в машинный формат, но для этого нужен J посредник, хорошо знающий как проблемную об- ласть, так н инженерию знаний. Таких посредников (、 называют инженерами по знаниям; в последние годы J^ началась специализация таких инженеров, но по про- гнозам подготовка их в достаточном числе окажется сложной задачей. Для улучшения положения ничего не остается, как перепоручить эти функции самим системам, В общем случае для этого необходимо иметь функции выводов достаточно высокого уровня, но можно ограничиться и выводам и на сравнительно низком уровне, а остальное доверить человеку— в этом и состоит приобретение знаний в диазоге. Примером служит хорошо известная система TEIRES1AS. Это система-консультант в области медицины, разработанная на базе системы MYCIN. Специалисты в проблемной области являются преподавателями обучающейся системы, а ученик — система инженерии знаний — изучает ответы на поставленные задачи н
корректирует те правила в базе знаний, которые ранее приводили к ошибкам. Для подготовки знаний в экспертной системе необходимы вспомогательные средства типа редактора знаний, причем в процессе приобретения знаний в диалоге не только редактируются отдельные правила и факты, но и восполняются недостатки существующих правил, т. е. ведется редактирование базы знаний.
Если знания заданы во внешнем формате, например на естественном языке, то следует преобразовать их во внутренний формат. Для этого необходимо понимать внешнее представление, т. е. естественный язык, графические данные и т. п. Фактически приобретение знаний и их понимание тесно связаны. Проблема понимания сводится не только к преобразованию структуры предложений — необходимо получить формат, удобный для применения.
Аналогичная проблема — преобразование во внутренний формат советов, подсказок по решению задач, что называется «операционализацией» знаний, В этом заключается центральная проблема искусственного интеллекта; она, в частности, изучает преобразование советов, подсказок, представленных в терминах проблемной области, в процедуры. Нанрн・ мер, система UNDERSTAND выполняет операциона* лизацию представления задачи о ханойской башне ') на английском языке путем построения соответствующих состояний и операций, приводящих к этим состоя* НИЯМ.
ОСНОВНЫЕ ПРИНЦИПЫ ПРИОБРЕТЕНИЯЗНАНИЙ ИЗ ПРИМЕРОВ
Проблемы категории Б возникают из-за того, что опи«. сания, или, что то же самое, представления знаний^ задаются извне в некотором формате. При этом не* обходимо всего лишь преобразование форматов пред* ставления информации, но функция открытия не тре« буется. Напротив, в категории В есть свои особен* мости приобретения знаний; здесь выполняется сбор
известнаяизвестнаялогическая гола*логическая гола*“ Задача о ханойской башне воломка. — Прим, ред,
известная
известная
логическая гола*
логическая гола*
отдельных фактов, их обобщение и использование в качестве знаний. Для этого уже необходимо выявить общие понятия, вытекающие из примеров, и выбрать формат или структуру информации для их представ- ления. В зависимости от уровня функций выводов могут возникать как сравнительно простые, так и сложные представления.
Категория В отличается от категории Б еще и тем, что входная информация — это набор несистематизированных примеров, поэтому внешне здесь есть много общего с категорией Б. Например, чтобы получить фактические данные во внешнем представлении, необходимо их понимать, а это аналогично катего< рии Б.З.
Высший уровень категории В — эвристическое обучение, рассмотренное в разд. 1.1.2; в этом случае представление знаний наиболее сложное. Практически эвристическое в полном смысле слова обучение не реализовано.
По сравнению с категориями А и Б методы обучения категории В имеют большую степень свободы. Поэтому уточним общие принципы такого обучения.
Языки представления. Обучение по примерам — это процесс сбора отдельных фактов, их обобщение и систематизация, поэтому необходим унифицированный язык представления примеров н общих правил. Эти правила, будучи результатом обучения, должны стать объектами для использования знаний, поэтому и образуют язык представления знаний, И наоборот, язык представления знаний должен учитывать и определять указанные выше условия приобретения знаний.
Способы описания объектов. В случае обучения по примерам из описаний отдельных объектов создаются еще более общие описания объектов некоторого класса, при этом возникает важная проблема: как описать данный класс объектов, В полном классе некоторых объектов следует определить меньший класс объектов, обладающих общим свойством (объекты только в этом классе обладают заданным
свойством), но в действительности проще определить список объектов и убедиться, что все объекты в нем обладают общим свойством. Для некоторого типа задач можно эффективно использовать ложные примеры или контрпримеры, убедительно показывающие, что данные объекты не входят в этот класс. Однако в общем случае обработка ложных примеров сложна. Иллюстрацией применения контрпримеров может служить понятие «почти то», введенное Уинстоном °, ,
Правила обобщения. Для сбора отдельных примеров и создания общих правил необходимы правила обобщения. Предложено несколько способов их описания: замена постоянных атрибутов языка на переменные, исключение описаний с ограниченным применением и т. п. Очевидно, что эти способы тесно связаны с языком представления знаний.
Функция обучения ——это выводы в широком смысле слова/ т. е. функция, порождающая из заданного представления частные представления. Однако то, что мы здесь называем выводами, существенно отличается от дедуктивных выводов, лежащих в основе современных экспертных систем, предназначенных для использования знаний. Диапазон, в котором представление, порожденное дедуктивным выводом, служит объектом описания, ни в коем случае не больше диапазона, заданного априори. Например, пусть в формуле вывода
А, Аг ВВ7
А ~ высказывание《Сократ — человек», или в формализованном виде ЧЕЛОВЕК (Сократ), а А-> В высказывание «все люди смертны», или (Vx) [ЧЕЛОВЕК (灯f СМЕРТЕН “)]・ Отсюда по д/у; иии получаем высказывание В': «Сократ смеотен» СМЕРТЕН (Сократ). Предикат СМЕРТЕН в высказывании В имеет переменную и подходит ко всем
Сп Уинстон П- Искусственный интеллект.-М : Мир 19bo. — Прим, nepeet * 乙
объектам в мире, тогда как высказывание В' ограничивается только конкретным объектом — Сократом.
В отличие от этого выводы при обучении обладают совсем другим свойством: диапазон объектов описания порожденных представлений больше, чем диапазон, заданный изначально. Однако этот диапазон не бесконечен, его можно расширять в определенных пределах. Это и есть правило обобщения. Возможны различные типы выводов в зависимости от способа обобщения, один из примеров обобщения описан ниже. По образцу приведенной выше формулы построим общее выражение вывода, включающего обобщение:
Р, Н->Р Н '
Здесь Р — множество известных тезисов, Н — гипотеза. Смысл этого выражения заключается в следующем. Пусть задано множество тезисов Р. Если предложить некую гипотезу Н и показать, что Р выводится из Н, то будем считать Н истинной. Например, пусть задано множество Р:
{
ДОМ (Киёмори)、
ДОМ (Сигэмори)
ДОМ (Ацуморн),
Выдвинем гипотезу Hj
Н] : (Vx) ДОМ (х), т. е.
„каждый человек имеет дом11.
При этом из Я[ полунаем Р и делаем вывод, что Н\ истинна. В данном примере диапазон объектов, к которым применим предикат ДОМ, ограничен множеством Р, состоящим из Киёмори, Сигэмори и Ацу- мори; заменим их на переменную и расширим множество до объектов во всем мире.
В результате, если впоследствии появляется новый объект Корэмори, которого не было в Р, то сразу〉ке делаем вывод ДОМ (Корэмори). Априори из Р этого не следует. Отличие выводов при обучении от дедуктивных выводов как раз и состоит в том, что диапазон объектов расширяется и создается несколько
гипотез ". За счет расширения из гипотезы Н выво-* дятся другие высказывания. Это мзкно представить следующим образом:
―р―>Q ・ из гипотезы которой
L 1- удовлетворяет Р, следует Q.
С др)той стороны, есть риск совершить ошибку, расширив таким образом класс объектов. Если появится новый объект Цу руги (не человек 1J), то мы придем к странному выводу ДОМ (Цуруги). Выбранная нами гипотеза имеет очень большой диапазон объектов, но гипотез может быть много, поэтому выберем гипотезу с наименьшим множеством объектов, В нашем обсуждении указанная выше формула вывода б плане обучения слишком упрощена, исполь-* зуем более реальную формулу
P(={Pi, Р?}), {Pi, Н}~>Р2
т. е. «гипотеза Н истинна, если подмножество Р2 мно* жества Р можно вывести из гипотезы Н и оставше** гося подмножества Рр>. Рассмотрим следующий при-» мер множества Р:
р=д р2)
/ Vx [ДОМ “) f ЧЕЛОВЕК (х)]
_[ (Каждый, кто имеет дом — человек) 尸 j V% [ДОМ ⑺-> ВЛАДЕЛЕЦ (х)]
I (Каждый, кто имеет дом — владелец)
,ДОМ (Киёмори)
Р2=・ ДОМ (Сигэмори)
、ДОМ (Ацумори)
В примере, приведенном ранее, гипотеза Н, созда-* ва/1ась непосредственно из Р2, теперь же учитывают- *п黑翁胃2T "3 Р" потому выдвинем следующую
8TU胱I黑味r3:::;牆糜髓屮露嚴炉
Н2; (Vx) [ЧЕЛОВЕК W-^ ДОМ (х)]
(Каждый человек имеет дом == если нет дома, то не человек).
Здесь условие ЧЕЛОВЕК(х) ограничивает диапазон ДОМ(х) множеством людей, поэтому указанный выше вывод о том, что Цуруги имеет дом, не подтверждается.
Если после определения такой гипотезы вновь добавить факт
ЧЕЛОВЕК (Корэмори) (Корзморн — человек), то путем дедукции сразу же получим
ДОМ (Корэмори) (Корэмори имеет дом).
Подобная связка обучение — дед)ткция может быть представлена следующим образом:
Вывод при обучении ...
,Р(={Р【,р?}), {Pi,Н (= Q -> R)}R21
・,・ Вывод при дедукции
Но и при таком ограниченном диапазоне гипотеза Н2 еще неверна. Если задано, что
ЧЕЛОВЕК (Есицунэ) А 〜ДОМ (Есицунэ)
(Еснцунз — человек, но бездомный),
то опять получаем противоречие. Поэтому еще ограничим диапазон:
Н3; (Vx) [ВЛАДЕЛЕЦ (х) -> ДОМ (х)].
На этот раз (на какое-то время) мы получили правильную формулу. Таким образом, традиционный метод обобщения состоит в выборе минимальной гипотезы среди большого чпсла возможных гипотез обобщения, в которых объекты из заданного набора примеров (Р?) заменены переменной и которые расширяют диапазон применения логических формул. Полуденная гипотеза называется минимальным обобше-
нием. Метод минимального обобщения особенно важен при выводах в случае машинного обучения.
Приведенные выше примеры облегчают понимание читателем идеи, но чтобы использовать мнни мальное обобщение на формальном уровне, этого недостаточно. Во всяком случае, компьютер только по множеству В не сможет оценить, какое из ограниче- и ий ЧЕЛОВЕК(х) или ВЛАДЕЛЕЦ (%) сильнее. Здесь нужна, например, такая оненка:
(Vx) [ВЛАДЕЛЕЦ (х) f ЧЕЛОВЕК (х)]
(Если владелец, то и человек).
Определив в общих чертах описание обобщения, сравнительно легко в соответствующем диапазоне выбрать постоянные, которые следует заменить на переменные, и описания, которые нужно исключить. Например, заменяя часть или все постоянные в наборе предикатов, таких, как Pj и Р2 в приведенном выше примере, на переменные, легко исключить предикаты, не отвечающие примерам. Сложнее, то, что помимо заранее заданных предикатов необходимо создавать новые, но соответствующих правил для этого, даже исходя нз общих соображений, не придумано. В первом случае подобные правила называют правилами альтернативного обобщения, во втором — правилами структурного обобщения. Обучающихся систем, пользующихся первыми правилами, много, а пользующихся вторыми ——мало.
Управление обучением. В процессе обучения по примерам можно применять различные стратегии структуризации информации и необходимо управлять этим процессом в ответ на входные данные. Существуют два массических метода: метод «снизу-вверх», при котором последовательно выбираются и структурируются отдельные сообщения, и метод 《сверху- вниз», при котором сначала выдвигается гипотеза, а затем она корректируется по мере поступления информации. На практике эти методы комбинируются, хотя управление обучением с максимальным эффектом не такая уж простая проблема.
ЭТАПЫ ОБУЧЕНИЯ ПО ПРИМЕРАМ
Параметрическое обучение. Наиболее простая форма обучения по примерам или наблюдениям состоит в определении общего вида правила, которое должно стать результатом вывода, и последующей корректировки входящих в это правило параметров в зависимости от даняы^. Прн этом используют психологические модели обучения, системы управления обучением и другие методы.
Примером обучающейся системы этой категории в области искусственного интеллекта является си- (■ гема Meta-Dendral. Эта система выводит новые правила путем коррекции правил продукций в процессе обучения или на основе исходиых масс-спектральных данных °, параметрическое обучение в ней представлено в несколько специфичном виде, но все же она относится к указанной выше категории, поскольку в системе задана основная структура знаний, которая корректируется последовательно по отдельным данным.
Обучение на основе выводов по аналогии. Приобретение новых понятий возможно путем преобразования существующих знаний, похожих на те, которые собираются получить. Это ва?кная функция, которую называют обучением на основе выводов по аналогии или просто обучением по аналогии. В нашей жизни много примеров, когда новые понятия или технические приемы приобретаются с помощью аналогии.
Выводы по аналогии ——один из важных объектов исследования искусственного интеллекта, нанбо/ее интересные результаты здесь получены П. Уинстоном. Он использует выводы по аналогии, основываясь на следующей гипотезе: 《Если две ситуации подобны но нескольким признакам, то они подобиы и еще по одному признаку》. Подобие двух ситуаций распо-
* Системы Dendral и Meta-Dendral пред11азначены для построения структуры сложных молекул на основе данных мзсс- спектрального анализа и правил классификации фрагментов органических молекул. — Прим, ред.
знается путем обнаружения наилучших совпадений по наиболее важным признакам.
'Недавно Ацукути и Арикава предложили формализацию выводов по аналогии % развивая теорию аналогии, получили алгоритм выводов, органично использующий дедуктивные выводы. Благодаря этому был сделан еще один шаг к практическому применению теории аналогии. Подробнее об этом будет сказано в гл. 8.
Рассмотрим две ситуации: Si и S2. Пусть в Si справедливо утверждение:《门一причина возникновения Q》,что запишем как 门(а,匕)-> 门(& d). Пусть также в S2 известно 门(а‘, //)・ С помощью традиционной дедукции только из этих условий никакого вывода получить нельзя, но при выводе по аналогии благодаря открытию[) подобия ri (а, Ь) и 「1(。',Ь‘) можно сделать вывод о том, что в S2 возникнет 厂2(。1 d,)・ Подобие 门(а, b) и 门(а‘,Ь) оценивается путем открытия некоторого третьего выражения (W, и). W—это некоторое выражение, позволяющее сравнивать обе ситуации, оно включает переменные. Через 〃 обозначена пара значений, которые можно подставить вместо переменных в W\ если в W подставить одно значение, то получится Si, если второе—то S2. В приведенном выше примере (1% 〃)= = ({с(Х, У)}, {/ — ",。‘〉,{У — {R 6'〉})・ Таким образом, получается своего рода правило обобщения. Если определить такое выражение (忆 и), то 门頂 b) н 门(&1 力‘)будут подобны и, как следствие зтого; ВЫВОДИТСЯ「2 С, d‘).
Обучение на основе выводов по индукции — эвристическое обучение. Среди всех форм обучения особо выделим обучение на основе выводов по индукции —— зто обучение с использованием выводов высокого уровня, как и при обучении по аналогии. В процессе зтого обучения путем обобщения совокупности имею- щнхся данных выводятся общие правила. Возможно
* Открытие как результат логических выводов следует от、 личать от обнаружения как результата поиска. Подробнее об этом см. в гл. 7. — Прим, перев.
обучение с преподавателем, когда входные данные задает человек, наблюдающий за состоянием обучающейся системы, и обучение без преподавателя, когда данные поступают в систему случайно. И б том и в другом случае выводы могут быть различными, они имеют и -различную степень сложности в зависимости от того, задаются ли только корректные данные или в том числе и некорректные данные и т. и. Так или иначе, обучение этой категории
включаетвключаетв ильные данныев ильные данныеоткрытие новых правил, построение теорий, создание структур и другие действия, причем модель теории или структуры, которые следует создать, заранее не задаются, поэтому их необходимо разработать так, чтобы можно было объяснить все пра- и контрпримеры. Исследование
включает
включает
в ильные данные
в ильные данные
структурированных выводов активно ведется многими специалистами, но такие выводы еще не реализо-
ваны, это проблема будущего.
Индуктивные выводы возможны в случае, когда представление результата вывода частично отц)еде- ляется из представления входной информации, б по следнее время обращают на себя внимание программы генерации программ по образцу с использованием индуктивных выводов. Ожидается, что исследования в этом направлении будут развиваться.
ПРИОБРЕТЕНИЕ ЗНАНИЙ НА МЕТАУРОВНЕ
Выше было рассмотрено обучение на объектном уровне, а еще более сложная проблема — приобретение знаний на метауровна, т. е. знаний, основой которых является информация по управлению решением задач с использованием знании на объектной уровне. Для знаний на метауровне пока не установлены ни формы представления и использования# ни связь со знаниями на объектном уровне, ни другая техника их систематизации. Поскольку не определена форма их представления с точки зрения использования, то трудно говорить о приобретении знаний! на метауровне. Тем не менее с этой прос.пе* м°й связаны многие надежды в инженерии знаннА.
ГЛАВА 2ВОЗМОЖНОСТИ ТЕХНОЛОГИЧЕСКИХподходов в психологии
Ю. Сажи, X. Судзуки (Токийский университет)
В данной главе рассмотрены формальные механистические подходы к изучению процессов обучения в бихевиористической " психологии и науке о мышлении, которые помогут понять, какими особенностями обладает такая превосходная самообучающаяся система, как человек. Используя имеющиеся знания, человек перерабатывает огромный объем информации, поступающей из окружающей среды, и тем самым обучается. Другими словами, обучение человека зависит от знаний, которые не отражают формальную структурную сторону среды обучения, а являются откликом на смысловую функциональную сторону. Следовательно, будучи зависимым от зна* ний, процесс обучения проходит как осмысление человеком среды, а такое обучение не базируется на каком-либо формальном процедурном механизме.
Прежде всего ознакомимся с тем, как термин «обучение» в психологии.Прежде всего ознакомимся с тем, как термин «обучение» в психологии.21. ВВЕДЕНИЕ
Прежде всего ознакомимся с тем, как термин «обучение» в психологии.
Прежде всего ознакомимся с тем, как термин «обучение» в психологии.
трактуется Учитывая, что читатели имеют естественно-техническое образование, по возможности сконцентрируем их внимание на различиях понятия обучения, рассматриваемого с естественно-технических и психологических концепций, и приблизимся к точке зрения на обучение, принятой в современной науке о мышлении. Собственно говоря, термин «естественно-техническая концепция» предложен авторами; практически все нс* следователи естественно-технических систем не подозревают, что имеют дело с такой концепцией. Один мз авторов (Саэки), заинтересовавшись проблемами
D От английского слова behavior (поведение). -/7р«л, ТО
обучения, стал студентом факультета естествознания и техники. Позже, изучая психологию в аспирантуре одного из университетов США, он существенно пересмотрел свои взгляды на обучение. Это было время превращения психологии из бихевиористической в когпитивмстсхую, появились технологические подходы к обучению. Другими словами, возникли разногласия ме?кду ^методологией, которая, исходя из естественно технической концепции, привязывает твкое психологическое явление, как обучение, к парадигме техники, и психологическим мировоззрением, считающим пер・ еоооювой обучения разум человека, который не пассивно реагирует на виешнне стимулы, а постоянно ожидает внешних событий, осмысливает их и управляет внешним миром. Вот почему естественно-техническая коннепиня оказалась тесно связанной с ?:огни- тивистской “арз&н『汨。角,которая обсуждает проблемы мышления человека и познания им мира. Именно это дало повод для зарождения и развития психологии мышления и ее связи с исследованиями искусственного интеллекта и способствовало уточнению Дальнейших исследований.
В этой главе мы акцентируем внимание на метаморфозах естественно-технической концепции обучения, на том, что такое когнитивистская концепция, а также на том, что нас ожидает в будущем.
ОТ НАИВНОГО ЭМПИРИЗМАК ПСИХОЛОГИИ ОБУЧЕНИЯ
Но хватит о специалистах. Что представляет простой человек, услышав слово «обучение»? Нет jh в его точке зрения на обучение крайне наивного эмпиризма? Скорее всего, он считает, что обучение — это когда по мере накопления опыта поведение становится более разумным. Причем под опытом он понимает повторение одних и тех же действий в ответ на одни и те стимулы либо действия, как пишут в статьях, методом проб и ошибок, т. е. первоначально бесснстем ные действия, действия наугад. А слова «становится более разумным» означают, что
если после нескольких попыток находится правильное решение, то соответствующие этому решению действия будут повторяться все чаще, а неудачные действия ——все реже и реже. Если же сложные действия повторять неоднократно, тренироваться, то они будут легче получаться, а если вслед за действием последует наказание, то пропорционально этому наказанию обучающийся будет избегать таких действии, Если что-то привлечет внимание и оставит неизгладимое впечатление, то это хорошо запомнится, а все, что изучалось в состоянии рассеянности, будет забыто.
Подобный взгляд на обучение до какой-то степени оправдывается. Как правило, все, что мы называем словами «учиться», «тренироваться», приблизительно соответствует такой «теории».
В начале 20-х годов нашего столетия благодаря работам в сфере психологии обучения Э. Л. Торндайка, Э. Р. Гасри, Э. С. Толмана, К. Л. Халла, Б. Ф. Скиннера и других ученых, которые принимали за основу некоторые из подобных взглядов, из результатов строгих экспериментов были найдены «законы» обучения всех животных в разнообразных условиях.
Л. Торндайк (1874—1948). После многочисленных
экспериментов по обучению животных Торндайк пришел к убеждению, что этот процесс можно объяснить через бессознательную непосредственную ассоциацию действия и места. Сравнивая кривые обучаемости животных и человека, он пришел - к заключению, что обучение человека строится на базе чисто
механических, а не сознательных принципов. Поэтому он пытался описать обучение человека с помощью простых правил, справедливых одновременно и для животных, и ввел три закона: готовности, тренировки и эффекта.
Закон готовности — первое условие обучения: получение результата при некотором действии приводит животное в состояние удовлетворенности, а неполучение—в состояние неудовлетворенности. (Кстати, сегодня педагоги иногда называют 《готовностью»
врожденные способности к обучению, но Торндайк имел в виду совсем другое.)
Загон тренировки: при повторяющихся действиях усиливается связь места и действия, а прекращение тренировки приводит к ослаблению связи (в последние годы жизни Торндайк считал, что обучение не достигается лишь простой тренировкой, необходим эффект удовлетворенности результатом).
Закон эффекта: если результат, который достигнут некоторым действием, приводит к состоянию удовлетворенности, то связь между действием и местом усиливается, а если к состоянию неудовлетворенности, то ослабевает (в последние годы он рассматривал и обратный эффект неудовлетворенности).
Зачастую Торндайк наблюдал и публиковал то, что не всегда следовало из его собственной теории обучения. Например, весьма оригинальные эксперименты убеждают, что поведение животного в случаях, когда оно зевает или ухаживает за собой, находится вне рамок закона эффекта. Кроме того, в эти годы возрос интерес к обучению в широком смысле слова, акцентировалось внимание на таких вопросах, как важность стимулов, заинтересованность в решении задачи, развитие способностей, восприятие смысла обучения, отношение к исследованию задачи, концентрация внимания и т. п.
Э. Р. Гасри (1886—1959). Принцип обучения Гасри: «В некоторый момент комбинация стимулов и движение сливаются воедино》; при этом не нужны ни тренировки, ни повод, ни удовлетворенность, ни наказание, просто неожиданно совпадают движение и сущность стимулов, изредка сопровождающих это движе* нне. То, что здесь названо сходностью стимулов, не ограничивается их физическими свойствами, а предполагает нечто, подготовленное экспериментаторами. Другими словами, есть некая модель стимулов, которые воспринимают животные при опытах, и это всего лишь часть стимулов, существующих во внешнем мире. Следовательно, в каждый момент воспрннн* мается модель стимулов, чуть отличная от той, что была за секунду до этого, эта модель подобна пр еды*
душей, но и отлична от нее и совпадает с движением. Таким образом, на практике для обучения какому- либо поведению необходимо путем различных тренировок добиться, чтобы многочисленные побуждения (модель стимулов) совпадали с желаемым движением.
Например, нам надо научиться правильно печатать на пишущей машинке. Для того чтобы ранее сформированные ошибочные движения были замерены на комбинацию правильных движений в сочетании с правильными стимулами, необходимы многочисленные тренировки. Еще прнмер: когда животное в результате правильного действргя получает корм, вероятность нужного поведения возрастает, что объясняется совсем не действием 《закона эффекта», а просто тем, что поведение животного, которое видит корм и набрасывается на него, имеет совершенно иную природу, нежели поведение, которому его до втого учили. Поэтому, для того чтобы поведение было обусловлено моделью стимулов, не имеющей ничего общего со стимулом «корм», следует поддерживать сильную связь между этой моделью и обусловлен- нь】мн ею двяжениями, с одной стороны, и стремле- ннем животного к корму — с другой (если нет корма, Т。 животное теряется, и результативность обучения постепенно сводится на нет).
就工丁%£886—1959). Орн「нназть就工丁%£886—1959). Орн「нназтьтеориитеориизаключается взаключается вТеормя обучения Гасри слишком проста, и возни- кает вопрос, до какой степени обучение можно объяснять такими простыми принципами? Кстати, ка- К*мн бы явлениями не пытались опровергнуть Гасри, рн все лоеко объяснял по-своему. Даже действие «программы поведения», «внимания» н других факт。* ров, объяснение которых все другие психологи счн« Тала очевидным, он трактовал по-своему, исходя из Принципа мгновенного слияния стимулов и реакции ?то можно назвать последовательным механнстние: £КПМ подходом.
就工丁%£886—1959). Орн「нназть
就工丁%£886—1959). Орн「нназть
теории
теории
заключается в
заключается в
понятия «модель стимулов; по^ХялГ ем^^ва^ь «объяснения» всем явлениям, исходя из п^ледХ
тельных механистических принципов, но эта теория ,не годится для: подтверждения экспериментальных гипотез. Короче говоря, причина в том, что она «объ- лсняет》 любые результаты. В отличие от нее методика экспериментов Толмана строго следует «бихевиористическими принципам (это научная методика, которая позволяет выдвигать экспериментальные гипотезы о зависимости между стимулом и реакцией, поддающейся измерению и подтверждению путем строгого управления экспериментом), и такая 《теория》 обучения подтверждает рациональность и целенаправленность поведения животных, а именно: обучение животных не есть механическое слияние модели стимулов и действий, а скорее влияние среды, органичная связь цели и средства.
Рассмотрим, например, следующий эксперимент. Заставим крысу искать корм в лабиринте, показанном на рис. 2.1. Если в целевой ящик положить корм, то крыса сразу побежит по пути 1. Если этот путь перекрыть блоком А, то она побежит по пути 2, а по старому пути уже ни когда не побежит, т. е, очень быстро будет выбран более короткий путь. Это пока*
Место старта
Рис. 2.1. Эксперимент по латентному обучению и приобретению мысленных схем у крыс (Толман и Гонзнк),
2 С, Осуга, Ю. Сазкк
вывает, что при свободном поиске корма возможно «скрытое》обучение, несмотря на то что обучение не сопровождается каким-либо эффектом, скажем, получением корма. В эксперименте, где вместо блока А установлен блок Б, крыса, пройдя путь 1, натыкается на блок Б и, не обращая внимания на путь 2, сразу выбирает путь 3. Это говорит о том, что она «знает», что путь 2 не годится, если путь 1 загорожен блоком Б. Если следовать Толману, то крыса приобретает «мысленную схему» среды и каждый раз совершает целенаправленные действия (Толман вместо «действие» говорит «поступок»).
Теорию обучения Толмана можно назвать теорией когнитивного обучения. Она оказала заметное влияние на раздел психологии, изучающий мышление, начиная с 50-х гг. (например, X. А. Саймон, предлагая модель процесса принятия решения, указывал, что идеи своих исследований он почерпнул из теории обучения Толмана).
К. Л. Халл (1884—1952). Халл считал, что психология, так же как и физика или геометрия, должна быть построена на основе нескольких аксиом и системы гипотез, которые могут быть дедуктивно выведены из аксиом. В 1943 г. он опубликовал монографию «Принципы поведения». Он также синта』,что «телеологические» ° гипотезы Толмана не научны, что все следует объяснять через ассоциацию стимулов и реакции. В результате он дал определения и строгие критерии измерения таких понятий, как «побуждение» ——биологически активное состояние животного, «привычкам — автоматическое возникновение реакции и другие, установил принципы «усиления» — условий формирования привычки (при которых ре- 期льтатн поведения связываются с ослаблением побуждений), ввел и строго обосновал гипотезу связи внутренних стимулов и реакции, которая играет роль посредника между непосредственно предшествующим
1)Телеология ——идеалистическое учение, приписывающее процессам целесообразность. Этому учению противопоставляют де- терминизм. Прим, перев.
внешним стимулом и поведением, и ряд других гипо^ тез. Воспользовавшись такими понятиями, Халл под- верг резкой критике объяснения Толмана и его эксперименты.
В течение нескольких десятков лет после Халла психология в основном развивалась по намеченному нм пути; возродилась традиция считать «научными» только гипотезы, представленные в виде алгебраических формул с переменными, которые можно точно измерить, получила заметное развитие физическая психология, о которой еще пойдет речь далее. Обращает на себя внимание то, что наука, которую Халл считал «идеальной», фактически обрела систему аксиом по типу ньютоновой механики. Следовательно, именно количественные алгебраические зависимости, которые Халл называл 《не очень строгими описаниями», впоследствии благодаря ему были безусловно подтверждены математической дедукцией исходя из «механистических» определений и принципов,
Б. Ф. Скиннер (1904—). Позиции Скиннера очень близки к позициям Торндайка и носят последовательный описательный характер. Его точка зрения на психологию как науку резко отличалась от точки зрения Халла, который считал, что психология должна быть наукой, описывающей все через количественные зависимости на основе точных измерений. По Халлу, психология должна образоваться из систематизированной научной теории, а эта теория в свою очередь должна пройти по пути экспериментальной проверки гипотез, Скиннер же отрицал и «теорию», и «гипотезы». Он считал, что для науки о поведении животных и человека достаточно, если будут понятны пра- вила метаморфоз их поведения, а эти правила не теория, а скорее описание. Иначе говоря, проблема только в связи входов и выходов, а для уточнения такой связи предпринимать ничего не нужно (например, задаваться вопросом о внутреннем механизме: «Почему возникла такая связь?»). Торндайк также придерживался описательной точки зрення и, невозмутимо манипулируя понятием «удовлетворение», постулировал внутреннее состояние животного — 0H
еще не был столь же последователен, как бихевиористы.
Скиннер изобрел так называемый «ящик Скиннера»——устройство для экспериментов и наблюдения:- за животными с целью выяснения правил метаморфоз их поведения. Это ящик со стеклянной дверцей, кото-, рый устроен так, что, когда крыса или голубь нажмут, рычаг или клюнут в маленький кружок внутри ящика, им автоматически выдается корм. Правила метаморфоз поведения, которые выявляются с помощью такого устройства, в основном можно описать понятием «усиление».
Усиление — это увеличение вероятности появления, нужного поведения при условии, что результаты поведения сопровождаются какими-то действиями. Большая часть исследований Скиннера была посвящена проблеме влияния на поведение различий в способах усиления (сопровождаемости усиления), проблеме поведения в условиях, когда сопровождение усиления отсутствует, и другим проблемам. Скиннер нашел применение подобным правилам метаморфоз поведения, создал обучающуюся машину и предложил методику «модификации поведения» для лечения психических расстройств, которую использовал в своей клинике. Эта методика называется техникой обучения, или техникой поведения, ;
строена теориястроена теорияНаука и техника обучения. Торндайк, Гасри, Толман, Халл и Скиннер, столь активно работавшие в 1930—1940-х гг., стремились к тому, чтобы была по-
строена теория
строена теория
шла в один ряд с другими науками, такими, как 巾н” зика и химия, а ~ 一шла в один ряд с другими науками, такими, как 巾н” зика и химия, а ~ 一психологии обучения, чтобы она во-
шла в один ряд с другими науками, такими, как 巾н” зика и химия, а ~ 一
шла в один ряд с другими науками, такими, как 巾н” зика и химия, а ~ 一
ее приложения можно было назвать техникой психологии, так же как вычислительная, техника или химическая технология. Другими словами, они хотели создать некоторую технику, подкреплен^, ную научной теорией. Деятельность этих людей про . исходила в начале XX века. Разве она не повлияла. на веру людей в науку и технику, когда начались бурные перемены в нашем мире в связи с современной технической революцией?
РАСЦВЕТ И ПАДЕНИЕМАТЕМАТИЧЕСКОЙ ПСИХОЛОГИИ
Два направления в психологии обучения 50— 60-х гг.——курс на измерения, поддерживаемый Халлом, и техника поведения Скиннера — развивались независимо, каждое направление привело к открытию и применению различных теорий, правил поведения, В частности, одна из таких новых теорий ——математическая психология.
Попытки использовать математику в психологических исследованиях предпринимались очень давно; например, еще в середине XIX века Дж. Т. Фегииар один из первых начал исследования в области психофизики. Позже в начале нашего столетия Л. Л. Са- стон, К. Е. Спирмен, С. С. Стивенс и другие ученые разработали различные математические методы формализации психологических критериев. Однако в этих исследованиях математика использовалась исключительно как средство анализа данных, а не для моделирования психологических процессов, таких, как рассуждение или принятие решений животными и человеком.
Вообще говоря, представить поведение человека в виде математической модели пытались достаточно давно в области обществоведения и, в частности, в экономике. Мощный импульс этому направлению дала монография Дж. фон Неймана и О. Моргенштерна 《Теория игр и экономическое поведение» /1944). Однако в области психологии теорию игр стали применять лишь во второй половине 50-х гг. До этого в начале 50-х гг. были начаты исследования, в которых для объяснения процесса обучения животных применялась модель переходов из состояния в состояние, основанная на теории вероятности и, в частности, марковских процессах. Видимо, в этот период и появилась так называемая математическая психология.
Математическая психология, унаследовав мощные средства описания из теории вероятности и статистики, прежде всего послужила бурному развитию психологии обучения. При этом были сохранены ос-
новнме принципы обучения бихевиоризма Толмана, Гасрн, Халла и Скиннера, предложенные в 40-х гт; а каких-либо новых принципов не было предложено. Тем не менее достоверность описаний в плане нх детализации резко возросла, появилась возможность полностью предсказать и экспериментально проверить вплоть Д° подсчета средних значений и дисперсий, например влияния, которые оказывают на кривую обучаемости различия в условиях экспериментов. 豎 как новая парадигма стали доминировать новые формы экспериментов по так называемому вероятностному обучению.
Прн подобных экспериментах используют несколько (обычно две) ламп, и обучающемуся дается несколько попыток угадать, какая из ламп загорится. Каждая лампа загорается случайно с постоянной вероятностью. Специалисты по математической психо- •логн% построив сложную вероятностную модель процесса обучения, предположили, что вероятность ожидаемой реакции обучающегося (относительная ча- стота угадываний) на каждую лампу должна быть равна вероятности загорания этой лампы в действительности, если усреднить данные ожидаемой реак- обучающихся на вопрос о том, какая лампа загорится, по количеству обучающихся. По существу это бУМт вероятность реакции обучающегося которая точно отражает вероятность появления внешнего сооытия.
Почему же подобные эксперименты, как сказано пр^ин.СТаЛИ ДОМИ™Р°ва-?忐 это есть несколько
Вбпервых, то, что вероятность реакции совпадает с вероятностью появления событий можно преХГ Х"™:и^ ВеР°™с-ого процесса ZS : слияния стимула и реакции, а совсем не пр
Возможности технологических подходов в психологии 39 лать вероятность угадывания максимальной во всех попытках, можно решить только путем вычислений, хотя существуют различные мнения по поводу того, есть ли что-либо《рациональное》в толковании ответов на вопрос:《Как вы думаете, какая лампа загорится?». Однако с бихевиористической точки зрения нет необходимости говорить, что действия человека —— это результат мышления или сознания, бессмысленно спорить о том, должна ли реакция быть другой, если действие ——результат мышления, а нужно с готовностью признать это раз и навсегда.
В-третьих, подобные эксперименты можно прово- дить с кем угодно и где угодно, причем если вычислить параметры обучаемости на основе полученных данных, то, правильно нарисовав кривую обучаемости, можно точно предсказать и экспериментально проверить различные особенности вероятностных явлений, например вероятность того, что лампа А загорится три раза подряд. Таким образом, бнхевиорн- стический научный взгляд на обучение стал доминирующей парадигмой.
В области психологии есть еще одно направление, которое образовалось чуть позже рассмотренной выше математической теории обучения ——во второй половине 50-х гг. Это психология принятия решений, ведущая свое начало с теории игр фон Неймана и Моргенштерна, а именно: теорию игр и теорию вероятности (в частности, теорему Байеса) стали использовать для построения эталонной модели рациональных рассуждений человека и сравнивать ее с реальным процессом рассуждений. Следовательно, с данной точки зрения человек ——это не машина, в которой происходит слияние стимулов и реакций, а существо, способное к выбору оптимального поведения и имеющее свои цели и намерения. Подобные исследования в настоящее время называют байесовской психологией, ведутся исследования многоальтернативной оценки, группового принятия решения, вероятностных рассуждений, поведения в многовариантных играх с выбором и другие исследования, а в целях развития прикладной теории ——ф^^ндаментальные исследования теории измерений. Внедрение математики в психоло-
гию с целью теоретического моделирования породило две противоположные точки зрения. Первая предполагает описание механического слияния стимула, и реакции с помощью марковских процессов так, как в математической теории обучения, вторая ведет свое начало от теории игр и предполагает моделирование целенаправленных разумных сторон человека.
Честно говоря, каждая из этих двух точек зрения зашла в тупик. Тем не менее каждая из ннх является результатом добросовестного накопления опыта в строгих психологических экспериментах, и навряд 』н эти точки зрения изменятся. Но в данной книге придется отложить знакомство с данными исследованиями и ограничиться формулировкой ряда проблем, 一 которые дали повод говорить о возрождении《эпохи науки о мышлении».
В математической
проблемы.
1. Часто
психологии это следующие
либо
параметры, поясняющие данные какого-
эксперимента, не могут объяснить данные дру-
гих экспериментов, в которых по теоретическим расчетам действуют аналогичные процессы.
Начали разрабатываться модели переходов из состояния в состояние, учитывающие внимание, память, тактику и другие способности человека, созданы модели, выходящие за рамки чистой теории слияния стимула и реакции.
С одной стороны,' исходя из психологических гипотез, очень трудно построить какие-либо общие закономерности для внимания, памяти, тактики и т. д., поскольку условия экспериментов определяются ad hoc ) С другой стороны, в байесовской ьпн ушой психологии принятия решений появляются следующие проблемы.
1) Человек не всегда придерживается рациональных взглядов, он может достигнуть удовлетворяю- уровня при минимальной умственной на-
щего его грузке.
2) Так
называемой
не существует; оценки,
тактики общих рассужденийкак правило, связываются со
】)На данный случай (лат.). Прим, перев.
Возможности технологических подходов в психологии 4Т смыслом объектов и условий; поэтому крайне сложно представить эту тактику в виде простых математических формул.
С подобными проблемами психология вступила в 60-е гг. навстречу эпохе науки о мышлении.
ВЗГЛЯДЫ НА ОБУЧЕНИЕВ НАУКЕ О МЫШЛЕНИИ
Уже говорилось о том, с чего начались исследования науки о мышлении, поэтому коснемся ниже понятия «обучение».
Характерно, что в период с 1956 по 1972 г., когда становилась наука о мышлении, ученые не использовали слова «обучение». Ойо было чуть лн не запретным словом,, во всяком случае, если кто-нибудь по рассеянности спросит:《А как быть с проблемой обучения?», то разговоры немедленно прекращались, и вопрошающий чувствовал себя неловко. Дело в том, что слово «обучение» слишком долго использовали бихевиористы, как бы приобретя патент на его применение, поэтому в разговоре об обучении возникали ассоциации со слиянием стимула и реакции, а спе* циалисты в области мышления питали к этому чуть ли не отвращение.
Наука о мышлении до 1972 г. — это главным образом исследования по решению задач и механизму памяти, а также исследования по псмлологической интерпретации результатов моделирования с по Мощью компьютеров процессов доказательства теорем й решения головоломок, исследования кратковременной памяти в экспериментах по запоминанию списка слов, экспериментальные исследования психологической адекватности лингвистики Хомского и т. п. После выхода книги «Системы, понимающие естественный язык» Т, Винограда " в 1972 г. начали обсуждать связь исследований долговременной памяти и представления знаний с исследованиями решения за- дач и мышления. Вступнв с такими идеями в 80-е гг.,
1)Русский перевод вышел в издательстве «Мир» в 1976 г.— Прим, перев.
ученые в области мышления вновь начали поднимать проблему обучения.
В книге《Уменне мыслить и как его приобрести» под редакцией Андерсона (Cognitive Skills and Their Acquisition. Hillsdale, N. J., 1981) впервые в самом общем виде указано, что в науке о мышлении центральной является проблема обучения и приобретения знаний. В современной науке о мышлении энергично ведутся теоретические и практические исследования обучения и приобретения знаннй )
2・5・ ТЕОРИЯ ОБУЧЕНИЯ ACT *
Андерсон в книге «Архитектура познания» (Кэм- бридж, 1983)2)существенно улучшил известную теорию ACT и предложил теорию ACT *. Эта теория основана на своего рода системе продукций, состоящей из рабочей памяти, памяти продукций и декларатив^ ной памяти, а также на обобщенной модели мышления человека, которая объясняет память и знания человека, принятие решений, обучение и другие аспекты мышления. Общее представление о процедурном обучении в теории ACT* дает рис. 22 Как пока' зано на этом рисунке» в теории ACT * обучение делится на два этапа в зависимости от состояния зна-
Декларативный Мап {declarative Маде)Декларативный Мап {declarative Маде)Процедурный этап (procedural sHgajПроцедурный этап (procedural sHgaj
Декларативный Мап {declarative Маде)
Декларативный Мап {declarative Маде)
Процедурный этап (procedural sHgaj
Процедурный этап (procedural sHgaj
Компиляций знаний.(knowledge oomplUUo&jПроцёдурадития (procedurilkatiOn)Композиция (composition)Компиляций знаний.(knowledge oomplUUo&jПроцёдурадития (procedurilkatiOn)Композиция (composition)Координация знаний, (knowledge tuning)Обобщение (generalizatidh)Разделение (discrimination}Усиление (strengthening)Координация знаний, (knowledge tuning)Обобщение (generalizatidh)Разделение (discrimination}Усиление (strengthening)
Компиляций знаний.
(knowledge oomplUUo&j
Процёдурадития (procedurilkatiOn)
Композиция (composition)
Компиляций знаний.
(knowledge oomplUUo&j
Процёдурадития (procedurilkatiOn)
Композиция (composition)
Координация знаний, (knowledge tuning)
Обобщение (generalizatidh)
Разделение (discrimination}
Усиление (strengthening)
Координация знаний, (knowledge tuning)
Обобщение (generalizatidh)
Разделение (discrimination}
Усиление (strengthening)
Рис 2 2. Этапы обучения и механизм преобразооапнИ в теорннACT*.
Ь В данной книге среди различных теорий обучения не упомянута теория обучения на основе параллельной распределенной обработки, которая бурно развивается в последние годы.
2)Anderson, J. R」The Architecture of Cognition, Cambridge, M. A.)Harvard, 1983.
ний. Переход с одного этапа на другой осуществляется с помощью механизма компиляции знаний, дальнейший процесс обучения объясняется механизмом координации знаний. Ниже теория ACT * рассмотрена более детально.
ДЕКЛАРАТИВНЫЙ ЭТАП И КОМПИЛЯЦИЯ ЗНАНИЙ
Рассмотрим сначала декларативный этап. Например, представим себе ситуацию, когда мы только что изучили три теоремы сложения тригонометрических функций (типа sin (а 十 В) = sin а-cos р + + cos а-sin р) в курсе математики. Допустим, нужно решить задачу определения значения sin 105°. Причем нас не учили, когда и какую формулу использовать (как правило, это действительно не проходят в школе), так что нам не понятно, что здесь делать. Поэтому попытаемся использовать одну из выученных формул. Например, проверим, подойдет ли формула cos(a + Р). Повторяя эти проверки, к счастью, обнаруживаем, что можно использовать формулу sin (а + р). На этот раз обратим внимание на то, что 105 нужно представить как а + 3,и начнем подбирать значения аир. Естественно, эти значения можно определять произвольно. Скажем, пусть это 100 и 5; тогда получаем sin 100-cos 5 十 cos 100-sin 5, но значение такого выражения найти сложно, поэтому подумаем над тем, какие же числа взять в качестве а и р, чтобы получить удобное выражение. Если обратиться к долговременной памяти, то нетрудно вспомнить, что мы уже получали значения sin и cos для 30, 45/60 и 90 градусов. Поэтому разобьем 105 на 60 и 45 и положим а = 60, р = 45. Подставим а н 0 в левую часть соответствующей формулы и получим искомое значение через значения sin 60, cos 45, sin 45 и cos 60.
На первом этапе обучения даже при решении задачи с использованием единственной формулы необходима достаточно сложная обработка данных, и ученик, выполняя эту работу, испытывает большие затруднения и тратит много времени. Андерсон называет этот этап декларативным, он имеет следующие
особенности. Прежде всего на декларативном этапе учебная процедура (формула) представляете^ в кратковременной памяти в виде «то-то есть то-то», т. е. в декларативном фактическом виде. В приведенном выше примере формула будет представлена в виде《sin(a+p) есть sin a cos р + cos а sin р (где а и 8 — переменные)», без информации о том, при каких условиях ее использовать. Таким образом, знания на этом этапе имеют форму высказываний, их нельзя непосредственно использовать при решении задачи. В чем же особенность обработки с помощью декларативных знаний? Андерсон утверждает, что обработка ведется сверху-вниз путем интерпретации знаний. Как видно из приведенного примера, начинающий проделал рассуждения в обратном направлении от цели задачи, скажем, таким образом: «Чтобы получить sin 105, необходима формула sin(a + §), а при использовании этой форглулы необходимо, чтобы а + р было равно 105, и т. д.» Когда поставлена задача, то содержащаяся в ней информация поочередно заменяется на знания из долговременной памяти. Это легко понять, если читатель знаком с обработкой на языке Бейсик или других языках, которые основаны на принципах интерпретации. Друпшн словами, декларативные знания сами по себе использовать нельзя, для их выбора необходима интерпретация и сопоставление информации в запомненных формулах и информации в тексте задачи. Что же такое интерпретация в случае решения задачи человеком? В теории ACT* интерпретатором является множество продукций, которые, как правило, можно использовать при решении задачи. В приведенном примере управление решением задачи и рассуждения типа «Видимо, можно применить какую-либо формулу, попробую их одна за другой», «Разобью это число на два числа, для которых я знаю значения sin и cos》一 все это основано на универсальных продукциях, пригодных для решения задач. Данная обработка играет важную роль в рабочей памяти. Именно в рабочей памяти во время обработки должны находиться цель и подходящие формулы. По наблюдению Андерсона; R самом начале обучения человек в процессе решения
задачи ^аким*то образом облекает в слова заученные формулы. Благодаря этому данные формулы остаются в рабочёй памяти. Замечено также, что на такую обработку требуется время. Дело в том, что заданную информацию необходимо последовательно преобразовать с помощью универсальных продукций точно так же, как при обработке на языках интерпретаторов.
Однако с течением времени решение задач, подобных указанной выше, будет получаться мгновенно, а именно: лишь взглянув на условие, можно записать и решить sin 105 = sin60 • cos45 + cos60 • sin45 == V^/ /2 • V2/2+ 1/2-д/2/2 = д/6/4 + л/2/4=(д/6+72)/4. На этом этапе время, требуемое для решения, значительно сокращается, и формулы уже не будут представляться чем-то абстрактным. Андерсон назвал этот этап процедурным.
На каких же знаниях базируются эти действия? С помощью какого механизма преобразуются знания? В теории ACT* подобные преобразования инициируются благодаря компиляции знаний. Возможны два механизма компиляции. Первый называется проце- дурализацией. Он состоит в замене перемениых в первоначально используемых универсальных продукциях на некоторые специальные значения, подходящие для решения задачи. Для того чтобы эти продукции были общими или универсальными, многое в них представлено в виде переменных. Следовательно, для определения из условия задачи конкретных значений этих переменных необходима обработка, называемая интерпретацией, при выполнении которой происходит обращение к знаниям в долговременной памяти. Неоднократное обращение к такой памяти рано или поздно приведет к тому, что все переменные будут заменены на значения, подходящие для данной проблемной области.
Второй механизм ——композиция. Это слияние независимых продукций и преобразование их в одну обобщенную продукцию. Следовательно, то, что ранее выполнялось за несколько часов, теперь будет выполняться за один шаг.
Допустим, есть три продукции:
Р1: если нужно получить значение некоторого три-« гонометрического выражения, то найдите под- ходящую формулу;
Р2: если нужно получить значение некоторого три- гонометрического выражения и найдена подходящая формула, то подставьте число из задачи вместо переменной в формуле;
РЗ: если переменная в формуле представлена как сумма двух переменных (а+0), то разбейте число в задаче на подходящие значения и определите две переменные.
Сначала благодаря процедурализации продукцию Р1 преобразуем к виду
Р1*: если нужно получить значение sin, то используйте формулу sin (а + р).
Аналогично преобразуем продукцию РЗ:
РЗ*: если переменная в формуле представлена как сумма двух переменных (a+卩),то разбейте число в задаче на сумму каких-либо из чисел 30, 45, 60, 90.
Теперь благодаря механизму композиции продукций Р1*, РЗ*, Р2 окончательно получим
Р*: если нужно получить значение sin, то используйте формулу sin(a+ Р), разбейте число в задаче на сумму из каких-либо чисел 30, 45, 60, 90 и подставьте их в формулу.
Как видно из этого примера; композиционная продукция имеет одно условие, которое в исходных продукциях повторялось. Перед композицией в условие Р2 вставлен результат выполнения Р1, а после композиции часть этого условия исключена. Таким обра- зом, обработка, состоящая из трех шагов, стала выполняться за один шаг.
Благодаря действию этого механизма значительно повышается скорость обработки, уменьшается нагрузка на долговременную память, обработка выпол-
пяется более 《гладко》. Кроме того, как показали многочисленные исследования, которые сравнивали новичков со специалистами, последние логические выводы делают «снизу-вверх» по типу образного мышления, работая непосредственно на основе исходных данных.
ПРОЦЕДУРНЫЙ ЭТАПИ КООРДИНАЦИЯ ЗНАНИЙ
Благодаря компиляции знаний обучение переходит на следующую ступень, становится более адаптивным. По Андерсону, это обеспечивается координацией знаний. Она осуществляется с помощью трех механизмов.
Обратимся вновь к уже знакомому примеру. Если задан угол 105°, то мы его делим на углы 60 и 45°, а если угол кратен степени 2, то при вычислении поль- зуемся формулой 2 sin a cos а. Другими словами» иногда обычные продукции преобразуются в более специализированные, отвечающие условию задачи. Это называется специализацией. В теории ACT* специализация возникает в случае неудачной попытки применения известных продукций, при этом сравниваются условия успешного применения и условия, при которых применение было неудачным, выявляются их различия и создается новая продукция на основе полученной информации.
Однако успехи в специализации возможны лишь при создании продукций, соответствующих \tCv7obhzo данной задачи, а к этому вся система мышления приспосабливается с трудом. Ведь число продукций может быть огромно. Например, теоремы о сложении можно использовать не только для получения sinx, cos х и других значений, но и при решении тригонометрических уравнений, доказательстве неравенств, равенств и т. д. Специалист в процессе обучения должен не только вырабатывать большое число специализированных продукции, но и, как правило, генерировать такие продукции, которые можно использовать для решения задач в различных областях. Подобное расширение области применения продукций и обеспечение их применения в более широком контек- сте называется обобщением. Механизм обобщения в
теории ACT* включает две составляющие: исключе* ние несовпадающих- высказываний в условиях- продукций в случае, когда эти продукции имеют одно и то же действие, а также замена постоянных в уело* виях на переменные. Для координации знаний в теории ACT* предусмотрен еще один механизм, назьь ваемый стабилизацией. Он заключается в усилении продукций для того, чтобы при сопоставлении пре- имущественно использовались часто используемые продукции.
С помощью четырех указанных выше механизмов Андерсон смог достаточно строго объяснить преобра1- зование знаний человека, возникающее в процессе обучения, и изменения в его поведении на основе этих знаний. Например, в случае многократной проверки памяти по Стенбергу (испытуемому показывают список букв, затем одну букву, затем он вспо^ минает, была ли эта буква в списке) отсутствие пропорциональной зависимости между временем реак-1 ции и числом букв можно объяснить с помощью механизма процедурализации в теории ACT*. А обиа^ руженная Лачинсом функциональная приверженность (явление, состоящее в том, что после неоднократного, решения задач одним и тем же методом его же ста、 раются применить и для других задач, которые можно решить более простым способом) может быть объяс^ йена с помощью механизмов композиции и стабили^ зации. Теория Андерсона подтверждена многочислен^ ными исследованиями и экспериментами.
J.5J. ЗНАЧЕНИЕ И ПРОБЛЕМЫ ТЕОРИИ ACT *
Создание теории ACT* подвело черту под бихевиори^ стической теорией обучения. В основе подходов Халла и других идеологов научного мира в эпоху бихе^ виоризма лежит описание изменений поступков в CQr ответствии с математически формализованной тео- рией, а внутреннее состояние используется всего лишь в виде параметров (сила привычки, побуждение и т. п.) в формулах, допускаемых теорией. Однако мы приобретаем знания именно благодаря обучению» дц н к изменению поведения нас также ведут знания.
В теории AGT*' различные изменения поведения, возникающие в процессе обучения, описываются как качественные изменения состояния наших знаний. Поэтому можно точно описать, какие ограничения налагают на систему обработки знаний человеком особенности знаний на декларативном и процедурном этапах и как возникают изменения поведения.
Однако очевидно, что механизмы изменения в теории ACT* приводят к большему числу проблем. Будучи введенными в теорию, эти механизмы ориентированы на оптимизацию системы мышления, которая описывается с помощью продукций. Другими ело* вами, предполагается, что успехи в обучении обус* ловлены механизмом исключения избыточности, который предназначен для уменьшения нагрузки на рабочую память (процедурализация), механизмом, который позволяет все, что можно, сделать за один раз (композиция), и механизмом объединения процедур, которые порождают один результат (обобщение). При таком обучении система (человек, компьютер) может обрабатывать поставленную задачу с очень высокой эффективностью. Тем не менее на практике процесс обучения человека не всегда идеальный. Например, сколько раз мы встречались с тем, что ученик не понимает материал даже при не« однократном повторении. Проблема в индивидуальных различиях: один ученик ——способный, а другой——тугодум. Короче говоря, в одной ситуации механизмы изменения работают, а в другой ——нет. Это нельзя объяснить в рамках теории ACT*.
В процессе обучения мы не только стремимся делать как можно меньше ошибок, быстро все обработать, но и дать точные объяснения, установить связь с задачами в других областях. Здесь необходима тесная связь со структурированием знаний, а такая проблема совершенно не затронута в этой теории.
ОБУЧЕНИЕ ЧЕЛОВЕКА
В данном разделе на примере развития ребенка уточним особенности обучения человека и обсудим проблемы, которые обходит молчанием теория ACT*.
ПРОБЛЕМА: ПОЧЕМУ ТАК ПОЗДНОНАЧИНАЕТ УЧИТЬСЯ ЧЕЛОВЕК!
Одна из известных проблем в психологии развития — это так называемая проблема сохранения Пиаже. Существует несколько версий этой проблемы. Рассмотрим одну из них. Расположим несколько камешков в два ряда, как на рис. 2.3, а. Если спросить четырехпятилетних детей: «Равно ли число камешков в верхнем и нижнем рядах?», то получим ответ:《Да, равно». Но если изменить расположение камешков так, как показано на рис. 2.3, б, и задать тот же вопрос, то большая часть детей ответит: «Внизу больше》 (хотя экспериментаторам встречались и дети, которые ответили: 《Камешков немного, но вверху их больше»). Когда детей спрашивали, почему они так думают, то их реакция была самой разнообразной; 《Потому что нижний ряд шире», «Потому что внизу растянуто», «Потому что вверху теснее》и т. п. Более того, дети в зависимости от возраста и ситуации часто меняют свое мнение. Некоторые читатели, наверное, уже спрашивают: «Разве эти дети не умеют считать?» Успокойтесь, они могут считать и указывать, что в каждом ряду по четыре камешка (как правило, в че- тырех-пятилетнем возрасте большая часть детей мо・ мет считать вслух до 20 и пересчитать до 10 предметов), И тем не менее, как это нн удивительно, некоторые говорят: «Внизу четыре камешка, поэтому внизу больше».
° Q о0 о
а
0 о .
0о
о
б
23 а-начальная расстановка; б-измененная расстаиовка.
Даже с такой на первый взгляд простой задачей ребенок может справиться лишь в пяти-шестилетнем возрасте. Опять кое-кто из читателей подумал: «Разве не будет все понятно, если сосчитать камешки?» Но если попросить детей сосчитать камешки, это приводит к противоположному результату — ребенок не может правильно ответить даже после нескольких упражнений. Например, если ребенку несколько раз давать эту задачу и каждый раз подсказывать ответ, то вскоре он начнет отвечать правильно. Однако, если проверить его через некоторое время, то снова столкнемся с прежней ситуацией. Более того, если в момент, когда нам покажется, что обучение дает эффект, мы с помощью какой-либо уловки, так чтобы не заметил ребенок, уберем камешек из какого-либо ряда, то он будет механически отвечать: «Одинаково», а если ему подсказать:《Ну что ты, внизу меньше!», то мы неожиданно снова вернемся к старому результату. Даже при целенаправленных упражнениях каких-либо успехов в обучении не будет достигнуто.
Рассмотрим другой пример. В школе учат различные законы, правила. Среди них — теорема сложения тригонометрических функций, которую мы использовали при объяснении теории ACT*. Кстати, как правило, подобные теоремы никак не удается заучить даже при многократном повторении: многие ученики, испытывая трудности, занимаются у репетиторов. Даже если они на какое-то время запомнят эти формулы, то возникнут новые трудности: как их использовать на практике. И совсем не важно, может ли ученик наизусть прочитать эти формулы, важно то, что ученики ясно себе их представляют. Если бы однажды объясненное сразу же можно было выучить, то учитель не испытывал бы никаких трудностей, и исчезла бы большая часть проблем в учебных заведениях. Не только дети, но и взрослые многого не могут выучить, и для них выпускают разнообразные учебники, справочники, пособия, а учителя по- прежнему с трудом составляют учебные планы.
Приведенные здесь примеры разительно отли* чаются от обучения, формализованного теорией ACT*. В процессе обучения человека, конечно, возникают
пронедуралнзания, композиция, обобщение и спецма» лизация. Однако все это далеко не всегда работает, а если и работает, то требует много времени. Никогда процесс обучения не идет автоматически, как это утверждает теория ACT*. Быть может, люди глупы? (Например, ограничен объем рабочей и долговременной памяти? Есть ограничения на доступ к памяти? Нелогичны механизмы специализации и обобщения? и т. д.) Но если это так, то вы, уважаемые исследователи инженерии знаний, совсем не интересовались обучением человека, а выбрали себе в партнеры «высокоодаренные» компьютеры и просто рассматриваете алгоритмы высокоэффективного обучения и их применение.
Однако может быть и другая точка зрения. Можно ведь считать, что при обучении человека существуют внешние ограничения, которые ни в чем не совпадают с ограничениями при обучении компьютеров (и которые нельзя учесть в современных компьютерах) 7 а человек выполняет специфичную обработку с целью хоть как-то преодолеть эти ограничения, что требует большего времени. Попытаемся обсудить отставание в обучении человека с этой точки зрения.
НОВАЯ ПРОБЛЕМА: СЛОЖНОСТЬ СРЕДЫ
Среда, в которой проходит обучение человека, вопреки нашим ожиданиям, достаточно сложна. В мире, где мы учимся, потенциально существует неограни' ченно много информации. Рассмотрим такой случай. Студент, изучающий язык Лисп, собирается решить задачу вывода на печать треугольника Паскаля 】)при любом N. Он определил функцию с именем PASCAL, запрограммировал ее и запустил на решение. Снача- ла он пробует вычислить треугольник при N = 3, но на экране дисплея появляется странная картинка, и какую бы клавишу он не нажимал, от компьютера нет никакой реакции (обратите внимание на то, что при
"В алгебре треугольником Паскаля называют записанные в Ф°Рме треугольника коэффициенты полиномов (х + у^.^Прим. перев.
обычИой ошибке такая ситуация не возникает). Он думает, что при запуске программы нажал не ту клавишу, нажимает клавишу «сброс» и пытается выполнить программу еще раз. Но вновь тот же результат. Делать нечего, он начинает все сначала. На этот раз внимательно проверяет, нет ли в тексте программы ошибки. Но как он ни ломал голову, ничего не нашел (разумеется, ошибка-то была) и пробует выполнить программу при N = 2. Теперь все кончается выходом в операционную систему. Тут рассеянного студента осенило: 《Разве можно присваивать этой функции имя PASCAL? Это же название языка программирования! Как же неосмотрительно я поступил!» Он проверяет имена функций по каталогу OBLIST и, не очень задумываясь, заменяет имя функции на PASTRI и корректирует программу (при этом случайно исправляя ошибку). Затем робко набирает «PASTRI 3》и, разумеется, получается 1, 3, 3, 1. После нескольких попыток с другими числами он делает заключение; «Нельзя использовать привилегированные имена типа PASCAL» )
Этот случай рассказан не как анекдот для разрядки. Он приведен как пример того, что среда, в которой обучается человек, содержит самую разнообразную информацию. По мнению эксперта по компьютерам, эффект обучения такого студента поистине абсурдный: разве можно подумать, что ошибка возникла из-за имени функции, а тем более из-за привилегированного имени? Начинающий программист не может понять, что это информация к тому, чтобы обдумать свою неудачу (если все понятно, то это уже не новичок). Другими словами, в принципе можно было бы искать причину неудачи среди той информации, которая окружает нашего студента (говорят ведь про неудачу, что, мол, ворона накаркала; до сих пор в Японии много людей, которые верят, что свадьба в день《6унумэцу》2)приведет к несчастному 6ра«
I)Этим студентом был один из авторов (Сазкн), подобная ситуация возникла при работе с программным обеспечением на микрокомпьютере mu-LISP.
2)День кончины Будды.— Прим, перез.
ку), И дело совсем не в том, что информация в среде, где мы живем, постоянно меняется, а в том,что нередко одну информацию мы подменяем другой. А раз так, то чрезвычайно сложно формально механически определить, из-за какой информации наше поведение оказалось ошибочным, а из-за какой — успешным. Поэтому-то для обучения человека требуется время. С другой стороны, дело не в том, что человек, сталкиваясь с подобной средой, теряется. Просто независимо от сложности среды система обработки информации, какой является человек, выбирает соответствующие действия^ исходя из ограниченного опыта, и успешно адаптируется к среде. Почему это происходит? Как человек обучается и приобретает знания, когда механические формальные методы непригодны? В настоящее время есть теория обучения машин, но большинство обучающихся снстем не учитывает слоЖ' ность среды. Информация, которую можно вложить в систему, определяется заранее, ее объем крайне мал, а взаимосвязь между различной информацией определяется априорно (в некоторых системах запоминается все, что выполнялось ранее). Такая среда качественно отличается от среды, в которой происходит обучение человека (по крайней мере начинающего). Следовательно, при дальнейшем расширении области применения существующих обучающихся систем обязательно необходимо учитывать методы обработки всевозможных видов информации.
J.6.3. РЕШЕНИЕ: ЗАВИСИМОСТЬ ОБУЧЕНИЯОТ ЗНАНИЙ
Раскрывая затронутую здесь тему, нельзя не упомянуть исследования понятий, выполненные Морфи и Медином. Эти исследования в каком-то смысле охватывают проблемы, аналогичные проблеме обучения.
В большинстве современных исследований понятия представляют в виде списка атрибутов, характерно тик. Однако, если у некоторого объекта существует неограниченное число атрибутов, всех их перечислить невозможно. Часто каждому атрибуту приписывают вес и таким образом выделяют среди ннх самые важ-
ные. Однако очевидно^ что такой подход не очень эффективен. Например, для понятия 《собака》 атрибуты «четырехногое животное» и《лает» должны быть самыми важными, но достаточно взглянуть на собаку, лишившуюся ио г и из-за несчастного случая, чтобы сразу сказать, что это собака, и нам не нужно заставлять ее лаять. Опыт показывает, что критериев оценки важности атрибутов не существует.
Ну, а как определить понятие《человек», какие особенности он имеет? Рассмотрим следующий пример. Вот ряд слов: рукопись книги, ребенок, сберегательная книжка, драгоценности — едва ли найдется человек, который сразу же ответит, к какой единой категории отнести эти понятия. Одиако, услышав ответ «спасенное при пожаре», каждый с ним согласится. Кстати, найдется ли человек, который на вопрос об атрибуте понятий 《рукопись кннгн» или «ребенок» приведет категорию «спасенное при пожаре»? Вряд ли. Однако мы можем экспромтом прийти к такой категории (особенно если самому пришлось пережить пожар). Другими словами, понятия, которыми мы оперируем, очень и очень гибкие. Человек в зависимости от ситуации сразу же может извлечь н обобщить важные и общие атрибуты. Рассмотрим поня- тие «птица»: 《нмеет крылья»,《летает》, «имеет клюв», «клюет корм» — все это атрибуты птицы. Увидев объект, которому присущи эти атрибуты, человек однозначно определит; это птица. Но только ли это делает человек? Например, на вопрос: «Почему птица летает?» мы можем ответить:《Потому что у нее есть крылья», а на вопрос: 《Как ест птица?» — ответим: «Она клюет корм клювом» Таким образом, все атрибуты можно представить не только по отдель- ности, но и в их взаимосвязи.
Морфи и Медин утверждают, что понятия, которыми оперирует человек, — это не множество простых атрибутов, они имеют внутреннюю структуру, скрепленную знаниями. Как только в предыдущих примерах нам сообщали ответ, мы сразу же улавливалн связь, поскольку, например, благодаря знаниям о пожаре смогли выбрать важнейшие нз атрибутов весьма далеких друг от друга понятий «рукопись книги»,
《ребенок» и других и образовать из них единый ряд. В примере «птица летает» благодаря знаниям о мнрв полет мы ассоциировали с крыльями и представили причинно-следственную цепочку. Другими словами, благодаря знаниям человек строит некую взаимосвязь между атрибутами понятия, объединяет их семасиологически и охватывает их как единое целое с позиции теории мышления. Атрибуты и особенности нельзя подбирать по отдельности, как и нельзя фик1- снровать.
Но вернемся к проблеме обучения. Подобно тому как человек связывает н обобщает атрибуты далеких друг от друга понятий, используя знания о структуре понятий, при обучении он также на основе имеющихся знаний выбирает среди потенциально неограниченной информации, поставляемой ему средой, наиболее важную информацию для соответствующей деятельности. Короче говоря, разве' ради успеха в обучении ему не требуются знания для упорядочивания и систематизации информации из среды обучения?
‘ Вспомним реакции детей в опытах по сохранению чисел Пиаже. Когда детей расспрашивают о причине их ответа, они называют самые различные причины. Кто главной считает длину ряда, кто——плотность, хотя одновременно учитывает и число камешков. Видимо, это говорит о том, что для подобной ситуации У них не хватает знаний, которые бы систематизиро- валн различную информацию, присутствующую в условиях эксперимента. Другими словами, от случая к случаю в качестве причины приводятся наиболее за- метные атрибуты: детям не хватает знаний, которые устанавливают связь этих атрибутов с целью задачи. Поэтому они не могут однозначно определить причину своих ошибок, и обучение не дает результатов даже ПРИ неоднократных подсказках. Это полностью от^ носится и к студенту, изучающему язык Лисп. Он ни- чему не научился, хотя получал от компьютера раз* ЛНЧНЬ1е ответы, поскольку у него не было знаний, достаточных для того, чтобы идентифицировать причи- ну ошибки, да и вы, дорогой читатель, смеетесь над этим студентом только потому, что обладаете достав
точным запасом знаний о Лиспе или общих принципах программирования. Короче говоря, информация, позволяющая понять причину неудачи, глубоко скрыта, от студента, а вы благодаря соответствующим ^знаниям можете наперед сказать, какой информацией разумно воспользоваться в данном случае.
Сказанное выше справедливо не только для людей, но и для животных. Гарсия и Келннг экспериментально проверили, при каких из указанных ниже четырех условий крысы могут научиться избегать неприятных для них ситуаций.
Условие 1. В момент, когда крыса пьет воду, даются световой и звуковой сигналы, а затем — удар током.
Условие 2. В момент, когда крыса пьет воду, даются световой и звуковой сигналы, а затем у нее вызывается рвота.
Условие 3. В момент, когда крыса пьет воду, в воду добавляют сахар, а затем дается удар током.
Условие 4. В момент, когда крыса пьет воду, в воду добавляют сахар, а затем у нее вызывается рвота.
Урок не прошел даром (крысы перестали на следующий день пить воду) только для крыс, прошедших обучение при условиях 1 и 4.
Смысл такого результата очевиден. Просто в рамках тех знаний, которыми обладают крысы, нм становится ясно, что после светового и звукового сигналов будет дан ток, а причину рвоты при этом же условии им понять трудно (если человек, выпив воды из-под крана, получит удар током, он, как правило, будет искать, нет ли рядом оголенной электрической проводки, и, конечно, не подумает, что это связано с водой). С другой стороны, рвота после выпитой сладкой воды — это та информация, которая вполне «доступна» крысам на уровне их знаний, но связать вкус воды с ударом током им уже трудно.
В свете этого обсуждения становится очевидным ответ на проблему, указанную в начале данного раз-
дела. Люди (и даже животные) через опыт приобретают разнообразные знания о мире и с их помощью строят предположения о том, какая часть из огромного объема информации в условиях обучения является наиболее важной. Связав воедино информацию, важную для их деятельности в данный момент, и осмыслив ее, оии самостоятельно моделируют окружающую среду °. Поэтому даже в очень сложной среде (по меньшей мере сложнее, чем среда вокруг компьютера) можно с успехом обучаться и соответствующим образом реагировать на новые ситуации. И наоборот, без систематизации разнообразной информации внутри среды (без построения соответствующей модели) обучение не даст результата даже при некотором опыте.
Обобщим сказанное. Люди учатся через опыт. Однако они не впитывают в себя всю информацию. Восприятие информации и ее систематизация осуществляются через знания. Поэтому, даже имея опыт, в одной и той же ситуации каждый человек в разное время (т. е. в зависимости от состояния знаний обучающегося) может по-разному осмысливать информацию. Кроме того, человек, опираясь на свои знания, либо изменяет среду для получения необходимого опыта, либо избегает накопления случайного опыта. В этом смысле наше обучение можно назвать обучением, зависимым от знаний. Компиляция знаний в теории ACT * не отрицает того, что в результате обучения возникает упорядочивание знаний, но в такой замкнутой в себе области мышления, как обучение, это происходит не автоматически, а лишь благодаря динамическому взаимному использованию разнообразных знаний человека. Обучение человека——это совсем не накопление порция за порцией информации в пустой голове и не упорядочивание ее с помощью каких-то самоконтролирующихся механизм мов. В пустую голову информация никак не попадет, а если бы даже она туда попала, то ее упорядочива- ние было бы невозможным. В теории ACT* нельзя
п Иногда полученный такнм образом упорядоченный символический мир называют мысленной моделью.
объяснить, как влияют на обучение индивидуальные особенности людей и различия в решаемых задачах, поскольку эта теория не рассматривает свойства и функции накопленных знаний.
ЗНАНИЯ ЧЕЛОВЕКА
Итак, из сказанного выше стало очевидно, что обучение главным образом возможно благодаря знаниям. Но в какой форме представлены наши знания? Для ответа на этот вопрос мы должны понять особенности зависящего от знаний обучения человека.
Существуют две точки зрения на то, как представляются знания человека. Первая — знания представляются в абстрактной форме и имеют высокую степень универсальности. Вторая — знания специфичны в зависимости от места их приобретения и использования, имеют низкую степень общности и универсальности.
Например, знание《1 + 1 = 2》можно применять вне зависимости от объектов, а знание «отец — это мужчина, имеющий ребенка» можно истолковать вне связи с каким-либо событием. Считается, что общность подобных знаний ——это необходимое условие адаптации к сложной среде. Но так ли это?
1.7.1, ПРОБЛЕМА: СПЕЦИФИЧНОСТЬ ОБЛАСТИ ЗНАНИЙ
Вернемся к задаче Пиаже. Вы помните, что четы- рех-пятилетние дети ошибаются в простой задаче. Но ведь они уверены, что не ошибаются! Хотя, например, по сообщению самого Пиаже, если в качестве атрибутов для эксперимента выбрать не камешки, а вазы с цветами или подставки с яйцами, то ребенок, не справлявшийся с простой задачей, будет отвечать правильно. Более того, некоторые исследователи отмечают, что вероятность правильного ответа повышается, если каждый раз при расстановке или сжатии ряда камешков объяснять своп действия ребенку. Однако если через какое-то время вновь вернуться к прежнему заданию, то ребенок, который Давал правильны访 ответ в задании с объяснениями,
опять не сможет ответить. В чем же дело? Формально вроде бы два одинаковых задания, но в одном случае ребенок дает ответ без труда, а в другом — ошибается. Почему же нельзя во втором задании применить знания, которые однажды уже помогли ему? Может быть, потому, что это ребенок? Но аналогичные явления неоднократно наблюдались и в экспериментах со взрослыми.
Посмотрим на результаты экспериментов Вейсона, изучающих дедуктивные выводы человека. Пусть тезис «если Р, то Q》истинен, тогда, как правило, истинен и антитезис «если не Q, то не Р》.Студенты университета уже приобрели это знание, но могут ли они использовать его в подходящих условиях для логических выводов? Эти ожидания оказались ошибочны. Вейсон провел следующий эксперимент. Пока* зав студентам четыре карточки (рис. 2.4), оп сказал: «На лицевой стороне этих карточек написаны цифры, а на обратной — буквы. Какое наименьшее число карточек необходимо перевернуть, чтобы подтвердить истинность тезиса: на обратной стороне четных карточек всегда написана гласная?» Свыше 80 % испытуемых (студентов) решили, что достаточно перевернуть карточки с четными цифрами и гласными (разумеется, правильное решение иное: необходимо перевернуть карточки с четными цифрами и согласными).
Здесь, уважаемые читатели, вы наверное поду* мали так: «Разве дело в том, что, как было сказано, человек учится? Имеет ли значение его умение рассуждать логически? Видимо, и ошибочные выводы человека могут быть представлены в некоторой фор- ме»・ Например, в задании с четырьмя карточками скорее всего человек не пользуется правилом: «обратное также истинно». Другими словами, у человека есть своя логика, но только она чисто случайно от-.
0 0 0 0
Рн& 2,4, Задача с четырьмя картами Вейсоиа,
личается, рт правил логики как науки. Поэтому можно считать, что человек преимущественно пользуется своими пусть ошибочными правилами, но которые также можно формально описать. Кстати, и эта ситуация не так проста. °
Например, Румельхарт провел следующий эксперимент, несколько видоизменив задание с четырьмя карточками. Испытуемым сообщили: «В некотором универмаге на обороте чека па покупку стоимостью свыше десяти тысяч долларов должна стоять печать заведующего. Какие из чеков следует перевернуть и проверить это?» Затем показали четыре чека: чек с печатью, чек без печати, чек на сумму свыше десяти тысяч долларов и чек на меньшую сумму. В результате свыше 60 % испытуемых смогли выбрать правильные чеки. Разумеется, это задание формальна полностью аналогично заданию с четырьмя карточками, приведенному выше. Однако в первом задании вероятность правильного ответа была чуть выше 10%, а во втором — свыше 60 %. Следовательно, человек не может делать соответствующие выводы при решении такого рода задач, и дело совсем не в том, что он при этом безрассудно использует ошибочные правила
На практике подобных примеров можно привести множество. Например, даже студенты факультета естествознания и техники Массачусетского техноло- гического института (США), сидя перед дисплеем компьютера, игнорировали закон инерции и совершали промахи раз за разом. Разумеется, если бы эти студенты пользовались бумагой и карандашом, они без труда решили бы задачи, связанные с законом инерции. Кстати, в своей автобиографии Фейнман2) писал, что он восторгался каждый раз, когда сту- денты этого же института указывали, что касательные к волнообразным неровностям облачных образований параллельны земле (другими словами, что
"Об ограничениях формальных подходов к исследованиям такого рода см. гл. 4, 5.
2)«Вы, конечно, шутите, мистер Феннман!» — Нью-Порк, 1985. Главы из этой книги опубликованы в журнале «Havxa н мнзнь», 1986, № 10, 12; 1987, № 2, 8; 1988, № 8. —〃р4H. перее.
значение производной в точках экстремума равно нулю). Кроме того, исследования равнозначности задач и аналогий показали, что нельзя так просто применять знания, приобретенные при решении испытуемыми одних задач, к структурно идентичным им другим задачам.
Явление, когда знания то работают, то не работают в зависимости от контекста формально и структурно идентичных задач, называют специфичностью области. Другими словами, наши знания специализируются в зависимости от контекста, в котором они были приобретены, и от ситуации, в которой они чаще всего использовались, поэтому такие знания не работают в ситуации, содержащей иную информацию. Следовательно, знания человека ие слишком универсальны, а существенно ограничиваются конкретным опытом. Результаты приведенных экспериментов и их интерпретация, очевидно, поддерживают вторую точку зрения.
Тем не менее и подобный вывод достаточно сомнителен. Только этим невозможно объяснить многое в поведении человека. Например, в эксперименте Румельхарта испытуемые не могли использовать прошлый опыт (никак не предполагалось, что испытуемые имеют опыт работы в универмаге с подобным правилом). Итак, среда, которая окружает нас, по- стоянно изменяется, и каждый момент времени неповторим. Люди в такой среде не могут существовать, не опираясь на свой опыт и не получая типичные для данной ситуации знания.
РЕШЕНИЕ: ПОЛУАБСТРАКТНОСТЬ ЗНАНИЙ
Как же представить знания человека, которые и неуниверсальны и нетипичны для опыта? Какое отношение имеют к нашему мышлению особенности пред- ставления знаний и какую роль играют эти особенности? Для решения этих проблем прежде всего обсудим, как человек может заставить работать знания в процессе логических выводов.
Не так давно Чен и Холиок опубликовали результаты исследований» в которых много намеков на эту
тему. Они выяснили, что человек может делать надлежащие выводы тогда, когда есть «допустимый» контекст. При выполнении некоторого действия и при оценке, выполняются ли условия этого действия, человек может делать выводы практически интуитивно. Знания для таких выводов исследователи назвали «схемой прагматических выводов». Эти знания можно представить в форме следующих правил.
Правило 1. Если выполняется некоторое действие, то должны удовлетворяться условия для этого действия.
Правило 2. Если некоторое действие не будет выполняться, то могут не удовлетворяться и его условия.
Правило 3. Если удовлетворяются условия, то можно выполнить действие.
Правило 4. Если условия не удовлетворяются, то действие выполнять не нужно.
Эти правила и схема выводов точно соответствуют формальным правилам оценки условий. Вспомним, ведь и мы бессознательно используем такую схему в повседневной жизни. Например, давайте поставим себя на место полицейского, которому нужно выявлять водителей без прав. Он проверяет выполнение правила 《Для вождения автомобиля необходимы водительские нрава》. Ему могут встретиться четыре типа людей: человек, сидящий в автомобиле, ребенок (т. е. человек, который не может вести автомобиль) ,человек с правами и человек без прав. Кого из них следует подвергнуть полицейской проверке? Естественно, проверим человека, сидящего в автомобиле, и человека без прав. Но как быть с остальными людьми, имеющими права (другими словами, надо ли проверять правило, противоположное правилу 《Если сидишь за рулем, то должен иметь права»)?
Чен, проведя несколько экспериментов, доказал, что мы правильно делаем выводы по условиям с использованием указанных выше правил. Кроме того, оказалось; что эти схемы можно применять не только
в конкретной области, они действуют всегда при- условии, что есть «допустимый» контекст, и выдают соответствующие оценки. Итак, знания, успешно работающие в некоторой задаче, иногда не работают в другой задаче, формально и структурно аналогичной первой. Но, с другой стороны, соответствующие знания работают всегда при наличии допустимого контекста. Что может рассказать это явление о характере человеческих знаний? Что такое «допустимый» контекст в утверждении, что знания работают при наличии допустимого контекста? Это утверждение не содержит ни формы, ин структуры. Речь идет о смысле, который мы, люди, извлекаем из задачи (или строим из контекста). Следовательно, может быть, следует сделать вывод о том, что вопрос «Можно ли применять знания?》подразумевает не формальную, структурную сторону задачи, а смыслов вую, содержательную? Если смысл идентичен, то человек может применять соответствующие знания в достаточно широкой области. Такое свойство знаний мы будем называть 《полуабстрактностью》. Это. означает, что с позиции формализацирг наши . знация не являются абстрактными и универсальными, a d позиции осмысления ——они в высшей степени универсальны. Короче говоря, человеку очень сложно с помощью одних и тех :же знаний решать задачи, формально и структурно ^аналогичные, но по смыслу и содержанию полностью: различные. Или еще короче: человек не считает: идентичными две задачи с различным смыслом R содержанием (или ему крайне трудно признать это) !\
Давайте еще раз вернемся к проблеме сохранения Пиаже, которую мы уже неоднократно упоминали в данной главе. Ребенок ошибается в простом задании, поскольку он не может установить взаимно одно*
Идея полуабстрактных знаний имеет много общего с идеей смысловой чувствительности, которую высказал японский иссле* дователь Андзан. Однако эта идея обсуждалась с точки зрения совместного использования целей и состояния субъекта, а мы, говоря «знания полуабстрактны», имеем в виду, что в основа всего лежит смысловая связь как основной конструктивный,эле* мент знаний,
Возможности технологических подходов в психологии 65 значное соответствие между объектами в каждом ряду. Одпако нельзя сказать, что у ребенка совсем нет знания о взаимно однозначном соответствии. Это следует ^ из ряда экспериментов, описанных выше. В какой форме ребенок приобретает это знание? Один из авторов данной главы в качестве атрибутов Для экспериментов выбрал, предметы, имеющие некую функциональную смысловую связь, и провел те же эксперименты (например, один ряд ——куклы, другой—стулья). И что же? Ребенок, который в простом задании оценивал длину или плотность ряда, смог сделать правильную оценку, не запутавшись в полученной информации. Но самое интересное то, что такая функциональная смысловая связь носит стимулирующий эффект лишь в случае, когда задан вопрос: «Все ли куклы рассядутся по стульям?》,и не дает эффекта, когда задан вопрос: «Равно ли число кукол и стульев?» И уже при любой замене атрибутов получается аналогичный результат.
Посмотрим, как поддерживает эти результаты выдвинутая выше гипотеза «полуабстрактности знаний». Вообще говоря, у ребенка нет абстрактного знания о взаимно однозначном соответствии, а есть функционально эквивалентное ему знанне (прагматичная схема) типа《с каждым предметом можно что- то сделать» или «с каждым предметом можно установить функциональную связь (например, усадить на стул)》. Таким образом, если это знание работает и предметы имеют функциональную смысловую связь, то в результате будет установлено взаимно однозначное соответствие между ними. С точки зрения нас, взрослых, нет особого различия в том, какие предметы выстраиваются в ряд, какие вопросы задаются. Форма и структура задачи непременно приводятся к взаимно однозначному соответствию. Однако с точки зрения смысла и содержания задачи различия в форме вопросов вызывают существенные сдвиги в сознании. С одной стороны, вопросы равнозначны, а с другой ——появляется задача прагматического осмысления: «Рассядутся ли?» Знание ребенка о взангню однозначном соответствии очень чувстви- тель!ю к подобной смысловой стороне условия за*
3 С. Ocyi а, Ю. Саэкп
дачи, поэтому это знание успешно работает в случае, когда в задаче спрашивается о смысловой связи, и не работает в других случаях.,-
В заключение рассмотрим, какое значение имеет утверждение о том, что обучение зависит от подобных полуабстрактных знаний. Из сказанного выше можно сделать следующий вывод: знание, приобретенное в некотором контексте, с не очень высокой вероятностью можно применить в контексте, отличающемся от прежнего в смысловом отношении, но аналогичном в функциональном. Поэтому некоторые из читателей, может быть, придут к заключению: «Все-такн человек глуп! В компьютерах следует по возможности представлять знания абстрактно и формально, обеспечить их универсальность. Иначе компьютер будет поступать так же странно, как и человек». Однако можно ли так думать всерьез? Так ли просто понять, что задачи, подобные по смыслу, однотипны? Например, в исследованиях Чена приводились задачи о служащих государственных учреждений, о персонале почтового отделения, о юристах, контролирующих выполнение законов, и другие задачи. Понять, что столь разнообразные задачи имеют допустимый контекст, не так просто (по крайней мере, существующие системы, понимающие естественный язык, не могут охватить столь обширную область 1}). Итак, такая обучающаяся система, как человек, нечувствительна к понятию «формальностью, но очень податлива к понятию «смысл», и при этом может в полной мере адаптироваться к среде даже без J особых тренировок. При обучении человека крайне важно путем смысловой интерпретации усло- БИй задачи (т. е. надо понять, что требуется) установить связь с существующими знаниями. Обучаю- таяся система, какой является человек, имеет слабую универсальность по отношению к форме, но может адаптироваться к сложной среде благодаря универсальности по отношению к смыслу.
” Для решения этой проблемы, видимо, будут эффективны н貝ен, предложенные Шенком в книге «Динамическая память—» теория запоминания и обучелия компьютеров и людей» — Кем- бридж, 1982.
ЗАКЛЮЧЕНИЕ
В данной главе проведена (нестрогая) систематизация исследований обучения на основе «технических» подходов с формальных механистических позиций и уточнены проблемы п ограничения этих подходов в сравнении с процессом обучения человека. Это настолько нестрогая систематизация, что, по мнению авторов, среди читателей найдутся такие, кто вспыхнет негодованием. Для этого, чтобы исключить неверное понимание, отметим, что авторы считают возможным формальное представление мышления и обучения человека. Думаем, что и среди обучающихся систем немало такнх, обучение которых считается плодотворным и эффективным, благодаря удачным алгоритмам обучения, и применение этих систем позволит уточнить решение проблем обучения. Сч?1таем также, что в системы должно быть встроено как можно меньше средств так называемой технической эстетики; лучше, чтобы эти средства были более универсальными.
Существует также точка зрения, что приведенные здесь идеи необходимо высоко ценить, что в систему мышления человека с рождения встроено множество знаний. И такая система не будет обучаться, если не будет осмысливать мир с помощью этих знаний. Но на это требуется время, и как бы мы ни старались, «технически» оптимальным такое осмысление сделать нельзя. Несомненный факт, что универсальных обучающихся систем, совершенных, как человек, не существует. Такие системы не только должны быстро работать в процессе обучения и выбирать соответствующие действия, но и осмысливать, понимать мир объектов, создавать органичное представление этого мира. Не выбрать ли нам на первый взгляд окольный путь анализа подобной формы обучения, сравнения ее с формой обучения компьютеров, другими словами, путь исследования обучения с позиций теории мышления? В результате чего это должно способствовать и созданию совершенных систем, и проникновению в тайны нашей «души».
МЕТОДЫ И ПРОБЛЕМЫ ИЗВЛЕЧЕНИЯЗНАНИЙ
X Кобаси
(Токийский университет естественных наук)
Методы, с помощью которых программы автоматически вводят знания, не имеют прямого отношения к взтядам на процесс обучения человека ——образца для изучения проблем приобретения знаний и обучения. Работа, связанная с получением знаний, имеющихся у конкретного лица, называется извлечением знаний, в инженерии знаний эта работа имеет немаловажное значение. Необходимостью извлечения знаний специалиста разработчиком экспертной системы нельзя пренебрегать не только из-за того, что полностью автоматизировать этот процесс необычайно сложно, но и из теоретических соображений. В данной главе подняты проблемы извлечения знаний, исходя из этой точки зрения. Кроме того, эта глава знакомит с некоторыми из методов, предложенных к настоящему времени для извлечения знаний, хотя цель главы состоит не в том, чтобы тут же предложить каталог практических методов. Скорее в ней уточняется методика извлечения знаний как объект исследований, требующих серьезных усилий, и отмечается целесообразность таких методов.
34 МАССА ПРОБЛЕМ
Не понимаем ли мы превратно, что такое теория экспертных систем? Литературы об этих системах очень лного, в том числе и хорошей, и плохой. Одному не- еозможно даже бегло просмотреть всю эту литера- 二УРУ・ Экспертные системы — это хорошо известное приложение систем искусственного интеллекта. О них написано столько, что невольно возникает иллюзия существования теории экспертных систем. Большая иасть исследований экспертных систем решает част- нне проблемы при заданных ограничениях компью-
терн。比 техники, времени, стоимости и других ресурсов без применения какой-либо теории, построенной вне области исследований. Следовательно, стандартная методология создания экспертных систем так и не установлена.
Что же могут предложить исследования искусственного интеллекта? Это изучение конкретных случаев, включая несколько прототипов экспертных систем, а также технику программирования. Многие из исследований и разработок собственно экспертных систем следует назвать эвристическими, часто эти исследования дублируют друг друга и не выдерживают критической оценки.
В каких же областях применяют экспертные системы и как они взаимодействуют с пользователями? Какую экспертизу они проводят? Где граница между экспертными способностями специалиста и обычными знаниями? Можно ли отделить экспертные способности от других знаний и передать их неспециалистам? Если можно, то какой полезный эффект создаст это для неспециалиста и его окружения? В каких случаях и какие методы следует использовать при извлечении спвниа/ьннх знаний эксперта? Какую роль при этом играет эксперт? Теории, отвечающей на эти вопросы, и систематической методологии для поиска ответов пока не существует.
Указанные проблемы теоретических основ проектирования экспертных систем ——одна из причин, препятствующих проектированию адаптивных человеко- машинных систем и затрудняющих надлежащий выбор аппаратных и программных средств. Попытки построения многочисленных экспертных систем, предпринятые до настоящего времени, имеют не только практическую ценность, но и предоставляют данные для подготовки названной здесь теории.
ИНЖЕН£РИ^ ЗНАНИЙ
Приобретение знаний в узком смыеле с/юва — это работа по наполнению баз знаний. Но ведь кто-то должен выбрать знания, которые следует поместить в базу знаний и соответствующим образом закодпро-
вать. В этом случае данными являются форма пред- ставления знаний и методы их использования (например, формулы выводов).
Приобретение знаний в этом смысле само по себе сложная работа, на практике в ходе этой работы часто выявляются недостатки базового понимания проблемной области, в которой будет применяться система, немостаткн формы представлення знаний и методов их использования. Это также следствие отсутствия теории. Поэтому на основе существующих баз данных осуществляют пересмотр понятий проблемных областей и повторное изучение систем, включая базы знаний. Эту работу, выполняемую в дополнение к приобретению знаний в узком смысле, можно назвать приобретением знаний в широком смысле слова. На практике эта работа тесно связана со всем процессом разработки экспертных систем——от возникновения замысла до ее реализации и совершенствования. Этот процесс, за исключением нескольких примеров, также обсуждался лишь эпизодически. Процесс организации знаний в базу и построения экспертных систем называют также инженерией знаний.
Примечание. Д. Мичи считает главными элементами инженерии знаний использование операций типа обобщение, генерацию гипотез для индуктивных выводов, подготовку новых программ самими компьютерными программами и т. п. Слово engineering в английском языке означает искусная обработка предметов, изобретение или создание чего-либо. Следовательно, работу по оснащению программ специальными экспертными знаниями из проблемной о6ла・ стн, выполняемую либо человеком, либо компьютером (программой), можно назвать инженерией знаний.
УРОВНИ ПРИОБРЕТЕНИЯ ЗНАНИЙ
Существует по меньшей мере три уровня методов оснащения программ экспертными знаниями.
Первый уровень (наиболее простой). Это этап создания алгоритма, взятого из литературы или при- думанного специалистом или проектировщиком си*
Методы и проблемы извлечения знаний 74 стемы, и преобразование его в программу самими проектировщиками. На практике трудноосуществим.
Второй уровень. Программа может заполнить пробелы в знаниях, например из литературы, описывая объекты или формируя этапы (план) работ.
Третий уровень. Программа самостоятельно при- обретает алгоритмические знания, «читая» книги. Разумеется, способность «чтения» книг, как мы увидим из примеров систем второго уровня, подразумевает несовершенство того, что мы называем книгой. Это интеллектуальные способности высокого уровня, которые позволят не только каким-то образом усвоить содержание книг, подобно тому как загружаются программы в компьютер, но и использовать информацию как подсказку или совет.
В настоящее время большинство компьютерных программ — это програм мы первого уровня. Например, в случае программ численных расчетов нлн диагностических систем, базирующихся на логических операциях, проектировщики программ, включая тех, кого называют системными аналитиками, должны путем изучения теорий в проблемной области, анализа работ или через разговоры со специалистами сами преобразовывать знания в программы.
Наиболее просто программировать то, что заранее систематизировано и для чего определены правила обработки, скажем, коммерческие расчеты на предприятиях. Вполне реально, регламентированно можно вычислять без ошибок ——вот аргументы для обоснования компьютеризации коммерческих расчетов, например начисления заработной платы. А будь все хоть немного сложнее, то, как известно, потребуется специальный подготовительный этап ——анализ работ.
Для того, что не систематизировано, не поддается описанию, например для стратегии игр на досках (шахматы, го и др.), невозможно заранее определить алгоритм, гарантирующий решение. Поэтому проектировщик программ под свою ответственность должен представить разрозненные знания в виде программы, которую можно выполнить. Стратегию игры в шахматы, как и других игр на доске, часто представляют в виде дерева, но такой алгоритм основан на способ^
ности человека к перебору вариантов, и для его реализации в программе проектировщику придется интерпретировать и детализировать описания этих вариантов. К первому уровню принадлежит также программа Dendral для интерпретации масс-спектрограмм.
Усовершенствованная программа Meta Dendral относится ко второму уровню, поскольку она расширяет теорию стабильности молекулярных соединений, осуществляя открытие конкретных соединений. Но если бы программа сама изучала учебники по химии и развивалась, оперируя новыми группами химических соединений, то она принадлежала бы к третьему уровню. Например, чтобы принадлежать к третьему уровню, шахматная программа должна сама читать шахматные руководства и совершенствовать свое мастерство через обучение.
Процесс получения знаний от человека с целью их передачи программам первого уровня называется извлечением знаний. Что считать извлечением знаний на втором и третьем уровне? Сторонники того или иного направления формулируют это по-разному. Что такое знания? Что значит «хорошо знать»? Эти вопросы——одни из основных в теории мышления, они тесно связаны с еще нерешенными проблемами, поэтому об этом, естественно, надо говорить.
ЭКСПЕРТНЫЕ СИСТЕМЫ
Об успехах в исследовании ^экспертных систем уже говорилось в первых двух книгах ° данной серии, поэтому повторим лишь основные моменты. Не вдаваясь в детали появления термина «экспертные системы», отметим только, что, согласно классификации Джонсона, это разновидность систем, основанных на знаниях (рис. 3.1). К таким системам относятся так- ;ке системы обработки естественных языков, которые в процессе работы используют знания, но не требуют
°cyra С. Обработка знаний. — М,: Мир, 1989; П[)е〃став』ег 円ie и использование зиаиия/Под ред. X. Уэно. М. Псидзука. М.: Мир, 1989,-/7р〃м. перев.
так называемых экспертных знаний. Экспертные системы предполагают активное участие человека-эксперта и, используя главным образом основные положения конкретной проблемной области, извлеченные из эксперта, решают сложные задачи, обычно не решаемые неспециалистами, и общаются с последними на естественном языке. Исследования и разработки экспертных систем не ограничиваются сферой компьютерных систем, а имеют отношение к проектированию человеко-машинных систем, обладающих экспертными знаниями, и должны решать проблему извлечения экспертных знаний из человека. Некоторые особенности экспертных систем приведены в табл. 3.1.
Таблица 3.1. Особенности экспертных систем
Перерабатывают большое количество знаний.
Представляют знания в простой унифицированной форме.
Обладают независимым механизмом логических выводов.
Могут объяснить результаты, полученные в процессе обработки знаний.
Рассматривая удобно выделить скую ценность.Рассматривая удобно выделить скую ценность.Рис. 3.1. Классификация компьютерных систем с акцептом системы применения знаний.Рис. 3.1. Классификация компьютерных систем с акцептом системы применения знаний.нанаэффективность экспертных систем, их практическую и методологиче-
Рассматривая удобно выделить скую ценность.
Рассматривая удобно выделить скую ценность.
Рис. 3.1. Классификация компьютерных систем с акцептом системы применения знаний.
Рис. 3.1. Классификация компьютерных систем с акцептом системы применения знаний.
на
на
Практическая ценность. Расширение экспертной системы в процессе применения и другие ее модификации еще только в проекте, а сам факт внедрения системы как законченного программного продукта совместно с пользователем на его рабочем месте уже несет в себе положительный эффект, обусловленный качественным улучшением деятельности пользователя.
В самом начале разработки должна быть поставлена следующая задача: какие функции будет выполнять система. В дополнение к основным функциям, видимо, можно считать практической ценностью и те разнообразные побочные эффекты, которые не всегда предусматриваются и к которым приводит работа системы в специфичной среде пользователя.
Экспертная система, взаимодействуя с пользователем и решая задачи, которые пользователь, не будучи экспертом, решить не в состоянии, выполняет сложные работы, поэтому наряду со следующими основными функциями:
оказание помощи- (полу-)экспертам в их деятельности по специальной тематике (например, помощь в принятии решений);
восполнение нехватки экспертов в конкретной проблемной области;
и другими функциями система может проявлять, например, такие побочные эффекты:
исключение нежелательных последствий излишней специализации человека благодаря предостав/е- нию и накоплению экспертных знаний;
эффект обучения, обусловленный приобретением пользователем опыта в умственной деятельно сти (например, принятия решений высокого уровня). Подобного опыта без системы пользователь бы не накопил D.
2・ Методологическя ценность. Собственно говоря, разработка экспертных систем — это один из методов
Система при этом не выступает в роли учителя, просто происходит эвристическое обучение самого пользователя за счет предоставления ему новых возможностей.
исследования принципов построения теории эксперт* ных способностей и теории принятия решений.
Примечание. Методологией, как правило, называют цели исследований в некоторой проблемной области, используемые понятия, исследование принципов выводов и структуры проблемной области. Исследование методов исследований также входит в методологию.
Готовые системы в тесном контакте с пользователями, будучи моделью эксперта и специалиста, могут помочь, например, в исследованиях надежности больших систем и исследованиях принципов организации разработок. Понятие «поддержка принятия решений» в смысле применения экспертных систем как альтернатива понятию «поддержка принятия решений» на основе существующих теорий субъективного ожидаемого выбора и теории многовариантного выбора, видимо, способствует расширению теории принятия решений. Кроме того, психологи говорят, что знания, к которым приходит человек через опыт решения задач, становятся знаниями для решения задач. А нельзя ли и это отнести к пользователю экспертной системы, который часть решения задачи возлагает на программу? Утверждают также, что человек, выделяя самое важное для достижения цели, реагирует не только на ситуацию вокруг него, но и на смысл этой ситуации для человека. Таким образом, возникает новая проблема исследований: снижается 』н смысловая чувствительность пользователя экспертной системы, который всего лишь дает ответы на вопросы системы.
Так же, как и в других научных направлениях, в которых особый интерес представляют универсальные законы и преобладает тенденция к накоплению данных экспериментов и наблюдений, в проблемной области психологии мышления, темой исследовании которой является решение задач, главное место занимают задачи со сравнительно строго определенным «правильным решением» типа задач арифметики, эле- ь肥нтарной физики, головоломок. Исследования обработки н использования экспертных знаний в нечетких сложных областях, определение которых также проблематично, имеют недавнюю историю. Исключением
можно считать исследования шахматного мастерства, начатые А. Д. де Гротом.
В настоящее время известно много публикаций об исследованиях в области медицинской диагностики, проектирования программного обеспечения компьютеров, изобразительного искусства и т. д. Все это исследования того, как специалист решает сложные нечеткие задачи, как описать различие между специалистом и начинающим. Однако на вопрос, кто из них может лучше обработать и использовать знания, пока ответа не получено, не считая нескольких намеков.
Как видно из приведенных выше примеров, методологическая ценность готовых систем состоит в том, что они предлагают новые темы и методы р[сследова- ний. Вместе с тем ожидается, что методы извлечения знаний для построения экспертных систем как альтернатива известным разнообразным методам <сполу- чения того, что знает человек» обогатит методологию благодаря совместным применениям всех этих методов.
ИЗВЛЕЧЕНИЕ ЗНАНИЙ
В чем же особенность извлечения знаний для экспертных систем? Ответ можно получить, ответив на другой вопрос: «Откуда, что и как извлекать?». Источниками знаний в общем случае можно счр!тать эксперта, разработчика системы и пользователя. На практике один и тот же человек может играть несколько ролей. Вопрос «Что извлекать и откуда?» трудно отделить от вопроса《Как?》,но для того, чтобы извлечение знаний не было сведено к простой процедуре, прежде всего необходимо ответить на первый вопрос. Ответ на второй вопрос должна дать соответствующая техника, моделирование и планирование всего процесса извлечения знаний.
ОТКУДА ИЗЗЛ^?(АТЬ ЗНАНИЯ!
Источниками знаний для экспертных систем могут бнть учебники, справочники, материалы конкретных исследований в проблемной области и т. п. Кроме того, нередко сами разработчики системы уже имеют
знания в соответствующей области. Хотя классиче* ский источимк знаний——это эксперт в данной области, знания от которого получает разработчик систем, выступающий в роли инженера по знаниям.
Кто же такой эксперт? Это либо специалист в отличие от обычного инженера, либо человек с опытом в отличие от новичка. Как правило, психологов интересует эксперт в последнем смысле.
На сравнительно ранних этапах исследований экспертом считали любого человека. Качественного разл!-1чи51 между новичком и экспертом не предполагалось, просто эксперт знает больше и может рабо- тать лучше и быстрее. Подобное различие может быть обусловлено разницей do времени обучения и занятий по подготовке эксперта, достигающего по продолжительности пяти тысяч часов. Последние десять лет при исследованиях в области психологии мышления чаще Есе「о и эксперту i-i новнчку давали одни и те ?ке задания, а затем сравнивали различия в их реакции. Подразумевалось, что понять особенности эксперта как объекта сравнения на контрастных примерах легче, чем изучать только его выдающиеся способности в конкретной области. В частности, преобладало мнение, что новичок — это тот же эксперт, знания которого не наполнены содер/канием, и выдвигали гипотезу, что эксперт может получиться из новичка, если последнему дать недостающие знания. Сегодня существует аналогичная точка зрения о том, что экспертная система с незаполненной базой знаний—это система-новичок, из нее образуется настоящая экспертная система, если в нее вложить модули- знания, например правила продукций.
Кстати, когда чуть более детально изучали поведение новичка, то стало очевидным, что его особенности качественно отличаются от особенностей эксперта. Есть классический образ поведения новн^ка, который можно выразить тремя словами: торопится выдать решение. Напри мер, когда задана задача по элементарной фмзике, он как можно быстрее наидст подходящую ен вид формулу и, не записывая ее на бумаге, сразу же подставит значения переменных, по возможности в уме произведет вычисление, выдаст
ответ и лишь после этого первый раз напишет на бумаге. Человек нередко может быть новичком в чем-то одном, а в другом подняться выше его уровня: даже при логических выводах он имеет опыт применения прямых и обратных выводов. Но, несмотря на это, часто новичок проявляет себя как псевдоэксперт; например, в процессе рассуждений, когда до решения сложной задачи необходимо добраться через не- сколько шагов, то, выполняя поиск метода, то проводя вычисления, он имитирует, что может найти решение с первого взгляда, что его сложные действия не разбиваются на этапы, что он может все делать словно на одном дыхании н т. д. Такой псевдоэксперт как бы не принимает во внимание то, что он по сути новичок. Это поведение нельзя считать оптимальным с точки зрения обучения решению задач. Следовательно, и новичков можно разделить на тех, кто приобретает опыт именно как новичок, н тех, кто не способен к этому.
Инженер по знаниям н сама экспертная система на этапе извлечения знаний, а также пользователи на этапе внедрения системы находятся в положении новичков. Как показывают исследования экспертов и новичков, более желательно по возможности быть хорошим новичком.
Из^^чение общих особенностей эксперта — это не только одна из возможных целей, к которой следует стремиться в человеко-машинных системах, состоящих из экспертной системы и пользователя, это важно для того, чтобы заранее знать особенности парт- нера, от которого мы будем получать знания.
Известно, что чем выше способности эксперта в проблемной области, тем более он не способен к описанию знаний, используемых им для решения за- дачи. ^Уотерман это назвал парадоксом инженерии знаний. Если спросить у эксперта, что он конкретно делает, решая задачу, то он объяснит наиболее правдоподобный, по его мнению, но совершенно отличный От реального процесс рассуждений, поэтому здесь нужно быть осторожным. Необходимо по возможно- Сти выдвинуть гипотезу о том, что эксперт считает своим процессом рассуждения, и проверить ее каким-
либо способом. Это же относится и к случаю, когда эксперт извлекает собственные знания. По мнению Уотермана, лучше избегать совмещения функций инженера по знаниям и эксперта (совет Уотермана), но разумность этого совета еще не подтверждена.
Существует мнение, что знания эксперта систематизируются вместе с внешней моделью задачи и мгновенно выбираются из памяти в ответ на каждую конкретную ситуацию, и лишь в ситуации, с которой эксперт сталкивается впервые, порядок их выборки будет определяться сознательно по наиболее общим закономерностям. Не всегда можно гарантировать, что поведение эксперта будет именно таким, но если считать это советом для успешного извлечения знаний, то в такой гарантии нет необходимости. Если данное мнение верное, то не будет ли легче извлекать общие закономерности!, ставя каждый раз эксперта в сравнительно новую ситуацию? Этот новый совет появился экспромтом, остается только проверить его эффективность на практике.
Эксперт, как правило, может точно указать, что находится в центре его внимания, но не даст разумного объяснения действия этого центра на процесс рассуждений, а когда его спрашивают, о чем он думал, он не может дать точного ответа. Существуют заметные йндиви дуальные различия способностей человека к так называемому самонаблюдению, когда он следит и анализирует собственный процесс мышления, причем эта способность совсем не зависит от того, является ли он экспертом.
Разумеется, пользователь, как и эксперт, также важный источник знаний. Понятие《пользователь» на самом деле достаточно нечеткое: оператор системы, исполнитель, получатель — все они пользователи в широком смысле слова. Однако их обязанности носят разлниннй характер, поэтому по сути их следовало бы изучать по отдельности. А пока временно ограничимся людьми, которые благодаря непосредственному общению с экспертной системой демонстрируют способности, аналогичные способностям эксперта.
Для того чтобы экспертные системы не остались в лабораториях, а использовались на промышленных
предприятиях, необходимо получить от пользователей ответы на разнообразные вопросы об эффективности, удобстве пользования и т. п.
В заключение хотелось бы напомнить общеизвесТ' ное: интерфейс в смысле хорошего понимания действий системы и легкости операцрш ——очень важный элемент системы; многие системы оснащены функциями объяснения своих действий, в некоторых системах коды, связанные с рштерфейсом пользователя,— это свыше 60 % всех кодов программ. Тем не менее условия повышения эффективности интерфейса как проблемы принятия решений прн разработке системы еще в полной мере не изучены. Инженеру по знаниям необходимо в кратчайший срок уточнить гипотезы о будущем пользователе.
ЧТО ИЗВЛЕКАТЬ!
Независимо от выбранных методов извлечения знаний специалисты по построению экспертных систем будут переносить в них знания, надеясь получить их от экспертов. Если функции системы уже определены, то, естественно, самое важное—получить правила выво^ дов, которые необходимы для реализации этих функций. Остановимся на этом подробнее.
Базовая структура. Очень важно перечислить объекты, понятия и атрибуты, которые формируют базовую структуру проблемной области, и знать свой- ства области. Связь между объектами, понятиями и атрибутами организуется через правила вывода. Сле- Аоватв^ьно, адресуя эксперту вопросы о том, что должна советовать система, какие блоки образуют систему и из каких блоков состоят эти блоки, можно уточнить язык описания правил, например, подобных правилам, встроенным в систему ЕМ寸CIN.
Критерии разумности. Почему эксперт решает некоторую проблему именно данным способом? Может 6』ть, этот способ имеет высок^^ю эвристическую цен^ кпсть, а может, подготовлен на случай неудачи? Ка- кая зтому способу необходима поддержка?
Средства, используемые экспертом. Гипнограммы, используемые экспертом по расстройствам сна, модели принятия решений^ используемые экспертом по принятию решений, и т. п.——все это средства, которые доступны только экспертам, они являются как бы продолжением рук экспертов. Одна из целей реализации экспертных систем — облегчить применение таких средств неспециалистам, поэтому желательно получить от экспертов знания по их использованию.
Но это, естественно, еще не все знания, которые необходимо извлекать, здесь не упомянуты знания и правила выводов, которые непосредственно помещаются в базу знаний системы. Более детальное обсуждение хотелось бы продолжить в книге о методологии построения экспертных систем.
КАК ИЗВЛЕКАТЬ ЗНАНИЯ!
В литературе по построению экспертных систем обсуждаются методы извлечения знаний, которые подчеркивают преимущества выбора того или иного подхода к разработке системы. Ознакомимся с тремя подходами; долговременная рабочая группа, оперативное создание прототипа и подход «особое внимание анализу знаний», и рассмотрим кратко один из современных методов извлечения знаний, используемых в проекте ESPRIT, известного как европейский Проект создания компьютеров пятого поколения.
Долговременная рабочая группа. Эксперты и инженеры по знаниям организуют долговременную группу с целью совместного создания моделей и программ решения задач. Можно ли это назвать специфичным подходом? Во всяком случае, именно так создано несколько уникальных программ: INTER, NIST, PROSPECTOR и др.
Оперативное создание прототипа. При этом подходе образуется инициативная группа экспертов, и после того, как инженеры по знаниям усваивают первоначальные знания о проблемной области, зко пертов подробно расспрашивают и в сжатые сроки завершают разработку программы, которая считается прототипом. Затем в основном ведутся работы по
оценке и модификации полученной экспертной снсто мы. При этом подходе, если можно так сказать, создается эскиз системы, и при необходимости иногда приходится отказываться от всего. Прототип разрабатывается как своего рода полигон для того, чтобы вызвать у экспертов достаточный интерес и знтузназм к построению экспертной системы, поэтому этим подходом не следует слишком увлекаться.
Особое внимание анализу знаний. В основе этого подхода лежит по возможности подробный предвари* тельный анализ знаний и методов решения задач в проблемной области. За проектирование и реалнза- цию системы принимаются только после всестороннего анализа знаний.
Цель анализа состоит в уменьшении риска и затрат на построение экспертной системы. Подробно указать функции системы трудно, если не принимать во внимание идеи проектирования и реализации, поэтому с целью подтверждения возможности, полезности и реализуемости системы собирают информацию для уточнения ограничений при принятии важных проектных решений, не Создавая какую-либо прото- типную систему. Такие решения связаны, например, с глубиной и формой представления знаний.
Еще один стимул к серьезному анализу знаний связан с тем, что, как правило, очень трудно заинтересовать экспертов на долгое время. Если заранее собрать и проанализировать важнейшую информа* цию, то зачастую можно принять решение о нроектн* ровании и реализации на основе собранной информации, уже не поддерживая связи с экспертами.
Все эти подходы взаимно не противоречат друг другу, но отличаются расстановкой акцентов. В на* стоящее время трудно дать ответ на вопрос, какой подход является оптимальным. Однако по мере технического совершенствования и распространения экспертных систем изменятся критерии для сравнения подходов, и, не исключено, что границы для их классификации и выбора станут нечеткими. Тем не менее уже сегодня, исходя из здравого смысла, видны слабости таких подходов, как оперативное создание прототипа и методов постепенной разработки. Давайте
несколько подробно остановимся на подходе «особое внимание анализу знаний», предложив конкретный план его реализации. Для того чтобы компенсировать недостаток теоретической базы, упомянутый в начале этой главы, будем считать, что пока нам не понадобятся специальные знания, знания, использование которых впоследствии мо》кет быть пересмотрено, и извлечение знаний как один из конкретных этапов разработки.
Процесс анализа знаний удобно разбить на два больших этапа. Цель первого этапа — определение ролей, которые будут играть- проектируемая экспертная снстема и пользователь. Следовательно, здесь необходимо провести анализ проблемной области, определить решаемые задачи и собрать информацию о ра- бочей среде экспертов и экспертной системы.
Цель второго этапа ■— подробное указание работ, которые должна выполнять экспертная система при условии, что определены функции человеко-машинной системы, состоящей из самой системы и пользователя. В эти указания включают также знания для реализации экспертных способностей и правила логических выводов.
После завершения определения функций создают так называемую интерпретационную модель, предназначенную для интерпретации данных, полученных при извлечении знаний. Теперь уже можно описывать в терминах интерпретационной модели информацию от экспертов и других источников.
ТЕХНИКА ИЗВЛЕЧЕНИЯ ЗНАНИЙ
Технику извлечения знаний можно разделить на шесть основных классов: опрос с наводящими вопросами, структурированный опрос, самонаблюдение, са- моотчет, диалог, критический обзор. Каждый класс в свою очередь состоит из нескольких технических ме“ тодов, но подробную классификацию опустим и укажем только, что цель извлечения знаний может быть достигнута различными способами в зависимости от того, как эти знания будут анализироваться.
Опрос с наводящими вопросами. Это метод, наиболее близкий к традиционному диалогу. Главное от- личие в том, что инициатива в этом опросе принадлежит одному из партнеров, который и подготавливает предварительно тему разговора. Основные структурные элементы опроса ——предложение темы и поиск информации.
Цели. Ключевыми считаются вопросы, ответ на которые дать сравнительно просто, поэтому можно привести следующие примеры информации, которую можно извлечь:
——фактические знания, которые не систематически описаны в литературе;
—типы задач, решаемых экспертом, и особенности проблемной области;
—способности, которые может проявить эксперт в проблемной области;
——объекты и посредники действий эксперта в его рабочей среде;
—характеристика людей, получающих помощь эксперта, и т. п.
Начальные условия. Необходимые условия для проведения опроса такого рода не очень жесткие, поэтому они соответствуют первому этапу извлечения знаний. Главное условие ——достаточный терминологический запас у ведущего опрос, другими словами, эксперт должен более или менее понимать, о чем идет речь.
Возможное управление. Ведущий опрос может в какой-то степени управлять извлечением знаний, используя заданную последовательность выбора тем. Кроме того, можно применять различную технику «зондированиях* в диалоге для получения информации.
Структурированный опрос. В опросе с наводящими вопросами инженер по знаниям использовал вопросы только в целях «зондирования», а здесь с помощью заранее подготовленных разнообразных вопросов он узнает о каких-либо понятиях и моделях, или, говоря образно, о корнях и листьях. Вопросы об ожидаемом влиянии, достоверности, просьбы об объяснении, при*
меры и контрпримеры — все это может стать очень полезным для глубокого прослеживания структуры понятий. Однако есть риск, что эксперт будет отвечать не думая.
Начальные условия. Условия проведения структурированного опроса более жесткие, чем опроса с наводящими вопросами. Инженер по знаниям должен хорошо владеть терминологией, используемой экспертами, а если уже просит разъяснений, то должен их понимать. Техника опроса также должна быть лове- дена до определенного уровня, а эксперту необходимо быть готовым к ответам даже на неприятные вопросы.
Цели. Подробно обсуждаются следзчощие вопросы:
——структура нескольких понятий;
—содержание и функции моделей решения задач;
—разумность, обоснованность, причины выбора действий экспертом и т. п.
Самонаблюдение. Эксперта просят говорить все, что приходит, ему в голову, о том, какую задачу он решает и как он это делает. Это своего рода размышления вслух, хотя эксперт вряд ли будет делать это при решении задач на практике.
Цели. Извлекается следующая информация:
—описание в общих чертах стратегии, которой, по мнению эксперта, он придерживается при решении некоторой задачи;
——рассуждения о разумности решений и идей, появившихся в процессе логических выводов;
—общая информация о типе знаний, которые, как считает эксперт, он мспольз)ует в процессе решения задачи.
Начальные условия. Не должно быть препятствий для размышления вслух.
Самоотчет. Это так называемые ортодоксальные рассуждения вслух, когда одновременно с выполнением некоторой работы эксперт самому себе дает отчет о том, что он делает и что думает. Этот процесс не требует пояснений, не нужно до!1скиваться до при* 4;;н и определять разумность действий.
Цели:
~ выясняется/ где и для чего эксперт использует специальные знания в процессе решения задачи;
—уточняются подробности стратегии решения задач и управления выводами;
—получаются критерии и материалы для оценки готовой экспертной системы;
—определяется, из каких шагов состоит процесс решения задачи.
Начальные условия:
—инженер по знаниям должен понимать, до ка、 кого момента он не смог повторить решение задачи эксперта;
—необходимо создать условия для успешного решения типичных задач экспертом;
—эксперт должен привыкнуть к рассуждению вслух;
—эксперту должна быть понятна необходимость сбора данных самоотчета до тех пор, пока не будет получена более четкая информация.
Диалог. Нередко служба консультаций, созданная при вычислительном центре, не понимая важности своей работы, отсылает задающего вопросы к справочникам. Опытный консультант, сам выдвинув несколько гипотез о полученной задаче, задает пришедшему на консультацию наводящие вопросы и дает советы. Он может также вносить поправки в пояснительные схемы, которые рисует неспециалист, и даже давать готовые решения, но в терминах, понятных неспециалисту.
Консультант, мысленно разобравшись с задачей, не думает решать ее вместо своего собеседника. Он поддерживает с ним разговор, дает советы и помогает ему самому решить задачу.
Экспертные способности по существу и демонстрируются в процессе диалога с неспециалистом. Любая консультация — это обмен информацией между экспертом и неспециалистом. Для получения инфор- ^ации о процессе совместного решения задачи недостаточно одного лишь опроса эксперта или его само- 01,чета)п口兄 этого предназначен метод непосредствен-.
ЛАетоцы и проблемы извлечения знаний 87 кого наблюдения и регистрации основных моментов диалога.
Добавим к этому, что необходимым условием удобного интерфейса между создаваемой экспертной системой и пользователем является возможность делать выводы на основе информации, полученной из наблюдений за диалогом. Заметна тенденция вначале создавать систему решения задач (ядро экспертной системы), а уже потом добавлять к ней человеко-машинный интерфейс, хотя во многих системах, внед- ряемых на предприятиях, например в системе финансовых расчетов, большая часть усовершенствований по просьбе пользователей касается именно ввода-вывода, а правильность сопутствующих вычислений почти всегда считается очевидной.
Инженер по знаниям либо непосредственно ведет запись диалога эксперта с неспециалистом, либо сам выступает в роли неспециалиста.
Критический обзор. Обычно критический обзор используется для извлечения так называемых метазнаний—это повторное изучение знаний, извлеченных другими методам”, совместно с экспертом ——источником информации. При этом нередко заполняются пробелы в уже извлеченных знаниях, случается, что ставится под сомнение качество извлечения знаний. План критической оценки и совершенствования прототипа системы с участием экспертов в этом смысле также можно назвать разновидностью критического обзора.
3.6. ЗАКЛЮЧЕНИЕ
В этой главе рассмотрена работа по извлечению зна、 нин как первого этапа построения экспертных систем. Для извлечения знаний необходимо учиться не только экспертной системе. Инженер по знаниям также должен учиться у эксперта или с помощью других источников информации, имея дело с новой проблемной областью. Поэтому извлечение знаний можно назвать учебной деятельностью инженера по знаниям. Проблема извлечении знаний, следовательно,
сводится к тому, как эффективно реализовать такое обучение.
Общепризнанного решения поставленной здесь проблемы пока не существует. Однако одно то, что мы правильно понимаем эту проблему, уже первый шаг к ее решению. Приобретение знаний — еще очень молодая область исследований, можно сказать, она находится в положении новичка. Автор считает, что сегодня валено понимать эту проблему именно как проблему, а не становиться пссвдоэкспертом.
ГЛАВА 4.
ПРИОБРЕТЕНИЕ ЗНАНИЙИ ОБУЧЕНИЕ В ДИАЛОГЕ
С. Оцуки (Университет Кюсю)
Рассмотрим, какую роль в процессе приобретения знаний и обучения играет диалог между интеллектуальной инфоргу!ационпой системой и человеком из внешнего мира.
Прежде всего, введем мультииерархическую модель как структуру знаний, необходимую для представления технически и лингвистически допустимого диалога, и обсудил! связь этой модели с внешним, в частности естественным, языком. Далее объясним технику диалога на естественном языке. Укажем также методы представления диалога на естественном языке, основанные на введении в мультииерар:кпче- скую модель грамматики определенных предложений К основанной на понятии падежа Филмора ы мирах с предысторией Хомского.
В заключение изучим смысл приобретения знаний в диалоге и рассмотрим процесс обучения в диалоге на примере построения модели пользователя.
ПРЕДСТАВЛЕНИЕ ЗНАНИЙДЛЯ ДИАЛОГА
Исследуем, при каком представлении знаний можно уменьшить неестественность, скованность человека и построить как технически, так и лингвистически правильную систему.
ВВЕДЕНИЕ МУЛЫИИЕРАРХИЧЕСКОЙМОДЕЛИ
Описать знания для диалога, как правило, очепь трудно. Если задаться целью, чтобы машина понима-
п Здесь слово «определенные» имеет смысл 《поданнхюиннЕЯ правилам Хорна», поэтому иногда соответствующие предло:-ье- них называют хормовскнми предложелЕЯМи.——Прим, порее.
ла предложения на естественном языке, сказанные нами в обычной разговорной манере, то очевидно, придется подготовить в виде знаний самые неожиданные факты, правила, результаты вычислений и т. п. Например, для понимания простого диалога: «К какому микрокомпьютеру можно подключить этот принтер?»—《К этому».— «А он печатает в цвете?》一 «Да»,— необходимо иметь технические знания о микрокомпьютерах и принтерах, а также лингвистические знания о местоимениях «этот», «он», о том, на что указывают опущенные слова, необходимо также уметь пользоваться этими знаниями.
Для понимания этого диалога достаточно представить такие технические знания: можно передавать информацию между данным микрокомпьютером и принтером; существуют два типа принтера: с обычной и цветной печатью; микрокомпьютер обладает функцией указания цвета. Однако как быть, если мы продолжим серию вопросов: «Этот микрокомпьютер можно подключить к большой ЭВМ?», «Можно лн вое- пользоваться общедоступными каналами связи?», «Поставляется ли программное обеспечение для текстового процессора?», «Где продается программное обеспечение?» и т. д. Здесь уже необходимо позаботиться о том, чтобы сменить тему разговора на «большие ЭВМ》, «общедоступные каналн связи», т. е. на темы, которые не имеют смысла в среде микрокомпьютеров, а также связать с главной темой разговора знания, которые нельзя обработать в среде технических знаний, но которые нужны для ответов на два последних вопроса.
L Уточнение предметной области. По мере продолжения подобного разговора среда необходимых знаний постепенно расширяется. Однако при организации знаний в рамках технической системы, естественно, придется ограничиться лишь знаниями в определенной среде. Например, необходимы знания об аппарат- ннх средствах и программном обеспечении микрокомпьютеров, о способах их использования. Кроме это- г。,видимо, следует ввести косвенные знания, связан- нне с микрокомпьютерами: знания о сети, знания об
I (риоЬретение званий и обучение в диэлогв £1 аппаратуре, подключаемой к микрокомпьютерам, знания о производстве, 'сбыте и обслуживании и т. п. Таким образом, предметной областью будем называть область в некоторой среде, технические знания в которой мы хотим представить. Если такая область определена, то содержание знаний уже достаточно строго ограничено, но необходимо еще решать, какую форму представления выбрать. Дело в том, что представление знаний зависит от того, для чего и как они будут использоваться.
Для чего используются знания? Большая часть интеллектуальных систем в настоящее время использует знания в следующих пяти целях. Во-первых, для помощи в понимании и интерпретации фактов- Пример — все вопросы о микрокомпьютерах, приведенные выше. В эту категорию входят различные консультационные системы и системы запросов в базы данных. Во-вторых, для решения задач. В этом случае центральной проблемой является поиск метода, удовлетворяющего заданным условиям, п определение плана решения. В эту категорию входят также системы планирования. В-третьих, для идентификации источника и причины. Это связано с проблемами идентификации источника несовместимости вновь полученных знаний с уже существующими, проблемами идентификации причины получения или неполучения решения в системах второй категории п другими проблемами. В-четвертых, для составлення вопросов н ответов самой системой. Например, системе необходимо спросить о недостающих условиях в случае, когда подтверждается, что неудача в решении задачи возникла вследствие неполноты заданных условий. Кроме того, в обучающих системах, например с и сте- мах компьютерного обучения, после идентификации ошибки ученика с целью подтверждения, понимает ли он данную тему, необходимо составить и предложить ему задачу, в которой представлен источник ошибки. В-пятых, для усвоения новых знаний, исправления противоречивых знаний и систематизации избыточных знаний.
Для первой цели свойства, правила, отношения между разнообразными фактами, входящие в область можно описать с помощью семантической сети, фрей- мов, продукционных правил, логики или другими способами представления знаний. Но уже для решения задач (вторая цель) необходимо наделить сами знания функциями построения пространства поиска и выводов, отвечающих задаче, т. е. функциями моде* лирования процесса решения. Это можно сделать пу・ тем представления знаний как отношений между целью и промежуточными целями. Для идентификации причин и ошибок (третья и четвертая цели) и составления задач с использованием результатов идентифлкации необходимо иметь метазнания, чтобы интерпретировать процесс поиска решения. Метазнания необходимы также для хранения и обработки знаний (пятая цель).
Структурирование знаний. Знания удобно по возможности описывать по модульному принципу. Однако модульные знания должны правильно отражать структуру объектной области в целом и отвечать поставленной цели. Один из предложенных методов описания ——иерархическая модель миров. С помощью такого метода определяется структура миров (миром в этой модели называется модуль), обусловленная отношениями понятий, типичных для каждого мира. Например, систему консультаций, по микрокомпьютерам, упомянутую выше, можно представить в виде иерархической модели миров, указанной на рис. 4.1. Достоинства этого метода заключаются в следующем. Во-первых, есть возможность наследовать знания из миров верхних уровней. Во-вторых, можно сузить класс объектов поиска, ограничившись только центральными тематическими мирами со знаниями, которые будут объектами при логических выводах, и мирами верхнего уровня, из которых первые миры на- слгдуют знания. В-третьих, по мере раскрытия темы мнрн объектов выводов будут сменять друг друга, поэтому раскрытие темы можно представить через слежение за мирами. В-четвертых, благодаря указа- нею множества отношений между мирами можно и。;
строить структуру миров, отвечающую различным целям, рассмотренным в п. 2. Например, стрелки на рис. 4.1 в модели миров, отвечающей первой из доставленных целей, обозначают такие отношения между мирами, как IS-А (это есть), PART-OF (является частью), MEMBER-OF (является элементом). В системе решения задач помимо этих трех отношений необходимо представить в виде моделей отношения с мирами сопутствующих знаний. Например, для решения задач по механике необходимо установить отношения с мирами математики как сопутствующими знаниями, а для составления и понимания программ необходимо в качестве сопутствующих знаний иметь миры математических и логических формул. На рис, 4.2 показана соответствующая модель миров. Одинарные стрелки означают такие же отношения, как на рис. 4.J, а двойные—отношения между со-
Рис. 4.1. Мультинерархическле миры в системе-консультанте по 'микрокомпьютерам.
путствующпми знаниями, необходимыми ннн задач.путствующпми знаниями, необходимыми ннн задач.при реше-при реше-
путствующпми знаниями, необходимыми ннн задач.
путствующпми знаниями, необходимыми ннн задач.
при реше-
при реше-
Интерфейс с внешним миром. Внешний мир ——это мир пользователей системы, или, другими словами, мнр, в котором мы ;клвем. Использование терминов, близких^ к терминам, принятым во внешнем мире, не только удобно пользователям при общении е систе* мой, но и способствует реальному представлению предметной области. Но для этого необходимо преобразование между внешним (естественным языком, изображением н т. п.) п внутренним (язык представления знаний) языками. Как сказано выше, если внутренние знания правильно отражают и представ-
Область понятий . | Область языка
Рнс, 43 Мультинерархическая модель.
ляют в виде мидеи1еГ1 структуры внешней предметной области, то можно считать, что результат разбиения на модули в иерархических мирах согласован с семантической структурой внешнего языка. Кроме того, диалог с внешним миром ведется только в мирах, связанных с темой диалога. Следовательно, если интерфейс представить в виде модели миров, однозначно соответствующих иерархическим мирам, так, как на рис. 4,3, то при удачном соответствии можно получить массу удобств в случае использования естественного языка в качестве внешнего языка системы, о чем еще будет идти речь далее. Модель на рис. 4.3 называется мультииерархической моделью (МИМ), блок интерфейса — областью языка, а блок внутренних знаний — областью понятий.
Х ЛОГИЧЕСКИЕ ЯЗЫКИИ МУЛЬТИИЕРАРХИЧЕСКАЯ МОДЕЛЬ
Для описания такой м)гльтииерархической модели по следующим пяти причинам удобно выбрать логический язык и, в частности, язык Пролог.
'Логические языки по своему назначению — это языки для моделирования процесса логических выводов человека, поэтому они дают более естественное представление знаний, чем другие языки программирования.
Логические языки представляют тезисы, выраженные на естественном языке, в виде высказываний логики предикатов первого порядка, поэтому они обеспечивают лучшую согласованность с естественными языками, нежели другие языки.
Представление высказываний просто и у ни фи* цировано, поэтому в одном и том же формате можно описывать знания, определенные внутри миров, знания, формирующие структуру миров, н метазнания, использующие в качестве объектов знания в высказываниях. А это означает, что логические языки имеют гибкую структуру как языки описания знаний,
В настоящее время легко приобрести систему обработки Пролог (если ограничиться только правил лами Хорна), причем ее может освоить каждый.
Пролог имеет мощный механизм обратных вы-
водов, называемый отождествлением, поэтому зна- ния, описанные на Прологе, уже оснащены функциями моделирования процессов; обеспечивается не только дедукция, но и индукция, импликация, аналогия и другие выводы.
Достоинства Пролога — вот причина его успешного использования в настоящее время как языка описания знаний, несмотря на некоторые его недостатки, скажем, низкую эффективность процедуры перебора С возвратами. Во всех примерах в этой главе используется Пролог. Имена, начинающиеся со знака *,―■ это переменные, в квадратных скобках указываются списки.
4Л.З. СМЫСЛ МУЛЫИИЕРА.РХИЧ6СКОЙ МОДЕЛИ
Естественные языки и мулыииерархическая модель. В области понятий мультииерархической модели на языке Пролог описываются факты и действия, правила и отношения между фактами, подробное содержание правил и действий для их реализации и т. п.
Например, в мире применения пишущих машинок системы консультации по микрокомпьютерам знание «для установки бумаги в пишущую машинку TW-38 необходимо взять бумагу, откинуть рычаг вперед, отрегулировать ограничители в соответствии с шириной бумаги и вставить бумагу》
можно описать в виде следующего предложения Пролога:
как (установить(--«агент, бумага, TW-38), (взять(^агент, бумага), откинуть(*агент, рычаг, вперед), отрегулнровать(^ агент, ограничители, ширина-бумаги, РУка),
вставить(+агеит, бумага, в, каретка)))
гагеит указывает человека, устанавливающего бумагу, это переменная, следовательно, при таком способе описания можно заменять действующее лицо, 《Как》——это предикат с аргументами-предикатами.
Имена и обозначения предикатов в предложении Пролога будем называть понятиями. В данном при- мере понятиями являются: как (^-действие, «-метод).
установить (патент, -^объект, вместо), бумага, TW-38, взять (*агент, -х-объект), откинуть (патент, «объект^ ^■направление), рычаг, вперед, отрегулировать («-агент, «■объект, *цель, ^-инструмент), ограничители, ширина- бумаги, рука, вставить(心агент, ^-объект, «-отношение, «место), в, каретка.
Область языка ——это блок для выполнения взаимных преобразований между понятиями из области понятий и естественным языком, поэтому здесь необходимы две функции: функция преобразования между понятиями и семантикой естественного языка и функция либо синтеза предложений из простых слов в соответствии с гра?лматикой естественного языка, либо разбора предложений. Мир грамматики на верхнем уровне области языка на рис. 4.3 включает грамматические знания, необходимые для синтеза или разбора предложений, и знания о словах, совместно используемых во всех мирах: например, предлоги английского языка, большая часть служебных слов, вспомогательных глаголов и прилагательных японского языка и другие грамматические формы. Миры области языка, расположенные ниже мира грамматики, представляют собой блоки преобразования слов и понятий/ т. е. это миры словаря. Разделение словаря в соответствии с мирами объектов имеет следующие достоинства.
Можно сократить. число объектов словаря до уровня числа объектов области понятий, что обеспечивает хорошую эффективность обработки.
Как показано на рис. 4.4, в области объектов семантический диапазон многозначных слов ограничен, поэтому легко идентифицировать их смысл. Например, фрейм в мире представления знаний означает модель фрейма Минского, в мире обучения с помощью компьютеров — модель обучения с последовательным выводом кадров на дисплей, в мирз строительной механики — каркас
Как показано на рис. 4.5, синонимы (параметры и аргументы) могут определяться парами, что исключает неверное понимание.
d Frame (англ.)—фрейм, кадр, каркас.— 〃卩нм персе.
4 С. Осуга, Ю, Свэки
слов с помощью компьютерногослов с помощью компьютерного
слов с помощью компьютерного
слов с помощью компьютерного
Рнс. 4“ И дентифн к а ци я смысла многозначных мультииерархической модели. СКО — система обучения.
Рис.
xx^^^s^^^ d=s
Kdpgouowd-5
В области языка необходимо строить несколько уровней для каждого используемого естественного языка, а область понятий должна быть описана так, чтобы ее можно было использовать совместно несколькими языками. Например, уже упоминавшаяся система консультаций по микрокомпьютерам в качестве внешнего языка может использовать английский нли японский язык, но обрабатывает одни и те же знания в области объектов.
Грамматический мир в области языка можно описать один раз и использовать во всех интеллектуальных системах, а область понятий и словарные миры составляются с учетом области объектов и конкретных знаний, определенных в зависимости от целей обработки, рассмотренных в разд. 4,1.1.
Рисунки и мультииерархическая модель. Рис. 4.6 — пример взаимосвязи между рисунками, терминами, которые придают смысл этим рисункам, н мульти- иерархической моделью. Преимущества и неудобства хранения рисунков в области языка заключаются в следующем.
В области понятий можно полностью описать отношения между целым и частями, порядок и взаимное расположение деталей при сборке изделия, метод сборки и другие знания. Следовательно, рисунки удобно использовать при указании пользователю конкретных образов.
Диалог об указанном рисунке ведется на естественном языке. Этот язык и рисунки имеют взаимно однозначное соответствие благодаря понятиям (рис. 4.6,8), поэтому можно легко описывать знания о рисунке, о котором идет речь.
Иерархическая реализация сложных чертежей н подробных графических данных в крупных системах, говоря откровенно, еще далека до совершенства, следовательно, на практике, видимо, можно ограничить^ ся системами, в которых можно эффективно но пользовать лишь простые рисунки, связав их с Диа* логом на естественном языке, например, так, как в справочных системах ил и в системах компьютерного обучение.
Экран А
Конфигурация
Название
Обозначение
Название
обозиаченив
Компьютер
Дисплей
Телетайп
Knaewyg
Принтер
.(Память, блок питания, выключатели, микропроцессор. Интерфейс) -
О
ЖесткиИ диск
Гибкий диск
МаГЖПНЫФ пентм
Мышь
О 回 Q
б
Рис. 4.6. а ——дерево редактирования для отобра^кения любого блока из рис. 4*7. В узлах дерева на каждом экране находятся знания об относительных координатах, коэффициенте увеличения, цвете и т. и.; 6 ——основной экран для рис. 4.7. Рисунки располагаются и отображаются в соответствии с деревом ре^ дактнрования на рис. 4.6, а; в — взаимосвязь между мирами-рисунками, мирами словаря и мирами понятий в мулыниерархи- ческой модели.
4. В современных версиях Пролога нельзя обрабатывать рисунки, поэтому необходимо ввести в си- стему обработки Пролога какие-либо средства или добавить блоки обработки рисунков. Это один из недостатков Пролога как языка обработки знаний.
42 МЕТОДЫ ДИАЛОГА
Рассмотрим методы описания знаний на языке Про лог в области языка мультииерархической модели.
ВНЕШНИЕ И ВНУТРЕННИЕ ЯЗЫКИ
Обычно для передачи мыслей мы используем различные средства. Естественный язык ——наиболее типичное из них, хотя мы пользуемся также рисункам и, кодами и т. д. Для передачи математических понятий используем математические и логические формулы, для передачи алгоритмов ——языки программирования, блок-схемы, диаграммы анализа задач D и другие средства. Все это можно считать внешними языками, ниже в качестве внешних языков мы рассмотрим естественный язык, математические п логические формулы и языки программирования.
' Среди последних математические и логические формулы, а также языки программирования имеют общее свойство — они согласованы семантически с компьютерами, поэтому не подумайте, что проблема построения интерфейса с мультниерархнческой моделью состоит в преобразовании формул и программ как внешнего языка в машинный язык, определяю^ щий семантику компьютера. Цель обработки формул п программ в инженерии знаний заключается в выполнен ни того, что недостижимо путем непосредственных вычислений, записанных на существующих процедурных языках, в частности в автоматическом синтезе программ, в идентификации ошибок в программах, в понимании программ, т. е. в помощи человеку. Все это в инженерии знаний реализуется с использованием механизма выводов так, как это делает сам человек. Следовательно, математические н логические формулы и языки программирования также необходимо преобразовывать во внутреннее представление, удобное для получения выводов.
С рисунками будем иметь дело только в случае, когда объективно смысл их очевиден. Например, в структурной схеме компьютерной системы на рис. 4.7 объективно определен смысл каждого обозначения,
"Разновидность блок-схем, разработанных в Японии (Ни- мура и др.) для языка Паскаль. См. Микрокомпьютеры. Сира- верное руководство/Под ред. С. Ватаиабэ и др. — М.: Мир. 1990. — Прим, иерее,
поэтому такую схему можно обрабатывать как внешний язык, но все то, смысл чего объективно механически не определен, скажем, пейзажи, абстрактные картины, мы исключим из категории внешних языков.
Естественный язык—наиболее важный из внеш' них языков. В согласованности естественного языка и области понятий, образно говоря, заключена жизнь или смерть диалоговой системы. Ответственность за это несет представление знаний в области языка.
Следуя понятию падежа Филмора, все глаголы образуют предложения, изменяясь по типам и падежам. Рассмотрим, например, глагол break (разбивать) .
рис> 4.7. Конфигурация микрокомпьютера.
-① The window broke. Окно разбито.
A hammer broke the window. Окно разбито молотком.
@ John broke the window with a hammer* Джон разбил окно молотком.
С точки зрения поверхностной (грамматической), структуры эти три предложения имеют различные подлежащие и дополнения, но с точки зрения глубинной (семантической) структуры их можно унифицировать в следующем виде:、
@ Разбивать({агент}, объект, {инструмент}).
Запись ④ показывает, что глагол «разбивать» обязательно сопровождается дополнением, т, е. объ^ ектом, который разбивают, а агентивный падеж, т. е. тот, кто разбивает, и инструментальный падеж, т. е. то, чем разбивают, в предложении могут быть или не быть. Для машинного преобразования предложений ①一③ в виде ④ необходимо учитывать предысторию выбора, введенную Хомским, Например, для гла^ гола «разбивать» предысторией выбора называют следующие свойства: агентивный падеж этого глагола ограничивается словами с предысторией «одушевлен- ный»^ объективный падеж — словами с предысторией «хрупкий», а инструментальный падеж ——словами с предысторией «твердый».
Если сказанное выше представить на Прологе, то получим
Раз6нвать(*агент, *объект, «инструмент)
<-не(переменная(+объект), с-внд(*а「ент, одушевленный), с-вид(*объект, хрупкий), с-внд(*инструмент, твердый).
С-вид ——это предикат, обозначающий предысторию выбора I). Если помимо предысторий выбора, общих для всех миров, типа одушевленный, хрупкий, твер- дый, можно было бы определять предыстории, специфичные для каждого мира, то это способствовало бы пониманию смысла. Например, в мире руководства ло микрокомпьютеру удобно определить в качестве предыстории выбора команды и параметры. Для пред-
D «С» от слова «существительное». — Прим.碇“仇
Приобретение знаний и обучение в диалог© [С5 ложений ①——③ необходимы следующие предыстории выбора:
с-вид(окио, хрупкое), с-вид(молоток, твердый).
с-вид(Джон, одушевленный).
Вот как нх mojkho использовать: несмотря на то, что в поверхностной структуре предложения ① окно является подлежащим, из того, что нет дополнения и что предыстория выбора дает нам свойство《хрупкое», мы заключаем, что окно — это объектный падеж. Точно так же преобразуем предложения ①—® в предикаты ⑤一⑦.
Разбивать(^агент, окно, ^инструмент)
Разбивать(*агент, окно, молоток)
Разбивать(Джон, окно, молоток)
Из предиката ⑤ ясно, что разбито окно, но ничего не говорится о том, кто это сделал и чем. В ⑦ представлена законченная сцена: Джон разбил окно молотком. В ⑥ акцентируется то, что окно разбито молотком.
В подобной ситуации совершенно безразлично, ка- -ким будет внешний язык ——английским или японским. Другими словами, это представление не зависит от вида внешнего языка. Таким образом, предикат ④ определяет понятие «разбивать». Далее мы рассмотрим способы машинного преобразования между естественным языком и понятиями, способы машинной идентификации смысловых атрибутов типа времени и образа действия и смысловую идентификацию предложений на естественном языке.
Вернемся еще раз к предикату с-вид ^экземпляр, ^имя-мира). Миры с именами ^:имя-мира фактически являются отдельным и мирами в области понятий, з них описаны знания с общей предысторией набора, а ^экземпляр, как экземпляр таких миров, наследует их свойства, но, как указано выше, в техническую систему с ограниченной областью объектов невозможно включить все миры предыстории выбора. Следовательно, предикат с-вид будем использовать как специальный предикат в области языкя.
ПРЕОБРАЗОВАНИЕ ВНЕШНЕГО ЯЗЫКАПРЕДСТАВЛЕНИЯ ЗНАНИЙ
Перейра и Уоррен с помощью Пролога формализовали способ преобразования двух языков с различны^ мн поверхностными структурами. Этот способ назьь вается грамматикой определенных предложений (ГОП), в принципе математические и логические фор- мулы, а также языки программирования можно опи^ сать и с использованием форм Бекуса — Наура (БНФ) (или контекстно-свободной грамматики (КСГ)), но языки с правилами, зависящими от кон^ текста, и грамматикой с ограничивающими условиями, какими являются естественные языки, можно обработать только с помощью методов, аналогичных ГОП. В статье Перенры и Уоррена " приведены примеры преобразования между предложениями естественного языка и деревом грамматического разбора, а также преобразования между естественным языком и нормальной формой логики предикатов первого порядка. Ниже прежде всего опишем ГОП на примере преобра- зования предложения естественного языка в дерево грамматического разбора и обратно. Затем для того, чтобы мы могли оперировать с представлением знаний в области понятий, введенной в предыдущем раз- деле, как с глубинной структурой естественного языка, опишем метод преобразования между понятиями и предложениями английского языка.
Рассмотрим представление с помощью ГОП подмножества английского языка, представленного на рис. 4.8. На каждом этапе разбора предложения сле・ ва-направо участвуют три последовательности сим- волов.
Первая ——входная последовательность символов для разбора; вторая образуется из нескольких слов (или ни из одного слова), начиная с левой части входной последовательности, при успешном разборе эта последовательность формирует частичную последовательность, для которой очевидна ее принадлежность
11 Pereira F. С. N. and Warren D. Н. D. Definite Clause пп^Т1еГ 10r Language Analysis, Arlif. Intell.t 13, 3, pp. 231—278
некоторой категории заданной грамматики. Третья последовательность — это символы, оставшиеся после исключения второй последовательности в случае успешного разбора, она является входной последова* телыюстыо для последующего этапа грамматического разбора.
При образовании из КСГ в ГОП особую роль играют первая и третья последовательности, а именно: первая последовательность является объектом разбора, а третья ——переходит в следующий этап, поэтому она необходима независимо от цели преобразования. Вторая последовательность используется в соответствии с целью преобразования. Например, на рис. 4.9 представлена ГОП для преобразования меж- ду предложением английского языка и деревом грамматического разбора. Первый и второй параметры каждого предиката соответствуют первой и третьей последовательностям. В ГОП эти параметры определяются, если они, безусловно, существуют, поэтому их опускают и не записывают. Но нас здесь интересует процесс выполнения, поэтому будем записывать эти два параметра r предложениях Пролога не опуская. Для того чтобы было видно, к какой грамматической категории принадлежит вторая последовательность, в третьем параметре к этой последовательности, заключснпон в скобки, добавим первую букву (буквы) категории. Например, ГС (-ихл) означает, что ^имя принадлежит Группе Существительного. Для грамма-
предложением группа-су [цествительного, груапа-глагола (2) группа-существпте:1ыЮ1'0 > артикль, существительное ⑶ групна-существительного -> нмл-собственпое
группа-глагола -> глагол, группа-су 1!;ествителыюго
группа-г.чаго;1?1 -> глагол
артикль [the]
артикль [а]
сущсстпигелыюе -> [window] 一
существительное -> [hатшег] (ID) пмп-собствсшюе -> [John] (11) глагол -> [broke]
Рис, 4.8. КСГ, пре.чставляюшая подмножество английского язык
тического разбора предложения《John broke the window》 (《Джон разбил окно») с помощью ГОП на рис. 4.9 можно определить следующую цель:
Предложение^о^п broke the window],[],
• дерево-разбора).
Грамматический разбор реализуется как процесс выполнения, приведенный на рис. 4.10. В результате получается дерево грамматического разбора как значение параметра ^дерево-разбора\
n(rC(HC(John)), ГГ(Г(Ьгоке). ГС(А(1Ье), C(window)))).
Это полностью аналогично дереву разбора, приведенному па рис. 4.11.
предложение (*ие』ое, ^остаток, П(*группа-существитель- ного, *группй-глагола)) <- группа-существитель- ного(*целое, *остаток1, *группа-существитель- ного), группа-гл а гол а (достаток 1, достаток, *группа-глагола).
группа-существительного («целое, достаток, ГС(*артнкль, «^существительное)) <- артикль(*целое, * остаток!, *артикль), существительное(^остаток1, *остаток, ^существительное).
группа-существительного (*це』ое, достаток, ГС(*нмя-со5- ственное)) <- имя-собствениое(*целое, ^остаток, *имя-собственное),
группа-глагола (^целое, остаток, ГГ(*глагол, *группа- существительного)) <- глагол(*целое, ^остаток], ^глагол), группа-существ!1тельного(^остаток1, *остаток, ^группа-существительного).
группа-глагола (*и,елое. ^остаток, ГГ(.-^глагол)) <- глагол (*целое, ^остаток, ^глагол).
артикль ([Н1е»:остаток], ^остаток, A(the)).
артикль ([а|*оотаток]; достаток, А(а)),
существительное ([window|*ocTaTOi<], достаток, C(window)),
существительное ([hamrae「忤остаток], достаток, C(hammer)).
имя-собстзенное ([John许остаток), достаток, HCfJohn)).
глагол ([Ьгоке|+остаток], достаток, Г(Ьгоке)).
Hie. 4.9. Программа грамматического разбора, соответствующая грамматике на рис. 4.8.
•(HonmedgQ
о кхе^^ттаноокоо ^он^к кзядтааюзм -ITHgEdu KHHJahHIEKIeEdJ EdewoH—яга^с-0 як-os^ .dAUJTIOUU XHTnoiAH — BIT«ssm зниш-н^о ruAHMdshbou) 《Лхор1* BMO」q 匚qQFy KXKO^CSO^E EdogEed UQaTsdu 0 - Md
" 口 (8)
(MOPA\)U UOHqlf ① IHaI3nA3* - •(gcHqyolHHlualAJ若.OIIAU 厂 MOPL二 MDOOHqs-LHtmomA—Y ■ (9) (goHqKalHnllamAAqlTMHIdE)。J == OJOHqq①IHHluTnAUIPUUAdJ* - .(EOHqlf ① IHBIlmAyBUUAdJ* 61A1ЛЮР改①匸三 OJOHqlfo.LHtl.LQDmAPPLJUXdJ -> •(二)
〔МОРЕМ〕== 1о」UITOJEITJ
♦(OJOHqQlHBIJUTnsELIUAdJ* dllAU 二 МО.ЬЕ10*)о」онд1г11① TnAyBUUAdJ
•(IfoJPEMOIB1O* Амор 匚一三 ①1 ①出 OJqDOJPJ •(寸) s^os^§bsraHO^^^O'rtEE^^^* s^s^^ u ElfoJEGJ,EUUAdJ* 一 【МОРЛХ ①① MOJq-u IMOIPI。•(匚qoouMnooHH ①也 I9O,H* •^е.о^л£>ЛСЕ^Л^* COIJAU ^^ОНЛЬ0о*^чо^лчи'ЛЕЕ^^^ 。(① OHH ①JQgol—KWH* 二 MOIEIUO二?op 匚一殳 ^MO」q uqof 一) ^OKE^Kbo^oo'KSS 屮• (e) •(OJOHm①Ё 也 IQWmAPELILIAdJ-дойное» 二 AVOPUIm aqj ①士0」q uqorl) OJOHq① IHHIQQmAPELmAdJ IV • (I)
^ЛЧО^ЛЧ^'ЛЙЕ^&* foJOHq① IFS&gmAcbElIlIxdJ)^ == pdogBd,om ① da
Информацию, зависящую от контекста, можно распознать либо путем добавления параметров, либо путем введения правил, не включенных в ГОП. Например, для добавления в ГОП на рис. 4.9 лнна и числа к параметрам предикатов (2) и (3) добавим ^лицо, к параметрам предикатов (4) и (5)—^лица, а параметрам предикатов (8) —(10)—параметр 3% указывающий на третье лицо единственного числа. После добавления к (11) параметра [ 1е, 1м, 2е, 2м, Зе, Зм], указывающего все лица и числа, предикат (1) преобразуем в следующий вид:
Предложение (*целое, ^остаток, П(:^груп па-существ и тельного, ^группа-глагола)) <- групп а-существ ительиого(* целое, *остаток1, *лицо, * группа-су ществительного), группа-глагола(>!:остаток1, ^остаток, +лица, * группа-глагола),{член(*лицо, ^лица).}
В фигурных скобках указано ограничение, не включенное в ГОП (лицо и число подлежащего и предиката совпадают).
Пролог не различает входные и выходные пере- MBHHhie, поэтому ГОП на рис. 4.9 можно использовать также для генерации предложений на английском языке по дереву грамматического разбора. Пример—рис, 4.12. Строки с (1) по (5) на рис. 4.9 называются грамматическими правилами, а строки с (6) по (И)——блоком словаря. В мультииерархиче- ской модели словарь, используемый во всех грамматических правилах, находится на верхнем уровне, а специальный словарь включается в миры словаря,
Предложение
Группа「руппа
существительного глагопа
МмаГпагоя Группа
собственноесуществительного
Артикль Существительное
Sohn broka the window
Рнс, 4,11. Дерево грамматического разбора предложения «Johnbroke the window».
Для того чтобы ГОП играла роль интерфейса между естественным языком и представлением знаний в области понятий, необходимо естественный язык преобразовывать не только в указанное выше дерево грамматического разбора, но и в формат предиката для области понятий. А именно, как следует из примера с глаголом «разбивать», необходимо преобразовывать поверхностную структуру, полученную с помощью дерева грамматического разбора, в понятия.
• <- предложение (*целое, пусто, H(FC(HC(John)), ГГ(Г(Ьгоке), rC(A(the), C(window))))).
• <- группа-существительного (*целое( достаток], FC 切 C(John))),
группа-глагола (^остаток1, пусто, ГГ(Г(Ьгоке), rC(A(the), C(window)))).
(3)・ <-кмя-собственное (市целое, достаток】,HC(John)), группа-глагола (*остаток1, пусто, ГГ(Г(Ьгоке), 「C(A(the), C(window)))).
*целое = [John | достаток!]
■ <- гругшаглагола (*остаток1, пусто, ГТ(「(Ьгоке)? FC(A(the), C(window)))).
(4) • <- гсагол Достаток】,остаток?,「(broke)), группа-существительного (*остаток2, пусто, rC(A(the), C(window))).
^остаток! = [broke | *остаток2]
• <- грунта-существительного (*остаток2, пусто, 「C(A(the), C(window))).
• <- артнкль (*остаток2, *остатокЗ, A(the)), сущсствмтелыюе (-г-остатокЗ, пусто, C(window)), +остаток2 =[the| +остатокЗ]
• е су1нсст91【тз1ьное ^остатокЗ, пусто, C(ivindav)). *остатокЗ = [window]
□
Рис. 4,12. Процесс генерации предложения «John broke the wimdow» из дерева грамматического разбора (П(ГС(НС(Sohn))jГГ(Г(Ьгоке), ГС (Л (the), С (window)))).
В этом случае, к примеру, можно воспользоваться следующей формулой преобразования. Здесь 彩% — подлежащее поверхностной структуры, а *у — дополнение.
Преобр(разбиватьЛ разбивать (*х,弊у, *2), разбивать (*х, *,,*之))+ не(переменная(*х)), ие(переменная(#//)), с-внд(*无,агент), овнд(*у, хрупкий).
Преобр(разбивать, раз6нвать(*无,*у, *z), разбивать (*р, *х, *2)) <- переменная(*г/), с-вид(*х, хрупкий).
Преобр(разбивать, разбивать(*х, *у, *2), разбивать (*а, *р, +х) <- не(переменная(*х)), не(перемеиная(*г/)), с-вид(*х, твердый), с-внд.(卞у, хрупкий).
Исходная ГОП проста, поэтому правила преобразования достаточно записать в таком виде, но в действительности все более сложно. Используя ⑧—⑩, покажем, как КС Г на рис. 4.8 преобразуется в ГОП. Здесь учитываются лицо, число, время. Время по отношению к входному английскому предложению — выходная переменная и входная при синтезе предложения. Аналогично можно обрабатывать атрибуты предложения, получаемые из поверхностной структуры, такие, как продолженные и совершенные времена, вспомогательные глаголы, вид, форма и залог предложения, а также предложные группы, то есть существительные с предлогом, которые не обусловливают пассивный падеж данного глагола, скажем, инструментальный падеж для глагола «разбивать» (например, 《вчера》, определяющее время, 《в Японии», определяющее место).
Предикат (1) на рис. 4,13 используется в случае преобразования понятий в предложение, а (Г)—в случае преобразования предложения в понятия. То &е справедливо для (5) и (5‘). Таким образом, для преобразования предложения в понятия прежде всего получается дерево грамматического разбора, а после того, как станет очевидной поверхностная структура, она преобразуется в понятия, и, наоборот, при сип- тезе предложения из понятий последние прежде всего преобразуются в поверхностную структуру, а затем
синтезируется предложение. На рис. 4.14 показан процесс- получения из предложения 《The window broke» (《Окно разбито») понятия разбивать (圣у, окно. *?) и ^прошедшее-время, а на рис. 4.15 — процесс синтеза этого же предложения из ^понятия разбн- вать(*у, окно,必2)и 唸протебигее-время.
предложение (*целое, ^остаток, *время, *понятие) ч- {переменная(*целое),}
группа-глагола (*остаток1, "остаток, ^время, *лица, ^подлежащее, *повятие), группа-существительного (*целое, *остаток1, *лицо, «подлежа- щее), {член (*лицо, *лниа).}
(1‘) предложение (;^целое, ^остаток, *время, ^понятие)
<-группа-существителыюго (^целое, *остаток!( *лицо, ^понятие), группа-глагола (*остаток1, достаток, *время, *лица, *подлежаш.ее, *понятие), {член (*』нио, *』нца).}
группа-существительного (*целое, достаток, *лицо, ^понятие)
<-артикль (*целое, *остаток1), существительное (*остаток1, достаток, *лицо, ^понятие).
группа-глагола (*целое, достаток, *время, *лнца, ^подлежащее, ^понятие)
<-{переменная (*целое),} преобр(*основа, *поверхио- стная, ^понятие), глагол (^целое, *остаток, *основа, *время, *лнца, ^-подлежащее, ^дополнение, ^поверхностная).
(『)группа-глагола (:^целое, достаток, *время, *лица, ^подлежащее, *понятне)
《глагол (*целое, достаток, ^основа, *время, *лица« ♦подлежащее, * дополнение, * поверхностна я), преобр («основа, ^поверхностная, ^понятие).
артикль ([the | достаток], достаток).
(существительное ([window | достаток], остаток, Зе, window).
(Ц) глагол ([broke | достаток], достаток, break, прошедшее, [1е, 1м 2е, 2м, Зе, Зм], *подлежащее,
* дополнение, break (^ подлежащее, *дополие ние, ^понятие)).
Рнс. 4,13. Программа преобразования английского предложенияв понятие с учетом времени, лица и числа,
•《предложекне ([the window broke], пусто, *время, ^понятие).
(])• <- гругхпа-сутествнтельного ([the window broke], *остаток1, *лнно, ^подлежащее), группа-глагола (^остаток 1, пусто,审время, *』нна, ^подлежащее, ^понятие), член (*лнно, ^лица).
(2) ■ <- артикль ([the window broke], ^остаток), суи1,еств-втельное (достаток 1, ^остаток 1, *』нцо, !?=подлежаш,ее), группа-глагола (^остаток1( пусто, *время, ^лица, ^подлежащее, ^понятие), члены (^лицо,密/нца).
достаток = [window broke]
<- существнте.тьпое ([window, broke],咏остаток】,
группа-глагола (聿остаток】, пусто, твремя, алнца, ^подлежащее, *понятие), член (^лицо, *лица).
достаток】=[broke], */нио = Зе, ^подлежащее = window
, <- группа-глагола ([broke], пусто,审время, ^лица, window, ^понятие),
член (Зе, *лица).
(5,) • <- глагол ([broke], пусто, ^основа, *;время, тлица, window, ^дополнение, мп), преобр (^основа, :%п, ^понятие); член (Зе, ^лица).
:?основа = break, ^время = прошедшее, *л1Ш,а = [1е, 1м, 2е, 2м, Зе, Зм], = break (window, ^дополнение, +понятиеЗ)
(11) • <- преобр (break, break (window, ^дополнение, *понятиеЗ), -^понятие), член (Зе, [1е, 1м, 2е, 2м, Зе, Зм]).
^понятие — break (=!■//, \vinflow, *之)
• <- с-внд/window, хрупкое), пере'#еннан(;иогю〃ненне), 丄 член (Зе, [1е< 1м, 2е, 2м, Зе, Зм]).
Рнс. 4.14, Процесс преобразования предложения The windowbroke в понятие разбивать (-^ij, окно, *2)н ^время-прошедшее.
• <- предложение (*целое, пусто прошедшее, break(激,window, *z)).
• <- переменная (*целое), группа-глагола(*остаток» пусто, прошедшее, *лица, ^подлежащее, break(*y, window, *z)), группа-существительиого (*целое, ^остаток, *лицо, ^подлежащее), член(*лицо, +лица).
(5)・ <-переменная (достаток), преобр(*осиова, *п, break(咕у, window, *z), глагол (достаток, пусто, основа, прошедшее, *лица, *подлежащее, ^дополнение, *п), группа-существительвого (*целое, +остаток, *лнцо, ^подлежащее), член (*лицо, *лица).
^основа — break, *п = break(winriow,零у, *2)
(9) • <- глагол (достаток, пусто, break, прошедшее,零лица^ window, *мопо〃ненне, break(window, *у,率%)), группа-существительного (+целое, достаток, *〃нцо. window), член (*лицо, *лица)
достаток = [broke], *лица = [1е, 1м, 2е, 2м, Зе, Зм]
. <- группа-сутествнтельного («щелое, [broke], *』нн% window),
член (*лицо, [1е, 1м, 2е, 2м, Зе, Зм]).
. е артнкль (冰не/ое, достаток 1), существительное (^остаток1, [broke], *лицо, window), член (*лпи,о, [1е( 1м, 2е, 2м, Зе, Зм]).
Фцелое = [the | *остаток1]
. <- существительное (*остаток1, [broke]’ *jiuhg. window),
член (*лицо, [1е. 1м, 2е, 2м, Зе, Зм]).
*остаток1 = [window broke], *jhuo = Зе ⑻'♦ член (Зе, [1е, 1м, 2е, 2м, Зе, Зм]).
Рис, 4.15. Процесс синтеза предложения The window broke изпонятия разбивать (*//, окно, *) п ^бремя-прошеди4ее1
Формулы и языки программирования точно так же с использованием ГОП можно преобразовать в понятия. ГОП описывается на базе КСГ с помощью правил Хорна, но если в КСГ включены рекуррентные слева правила, то возможно образование бесконечных ЦИКЛОВ, поэтому необходимо переписать КСГ в грамматику без таких правил.
ЛИДЛОГ НА ЕСТЕСТВЕННОМ ЯЗЫКЕ
СМЫСЛ ПРЕДЛОЖЕНИЙНА ЕСТЕСТВЕННОМ ЯЗЫКЕ
Как указано выше, предложения на естественном языке можно преобразовать в информационное множество, содержащее помимо понятий, выраженных в виде предикатов, информацию о времени (настоящее, прошедшее, будущее), видовременной характеристике (континуальное, перфектное, несовершенное), залоге (активный, страдательный), модальности (разрешительная, запретительная, потенциальная, сослагательная, облигаторная, недостоверная и т. п.), типе предложения (вопросительное, повествовательное, восклицательное), независимых членах (время, место, причина, результат, степень, цель, уступка и т. п.). Подобное информационное множество помогает уточнить различия в предложениях, которые неразличимы при использовании предикатов. Возьмем, например, предложения
John broke the window with a hummer.
Did John break the window with a hammer?
John has broken the window with a hammer* John can break the window with a hammer. (Джон разбивал окно молотком.
Джон разбивал окно молотком?
Джон разбил окно молотком.
Джон может разбить окно молотком).
Все они преобразуются в одно и то же понятие «разбивать» (Джон, окно, молоток), но имеют различиый смысл, который можно понять с помощью указанного выше информационного множества. Следовательно, такое множество определяет формальный смысл
предложения на естественном языке. Этот смысл можно идентифицировать только в области языка.
Смысл предложения на естественном языке идентифицируется благодаря знаниям из области понятий, соответствующей области языка, в которую преобразуется входное предложение, знаниям из мироз связей, с помощью которых область понятий наследует свойства, а также знаниям из миров предыстории выбора, которые из чисто технических соображений ограничены, но с помощью которых слова из области понятий наследуют свойства.
Определительные отношения независимых членов, как правило, можно идентифицировать несколькими способами.. Например, в предложении
John broken the window in the church.
(Джон разбил окно в церкви.)
формально не понятно, что определяют слова in the church (в церкви): window (окно) или John broken the window (Джон разбил окно). Из формального смысла выясняется, что предлог in (в), судя по предыстории выбора понятия church (церковь), означает место, но ннкак не время. В результате это предложение в области языка можно идентифгщиро^ вать как одно из следующих двух понятий:
口,Где(разбивать(Джон, окно, инструмент), в, церковь)
④ Разбивать(Джон, окно, ^инструмент) Л где (окно, в, церковь)
Где — предикат, выражающий место. Кроме него можно аналогично представить другие понятия (обстоятельства) ,используя предикаты когда (время), почему (повод, результат, цель, причина), как (средство, степень), но (уступка) и другие. «Формат этих предикатов — суть формат сложного предложения. Знания об этих форматах играют важную роль при идентификации вопросов, ответов и ошибок в диалоге.
Определить, какое из понятий 0 или '@ верное, можно с помощью знании в области понятии, а если нет таких знаний, то нет другого способа, кроме как обучение из внешнего мира в диалоге.
Определить понятие можно из контекста диалога, что мы и делали до сих пор, а также с помощью знаний из области понятий. Поскольку, как будет указано ниже, в мультииерархичсской модели в процессе диалога создается модель пользователя, то содержа- ние диалога, о котором шла речь, будучи знаниями из этой мод ел и, можно сч нтать объектом для выводов в области понятии.
МЕТОДЫ ВЕДЕНИЯ ДИАЛОГАНА ЕСТЕСТВЕННОМ ЯЗЫКЕ
Диалог на естественном языке можно разбить на три этапа: грамматический разбор, понимание и выводы, а также синтез. Грамматический разбор и синтез выполняются с помощью знаний в области языка, а понимание н выводы ——с помощью знаний в области понятий. На рис. 4.16 приведен пример такого диалога. ^вывод ——это сообщение для поддержания диалога, т. е. ответ, вопрос пользователю или другой текст. ^ввод-пользователя — это предложение на естественном языке, введенное пользователем после вывода ^■вывод. Это предложение формально преобразуется благодаря предикату идентифицировать-язык, с помощью знаний из области языка и отождествляется ка« значение переменных ^формальный-смысл и nпонятие. Формальный смысл служит входной переменной для следующего предиката идентифициро- зать-понятие, здесь с помощью знаний нз области понятий делается вывод, который отождествляется как значение переменной ^сообщение. Сообщение преобразуется в предложение на естественном языке с помощью следующего предиката проверить-сообщение, аналог (:ввывод)-
《ввод (巾вз1во工.::■ ввод-пользователя), 1гдснтифг1цг1ровать-язы1< (^ввод-пользователя, достаток, :!;формальный-смысл, ^понятие), идентифицировать-понятие (^поннтие.
';:фор м а п ь н ы R - с м ы сл, :i: с о о 6 uie п не), про вер нть-сообщение (^сообщение, пусто, ^вывод'), диалог (,+ внвоп,).
Рнс. 4,16. Программа верхнего уровня диалога.
и это предложение выдается пользователю. Подобный диалог может продолжаться бесконечно. Прекращение диалога обусловливается идентификацией входных предложений пользователя в области понятий. Например, если пользователь ввел предложение «Конец этой системы», то в области языка синтезируется понятие достаточно(^агент, тот-же-самый) и формальный смысл вид-предложения (императив). В области языка существует правило, которое считает это понятие наиболее приоритетным и может порождать вызов программы обработки конца диалога.
Пример программы идентификации формального смысла в области языка приведен на рис. 4.17, а именно: при успешном завершении грамматического разбора всего предложения будет успешной и идентификация формального смысла, но если чтение и понимание частичной последовательности символов будет неудачным, то вызывается подпрограмма уточнить, которая выполняет соответствующую обра^ ботку. Она первым делом выполняет идентификацию смысла той частичной последовательности, разбор которой завершился успешно, а затем выдает фразу «Я никак не могу понять смысл ^остаток^ и передает
идентифицировать-язык (*ввод-пользователя, пусто, *формальньн1-смыслт *понятие)《предложение (^ввод-пользователя, пусто, ^формальный-смысл, ^понятие).
идентифицировать-язык (^ввод-пользователя, *остаток, ^формальный-смысл, понятие) <- предложение (^ввод-пользователя» *остаток, ^формальный-смысл, *понятнё),
уточнить (достаток, *формальный-смысл, ^понятие), пдевтвфицировать-язык (*ввод-пользователя, достаток,
* формальный-см ыслт *понятие) ч- смепить-мир (^ввод-пользователя), идентифицировать-язык (^ввод-пользователя, .достаток, *формальнын-смь1сл, ^понятие).
идентифицировать-язык (*ввод-пользователя, "остаток, ^формальный-смысл, ^понятие) <- спросить-спопа (*ввод-пользователя, ^вывод), диалог (*вызод).
Рнс. 4.17. Программа верхнего уровня области языка.
переменные ^формальный-смысл и 为по总凡тие на следующий этап. В случае неудачи идентификации формального смысла .входного предложения с помощью предиката сменить-мир происходит переход в друГие миры, соответствующие словарю входного предложения, и вновь повторяется его грамматический анализ. Если и с помощью этого предиката не удается идентифицировать смысл, то в предикате спросить-снова переменной ^вывод присваивается фраза《Я не знаю значения слова з, пожалуйста, используйте другое выражение», где 曲——неидентифицированное слово.
В области понятий обрабатывается значение ^по- н兄т〃е, при этом к модели пользователя добавляется значение ^формальный-смысл. Эта модель, как будет указано ниже, представляет собой содержание диалога с пользователем, то есть миры, в которых регистрируется, как система интерпретирует диалог. В случае когда результат обработки ^понятие сводится не к синтезу предложения на естественном языке, а к действию, то подпрограмма, соответствующая этому действию, присваивает значение переменной ^сообщение. Например, если в ходе диалога обнаружилось, что пользователь сменил тему, то в момент завершения обработки в текущей области понятий необходимо заменить модель пользователя. Если в подобных случаях переменную ^-сообщение отождествить с целью, которая изменит среду пользователя, то после завершения обработки в области понятий будет, например, выполняться программа проверить-сообщение .(рис. 4.18).
проверить-сообщение (пусто, *вывод, *вывод).
проверить-сообщение ([отобразить ^сообщение | ’остаток], *вывод1, вывод2) е синтезировать (^сообщение, ^предложение), вывести (^предложение), проверить-сообщение (^остаток, *внвод1, *вывод2).
проверить-сообщение ([действовать ^сообщение | ^остаток], *вывод1, *выводЗ) < вызвать (^сообщение (*вывод1, *вывод2)), проверить-сообщение (^остаток, +вывод2, *выводЗ).
Рнс. 4.18. Программа верхнего уровня «проверка-сообщения».
НЕЧЕТКИЕ ПРЕДЛОЖЕНИЯ
В процессе диалога нередко появляются нечеткие предложения, предложения с опущенными словами, предложения с местоимениями, предложения с многозначными словами и т. п. Смысл подобных предложений с неточными словами идентифицируется в мультииерархической модели с помощью следую* щих пяти методов.
Метод иерархической организации знаний. Как уже было отмечено, многозначные слова обычно выражают различные понятия, позтому часто принадле- жат различным мирам в области языка. В мульти- иерархической модели миры, служащие темой разговора, наследуют нужные знания из миров верхнего уровня и благодаря унификации определяют понятия слов, что играет существенную роль при идентифика^ ции.
Иерархическая организация миров также эффек- тивна для обработки нечетких предложений. Например, если в диалоге с системой-консультантом по микрокомпьютерам был задан вопрос: 《Где находится выключатель?^, а темой диалога был принтер, го можно идентифицировать расположение выключателя принтера; если разговор шел о микрокомпьютере, то указать, как он включается, а если о системе, включающей и то и другое, то расположение обоих выключателей.
Метод, изучения нескольких вариантов. При иден- тификации формального смысла нечеткого предложения в области языка можно выдвинуть несколько ва- р и антов (гипотез). Число гипотез можно уменьшить в результате вывода в области понятий.
Например, на этапе разбора формального смысла приведенного выше предложения
Джон разбил окно в церкви
в области языка формально нельзя оценить, относятся ли слова《в церкви» к слову《окно》или к фра-
зе «Джон разбил окно》. Однако если в модели пользователя уже находится предложение
Джон вошел в церковь
и идентифицировано, что церковь — это место, где сейчас находится Джон, то уже можно сделать вы- вод, что «в церкви» относится к оставшейся фразе.
Метод отождествления переменных. Опущенные имена и местоимения можно обрабатывать в области языка как переменные (см. примеры ⑤,⑥ разд. 4.2.1),
Идентификация смысла с помощью вопросов. В случае понимания нечетких предложений указан- нымн выше тремя методами можно в диалоге на есте・ ственном языке спросить пользователя или попросить его ввести более понятные предложения и приобрести тем самым новые знания,
Метод запоминания нечетких знаний. Если зна・ ние X нечеткое, можно обрабатывать его с введением нечеткости в само знание, например, используя пред* ставление типа возможность (X, вероятность (0, 3)). Но в этом случае необходимо определять непротиворечивые правила выводов.
43- ПРИОБРЕТЕНИЕ ЗНАНИЙИ ОБУЧЕНИЕ В ДИАЛОГЕ
ЗНАЧЕНИЕ ДИАЛОГАВ ПРИОБРЕТЕНИИ ЗНАНИЙ
Приобретение знаний в интеллектуальных информационных системах можно разбить на два этапа: этап генерации системы и этап добавления знаний в готовую систему. Ввод знаний в процессе диалога на естественном языке при генерации системы, видимо, наиболее интересная тема исследований процесса приобретения знаний, но технические методы ввода знаний в системы пока не освоены. Предлагают вводить знания в словарь и область понятий через диалоговые редакторы Пролога, в виде рисунков, таблиц
и т. п. Поэтому ниже будем рассматривать приобрел тение знаний существующими системами.
Уточнение нечетких знаний. Как отмечено в конце предыдущего раздела, в случае когда в системе недостаточно знаний, трудно правильно идентифицировать нечеткие входные предложения на естественном языке. Приобретая правильные знания в диалоге с пользователем, система обеспечивает такую идентификацию, если, конечно, знания в системе непротиворечивы. Следует также обратить внимание на то, что недостаточно высокая надежность модели пользоса- теля (см. далее) снижает надежность системы.
Полнота знаний, а также обнаружение и обработка противоречивых знаний. В процессе выполнения программ на Прологе, идентифицирующих смысл в области понятий, неудачи возможны в двух случаях, а именно; когда в состав знаний не включены правила, соответствующие обозначениям предикатов некоторой цели или подцели, и когда, несмотря на наличие таких правил, возникает несоответствие параметров или несогласованность условий. Неудача в первом c/yqae преодолевается благодаря отождествлению с новыми знаниями, как указано в п. 1, но при неудаче во втором случае уже необходимо идентифицировать ее причины. Обсуждение проблем идентификации сшибок не входит в задачи данной книги, поэтому не будем останавливаться на этом, хотя, например, об идентификации ошибок в знаниях при диалоге с помощью индуктивных выводов можно узнать в гл. 7< Если в результате такой идентификации окажется, что ошибка не связана с пользователем, а вызвана знаниями самой системы, то нсобхо^нма коррекция этих знаний.
При избыточных знаниях, т. е. в случае, когда идентифинация входного предложения в области по нятий завершена успешно и в диалоге на естественном языке на это предложение получен ответ《口а》, но пользователю выдается предложение с тем же смыслом, в коррекции знаний системы нет необходим мости.
Роль контрпримеров. Взаимосвязь между средой пользователя системы обработки интеллектуальной информации и средой приобретения знаний осуществляется благодаря выводам на основе гипотез об открытых мирах. Поясним это на примере. В области понятий системььконсультанта по микрокомпьютерам заложены знания о. том, что к . микрокомпьютеру COMP-XVZ можно подключиться через интерфейсы ААА-111 и ВВВ-222:
возможность(подключение(*агент, COMP-XFZ, ^объект, ААА-111), имеется)
возможность(подключение(+агент, COMP-XFZ, ^объект, ВВВ-222), имеется)
Допустим, что пользователь спрашивает, можно ли подключиться через другой интерфейс АВС-333. Если миры замкнуты, то вследствие неудачной идентификации система может ответить «АВС-333 не используется». В открытых мирах создаются другие правила, например правило, описывающее все подключаемые интерфейсы:
таблица-интерфейсов(СОМР-ЛУ2, [ААА-111, ВЗВ-222])
Теперь можно проверить возможность подключения с помощью предиката
возможность(подключение(*агент, номер-компыогера,
^объект, ^интерфейс), имеется) <- таблица-интерфейсов (^номер-компьютера, *списо^-интерфейсо0), член(+интерфейс> список-интерфейсов).
Однако в случаях, когда заранее не определен ^-список-интерфейсов, либо этот список неограниченно большой, либо выводы делаются путем сложных вычислений и т. д., очень важную роль играют контрпримеры. Например, если знание о том, что через интер-. фейс АВС-333 подключаться нельзя, представить в виде
возможность(подкл!очение(:|:агект, CONIP-XFZ, ^объект, АВС-333), ие-имеется),
то на заданный выше вопрос можно ответить. Если 〉ке этот факт неизвестен, то его можно усвоить как новое знание.
ЗНАЧЕНИЕ ДИАЛОГА ПРИ ОБУЧЕНИИ
Обучение системы обработки интеллектуальной информации включает также усвоение новых знаний (как н в случае приобретения знаний, о чем шла речь выше), но ниже рассмотрим вопросы создания новых знаний с помощью диалога. Классический пример — создание знаний в диалоге и использование модели пользователя. В этом разделе изучим модели пользо^ вателя для современных систем обработки интеллектуальной информации, а также их ^оль в диалоге.
ПРИМЕРЫ МОДЕЛЕЙ ПОЛЬЗОВАТЕЛЯ
Если партнером по диалогу является человек, то, как правило, содержание и терминология диалога зависят от того, кто этот человек: ребенок, специалист или студент. Соответствующую среду можно реализовать через построение модели пользователя. Исследования таких моделей активно ведутся в области систем обучения с помощью компьютеров н систем для диалога на естественном языке. Дело в том, что при компьютерном обучении необходимо оценивать степень понимания студентом предметной области и выбирать содержание учебного материала.
Оверлейные модели. Термин «оверлейная модель» введен Голдштайном в 1981 г.» но фактически этот термин употреблялся пользователями системы компьютерного обучения географии еще в 1970 г.
Модель ученика строится следующим образом. К узлам семантической сети системы компьютерного обучения, описывающей знания по географии, в качестве атрибутов добавляются числа, показывающие, в какой степени ученик понимает содержащиеся в каждом узле знания.
Подобная оверлейная модель строится в предположении, что знания ученика и знания системы имеют полностью аналогичную структуру, но первые являются подмножеством последних.
Кранси, используя систему медицинской диагностики инфекционных заболеваний MYCIN, создал
обучающую систему GUIDON, в которой использовал оверлейную модель для той же предметной области. Система MYCIN описывает знания с помощью продукционных правил, поэтому в модели пользователя GUIDON накапливаются правила, распределяемые по следующим трем группам в зависимости от степени их понимания. Первая группа ——правила, из которых с точки зрения системы пользователь может делать вывод, если задана предпосылка продукционного правила. Вторая группа — правила, которые учащийся может правильно использовать и приходить к правильным выводам, если заданы данные (состояние пациента). В последнюю группу собираются правила, которые пользователь может применять для разъяснений при получении обоснования ответа.
Разностные модели. Такая модель использована в игре «Запада, созданной Хартом. Это игра типа сугороку D, в которой игрок передвигает фургон от старта до финиша, но вместо костей используются формулы с четырьмя арифметическими операциями. Если умело подобрать формулы, то цель достаточно быстро достигается кратчайшим путем. Эта игра используется для обучения, причем ученика заставляют решать предварительно составленные задачи, но пред- сказать его способности невозможно. Зная лишь пре- дыдущне ходы ученика на доске, нельзя получить информацию для построения модели пользователя. Точно так же нельзя категорически утверждать, что мы совсем не знаем, какие способы решения он использует. Даже если он делает не наилучший ход, это не означает, что данный ход ошибочен. Чтобы учитывать всевозможные ситуации, и предложена разностная модель.
Что же такое разностная модель? Сравнивая зна* ния, которые лежат в основе хода, сделанного учени^ ком в некоторой позиции на доске, с описанными в программе знаниями, которые использует эксперт в такой же позиции, определяют различия между
” Сугороку — японская игра, при которой, бросая кости, передвигают фигурки по доске. — Прим, перев.
ними, которые и накапливаются в модели пользователя. Следовательно, разностная модель — это мо* дель, которая подчеркивает различия между тем, чего не знает ученик или знает, но не обращает внимания, т. е. между мастерством игры, которым не может в должной мере овладеть ученик, и мастерством, которым он должен овладеть и понять.
Пертурбационные модели. Оверлейные и разностные модели ——это модели пользователя, построенные в предположении, что знания пользователя об объ* ектной области являются подмножеством знаний системы. Пертурбационная модель строится, исходя из того, что знания пользователя частично расходятся со знаниями системы. Хотя если не совсем ясно, в чем заключаются эти расхождения, построить модель пользователя нельзя. Следовательно, важной предпосылкой построения такой модели являете 汙 идентификация причин расхождения.
При обработке знаний предполагается, что могут существовать следующие пять причин расхождения:
недостаток знаний;
имеются ошибочные знания;
имеются верные знания, но пользователь не знает способа их применения или неправильно их применяет;
ошибка из-за невнимательности;
пользователь уммш/енно дает «взятый с потолка》 ответ.
Последнюю причину можно легко исключить, если задать несколько очень легких вопросов. Степень доверия к таким пользователям помечается самым низким значением, и лучше не допускать приобретения зимний из входных предложений, полученных от ннх«
Для учета причин 1—4 достаточно иметь следующие функции:и
функцию выявления расхождений в ответах пользователя;
функцию идентификации, по какой из причин (1—4) возникла ошибка в правилах или действии, использованных в процессе выводов при решении задачи;
функцию объяснения расхождения путем его повторного выявления в процессе решения задачи с учетом результата функции 2.
'В последнем случае необходимо решить ту же задачу, добавив возмущение (пертурбацию) в сами знания, используемые для ее решения, и в знания о том, как применять первое знание. (Термин «пертурбация» до сих пор употреблялся по отношению к небесным телам, но в последнее время его стали употреблять и в сфере информационных систем.)
Сказанное выше подразумевает необходимость построения модели процесса решения задачи и метазнаний, которые помогут интерпретировать этот процесс. Предложенные до настоящего времени модели пользователя нередко удовлетворяют лишь части этих требований.
DEBUGGER ——система для обучения хирургическим операциям, созданная Бартоном. Знания в этой системе называются сетью процедур, на основе богатого клинического опыта хирургические функции разбиваются на несколько десятков основных приемов и создается сеть от узла, в котором операция противопоказана, до узла, в котором воможно хирургическое вмешательство в полном объеме, и к каждому узлу добавляется процедура выполнения частных приемов. Модель пользователя в системе DEBUGGER генерируется путем накопления ошибок, идентифицированных после пертурбации такой сети процедур. Проще говоря, ошибка идентифицируется благодаря замене части узлов в сети на заранее подготовленные ошибочные процедуры, известные из клинического опыта. Потенциально огромное число комбинаций, обусловленное тем, какие процедуры заменять, ограничивается с учетом специфических. для данной области приемов и их повторяемости.
Шапиро предложил метод индуктивных выводов, названный им MIS (Model Inference System), для ин-, теллектуальной системы диагностики программ, написанных на Прологе. Этот метод подробно объясняется в гл. 7, отметим лишь, что после идеитифика- нни в ходе диалога блока, в котором возникла ошибка, ее причина идентифицируется путем пертур-
бационных вычислений с использованием оператора уточнения (refinement). В настоящее время в некоторых интеллектуальных системах компьютерного обучения, разработанных в Японии, этот ^:eтoд используется для идентификации ошибок.
4.3.2.2, МОДЕЛЬ ПОЛЬЗОВАТЕЛЯВ Л\УЛЬТИИЕРАРХИЧЕСКОЙ МОДЕЛИ
Какая модель пользователя наиболее подходит для мультииерархической модели? Особенность последней состоит в том, что она имеет связанные мультииерар- хические миры с внутренними знаниями, в зависимости от темы диалога происходит перемещение миров и наследование ими необходимых знаний из взаимосвязанных миров. Если система будет иметь возможность свободно без каких-либо ограничений переходить от мира к миру, то возникнет следующее неудобство. Кто бы ни был партнером по диалогу — ребенок или эксперт, диалог будет вестись с использованием одних ri тех же знаьшй, а система, не учитывающая уровень партнера, будет неудобной. Кроме того, свободное перемещение мультииерархических миров обеспечит решение задач с использованием знаний эксперта, гораздо более глубоких, чем знания из курса какого-либо предмета, поэтому такая система не пригодна как обучающая.
По этим причинам в качестве модели пользователя, подразумевающей существование миров, удобна оверлейная модель, а именно: в модель пользователя не включаются миры, которые не были затронуты в теме диалога с пользователем, тем самым запрещается переход к другим мирам, если не считать миры, необходимые как сопутствующие знания. При таком методе не нужно заботиться о том, что в про- цессе диалога когда-нибудь «всплывут» знания, не доступные пользователю. Со знаниями, накапливаемыми внутри миров, и со связями между мирами поступают следующим образом. В ходе диалога иден- тифицируются причины ошибок н нечеткие знания, % если пользователь прав, корректируются знания внутри миров, в противном случае ошибочные знания
5 С. Осуга, Ю. Сазкн
необходимо накапливать в модели пользователя. Следовательно, если учитывать структуру миров и содержащиеся в них знания, то эффективнее строить модель пользователя как пертурбационную.
Но как же определить исходные значения в модели пользователя при первом диалоге с ним? Например, знания, необходимые пользователю-учащемуся, который пришел проконсультироваться по биб* лиотеке программ, и эксперту по программному обеспечению, существенно отличаются. Для этого существуют два способа:
использовать собеседование, а именно: при первой встрече с пользователем определить миры его модели, задав несколько вопросов н получив ответы о его потребностях;
сразу определить уровень пользователя, выделив из них студентов, экспертов и детей, и установить усредненные начальные миры пользователя.
Определив, таким образом, начальные значения миров пользователя и впоследствии ведя с ним диалог, постепенно строится модель пользователя, наиболее полно отражающая уровень его понимания.
РОЛЬ МОДЕЛИ ПОЛЬЗОВАТЕЛЯ
Модель пользователя ——это модель процесса диалога, которую создает система, интерпретируя способности и уровень понимания пользователем предмета разговора. Следовательно, с помощью этой модели, как и с помощью знаний самой системы, можно решать задачи (в среде знаний пользователя) .и отвечать на вопросы. Система может применять эту модель, чтобы:
создавать усредненную модель, соответствующую уровню пользователя, о чем уже говорилось выше;
при правильном создании модели решать за- данн и задавать вопросы на уровне пользователя; т. е. объяснять ошибки пользователя;
быстро обнаруживать индивидуальные разли- чия пользователей благодаря применению моделей пользователей в процессе идентификации ошибок. Например: ^Эт。человек, который путает при вводе
английского текста буквы г и Ьj)или «Это человек, который часто делает ошибки в четырех арифметических действиях». На первом этапе идентификации ошибки можно проверить знания, которые зарегистрированы в модели пользователя как знания, наиболее часто приводящие к ошибке;
стимулировать взаимный инициативный диалог.
В справочных системах инициатор диалога — пользователь, т. е. система только получает решение и дает ответы на вопросы пользователя. При этом в случае ошибочного или нечеткого вопроса после идентификации этого факта с помощью модели пользователя необходимо, чтобы инициатором диалога стала система; например, она может указать ему: «Вы не знаете о...». Если в системе решения задач либо недостаточно входных данных, либо в них обнаружено противоречие, этот факт идентифицируется в ходе диалога с пользователем, а результаты идентификации накапливаются в модели пользователя к используются как справочный материал при идентификации последующих ошибок. В системах компьютерного обучения взаимная инициатива в диалоге имеет гораздо большее значение, а именно: система должна в педагогических целях указывать пользователю на его ошибки и составлять задачи, в которых учитываются причины этих ошибок, для того чтобы убедиться, что пользователь понял весь материал. С этой же целью необходимы метазнания (называемые )^чебными знаниями), которые помогают интерпретировать процесс решения задачи по модели пользователя и вызывать действия в соответствии с возникшей ситуацией.
Эти примеры показывают, что модель пользова^ теля, построенная системой в ходе диалога, дает повод для перехвата системой инициативы в диалоге. Диалог со сменой инициативы в системе компьютер: но го обучения пониманию программы, приведенной на рис. 4.19, а, можно посмотреть на рис. 4.19,6
и В японском языке звук《1》отсутствует, п в словах пно- странного происхождения он заменяется на 《г», — Прим, Р<'^*
program P20403(output): var a, b, x : real;
Ьсртп
a : =2.5;
b : ^2e-Ьl;
x : =a + b ;
writeJn(x)
end.
С. Есть вопросы?
* П. Я не могу попять смысл Р20403 в первой строке.
С. Р20403 в первой строке — это нм я программы.
П. Для чего используется имя программы?
С. Хорошо. Я покажу вам страницу с объяснением име
ни программы, (После вывода объяснения система вновь возвращается к этой сцене.)
你 С Есть вопросы?
П. Нет.
С. Тогда, пожалуйста, ответьте, каковы значения В и X?
П. 2е-14, 2е-11.5.
С. Ваш ответ некорректен. Каково значение В ?
喙 П. Что означает 2е-14?
С. е-14 в выражении означает -14 степень 10, а 2е-14
означает 2, уменьшенное на е-14.
* С. Каково значение В?
П.0.00000000000002.
С. Правильно. Вы можете вычислить значение X?
П.Да. X равно 2.50000000000002.
С, Нет. Знаете ли вы, сколько цифр содержит вещественная переменная?
П. Нет.
С. Вещественная переменная содержит 14 цифр. Число значащих цифр вещественной переменной — 14. Теперь укажите значение X.
П. 2.5.
С. Хорошо. Теперь давайте решим другую задачу.
Рнс. 4.19. а — программа для обучения; б — пример взаимного
инициативного диалога о программе а.
(С — система, П — пользователь, -» помечены строки, где меняется инициатива).
ГЛАВА 5.
ОБУЧЕНИЕ ПРИ РАСПОЗНАВАНИИОБРАЗОВ
Т. Китахаси (Осакский университет)
В этой главе рассмотрены конструкции и функции перцептрона и неокогнитрона — классических систем с механизмом распознавания образов и функциями параметрического обучения ——аналогов системы зрения животных. Обсуждаются современные тенденции обработки изображений на основе описания понятий——объектов обучения как одного из примеров непараметрического обучения. Кроме того, приводится пример адаптивного к среде автомата как еще один пример непараметрического обучения насколько дру* гого рода и анализируется его работа.
ВВЕДЕНИЕ
Среди обучающихся систем, связанных с распознаванием образов, прежде всего следует назвать си- стему зрения животных и моделирующие ее экспериментальные системы. Из экспериментов Хабела и Визела по физиологии нервной системы, объектом которых была зрительная система кошек, стало очевидным, что эта система простирается от сетчатки глаз до коры головного мозга и состоит из много слойиой сети нервных волокон, а образы, распознаваемые нервными клетками — элементами структуры этой системы, становятся все более сложными на каждом слое. Одновременно и параллельно с ними Розенблатт и Блок построили модель зрительных нервных цепей на основе знаний о физиологии известных в то время нервов, а также экспериментально н теоретически изучили процесс распознавания образов и функции обучения в такой модели. Сравнение поведения смоделированных нервных цепей и поведе^ ния. зрительной системы животных позволило еде、 лать еще один шаг в так называемом структурном
、
исследовании, цель которого ——объяснение базовой структуры зрительной нервной системы. В данной главе будет детально описана система, называемая перцептроном, а также неокогнитрон, созданный по проекту Фукусима как модель с развитой самоора низацией.
Неокогнптрон ——это экспериментальная система, реализованная на базе минн-компыотера, после обучения она за несколько секунд может распознавать знаки, написанные с помощью специального устройства ввода. Если ограничиться только способностью к распознаванию, то эта система может послужить превосходной основой для создания механизмов считывания почтовых индексов и другого подобного применения. Более того, благодаря исследованиям стала очевидной связь между структурой нервной системы или подобной модельной системы и функциями обучения и распознавания. Так, неокогнитрон демонстрирует не только способность к классификации по внешним признакам, как перцептрон, но и способность к самообучению, другими словами, если неоднократно показывать неокогнитрону один и тот же знак до тех пор, пока реакция на него не будет стабильной, а затем повторять этот процесс при переходе к следующему знаку, то автоматически будет приобретена способность к распознаванию образов. Кроме того, благодаря добавлению цепей обратной связи эта система может приобрести способность к ассоциации. Это привело к новым идеям о структуре и функциях зрительной систем ы животных. Далее в процессе обучения перцептрона, неокогпит- роиа и нервной системы обнаруживаются общие моменты —это параметрическое обучение, которое заставляет меняться параметры связи между элементами их структуры.
Распознавание образов и главным образом распознавание знаков ——это одна из тем исследований з области искусственпого интеллекта. В частности, успешно ведутся исследования распознавания предметов, связанные с необходимостью развития техники обработки, скажем, рентгеновских снимков и авто- матизацни современных технологических процессов
изготовления и контроля изделий; от распознавания двумерных форм переходят к трехмерным объектам и даже к трехмерным движущимся объектам. Одновременно эти исследования ассимилировали идеи описания понятий в стремительно развивающейся инженерии знаний, причем результаты распознавания не ограничиваются лишь установлением соответствия с обозначениями понятий, а получили дальнейшее развитие вплоть до требования установить связь с описаниями структурных понятий. Уинстон п на примере тел простой структуры определил методы обучения простым понятиям, и благодаря его исследованиям проблемы обучения были возрождены и в других областях. Об этом подробно рассказано в гл. 9. Опубликованы сообщения о системах, которые ориентированы на приобретение описаний понятий через обработку черно-белых изображений. Подобные системы можно назвать первыми системами, которые непараметрически обучаются общим понятиям, связанным с несколькими объектами-телами. Об этом также будет подробно рассказано.
МОДЕЛИ СЕТИ НЕРВНЫХ ЦЕПЕЙ
Как указано в разд. 5.1, Хабел и Внзел установили» что зрительная система кошек имеет структуру, состоящую из более чем трех слоев, от зрительного нерва эта система простирается до зоны зрения в коре головного мозга, а нервные клетки как структурные элементы каждого слоя реагируют на сложные черно-белые образы, отображающиеся на сетчатке глаза. В отличие от подобных аналитических методов, с помощью которых шаг за шагом анатомически и психологически пытались объяснить структуру зрительной нервной системы животных, рассмотренные ниже перцептрон, когнитрон и неокогнит- рон — это все проекты исследования тех же проблем ко и стр у кт и вными методами, которые одновременно предполагалось применить и к реальным объектам,
D См.; Психология машинного зренпя/Пол рел.- П. Уинсто- иа. — М.: Мир, 1978.—Пргм!. перса.
например для распознавания знаков, а именно: бла* годаря выдвижению гипотез о неизвестных элементах зрительной системы в дополнение к полученным в эти годы результатам анатомических и психологических исследований были построены модели и проведено сравнение их работы с функциями реальной зрительной системы, а затем через проверку правильности или недоработки этих гипотез была уточнена структура зрительной системы.
ОБУЧАЮЩАЯСЯ СИСТЕМАС УЧИТЕЛЕМ — ПЕРЦЕПТРОН
В 1958 г. Розенблатт построил систему, которая обучается образам и построена на основе модели нервных цепей с трехслойной структурой, схематично показанной на рис. 5.1, назвал ее перцептроном и дал теоретическое обоснование ее работы. Особенность этой системы состоит в том, что между элементами первого и второго слоев фиксированы случайным образом линии связи, ведущие от нескольких элементов первого слоя к одному из элементов второго слоя и имеющие неизменные коэффициенты связи, а гибкость структуры обеспечивается за счет изменения коэффициентов связей между элементами второго и третьего слоев (от одного к нескольким). Выходы каждого элемента имеют два значения (например, 1 и 0). Для обучения этой системы распознаванию образов первому слою поочередно показывают эти образы, к для каждого из них извне указывают тот образ- реакцию, который должен выдать третий слой, а пер- цептрон в соответствии с заданными правилами обу-
Входной “обВходной “обВторойВь1ходноцслойслойВторойВь1ходноцслойслойРнс. 5.1, Структура трехслойиого перцептрона.Рнс. 5.1, Структура трехслойиого перцептрона.
Входной “об
Входной “об
ВторойВь1ходноц
слойслой
ВторойВь1ходноц
слойслой
Рнс. 5.1, Структура трехслойиого перцептрона.
Рнс. 5.1, Структура трехслойиого перцептрона.
чения заставляют менять коэффициенты связей до тех пор, пока не будет получена нужная реакция. Согласно классификации по внешним признакам, это система, обучающаяся с учителем.
Механизм обучения. Данный процесс можно назвать обучением с акцентом на коррекцию ошибок, причем коррекция коэффициентов связей выполняется только в случаях ошибочной реакции. Коррекция затрагивает все коэффициенты входных связей, которые подключены к элементам с ошибочной реакцией. Испытаны различные правила коррекции, и почти при. всех правилах обучение шло успешно. Наиболее простое правило устанавливает следующую зависимость между входом 尤"i-ro элемента, желаемым выходом di и величиной коррекции коэффициента связи А:
если %订=由, то а” + А,
если 修/ 声 必,то а〃 一 a,
В экспериментальном перцептроне первый с^ой состоял из 20 X 20 = 400 элементов, второй ——также из 400, а третий — из 8 элементов. Соответствующее устройство могло правильно распознавать заданные буквы, показанные в определенном месте. Кроме того, сообщалось о возможности обучения классифун кации нечетных и четных цифр.
Система с внутренними связями. Была предложена усовершенствованная система с еще одним слоем, имеющим связи с первым и вторым слоями. Выходы четвертого слоя в такой системе определяются двумя элементами: входным набором и реакцией элементов взаимосвязи, поэтому возникают временные зависимости. Следовательно, предоставилась возможность обучения не только распознаванию отдельных образов, но и выявлению временных последовательностей типа движения образа. При моаехированнн в реальных условиях был получен следующий результат: после того как систему научили давать одну и ту же реакцию на некоторый образ, а также параллельный
перенос и вращение этого образа, ее обучили реакции иа второй образ, а затем показали параллельный перенос и вращение второго образа, при этом наблюдалась тенденция к появлению той же реакции, что и на второй образ. Это, видимо, означает, что до стигнуто обучение форме движения, представленного во времени такого, как двухмерное движение. Однако подобный способ обучения еще недостаточно теорень чески обоснован.
Логические функции нервных клеток. Действие модели нервных клеток как минимальных конструктивных элементов перцептрона можно описать следующим образом. Клетки первого слоя возбуждаются или не возбуждаются в зависимости от того, по падает ли на них свет. При возбуждении с выхода клеток выдается сигнал 1, который достигает второго слоя. Во втором и последующих слоях действует следующая зависимость между входным сигналом 尤匕 принимающего два значения в зависимости от воз・ буждения 1-й клетки предыдущего слоя, коэффициент том связи а〃 (между i-й клеткой и j-й клеткой данного слоя), порогового значения 0 для /-Й клетки и ее выходом 力:
если 2&宀一%》0, то 为=1;
(здесь ,/ = 1 или 0);
если 2°,产i—%V°, то yt — 0.
Логический механизм с такой логикой называют пороговой логикой.
Пороговая логика исследована достаточно полно. Очевидно, что пороговые элементы с наиболее про стой структурой можно реализовать с помощью логи- ческих элементов И, ИЛИ, а также, если допустить отрицательные значения коэффициентов связи, элемента НЕ. Известно также, что с помощью комбинации таких элементов можно реализовать произвольную логику. Кроме того, каждый элемент имеет запаздывание, используя которое можно реализовать функцию запоминания. Следовательно, можно со-
здать арифметическо-логическое устройство компьютеров по аналогии с сетью нервных цепей.
Рассмотрим логические функции отдельной клетки геометрически. Если число входов в клетку равно п, а входные значения ——только 1 или 0, то множество входных образов образует n-мерный единичный куб. Если мы распределим по вершинам этого куба образы, которые должны возбуждать, и образы, которые не должны возбуждать клетки, так, чтобы при этом множество образов можно было разбить на 2 подмножества с помощью п-мерного сечения которое определяется коэффициентами связи。订 и пороговыми значениями 0/, т. е. так, чтобы оба подмножества были выпуклыми, то клетки могут осутест- влять распознавание. Если на процесс обучения перцептрона взглянуть как на процесс возбуждения клеток, то видно, что при изменении значений а〃・ в соответствии с реакцией на входной образ меняется на- клон такого сечения. Перцептрон и описанный далее неокогнитрон — это механизмы, способные к такому параметрическому обучению.
О способности перцептрона к распознаванию образов подробно рассказано в книге Минского и Пей- перта «Перцептроны. Введение в вычислительную геометрию», изданному Массачусетским технологическим институтом, США, в 1969 r.1J
СИСТЕМА, ОБУЧАЮЩАЯСЯ БЕЗ УЧИТЕЛЯ — НЕСКОГНИТРОН
Метод, при котором одновременно с входным образом показывается результат его распознавания, так как при обучении трехсложного перцептрона, назы「 вается методом обучения «с учителем». В октичие от этого метода обучение, при котором выходная реакция при распознавании каждого образа в процессе
и Имеется перевод: Минский М.) Пепперт С. Перцептроны, —М.: Мир, 1971. Прим. персе.
обучения анализируется автономно, называется обучением «без учителя». Предложено несколько моделей сетей нервных цепей (с многослойной структурой) ,которые обучаются без учителя. В целом их структура аналогична структуре перцептрона. Рао смотрим один из примеров ——неокогнитрон.
Поскольку методы обучения перцептрона и неокогнитрон а различны, то различны и правила их обучения, и модели нервных клеток как основных элементов (рис. 5.2), и структура сети нервных цепей. Основные отличия неокогнитрона заключаются в следующем:
реакция клеток не дискретна (два значения), а непрерывна;*
в качестве принципа обучения использована 《гипотеза обнаружения максимальных значений». Ее можно сформулировать следующим образом: «Усиливаются сигналы клеток, локально показывающих максимальный выход. Правило усиления: коэффициенты связей клеток, у которых входные сигналы, поступающие от клеток с максимальным выходом, не равны нулю, увеличиваются на величину, сравнимую с входным значением»;
введены контрольные клетки, это клетки с отрицательными коэффициентами связей.
Приведенная выше гипотеза исходит из предпосылки, что модель клетки имеет вид, показанный на рис, 5.2, причем свойства 1 и 2 неразделимы. Следуя правилу обучения 2, усиление затрагивает все элементы, которые случайно дают сильную реакцию на некоторый входной образ, т. е. впоследствии они начнут избирательно реагировать на этот образ, бла-
Рн& 5,2, Модель нервной клетки,
годаря чему реализуется независимое обучение без учителя. В реальном неокогнитроне введено несколько дополнительных усилений, в частности усиливаются не только элементы с максимальным выходом, но и группа элементов в окрестности последних.
И еще об отличиях в структуре: неокогнитрон по сравнению с перцептроном имеет много слоев, и главное отличие состоит в том, что после слоев с изменяемыми коэффициентами связи (слои клеток 5, или просто — слои S), расположены дополнительные слои с фиксированными связями (слои клеток С, или слои С). Фиксированные связи, как показано на рис. 5.3, ведут к определенным участкам слоя S и устанавливают связь типа ИЛИ, при которой возбуждение хотя бы одного из элементов слоя S приводит к возбуждению элементов слоя С.
Кстати, в неокогнитроне, так же как и в перцептроне, соединения между входным слоем и следующего за ним слоем USl отличаются от соединения между другими слоями, это не гибкие соединения, а, если можно так сказать, искусственные. Другими словами, элементы слоя US1 соединяются так, чтобы они реагировали на несколько заранее подобранных базовых образов на входном слое (Т-образные образы на рис. 5.4), причем элементы, реагирующие на конкретный образ, локализуются и создают группу в слое Usi・ Элементы слоя Uc【一слоя С, примыкающего к слою Usi,一соединяются в соответствии с правилами соединения слоев S н С, приведенными выше, поэтому каждый элемент слоя Uc\ также реа: гирует на любой из базовых образов из некоторой области входного слоя. Вследствие такой структуры неокогнитрону присущи допуски на смещение образов.
Второй слой S . и последующие слои имеют структуру, описанную в начале раздела, они самоорганизуются по правилам обучения, поэтому Допуски на смещение усиливаются с каждым слоем Одновременно гарантируется, что неокогнитрон может обучаться комбинации базовых образов, образующих целый образ для обучения, а также сможет
правильно отреагировать на их смещение относительно друг друга.
Если ранее извлекались пространственные особенности, которые возбуждаемые элементы строили в зависимости от обучаемого образа, то эти слои, со^ держащие контрольные элементы 3, уже играют новую роль: они извлекают особенности, характерные для участков вне образа.
Авторы неокогнитрона (Фукусима и Миякэ) показали, что благодаря введению цепей обратной связи в соответствующие места двух систем можно реализовать процесс автореакцип с ассоциативными функциями. Другими словами, экспериментально установлено, что если сразу показать 《кучу》 образов, которым система уже обучена, то будут выданы непрерывно изменяющиеся образы, а среди них последовательно один за другим будут показаны все об* разы из этой кучи. Аналогичные эксперименты так-
Рис. 53 Структура неокогнитрона.
Рнс, 5.4. Фиксированные связи между входным и первым слоя-мн неокогнитрона.
же показали, что даже при вводе части запомненных образов можно восстановить все изображение. Таким образом, очевидно, что неокогнитрон обладает ассоциативными функциями.
НОВОЕ НАПРАВЛЕНИЕ — КОННЕКТИОНИСТ
В последнее время, когда стала возможной реализация крупных параллельных систем, обусловленная развитием интегральной технологии, был предложен проект системы, аналогичной перцептрону, под названием коннектионист D. Как отмечено выше, перцептрон и неокогнитрон ——это модели зрительной системы, в основном выполняющие распознавание образов, тогда как коннектионист создан с целью всеобъ* емлющей обработки информации вплоть до символьной обработки. Распознавание образов в этой системе предполагалось реализовать с использованием элементов, похожих на нервные клетки. Для обработки на символьном уровне предложен набор различных базовых схем, в частности правило вида «если-то> реализуется с помощью двухкаскадной схемы И-ИЛИ, реализованы схемы выбора максимального значения, схемы просмотра таблиц и другие схемы. Путем комбинации этих схем предполагалось встраивать в систему разнообразные алгоритмы, таким образом были предложены идеи, отсутствующие у перцептрона. Даже в распознавании образов есть новые идеи: в структуру цепей введено понятие обработки сверху-вниз, к элементам для распознавания букв добавлены входы обратной связи, указывающие связность последовательности букв в слове.
ОБУЧЕНИЕ ПОНЯТИЯМПО ИЗОБРАЖЕНИЯМ
Об обучения понятиям подробно рассказано в разд. 5.1. Предложенные до сих пор методы обучения понятиям связаны с понятиями объектов, а идентификация этих понятий осуществлялась через показ нескольких конкретных физических объектов, и Ог английского слова conneclionist (связист), -=■ Примч перев.
принадлежащих к данной категории (понятию), и извлечение общего в отдельных частях и структуре объ- ектов. Такое обучение отличается от параметрического обучения, рассмотренного выше.
Идея на первый взгляд проста, однако прежде всего не понятно, возможно ли определение понятия через показ каких-либо предметов? Кроме того, воз^ никает проблема: следует ли при обучении отбрасывать все элементы, которые с виду не имеют ничего общего, и не будут ли они иметь что-то общее в с〃у+ чае некоторых отличий на следующих этапах обучения? На эти вопросы в проекте обучения понятиям дан однозначный ответ. Уинстон предложил ввести понятие «почти-то». Это пример, не принадлежащий к той категории, которой обучают, из-за некоторых несоответствий, например отсутствия одной из связей между частями объекта. Важность понятия <кпочти-то» состоит в том, что с его помощью можно установить свойства, содержащиеся во всех подтвер- ждающих их примерах, но не включенные при опре-< делении «почти-того» объекта, другими словами, свойства, которые обязательно должны присутствен вать при определении данного понятия.
ОТ ЧЕРНО-БЕЛОГО ИЗОБРАЖЕНИЯК ОПИСАНИЮ ПОНЯТИЯ
Теория обучения Уинстона 】)возникла из описания заданных понятий в виде несложных контурных рисунков, которые были придуманы всего лишь для облегчения понимания человеком содержания описания понятия, а в результате Уинстон пришел к обучению понятия с помощью их графического представления, данного вместе с рисунком. Изображение и рисунки ——самое подходящее средство с точки зрения человека не только для того, чтобы дать примеры, но и для представления и понимания предметов. Поэтому можно ожидать их широкого использования как одной из форм ввода-вывода в системах обработ-
ки информации. Однако исследование такого применения изображений — дело будущего. Бреди, используя молоток как пример входного изображения, указал метод его разделения на рукоятку и головку, определения в результате обработки изображения' соединительных связей между ними и символьного представления структуры молотка. Применяя этот метод к трем изображениям молотка, он получил соответствующие описания понятия, сформировал некое обобщенное описание из общих частей, указал процесс получения символьного описания понятия по примерам изображений и тем самым получил ответы на указанные в конце предыдущего раздела проблемы.
Прежде при распознавании образов сначала выполняли распознавание объекта по его внешним формам—контуру, плоскостям и т. п. или по его особенностям, а затем устанавливали соответствие с понятием. Позже стали использовать знания о сопоставлении образов (обработка сверху-вниз» управление по инициативе моделей). Классический метод—предварительное ограничение класса объектов, которые предстоит распознавать, запоминание внутр1гтистемы их моделей и распознавание объектов путем выбора способа и процедуры обработки изображения с использованием таких моделей. Система ACRONYM, разработанная Бруксом и Бинфордом в Станфорд- ском университете (США) — типичная система, использующая этот метод. Пример модели в этой системе приведен на рис. 5.5. Если распознавание прошло успешно, то с помощью модели, заложенной в систему, н трехмерной структуры объекта можно
Рис. 5.5. Модель в систем ACRONYM (цилиндрическое пред* ''ставление).
одновременно определить положение и угол зрения объекта на изображении. Этот метод применим не только к распознаванию простых предметов, он может служить основой для различной обработки, следующей за распознаванием образа.
Упомянутые выше исследования Бреди ——это шаг назад по сравнению с системой ACRONYM в том смысле, что они ограничивались пониманием двухмерной структуры, а в последней системе внутренняя структура предмета, заранее заданная в виде модели, определялась пз изображения путем анализа снизу-вверх, и в принципе не стоит считать недостатком тот факт, что класс объектов обработки ограничивался встроенными моделями. Системы, которые позволяют закодировать указанные им объекты до уровня, позволяющего использовать их для обучения и выводов, играют важную роль, поскольку они связывают существующие методы обработки .изображений с методами искусственного интеллекта. Рассмотрим далее суть исследований Бреди.
Анализ структуры предмета на основе его изображения. Для того чтобы получить описание нескольких предметов, принадлежащих одной категории по их черно-белым изображениям, необходимо прежде всего уметь извлекать предметы из заданного изображения. Однако выделить их из общей сцены крайне сложно, поэтому Бреди использует лишь изображения, включающие только изучаемые объекты.
При анализе структуры предмета на первом этапе необходим。разбить его на части, имеющие четкие формы и функции. Если удастся получить подобное разбиение, то второй этап — получение абстрактного описания понятия как описания взаимосвязей между частями — уже сравнительно простая операция. Бреди, Асада и Коннел для первого этапа ввели понятие сглаженной локальной , симхгетрпи, провели разбиение на частичные структуры, а на втором этапе использовали взаимосвязи полученных структур и создали окончательное представление в виде сети. Если с помощью такой обработки получить описание структур из черно-белого изображения нескольких
объектов, представляющих одно и то же понятие, то можно применить указанный выше метод обучения понятию Уинстона (см. рис. 5.9, 5.10},
Сглаженная локальная симметрия (СЛС). Понятие СЛС — это интересное предложение для анализа структуры предмета на основе его формы. Если локальная или глобальная симметрии предмета отражают особенности его конструкции, то это повышает эффективность анализа структуры.
Определение 5J. Если внешние нормали '{или касательные) к двум точкам контура и отрезок, соединяющий эти точки, имеют равные смежные углы, то говорят, что контур между этими двумя точками имеет СЛС (рис. 5.6).
Примеры СЛС всем известных предметов приведены на рис. 5.7. Выявление СЛС для контуров, полученных при обработке реальных изображений, весьма сложная операция из-за ошибок в выделении форм и влияния помех. Поэтому на предварительном этапе обработки необходимо сглаживание, т. е. глобальная обработка форм.
Понятие СЛС очень похоже иа геометрическое место центров вписанных окружностей, которое преж- де использовали для выделения центральной линии предмета, но между ними есть и различия (рис. 5.8)<
Выделение частичной структуры. Для изучения особенностей СЛС введем два определения.
Рис. 5.G. Определение С〃С. Рис. 57 СЛС и моделях,
Определение 52 Покрытием называется часть контура, образованная линиями продолжения СЛС.
Определение 53 Вложение между линиями продолжения СЛС определяется через вложение между покрытиями.
С помощью вложений определяется полуупорядо- ченная связь между фрагментами с СЛС. СЛС с большим покрытием можно рассматривать как глобальную симметрию, поэтому максимальные элементы полуупорядоченного множества вложений являются кандидатами на частичную структуру. Такая структура образуется из элементов, начиная с элемента с максимальным покрытием; процесс образования структур прекращается, когда будет покрыт весь контур.
Взаимосвязи между подструктурами. Взаимосвязи между подструктурами, полученными в процессе указанной выше обработки, образуются в зависимости от наличия или отсутствия соединений, эта взаимосвязь имеет два атрибута. По внешнему виду такие соединения можно разбить на соединения—сторона- конец и конец-конец. Первое соединение — это соединение конца одной СЛС с серединой другой СЛС. В случае соединения сторона-конец используются два параметра, качественно выражающие вид соединения: угол пересечения двух СЛС и расположение точки соединения, а в случае соединения конец-конец—только угол пересечения. Как видно из рис. 5.9, на практике разбиение можно выполнять и по форме концевой части.
Отношения соединений частичных подструктур и описание понятия. Если каждую подструктуру представить вершиной, а отношение соединения — ориентированной ветвью, пометив ее параметрами соединения, то получим представление в виде сети. Пример представления приведен на рис. 5.9. Из этого рисунка видно, что две части предмета изначально и, может быть, слишком поспешно поименованы как голОвка и рукоятка, но при последующем тщательном
Рис. 5.8. Центральные линии, а — геометрическое место центров 'вписанных окружностей; 6—СПС,Рис. 5.8. Центральные линии, а — геометрическое место центров 'вписанных окружностей; 6—СПС,
Рис. 5.8. Центральные линии, а — геометрическое место центров 'вписанных окружностей; 6—СПС,
Рис. 5.8. Центральные линии, а — геометрическое место центров 'вписанных окружностей; 6—СПС,
молоток--!.
имеетимеетПрямейПрямейдлинныйдлинныйлерпендикупярный-к ,лерпендикупярный-к ,имеетимеетимеетимеетро6斤Ь皮ро6斤Ь皮около-серединыоколо-серединыотделяй шийсяотделяй шийсярукоятка-1 имеет 1рукоятка-1 имеет 1изогнутый-в- направпенинизогнутый-в- направпенинудлине>:ньь средне\ дпиныудлине>:ньь средне\ дпиныроЗный ровныйроЗный ровныйотделяю* лрллоЗ'^ися / пиН9ННыЬотделяю* лрллоЗ'^ися / пиН9ННыЬприкр9плен-к\прикр9плен-к\слева-от спрэза-от 二jконец-З*^слева-от спрэза-от 二jконец-З*^изогнутый Ммеетизогнутый Ммеетспрзва-от слева-от / ^^конец-г-^ —\ сторона Jeuспрзва-от слева-от / ^^конец-г-^ —\ сторона Jeuимеетимеетснезз-отснезз-отсоединенный-всоединенный-вголовка-1головка-1слеоа-отслеоа-отимгзт/слразз-от.имгзт/слразз-от.справа-от * с.?еба-от \имвет коиец-5справа-от * с.?еба-от \имвет коиец-5хторона-1 X。斤泅 тупой сторона-2 c/nopowa—сторона-3 цон&Ц роОныО сгсрона-4хторона-1 X。斤泅 тупой сторона-2 c/nopowa—сторона-3 цон&Ц роОныО сгсрона-4СторонаСторона0Ь,"КЛЬ1。0Ь,"КЛЬ1。pC'i^jIUpC'i^jIUрасползжен-й-ценгра 皿口°建расползжен-й-ценгра 皿口°建CG叩汕CG叩汕
имеет
имеет
Прямей
Прямей
длинный
длинный
лерпендикупярный-к ,
лерпендикупярный-к ,
имеет
имеет
имеет
имеет
ро6斤Ь皮
ро6斤Ь皮
около-середины
около-середины
отделяй шийся
отделяй шийся
рукоятка-1 имеет 1
рукоятка-1 имеет 1
изогнутый-в- направпенин
изогнутый-в- направпенин
удлине>:ньь средне\ дпины
удлине>:ньь средне\ дпины
роЗный ровный
роЗный ровный
отделяю* лрллоЗ
'^ися / пиН9ННыЬ
отделяю* лрллоЗ
'^ися / пиН9ННыЬ
прикр9плен-к\
прикр9плен-к\
слева-от спрэза-от 二jконец-З*^
слева-от спрэза-от 二jконец-З*^
изогнутый Ммеет
изогнутый Ммеет
спрзва-от слева-от / ^^конец-г-^ —\ сторона Jeu
спрзва-от слева-от / ^^конец-г-^ —\ сторона Jeu
имеет
имеет
снезз-от
снезз-от
соединенный-в
соединенный-в
головка-1
головка-1
слеоа-от
слеоа-от
имгзт/слразз-от.
имгзт/слразз-от.
справа-от * с.?еба-от \имвет коиец-5
справа-от * с.?еба-от \имвет коиец-5
хторона-1 X。斤泅 тупой сторона-2 c/nopowa—сторона-3 цон&Ц роОныО сгсрона-4
хторона-1 X。斤泅 тупой сторона-2 c/nopowa—сторона-3 цон&Ц роОныО сгсрона-4
Сторона
Сторона
0Ь,"КЛЬ1。
0Ь,"КЛЬ1。
pC'i^jIU
pC'i^jIU
расползжен-й-ценгра 皿口°建
расползжен-й-ценгра 皿口°建
CG叩汕
CG叩汕
Рнс. 5。Описание понятия, выведенное пз одного молотка»
анализе структуры предмета на изображении становится очевидно, что такое сетевое представление понятия имеет глубокий смысл.
5.3.,ОБУЧЕНИЕ ПОНЯТИЮ
Если выполнить обработку, рассмотренную выше, для нескольких примеров, принадлежащих одному понятию, то окажется, что полученные сетевые представления имеют много общего в своей основной структуре. Коннелл и Бреди, используя этот метод при обучении понятию только по подтверждающим примерам, вывели представление понятия 《молоток》 (рис. 5.10).
К этим исследованиям еще только приступили, и едва ли методы разбиения изображения на элементы
ограничиваются только СЛС, нужно разрабатывать и другие методы. Например, предложены методы, которые также используют локальную симметрию. В дальнейшем, видимо, объектами разбиения будут трехмерные рисунки.
5』.СИСТЕМЫ, АДАПТИРУЮЩИЕСЯК СРЕДЕ
Мир объектов обучения разнообразен, и кроме области, в которой объекты на зтапах, предшествующих пониманию, можно представить в виде конструктивной модели, строго описывающей структуру об、 екта, существуют и миры, объекты в которых суть абстрактные данные. В этом разделе мы рассмотрим область так называемой теории игр и ознакомимся с дискуссией о связи структуры н действия. Цетлин поместил систему в среду, характеризующуюся ве~ роятностной реакцией, провел анализ связи ее структуры м поведения н рассмотрел с позиции теории игр адаптацию системы к такой среде. В качестве модели среды он выбрал случайную информацию, т. е. рассматривал систему, которая возвращает ответ случайным образом в зависимости от своей реакции, и, противопоставив такой среде конечный автомат как адаптирующуюся к среде систему, впервые формализовал эту проблему. Позже Крылов , Фу п Ли, Та- кэутн и Китахаси и другие исследователи попытались найти обобщение путем превращения среды в нестационарную, заменой обучающейся системы на изоморфные автоматы, и сформулировали в общем случае эту проблему как игры между несколькими людьми. В каждом случае предлагались усовершен' ствованные автоматы, представляющие собой обучающиеся системы, и изучалось их поведение. Ниже кратко рассмотрим эти исследования.
АВТОМАТЫ. АДАПТИРУЮЩИЕСЯ К СРЕДЕ
Основы поведения автоматов, адаптирующихся к среде, можно представить следующим образом. Автомат имеет несколько цепочек состояний, отвечающих стратегии адаптации, и если он сталкивается с ситуацией (/ = 0), к которой стремится адаптироваться, то переходит к состоянию в направлении, из которого эта стратегия не позволяет выбраться, и, наоборот, если в качестве реакции возвращается ситуация (/ = 1), к которой не следует адаптироваться, то осуществляется переход к состоянию в■направлении, в котором эту стратегию можно изменить.
Цетлин предложил автомат с наиболее простой структурой, удовлетворяющей этим условиям, который имеет механизм смены состояний (рис. 5.11). Назовем его автоматом
Такэути и Китахасн предложили несколько вероятностных автоматов со структурой, такой, что в ситуации, к которой нужно адаптироваться, стратегию изменить чуть более трудно, чем в автомате 41, а функции адаптации более общие. Один из таких автоматов показан на рис. 5.12, назовем его автоматом ЛИ.
Фу и Лн предложили автомат ЛШ, отличающийся от 41, как показано на рис. 5.13, только переходами из состояния в состоянне при / = 0, его поведение лучше1, чем у 4L Ознакомимся с некоторыми типовыми рассуждениями.
К7=1
Рис, 5;11, Схема переходов нз состояния в состояние адаптирующегося к среде автомата УЛ.
рис 5 12 Схема переводов из состояния в состояние автомата I “ ЛИ: а —случай 7 ^ 0;(5 —случай / «» 1.
Рнс, 5.13. Схема переходов из состояния в состояние автоматаЛШ: при / = 0.
СТРУКТУРА И ПОВЕДЕНИЕ АВТОМАТОВ,АДАПТИРУЮЩИХСЯ К СРЕДЕ
В отличие от случайной среды, введенной Цетлнним, адаптируемость к среде автомата ЛИ, предложенного Такэути и Такэхаси, означает выбор оптимальной стратегии в смысле минимизации ожидаемого значения потерь. Рассмотрим это более подробно.
Структура автомата. В случайной среде С с вероятностью 〃j в ответ на выходной сигнал О, авто- мата, подключенного к этой среде, подается отклик / = 1 (для автомата это вход, указывающий потери) в с вероятностью ⑺=1—р£- — отклик / = 0 (прибыль для автомата).
Автомат ДП ——это конечный вероятностный авто^ мат, определяемый следующим образом:
автомат АII; ({S}, {/}, {О}, Ф, f);
S(t+1) =①(S(f), /(/+1));
。(/) = 〃$(/))•
Здесь S(£)—внутреннее состояние автомата в момент 厶 / (/)—вход автомата в момент / (выход среды С); Ф ——функция перехода из состояния в состояние {S} X {/} {S}; 0(f) ——выход автомата в момент /, т. е. его стратегия; f — функция выхода {S}f {О}.
Анализ поведения автомата. Пусть для простоты рассуждений число стратегий равно 2, а цепочки состояний, представляющих стратегии, состоят из п состояний. Если подключить входы и выходы автомата ЛИ к случайной среде С, как показано на рис. 5.14, то переходы из состояния в состояние в этом автомате можно представить таблнией Р;* приведенной на рис. 5.15.
Это вероятностная таблица, поэтому поведение системы, которое можно представить как взаимные действия случайной среды С и автомата ЛИ, можно описать с помощью конечного марковского процесса. В целом можно считать, что вся система образует самоконтролирующий автомат.
Следовательно, если к订一вероятность того, что внутреннее состояние ДII в стационарном режиме равно S〃, то вектор состояний л =(冗“,Л12, ..., лщ, лги ...,冗2n)| имеет следующие свойства. Если обозна*
8)8)Рис. 5.14, Система, состоящая из случайнойРис. 5.14, Система, состоящая из случайной5ц5цSi2Si2•*""^1л $21 S??''''''•*""^1л $21 S??''''''Р1Р1О •♦••••О •♦•••••<ММ О•<ММ ОооSz. 。"…oSz. 。"…oS12S12%%оо必必SnSn$21$21ооооооо. 2:о. 2:矶矶0.0.о q;о q;ОО网网оооооо4242оооооооооо……о……о%%о “,”♦о “,”♦р; Q““”р; Q““”0 -ОМ»0 -ОМ»•0 Р;•0 Р;,"…о,"…оZ 4Z 45П,♦ Q5П,♦ Qq?q?ооР2Р2Q,Q,среды и автомата.
8)
8)
Рис. 5.14, Система, состоящая из случайной
Рис. 5.14, Система, состоящая из случайной
5ц
5ц
Si2
Si2
•*""^1л $21 S??''''''
•*""^1л $21 S??''''''
Р1
Р1
О •♦••••
О •♦••••
•<ММ О
•<ММ О
о
о
Sz. 。"…o
Sz. 。"…o
S12
S12
%
%
о
о
必
必
Sn
Sn
$21
$21
о
о
о
о
о
о
о. 2:
о. 2:
矶
矶
0.
0.
о q;
о q;
О
О
网
网
о
о
о
о
о
о
42
42
о
о
о
о
о
о
о
о
о
о
……о
……о
%
%
о “,”♦
о “,”♦
р; Q““”
р; Q““”
0 -ОМ»
0 -ОМ»
•0 Р;
•0 Р;
,"…о
,"…о
Z 4
Z 4
5П,♦ Q
5П,♦ Q
q?
q?
о
о
Р2
Р2
Q,
Q,
『Re, р/=; bypi^bzqi
(i=l,2)
рис. 5,15. Таблица переходов 尸?区门只 автомата ЛИ.
пить 力=b咼 + %%, 4 = 1 一 p尸a0 +02%"=1,2)* го из соотношений
Л =冗尸『
получим следующую систему уравнений относительно К":
.%I=q:(/l + 则 2);%=卷(电 1十%2);、
尸l咐1+巾】3;
%了=p的/7 + 9;% + 1; 电/ =心%一 + ^1^.
加CE加CEдопустить, что решение есть ли = а;~\ n2Z =з
加CE
加CE
*, то для л:1/,冗2/ в этой системе уравнений по-
一哈% - % + 加=0 (2=1, 2).
Разложив ыа множители, получим корни этого уравнения
а,[ = -7 » <Х/2 — 1.
Следовательно, считая К〃 Lz произвольными по* стоянными, можно определить общее решение в виде
При I = 1 получим Li = 0. (f = 1, 2), из выражений для 冗〃 и 冗切 определим значения Кз а ожидаемое значение потерь в нормальном состоянии р(ЛИ)
можно задать следующей формулой:
^吁、「汾不戸
Гарантия адаптируемости. В соответствии со структурой /III переход из состояния в состояние в случае / — 0 следует выполнять в направлении, сохраняющем текущую стратегию, а в случае / =1 — наоборот. Следовательно, справедлива следующая гнпо теза:
d > 历.
В действительности, если Ь{ > Ь^ то справедливо следующее соотношение между р; и pz:
e =丛"+ %瓦=Pg -%)+ %。
bi и 匕2 — положительные постоянные, по предположению bi —匕2 > 0, поэтому если
min {pt}= %,
то соответствующая им вероятность 儿 равна min{p;}. Справедливо также обратное соотношение.
Если, используя эти соотношения, минимизировать потери ЛИ, то в результате мы придем к самой длинной из стратегий, в соответствии с которой существует наименьшее число состояний, к которым не следует адаптироваться.
Если длины п цепочек состояний, представляющих каждую стратегию, имеют предел, то при min{pi} V V 1/2 получим
lim 戸(4II) = min {力}• n-> ОО
При этом из формул для рр Р[, % имеем
/ — ^ = Р血+仇历—у
=Pt (仇 一 ^") + 内(% 一 ^"),
поэтому если b{ W 1/2, то, как правило, независимо от значения р, справедливо 夕:< 1/2, Следовательно, если автомат ЛИ имеет структуру, удовлетворяющую условию
у ^tt > й2 > О,
то независимо от ограничений на параметры случайной среды ожидаемое значение потери автомата /Ш обеспечивает стратегию минимизации потерь. А это означает, что вероятность выбора этой стратегии равна 1.
В автомате ДI, предложенном Цетлиным, для выбора оптимальной стратегии поведения в случайной среде в указанном выше смысле придется вводить ограничение 〃 V 1 /2. Таким образом, можно считать, что ЛИ обладает более совершенной способностью к адаптации, чем
Этот вывод, приведенный для двух стратегий, можно распространить и на общий случай.
Скорость адаптации. Цетлин, Фу и Ли предложили аналогичные идеи адаптации к среде, но для опреде* ления скорости адаптации написали программы моделирования автоматов на компьютерах. Такэути и Китахаси показали, что эту скорость можно количественно оценить путем введения производящей функции. И в этом смысле /111 имеет лучшие характера- стики.
^.4.2. ДРУГИЕ ИД£И
До сих пор предполагалось, что случайная среда как объект изучения была стационарной, хотя изучается также адаптируемость автоматов, находящихся в нестационарной среде. Кроме того, Цетлнн и Крылов сформулировали проблему игр с нулевой сум мой между двумя автоматами. Чандрасекарам и Шен ввели изменения в структуру автомата. Однако в любом случае с точки зрения структуры поведение автоматов приводит к состоянию, не имеющему отношения к значениям фон Неймана в теории игр.
Усовершенствование структуры автоматов, приведенное Крыловым, Фу и Ли, Такэути и Китахаси, кан описано в предыдущем разделе, привело к улучшению их поведения в случайной среде. Одновременно было показано, что аналитически можно указать ряд автоматов, ожидаемое значение прибыли для которых в момент стационарного состояния при игре с нулевой суммой двух лиц совпадает со значением фон Неймана.
Выше была рассмотрена адаптивность при задан* ной структуре. Кроме того, было изучено применение в процессе адаптации различных структурных элементов и предложены идеи фиксации в механизме адаптации тех элементов, которые дают наилучшие результаты. Это так называемая теория развивающихся автоматов.
ГЛАВА 6.
ПРИОБРЕТЕНИЕ ЗНАНИЙ,ХРАНЯЩИХСЯ В БАЗАХ ДАННЫХ
Ю. Танака (Университет Хоккайдо)
Приобретение знаний, хранящихся в базах данных, осуществляется в процессе обновления данных пользователем. Но если такое обновление оставить без внимания, то может, скажем, оказаться, что возраст человека 500 лет, либо появятся два студента с одним номером зачетки, либо возникнет избыточность, либо будет неверным содержание базы данных. Для того чтобы предотвратить это, необходимо избегать нежелательных изменений. В данной главе прежде всего рассмотрим базы данных, на примерах объясним термин «запрос по образцу》 (ЗПО) в языке манипуляции данными, поясним, как записывать с помощью ЗПО ограничения для исключения нежелательных обновлений, прокомментируем проблемы предотвращения изменений, ведущих к противоречиям й избыточности, проблемы обновления с использованием не- полной информации и другие проблемы.
6」,БАЗЫ ДАННЫХ И ЯЗЫКМАНИПУЛИРОВАНИЯ ДАННЬЗМИ
БАЗЫ ДАННЫХ
Базы данных ——это средство для упорядочивания взаимосвязанной информации и унификации управления ее хранением. Пользователь баз данных может либо получать информацию, удовлетворяющую некоторым условиям, либо добавлять новую информацию.
Основной элемент информации, хранящейся в базе данных, называется записью. Каждая запись имеет несколько атрибутов и соответствующих им значений. Пример: {«имя>, Ямада Таро), (〈место жительства), префектура ОО, город △△, район XX» квар- тал•> номер дома + + )}. Эта запись с атрибу-
та ми <и мя> и (место жительства), она содержит информацию о том, что Ямада Таро живет в доме номер + + И т. д.
Про записи с одним и тем же множеством данных и однотипной информаций говорят, что они имеют один формат. Множество записей с одним форматом называют файлом. Множество файлов называют базой данных. В модели отношений, являющейся одним из способов представления баз данных 】),записи называют кортежами, а файлы — отношениями. На рис. 6.1 приведен пример базы данных. Каждое отношение на этом рисунке представлено в виде таблицы, каждая строка которой — запись или кортеж, а колонки—атрибуты. База данных определяется как множество отношений.
Операция извлечения различной специфичной информации из базы данных называется поиском. В модели отношений для поиска определяются операк^н выделения части таблицы, операции создания повой таблицы через слияние таблиц и другие операции добавления в базу данных новой информации, операции изменения старой информации, существующей в базе данных, или ее исключения, последние операции называют обновлением. Создают язык манипулирования данными, с помощью которого можно свободно описывать поиск и обновление в системе баз данных •и указывать системе управления базами данных, какие операции выполнять. Ознакомимся далее с запросами по образцу как одним из таких языков.
6.12 ЗАПРОС ПО ОБРАЗЦУ 13ПО)
На рис. 6.2, а приведен пример описания на языке ЗПО поиска в базе данных на рис. 6.1. Используя шаблон отношений, как в этом при мере на языке ЗПО, можно описать поиск и обновление. В графе 〈нмя〉шаблона вписано П. Танака, в графе (место рождения) —- Кусиро2).《口.》означать «печатать», т. е. следует выдать на принтер все значения колонка
1)речь идет о реляционных базах данных.—•"口”也"订из 2)Город на острове Хоккайдо. — Прим. /и/кз.
<имя> в кортежах, полученных в результате поиска. Слова Танака и Кусиро подразумевают следующее условие: если в колонке <имя> записано Танака, то в графе (место рождения) 9To貞 же записи должно быть Кусиро. Подчеркивание фамилии Танака означает 《например》, это не только условие 〈им升〉=Танака, но и условие <хесли в графе <имя>, например, стоит Танака, то эта запись удовлетворяет такому-то и такому-то условиям»; таким образом, Танака играет роль переменной. Кусиро здесь не подчеркнуто, что соответствует условию 《〈место рождения)——Кусиро».
Запись《口.》не в графе <имя>, а под названием отношения, как на рис. 6.2, б, означает вывод всех атрибутов. На рис. 6.3, а в графе〈возраст〉записано «> 20». Это означает: получить только кортежи, в графе 〈возраст〉которых значение больше 20. На рис. 6.3,6 в одной строке с П. Танака в графе <ме-
СтудентыИмяВозрастМесто рожденияRlaHaqКусироСтудентыИмяВозрастМесто рожденияRlaHaqКусироСтудентыИмяВозрастМесто рожденияСтудентыИмяВозрастМесто рожденияКуси'роКуси'ро
Студенты
Имя
Возраст
Место рождения
RlaHaq
Кусиро
Студенты
Имя
Возраст
Место рождения
RlaHaq
Кусиро
Студенты
Имя
Возраст
Место рождения
Студенты
Имя
Возраст
Место рождения
Куси'ро
Куси'ро
Студенты
1 Студенты
Нмн Возраст 糕募^
ИмяXq66h
Судзуки19 Иокогама
Судзуки Теннис '
Ямада2Q Кусиро
Ямада бейсбол
Накамура 23 Кобз
Ямада Теннис
Танака22 Киото
Накамура Настольнь(й
теннис
Саю22 Киота
Накамура Теннис
J■ …1 ,
Накамура бейсбоп
СатаТеннис
СатоЬейсбоП
Рнс. 6」.База данных.
Р"Е/:2 "°"'* в базе данных на рис. 6.1: а —«ВыдаИ ге нмена лтов, родившихся в Куснро》;6 — «Выдайте записи о сту-* рентах, родившихся в Кусиро».
сто рождения) указано Кусиро, а в одной строке с П. Накамура в графе (возраст) указано «> 20». Это поиск студентов, родившихся в Кусиро и/или имеющих возраст больше 20 лет. На рис. 6.3, и записаны две строки: (П. Танака, бейсбол) и (П. Танака, теннис). Это запрос на поиск людей, интересующихся одновременно бейсболом и теннисом.
На рис. 6.4, а использованы шаблоны двух отно- ■ шений и заполнены две графы: графа <имя> отношения «студенты», в которой записано Танака, и это же имя записано в графе 〈нмя〉отношения «хобби». Так обозначается поиск по двум отношениям: некто имеет, например, фамилию Танака и возраст больше 20 лет, требуется найти все имена и хобби. На рис. 6.4, б использован знак《一'》(отрицание), это поиск имен, возраста и мест рождения всех студентов, не интересующихся бейсболом.
На рис. 6.5,а использована переменная ВСЕ в значении ВСЕ.Х. Такая запись во второй строке означает перечень всех хобби Танака. А эта же запись в первой строке указывает вывод имен всех студентов, имеющих такое же хобби, как в этом перечне. На рис. 6.5,6 запись ВСЕ.区 относящаяся к Накамура в примере а, заменена на набор «ВСЕ.Х и точка». Эта точка указывает, что Накамура может иметь хобби. Следовательно, будет идти поиск имен студентов, имеющих по крайней мере все те же хобби, что и Танака, включая самого Танака.
В качестве переменных для выбора значений типа ВСЕ.Х можно использовать СУМ (сумма), СРД (среднее), МАК (максимум), МИН (минимум) КЛЧ (количество) и другие. На ptic. 6.6, а дан пример использования КЛЧ, это запрос о количестве хобби у Танака. На рис. 6.6, б— пример использования переменной УН (уникум), исключающей дубликатные значения из множества значений, это запрос о количестве всех хобби в базе данных.
Операции, связанные со вставкой, удалением или заменой заш^сси в некотором отношении выполняются при указании в графе с названием отношения елме*
Студенты
Имя
Возраст
Место рождения
П.Танака
>20
а
Студенты
Имя
Возраст
Место рождения
П. Танака
Кусиро
П.На 代储 ура
>20
б
Хобби
Имя
Хобби
ПЛанц^г!
Ьейсбол
П.Такака
Теннис
6
1
Хобби
Имя
Хобби
П. Накамура
ОСЕЛ-
Танака
ВСЕ.Х
Хобби
Имя
Хобби
П.Накамура
"все.х!
,Танака
ВСЕ.Х
Рис. 6.5. Поиск в базе данных на рис. 6.1: студентов, все хобби которых полностью Танака»; 6 — «Выдайте имена студентов, же, что и Танака».
Хоббн
Имя
Хоббн
Танака
1кЯi即込
а — «Выдайте имена совпадают с хобби интересующихся тем
Хобби
Имя
Хобби[
ПЛПХ УН回込
Рис, 6.6. Поиск в базе данных на рис. 6」:а — «Выдайте,сколько хобби имеет Танака»; 6 — «Выдайте, сколько всего хоб-би появилось в базе данных».
Рис. 6.3. Поиск в базе данных на 卩:с 6】:а ——«Выдайте именастудентов старше 20 лет»; б ——«Выдаете имена студентов стар-ше 20 лет и/ил и родившихся в Ку сиро»; е — «Выдайте имена сту-дзптов, интересующихся бейсболом и теннисом》.
Сгуденть!
Имя
Возраст
Место рождения
》20
а
1 Студенты
1
Нмя
Возраст
Место рождения
Хоббн
Имя
Хобби
Танака
>20
а
П.
Танака
^Студенты
Имя
Возраст
Хобби
Имя
Хобби I
П.
Танака
~1
Танака
Бейсбол
б.
Рнс, 6,4. Поиск в базе данных на рис и хоббн студентов старше 20 лет»; б раст и место рождения студентов, нс
лом».
6」:а — «Выдайте имена
—«Выдайте имена, воз- интересующихся бейсбо*
仇 8мткап 18№6з
6
Студенты Имя Возраст 讎編^
Ямада
в
Рис. 6.7. Обновление базы данных на рис. 6」:а — «Исключитезаписи о студентах старше 20 лет; б—«Вставьте запись (Яма-кава, 18, Кобэ)»; & — «Замените возраст Ямада на 21 год».』
ток В, У, 3 соответственно. На рис. 6.7, а указано уда- ление из отношения «студенты» записи о студентах старше 20 лет, на рис. 6.7,6 — вставку записи (Яма- гава, 18, Кобэ), а на рис. 6.7,8 — изменение возраста Ямада на 21 год.
НЕЖЕЛАТЕЛЬНЫЕ ОБНОВЛЕНИЯ
Если базу данных рассматривать как знания, то приобретение знаний в базе данных осуществляется благодаря обновлению данных. С этой точки зрения, каким бы ни был запрос на обновление от пользователя, необходимо проверить целесообразность его выполнения. Напрпмер, следует ли принимать обновление, если возраст человека заменяется на 500 лет? Необходимо предотвращать подобные нежелательные обновления для того, чтобы сохранять практическую
Студенты
Хобби
Номер зачетки
Имя
Возраст
Vecio рождения
Ноу зачетки
Хобби j
В401001
Ямада
18
Киото
8401001
Теннис
8502321
Судоукк
19
Иокогама
S51 Q249
Бейсбол
84Q4105
Накамура
23
Кобз
851Q249
Теннис
8510249
Танака
22
Киото
84Q41Q5
Нзстольный теннис
84Q4105
Теннис
84041 05.
бейсбол
Рис. 6.8. База данных.
Студенты
Номер зачетки
Имя
Возраст
Место рождения
В.
S604125
Сато
5J。
Токио
Студенты
Номер зачетки
Имя
Возраст
Мест。” рождения
В.
64Q1QQ1
Кавакамн
2Q
Ннон
б
,艺'? Нежелательнее обновления базы данных на рис. 6.8:
—добавление записи с нереальным возрастом; 6—обновле- нме вносит второго студента с номером 8401001.
Студенты
Номер йачетки
Имя
Возраст
Место рождения
В.
8401001
Ямада
18
Аомори
Рис. 6.10.
Запись, рис.
которая при добавлении в базу 6.8 приводит к противоречию.
данных па
Студенты
Номер зачетки
Имя
Возраст
Место рождения
В.
8401001
Ямада
18
Киото
Рис. 6.11. Избыточное обновление базы данных на рис. 6,8.
ценность информации, накопленной в базе данных. Поэтому давайте рассмотрим, какие обновления нежелательны. Разобьем их на следующие четыре класса:
обновления, не удовлетворяющие ограничениям целостности;
”2) обновления, приводящие к противоречию;
избыточные обновления;
обновления на основе неполной информации. Покажем примеры таких нежелательных обновлений на примере базы данных на рис. 6.8.
Примеры обновлений, не удовлетворяющих ограничениям целостности, приведены на рис. 6.9, а, б. В первом примере вводятся нереальные значения: возраст — 500 лет, во втором — в результате обновления появляются два студента с одним номером 8401001. .Такие обновления нежелательны, для их предотвращения необходимо, чтобы системе бьми известны ограничения «возраст человека менее 130 лет» и «номер зачетки студента однозначно определяет его», кроме того, система должна иметь механизм проверки этих условий.
На рис. 6.10 — пример обновления, приводящего к протнворечию. В результате обновления местом рождения студента Ямада с номером 8401001 оказывается и Киото, и Аомори, что противоречит друг другу. На рис. 6.11 — пример избыточного обновления. Информацию в этом примере можно получить из уже существующей информации.
Пример нежелательного обновления на основе неполной информаци и — это случай ввода в базу
данных на рис. 6.8 таких данных: «Хобби Сато — вождение машины^. Ясно, что Сато любит водить машину, но такого студента в базе нет, поэтому обновить рис. 6.8 невозможно.
В следующем разделе рассмотрим, как описываются и предотвращаются нежелательные обновления.
ОГРАНИЧЕНИЯ ЦЕЛОСТНОСТИПРИ ОБНОВЛЕНИИ БАЗ ДАННЫХ
К ограничениям целостности при обновлении баз данных относятся ограничения, представленные равенствами или неравенствами и справедливые для значений, вычисленыых по одному или нескольким атрибутам так, как в случае, когда возраст оказывается равным 300 а также ограничения, связанные со структурой атрибутов так, как в примере, когда по номеру зачетки студента однозмачко определялось его имя и место рождения.
Необходимо уметь' как описывать ограничения целостности, так и указывать метод их проверки. Для таких описаний используют расширенный язык манипуляции данными, предназначенный изначально для поиска и обновления базы данных. Приведем ниже расширение языка описания ограничений на базе языка ЗПО на примерах конкретных ограничений.
В языке ЗПО для описания ограничений целостности используются шаблоны отношений, вслед за названием отношения можно записать
Ц.ТИП.Ц
Ц.ДЛИНА.Ц
Ц.КЛЮЧ.Ц
Ц.КОНСТР.Ц
Д) Ц.КОНСТР. ((список условий)) ,Ц
Буква Ц в записи Ц...Ц — первая буква слова «целостность» ». Ограничение а используется для от ределення типа значения каждого атрибута, например символьные или целочисленные. Ограничен не 6 ——для определения длины значения, нзпри мер для символь^
” В оригинале «I» от слов Integrity Constraint (огр ан иче- мне целостности). —/7рг/л(. перев.
ных значений — не более некоторого числа знаков, для целочисленных ——не более некоторого числа разрядов. Ограничение в указывает атрибуты, включая основной ключевой атрибут. Ключом отношения называют подмножество множества атрибутов этого отношения, это минимальное множество, удовлетворяющее следующему условию: не существует кортежей, все значения атрибутов которых одинаковы. Ключей может быть несколько, тогда один из них называется основным. Ключи отражают физическую структуру хранения отношений- Описания гид используются в случае других ограничений целостности. Во время обновления проверяются первые четыре ограничения, а последнее ограничение проверяется только в случае обновления типа В (вставка), У (удаление), 3 (замена), в которых указан список ограничений.
На рис. 6.12 приведены примеры ограничивающих условий для базы данных на рис. 6.8. Ограничение а списывает «возрастной ценз» от 15 до 40 лет для °丁〉; дентов, записанных в базе данных. Ограничение б указывает, что не должно быть студентов с одним именем и фамилией. Ограничение в говорит о том, ито при обновлении возраст, как правило, должен возрастать. Ограничение г — добавление информации о хобби студентов выполняется только для студентов, зарегистрированных в отношении «студент ci».
Пусть в некотором отношении л и У —подмножества его атрибутов, тогда скажем, что существует функциональная подчиненность из X в У которое обозначим как "У, если из того, что в 入 определены все значения атрибутов, следует, что опреде1пены все значения атрибутов в У. В отношении «студенты^ на рис. 5.8 существует следующая функциональная подчиненность: «номер зачетки» {<имя, 〈воз; раст>, (место рождения». Кроме функциональной подчиненности известны многозначная подчиненное1Ь, цепочечная подчиненность н Др. Все это разновидности ограничений целостности в том смысле, q’t。об- новление подчиненных отношений допускается только р случае, когда это обновление не противоречит ограничениям целостности. Приведенная выше подчинен^
несть в отношении «студенты» сохраняется при указании основного ключа — атрибута (номер зачетки). Функциональную подчиненность можно представить с помощью описания на рнс. 6.12,6. Этот пример аналогичен добавлению функциональной подчиненности {<нмя>} f «номер зачетки)}.
Некоторые ограничения целостности можно проверить только с помощью значений обновляемого кортежа, так, как на рис. 6.12, а, другие, как, например, 6, 6, г, для проверки требуют нового поиска, и время выполнения таких проверок, разумеется, различное. Одна из проблем, которую еще предстоит решить, ―■ как с наилучшей эффективностью обрабатывать подобные сложные ограничения целостности
Студенты
Номер зачетки
Имя
Возраст
Место рождения
ц.ключ.ц.
К
NK~
NK
NK
ti・K0HCTp(B、,3.)U
》15
Ц.К0НСТР(3./3.),Ц1
<40
Ц.К0НСТР(3.?3.).Ц.
ВСЕ.Х
имя К
Ц.К0НСТР(9.),Ц<
NY
ц.
NY
АХ
「BCE.NZ)
Хобби
Номер зачсткм
Хобби
Ц.КОНСТР (3.). Ц
ВСЕ.巫
£
Блок услоэий
KW. ВСЕ.坚曰
Рнс. 6.12. Ограничения целостности базы данных на рис, 6.8,
ЕЕПРОТИВОРЕЧИВОСТЬИ УПРАВЛЕНИЕ ОБНОВЛЕНИЕМ
Примеры противоречий в базе данных можно найти па рис. 6.13, 6.14. На первом рисунке приведено отношение с атрибутами 〈номер зачетки), <имя>, (хобби). В таблице встречаются два одинаковых номера, под которыми зарегистрированы два студента с различными фамилиями. Это противоречие можно устранить благодаря введению в качестве ограничения целостности функциональной подчиненности (номер за- четки) <имя>. На языке ЗПО это. записывают так, как на рис. 6.15. Но можно избежать противоречия более непосредственным способом: разделив это отношение на два: R (〈номер зачеткп), <имя>) и & «номер зачетки), <хобби>) и указав в R как основной ключ (номер зачетки). Такое разбиение называют формализацией. Использование формаитизации пр1:вр* днт к лучшим результатам, чем введение ограничений целостности, поскольку в последнем случае необходимо выполнять программу проверки этого ограничен ння, а в первом — ограничение вводится автоматически за счет физической организации файлов, в кота рых хранятся отношения.
На рис. 6.16 — пример противоречия, с которым нельзя справиться через формализацию; оно сснзано с тем, что во множестве простых отношении невозможно полностью описать смысловую структуру информации. Этот пример содержит такое противоречие: а одновременно является и р(эднтелем, и сыном Ь. Это можно предотвратить путем введения огранн- чения на рис. 6.17. Противоречия такого рода возникают в базах данных, содержащих негативную информацию. На рис. 6.18 приведен пример ограничения целостности для исключения противоречий в отношениях «приятели» и «враги».
Расширенная система, в которой к базе данных добавлены дедуктивные функции и которая может обрабатывать не только фактические знания и 巾акт” в правилах, но и сами правила, называется дедуктивной базой данных. В последние годы ведется активное изучение таких баз данных. Пусть в базе данных
Хоб^и
Номер зачетки
Имя
Хобби
8401231
Судзуки
ТенНис
8402311
Сато
Бейсбол
8401231
Судзуки
Настольный теннис
6402511
Ямада
Тзнннс
•
Противоречие
есть кортеж (и】, v2l ..., ^门) в отношении /?(4, A2f ...,厶门)с атрибутами Дь %2, •…,力小 тогда можно рассматривать логические формулы A(ui, t;2, ..., vn), где R ——имя предиката. Базу данных, которая состоит из логических формул логики предикатов первого порядка и единственного предиката, можно принять за систему аксиом, состоящих из логических формул без предиката, т. е. только из фактов.
Рнс. 6.13, Противоречие, обусловленное подчиненностью.
Родители и дети
Родители
R〕
Номер I зачетки |
Имя
ц. ключ. 4
* NK
Т
Номер
Хобби
立
зачетки
Дети
а
а
Противоречие
d
d
b
Рис. 6.16. Разбиение отношения 汙捐 рис. 6J3 и указание основ-*ного ключа.
Родители и дети
Родители
Аетн
&KOHCTP(B.,3,U.
X
笃
8・
Y
Рнс. 6.14. Смысловое противоречие,
6.17. Описание ограничения тпворечие на
целостности, исключающее прел рис. 6.14.
Хобби
Номер. аачеУкм
Имя
Хобби
U・KOHCTP(B.,3.)•串亠
NX
ВСЕ. NMX
Впок условий
Приятели
1 Человек
Человек
ц.констжз^вгц*
д
в.
у
W
К”,УН, BCE,NMX = 1
Враги
Человек
Человек
从 КОНСТР (&/,)」•
V
tw
工
Рис. 6.18. Исключение противоречия в базе данных, содержа*щей негативную информацию.
Пусть А — такая система аксиом, тогда при обыч- ном поиске выдвигается гипотеза, которую можно на- звать гипотезой закрытых миров, а именно: сслн пр。、 извольную логическую формулу w невозможно доказать с помощью Л, то допускается, что справедливо отрицание 叫 т.巳、必 В базе данных А есть множество фактов, поэтому условие 《侬 можно доказать в Л» эквивалентно условию 《侬 содержится в базе данных в виде факта》. Следовательно, гипотеза закрытого мира равнозначна допущению, что для фактов, не содержащихся в базе данных, эта гипотеза не справедлива.
В дедуктивной базе данных информацию представляют не только с помощью фактов, но и с помощью множества аксиом %, включающего также логические формулы с переменными, т. е. множества правил. В подобной базе ситуация, когда добавление новой информации ведет к противоречию, эквивалентна тому, что из Л U {⑪} можно доказать ложную гипотезу.
Для проверки, приводит ли обновление к противоречию, необходим поиск в базе данных. Проверка противоречия в дедуктивной базе ——это уже обра- ботка, требующая времени. В настоящее время для реализации такой обработки необходимы новые, еще неизвестные практические методы. Это проблема будущих исследований.
ИСЕЛЮЧЕНИ2 ИЗБЫТОЧНОСТИ
Б отношении на рис. 6.19 в двух местах появились значения (номер зачетки) и <имя) одного и того же человека. Подобно противоречию на рис, 6.13, подобная избыточность также зависит от функциональной подчиненности (номер зачетки) f〈имя〉. По аналогии с предыдущим примером формализуем отношение и указкем в /^(〈номер зачетки), <имя>) как основной ключ атрибут (номер зачетки). Это позволит исключить избыточность. Однако известно, что в общем случае избыточность такого рода не всегда можно исключить, даже введя какую-либо формализацию. Вообще говоря, нельзя предупреждать появление избыточности, запрещая обновление, вносящее эту из- быточность, Дело в том, что кроме избыточной ин-
формации при обновлении добавляется также и по- лезная информация.
^Убыточность в базах данных возникает также при определении представления. Представление — это механизм, который рассматривает описание запроса на поиск, не требуя его выполнения, а определяя виртуальное отношение. На рис. 6.20 приведен при мер определения представления -Ц. ПРЕДСТ дедушки и бабушки Ц. Буква Ц указывает, что этот шаблон определяет новое представление с именем «дедушки и бабушки». В нем содержатся атрибуты «дедушка и бабушка» и《внук》.% и у в шаблоне — это ссылки на записи в отношении «родители и дети», существующем в базе данных, с помощью этой ссылки можно сделать вывод: если % ——это некто в отношении «дедушки и бабушки», то, получив из отношения ^родители н дети» сведенрш о том, что г——сын х, а у ——сын z, заключаем, что у ——внук 尤.
一 Пусть^теперь в самом деле существует отношение «дедушки и бабушки», такое, как на рис. 6.21, и определим виртуальное представление《В — дедушки и бабушки» так, как на рис. 6.22. В этом случае информация в кортеже (a, d), вставленная в существующее отношение «дедушки и бабушки», может быть получена из отношения «родители и дети», и поэтому яв- Л516ТСЯ избыточной.
Хобби
Номер зачетки8401 1 1 2840232185”221840И12Номер зачетки8401 1 1 2840232185”221840И12ИмяЯмадаСакЗА*抬ЯмадаИмяЯмадаСакЗА*抬ЯмадаХоббиТеННИС бе口сбоиТеннисНастольныйГ'еннисХоббиТеННИС бе口сбоиТеннисНастольныйГ'еннисВключает избыточную информацийВключает избыточную информаций
Номер зачетки
8401 1 1 2
8402321
85”221
840И12
Номер зачетки
8401 1 1 2
8402321
85”221
840И12
Имя
Ямада
Сак
ЗА*抬
Ямада
Имя
Ямада
Сак
ЗА*抬
Ямада
Хобби
ТеННИС бе口сбои
Теннис
Настольный
Г'еннис
Хобби
ТеННИС бе口сбои
Теннис
Настольный
Г'еннис
Включает избыточную информаций
Включает избыточную информаций
Рнс. 6.19. Избыточность, вызванная подчиненностью.
Рис. 6.20. Определение помощьюРис. 6.20. Определение помощьюРодители и детиРодители и детиРодителиРодителиДетиДетиbbССььddВнукиВнукиДедушки и бабушкиДедушки и бабушки
Рис. 6.20. Определение помощью
Рис. 6.20. Определение помощью
Родители и дети
Родители и дети
Родители
Родители
Дети
Дети
b
b
С
С
ь
ь
d
d
Внуки
Внуки
Дедушки и бабушки
Дедушки и бабушки
представления «дедушки и бабушки» с существующих отношений.
Дедушки и бабушки
Рнс. 6.21, База данных с отношениями «родители и дети» и«дедушки и бабушки».
U・ ПРЕДСТ дедушки и бабушки Ц.Дедушки и бабушкиВнукк卫工工wU・ ПРЕДСТ дедушки и бабушки Ц.Дедушки и бабушкиВнукк卫工工wРодителиРодителиДедушки и бабушкиДедушки и бабушкиРодители и детиРодители и детиДедушкиИ бабушкиДедушкиИ бабушкиXXZZ££хх工工ВнукиВнукиwwРнс. G.22. ОпределениеРнс. G.22. Определениекн» в случае, когдакн» в случае, когдапредставления «В —представления «В —существует и бушки»,существует и бушки»,отношениеотношениедедушкидедушкии бабуш-и бабуш-«дедушки и ба-«дедушки и ба-
U・ ПРЕДСТ дедушки и бабушки Ц.
Дедушки и бабушки
Внукк
卫
工
工
w
U・ ПРЕДСТ дедушки и бабушки Ц.
Дедушки и бабушки
Внукк
卫
工
工
w
Родители
Родители
Дедушки и бабушки
Дедушки и бабушки
Родители и дети
Родители и дети
Дедушки
И бабушки
Дедушки
И бабушки
X
X
Z
Z
£
£
х
х
工
工
Внуки
Внуки
w
w
Рнс. G.22. Определение
Рнс. G.22. Определение
кн» в случае, когда
кн» в случае, когда
представления «В —
представления «В —
существует и бушки»,
существует и бушки»,
отношение
отношение
дедушки
дедушки
и бабуш-
и бабуш-
«дедушки и ба-
«дедушки и ба-
Представления можно считать своего рода правилами в дедуктивной базе данных. В общем случае пусть Л — система аксиом в дедуктивной базе данных, a w ——предикат, определяемый вновь вводимой записью; тогда если из Л можно доказать w, то w —— избыточна. Кроме того, пусть wf аксиома, включенная в Л, тогда wf избыточна при внесении 侬,если из ①—{и/7}) U {w} можно доказать о/.
Не всякую избыточность можно исключить, в частности избыточность, возникающую при использовании представлений, исключить можно, но для ее проверки необходимо организовать поиск. В дедуктивной базе данных такая проверка особенно сложна, и пока неизвестны методы ее реализации. Это тема будущих исследований.
ОБРАБОТКА НЕПОЛНОЙ ИНФОРМАЦИИ
Примеры нежелательного обновления неполной информации сложно приводить не только в случае обновления существующих отношений, но и при обновлении представлений. На рис. 6.23 ——пример базы данных с отношением «родители и дети» и представлением «дедушки и бабушки». Рассмотрим внесение в последнее представление кортежа (a, g); из него не ясно, кто сын а или родитель g (назозом этого человека %°), поэтому обновлять существующее отношение «родители и дети» нельзя. Иначе это обновление вызовет противоречие до тех пор, пока не будет проверено, кто же %°: а, b или кто другой.
Примеры нежелательного обновления представлений можно обнаружить и при удалении записей. Пусть 0m отношения «дедушки и бабушки» удаляется кортеж (а, е), т. е. из отношения «родители и дети》 подлежит удалению либо (а, &),』н6о (&, е)・ Однако трудно сказать, какое из удалений правильное. Если удалить первый кортеж, то из отношения «дедушки и бабушки» придется удалить информацию :(4,方),а если удалить второй ——то (d, е).
Аналогичная проблема возникнет вследствие частичного отсутствия информации, необходимой д/я преобразования базы данных, когда обновление
Родители к дети
Родители
Дети-
а а d b b
b 6 ь а h
Дедушки и бабушки
Внуки
上 X
^牆Pq2€「f Дети
Рис. 6.23. База данных с отношением «родители и дети» и определение представления «дедушки и бабушкн».
представлений приводит к преобразованию существующих отношений.
Проблема обновления представлений одно время была успешно исследована в части автоматического преобразования обновлений представления в обновленке существующих отношений. Однако, как видно из приведенных примеров, автоматическое преобразовав ние по существу невозможно, и в дальнейшем, видимо, необходимы еще исследования того, какую опущенную информацию система должна запрашивать у пользователя.
ГЛАВА 7.
ТЕОРИЯ ИНДУКТИВНЫХ выводов
С. Аракава, Т. Синохара, Т. Мияхара(Университет Кюсю)
Индуктивный вывод — это вывод из имеющихся данных объясняющего их общего правила. Было время, когда под индуктивным выводом понимали доказательство гипотез, но в настоящее время принято указанное выше определение. Следовательно, обнаруживается глубокая связь с различными процессами обучения, процессом овладения языками человеком, извлечением особенностей множества данных, автоматическим синтезом программ по примерам ввода-вывода, полуавтоматическим приобретением знаний в экспертных системах, отладкой программ и другими процессами, В данной и следующих главах дан общий обзор современного состояния теории индуктивных выводов с точки зрения указанных прикладных проблем. В частности, в данной главе рассмотрены результаты математических исследований, связанных с индуктивными функциями и индуктивными выводами в грамматике.
7Л. ОСНОВНЫЕ ПОНЯТИЯ ТЕОРИИиндуктивных выводов
Как уже было сказано, индуктивный вывод ——это вн« вод из заданных данных объясняющего их общего правила. Например, пусть известно, что есть некоторый многочлен от одной переменной. Давайте посмотрим, как выводится f(x), если последовательно задаются в качестве данных пары значений (0, f(0)), ,(1, /(!)), .... Вначале задается (0, 1), и естественно, что есть смысл вывести постоянную функцию /(х) = 1, Затем задается (1, 1)} эта пара удовлетво- ряет предложенной функции f(x)= 1. Следовательно в этот момент нет необходимости менять вывод. На’ конец, задается (2, 3), что плохо согласуется с нашим
выводом, поэтому откажемся от него н после нескольких проб и ошибок выведем новую функцию f(x)=%2—%+ i, которая удовлетворяет всем заданным до сих пор фактам (0, 1), (1, 1), (2, 3). Далее мы убедимся, что эта же функция удовлетворяет фактам (3, 7), (4, 13), (5, 21) ..., поэтому нет необходимости менять этот вывод. Таким образом, из последовательности пар переменная-функция можно вывести многочлен второй степени f(x)=%2 ——х + 1. Грубо говоря, такой метод вывода можно назвать индуктивным.
Как видно из этого примера, при выводе в каждый момент времени объясняются все даныые, полученные до этого момента. Разумеется, данные, полученные позже, уже могут и не удовлетворять этому выводу. В таких сл^^чаях приходится менять вывод. Следовательно, в общем случае индуктивный вывод ——это неограниченно долгий процесс. И это не удивительно, если вспомнить процесс освоения человеком языков, процесс совершенствования программного-- обеспечения и т. п.
Для точного определения индуктивного вывода необходимо уточнить: 1) множество правил ——объектов вывода, 2) метод представления правил, 3) способ показа примеров, .4) метод вывода и 5) критерий правильности вывода.
В качестве правил — объектов вывода — можно рассматривать главным образом индуктивные функции, формальные языки, программы и т. п. Кроме того, эти правила могут быть представлены в виде машины Тьюринга для вычисления функций, грамматики языков, операторов Пролога и другим способом. Машина Тьюринга ——это математическая модель компьютера, ее в принципе можно считать программой. В случае когда объектом вывода является формальный язык, он сам определяет правила, а его грамматика — метод представления правил, поэтому говорят о грамматическом выводе.
Для показа примеров функции f можно использо- вать пocлeдoвaтev^ьнocть пар (х, f(x) ) входных и вы- ходиых значений так, как указано выше, последовательность действий машины Тьюринга, вычисляющей
f, и другие данные. Задание машине выводов пары входных и выходных значений (х, /(%)) функции f соответствует заданию системе автоматического синтеза программ входных значений 尤 и выходных значений f(х), которые должны быть получены программой вычисления f в ответ на х. В этом смысле автоматический синтез программ по примерам также можно считать индуктивным выводом функции 厶 Формальные языки — это множество слов; поэтому, например, для языка L можно рассматривать два типа слов, принадлежащих и не принадлежащих этому языку. Первые назовем положительными, а вторые — отрицательными данными. Другими словами, есть два способа показа примеров формального языка: с помощью положительных и отрицательных данных. Когда объектом служат сами программы, тогда то же самое можно говорить о функциях языка Лисп, ио для Пролога показ примеров осуществляется в виде фактов. Например, <3 ^ 4, истина),〈2WL ложь>. В этом случае положительным данным соответствуют данные с атрибутом «истина», а отрицательным—данные с атрибутом «ложь».
Вывод реализуется благодаря неограниченному повторению основного процесса
запрос входных данных f предположение f выходные данные.
Другими словами, при выводе последовательно получают примеры как входные данные, вычисляют предположение на данный момент и выдают результат вычислений. Предположение в каждый момент времени основано на ограниченном числе примеров, полученных до сих пор, поэтому обычно в качестве метода вывода используют машину Тьюринга, вычисляющую предположение по ограниченному числу примеров. Такую машину назовем машиной выводов.
Учитывая, что индуктивный вывод, как уже было отмечено, это неограниченно продолжающийся процесс, критерием правильности вывода, как правило, считают понятие идентификации в пределе. Это понятие введено Голдом, оно используется почти всегда в теории индуктивных выводов. Говорят, что машина
рывода М идентифицирует в пределе правило R, если при показе примеров 公 последовательность выходных данных, генерируемых М, сходится к некоторому представлению т, а именно: все выходные данные, начиная с некоторого момента времени, совпадают с т, при этом т называют правильным представлением R, Кроме того, говорят, что множество правил Г позволяет сделать индуктивный вывод, если существует некоторая машина выводов М, которая идентифицирует в пределе любое правило R из множества Г. Обратите внимание на то, что слова «позволяет сделать индуктивный вывод» не имеют смысла для единственного правила, а относятся только к множеству правил.
В данной главе рассмотрены вывод рекурсивных функций и грамматический вывод как типичные примеры в теории индуктивных выводов.
7.2. ИНДУКТИВНЫЙ ВЫВОД ФУНКЦИЙ
Автоматический синтез программ по примерам компьютерами можно рассматривать как индуктивный вывод функций. Возможности компьютеров в последние годы резко возросли, поэтому естественно задать следующий вопрос: «Допустим, что в будущем мы сможем использовать любое количество ресурсов компьютера. Можно ли при этом построить систему, которая будет автоматически синтезировать по примерам произвольно заданные программы, не имеющие бесконечных циклов?»
Математическая теория индуктивных выводов, основу которой заложил Голд, формализовала выво- ДЬ1 на основе теории вычислений и дала строгий от-* вет на этот вопрос. Ознакомимся с некоторыми из многочисленных результатов, полученных до настоящего времени, начиная с отрицательного ответа на поставленный вопрос.
Прежде всего формализуем основополагающее понятие теории индуктивных выводов ——идентифика-* пню в пределе и обсудим его связь с методом пере^ числения и понятием экстраполяции, пpeдцoлoжetl•, иымн на ранних этапах исследований.
В процессе индуктивного вывода функции f машине вывода М последовательно задаются данные f (0), f (1), • • •, а М каждый раз при получении данных выдает программу. Формализуем этот процесс на основе теории вычислений. Если использовать соответствующий метод кодирования, то в качестве данных достаточно рассмотреть только натурален ые “нсла 0, 1, 2,поэтому объектом изучения будем считать функции, отображающие натуральные числа в натуральные числа. В частности, если это особо не оговорено, в качестве функции возьмем функцию одной переменной. Назовем частичной рекурсивной функцию, которая вычисляется программой, возвращающей значение не для всех натуральных чисел. Назовем рекурсивной функцию, которая вычисляется программой, возвращающей значение для всех на- турааьннх чисел. Множество всех частичных рекурсивных функций обозначим через 夕,а множество всех рекурсивных функций — через 例.Если фиксировать язык программирования н рассматривать программу как последовательность символов, то все програм мы можно однозначно перенумеровать. При такой нумерации можно отождествить р-ю программу с ее номером р. Для конкретной рекурсивной функции f нельзя однозначно определить программу, вьшисляю- щую 力 поэтому данные %0), f(l)J(2), ... можно рассматривать как примеры спецификаций программ, вычисляющих f. Выходные данные машины вывода назовем предположением. Если использовать соответ- ств^чощий метод кодирования, то машину выводов М можно считать частичной рекурсивной- функцией, а именно: в каждый момент времени k М задаются примеры f 同,представляющие собой перекодированный в натуральные числа ограниченный набор данных f(0), j(l), . .. , f(A), и предположениями мг-ишны М являются также натуральные числа. Предположение машины Л1 в момент k обозначим как M(f [.^j).
Определение 7.1. Скажем, что машина выводов М идентифицирует в пределе рекурсивную ①унккню 力 если неограниченная последовательность предположений Al(f [0]), A4(f [1]),..・,выдаваемых машиной Л1, сходится к некоторому натуральному числу р, т, е.
все предположения, начиная с некоторого момента, есть р, при этом р назовем программой, вычисляющей f.
Помимо идентификации в пределе можно рассматривать и другие критерии успеха индуктивного вывода. Для того чтобы отличать данный критерий от других, обозначим идентификацию в пределе как ЕХ-идентификацию, подчеркивая этим, что предположения сходятся в программе, вычисляющей (объясняющей——по-английски Explain) рекурсивную функцию. Все рекурсивные функции, которые ЕХ-идентифици- рует маш ина выводов М обозначим через ЕХ(М). Если машина выводов М ЕХ-идентифицирует любую функцию из множества рекурсивных функций U, то скажем, что М ЕХ-идентифицирует (идентифицирует в пределе) множество U. Если существует машина выводов, которая ЕХ-идентифицирует множество рекурсивных функций U, то скажем, что U позволяет делать ЕХ-идентификацию (позволяет делать идентификацию в пределе). Само множество, которое позволяет делать LX-идентификацию, т. е. множество рекурсивных функций, также обозначим через ЕХ.
Понятие идентификации в пределе ввел Голд; точно так же формализовано и понятие индуктивный вывод: В литературе вместо ЕХ иногда пишут LIM или GN.
Ниже рассмотрим различные критерии успеха и сравним возможности машин вывода, удовлетворяющих таким критериям. Считают, что семейство множеств рекурсивных функций, которые позволяют делать индуктивные выводы на основе соответствующих критериев, определяет возможности машины вывода, удовлетворяющей этому критерию. Подобное семейство называют методом вывода (или типом идентификации) .Например, ЕХ, определенный выше, это 館етоп вывода, определяющий возможности машины выводов, удовлетворяющей критерию ЕХ-идентифи- иации. Ниже по аналогии с ЕХ-идентификацией определим критерий успеха, который назовем Ю-идентификацней, и введем обозначение ID (М), гопятие «позволяет сделать ID-идентификацию» н со- огветствующий метод вывода ID. Хотелось бы обра-
тить внимание на то, что для ID-идентификации н метода вывода ID использовано одно и то же обозначение ID. Для сравнения возможностей машин выводов, удовлетворяющих различным критериям успеха, можно изучать вложение методов вывода. Ведется много исследований, объясняющих иерархию методов вывода с этой точки зрения. Такая иерархия отражает различия в возможностях машин вывода, удовлетворяющих тем или иным критериям, в теории формальных языков это соответствует иерархии клас* сов языков типа иерархии Хомского» которая вводит различия в возможностях устройств ввода и обра* ботки. Пусть есть два критерия' успеха: Югидеити- фикация и Ю2-идентификация. Если, например, ме” тод вывода ID2 строго лучше метода вывода IDb т. е.】D[牛 ID2, то скажем, что ГО2-идентификация имеет строго большие возможности, чем IDi-иденти- фикация.
При реализации индуктивных выводов на дей- ств^^ющих компьютерах перечисляют все возможные предположения, и основной стратегией считают обнаружение правильного предположения путем проверки того, объясняет ли оно полученные до этого момента данные. Эту стратегию обычно называют методом генерации и проверки, а в теории индуктивных выводов——методом перечисления или идентификации путем перечисления. Система вывода моделей M1S, созданная Шапиро, в своей основе использует метод перечисления, а улучшение сходимости при такой стратегии обеспечивается за счет использования логики предикатов первого порядка (см. разд. 8.4).
Пусть U — множество рекурсивных функций. Если есть некоторая рекурсивная функция ", н множество всех функций, вычисляемых по программам h (0), 〃(1), . .., совпадает с U, то множество U назовем перечисляемым. При этом /? перечисляет U, Как следует из теоремы 7.1, подмножество перечисляемого ммо?кества рекурсивных функций позвол^^ет сделать индуктивный вывод с помощью метода перечисления, поэтому такое подмножество са>;о определяет отдельный метод вывода, отражающий возможности метода перечисления.
Определение 7.2. Подмножество перечисляемого множества рекурсивных функций обозначим через NUM.
В данной области самым первым получен следующий результат.
Теорема 7.1 (Гс>лд). Подмножество перечисляемого множества рекурсивных функций позволяет сделать ЕХ-идентификацшо. Другими словами, NUM 三 EX.
Доказательство. Пусть U ——подмножество перечисляемого множества рекурсивных 巾ункнн汇 Тогда есть некоторая рекурсивная функция Л, такая, что U есть подмножество, которое перечисляет h. Построим следующим образом машину выводов М, использующую метод перечислен ня. Пусть / ——любая функция U, и в момент 々 машине Л1 даны данные f [k].
М — это машина, которая ведет поиск программы, способной вычислить все полученные до этого момента данные, последовательно проверяя программы %(0),"⑴,..,,перечисленные с помощью ". Выходом машины будет являться первая обнаруженная при этом программа.
Пусть р —■ первая программа, вычисляющая f, обнаруженная среди программ, перечисленных с помощью 用.Программы, которые при перечислении следовали раньше р, не позволяют вычислить 力 поэтому есть момент, когда Л4, отбросив все такие программы, выдаст р. Но если 7H выдала р, то р может вычислить все данные, полученные до этого момента, поэтому М н в дальнейшем продолжает выдавать р. Другими словами, если заданы данные о /, то неограниченная последовательность предположений, выдаваемых М сходится к р. Следовательно, М может ЕХ-идентифицировать любую функцию f мяоже- жест в a U.
Пример. Пусть U множество многочленов с цело- qIi сзешт ы 期 н коэфф i-г и ментам н от одной пере м енной. Путем перечисления комбинаций целочисленных коэффициентов можно перечислить программы для всех функций множества U, поэтому U —■ это перечне,пяе- „с множество рекурсивных функций. Следовательно, '至 NUM. На основании метода перечисления в тео- реме 7.1 машина выводов Л1 будет ЕХ-пдентифнцнро-
вать любую функцию / из U. Другими словами, М выполняет ЕХ-идентификацию U. Следовательно. U 巨 ЕХ.
Можно ли всегда при ЕХ-идентификации применять стратегию, основанную на таком самом простом методе перечисления? Для ответа на этот вопрос проверим, истинно ли вложение NUM и ЕХ, о котором упоминалось выше. Следующая теорема дает от- рицательный ответ на этот вопрос.
Теорема 7.2 (Варди) Существует множество рекурсивных функций, для которых нельзя применить метод перечисления, но которые позволяют делать ЕХ-идентификацию. То есть NUM^EX.
Подготовим термины и обозначения, а затем приступим к доказательству. В дальнейшем определения терминов и обозначений, используемых в процессе доказательства теорем, будем выделять скобками (и). Целесообразно дать строгое объяснение уже введенных терминов и обозначений.
(Обозначим через ср* частичную рекурсивную функцию, . вычисляемую программой р. При этом {фо, фЬ ср2, ...} совпадает с множеством частичных рекурсивных функций 俨.Точнее, пусть сро, Фь 屮2, есть ^-воспринимающая программная система. Назовем р программой 力 если 中卩=/. Обратим внимание на то, что для любой рекурсивной функции f существует счетное неограниченное число программ, вычисляющих / и отличающихся хотя бы одним символом, поэтому существует счетное неограниченное чис-« ло программ f. ^-воспринимающая программная система—это система абстрактного представления частичных рекурсивных функций, которые можно вычислить на традиционных языках программирования, но с точки зрения теории важно то, что для таких программных систем справедлива указанная ниже теорема о рекурсии.。。
Теорема。рекурсии. Для любой рекурсивной функции / существует натуральное число /, такое, что
Такое число , называют неподвижной точкой. Процедура, которая останавливается после конечного числа операций и выдает результат в ответ на любое
входное значение, называется рекурсивной. С помощью соответствующего кодирования входных и выходных значений рекурсивную процедуру можно представить как рекурсивную функцию. Теорема о рекурсии указывает, что если есть рекурсивная процедура 九 которая преобразует программу р в программу /(р), то существует программа ',которая при преобразовании / не меняет своего смысла как программа. На самом деле для любой рекурсивной функции f существует счетное неограниченное число неподвижных точек (вторая теорема о рекурсии Клини). Теорема о рекурсии важна как средство построения функций других типов. Обозначим множество - натуральных чисел через М а множество ограниченных последовательностей (длины больше 0) натуральных чисел——через №. Рекурсивная функция — это частичная рекурсивная функция, область определения которой есть N, Функцию рекурсивного взаимно-однозначного отображения из N* в N назовем рекурсивным кодированием, обозначим ее как〈〉. Натуральные числа, которые в результате некоторого рекурсивного кодирования 〈 〉 поставлены в соответствие ограниченной последовательности натуральных чисел о。, а】,...,а;;, обозначим через 〈。仇 ан . . ., а*) или 〈«0&1 ・•• а〉Для удобства формализации лучше использовать кодированные числа 〈а。, &卜,..,а» но на практике ничто не препятствует рассмотрению ограниченной последовательности а。,
Область определения частичной рекурсивной функции f обозначим через dom(j). Определение частичной рекурсивной функции f для натурального числа 尤 будем записывать как /(х)^ а определение ее значений f(0), f(l), ・・・,八々)(々》0)—как孔々]三"(O)J(I), •… …,/(々)〉・ Скажем, что неограниченная последователь- ность натуральных чисел {用仆左三川 сходится к р, если существует некоторое число 々° w %, такое, что для любого 々为标 справедливо 用月=р, и запишем это как !im^ hk = р. Ниже для простоты изложения фразу 《区ла всех (произвольных) 工三 S справедливо...» будем обозначать как VxeS а фразу «существует xwS такое, что справедливо...» — как
Эх S ....
Скажем, что Mw俨 ЕХ-идентифицирует 仁祝 если V/swN, M(f 快])|, и существует р = =\\mkM(f\k]) такое, что 屮° =厶 При этом ЕХ(Л1)三
{f ^ Я\М ^ ^ ЕХ-идентифицирует『}, определим метод вывода ЕХ как EX = {U ^ 5?|ЗЛ1 е ^; U ЕХ(М)}.
Число шагов, необходимых для того, чтобы про-* грамма % получив входное число %, вычислила ср^%), обозначим через Ф((%). Точнее, {Ф/}/е^ есть мера сложности {屮儿у N, а именно: каждая Ф:, являясь частичной рекурсивной функцией, удовлетворяет двум условиям (система аксиом Блюма).
Для любого i R N области определения р и ①t равны;
( 1, если Фi (х) = у,
S(〃 %, У)——(° в других случаях,
причем предикат S трех переменных рекурсивный. Предикат ——это функция, которая принимает только два значения: 0 или 1. Условие 1) означает, что число шагов, требуемое для вычисления, определяется тогда и только тогда, когда вычисления закончатся. Условие 2) означает, что процедура, оценивающая число шагов для вычисления, является рекхфсивной. Система аксиом Блюма, таким образом, получается естест-причем предикат S трех переменных рекурсивный. Предикат ——это функция, которая принимает только два значения: 0 или 1. Условие 1) означает, что число шагов, требуемое для вычисления, определяется тогда и только тогда, когда вычисления закончатся. Условие 2) означает, что процедура, оценивающая число шагов для вычисления, является рекхфсивной. Система аксиом Блюма, таким образом, получается естест-венной и достаточно строгой.Отождествим рекурсивную функцию f с неограни-венной и достаточно строгой.Отождествим рекурсивную функцию f с неограни-ценной последовательностью натуральных _ чисел ^(0)/(1)... и введем обозначение f = f(O)f(l) Например, запись f = ig (,wN, g 三契)обозначает f(0) = z f(^)= §(й—1)1). Кроме того, запись人 …“f(0)=&, f(l)=瓦ценной последовательностью натуральных _ чисел ^(0)/(1)... и введем обозначение f = f(O)f(l) Например, запись f = ig (,wN, g 三契)обозначает f(0) = z f(^)= §(й—1)1). Кроме того, запись人 …“f(0)=&, f(l)=瓦f = аЬс^{а, b.c^ N) обозначает f(2)=c"(» = 0 (々23)JДоказательство теоремы 7:2.f = аЬс^{а, b.c^ N) обозначает f(2)=c"(» = 0 (々23)JДоказательство теоремы 7:2.Пусть UПусть Uе=^|фК0) = /}. То есть функцияе=^|фК0) = /}. То есть функцияво множествево множествеUUкак значение /(0).как значение /(0).содержит собственную программу 。Такая функция называется функцией с автоописанием, ее удобно использовать для указания того, ч го вложение методов вывода является истинным. Попробуем показать, что существует рекурсивная функция / такая, что(р*о)= L Рассмотрим постоянную функцию f(x)尸〃 Процедура построения [р из рсодержит собственную программу 。Такая функция называется функцией с автоописанием, ее удобно использовать для указания того, ч го вложение методов вывода является истинным. Попробуем показать, что существует рекурсивная функция / такая, что(р*о)= L Рассмотрим постоянную функцию f(x)尸〃 Процедура построения [р из рфункцпеп сфункцпеп с
причем предикат S трех переменных рекурсивный. Предикат ——это функция, которая принимает только два значения: 0 или 1. Условие 1) означает, что число шагов, требуемое для вычисления, определяется тогда и только тогда, когда вычисления закончатся. Условие 2) означает, что процедура, оценивающая число шагов для вычисления, является рекхфсивной. Система аксиом Блюма, таким образом, получается естест-
причем предикат S трех переменных рекурсивный. Предикат ——это функция, которая принимает только два значения: 0 или 1. Условие 1) означает, что число шагов, требуемое для вычисления, определяется тогда и только тогда, когда вычисления закончатся. Условие 2) означает, что процедура, оценивающая число шагов для вычисления, является рекхфсивной. Система аксиом Блюма, таким образом, получается естест-
венной и достаточно строгой.
Отождествим рекурсивную функцию f с неограни-
венной и достаточно строгой.
Отождествим рекурсивную функцию f с неограни-
ценной последовательностью натуральных _ чисел ^(0)/(1)... и введем обозначение f = f(O)f(l) Например, запись f = ig (,wN, g 三契)обозначает f(0) = z f(^)= §(й—1)1). Кроме того, запись
人 …“f(0)=&, f(l)=瓦
ценной последовательностью натуральных _ чисел ^(0)/(1)... и введем обозначение f = f(O)f(l) Например, запись f = ig (,wN, g 三契)обозначает f(0) = z f(^)= §(й—1)1). Кроме того, запись
人 …“f(0)=&, f(l)=瓦
f = аЬс^{а, b.c^ N) обозначает f(2)=c"(» = 0 (々23)J
Доказательство теоремы 7:2.
f = аЬс^{а, b.c^ N) обозначает f(2)=c"(» = 0 (々23)J
Доказательство теоремы 7:2.
Пусть U
Пусть U
е=^|фК0) = /}. То есть функция
е=^|фК0) = /}. То есть функция
во множестве
во множестве
U
U
как значение /(0).
как значение /(0).
содержит собственную программу 。
Такая функция называется функцией с автоописанием, ее удобно использовать для указания того, ч го вложение методов вывода является истинным. Попробуем показать, что существует рекурсивная функция / такая, что(р*о)= L Рассмотрим постоянную функцию f(x)尸〃 Процедура построения [р из р
содержит собственную программу 。
Такая функция называется функцией с автоописанием, ее удобно использовать для указания того, ч го вложение методов вывода является истинным. Попробуем показать, что существует рекурсивная функция / такая, что(р*о)= L Рассмотрим постоянную функцию f(x)尸〃 Процедура построения [р из р
функцпеп с
функцпеп с
является рекурсивной, поэтому 三。巨例;для V/? ^ ^ справедливо 屮皿)=fp・ Из теоремы о рекурсии 讨 w 三 N;屮&⑴=划=厶・ Кроме того, из 厶(0)=i следует, qTo j 巨少.Следовательно, U * 0. Аналогичным образом можно доказать существование различных функций с автоолисанпем, используемых в приведенных далее доказательствах. И на самом деле, в ка)к・ дом процессе доказательства строится функция с ав- тоописанием, поэтому существование таких функций можно считать очевидным.
Покажем, что UwEX. Рассмотрим машину выводов 7И° такую, что для j w 例,keE N будет M()(f{^\)= =f (0). N/fwU, lim/f Alo (/[fe]) = f(°)> поэтому U 三 £= EX (財о).
Покажем методом от противного, что 〃若 NURL Допустим, что U w NUM. Для g 三例,iwN npo- цедура, строящаяся ig из 厶 является рекуреивлой, поэтому
Vgw兔,m/z三%;V/ ^ N,中九⑴= ,g.
Из теоремы о рекурсии
Vg三无三九w现;EjwN;中九(了)=叫=历.
Здесь из ф£(0) = / следует ср;三 U, а нменно:
Vgw 兔,口 wN; Qj = jg ®U・
FlpH этом
"g)gw 死,juN, w = jg}三。三 NUM.
поэтому можно перечислить произвольные функции jg такие, что 切=jg (g 三乱,,巨乂),Если к такому перечислению jg применить рекурсивную фу и кцию, строющую g из jg, то можно перечислить произполь- и не рекурсивные функции g, а 笈 будет перечислись! м множеством. Но 现 неперечислимое, что приводит нас к противоречию.
Покаже?л, что % — неперечнслимое множество. Допустим, что оно перечислимое. Тогда 己〃至例;夕= ={①ад|»三%}• Определим e(j)三屮九⑴⑴十[ Из того, что。三庞,следует 己卜三 N; e(j)=屮以幻仔).Здесь еели j 也то e4々)==中〃(幻(力)=屮也(点)(々)斗i L a это
противоречит допущению, что е =(р双幻三 现.(Конец доказательства.)
Приведенная выше теорема показывает, что понятие 《позволяет делать ЕХ-идентификацию» гораздо более широкое, чем мы его себе представляли^ Программы. без бесконечных циклов представляются рекурсивными функциями ——правилами. Следовательно, множество таких программ соответствует множеству 现 рекурсивных функций. Но 笈 неперсчислимое мно- 7кество, поэтому, например, нельзя применить метод перечисления в задаче автоматического синтеза по примерам всех программ без бесконечных циклов. Но позволяют ли сами такие программы делать ЕХ-идентификацию? Следующая теорема дает отрицательный ответ на поставленный в начале этого раздела вопрос, поэтому сегодня значение этой теоремы очень велико.
Теорема 7.3 (Голе?). Не существует машины выводов, выполняющей ЕХ-идентнфикацпю всех' рекурсивных функций, а именно й ^ ЕХ.
Доказательство. Используем метод от противного. Допустим, что тМ 三死 应三 ЕХ(М). Для V / е ^, V々三 N имеем М (f [k\) |, поэтому отметим, что М® 三及.Рассмотрим функцию f 三力/也определен^ ную следующей процедурой.
Шаг 0: определим /о 三 0, перейдем к шагу 1.
Шаг 冗(々 А 1): пусть определены 血 力, Перечислим последовательности знаков, поочередно состоящих только из 0 или 1: / = 0? 1, 00, И, ООО, Ill,….Самое первое в этом перечислении 厶 удовлетворяющее неравенству
/VI ((/0/!・• /尼—1》=г=雨偉"I • •力―В〉),(*)
определим как /私 Перейдем к шагу 々 + L
Покажем, что,三纭 Это можно сделать, если показать, что на каждом шаге 冗 данная процедура всегда обнаруживает после конечного числа операций. Если g 三%厶一・ t/^iO^, Л = t()ti ... tk-i^7 то нз того, что g,九三仅三 EN(M), следует, что суще* ствуют lisM(g闿)и \mkM(h[k\). Из того, что g方小 нмеем iinife М(g [й]) =^ IimteЛ-/(/? [А]). Поскольку в противном случае, задавая М данные о различных
рекурсивных функциях g, ”,мы придем к заклю- чению, что предположения, выдаваемые М, будут схо- 口кться к одной и той же программе, что противоречит допущению. Следовательно, не должно быть, что 血偉筋 … 九T〉)= lgM(g同)=lim/,M (九间),a именно: по крайней мере одно из значений li皿M(g[^j) или YmkM(h[k\) отлично от М(〈%力… fi〉)・ Пусть, например, 乂("川…fj〉)=#, 六 limAM(^[^]). Поэтому 引力 1; 〃(〈用厶 …^-i>)#= Ф M((M[ … f”。〉). Существует по крайней мере одно /, удовлетворяющее условию (*), поэтому, перечисляя на каждом шаге 良 значения 力=0, 1, 00, 11, ООО, 111,・,・ и проверяя условие (*), можно всегда обнаружить ^ после конечного числа операций. Таким образом, процедура определения f является рекурсивной, а именно: f 巨兔
Однако последовательность чисел {M(f [々])}尼个仪 колеблется неограниченное число раз, поэтому f ф. 陆 ЕХ(М). Это противоречит допущению о том, что / 至 灾三 ЕХ(М). (Конец доказательства.)
Очень похожим на идентификацию в пределе яв- ляется понятие экстраполяции. Это понятие ветре-, чается в задачах типа
„продолжите ряд чисел 1, 3, 5, 7",
которые часто встречаются в тестах на интеллект. Если целью индуктивных выводов является получение правила, объясняющего примеры, то целью экстраполяции является прогнозирование следующего элемента заданного ограниченного ряда. Экстраполяционной машиной называется машина, которая выдает прогнозируемое значение ,(々+1, рекурсивной функции f на основе данных f(0), Ц1),f依).Та、
кую машину по аналогии с машиной выводов можно рассматривать как частичную рекурсивную функцию, которая в каждый момент времени k выдает прогнозируемое значение /(/?+!) на основании данных 〃同 о рекурсивной функции f.
Определение 7.3. Если экстраполирующая машина М, которую будем считать рекурсивной функцией
(т. е. она выдает прогнозируемое значение, какое бы входное значение ни получила), правильно предсказывает следующее значение f(fe + I) в каждый момент, начиная с некоторого момента, то скажем, что М NV-экстраполирует г> функцию /.
Если экстраполирующая машина М, которую будем считать частичной рекурсивной функцией, выдает прогнозируемое значение во все моменты времени, когда заданы данные об 力 и начиная с некоторого момента в каждый момент 々 правильно прогнозирует следующее значение /(力 + 丨),то скажем, что М NVЛ-экcтpaпoлиpyeт f. Если экстраполирующая машина М, которую будем считать частичной рекурсивной функцией, правильно прогнозирует следующее значение f(k + 1) во все моменты, начиная с некоторого момента, когда заданы данные об /, то скажем, что М МУ/у-экстраполирует /. Если существует экстраполирующая машина, которая NV-экстраполирует (NVz-3KCTpancxrjирует, NV//-экcтpaпoлиpyeт) любую функцию множества рекурсивных функций U, то скажем, что U позволяет девать NV-экстраполяцию (NV/-экcтpaпoляцию) NV//-экcтpaпoляцию). Само множество рекурсивных функций, которое позволяет делать NV-экстраполяцию (МУ'-зкстрапо/янню, NV"- экстраполяцию), обозначим через NV(NV「NV"). Из определения очевидно, что NV 三 NV'三 NV", но известно, что NV +" NV' ^ NV".
Определение экстраполирующей машины очень похоже на определение машины выводов, поэтому, используя первую машину, можно строить вторую и, наоборот, используя вторую, можно построить первую. Кстати, равнозначны лн возможности экстраполяции и индуктивных выводов? Для строгого обсуждения можно разместить NV, NV', NV" в иерархии методов вывода (см. рис. 7.1, 7.2).
Для того чтобы уточнить особенности множеств, которые позволяют делать 1ЧУ-экстрапол5щию, введем понятие /z-простоты. Пусть h ——рекурсивная
1)NV — сокращение слоз Next Value (следующее значение) .—Прим, перев.
функция. Скажем, что рекурсивная функция f яв* ляется 九-простой, если среди программ, вычисляющих 力 существует такая, которая почти для всех натуральных чисел 尤,то есть для всех натуральных чисел х, за некоторыми исключениями, заканчивает вычисление f(x) за менее чем Л (л) шагов. Использование этого понятия позволяет указать следующие особенности NV.
Теорема 7.4 (Бардин и Фрсйволд, Блюм Л. и Блюм М). Для множества рекурсивных функций U следующие три условия равнозначны:
для некоторой рекурсивной функции 九(尤)все функции множества Ш-просты;
U позволяет делать NV-экстраполяцию;
U есть подмножество перечисляемого множества.
Доказательство. (Пусть Р(左)——некоторое суждение о натуральном числе k. Если 三品 巨 М Vk > ^0 справедливо 尸(々卜 то скажем, что Р справедливо почти для всех натуральных чисел (почти всюду в ^), и запишем Р (п. в.). Скажем, что f /г-простая, если 3i 三 V; ср/ = / н ①,у 九(п. в.). Скажем, что экстраполирующая машина М ^Я NV-экстраполирует рекурсивную функцию Д если Э^о ^ N и для У^ N 左。 справедливо 乂(/肉)=/(々 + 1). Запишем это в виде NV(M)= {fw 庭図三 f NV-экстраполирует f}, что обозначим так. NV {U ^^\ ЭМ ^ ^; (/ S NV (М)}. Кроме того, определим NUM ^ { U ^ Я\Ва ^ ^}
{фа⑴ U w N} ^纭 J
Используя введенные обозначения, представим Данную георему в внае {U 三例|三九 三死; Vf s U^ m:wN; ◎ = / и Ф/ ^ h (n a)} = NV = NUM.
(1)^(2). Пусть m/zw 絶 любая функция f множества U ft-проста. Тогда построим следующим о6ра・ тем экстраполирующую машину М. В доказательстве обозначение <х, у) представляет собой рекурсивно за- кодированные пары натуральных чисел (к, у).
Пусть f (0) f(尤一1)(乂/1) — ограниченная произвольная последовательность натуральных чисел Д^ины более 1. М перечисляет все пары натуральных пнеел (I, п), начиная с меньшего〈,,几〉,и среди нар (厶门),удовлетворяющих условию
Vy&% ① £ (у)《max {小 /2 (у)}, I
Vy& 尤-L 屮№) = f (у) j ⑺ отыскивает пару (f0, ^о), появившуюся первой (т. е. с наименьшим《厶 〃〉)при таком перечислении, затем выводит ;И (/ [п — l]) =(pZj(x),
Покажем, что М 巨鹿.Это можно сделать, если показать, что при задании ограниченной последовательности f(0)f(x—1) в качестве входных данных М всегда будет выдавать М {f[x——1]) после конечного числа операций. При проверке (*) для каждого (i, п) может и не быть 屮t(y)L но число шагов ①Му) вычисления (р,(у) ограничено сверху числом max{/z,九(4)}, поэтому проверка (*) всегда закончится через конечное число операций. Кроме того, пусть ро——некоторая программа для ограниченной последовательности f(0) …f(%—1), например /(0)... ...f(x—1)0", если s()= max {①4(y)fy&х}, то (р0) s0) удовлетворяет условиям (») для (f, п), по^ этому существует по крайней мере одна пара (г, п), удовлетворяющая (吿).Следовательно, благодаря перечислению всех пар натуральных чисел (/, п) в порядке, начиная с наименьшего <t,九〉,и благодаря проверке (*) можно всегда обнаружить требуемую пару (/0, По). При этом из Ф1э (-t) ^ шах {м,九(尤》следует 屮八(x)j. Следовательно, М (f [х — 1]) =(р(0 (х) всегда выдается после конечного числа операций.
Возьмем Vf w U. f A-проста, поэтому Н/ 巨 N;中,— =f И ByQ е ^; Yy^ %,①/®)W/1®)・ Пусть mm е max {①?(g) \y <Z у о} t тогда (j, т) удовлетворяет условию (**):
Y产 № ①,®)《max {内力®)} и w0) = 〃y).卜*) Существует по крайней мере одна пара (/, т), удовлетворяющая (•"■*), поэтому среди, всех таких п?р существует (/о» ^о) с наименьшим </, т). Пусть 入飞一 наименьшее х, при котором М, прочитав ,[工—1], выбирает (j^ m0), тогда М для Ух > х0» прочитав f[x— 1 ], выбирает (%, т°), поэтому M(f[x— 1])= =Ф/0(х) = /(%). Поэтому f 巨 NV(M). То есть U三NV.
(2)#(3): Пусть UeNV, а именно:己从三现;, U 三 NV(M). Конечная начальная функция — это функция мз N в N с областью определения {0, 1,... …,几} (n^N). /о, Л,... — перечисление всех конечных начальных функций. Определим gj по М и /, следующим образом:
(&(%) при 尤三 dom(fi),
gi W = I M(gJ%—1]) в остальных случаях.
Из Mw笈 следует Vi^N, gi e 5?. Кроме того, процедура построения gi из i рекурсивна, поэтому m。三例;V,三 М ^a(i) = gi^ Для любой функции f, которую М NV-экстраполирует, Ht s М, f = gi и, наоборот, д』е Vt е ^ М NV-экстраполирует g〃 поэтому NV(財)={gj|i 三"}. Таким образом,т。巨现; U 三 NV(附)={gt|i w N} = {屮&⑴I,三 N}三例,а именно: U w NUM.
=> (1). Пусть U w NUM. То есть За s ^; UW и {фя(()| i w N}三现.Пусть h(x')= max{①а⑴")| i W &х}. Из Yle N,屮&⑴至例 следует ①а⑴ wj?・ Поэтому 用 三现,а именно: 三九 三免; Vj w U,三a⑴三n; 屮口⑷=f и 3t ^ N\ Vx ^ /, Фи(/)(х)^ h(x). Другими словами, любая / из U 九-нроста、 (Конец доказательства.)
Из этой теоремы очевидно, что возможности NV- экстраполящш и метода перечисления равнозначны, и то и другое можно применять для множества, все функции которого /гпросты. Блюм в качестве критерия объема вычислений использовал понятия "-уме- репный и О-умсренньш, выяснил особенности методов вывода и показал, что существует тесная связь между возможностями вывода и объемом вычислений. На основе теории объема вычислений Блюма аналогичные исследоваши] были продолжены группой математиков нз ФРГ, которые получили интересные результаты.
Из этого раздела мы узнали, что NUM ^ ЕХТ 先 0ЕХ. В разд. 7.3 будет введен euie один критерии успеха индуктивного вывода, слабее, чем идентифика- ння в пределе (ЕХ-идентификация); мы ознакомимся с иерархией методов вывода, главным образом выше
уровнем, чем ЕХ. В разд. 7.4 будет введен критерий успеха, сильнее ЕХ-идентификации, и объяснена иерархия методов вывода между NUM и ЕХ.
7-3. РАСШИРЕНИЕ ИДЕНТИФИКАЦИИ• В ПРЕДЕЛЕ
В разд. 7.2 показано, что множество рекурсивных функций 笈 не позволяет делать ЕХ-идентификацию. Если ослабить условия сходимости неограниченной последовательности предположений, которые выдает машина выводов, то возможности вывода, как правило, повышаются. На основе работ Кейса и Смита введем критерий успеха индуктивных выводов, слабее идентификации в пределе (ЕХ-идентификации), и обсудим иерархию расширенных методов вывода. Давайте уточним, до каких пор можно ослаблять критерий вывода для множества рекурсивных функций 例 и существуют ли какие-либо критерии между новым критерием и ЕХ-идентификацией. Иерархия будет представлена на рис. 7.1 в конце этого раздела.
КРИТЕРИЙ, ДОПУСКАЮЩИЙ ИСКЛЮЧЕНИЯ,И КРИТЕРИЙ, ИМЕЮЩИЙ ОГРАНИЧЕНИЯ
НА КОЛИЧЕСТБО ИЗМЕНЕНИЙ ПРЕДПОЛОЖЕНИЙ
При ЕХ-идентификации машине выводов М задаются данные о рекурсивной функции f и требуется, чтобы предположения, зыдаваемые ;V1, сходились в программе f. Ослабим этот критерий успеха и рассмотрим критерий, в соответствии с которым предположения могут сходиться к программе, вычисляющей,,за исключением конечного числа случаев. Пусть /〃, п ——натуральные числа или знак
Определение 7.4. Скажем, что машина выводов М ЕХ^-идентифнцирует рекурсивную функцию 力 если при задании данных об / предположения, выдаваемые М, сходятся к программе, правильно вычисляющей 厶 за исключением не более чем п случаев (при 几=去, за исключением конечного числа случаев).
Очевидно, что при увеличении максимального числа исключений п становятся лучше соответствующие методы вывода ЕХ〃 (см. рис. 7,1).
Кроме метода Блюма, приведенного выше, в качестве критерия измерения объема вычислений при индуктивных выводах можно рассмотреть количество изменений предположений машиной выводов.
Определение 7.5. Скажем, что машина выводов М EXm-идентифицирует рекурсивную функцию 厶 если при задании данных or f М ЕХп-идентифицирует функцию / после максимально т изменений предположений (при т = * после некоторого количества изменений).
Понятие ЕХ*-идентификации совпадает с понятиями идентификации почти всюду (Блюм) и субидентификации (Миникоччи).
Обратим внимание, что по определению ЕХ = =ЕХ°=ЕХ?, ЕХ" = ЕХ:. Очевидно также, что при уменьшении максимального числа изменений предположений критерий успеха усиливается, а соответствующие методы вывода ЕХ^ становятся хуже. ЕХо-идентификация ——это критерий выдачи правильной программы только при одном изменении предположения. Этот критерии аналогичен так называемой конечной идентификации (FIN), при которой можно определять конечный набор данных, необходимых для выдачи машиной выводов правильного предположения. Таким образом метод вывода ЕХ& можно обозначить как FIN. Пусть а, 6, с, d — натуральные числа или знак Кроме того, определим, что для любого натурального чмела й W При этом очевидно, что
ЕХ;三 ЕХ*и>а^с и b^d
(см. рис. 7.1).
КРИТЕРИЙ, ОСНОВАННЫЙ НА СХОДИМОСТИС ТОЧКИ ЗРЕНИЯ ДЕЙСТВИЙ ПРОГРАММЫ
В критериях, рассмо^греннкх до сих пор, требовалась сходимость неограниченной последовательности предположений, выдаваемых машиной выводов, как последовательности натуральных чисел. Это соответ- стЕует посимвольной сходимости неограниченной по-
следовательностн программ, представляющих собой предположения. Рассмотрим критерий, при котором нет такой сходимости, но, начиная с некоторого момента, можно корректировать действие программы.
Определение 7.6. Скажем, что машина выводов М ВС-пденткфицирует ') рекурсивную функцию f, е^ти предположения, выдаваемые М во все моменты времени, начиная с некоторого момента, есть не что иное, как программа, вычисляющая 厶 Кроме того, скажем, что 7H ВСя-идентифицирует f, если предположения, выдаваемые М, во все моменты времени, начиная с некоторого момента, за исключением максимально м случаев (при п = %, за исключением конечного числа случаев), есть программа, вычисляющая f.
Обратим внимание, что по определению ВС = ВС0. Если критерий успеха индуктивных выводов ослаблен до ВС-идентификации, то 笈 будет позволять делать выводы.
Теорема 7.5 (Кейс и Смит). Существует машина выводов, которая ВС*-идентафицирует все рекурсивные функции, т. е.例三 ВС*.
Доказательство. ( Пусть р ——программа, a f ——рекурсивная функция. Если Тр(х) определяется, но отличается от 『(%) или Ср(х) не определяется, то запишем 中口(工)¥=/(尤)・ При этом такое % назовем исключением, при котором программа р не может вычислять f. Если {х ^ ;VIфр(х)^ f(x)} — конечное множество, то запишем ср0 = *f. Скажем, что М巨夕 ВС*-иденти- фпцирует f 至笈,если V& w М M(f[k]) | и mAwN; V/? ^ ^о> Ф.и(м^Р = *Л)
Пусть [木])——программа, определенная ниже. Пока?кем( что для Vf е 5?, YhwN машина выводов, определенная как M(f\k]) = e(f[k]), ВС*-идентифи- цирует f.
Программа e(f[k]), получив входное значение х 三 М действует следующим образом.
[Среди р, таких, что 0 W р W 々,отыскивает ми- ①р(У)㈢ Х・ Если такое р существует, то для входного значения % запускается программа р, и если ср*) нимальное р, такое, что 0 W Vy W 瓦屮р(У)= "У)11
D От английских слов Behaviorally Correct. — Поим, ре»
вычисляется, то возвращается его значение. Если такого р не существует, то возвращается 0. J
Фр в общем случае — частичная рекурсивная функ^ ция. Кроме того, если изменить 幺 то изменится ито то внутри 「 J, т. е. изменятся символы в программе е(f|同),поэтому следует обратить внимание на то, что последовательность натуральных чисел 3(f伏])}咤n ^ сходится.
Возьмем любую рекурсивную функцию /. Пусть р{ программа, вычисляющая ft с минимальным номером, а именно: р; = min{p ^ N\^p = f}. Если взять достаточно большое натуральное число 々『(например, пусть Е — максимальное из чисел 卩『 н max {min{у w N | 屮卩(у) #= f (у)} | О V р V 勿}), то выполняется
勿工曲,0< Vp < ръ 0《mg & 耳;%匂)#= f (р)・(*)
Здесь показано, что V力》%,中M(f 同)= 7・ Если взять достаточно большое натуральное число 工九用(например, пусть Xfy * s max {Фр/{у)\0 у k)t то выполняется
0 《 Vy《幺 ①力(y)《叮枳(* *)
По определению %(『[/,]) = e(f [々])• Для любого входного значения х 尤九玄,как следует из (*) и (第*), программа e{f[k]) отбросит все р, такие, что О W р V р〃 выберет pf и выдаст(р&(川同)(%)=屮〃,(尤)= = f(Y). ПОЭТОМУ ^X^Xftki ①M(M川)00 =①е{『/])(лО = (%)•
в результате力三例,日密三n;V々》々力中"行闵尸力 а именно: М ВС:"-1-1дентифицирует любую рекурсивную функцию f. (Конец доказательства.)
Критерий ВС^-идептифпкации не реализуем, по из определения возмо;кности делать выводы из множества следует, что любое подмножество 5? нозво- ляет Делать ВС*-идентификацию, поэтому метод вы- вода ВС* совпадает с семейством всех множеств рекурсивных функций. Следовательно, пока объектом индуктивных выводов являются рекурсивные функции, метода вывода «сильнее», чем ВС*, не существует.
Кейс и Смит показали, что методы вывода ЕХт, ВС” образуют следующую красивую иерархию (рис. 7.1). Обозначим через KJ, Z Z отношения строгого вложения, а именно: метод вывода, лежащий вверху или слева, строго лучше, чем методы вывода, лежащие внизу или справа. Эта иерархия отражает связь между методами вывода EXo, EX, ЕХ*, ВС, ВС , отличающимися по максимальному числу исключений, допускаемых в сходящихся предположениях, или максимальному числу изменений предположений. Иерархия методов вывода, допускающих исключения, кроме того, подробно проанализирована и исследована в работах Чена, Смита, Дэйли и других математиков.
併 £ВС"
HJ
ВС1
KJ
BC=N,
HJ
ЕХ・?・・• 2ЕХ;?ЕХ:hi QKJ KJ
HJ^ U <J
EXT • • « 2 EX] 2EXJ
NV
Re 7.1. Иерархия методоп вывода ЬХ^ ЕС" по Кейсу п Смиту
7.4. ИНДУКТИВНЫЕ ВЫВОДЫ,УДОВЛЕТВОРЯЮЩИЕ ЕСТЕСТВЕННЫМ КРИТЕРИЯМ
В разд. 7.3 рассмотрены критерии, более слабые по сравнению с ЕХ-идентификацией, в которых либо допускалось конечное число исключений при предпо- ложеннях, либо сходимость заменялась действиями программы, и предложена иерархия методов вывода, главным образом лежащих выше метода EX. С практической точки зрения, естественно, более желательны критерии, при которых предположения, выдаваемые машиной вывода, в любой момент времени не противоречат заданным до этого времени данным. Допустим, что ЕХ-идентификация имеет свойства, естественные с практической точки зрения; рассмотрим критерии сильнее, чем ЕХ-идентификация, и выясним иерархию методов вывода, лежащих ниже ЕХ-идентпфикации. Результаты, с которыми мы ознакомимся далее, получены группой математиков из ФРГ (Вихагеи, Янтке, Бейк).
КРИТЕРИЙ с ОГРАНИЧЕНИЕМНА ОБЛАСТЬ ПАМЯТИ
Машина выводов, которая обсуждалась до сих пор, делала предположения на основе всех данных f(0),f(D, • 丁,f(尉,заданных до момента времен:】k. Пидуктивныи вывод—это процесс неограниченной продолжительности, поэтому со временем объем данных, к которым должна обращаться машина выводов, неограниченно возрастает. Для изучения возможностей индуктивных выводов, выполняемых па реальных компьютерах, необходимо вводить ограни- ненн? на область памяти. Поэтому рассмотрим крн・ терн瓦 прн котором правильный вывод делается бла- г°Даря итеративному (ITeratively working) опредсле- нню предположения 厶+】в момент 々+1, только на основе предыдущего предположения hk на момент k н полученных в текущий момент данных (/г, f(k)).
Определение 7.7. Скажем, что машина выводов М, которую будем рассматривать как частичную рекурсивную функцию трех переменных, 1Т-идептпфнци- рует рекурсивную функцию 厶 если неограниченная
последовательность предположений {hk}k^N, определяемых следующим образом:力。w 0, /u+i 三 M(h*$ 抬 f(论)),сходится к программе, вычисляющей 厶
IT-идентификацию можно назвать критерием с ограничением на область памяти при реализации процесса «запрос входных значений -> вычисление предположения —> выходное значение».
Теорема 7.6 (Вихаген). IT-идентификация имеет возможности строго слабее, чем ЕХ-идентификация» а именно: IT^EX-
Джазательстео. По определению IT 三 EX, поэтому достаточно показать, что 3U ^ ЕХ\1Т. Пусть Uo = {oOgjawN*}, Ui 三{,三灰[叨(°)= f, Vx^W, f (x) =^ 0}, U Uq\J U\.
Если построить следующим образом машину вывода Л!?, то U 三 ЕХ(Мо).
m、«心,修> 一-х切=‘m、«心,修> 一-х切=‘尤0 при 0话{的,光什. •。,%a}, некоторая программа рекурсивной функции XqX, ... хА0°° — в других случаях.
m、«心,修> 一-х切=‘
m、«心,修> 一-х切=‘
Покажем методом от противного, что U 史 IT. Обозначим через 夕? множество частичных рекурсивных функции трех переменных. Допустим, что ВЛ1 м 夕3; и = “ и U1 三 1Т(Л1). Определим следующим образом 力 для любого /* 三 ^:
九(0)三力
‘1 прm Ai(h^(f^ 也 1)*生色),
九优)w 2 при4/(/2方(力),々,1) = &(九)h
(々注 1)、 m (/4(%),左,2)*& (九一).
Здесь 伉(fj=0,仇+1 (川三?」("丸(力),息 % (期) (々》0),厶三 纽 Это потому, что не существует 备巨 А『такого, что
М (鱼(勿,汽D = ,M (龜色),/2)=他(/3 G) поэтому ft (Л) определяется для любого 卜 r N. А раз д'г к, то возьмем минимальное среди 龙,удовлетворяю-
щих (*). Пусть g 三死—— функция, определяемая следующим образом:
{
厶(х) при х < kf
при Х = М
О при尤>九,
a g‘ е 夕——функция, определяемая следующим образом:
f “(х) при X < kt g《) = {2при x — k,
I0при х > 九.
Пусть 也式砧}心,也idgfgN соответственно последовательности предположений при задании М данных о g, g‘. По допущению для Vfe е ^, hk(g) = hk(g'). Но это противоречит тому, что g, g‘三九三 1Т(Л!) н g,g*. Таким образом, не существует 少三 N, удовлетворяющего
По теореме о рекурсии За > 0; 屮& = %三0什 При задании машине выводов М данных о fa последовательность предположений {ЛА (fJ}yN неограниченно колеблется, поэтому fa ^ IT (Л1). Это противоречит тому, что % 三 S 三 Ь 三 1Т(Л1). (Конец доказательства.)
7.42 НЕПРОТИВОРЕЧИВЫЕ КРИТЕРИИ
Критерий, при котором предположения, выдаваемые в каждый момент времени машиной выводов, не противоречат всем полученным до этого момента данным,——естественный и часто используется в системах автоматического синтеза программ. Фактически систему модельных выводов MIS, созданную Шапиро, можно рассматривать как машину выводов, удовлетворяющую этому критерию. Метод вывода CONS ° позволяет представить возможности этого критерия.
Определение 7.8. Скажем, что машина выводов М CON S-идентифицирует рекурсивную функцию f, если
D От английского слова Consistent (состоятельный, лопкч- ный). — Прим, иерее,
М ЕХ-идентифицирует f и в любой момент времени й может вычислить предположение M(f [А]) по всем полученным до этого момента данным f(0),『⑴,…
Очевидно, что машина вывода, которая выдает только предположения, объясняющие все полученные до некоторого момента данные, не может делать выводы для множества рекурсивных функций, которое позволяет делать IT-идентификацию (а следовательно, и ЕХ-идептификацию).
Теорема 7.7 (Вихаген). CONS-идентификация имеет строго лучшие возможности, чем метод перечисления, ио строго худшие возможности, чем 1Т・ идентификация, а именно: NUM ^ CONS ^ IT.
Доказательство. (Скажем, что машина выводов М 巨例 CONS-идентифицирует рекурсивную функцию f, если f е ЕХ(М) н中M(f 1同)=f【九]J
NUM + CONS.
la) Покажем, что NUM 三 CONS.
Пусть 3h三例;U三{屮匕⑴I ,三jV}三纪
Основываясь на методе перечисления из теоремы 7.1, машину выводов Л1 三烫 можно представить следующим образом:
h(n}iu{t^N\^h{i}[k] = =〈尤0, Xj, ■ . • , %。}),
М ((х0,修,,/〉) = { если такое ' существует, не определена в других случаях.
Когда задаются данные о любой функции / из U, маши на выводов Л1, выдавая только предположения, нс противоречащие всем полученным до сих пор данным, ЕХ-ндентифпщфует 力 поэтому U 三 CONS(M)・
Покажем, что CONS\NUM 0.
Если определить множество рекурсивных функций U и машину выводов MQ так, как в доказательстве теопемн 7.2, то станет очевидным, что U 三 三 CONS(7VIo) и U 任 NUM.
CONS + IT.
2а) Покажем, что CONS 三 IT.
Пусть mM 三牝 U 三CONS (Л1): Тогда построрш кашицу выводов "'三 ^3 следующим образом:
,М(〈У》при ^ = х = О,
ЛГ 伍,xt у)= <ЛГ 伍,xt у)= <m((佻(0)一,5(%-1)у》при х > 0 и 强(f)J для 0 ^ V/ ^х — 1,
ЛГ 伍,xt у)= <
ЛГ 伍,xt у)= <
I не определено в других случаях.
Пусть {hk}k^N ——последовательность предположений гри задании ЛГ данных об V/ 三 U, тогда lim/丿必— н= linhM (f 因).Таким образом,。三 1Т(ЛГ).
Покажем, пто IT\CONS #= 0.
Пусть U = {aif I а 三 N*, i 为 2, /' — рекурсивный предикат,例=aif}. Построим машину выводов Л!三乡следующим образом:
山厶 ,(У при у>2,
' '〃 I 少 при у <2.
Последовательность предположений при задании М данных об Уф/ 三 U сходится к 厶 поэтому 屮^ 三 IT(Л1). Следовательно, U 三 IT.
fi^^i,0fi (々 + 1)三,1 (при々戸0)fi^^i,0fi (々 + 1)三,1 (при々戸0)Покажем методом от противного, что U 柒 CONS. Допустим, что М 三乡;。三 CONS(tW). Определим 彳 длн любого £ 三 /V следующим образом:
fi^^i,
0
fi (々 + 1)三,1 (при々戸0)
fi^^i,
0
fi (々 + 1)三,1 (при々戸0)
при М (/(О). ••厶(々)0〉)*
* А1(〈3(0)…九(储〉), при м (〈九(0)…%他)0〉) =
=m(匕(0)../他)〉)
и加(〈九⑼九)1〉)*
抬加(〈九(0) •"(&)〉)•
力三例.Поскольку не существует 々三 2 такого 父。夕飙(0)h(^)0>) =M«/z(0) 力(田1〉)丄
=m(〈力(0)…力(力)〉),поэтому 厶他) определяется д”' любого натурального числа k.门усть существует 'такое, что ^ е ^, тогда существует функцля в U, которая для любой ограниченной последовательности а натуральных чисел начинается с а, поэтому суще-
етвуют gwU такая, что g快+"=〈厶(0) …厶(田0〉,и g,w и такая, что gf[k+ 1] =<^(0) ... ..•九(月)1〉・ Следовательно, можно определить M(g〔R+l]) н M(g'[^+1])・ По допущению для любого Л они равны. Из того, что g, g‘ rU 三 三 CONS (Л1) нмеем g 快 + 1] = g'饮 + 1], что противоречит способу определения g, g‘. То есть не существует k N.
По теореме о рекурсии На 为2;①。=% 曰 и. Числовая последовательность {Л1 (fa [4])}йеЛ/ неограниченно колеблется, поэтому fa ^ CONS(A4). А это противоречит тому, что fa ^ U CONS(M). (Конец доказательства.)
ПОРЯДОК УКАЗАНИЯ ДАННЫХ
В приведенных до сих пор критериях способ показа примеров рекурсивной функции Д а именно порядок указания данных, ограничивался только последовательностью /(0), /(1), Ниже опишем критерий задания данных в произвольном (ARB itrary) порядке. Неограниченный ряд, в котором все натуральные числа появляются только один раз, называется перестановкой N.
Определение 7.9. Скажем, что машина выводов М, которую будем считать частичной рекурсивной функцией трех переменных, 1ТагЬ-идентиф1щир\гет рекурсивную функцию 厶 если для любой перестановки ^ X ~ {.Vo, X” .. .} — неограниченная последовательность предположений {%+[(% X)}左曰丫,определяемая как h0 (Д X) = 0,①+[ (/, X)三 М (/底亿 X),必,f (必)) (力扌 0), сходится к программе, вычисляющей f.
По аналогии с IT-идентифинацией назовем ЮзгЬ- идентификацией критерий, определяемый при задании данных в произвольном порядке, а соответствующий метод вывода обозначим через IDarb. Очевидно, что Н>「ь 三 id, поэтому есть два случая: IDarb ^ ID или IDa,b = ID. В последнем случае возможности вывода при Ю-идентификацин не зависят от порядка задания данных. Поэтому Ю-идснтификацию н метод вывода ID называют независимыми от порядка.
Легко понять, что не зависит от порядка ЕХ-иден- тификация, поскольку из любой машины выводов М можно построить следующую машину выводов М1, для которой ЕХ(М)三 EXarb(Aiz).
Если для любой перестановки ^ X = {х0, %【,...} заданы данные (х0, f(%o)),(修,f (尤i)), ..., то Af запоминает эти данные, выдает соответствующее предположение до момента, пока не будут заданы все данные (0, f(0)), (1, f(1)), (й, /(Л)) для некоторого 电 и выдает предположение M(f [k]), когда все эти данные будут заданы. Посмотрим, для всех ли машин выводов эффективен этот метод, ведь пока мы без ограничения общности считали критерии успеха независимыми от порядка, В такой ситуации 8нтке и Бейк показали, что IT-идентификация не является независимой от порядка.
Теорема 7.8 (Янтке н Бейк). 1Т-идентификация зависит от порядка, а именно: ITarb IT.
Доказательство. Достаточно показать, что 1Т\ \1Тагь,0 Пусть Uoi = {,三例|f — рекурсивный предикат, такой, что f = 0 (п. в.) или f = I (п. в.)}. ^01 — перечислимое множество, по теореме 7.7 U(n 三 三NUM三IT,
Покажем методом от противного, что t/Oi 柒 ITarb. Допустим, что 三加三刑;t/oi 1ТагЬ(Л4). Пусть % = =0, X 三{0, 1, 2, . . .} —перестановка,外至/卜 поэтому сеть начальный момент s w N、 при котором последовательность предположений {龜(%,犬)}^^ при задании М данных о % в порядке X сходится к правильной программе f0, а именно:
Зse^;九一伍,X) * 几(/о, X);
V左 > s, hk (/°, X) = /2$ (%,X),屮勺仇.
Для простоты будем писать hk ^ hk(fQ> X) (k ^ 0).
Рассмотрим предикат %, определенный следующим образом:
"(%)三{"(%)三{0 при х ^s, 1 При X > s.0 при х ^s, 1 При X > s.
"(%)三{
"(%)三{
0 при х ^s, 1 При X > s.
0 при х ^s, 1 При X > s.
f(三 Uoi 三 ITarb(M), поэтому по аналогии с %
3/e^;自.1(%, X),儿仏,Х);
v&》f, %(f[, Х) = %“ Х)』№ х)= 3・(*)
Здесь для /三例 о перестановки У = {у0, Уь ・• •} будем записывать (/, У) [k] ^ (f^o), /(少),・一 • •.,/(%)〉. Из (%, X) [s]=(儿 X) [s] имеем hs = =/〔s+i =伉+1(厶,X). Из того, что ^о #= Л,получаем, что hs+i (Л> ^) не является программой 『卜 поэтому / > S * 1.
Рассмотрим перестановку Xk = Uo,尤i,опре
деляемую числовой последовательностью Хь
/ iприi《s,
kприt = S +1,
*'к i — 1 приs -г 1 <г ^ ^,
、/приi > k.
Кроме того, рассмотрим следующий предикат gk-
,0 при х = к, g"汇)一j “(%) при x#= /г.
Возьмем k такое, что k ^ t(> s + И- Из того, что (Л, X)国=(&, XQ [s] = (%, X) Is], имеем
0 ^ V/ ^s + 1, /2/(^b x)= hl(gb xq = /!六
Кроме того,
厶s + 2(g/e,^fe) — ^ (^s + l (Skr 爲),"s + 1,Sk (^S-J- t))>
Л4 ("s+i,2,。), =力s・
Теперь из условий 々 2 / н (*) имеем
Vj》s, %(/[, X) = %+i(g^ 爲)・
Следовательно,
lim jhf (^, X) = linij%(g如爲)=儿山,X),
а именно: существует lim; Л; (^/e, Xk), и программа Л отлична от ga Поэтому g在柒『❶屮),Это противО'
речит тому, что gk^ ^oi ITarb(M). (Конец доказательства.)
Очевидно, что на практике кроме 1Т-идентифнха- ции есть несколько других естественных критериев, зависящих от порядка (см. рис. 7.2).
ДРУГИЕ ЕСТЕСТВЕННЫЕ КРИТЕРИИ
Кроме указанных выше можно рассмотреть много других критериев, имеющих естественную природу. В частности, среди них выделим критерий оптимального (BEST) объема данных, требуемого для нндук^ тиеного вывода.
Определение 7.10. Скажем, что множество рекурсивных функций U позволяет сделать BEST-иденти- фикацшо, если существует машина выводов М, которая ЕХ-идентифицирует U, но не существует машины выводов, которая идентифицирует любую функцию из U по данном, объем которых тот же, что нужен для М, а некоторую функцию идентифицирует по данным, объем которых строго меньше объема, требуемого для М.
Перечислимое множество рекурсивных функций обозначим через NUM!. Голд показал, что метод перечисления, который на первый взгляд имеет плохую эффективность, оптимально с точки зрення объема данных идентифицирует множество функций, которое можно перечислить. Этот факт запишем как NUM!三 三 BEST.
Если при идентификации функции из множества рекурсивных функций U предположение, которое выдала машина выводов, не является программой функции, принадлежащей U, то такое предложение нельзя считать правильным. Следовательно, мо^кио считать естественным свойство со?<рапепия класса {Class Рге- scrving), состоящее в том, что машина выводов в качестве предположения всегда выдает только программы функций, принадлежащих U. Скажем, что машина выводов М с таким свойством СР-идентифицирует множество рекурсивных функций U, если М. ЕХ-идеи- тифицирует U. Скажем также, то ведется WCP- идентнфикация, если машина выводов М обладает свсйстеом сохранения класса в слабом смысле
(Weakly Class Preserving), состоящим в том, что М вы да ет только программы функций, принадлежапщх ЕХ(М), или ведется TOTAL-идентификация, если машина выводов обладает свойством выдавать только программы рекурсивных функций (TOTAL recursive function).
Итак, мы рассмотрели много критериев с естественными свойствами. Можно изучить критерии, обладающие несколькими из этих свойств. Например, если машина выводов М, обладающая свойствами сохранения класса и непротиворечивости, ЕХ-идентифици- рует множество рекурсивных функций U、то скажем, что Л1 СР-CONS-идентифицирует U. При этом соответствующий метод вывода СР-CONS назовем комбинацией методов СР и CONS. Такие комбинации будем отмечать знакомАналогично можно определить другие комбинации методов вывода. Используя их, можно уточнить особенности метода вывода BEST, оптимального по отношению к объему данных.
Теорема 7.9 (Янтке и Бейк). Возможности BEST・ идентификации разнозначны возможностям СР- CONS-идентификации, а именно: BEST-CP-CONS.
Доказательство, (min饮三 N| V j 2 也 M(f [用)= —M(f [/]) назовем точкой стабилизации при задании М данных о 力 обозначим ее через Stab(Al, /). Скажем, что множество рекурсивных функций U позволяет сделать BEST-идентификацию, если существует машина -выводов Л1 w % удовлетворяющая двум условиям. Запишем это как 。三 BEST(M). Эти условия:
])UwEX(M); “
для любой машины вывода Tw 死 такой, что U 三 EX (7), справедливо утверждение
Vf wU, Stab (7") W Stab (М f)
ZpU, Stab (T, f) = Stab (M, f).
Метод вывода BEST определим как BEST 三{U 三 三例「Al三竺U三BEST(M)}. .
Скажем, что множество рекурсивных фзшкций позволяет сделать СР-CONS-идентификацию, если ВЛ! е 曰死。三 ЕХ(М) н VfwU, YhwN, рм 什同三卩(со-
хранение класса), 口儿疗俨])=/[左](непротиворечивость). Запишем это как U S СР-CONS(Л4). Метод вывода СР-CONS определим как СР-CONS 三{U 三现| ЗЛ1 芭 曰死 U 三 CP-CONS(M)}.)
Покажем, что BEST 三 CP-CONS.
Пусть ЗМ е ^\ U S BEST(Л1). Покажем методом от противного, что U 三 CP-CONS (М).
la) Допустим, что 3g wU; ^s м N;①”他⑶}柒 U. При этом Stab(M, g) > s. Пусть p одна из программ g. Построим следующим образом М‘三夕 для『三弘
/( Р при s^k и g® =,岡.
(“ 1) — I M(f 因)в других случаях.
U 三 ЕХ(ЛГ), кроме того, очевидно, что VfwU, Stab (М‘J) W Stab (М, f) и Stab (ЛГ, g) = s V VStab(Al, g). Это обратно тому, что U s BEST(М).
16) Допустим, что mg三и; 3s^/V;①財旭闻心]*g[s]. При этом Stab (Л1, ^) >> s, поэтому можно прийти к противоречию тем же способом, что и в 1а.
Покажем, что СР-CONS 三 BEST.
Пусть ЗЛ1 三兇 U 三 CP-CONS (Л1). Построим следующим образом ЛГ 三死
для f三丸h三N
M(f [川)при 左二0 или
*(h々])=*(h々])=屮)(%)J и ①му /(й-i])伍)声f (々),
*(h々])=
*(h々])=
Mf (/ [k ~ 1]) при /г > 0 и 中Ме伙一[]}(々)=f (期,
не определено в других случаях.
U ^ CP-CONS (Alz), обратим также внимание на то, что АГ обладает свойством не изменять второй раз предположение, если хотя бы однн раз она выдала правильное предположение.
Покажем методом от противного, что U 三 三 BEST (МЛ). Допустим, что
三М"三夕,u三 ex(m") и
\М 三 U, Stab(;Mz,, /z)CStab(<, /г), mfwU; Stab (〃〃")< Stab (ЛГ")・
Пусть, gm$M,6stab(M〃,川丿,тогда f,g, а из того, что М сохраняет класс, имеем g^U. Кроме того, из непротиворечивости ЛГ имеем*
f〔Stab(M\ fH = %"(f0ab(M,E)[Stab(M〃")] == g[Stab(M", f)]・
Поэтому g = pM(g[stab(M〃,f}j). Mt прочитав g[Stab(M", f)], выдает программу g, поэтому из свойств М
Stab(AC g)WStab(M〃,f).
Из того, что f[Stab(M", f)] =g[Stab(M"J“ н f,gw 三 U, f 片 g、имеем
Stab (%〃")< Stab (加",Q.
Следовательно,
Stab(AT, g) VStab(M", g).
Это противоречит допущениям о ЛГ\ (Конец доказательства.)
Для методов вывода, естественных с практической точки зрения, известна следующая иерархия. Это главным образом иерархия ниже чем ЕХ. Пусть ID — некоторый метод вывода, тогда обозначим через 现“D метод вывода, определяемый, в частности, тогда, когда машина вывода является рекурсивной функцией. На рис. 7.2 показано, что методы вывода, лежащие выше непрерывной линии, строго лучше, чем методы, лежащие под ней. Например, IDf указывает
ID2
вложение ID2 + ID^ Знак《=》означает, что методы справа и слева от него разнозначны, а знак «||» — что равнозначны методы сверху и снизу от этого знака.
В разд. 7.2—7.4 были приведены теоретические результаты в области индуктивных выводов над рекурсивными функциями. Основным среди критериев успеха инд^^ктивных выводов считают понятие нден- тификацин в пределе, но были приведены и многие другие критерии, а для того чтобы сравнить возможности машин выводов, ^удовлетворяющих тому или иному критерию, была построена иерархия соответст-
вующих методов вывода. Благодаря этому стало очевидно, что возможности метода перечисления и NV-идентификации равнозначны. Кроме того, обратившись к иерархии методов выводов, лежащих выше ЕХ и возникших путем ослабления основного критерия, мы видим, что множество всех рекурсивных функций Я позволяет делать выводы до тех пор, пока критерий не будет ослаблен до ВС*.
Кроме того, допустив существование свойств, естественных с практической точки зрения, таких как «использование метода перечисления», «выдача толь- ко предположений, непротизоречащих всем полученным до сих пор данным» и других, мы увидели, что
身-CONS=現_ CONS - ГТ身-CONS=現_ CONS - ГТCONSaACONSaACONS尸CONSГТ
身-CONS=現_ CONS - ГТ
身-CONS=現_ CONS - ГТ
CONSaA
CONSaA
CP~CONS-IT“bCP~CONS-IT“bHN=FIN心HN=FIN心
CP~CONS-IT“b
CP~CONS-IT“b
HN=FIN心
HN=FIN心
绛 conM
象 CONSTT?巾
TOTAL=TOTAL』WCP=WCparb
^-TOTAL
NUM=NV
TOTAL-1Таг1>
CP-CONS"b
Рнс, 72 Иерархия основных методов вывода, лежащих нижеЕХ.
усиление критериев приводит к ухудшению возможностей вывода. Другими словами, метод вывода, раскрывающий возможности метода перечисления, находится на достаточно низкой ступени иерархии методов вывода, рассмотренных в данных разделах. Таким образом, метод перечисления может удовлетворять всем свойствам, которые можно затребовать от методов вывода на более высоких ступенях. Это хорошо согласуется с действительным положением дел, когда при реализации системы индуктивных выводов на компьютере изначально используют метод перечисления, а эффективность системы повышают за счет рационального выбора стратегии поиска кандидатов.
Достаточно полное общее изложение теории индуктивных выводов сделали Англюн и Смит. Тенденции исследований индуктивных выводов в ФРГ подробно описали К』етт и Вихаген. Все они включили подробное описание иерархии методов вывода.
Вообще говоря, исследования иерархии методов индуктивных выводов для рекурсивных функций ведутся около 10 лет, создана полная и подробная иерархия. .Если сравнить с первыми результатами Голда, полученными еще в 1965 г.} то хорошо заметен прогресс 2 этой области. Читатели, заинтересовавшиеся этой областью, могут обратиться к соответствующей литературе.
ИНДУКТИВНЫЕ ВЫСОДЫ В ЯЗЫКАХ
В данном разделе в качестве объекта индуктивных выводов выбраны языки. Основное отличие индуктивных выводов в языках от случая функций сводится к представлению данных. Если представление данных о функции f ——это последовательность входных и выходных значений, то для представления данных о языке L можно рассматривать два метода. Первый — задается последовательность, состоящая только пз слов язык а 厶,это представление называется положительным. Второй — задается последовательность, состоящая из пар, в которых есть любое слово © и ии- формация о том, принадлежит ли ш языку L; такое представление называется полным. Пусть f — хара”
герпетическая функция языка L, при этом если w q 三厶 то /(w) = 1, а если — нет, то f(w) = 0, поэтому индуктивные выводы в языке 厶 при полном представлении можно рассматривать как индуктивные выводы для этой характеристической функции. Следовательно, все проблемы в теории индуктивных выводов, объектом в которой являются языки, сводятся к индуктивным выводам при положительном представлении. Поэтому в данном разделе мы будем обсуждать в основном такне выводы.
Прежде всего дадим основные определения, езя- занные с индуктивными выводами в языках, необходимые для дальнейшего обсуждения.
Пусть S ——конечное множество символов. Конечная любая последовательность, состоящая из символов 2, называется словом. Длину слова ш обозначим через |з|. Пустая (длины 0) последовательность символов также является словом, обозначим ее через & Через 2* обозначим множество всех слов в S. Любсе подмножество множества £* называется языком в W. Например, пусть S = {0, 1}, тогда S* есть множество ограниченных последовательностей, состоящих из 0 и 1, а {00, 01, 10} — это язык в S.
Язык L называется рекурсивным, есан для любого слова ш можно вычислить су ;к ден не, ир и и адлеж ит лн оно L. Семейство Г языков, состоящее из 3,厶2, называется индексированным семейством рекурсивных язы коз, если можно вычислить фу и к цию следующего вида:*
(1, если w 三 J, / 亿 а) = j n
I U —в противном случае.
Если Г — А),厶2,….一индексированное семейство рекурсивных языкоз, то для любого целого положительного t и любого слова w, используя указанную внше функцию /, можно непосредственно построить машину Тьюринга, оценивающую, включает ли язык 厶 слово w. Следовательно, обратите внимание на то, “то целое положительное число г можно считать пред- ста злением язы ка наряду с гра ммати кой и аитсматом. 卜 1“〉ке без особого напоминания будем говорить о се-
мействе языков как о индексированном семействе рекурсивных языков.
Теперь давайте введем определение представления данных о языке.
Определение 7.11. Полным представлением языка 丄 называется неограниченная последовательность пар, состоящих из слов и 0 или 1: (^{,厶), (侬2, /г), ...» т. е. {w\w = wh h= 1} = L и {w\w = =Wi, ti = 0} = Lc (=£* — L). Положительным представлением языка L называется неограниченная по- следовательность слов шь w^ ..., т. е. {⑪|© = ©J = =L. При этом допускается повторение слов в неограниченной последовательности.
Если полное представление может предоставить информацию о том, какому из языков принадлежит каждое слово, то правильное представление такой информации не дает.
Понятие машины выводов и сходимости (идентификации в пределе) определим так, как в разд. 7.2.
Определение 7.12. Скажем, что семейство языков Г = Lb 丄2,.…позволяет делать индуктивный вывод из полных (положительных) данных, если существует машина выводов, которая для любого полного (положительного) представления любого языка обеспечивает сходимость к /, такому, что L; = L/.
Голд показал, что индексированное семейство рекурсивных языков, как правило, позволяет делать выводы из полных данных, но не всегда позволяет делать выводы из правильных данных. Очевидно, что индексированное семейство рекурсивных языков Г = =Li,厶2,・.・ позволяет делать выводы из полных данных с помощью машины выводов, использующей метод перечисления, объясненный в разд. 7.2. Семейство языков Г называется сзерхограниченным, если средн всех ограниченных языков, включенных в Г, есть по крайней мере один неограниченный язык на 2. Следующая теорема, доказанная Голдом, —■ наиболее важный результат, полученный на раннем этапе исследований.
Теорема 7ЛО (Голд). Сзерхограниченное семейство языков не позволяет делать индуктивные выводы из правильных данных.
Доказательство. Используем метод от противного. Пусть F = L[,厶2, ——сверхограниченное семейство языков, а М ——машина выводов, делающая индуктивные выводы в Г из положительные данных. Пусть L — неограниченный язык в Г, ст = w\y 侬2,一口% речисление языка 厶,尸川 ——ограниченный язык, состоящий из первых п слов а. Обозначим через 丁 [〃] ограниченного подпоследовательность, состоящую из пер. вых п членов неограниченной последовательности т. Определим следующим образом положительное представление G/ каждого языка 匕.
Q = {叫}, поэтому б составим из бесконечного числа только 陋].Пусть & — наименьшее целое число, при котором М (ctj [CJ )=《некоторое выражение (индекс) Лр, а именно: если Л/ долгое время давать только 如I, то выход М будет сходиться к некоторому положительному целому числу у, и 厶=Q, поэтому пусть С[ — число данных, заданных до момента, когда ■М выдаст индекс / языка, равного 尸卜 Пусть сг2 — представление, состоящее из С( подряд идущих слов 侬I и бесконечного числа w2. Пусть С2 — наименьшее Целое число, большее &, при котором М (02^2])= =«некоторое выражение 尸2》.Затем аналогично опре- Делим ол и С!г.
Тогда предел 痂,который обозначим через о^, есть положительное представление L. При этом М пня Ug генерирует бесконечное число различных зы- выходных данных Л!(Og[&])'=人乂①[С{]), М(0g [С2]) — М (и? [&]), ..., но все они не являются выражениями L. Следовательно, М для Ug не обеспечивает сходимость. Это противоречит допущению о том, что М делает индуктивные выводы в Г нз положительных данных. (Конец доказательства.)
Из этой .теоремы следует, что семейства языков, которые позволяют делать индуктивные выводы из положительных данных, ограничиваются семействами, не являющимися сзерхогранргченными. Очевидно так- же, что даже семейства регулярных языков, находя- щиеся на верхнем уровне иерархии Хомского, не позволяют делать выводы из положительных данных. Зтот факт считают отрицательным с точки зрения применения индуктивных выводов. Однако ухудшение
возможностей индуктивных выводов из положительных данных по сравнению с выводами из полных данных и возможность делать выводы в некоторых интересных семействах ——это различные проблемы. Так, Англ юн не только доказал теоремы об особенностях семейств, которые позволяют делать выводы из положительных данных, но и показал существование не очевидных, но очень интересных семейств. Например, он открыл, что семейство образных языков позволяет делать выводы из положительных данных, что является очень важным результатом. Продолжая исследования Англюна, Синохара, Никс, 8нтке получили результаты, связанные с применением индуктивных выводов. Об индуктивных выводах из положительных данных подробно рассказано в следующем разделе.
ИНДУКТИВНЫЕ ВЫВОДЫИЗ ПОЛОЖИТЕЛЬНЫХ ДАННЫХ
Индуктивные выводы из положительных данных — это выводы из слов, принадлежащих некоторому языку, т. е. только из положительных примеров, эти выводы естественней, чем индуктивные выводы из полных данных, из которых можно использовать информацию о принадлежности слов языку. Это закономерно, хотя бы потому, что, скажем, при обучении по пр нм ерам совсем не обязательно давать ошибочные примеры. Однако, как следует из теоремы 7.10, при некоторых условиях существенно необходимы ошибочные примеры.
Прежде всего рассмотрим сложность индуктивных выводов из положительных данных. Пусть объектом выводов является семейство языков Г =厶卜 七2, • ■ • > Рассмотрим два следующих случая, когда предполо^ жение g, выданное в процессе индуктивных выводов из положительных данных о языке Л, неверное, т, ° 3 声 Lg:
Li — Lg 啜 0, II. Li ——Ls = 0. Назовем их ошибками первого и второго рода. При ошибке первого рода в положительном пред^ ставлепии Л/ обязательно обнаруживаются несколько
контрпримеров ①三乙一丄幻 которые показывают, что Lg — ошибка, поэтому можно сменить предположение на другое. В случае ошибки второго рода предположение назовем сверхобобщенным по сравнению с целевым предположением, другими словами, Li ^ Lg. Ls противоречит какому-либо положительному представлению 工в поэтому, исходя только из положительного представления, нельзя оценить, что g ——ошибка.
В отличие от этого полное представление позволяет указать такие ошибки, которые могут быть ошибками не только первого, но и второго рода. Следовательно, сложность индуктивных выводов из положительных данных обусловливают именно ошибки второго рода.
Ознакомимся с результатами, полученными Анг- люном.
Определение 7.13. Пусть Г =厶,厶,…一 семейство языков. Конечным свидетельством Li называется множество 7\, удовлетворяющее условиям:
Ti — ограниченное подмножество 3,
не существует Lh включающего 7\ и являющегося строгим подмножеством Lt.
Обратим внимание на то, что 乙一ограниченное подмножество Lit причем Li является наименьшим языком, включающим Т(.
Определение 7.14. Скажем, что семейство языков Г =厶卜七2,удовлетворяет условию 1, если существует процедура, которая для любого i перечисляет элементы конечного свидетельства 乙.
Теорема 7.11 (Англюн). Необходимым и достаточным условием того, что семейство языков Г = Ль 厶2, позволяет делать индуктивные выводы из положительных данных, является условие 1.
Доказательство. Прежде всего покажем, что условие 1 является необходимым условием для того, чтобы Г позволяло делать индуктивные выводы из положительных данных. Допустим, что машина зы- водов Л1 делает выводы из положительных данных в Г. Используя Л1, построим процедуру Q, удовлетворяющую условию 1. Пусть 2i,侬2, ... — перечисление элементов L(, а Ф1( Ф2,一все ограниченные последовательности, состоящие из элементов L/. Процедура Q начинается с шага 0.
Шаг 0: пусть и。——пустая последовательность, переходим к шагу 1.
Шаг п (п ^ 1): выдаем wn, пусть ап ~ an^wn. Проверяем, для всех ли /г = 1, 2,…равны М(ап) и 〃(仃几①为).Если обнаруживаем, что они не равны, то выдаем все элементы ①储 принимаем 0门=0凡①总 и переходим к шагу 〃 + 1.
Если предположить, что Q выполняет бесконечное число шагов, то Og — положительное представление L/, что" противоречит тому, что М не обеспечивает сходимость для Ug. Следовательно, пусть выполнение Q закончится на ^ шаге (при этом Q для веек 少=1, 2, ... проверит, равны ли Л1(и») и М®叫), и зациклится). Выходными данными Q будет ограниченная последовательность а^. Множество, состоящее из слов, включенных в о#, является конечным свидетельством L?. Дело в том, что в противном случае будет существовать /, такое, что 7\ 三厶^厶,и и” нельзя связывать с положительным представлением £,, но, с другой стороны, есть такое представление Л/, причем какие бы слова языка L, вне Gn ни задавались, выходные данные М не будут изменяться, начиная с Г, такого, что L^= L” и поэтому в конце концов М не сможет правильно делать выводы о Lz, что приводит нас к противоречию.
Наоборот, пусть справедливо условие 1. Построим машину выводов М. Пусть Si, S2, ..., $阵一 входные данные, полученные М до некоторого момента; представим их в виде S,4 = {s|s = s/, i=l, 2, ,.,, az}. M выдаст наименьшее целое число j, удовлетворяющее условию
Sr 三 4 и Т;三 S「 (a)
При этом Tj — перечислимое множество, но его не всегда можно вычмелить (другими словами, нельзя оценить, когда закончится перечиСгТение Л), поэтому пока еще нельзя утверждать, что М можно реализовать. Однако для облегчения понимания рассуждений допустим, что Т/ можно вычпелнть, п покажем, что М делает правильные индуктивные выводы из правильных данных о Г. При этом ясно, что важную
роль для устранения ошибок второго рода играет множество конечных св11детельстз, а именно: пусть при выводе Sn достаточно большое и включает Т/, тогда в этот момент у》ке нет ошибок второго рода. А ошибки первого- рода полностью исключены, если Sn большое, поэтому М обеспечивает сходимость к правильному предположению.
Для того чтобы не вводить допущение о возможности вычисления Т/, обозначим через Т『множество, полуденное при ограничении числа шагов вычислений методом перечисления 7; числом входных данных 几? и используем Т* вместо Т/. При этом может случиться, что не существует /, удовлетворяющее нашему условию, поэтому ограничим диапазон поиска / до числа п, и если до п такого / найдено не будет, то не будем заботиться о каких-либо выходных данных, но будем выдавать только то, что не противоречит, например, S# В результате, если заменить условие (а) на следующее условие (а‘), то можно получить искомую машину выводов М:
Sn 三厶 и (т;三 Sn или / > 几). (鼠)
(Конец доказательства.)'
Англюн рассмотрел несколько условий возможности делать индуктивные выводы из правильных данных. Ниже мы рассмотрим условие 2. Другие условия можно узнать из его работ.
Определение 7./5. Скажем, что семейство языков Г =厶 1,乙2, ■ • ■ удовлетворяет условию 2, если для любого непустого ограниченного множества S число языков в Г, включающих S, ограничено, а именно:
С (S) = {厶]S 三乙 н 3/ £ — &}
состоит из конечного числа языков.
Теорема 7.12 (Англюн). Если семейство языков 「=厶,丄2,…удовлетворяет условию 2, то Г иозво- ляет Делать индуктивные выводы из правильных данных.
Доказательство. Достаточно показать, что семсй- ство языков Г, удовлетворяющее условию 2, удовлетворяет и условию 1, Как правило, для любых,,/ не
всегда можно вычислить, выполняется ли условие 厶/ ^ £;. Для того чтобы облегчить рассуждения, допустим, что оценку L/^Lg можно вычислить. Рассмотрим следующую процедуру Q. Пусть для Q заданы входные данные 厶 Процедура начинается с шага 0.
Шаг 0: выдаем любое слово w^ языка L, и принимаем 4 = (г^}・ Переходим к шагу 1.
Шаг п (п^ 1): организуем поиск /, такого, что Л„ ^ Л/ ^ Lf, если / найдено, то выдаем любое слово wn из L — L/, принимаем А计】=А〃 U {侬门} и переходим к шагу 〃 十 L
Покажем, что такая процедура Q выполняет перечисление элементов конечного свидетельства £:. Очевидно, что на некотором шаге Q терпит неудачу при поиске / (т. е. зацикливается), при этом оиа не переходит к следующему шагу. Дело в том, что Г удовлетворяет условию 2, и поэтому в Г существует только конечное число языков, включающих wn, которое Q выдала в самом начале. Пусть последним процедура Q выполняла шаг N, тогда ясно, что 4川一 конечное свидетельство Li.
В этом рассуждении мы считали, что возможно вычисление оценки L^ L「и для снятия этого допущения можно следующим образом изменить шаг п процедуры (/г3 1). Пусть sb S2,…一рекурсивное перечисление элементов W*, что обозначим в виде 丄У小= LU{si,.…Sm}.
Шаг n (〃2 1): организуем поиск пары целых положительных чисел (厶 е), таких, что Ап ^ А/ н 厶片三丄严;если / найдено, то выдаем любое слово wtl из £,向一U叫 принимаем 儿+i=/UU {叫}"哈 реходим к шагу 几 + 1.
Здесь “夕一ограниченное множество; которое можно вычислить, и если обратить внимание^ на то, что порядок поиска пар (/,"?) позволяет HaiiTii все такне пары, то легко показать, что процедура Q правильно перечисляет элементы конечного свидетельства 厶(Конец доказательства.)
Условие 2 — это достаточное условне возможности делать индуктивные выводы из правильных данных, можно также доказать, что необходимого условия не существует. Однако условие 2 в отличие от условия 1 легко использовать из-за того, что оно не связано с индексами. На практике, используя теорему 7.12, можно показать возможность делать индуктивные выводы из правильных данных о многих семействах языков, например о семействе образных языков, В этом смысле условие 2 достаточно важно.
Рассмотрим кратко индуктивные выводы из правильных даниых о семействе образных языков. Среди всех семейств, которые позволяют делать индуктив^ ные выводы из правильных данных, семейство образных языков — наиболее важное; это семейство было введено Англюном. .
Прежде всего дадим основные определения.
Пусть X = {工1,尤2, .. •}—счетное множество, состоящее из символов, отличных от S. Элементы S назовем константами, а элементы X—переменными. Образ — это последовательность символов длины больше 1, состоящая из констант и переменных. Языком L(p), отражающим образ р, назовем набор последовательностей констант, полученных путем замены всех переменных в р на произвольные непустые последовательности констант.
Например, пусть 2 = {0, 1}, X = {尤,у, ...}. р = =ООх ——образ, a L (〃)一 набор последовательностей длины более 3, в начале которых находится 00, а затем идет последовательность из 0 и 1. Если « =尤尤, то Л(7)—это набор последовательностей, в которых дважды повторяется непустая последовательность, состоящая из 0 и 1.
Покажем, что семейство образных языков позволяет делать индуктивные выводы из правильных данных.
Теорема 7.13 (Англюн). Семейство образных языков позволяет делать индуктивные выводы из правильных данных.
Доказательство. Покажем, что удовлетворяется ус- ловне 2. Пусть w——произвольное слово, р ——произвольный образ. Переход к переменным только огра-
ничивает непустые последовательности констант, поэтому если w^L(p)t то \p\^\w\t Здесь \р\ обозначаем длину образа р, включая переменные. Если при замене имен переменных образ р будет равен образу q, то L(p)= L(q) (например, если р = 03х, 9 = 0贝У,то L(p) =£(?)). Следовательно, число образов длины, меньшей |w|, ограничено, и если игнорировать замены имен переменных, то, очевидно, будет ограничено число слов, которые эти образы выражают. Поэтому для любого непустого ограниченного множества слов S ограничено число слов-образов, которые включены в S. Другими словами, семейство образных языков удовлетворяет условию 2. По теореме 7.12 это семейство позволяет делать индуктив* ные выводы из правильных данных. (Конец доказательства.)
Об образных языках написано очень много, и поэтому подробное их обсуждение невозможно, отме- тим лишь, что они не только позволяют делать индуктивные выводы, но и имеют важное значение с точки зрения различных применений. Частично об их применении мы ознакомимся в следующей главе. Читатели, интересующиеся этими проблемами, могут посмотреть работы Синохара и Янтке.
ИНДУКТИВНЫЕ ВЫВОДЫВ ФОРМАЛЬНЫХ СИСТЕМАХ
В разд. 7.6 мы увидели, что образные языки, введенные Англюном, позволяют делать индуктивные выводы из правильных данных. Существуют ли помимо этих языков другие интересные семейства языков, обладающих таким свойством? Разумеется, теоретически существует бесконечно много семейств языков, удовлетворяющих условию 1, проблема лишь в том, как указать их примеры. Такие примеры указал и сам Англюн, а в последние годы Синохара предложил естественное расширение образных языков до языков^ определяемых с помощью формальных систем, и по* казал, что и они позволяют делать индуктивные выводы из правильных данных. В данном разделе ознакомимся с его результатами.
Формальные языки в большинстве случаев определяются с использованием грамматики и автоматов, но можно также их определять с помощью формальных систем, введенным Смаллианом. Понятие формальной системы основано на следующем способе математического определения множеств:
а есть элемент S;
если 尤 ——элемент S, то f(尤)также элемент S;
элементом S является то и только то, что после конечного применения операций (1) и (2) остается элементом S.
Арнкава теоретически рассмотрел языки с позиций такой формальной системы. Он ввел простую формальную систему (SFS) как формальную систему с ограничениями, и показал, что семейство языков, определяемое через SFS, больше, чем семейство контекстно свободных языков, но меньше, чем семейство контекстно-зависимых языков.
Кроме того, им введена примитивная формальная система (PFS), которая добавляет к SFS новые ограничения; было показано, что семейство языков, опре* деляемое через PFS, также позволяет делать индуктивные выводы из правильных данных. PFS ——это формальная система, состоящая только из двух шагов: основного шага и шага индукции. Образные языки Англюна можно определить с помощью наиболее простой PFS, состоящей только из основного шага, поэтому семейство языков, определяемого таким образом, является естественным расширением образных языков.
,7.7.1. ФОРМАЛЬНЫЕ СИСТЕМЫ И ЯЗЫКИ
Пусть 2 ограниченное множество символов, X ® D — счетные множества символов и пусть' 2, X и D не имеют общего подмножества. Элементы W, X н D назовем соответственно константам% переменными и предикатами, для их обозначения используем буквы а, “ % •,芻 у, г, Xi, х2, • •. и Р, Q, R, Pi, Р2, • • • • Элементы (S U^)*> а именно ограниченные последовательности, состоящие из переменных н констант, назовем термами (терм — это понятие, совпадающее
с образом, введенным в разд. 7.6). Если Р, В, • Рп — предикаты, а £,九,必£门—термы, то запись Р(£)"尸 1(介)& … &Pn(tn) назовем формулой. 尸(f) назовем заключением, а все Р^(%)—предусловиями. Формулу при 几=0 назовем атомарной формулой и сократим ее до знака 《—》.Формальная система есть ограниченное множество формул.
Пусть 0 — гомоморфное отображение (в смысле сцепления последовательностей символов) терма в терм. Отображение t с помощью 0 обозначим как /0. Отображение, которое для любой константы а дает а = а8, т. е. заменяет только переменные, назовем подстановкой. Для формулы F = P(f)— 一p1(%)& … &巳(方门) определим 尸 6 = P(笛,一 ^-Pi(/iO) ...Pn{tr3Y
Определение 7.16. Пусть £= {尸i,...,尸巾}——формальная система. Формула F =力(/) —尸1(幻& …• ... &Pn_[ (tn~\) называется доказуемой из Е, если справедливо любое из следующих условий:
F является элементом £;
существует некоторая подстановка 0 и формула f4, доказуемая из Е, такие, что F = F'6;
две формулы P(fj—P](ii)& … &Pn-i{tn-\ )• •&夕雇(/门)и Dn(tn) одновременно доказуемы из £ (метод трехэтапного вывода).
Определение 7.17. Определим следующим образом язык с помощью формальной системы Е и предиката Р:
L(£\ P)~{t\t слово, Р (/) — доказуема из £}.
В случае когда Е содержит только один предикат, 反且# краткости введем обозначение Л(Е).
Если формальные системы Е и Е‘ совпадают с точностью до замены переменных и перестановки предусловий, то назовем их эквивалентными. Как следует из определения, если Е и Е‘ эквивалентны, то для любого предиката Р Z (Е, Р) = L(E\ Р).
Пример /
Пусть £ = {P{axbx)}. L(E)= {со|со = axbx, х 三 £*; 一 образнь他 язык, расширенный за счет подстановки пустых последовательностей вместо переменных в образе axbx (Синохара).
Е={Р(&); ?(ах)*-Р(х), Q(bxbxbx)^r-P(x)}. L(E,P)= {。口 〃^0, L(E, Q) = {banbanban\n^O}.
7.7.2. ОГРАНИЧЕНИЯ ФОРМАЛЬНЫХ СИСТЕМ
Рекурсивно перечисляемый язык можно определить с помощью формальной системы. Следовательно, для того чтобы обсуждать возможность выводов из правильных данных, необходимо ограничить понятие формальной системы. Арикава предложил простую формальную систему (SFS), в которой аргументы предусловий формулы и только они появляются в качестве переменных в заключении.
Определение 7.18. Формальная система Е называется простой, если все формулы Е имеют вид P(f(xi, хп))^Р\ (%])& ••• &Р〃(尤 〃)• Здесь £(,,.,. • Хп)——терм, содержащий по крайней мере 〃 переменных 尤1,...,尤д
Арикава показал, что язык, определяемый с помощью SFS, рекурсивный, а также что с помощью SFS можно определить контекстно-свободные языки. Семейство последних является сверхограниченным, поэтому семейство языков, определяемых с помощью SFS, также сверхограннчено, но не позволяет делать индуктивные выводы из правильных данных. Следовательно, дадим новые ограничения и введем примитивную формальную систему, затем обсудим возможность индуктивных выводов из правильных данных для таких систем.
Определение 7.19. Пусть £ — это SFS. Е называется примитивной, если она состоит из двух формул: P(fi) и Р(%(勺х“))—Р(修)& …&Р(х"・ Первая называется базовым шагом, а вторая — шагом индукции.
PFS содержит только один предикат, поэтому ниже этот предикат будем обозначать просто Р. Кроме того, в PFS введено ограничение на подстановки в переменные пустой последовательности. В связи с атим обратите внимание на то, что в определении образного языка также были запрещены подстанов- ки в переменные пустой последовательности*
Определение 7.20. Пусть X = {丸 &, ...}. Определим следующим образом канонические формы термов, формул и PFS:'
скажем, что терм f имеет каноническую форму, если он включает п переменных 修,...,хл и для любого f==l, . .., п — 1 самый левый х( появляется левее, чем левый x(+i;
скажем, что формула P(t (хп, хм))<- —Р (工i J & • •・ &Р (尤£八) имеет каноническую форму, если терм f(x“, ..., %,注)имеет каноническую форму и 1 & 小 V …V,〃;
скажем, что PFS Е имеет каноническую форму, если формулы £ имеют каноническую форму.
Из зтого определения ясно, что для любой PFS £ существует единственная каноническая форма, тождественная Е.
Пример 2
Пусть W = {о, b}, X = {%, у, ..,}. Следующие системы являются PFS:
1) E^lPiaxbx), Р(ух)^Р(х)&Р(у)}\
2)与=仍(。),P(kv)-P(»};
Ез = {Р(ахЬу), Р{хх)^Р(х)}.
Е] не имеет канонической формы. Е\ == ^P(axbx)t Р (ху) <- Р (х) &Р (у)} — уже имеет каноническую форму и тождественна Е. £(£\) включает aaba, abbb, aabbab, aabaaaba, aabaabbb^ abbbaaba, abbbabbb, Подстановки пустой последовательности в переменные запрещены, поэтому ab не принадлежит L{E{). £2 и Ез имеют каноническую форму,厶(七2)= {а, аа, аааа, аааааааа, …} = {а叫%》о} не является контекстно-свободным языком. 2(?з) = L({P(axby)}) — образный язык, определяемый образом axby.
В случае когда шаг индукции в PFS Е имеет вид 尸(х)—Р(х), этот шаг избыточен в том смысле, что Л(Е) можно определить только с помощью базового шага Е. Кроме того, если шаг индукции избыточен, то соответствующий язык является образным. В данном примере L®) не является образным языком. Следовательно, ясно, что семейство языков, определяемое с помощью PFS, строго включает образные языки.
九九3. ИНДУКТИВНЫЕ ВЫВОДЫ ИЗ ПОЛОЖИТЕЛЬНЫХДАННЫХ О ФОРМАЛЬНЫХ СИСТЕМАХ
Покажем, что семейства языков, определенных выше с помощью PFS, позволяют делать индуктивные выводы из положительных данных.
Прежде всего покажем, что подобные выводы позволяют делать семейства языков, определенные с помощью PFS, которая не содержит переменных в базовом шаге. Для доказательства используем условие 2\ которое получим из условия 2 ——достаточного условия возможности выводов из правильных данных. Условие 2 имело вид «Для любого непустого ограниченного множества S число языков, включенных в S, ограничено», а это по существу требует, чтобы «Для любого слова w число языков, включающих w> было ограничено». Несколько ослабим это условие: «Для любых различных слов Wi и w2 число языков, одновременно включающих wr и w2t ограничено»,— это и есть условие 2‘.
Определение 7,21. Скажем, что семейство языков Г = Ai,厶2, ••• удовлетворяет условию 2‘, если для любых различных последовательностей символов W\ И@2
С(3], иу2) = {L\wt L и 如2 三乙 и 三力 L =厶} состояло из ограниченного числа языков.
Лемма 6.14. Если семейство Г = Li, £?, ... удовлетворяет условию 2‘, то Г позволяет делать индуктивные выводы из правильных данных.
Доказательство. Аналогично теореме 7.12.
Теорема 7.15. Семейство языков, определенных с помощью PFS, базовый шаг которой не содержит переменных, позволяет делать индуктивные выводы из правильных данных.
Доказательство. Пусть Е — PFS, P(w) — ее базовый шаг. w — слово (не содержащее переменных). Пусть L(E) включает два различных слова 叫 и w^ Есть только базовый шаг, поэтому Р (^) не доказуемо; если по крайней мере для одного из w{i w2 не использовать шаг индукции, то недоказуемо, что они есть элементы L(E). Подстановка пустой последователь- ности в переменные невозможна, в связи с этим дли-
на аргументов в заключениях базового шага и шага индукции меньше длин W\ и w2i а число предусловий также меньше длин w\ и w2. Если игнорировать тождественные системы, то таких PFS существует ограниченное число, поэтому семейство языков, определенное с помощью PFS, базовый шаг которой не содержит переменных, удовлетворяет условию 2‘. Следовательно, по лемме 7.14 теорема доказана.
Приведем теперь доказательство целевой теоремы. Для этого используем теорему 7.11, доказательство- которой очень похоже на доказательство того, что семейство сумм образных языков позволяет делать индуктивные выводы из правильных данных (Синохара). Используем также следующие две леммы, доказательства которых опустим.
Лемма 7.16. Пусть Е —PFS,尸⑴—ее базовый шаг( тогда если S°(E) — это множество самых коротких слов, принадлежащих L(E), то S°(E) = L({P(f)})A ° XI И 1)
Лемма 7.17. Пусть Еь 邑一PFS. Если So(£"三 三丄(七2)三丄(Ei), то базовые шаги £\ и &, если не Читать замены имен переменных, совпадают.
Теорема 7.18. Семейство языков, определенных с помощью PFS, позволяют делать индуктивные выводы из правильных данных.
Доказательство. Можно сделать, если показать, что следующая процедура Q перечисляет элементы конечного свидетельства PFS. Входными данными для Q служит PFS, а 尸(/)—ее базовый шаг. Пусть 耽, w2, ... — перечисление непустых слов.
procedure Q (Е)
begin
выдать все элементы из S。(Е)
T:=So(E)
i:= 1
while 叫已 L (E) — L ({P ⑴}) do i + 1
выдать wi
T:=TUW/}
I) |/| 一 длина терма, Г"—последовательность символов длиной 力 一 Прим, ред.
H^{F\F^P(tf (х„%“))<-Р (")&•・•&「(j),
尸一каноническая форма, | tf (xi, ..., xn) | & | 叫[, TML({P(f),尸})}
for /!= 1 to OO do
if 叫三 £ (E) then begin
wB]耽生厶({P(力F})}
0 then
.выдать Wi T:=U{2力 8:= 8 一 g end end
end
Процедура Q прежде всего выдает все короткие слова So(E) языка А(Е), по лемме 7.16 So(E) —ограниченное множество, которое можно вычислить. Следующий оператор while оценивает, избыточен ли mai индукции £; если избыточен, то процедура зацикливается, но в этом случае SQ(E)— конечное свидетельство языка L(E); если не избыточен, то оператор while всегда закончится, будет выдано слово wiy про которое, не используя шаг индукции, нельзя доказать, что оно принадлежит £(Е), затем вычислится В. Если язык L(E') PFS Е‘ будет включать все слова, которые выдаст процедура Q до этого момента, то базовый шаг его системы будет тождественен 尸(/), как следует из леммы 7.17, Следовательно, введем в В все такие шаги индукции Е, Обратим внимание на то, что 8 ограничено, поэтому легко показать, что процедура Q будет перечислять элементы конечного свидетельства. (Конец доказательства.)
ЭФФЕКТИВНОСТЬ ОТРИЦАТЕЛЬНЫХ ДАННЫХ
В разд. 7.5—7.7 главным образом обсуждались индуктивные выводы из правильных данных. Как показы- вает теорема 7.10, из полных данных, использующих ° положительные и отрицательные данные, можно делать индуктивные выводы, но существуют семей-
ства языков, которые не позволяют делать индуктивные выводы только из положительных данных. В этом смысле следует считать отрицательные данные полезными для индуктивных выводов, поэтому ниже несколько более подробно остановимся на роли слов, которые не принадлежат языкам. Индуктивные выводы из отрицательных данных можно определить по аналогии с выводами из положительных данных, но можно ли с помощью семейства языков, которые позволяют делать индуктивные выводы из положительных данных, делать то же самое из отрицательных данных? Существуют ли семейства языков, которые не позволяют делать выводы из положительных данных, но позволяют делать выводы, когда к положительному представлению добавляется некоторое число отрицательных данных? Приведем решения подобных проблем. Для этого прежде всего рассмотрим индуктивные выводы из отрицательного представления, определяемого следующим образом.
Определение 7.22. Отрицательным представлением языка L называется неограниченная последовательность слов 侬h w2, -. -, или {да|^ =叫} = Lc.
Возможность делать индуктивные выводы из отрицательных данных определим по аналогии с выводами из положительных данных.
Для семейства языков Г = Li, L2f • • • обозначим через Гс семейство, состоящее из дополнительные множеств d, Lt Тогда индуктивный вывод из отрицательных данных о языке L можно отождествить с индуктивным выводом из положительных данных о его дополнении Lc. Короче говоря, если семейство Г позволяет делать индуктивный вывод из отрицательных данных, то Гс позволяет делать индуктивный вывод из положительных данных, обратное также справедливо. Следовательно, для того чтобы показать, что некоторое семейство языков Г позволяет делать нндуктивные выводы из отрицательных данных, очевидно, достаточно показать, что семейство Р〈 состоящее из дополнений языков, удовлетворяет условиям 1 или 2.
Но может ли семейство языков, которое позволяет делать индуктивные выводы из положительных дан-
ных, делать выводы и из отрицательных данных? Следующая теорема показывает, что это не так.
Теорема 7.19. Семейство языков Ф = {厶三 W*|L — непустые ограниченные} позволяет делать индуктивные выводы из положительных данных, но не позволяет делать индуктивные выводы из отрицательных данных.
Доказательство. Очевидно, что ф позволяет делать индуктивные выводы из положительных данных. Фактически, каждый язык является собственным множеством конечных свидетельств.
Пусть Ф позволяет делать индуктивные выводы из отрицательных данных. Тогда Фс позволяет делать индуктивные выводы из положительных данных. Пусть L ——любой непустой ограниченный язык. По теореме 7.11 для языка Lc должно существовать конечное свидетельство Т, удовлетворяющее условиям:
Т есть ограниченное подмножество Лс;
в Фс не существует А,с, которое включало бы Т и являлось подмножеством Lc.
Пусть Т — любое множество, удовлетворяющее (1). £ ограничено, поэтому Lc неограничено. Lc — Т не пустое. Пусть w любое слово из Lc — Т. Тогда ЛЛ = L U {^} ограничен, и поэтому является языком в Ф, при этом
T三严三L*
Следовательно, Т не удовлетворяет условию (2). (Конец доказательства.)
Далее рассмотрим проблему: существует ли семейство языков, которое позволяет делать индуктивные выводы и из положительных, и из отрицательных данных? Очевидно, что ответ на этот вопрос «да》, поскольку таким семейством является семейство, состоящее из ограниченного числа языков. Как было сказано сразу после доказательства теоремы 7.12, большинство семейств языков, которые позволяют делать индуктивные выводы из положительных данных, и прежде всего образные языки, удовлетворяют условию 2. Следующая теорема показывает, что большинство таких языков позволяет делать индуктивные выводы и из отрицательных данных.
Теорема 7.20. Если семейство Г, состоящее из языков не над 2*, удовлетворяет условию 2, то Г позволяет делать индуктивные выводы из отрицательных данных.
Доказательство. Пусть семейство языков Г = Lb Л2, ... (^/ ¥= 2*) удовлетворяет условию 2. Тогда достаточно показать, что Гс удовлетворяет условию 1. Другими словами, покажем, что для любого i существует процедура, которая перечисляет элементы множества Ti (конечного свидетельства L(, которое удовлетворяет следующим условиям:
Л — ограниченное подмножество Z/;
не существует /, такого, что L/ включает Тг и является строгим подмножеством Lf.
Рассмотрим процедуру Q, определенную следующим образом. Q начинается с шага 0.
Шаг 0: пусть о, w ——любые элементы соответственно "Li. Выдаем w, принимаем Ai = {侬} и переходим к шагу 1.
Шаг п (〃》1): организуем поиск целого положительного / и слова х, таких, что о w £厶 Ап 三 Ц,х 三 w 片一£:, если они найдены, то выдаем х, принимаем 4屮 =Ап U {х} и переходим к шагу 几 + 1.
Ап — это элемент Аь который Q выдает до шага п. Если Ап еще слишком мало, чтобы быть конечным свидетельством 厶詳 то существует /, удовлетворяющее условию Ап 三 L;^ Lf. Не всегда можно вычислить, будет ли L^ Lt но такое / удовлетворяет условию
A/ 一 L沁0.
Кроме того, из того, что о w L 三 L/, имеем
V三,.
Г удовлетворяет условию 2, поэтому существует ограниченное число языков, включающих и. Если на это обратить внимание, то легко показать, что будут перечислены элементы множества конечных свидетельств G. (Конец доказательства.)
Непосредственным стимулом дискуссии о возмон
мости индуктивных выводов из отрицательных данных послужила проблема: «Насколько возрастут возможности вывода по сравнению со случаем только положительного представления, если к нему добавить только одно отрицательное данное?》Определим следующим образом представление, в котором к положительному представлению добавлено несколько отрицательных данных, и аналогично определим индуктивный вывод из такого представления.
Определение 7.23. Положительным представлением с добавлением по крайней мере гг отрицательных данных (ниже сокращенно РРп) называется неограниченная последовательность пар из слов и 0 или 1 (®,厶),(耽,向,… или (w|w = wi, h = 1} = L, [w\w = wi,力=0)三 /Л и #{⑪Iз =侬厶 ti = 0} ^ n. Здесь #S означает число элементов множества S.
Теорема 7.21. Если семейство языков Г = Li, Л2,... позволяет делать индуктивные выводы из РР注,то Г позволяет делать индуктивные выводы из положительных данных.
Доказательство. Допустим, что машина выводов М делает индуктивные выводы из РРп для Г. Покажем, что, используя Л1, можно построить машину выводов ЛГ, которая будет делать индуктивные выводы из положительных данных о Г. Пусть входные данные в ЛГ — w^ w2, ..., wm. M‘ строится следующим образом:
「обнаружим наименьшее /, при котором для всех 龙=lt 2t t. ., rn Wk ^ l-i, а получим /2 различных слов Ху, %2, • ■ •, Хц、не принадлежащих Lt. Зададим М п отрицательных данных (修,0), (х21 0), ..., (х小 0); а вслед за ними m положительных данных (^1? 1), (侬 2, 1), (如 m, 1). При этом выходные данные g машины М будем считать выходными данными М\ J
Пусть(7 =叫,g, …一положительное представление языка £з Если доказать, что Mf обеспечивает сходимость и к j, такому, что 厶=L, то теорема будет доказана.
Зададим ЛГ в качестве выходных данных o[m] = w^ w2,…,wm. Г — индексированное семей- ство рекурсивных функций, поэтому при вычислении можно обнаружить Lt^ включающий все входные дан-
ные. Кроме того, Г позволяет делать индуктивные выводы из РРп, поэтому существует по крайней мере /г слов, не принадлежащих L; следовательно, при вычислении можно получить xj, х2,….,尤曲 Данные, которые ЛГ передает в М,— это начальная часть некоторой последовательности РР" языка Lt, поэтому выходные данные М определяются как обычно. Следовательно, и выходные данные ЛГ будут определяться как обычно. При этом Mf добавляет к полученным положительным данным непротиворечащие им отрицательные данные, но не передает их в М, поскольку есть вероятность, что выходные данные 而 будут не определены в случае, когда входные данные, поступившие в М, не являются представлением РРЛ языка в Г. Пусть t — наименьшее целое число, удовлетворяющее условию Li 弓 L. Тогда если соответствующим: образом увеличить т, то и М' обнаружит такое t. Различные слова х】,Х2, .. ■ , хя, не принадлежащие 厶з не принадлежат также и AZ) поэтому ^ =(хь 0), (%2, 0), ■ ■ •, (х〃, 0), (^ь 1),(如2,1), ••• будут являться представлением РРп языка 厶订 и М для и' обеспечит сходимость к /, такому, что 厶=厶八 Следовательно, М' для о также обеспечит сходимость к /, такому, что Lj = Li. (Конец доказательства.)
Из теоремы 7.21 следует, что ограниченное число отрицательных данных не эффективно для нндуктив- ных выводов. Это доказательство основано на факте,, что п отрицательных данных можно построить (в пределе) из положительного представления. Известно, что возможность делать индуктивные выводы не означает, что всегда можно делать непротиворечивые и сохраняющие свойства языков индуктивные выводы (Англюн). Построение машины выводов ЛГ в теореме 7.21 сохраняет непротиворечивость и свойства машины Л4, поэтому ясно, что в случае непротиворечивых и сохраняющих свойства языков индуктивных выводов ограниченное число отрицательных данных также не эффективно. Однако объем вычислений в машине выводов ЛГ больше, чем в Л4, поэтому отрицательные данные вряд ли эффективны и с этой точки зрения. Хотя эту проблему еще предстоит обсудить.
ГЛАВА 8
СИНТЕЗ ПРОГРАММ ПО ПРИМЕРАМ
С Аракава, М. Харагути (Университет Кюсю)
Использовать теорию индуктивных выводов, рассмотренную в предыдущей главе, в чистом виде зачастую неэффективно. Поэтому предложены специальные подходы для конкретных применений. Выберем примеры таких подходов из области автоматического синтеза программ и ознакомимся с результатами исследований в этой области. Особое внимание уделим теоретическим результатам, полученным Шапиро, поскольку есть возможность их практического применения. Кроме того, кратко затронем вопросы совершенствования этой теории.
АВТОМАТИЧЕСКИЙ СИНТЕЗЛИСП-ПРО ГРАММ
Автоматическим синтезом программ по примерам (программированием по примерам) называется процедура создания программ по примерам входных и выходных выражений и процесса выполнения (трассировки) .Примеры, которые задаются такой процедуре в качестве входных данных, называют спецификацией. В общем случае примеры содержат только «частично ограниченную информацию» о целевой программе, поэтому благодаря 《показу》 подобной процедуре синтеза неограниченного числа примеров можно делать индуктивные выводы в смысле, объясненном в предыдущей главе.
При грамматическом выводе примерами служат последовательности символов. С другой стороны, в проблеме автоматического синтеза ЛИСП-программ примеры имеют структуру данных, которая называется S-выражением. Главная цель данного раздела—изучение методологии индуктивных выводов по таким примерам.
Прежде всего поясним указанную выше проблему 氏 驮弋尸危口山ем примере. Допустим, существует пара 〈X,У>5-выражении, таких, что X 今 У. Здесь X иитеп- претируется как входное, а У—как выходное выражение. Пусть产
(ABC D)^((A) (В) (С) (D))
—пара S-выражений; тогда рассмотрим задачу вывода 《?》,если в паре S-выражений
(А В С D Е)今?
неизвестно выходное выражение. С. Харди создал компьютерную модель GAP (обобщенный автомати- веский программист), предназначенную для подобных выводов, т. е. для решения задачи, с чем ассоциировать 《?》после просмотра нескольких примеров. В об- тем случае для индуктивных выводов необходимо кметь две процедуры: процедуру генерации гипотезы из множества примеров, являющихся предпосылками вывода, и процед)фу проверки, выводятся ли эти предпосылки логически из гипотезы. GAP также построена из этих двух процедур.
Прежде всего GAP, используя эвристический метод, генерирует из пары заданных S-выражений в качестве программы-гипотезы скиммер 】),ассоциирующийся с некоторой «подсказкой». При этом предполагается, что подсказки — это априорные знания об S-выражениях и ЛИСП-программах, которые предварительно накапливаются в некоторой базе данных. Затем благодаря проверке этой программы-гипотезы с помощью дедуктивной ЛИСП-системы она преобразуется в окончательную ЛИСП-программу. Поясним действия GAP в случае приведенных выше S-выражений.
Инициируется подсказка, которая обращает внимание на то, что длины списков (А В С D) и ((А) (В) (С) (D)) в паре
(ABC D)今((А) (В) (С) (D))
D От английского глагола to skim (скользить, бегло просматривать) .—Прим, персе.
равны и генерируется программный скиммер
(LABEL SELF (LAMBDA (X)
(COND ((ATOM〈FARTOF X〉)NIL)
(T (CONS〈FORM X) (SELF (CDR X)))) )))
Здесь SELF — имя целевой программы, a (FORM X>, 〈PARTOFX〉——неизвестные части. Используя дедуктивную ЛИСП-систему, GAP оценивает этот скиммер для конкретного S-выражения (А В С D). Обнаружение неизвестных символов, скажем〈FORMX〉,с помощью традиционной ЛИСП-системы заканчивается неудачей или ошибкой, а в ЛИСП-системе GAP эта операция активно используется, при этом приобрел тается информация о неопределенных частях. Например, для
Х = (А В С D)
путем сопоставления с образцом уточняется, что
〈FORMX〉= (A),
SELF [(В С D)] = ((B) (С) (D)).
Продолжая генерацию скиммеров на основе подобных подсказок до тех пор, пока не будут оценены неопределенные части, получаем окончательную ЛИСП-про* грамму. В данном примере
(LABEL SELF (LAMBDA (X)
(COND ((ATOM X) NIL)
(T (CONS (LIST (CAR X))
(SELF (CDR X)))) )))
Применив эту программу к еще одному S-выражению (А В С D Е), GAP возвращает результат вывода
? = ((А) (В) (С) (D) (Е))・
Возможности системы GAP главным образом зависят от набора подсказок. Однако в отличие от традиционных индуктивных выводов эта система может рассматривать подсказки, тесно связанные с конкретной
предметной областью (ПО) t например, S-выражениями, в чем ее главная особенность. В этом смысле GAP является системой индуктивных выводов, использующей специфичные знания ПО.
В случае когда заданы несколько примеров, естественно рассматривать выводы о структуре управления ЛИСП-программы на основе анализа структур— нь!Х связей между примерами, другими словами, методом «управления от данных». С помощью этой стратегии Саммерс создал систему синтеза ЛИСГЬ программ по примерам THESYS. В этой системе основные операторы ЛИСПа ограничены операторами cons, cdr, car, atom, запрещено использовать eq, поэтому рассматриваются только ЛИСП-программы, преобразующие структуры (S-выражения) в другие структуры. Кроме того, с целью упрощения анализа структур примеров допускается, что в ограниченном множестве пар S-выражений, заданных системе THESYS,
Е = {а,=>В,:1Х「К/2}
множество, состоящее нз входных s-выражений,
Е' = {“: w〃}, строго упорядочено: s-выражения в нем связаны отношением «<». Например, входные s-выражения в множестве
Е = {()в(),А»((А)),(В А)今((В)(А))} удовлетворяют следующему отношению порядка:
()<(А)<(ВА).
Используя подобное строго упорядоченное множество примеров, THESYS сначала генерирует предикаты ЛИСПа для распознавания каждого входного S-выражения. В данном примере для ( ), (А), (В А) генерируются
Pi [R = atom [х],
р2 [х] = atom [cdr [х]],
Рз [х] = atom [cdr [cdr [х]]].
9 С. Осуга, Ю. Саэки
Далее для каждого входного и выходного выражения множества Е рассматривается представление выход- ного S-выражения через входное S-выражение. Например, в случае (А)今( (A)) обращается внимание на то, что
((A)) = cons [(A); nil],
кроме того, заменяя (А) на переменную, генерируется М-выражение
h Iх] ~ cons lxJ nil].
Выражения 力 называются фрагментами. Для {), (В А) аналогично образуются фрагменты
R 印= nil;
/3 [х] = cons [cons [car [x]; nil];
cons [cdr [x]; nil]].
Используя pt [x], fi [x], можно получить программу
/И = [Р1И-*ЛИ;
小[出f %印;
Р3[灯f % [尤]],
которая строго соответствует данному множеству примеров Е. Итак, THESYS обнаруживает рекуррентные отношения между 力[%],厶[尤],кодирует их в виде рекурсивных вызовов функций ЛИСПа. Для обнаружения рекуррентных отношений используется метод, подобный вычислению разности между натуральными числами. Поскольку объектами вычисления разности являются М-выражения, используется операция унификации подвыражений выражений F и G. Напри” мер, для
/2 И = cons [х; nil],
f3 [х] == cons [cons [car [х]; nil];
cons [cdr [x]; nllj]
^2 [cdr [x] ] совпадает с подвыражением cons [cdr [x]; nii] фрагмента f3 [x], поэтому в результате вычисле-
ния разности получаем
% [х] = cons [cons [car [х]; nil]; f2[cdr[x]]].
Для предикатов используется аналогичная операция, например, получаем'
P3W = p2[cdr [х]].
Принцип вывода THESYS. Пусть для фрагментов Pt [^], ft [х] (^ ^ t ^ п) справедливы рекуррентные отношения
3+1 [%]=尸[居 Л [^]]>
唄1印=Р团Pi W L
Тогда делается вывод, что указанные выше равенства справедливы и для f =々,...,п, ... . При этом F, Р — М-выражения, не зависящие от 厶
В соответствии с этим принципом вывода рекур^ рентные отношения представляются через функцию 〃 и получается ЛИСП-программа
f [х] = [atom [х] f nil;
и [х] = [atom [cdr [х] ] —> cons [х; nil];
/ —> cons [cons [car [x]]; nil];u[cdr[x]]].
Таким образом, используя разность натуральных чисел и подобие, THESYS реализует синтез программ по примерам как вполне обоснованный логический вывод. В случае когда не удается найти разность выражений, THESYS прекращает обработку и не приходит к какому-нибудь выводу. В связи с этим невозможно делать вывод сложнее, чем структура управ- ления программы, использованная в принципе вывода.
ИДЕНТИФИКАЦИЯ ЛИСП-ПРОГРАММВ ПРЕДЕЛЕ
Системы выводов Харди и Саммерса, с которыми мы познакомились в предыдущем разделе, не дают ответа на вопрос, какой б)тдет результирующая про-
грамма при увеличении множества примеров. Как указано в гл. 7, математической основой индуктивных выводов служит понятие идентификации в пределе, введенное Голдом. Ниже мы рассмотрим регулярные ЛИСП-программы и их вывод, предложенный Бир* манном, который свел задачу автоматического синтеза ЛИСП-программ по примерам к идентификации программ в пределе.
Основные функции регулярных ЛИСП-программ бнрманна, так же, как и в системе THESYS Саммерса, ограничиваются только функциями car, cdr, cons, atom. Кроме того, Саммерс из входных и выходных выражений строил М-выражения, которые он назвал фрагментами, а затем, вычисляя разность фрагментов, создавал ЛИСП-программу с рекурсивными вызовами. Синтез рег)^лярных ЛИСП-программ в основном осуществляется аналогичным образом, а именно: операциям генерации фрагментов и получения разности соответствуют операции трассировки и слияния.
Трассировка показывает, как можно построить выходное S-выражение из входного S-выражения в слу、 чае, когда пара заданных S-выражений рассматри- вается как вход и выход некоторой программы. В качестве примера возьмем пару S-выражений
((А. В).С)=>(С.(В.А))
Если записать их в виде фрагмента, получим
/И = (С.(В.А))
=cons [cdr [х];
cons [cdr [саг [х]];
car [саг [х]]]],
% = ({А.В)・ С)
Дважды подчеркнутая здесь функция саг [х] указывает на то, что для конструирования подвыражения (В.А) из х достаточно применить функцию саг к начальному вырансению ((А.В) .С) и получить
(А.В)*(В・А)・
Таким образом, в системе синтеза регулярных ЛИСП- программ предпочтение отдается делению выражений с помощью функций саг и cdr( особенно в случаях, когда выходное выражение конструируется из входного или входное выражение можно предварительно разделить на части. Введем обозначения для каждой новой функции, представим их в виде следующих вы< ражений и назовем это трассировкой.
Трассировка F:
Л И = cons [f2 [х]; f3 [х]],
%l>] = f4【cdr 印],
%印=%[car印],
fs W = cons [f6[x];力 ML
/б [%] = f8 [cdr[x]],
力印=% [саг[х]],
f《印=x,
九因=%>
f^] = x.
Обратите внимание на подчеркнутый оператор, который отражает указанный выше «принцип предпочте* ния». Собственно регулярной ЛИСП-программой на* зывается программа, для которой трассировка, построенная указанным выше способом из пары входного и выходного выражений, совпадает с трассировкой реальных вычислений.
Для того чтобы далее рассмотреть метод слияния, предварительно укажем целевую регулярную программу G.
Программа G:
gi [%] = [atom [х] -> х;
T^cons[g2[x]\ 禽肉]】;
放[打=出囱Г印];
备[习=gikai•印]•
Трассировка Т, показывающая, как эта программа выполняется для входного S-выражения ((А.В).С), имеет следующий вид(
Трассировка Т вычисления по программе U.
^1,1 И = cons ®2,1 印;g3J [力]],
g2」図=gl,2 [cdr [x]],
&」【*] = gi,3 [car [%]],
gl,3 [%]=cons [敛,2 [%],毒,2 闵],
纟2,2 図=gl, 4 [cdr [x]],
g3,2 lx\ = gl, 5 [car [%]])
gl,2 ⑶=&
gl,4 [к] = X>
gl,5印=尤
Здесь gitj обозначает /-e применение функции gi во время выполнения. Если сравнить трассировки F н 7\ то, например, % и &,з совпадают, а именно: % — это третье применение gi・ Соответствие F и Т можно представить в табл. 8.1. Из этой таблицы видно, что Таблица 8.1
Имя функции
Появление в Т
Появление в F
gl
G, / (У &5)
/i)f^ /<> /в, f^
g2
g%/(l&j&2)
%, /б
禽
室,j(l&j&2)
%,方
для вывода G из £ если G неизвестна, достаточно разделить обозначения функций в F на некоторые равнозначные классы и отождествить обозначения функций, принадлежащих одному классу. Операция отождествления обозначений называется слиянием. В нашем примере в соответствии с приведенной выше таблицей отождествим “,%, f4, % с %, % с % н % с 用 в результате получим
f [%] = Г。"'仇[灯;f3 М], если ((А. В.). С), (А. В);
1 V, если А, В, С
% [^]==fi[cdr[x]];
^зИ = Л[саг [х]].
При этом выполнена генерация предиката с условием «если» с целью разделения двух типов S-выражений. В данном случае для разделения достаточно применить atom [х], поэтому оператор «если» перепишем в виде условного оператора ЛИСПа и получим
f{ [х] = [atom 印 f х;
7 f cons 伉印;Л [^]]]:
f2W = fi [cdr[x]];
% И=Л[саг[х]].
Обратите внимание на то, что эта программа иден-^ тична G, за исключением имен функций.
При выводе программы с помощью слияния необходимо решить задачу, как вычислять равнозначные классы функций. Для ее решения Бирманн использовал стратегию поиска программы минимального размера, а именно: перечислив функции в порядке, начиная с функции наименьшего размера, он один за другим просматривал возможные равнозначные классы до тех пор, пока не будет синтезирована программа, которая может реализовать заданную трассировку. Следовательно, гарантируется, что полученная в ре・ зультате вывода программа — это программа наименьшего размера, которая может выполнить заданную трассировку. Кроме того, очевидно, что это свойство дает возможность делать идентификацию в пределе так, как рассказано в предыдущем разделе.
Итак, синтез регулярных ЛИСП-программ по примерам имеет большое преимущество в том смысле, что его объектом является реальный язык програм- мирования — ЛИСП и он имеет теоретическое под-* тверждение. Однако сложность синтеза в том, что объем вычислений для получения программы минимального размера экспоненидально возрастает. Бауэр, используя метод слияния, описал метод вывода, при котором вывод осуществляется за разумное время. С этим методом мы кратко познакомимся в следующем разделе.
CDL —РЕАЛЬНЫЕ ПРОБЛЕМЫ
Как уже отмечалось, в системе THESYS Саммерса невозможен вывод программ со сложной структурой управления, а при выводе регулярных ЛИСП-про* грамм Бирманна серьезной проблемой становится объем вычислений. Что же необходимо, чтобы подоб^ ные методы автоматического синтеза программ по примерам стали действенным' инструментом программистов? Система синтеза ' программ по трас* сировке, которую Бауэр использовал как экспериментальную систему, наметила идею решения этой проблемы.
Принимая за основу метод слияния Бирманна, Бауэр спроектировал язык описания вычислений CDL и построил систему синтеза программ на процедурных языках по трассировкам, записанным на CDL. Трассировка ЛИСП-программ, о которой шла речь в предыдущем разделе, состояла из операторов ЛИСПа (М-выражений), а рассматриваемая ниже трассировка формально включает ограниченный набор операторов процедурного языка. Основная идея синтеза программ по такой трассировке заключается в использовании системой синтеза в качестве знаний различных условий (договоренностей) о способах применения переменных, констант и других элементов программ. Предполагается, что трассировка на языке CDL удовлетворяет таким условиям.
На практике в написанной программистом программе появляются имена процедур, аргументы процедур, локальные и глобальные переменные, массивы, записи, имена процедур и другие элементы. При записи трассировки на языке CDL также можно вводить все имена, появляющиеся в программе, за исключением операторов управления (например, оператора GOTO). При этом используются следующие условия' для более точного отражения в трассировке замысла программиста:
появляющиеся в программе константы не записываются в виде переменных;
переменные, за исключением входных парамет- р°в, не записываются в виде констант;
переменные, принимающие в качестве значения часть структуры (например, А(1) для переменной А типа массива), не записываются в виде отдельной переменной;
входные параметры процедур задаются в виде констант, а после изменения входного значения в результате вычислений вместо этого входного параметр ра должна использоваться константа.
Когда системе синтеза программ задается написанная на языке CDL трассировка, допускается, что она удовлетворяет условиям 1——4. Например, в трассировке записана константа 5, при этом из трассировки должно четко следовать, что эта константа не входит в какой-либо список входных параметров. Тогда система синтеза расценивает константу 5 как обозначение константы, используемой в целевой про грамме.
Синтез программ осуществляется структурными методами с использованием слияния на основе трас- сировки, представляющей собой набор операторов, удовлетворяющих указанным условиям. Прежде всего все операторы в трассировке разбиваются на «по- добные» классы операторов, и формируются рав^ позначные операторы. Затем проверяется, удовлетворяют ли операторы в этих классах условиям 1——4. В заключение равнозначные операторы сливаются в один, и составляется программа, содержащая циклы.
Обратите внимание на то, что оценка подобия двух каких-либо операторов выполняется полностью на основе их структуры, В зависимости от их свойств можно в трассировке записывать неопределенные имена процедур, что позволяет синтезировать иерарх хические программы.
Синтез программ по описанию трассировки на языке CDL позволяет получить разнообразную дополнительную информацию о примерах вычислений. Однако проблема определения уровня такой дополни^ тельной информации в трассировке ——это крайне сложная проблема выбора, чему отдать предпочтение: увеличить время ввода пользователем трассировки или повысить возможности и надежность системы
синтеза. Для решения этой проблемы, видимо, необходимы особые исследования разнообразных языков программирования.
ВЫВОД МОДЕЛЕЙ
Объектами индуктивных выводов до сих пор были функции, формальные языки и программы. Причем все они рассматривались по отдельности. Трудность здесь в том, что при расширении класса объектов становятся неэффективными методы вывода, а эффек* тивные методы действуют только в узком классе объектов.
В последние годы Шапиро предложил унифицированные и достаточно эффективные методы индуктивных выводов, объектами которых выбраны формальные языки первого порядка и, в частности, хорнов- ские предложения. Эти методы он назвал методами вывода моделей, причем они могут применяться не только для функций, формальных языков и программ, но и как средство полуавтомати* ческой отладки при разработке программного обеспечения.
Ниже мы познакомимся с общей концепцией вывода моделей Шапиро и усовершенствованием его методов, полноценным недавно Исидзака.
В основе концепции вывода моделей Шапиро лежит высказывание Поппера о том, что теория должна опровергаться фактами. Этот принцип нашел отраже- ние в понятии идентификации в пределе как критерия правильности вывода, который уже был рассмотрен. Шапиро начал с перевода понятий «теория», 《факт» и «опровержение», упомянутнх в этом высказывании, в термины логики предикатов первого порядка. Кро- мс того, отличие его подхода от других методов индуктивных выводов заключается в том, что в качестве объектов он выбрал логику предикатов и ее модель. В этом причина практической ценности его теории. В частности, логика предикатов отличается следующими достоинства м и:
имеет естественный смысл. Можно легко обнаруживать места возникновения несоответствия;
дает тесную связь между грамматикой и семантикой. Это позволяет просто ослабить опровергающие предположения;
имеет свойства монотонности и модульности. Это позволяет в общих чертах прогнозировать возможности вывода в зависимости от смены предполо* жений и диапазон их влияния;
его можно рассматривать как язык программирования, например как язык логического программирования типа Пролог.
Г ПРОБЛЕМА ВЫВОДА МОДЕЛЕЙ
Рассмотрим в качестве языка множество операторов £ логики предикатов первого порядка, состоящее из операторов с конечным числом предикатов и функций, а именно: операторы в L имеют вид
{儿P/}-{Qi,…,Q"亿々>0).
Здесь 尸加,Qn — атомы. Такие операторы назовем предложениями. В частности, при / = 0 или / = 1 назовем их хорновскими предложениями.
Эти операторы можно интерпретировать как вывод Pi V … VP/ из Qi& …&Q积{Qi, ...» Qfe} назовем предпосылкой, а {尸卜...,Р/}——заключением. Опера^ тор с пустой предпосылкой означает, что по крайней мере один атом в выводе истинен, а оператор с пустым заключением ——что по крайней мере один атом в предпосылке ложный. Пустой оператор обозначим iiepes □. При любой интерпретации он ложен. Оператор {Р}— запишем просто как Р.
Рассмотрим два подмножества L% множества L таких, что
□三 Lo 三 Lk — L.
Допустим также, что Lo и 厶斤——определяемые, то есть для любого оператора Р существует алгоритм, определяющий, принадлежит ли Р & или 厶。・ Lo назовем языком наблюдений, а 厶〃一языком гипотез, операторы в Lo — операторами наблюдения, а операторы в Lh — гипотезами.
Рассмотрим непустое множество Н, которое назовем областью .(так называемая область Эрбрана).
Представление 尸"卜•・・,〃):(力巨 ”),в котором аргументы предиката Рем переменными, принадлежа* щего L, заменены на элементы ", назовем порождающим атомом (ground atom). Образ Mt в котором каждому порождающему атому в 厶 поставлено в соответствие значение «истина» или 《ложь》, назовем моделью. Образ М распространяется на оператор в L с переменными 尤卜...t хп 、(九 N 0)
следующим образом!следующим образом!〃({A・・・,PJTQi,・・・《}) =〃({A・・・,PJTQi,・・・《}) ={尸匕}-{Qi,・・・,Q4
следующим образом!
следующим образом!
〃({A・・・,PJTQi,・・・《}) =
〃({A・・・,PJTQi,・・・《}) =
истина, если для любых хь..хп е
M(PdV.^VM(P^ M(Q|)&…&MQ) истинно;
ложь—в противном случае.
Скажем, что оператор а в L истинен в Mt если М(а) = истина, и ложный в М, если М(а) = ложь.
Пусть задан оператор наблюдения а, допустим, что существует механизм, который выдает ответ «истина», если а истинен в М, и «ложь», если а ложный в Л1. Такой механизм назовем предсказателем. Операции задания предсказателю входных данных и чтения его ответа назовем экспериментом в М. Кроме того, пару данных <а, и〉,которые описывают результат эксперимента, назовем фактом. Здесь а е Ло — оператор наблюдения, a uw {истина, ложь}. Обозначим через Lo множество операторов наблю* дения, истинных в модели М. Например, пусть существует принцип вывода, или некая полная процедура вывода, и Г есть ограниченное подмножество L. Тогда запишем Т Н р, если оператор р выводится из 7, и ТХр, если не выводится. Пусть S — множество операторов; запишем Г Н S, если для любого pwS имеет место 7 Н р, и 71Tz■§ — в противном случае.
Определение 8.1. Допустим, что множество операторов Т и 厶尢 является полным набором аксиом Lo в М, если все операторы в Т истинны в Л4 и Г Н 厶牝
Теперь можно строго сформулировать проблему вывода модели. 」
Пусть заданы язык предикатов первого порядка С н два его подмножества Lo и &, а также предсказа- ние о некоторой неизвестной модели М языка L Тогда проблема вывода модели состоит в нахождении конечного полного набора аксиом 厶。модели М. Алгоритм решения такой проблемы назовем алгоритмом вывода модели. Он соответствует машине выводов из гл. 7. Обнаружение любого ос 巨厶° в некотором факте Ft = <а, и> из неограниченной последовательности фактов 尸 1,尸2,….о М назовем перечислением М. Алгоритм вывода модели сводится к просмотру перечисления модели для заданного языка наблюдения 厶°, другими словами, к чтению одного из фактов и выдаче время от времени ограниченного множества операторов языка гипотез 乙也 Полученное при этом ограниченное множество гипотез будем на* зывать наблюдениями этого алгоритма. Другие понятия, например сходимость и идентификация в пределе, определяются так же, как в гл. 7.
Как уже было отмечено, в основе вывода моделей Шапиро лежит методология Поппера: «Теория должна опровергаться фактами». Факт уже определен выше, а теория — это наблюдения Т, а именно: ограниченное множество гипотез. Следовательно, для опровержения в соответствии с принципом Поппера необходимо наложить на Lo и Lh некоторые допустимые ограничения.
Определение 8.2. Назовем пару 〈L。, L〃〉 допустимой, если для любой модели М языка £ и любого множества Т и & такого, что {a w厶。I Т L а} = L*, Т истинно в М.
Пусть 〈丄。,厶斤〉——пара, удовлетворяющая этому условню, тогда принцип Поппера можно реализовать, указав доказательство того, что в теории с ложным Lh множество, удовлетворяющее L^* ложно для всех языков наблюдения Ло.
В качестве пар 〈上。,厶后〉,удовлетворяющих условию допустимости, можно рассматривать такие пары:
Ар == {порождающие автомы L}, L^ = {хорнов- ские операторы 厶};
Lo = {порождающие простые операторы ZJ, Lh =
Здесь простым оператором назван оператор, состоящий только из одного атома. Ниже рассмотрим только случай 1.
АЛГОРИТМЫ ВЫВОДА МОДЕЛЕЙ
Зафиксируем одно из перечислений всех конечных множеств операторов в 厶乂 пусть это будет 7\ 7\, —• Рассмотрим простой алгоритм вывода, указанный на рис. 8.1. В общем случае окончание цикла while не поддается оценке, поэтому этот алгоритм может зациклиться. Следовательно, существует вероятность того, что после чтения некоторого факта следующий факт так и не будет прочитан, и этот алгоритм будет действовать неверно.
В этом случае будем управлять числом циклов вывода с помощью некой вычисляемой функции /г. Обозначим чере3TLmct(T (■/■〃(!) ситуацию, когда Т может (не может) вывести а не более чем через л шагов вывода. Затем фиксируем перечисление 仪匕 а2,…множества Lo. Тогда этот алгоритм можно улучшить так, как указано на рис. 8.2. В новом алгоритме вывод может быть прерван через и или h(i) шагов, и все Тk будут ограниченными множествами, поэтому выход из цикла while обеспечивается в любом случае.
*<" L 3g1配* {□}; Strue<-{ } repeat
read следующий факт 尸=〈а, о)
Sy<-SyU{a)
while 3p 巨 SIalse : rft (- p или 邢三5打u厶У^0
々 <-& + 1
output 厶
forever
Phc, 8,1, Простой алгоритм вывода моделей на основе перечисления.
…;5匕1」{口};%」{ }
repeat
read следующий факт F^ =« (% v)
*5 d <— S у U {a}
while 3p W Sfalse 'Tk^~n^ H"H m% R ^true ' 〃 У九⑺ a/ do
k<-k + 1
output T«
forever
Рис. 8.2. Алгоритм вывода, использующий Л-простоту.
Скажем, что ограниченное множество Tk /г-просто, если для почти всех /г〉0 (т. е. за исключением конечного числа случаев), при которых Т『「п*еет место
min{j\Tk f %}《m小.
Скажем также, что модель М /г-проста, если для некоторого 々 > О Т является /г-простым полным набором аксиом 厶° модели М. Тогда можно показать, что если М /г-простая модель языка 厶,то указанный выше алгоритм идентифицирует в пределе эту модель, я, наоборот, модель, которую идентифицирует в пределе этот алгоритм, является /г-простой.
Примеры фактов:
<0<0; true)
(plus (О, О', 0), false)
(times (О', 0", 0"〃),true)
Теория:
Х&Х
X《У" ♦ X《У pius(X, “ X) рЗ(Х, У; Zz)<-plus(X 匕 Z) times (X, 0, 0)
times (X, У', Z) <- times (X,匕 A/), plus (卜,X, Z)
Рис. 8.3. Вывод операций над числами.
Примеры фактов:
(append([a, Ь]. [с, d, е], [ ]), false〉
(append([a, b], [с, d, е], [a, b, с, d, е]), true)
(reverse([a, b, с], [а, с, b), false)
(reverse(a, b, с], [с, b, a], true)
Теория:
append([ ], X, X)
арреп(1([Л I X, У]> [Л | Z]) <- append(X, У, Z)
reversed ],[])
reverse([H \ X]t Г) <- reversed, Z), append(Z, [Л], У)
Рис. 8.4. Вывод логических программ.
Выше приведены два примера вывода моделей. В примере на рис. 8.3 областью является множество всех натуральных чисел, а язык состоит из 0, функ< ции X’ (число, следующее за X), plus(X,匕 Z) (X 十 十 У = Z), times(X, У, Z) (X X У = Z).
Ha рис. 8.4 приведен пример вывода логических программ. Область — списки, язык——константа [] (пусто), append (X, У, Z) (если к X присоединить У, то получится Z), reverse(X, У) (У получен путем обратной перестановки элементов X).
ОПРОВЕРЖЕНИЕ И УТОЧНЕНИЕ ГИПОТЕЗ
Подобные примеры могут быть выведены с помощью алгоритма вывода на рис. 8.2, но и в нем не все молено реализовать. В частности, между текущим предположением Tk и следующим за ним кандидатом в предположение 7\* при традиционном перечислении какой-либо связи не возникает. Другими словами, перечисление кандидатов в предположение определяется вне всякой связи с моделью, которую предстоит из них вывести, % кроме того, вне всякой связи с примерами фактов, которые получил алгоритм до текущего момента. Из-за этого, например, даже если в данный момент мы пришли к предположению, очень близкому к правильному, иногда кандидатуры, про- веряемые сразу вслед за ним, никак с ним не свя-
ваны. С целью улучшения алгоритма вывода с помощью перечисления Шапиро предложил следующие два важных метода.
А. Опровержение с помощью решающих экспериментов
Когда предположение усиливается, т. е. когда выводится оператор, ложный в М, по крайней мере одна из гипотез в этом предположении ложна. Для поиска такой гипотезы используются эксперименты, соответствующие решающим экспериментам в философии, и плохая гипотеза отвергается. Эта операция называется слежением за противоречивыми точками- При таком эксперименте в случае научной теории можно только указать, что все предположение ошибочно, но в случае вывода модели можно выделить по крайней мере одну ошибочную гипотезу в предположении.
Прежде всего приведем пример логики высказываний и объясним алгоритм слежения за противоречивыми точками. Этот алгоритм можно применять, если возникает противоречие между некоторой гипотезой и фактом, а входом в этот алгоритм является дерево вьь вода, в котором корнем служит пустой оператор □, а листьями ——гипотезы и операторы наблюдения, истинные в М то есть S = Л U 5Нстина- *В этом дереве установлен следующий порядок листьев: атомы, используемые при выводе влево приходят к предусло^ виям, а вправо——к заключениям. Данный алгоритм выдает предсказания, на основе которых можно узнать истинность порождающих атомов языка L и выдать операторы а, истинные в Л4 и такие» что awT版 На рис. 8.5 указано дерево в случае
S = {P jQ&R, QT f RT
Допустим, что P~Q&R ложно. Отправимся от пустого оператора □ в корне дерева и будем последовательно проверять атомы, используемые при выводе, выясняя, истинны ли онн в модели М, в неясных слу* чаях «прислушаемся» к предсказанию, если оно истинно, то пойдем по левой ветви, если ложно, то по правой. Если таким образом придем к листу, то вы”
Рис. 8.5. Слежение за противоречивыми точками в случае суждений.
дадим оператор, записанный в этом месте. Это позволяет исключить ложные операторы.
В данном примере заметим, что исходный R истинный, поэтому идем налево, используемый далее атом Р ложный, поэтому идем направо. Истинность в М атома Q, используемого при выводе, не ясна, поэтому «прислушиваемся» к предсказанию и получим ответ, что оно истинно, поэтому пойдем налево и достигнем листа Р — Q&R. Так можно обнаружить противоречие. Достоинство этого алгоритма заключается в том, что по результатам текущей проверки можно однозначно определить исход следующей проверки.
Данный алгоритм слежения за противоречивыми точками можно использовать и в случае логики предикатов. При этом перед проверкой необходимо конкретизировать предикат в порождающем атоме. На- пример, изучим введение аксиомы отношения W для натуральных чисел. Если в момент, когда нам встретился факт {s(0) W s{s(0)), истина}1), предложена гипотеза 5(Х)《У~Х<У, то можно построить дерево вывода, аналогичное дереву в случае суждений (рис. 8.6). Здесь, для того чтобы выбрать ложную гипотезу среди 邛ех гипотез, находящихся в листьях,
“ Авторы ввели новое обозначение 5(Х) для функции X’ (см, рис, 8,3)> —〃р〃丸 персе.
f Z)£0s(X)SY-XSE
Рис. 8.6. Слежение за противоречивыми точками для логики предикатов.
используем алгоритм слежения за противоречивыми точками. Атом, используемый при выводе в корне □ , — это атом 0《0. Обратимся к предсказанию с этим оператором и получим ответ «истина». Поэтому пойдем по левой ветвн. Здесь для вывода использо' вался атом s(X)W0, конкретизируем его в предсказании, определим истинность оператора s(0)^ 0 и получим ответ «ложь». Поэтому пойдем по правой ветви и обнаружим ложную гипотезу s(X)WY — —XW Y. Вспомнив все замены переменных, которые мы использовали до достижения этого листа, можно получить пример, показывающий, что эта гипотеза ложная, т. е. одновременно получим контрпример для этой гипотезы: s(0) 0-<-0 0. Таким образом, алгоритм вывода исключает из предположения эту гипотезу.
Б. Уточнение гипотез
С помощью приведенного выше алгоритма слежения за противоречивыми точками можно исключить гипотезу, которая стала причиной вывода оператора наблюдения, ложного в Л1, и ослабить слишком сильное предположение. Но есть еще одна проблема — что еще можно сделать для ослабления предположения? Для ее решения Шапиро ввел оператор уточнения. С его помощью не только решается настоящая проб^ л ем а, но и устраняется недостаток алгоритма перечисления, упомянутый в начале раздела. Данный оператор пригоден для гипотез, исключенных с помощью указанного выше алгоритма слежения за противоре'
чивыми точками, в случае, когда предположение ослабляется, т. е. когда нельзя вывести оператор наблюдения, истинный в М.
Определение 83 Оператор q назовем уточнением оператора р, если справедливо одно из следующих условий:
р = □, g = a(%i, ..., х“),где а — предикат п переменных, все %/ — попарно различные переменные;
р = Р,夕=戶{〃/о}, где {u/v} указывает замену, 〃,V — различные переменные Р;
р=Р, (? = Р®〃(Х1, ..., xQ}, где / — функция п переменных, х/ различные переменные, не встречающиеся в Р;
р = a (^i, .... 60, q = a(fi, 〃)・&(打, где tt ——термы, а ——предикат п переменных, Xi~ различные переменные, встречающиеся в 力.
Оператором уточнения называется операция построения оператора q по такому оператору р. Кроме этого оператора Шапиро рассмотрел более общий оператор уточнения, а именно: он доказал, что, отправляясь от пустого оператора □, применение оператора уточнения конечное число раз позволяет по-
7б{口}
repeat
Считать следующий факт Fn — (а, и〉
S° <- S° U {а}
while 3₽eSfalse;r 匕 Р do
Используя алгоритм слежения за противоречивыми точками, исключить из Т опровергающую гипотезу
while 叫 wS[ru。: TbS“jdo
Добавить в Т уточнение для удаленной выше гипотезы
until Vp w Sfnise: T h/•门 p, а также
Va^ e 5trUe: T 卜九⑴%,
Вывести наблюдение T
forever
Рнс, 8,Обобщен!]ый алгоритм вывода моделей.
лучить любое предположение Г® Итак, окончателs* ими уточненный алгоритм вывода моделей приведен на рис. 8.7,
СОВЕРШЕНСТВОВАНИЕ СИСТЕМЫВЫВОДА МОДЕЛЕЙ
В системе вывода моделей Шапиро есть немало достоинств, но она ставит и ряд следующих проблем:
для указания адекватности предположений, полученных просто перечислением, используются только положительные факты, то есть факты типа {а, и с- тина};
перечисление ограничивается только простыми операторами, и при достаточно большом простраН' стве поиска нельзя генерировать сложные операторы;
индуктивные выводы следуют от общего к конкретному, хотя более естественно рассматривать выводы от конкретного к общему.
В последние годы Исидзака решил эти проблемы с помощью понятия минимального обобщения, вве- денного Плоткиным. Его метод ориентирован на хор- новские операторы, причем логический вывод предложений осуществляется с использованием обобщения из множества положительных фактов, этот метод эффективен, поскольку перечисление предложений можно ограничить до уровня объектов.
ГЛАВА 9
ТЕОРИЯ АНАЛОГИЙ
С. Арикава, М. Харагути ^Университет Крсю)
Аналогия — это метод выводов, при которых обнаруживается подобие между несколькими заданными объектами; благодаря переносу фактов и знаний, справедливых для одних объектов, на основе этого подобия на совсем другие объекты либо определяется способ решения задач, либо предсказываются неиз- вестные факты и знания. Следовательно, когда чело* век сталкивается с неизвестной задачей, он на первых порах использует этот естественный метод вывода. В данной главе мы познакомимся с исследованиями аналогии, проведенными до сих пор, а также с ее математической формализацией и исследованиями по реализации метода аналогии, выполненными авторами.
НАПРАВЛЕНИЯ ИССЛЕДОВАНИЙАНАЛОГИИ
Одна из важнейших проблем инженерии знаний — приобретение знаний. Под приобретением здесь понимается получение знаний в виде, пригодном для их использования компьютерами, поэтому многие исследователи указывают, что ключом к знаниям является теория и методология машинного обучения. В общем случае машинное обучение включает приобретение новых декларативных знаний, систематизацию и хранение новых знаний, а также обнаружение новых фактов. Среди указанных форм обучения аналогия, о которой будет идти речь в данной главе, связана, в частности, с проблемой машинного обнаружения новых фактов.
Под новыми фактами мы будем понимать факты, которые дедуктивно не выводятся из некоторых существующих знаний. О некоторых аспектах обнаружения новых фактов в исследованиях машинного
обучения можно посмотреть в гл. 7, 8, посвященных индуктивным выводам. В общем случае при индуктивных выводах по заданным данным создается гипотеза, их объясняющая, а с помощью дедукции из этой гипотезы можно вывести новые факты. С дру-. гой стороны, при аналогии новые факты предсказываются путем использования некоторых преобразований уже известных знаний.
Индукция и аналогия крайне необходимы при обработке интеллектуальной информации, и поэтому желательно изложить основы их совместного применения. Как было указано в гл. 8, Шапиро ввел строгую формализацию индуктивных выводов в части вывода моделей с использованием логики предикатов первого порядка; в теории индуктивных выводов есть заметные успехи. В данной главе с указанной выше точки зрения дадим формализацию аналогии также с помощью логики предикатов и укажем теоретические основы для автоматизации аналогии. Познакомимся также с реализацией машины аналогий, использующей логические программы.
Прежде всего в данном разделе дадим краткий обзор исследований аналогии, выполненных главным образом Уинстоном. В разд. 9.2 формально определим аналогию, опираясь на результаты исследований Уинстона, и рассмотрим связь между аналогией и дедукцией. Кроме того, введем логику первого 吟 рядка для аналогии на основе частичного тождества как одного из видов подобия. В разд. 9.3 укажем метод изучения свойств частичного тождества и реализации аналогии с помощью логических программ.
С целью обзора исследований аналогии, проведенных до настоящего времени, выделим два типа ана、 логин: для решения задач и для предсказаний. Ана” логия первого типа применяется главным образом для повышения эффективности решения задач, которые, вообще говоря, можно решить и без аналогии. Например, благодаря использованию решений ана、 логичных задач в областях программирования и 区。・ казательства теорем можно прийти к выводам о про- гра&шах или доказательствах. С другой стороны, используя аналогию для предсказаний, благодаря
преобразованию знаний на основе подобия между объектами можно сделать заключение о том, что, возможно, справедливы новые факты. Например, если объектами аналогии является некая система аксиом, то знаниями могут быть теоремы, справедливые в этой системе. При этом, используя схожесть между системами аксиом, можно преобразовать теорему в одной из систем в логическую формулу для другой системы и сделать вывод о том, что эта формула есть теорема. Другими словами, аналогия используется и для решения некоторых строго сформулированных задач и для предсказаний, а также для приобретения не заданной ранее информации.
АНАЛОГИЯ ПРИ РЕШЕНИИ ЗАДАЧ
Из системы аналогий для решения задач с помощью компьютеров первой была создана система для доказательства теорем с помощью правил вывода 1} (Клинг, 1971 г.). Подобие по Клингу — это образ А во втором из следующих условий для двух заданных теорем Т】и Т2 (Т【一доказана, а Т2—нет):
7[ и 『2 имеют грамматически одинаковые структуры;
существует образ Л, который сохраняет словарные значения в обозначениях Т【и Т» (обозначениях предикатов, функций, переменных).
Работа системы Клинга начинается с получения Л, который расширяется до образа Af для используемых аксиом, затем с помощью /' доказательство 7\ по правилам вывода преобразуется в доказательство 丁2・ Однако большинство примеров успешного применения этой системы было связано с Т【и 72, которые были почти идентичными, система оказалась недостаточно аргументированной и унифицированной, что нельзя сказать об используемых понятиях и методах.
Танвансон применял аналогию для задач про- граммирования роботов. Аналогия проводилась за счет преобразования и использования законченных программ на основе подобия команд, задаваемых
1 В этом разделе под выводом ппиимается математический вывод формул.— Поим, иерее.
роботу. Причем для более эффективной аналогии непосредственное подобие команд не учитывалось. Вместо этого в базе данных сохранялись группы команд из уже составленных программ, преобразованных методом абс邛агнровання в форму абстрактных команд н программ. Танвансон определял подобие благодаря смысловому сопоставлению текущих команд и абстрактных команд в базе данных. Преимущество определения подобия через абстрагирование состоит в том, что можно организовать доступ в базу данных для выбора подобных команд. Как известно, метод абстрагирования эффективен и для традиционного программирования без использования подобия, но в случае аналогии он также полезен.
Система Танвансона, используя соответствие между текущими командами и абстрактными командами, найденными благодаря ^ смысловому сопоставлению, преобразует абстрактную программу в незавершенную программу для текущего набора команд, и этот процесс повторяется до полного завершения программы. Таким образом, эта система программирования совсем не использует традиционные способы составления программ, а извлекает подобные команды путем смыслового сопоставления и использует аналогию в том смысле, что абстрактные программы преобразуются с помощью им подобных. Однако в большинстве случаев более важным представляется решение задач путем органичного сочетания существующих методов решения с аналогией. Например, Карбонел в качестве специальных операторов обобщенного решателя задач рассматривал так называемые Г-операторы, основанные на подобии, и утверждал, что возможно органичное применение аналогии и существующих операторов.
Область доказательства теорем одновременно с Клингом исследовал Плейстид. Его исследования были связаны с процедурами для нахождения доказательств актуальных в данный момент теорем с но пользованием доказательств абстрактных теорем. Су: щественное отличие от указанных выше исследований 1 и 2 состоит в том, что получается соответствие (подобие) уже доказанной теоремы Л и недоказанной
теоремы Т^ никакого вывода на основе этого подобия не делается, а с целью упрощения задачи из Т2 строится абстрактная теорема 7&. Следовательно, соответствие между Г2 и Т; полностью известно с самого начала, поэтому, получив «абстрактное доказательство» g абстрактной теоремы TJ можно из % получить доказательство 尸2 теоремы Т& Подобный метод доказательства теорем по правилам вывода называется стратегией абстрагирования, он показан на рис. 9.1.
В случае решения задач по этой стратегии можно упростить процесс поиска подобных задач, рассмотренный Танвансоном. Вместо проблемы поиска возникает новая проблема: до какого уровня абстрагировать решение исходной задачи? Плейстид математически определил абстрагирование логических формул и дал одно из решений этой проблемы. Продемонстрируем на простом примере основную идею его решения.
Пусть G — ограниченное множество высказываний, а С ——высказывание; будем записывать G Н С, если из G по правилам вывода можно вывести С. Давайте определим вывод G L С с помощью стратегии абстрагирования. Например, рассмотрим »
G = {^P(x)\/ ^Q (х) V R W,尸(尤),Q(a)}, C = R(a)・ Для абстрагирования высказываний используем про- познцнональное?) абстрагирование, при котором
Абстрагирование
Задача ,—一…>■,Абстрактная задача
(доказать Т^|(доказать Тр
[Трздиционное
Iрешение задачи
((принциг}吗
Решение 殳 y 亠> АбстрактНйе решение PJ
Решение задачи,(дерево вмцца К пустом/
выводимое излредпожению)
Рис. 9.1. Стратегия абстрагирования.
остаются только обозначения предикатов, а остальное отбрасывается. При абстрагировании G и С но лучим '
GZ = {~PV 〜QVR R Q}, b = R.
В логике высказываний это есть множество высказываний и высказывание. Очевидно, что вывод G‘ Н С7 сделать легче, чем вывод d L С. Вывод Gf 1 Cf делается так, как на рис. 9.2.
Теперь укажем способ вывода G Н С исходной задачи из вывода G‘ L С'・〜尸(尤)\/〜Q(尤)\/ R(x), Р(“), Q(a) благодаря пропозициональному абстрагированию связывается соответственно с 〜Р\/〜QYR, 尸,Q; поэтому рассмотрим метод построения вывода G Н С, при котором сохраняется каждый вывод, обусловленный абстрагированием (рис. 9.3), При построении выводимых высказываний С] и С2 сначала перейдем к выводу Ц, С; и С£
В данном примере начнем с вывода
Р,〜PY 〜QYR I-〜Q V R,
затем, проверив выводР(х), ^Р(х)V 〜Q(x)tR(x). получим
p (%), ~Р (上)V 〜Q (尤)V R (尤)I-〜Q (尤)V R(X).
Обратим внимание на то, что здесь 〜QVR — это
Рис. 9.3. Перенос вывода на другое множество.
пропозициональное абстрагирование выводимого высказывания 〜Q (尤)VR")・ Далее сделаем вывод
〜QVR Q1
JU получим
~Q (尤)V R (尤),2 (a) P R (a).
Таким образом, отправляясь от дерева^ вывода G‘ L С', можно получить дерево вывода G Р С.
Принимая за основу эту идею, Плейстид дал об, щее определение абстрактных образов и предложил стратегию для получения дерева вывода с помощью абстрагирования.
АНАЛОГИЯ ДЛЯ ПРЕДСКАЗАНИЙ
Как один из примеров аналогий для предсказаний можно привести аналогию, основанную на причинных отношениях Уинстона. Аналогия, рассмотренная в данном разделе, главным образом относится к это^ му направлению. Прежде всего кратко опишем принцип аналогии, использованный Уинстоном.
Объектом аналогии служат простые предложения на английском языке; будучи введенными в систему аналогий, они преобразуются в структуру фреймов. При этом с целью приобретения информации об отношениях, выходящих за рамки отношений между фреймами, делаются различные дедуктивные выводы с помощью демонов 叫 ассоциирующихся с именем отношения. Например, из входного предложения
Lady Macbeth persuades [Macbeth wants to be a king] (Леди Макбет убеждает Макбета, что он хочет быть королем)
генерируется сеть фреймов, показанная на рис. 9.4. Знак 《с——》 на этом рисунке отмечает «поясняющий фрейм», дополнительно объясняющий отношения между фреймами.
Пусть из описания двух заданных английских предложений сгенерирована сеть фреймов ^l и 乂即 Проблема состоит в обнаружении подобия между ни*
п Присоединенные процедуры. — Прим. перев„
ми. Подобие, рассматриваемое Уинстоном, указывает пары фреймов М и ^2 (исключая поясняющие фреймы) с максимальным числом совпадающих отношений. Под совпадением отношений здесь понимается равенство значений слотов, принадлежащих фреймам, или равенство, за исключением пары значений слотов отношений. Способ определения таких пар иллюстрирует рис. 9.5. Запись nl 厶 %2 на этом рисунке указывает, что слот г фрейма nl есть п2, пунктирная линия указывает пары фреймов. Обратите внимание на то, что определение пар распространяется и на определение пар поясняющих фреймов.
Если таким образом определить пары фреймов, то на их основе можно делать выводы. Уинстон, проводя аналогию, следовал основной гипотезе о том, что подобие сохраняет причинные отношения, другими словами, подобные причины приводят к подобным заключениям. Для строгого представления этой гипотезы обратимся к рис. 9.6. На этом рисунке а, Ь, * 勿,..,—объектные фреймы, 门,r2,.… ——отношения между фреймами. Пунктирные линии указывают пары фреймов. В Si 门(。,b) является причиной 『2(с, d); благодаря определению пары к г( (а, Ь) известно, что в *2 справедливо подобное отношение 「1(а‘,В,)・ При этом ссылаясь на причинные отношения в Si, делаем вывод о существовании аналогично.
Рис. 9.5, Парное соответствие фреймов.
Рис. 9.6. Принцип аналогии Уинстона,
го отношения 「2(с[ d‘) в S2 (прослеживая пары отношений) .Кроме того, Уинстон допускает существование закона перехода в причинных отношениях и использование сцепления принципа аналогии.
Как легко видеть, условием для того, чтобы подобная система аналогий вела себя достаточно разум・ но, является способность процедуры преобразования, которая извлекает причинные отношения из описаний входных предложений, к дедуктивным выводам на основе богатого набора знаний. Кроме того, сущностью выводов по принципу аналогии является использование причинных отношений как логических правил. Исходя из этих соображений, в следующем разделе рассмотрим принцип аналогии, основанный на отношениях логической импликации, и обсудим способы органичного сочетания в дедуктивной системе аналогии и дедукции.
9.2. ТЕОРИЯ АНАЛОГИИ
В общем случае аналогия — это вывод подобного заключения, если справедливы подобные предпосыл* ки. Уинстон, исследуя аналогию, считал предпосылкой и заключением причину и следствие в причинных отношениях. В этом разделе рассмотрим предпосылки и заключения в отношениях логической импликации и сформулируем аналогию с помощью хорновсксй логики. Кроме того, обсудим отношение между ана”
логией и дедукцией с использованием понятия суммы аналогий. Укажем также, что аналогию, основанную на подобии как частичном тождестве, можно описать с помощью логики первого порядка.
ФОРМАЛИЗАЦИЯ АНАЛОГИИ
Прежде всего поясним принцип аналогии на примем ре рис. 9.7.
На рисунке а. и а — факты, справедливые в Sb а pi ——факты, справедливые в S?. ф — образ или отношение между объектами, определяющее подобность — назовем его подобием. Ситуацию, при которой тождественность предпосылок можно рассматривать как подобие ср, будем записывать в виде a^i (1&,&九). Тогда аналогия — это вывод р в S2, такого, что aq)p. Для строгого определения аналогии необходимо задать:
определение подобия ф;
метод получения ф из заданных объектов S) и S2;
операцию для вывода 0, такого, что а(рР |(рнс. 9.7), на основе р
Прежде всего определение подобия ф должно зависеть от представления объектов и их смысла. В данном разделе допустим, что объекты аналогии представляются через ограниченные множества S/ определенных предложений и представляют собой минимальные модели Mi множеств S(, определяемые следующим образом. Здесь под определенными предложениями понимаются правила «если ——то», которые будем записывать в виде
где Л, Bj —— положительные литералы. Для простоты ниже будем называть эти предложения правилами.
Объект $!: предпосылка 的 л %Заключение а
Подобие 屮 11
оомнт ”: предпосылка РлА ^切一* Заключение^ ?
Рис. 9.7. Принцип аналогии.
Термы, не содержащие переменных в S% представляют собой отдельные элементы объектов, предикаты р — отношения между элементами, а порождаю- щие атомы р(Л, ..., 2〃), не содержащие перемен- иых,— отношение р между элементами 力.В дальней-* шем порождающие атомы, не содержащие переменных, будем называть просто атомами. Обозначим через В? множество, состоящее из всех атомов Sg. Тогда минимальная модель М; множества S?——это множество атомов, логически выводимых из S»:
А勿={а 三瓦:Sf Р а},
где L обозначает вывод в логике предикатов. Кроме того, элементы М, назовем фактами в S?.
Для определения аналогии между М? необходимо рассмотреть отношение пар Mi. С этой целью следующим образом определим пары термов S-
Определение 9.1. Пусть U(S。一 множество тер< мов, не содержащих переменных, в St、Тогда конечное множество ф, такое, что 中三 U(Si) X U(Sz), назовем парным соответствием. Здесь знак «X» означает прямое произведение множеств.
Термы представляют собой отдельные элементы Sj, поэтому парное соответствие можно интерпретировать как некое парное отношение между элементами. Si в общем случае имеет 巾ункннн без переменных, поэтому парное соответствие ф можно следующим образом распространить на парное отношение 中书 между U (S.).
Определение 9.2. Отношение термов 屮+三 U(S】)X X U($2), порождаемое 屮> определим как минимальное отношение термов, удовлетворяющее формулам (9.1) и (9.2).
中三屮+,(9.1)
〈必%〉w(p+今(f (九,・・・,3), f (厶/))三(/.
(9.2)
Здесь f—функция, содержащаяся одновременно в S] и S?.
Для заданных Si и Sa в общем случае существует несколько возможных парных соответствий <р. Для
каждого из них можно следующим образом определить подобие как совпадение отношений, т. е. совпадение предикатов.
Определение 93 Пусть 勿曰。(S】),(已。®?), ф— парное соответствие, % а,— соответствующие факты в Si, S?. Тогда возможность отождествить а и а' с помощью 中 для некоторого предиката р можно записать в виде
а = р(/ь ...» tq,
U = Р (;,•♦•,厶),
причем〈% 4〉三(р+. Кроме того, отождествление а и а' с помощью ф будем записывать как а(ра「
После соответствующей подготовки определений принцип аналогии (рис. 9.7) можно переписать так, как указано ниже.
Аналогия на основе парного соответствия (₽ Пусть в Si факты 自,限 служат условиями того, что факт а справедлив, а именно: в S】справедливо а * pi,…,阮.Тогда, если существует факт % в S^ такой, что Р^фРр то в S2 выводится атом а', такой, что а(рсс\
Обратите внимание на то, что атом а! в S2 не обязательно является фактом в $2・ Следовательно, такая аналогия наводит с помощью 屮 на мысль о возможности существования атома с/, который дедуктивно не выводится из S2.
Для определения атома а', который можно вывести по аналогии, прежде всего из правила
R • а ^~ М, • • •, Р«
с помощью ф построим правило
* : а' + 曾,•…,Р/р
затем рассмотрим вывод а' из 0]・,•, 0; и известных фактов Рр ₽^ с помощью правила 《мо дус нонене». Построение R' из R называется преобразованием правила (на основе ср), а процесс вывода а обозначается следующей графической формой (на-
10 С. Осугз, ЕО. Саэки
зываемой основной графической формой);
(конкретизация)若 与? 「・?日用
(преобразование правила
с помощью ф)а<—рь . .В“
(модус поненс)図,.…,熊麓.
а
В основной графической форме конкретизация и «модус поненс》——это выводы в дедуктивной системе, поэтому если в этой системе можно будет реализовать часть, указанную пунктирной чертой, т. е. пре” образование правила, то будет возможным органичное использование аналогии н дедукции.
Факт с/, который получен как следствие такой аналогии, как отмечено выше, не обязательно являет* ся логическим следствием S2. Одиако парное соответствие ф по крайней мере дает основание полагать, что а' справедлив. Поэтому, предположив существование а〔 можно продолжить процесс вывода, а именно: пусть в основной графической форме 也一факт в S〔, а В; — факт в 32; если есть атом, который выведен по аналогии из этих фактов, то допустим, что он является также фактом, и на основе того же парного соответствия ср из 自,В; выведем новый сс\ Множество атомов, которые можно вывести таким образом, будем обозначать через М/(*:<-). Преобразование пра^ вил и определение М/(->:•) можно строго дать так, как указано ниже.
Определение 9.4. Пусть 屮 ——парное соответствие, 力(,=1, 2)—множества фактов в S,. Тогда скажем? что два правила без переменных
R = a + ®,九,
?=优Y一吼0:
являются (ср, /[, /2)-подобными, если
B/W/i,b;三厶口 &/0九),叫公,р/фру.
Кроме того, для заданного R» построение Ri и (中,Л> /2)-подобного К? назовем преобразованием
правила, обозначим его в виде следующей графиче* ской формы:-,
R[ = a - m, 必,
,•(9,人,/2),
&=优 図,…,臨
Преобразование в соответствии с определением 9.4, когда в качестве R* выбирается конкретизация предложений Si, а в качестве 厶一минимальные модели Mf множества S/, является преобразованием правила с использованием указанной выше основной графической формы. В приведенном ниже определении 〃£(*) допускается, что правила S2 преобразуются в правила S】.
Определение 9.5. Пусть Mi — минимальные модели St, а 屮——парное соответствие, тогда множество фактов М,(*) определяется следующим образом:
M(*)=U"M・(%)
Mi (0) — Mi
m(几 +1)=g а(切 и м(к)и & a}
Re (n) = {R‘ = а' 田,•・•,В; : для конкретизации R некоторого правила S; (i #= /) существуют R' н (屮,М[(冷),М2 (/г))-подобное правило R}
Кроме того, атом а в М/(*) назовем фактом, выводимым по аналогии на основе парного соответствия ф.
Пример 9./: S] = {f(b, с), т(а, Ь), gf(X, Z)-p(X, У), f (兀 Z), p(K Y)-f(X, У), p(X, У)Y)}
S2 = {①(点‘,匕'),f(% Q}
Здесь прописные буквы обозначают переменные, а строчные — предикаты без переменных. Кроме того, рассмотрим парное соответствие
中={@ X〉,© 冷〈% *〉}.
Фактами в S2 являются только т(а[ У) и f(b\ cf). Прежде всего из основной графической формы
Р(х, у)т(х, У) pS, с)7(> с)
p亿Q
получим, что p (匕 c‘)三〃2(*)・ Аналогично получим, что р(а‘,У)三〃2(*)・ Допустим, что р(。',/) — факт В S2, и получим следующую основную графическую форму:
g/(X, Z)-р(Х, У), f(y, Z) gfa с) — р& 6), f(R с)
p("犷),〃匕Q mia7「否=『值:歹\7值,Q.
Следовательно, g/(a‘,c') w %2(改)・
2. АНАЛОГИЯ И ДЕДУКЦИЯ
В предыдущем разделе использовано понятие преобразования правил и объяснен принцип аналогии в дедуктивной системе. С точки зрения заданных объектов Sb S2 выведенные атомы а 巨 Mi(^) в общем случае логически не следуют из S『,поэтому вывод, заданный в предыдущем разделе, если так можно сказать, находится строго «над» дедуктивными выводами. Однако случай известного парного отношения ср можно считать своего рода дедукцией. На самом деле атом а 三 Afj(-*) логически выводится из суммы аналогий Si и S2, определенной ниже.
Сумма аналогий ——это ограниченное множество правил, состоящее из следующих подмножеств:
(R1) множества правил, определяющих парное соответствие ср,
(R2) «копий» Si и S2,
(R3, множества правил, выполняющих преобразо^ вание правил.
Прежде всем для определения (R1) введем предикат ~.у
Для каждого элемента 〈厶 f'〉, принадлежащего ср имеет место £ 〜 f.(9 舒
Для функции Д существующей одновременно в S】,S2t f(X],篇)"餡….,厶)一
_X[〜匕,…,£ 〜y%.(9.4)
PAIR(cp) — это множество, состоящее из правил (9.3) и (9.4).
Лемма 9.1. Для парного соответствия 屮,терма t в S] н терма『в S? следующие два утверждения эквивалентны: 〈力,〉三屮+ и PAIR®) Lf 〜匕
Затем построим копии Sz. Для того чтобы подчеркнуть принадлежность каждого предиката р множеству Sj, присвоим ему индекс,и будем писать Тогда copy (Sj) —это множество правил, которые Дают возможность применить эту операцию к S「
Правила, которые делают выводы, основанные на преобразованиях правил, можно задать следующим образом: используя предикат 〜и введенный выше предикат присвоения индексов copy(S;).
Для каждого правила
действующего для непустого Si, построим новое правило суммы аналогий, состоящее из правил
〃(旷1,卜力—
Sj ~%,…,s^ ~九,
g2 (匕,Ю
...(9.5)
Для каждого правила
действующего для непустого S2, по аналогии с (9.5)
Глава 9Глава 9278
Глава 9
Глава 9
поставим в соответствие правило
/Л(叫,。• •,呼%)*,
吃〜匕,Wn ~纵, 匕〜Si,・• •,Vk~ s^ «2 ($[,・••,*), ?I (^b • * • > 厂也),
・.・(9.6)
Определение 9.6. Сумма аналогий для парного соответствия 屮 между Si и S2 ——это сумма множества правил, определенных в (9.5), (9.6), и множеств copy(Sj), copy(S2), PAlR((p). Обозначим эту сумму, аналогий через S[(pS2.
Пример 9.2. Пусть
S] = {р (а, 6),
р(/(Х),吁 р(Х, »},
S2 = {р (f (с), d)}, 屮=&, f(c)〉,(6, d〉}・
Тогда Si(pS2 — это множество
卩(/(X), 0 + pi (X, 6),
小(呼I,吃)~f(x)〜取I, b〜吃,
m (К办
P2亿,г2),
卩2 (/©, %
a 〜f 3), b " d> f(X)^f(Y)<-X ^Y}t
Аналогии в случае известного ф можно приписать свойства дедукции из суммы аналогии.
Теорема 9.1, Для атома р (/ь ..., %) утверждения
р(%,・・・,%) w М《・),
2)Si(pS2 н m(S・.・,〃) равнозначны.
Доказательство найти в статье D.Доказательство найти в статье D.интересующиеся читатели могут
Доказательство найти в статье D.
Доказательство найти в статье D.
9J.3. ЛОГИКА ПЕРВОГО ПОРЯДКАДЛЯ АНАЛОГИИ
Еслн для заданных Si и S? парное соответствие ср «обнаружено» и известно, то теорема 9.1 утверждает,
что аналогия с помощью ср ——это дедукция из суммы аналогий 5^52, Следовательно, наиболее важной проблемой при аналогии следует считать метод обна
ружения ф.
Следуя определению парного соответствия, данного в предыдущем разделе, под ф можно было бы
понимать простое ограниченное отношение между термами. Но в действительности на 屮 зачастую накладываются дополнительные ограничения. В данном
разделе мы рассмотрим частичную эквивалентность термов как одно из таких ограничений, а парное соответствие ф, удовлетворяющее такому ограничению, назовем частичным тождеством. Кроме того, определим логику первого порядка (множество логических формул), включающих как параметр частичное тождество ф, и покажем, что проблему обнаружения ср можно свести к проблеме получения ①,не противоречащего такой логике первого порядка.
Как следует из определения 9.1 парного соответствия ф и леммы 9.1, необходимо, чтобы(р+ удовлетворяла аксиоме
ЛО:/(ХЬ爲)〜f(%, ・・.,%) +
Х[〜Ki, X"〜У 拉.
Соответствующее отношение (р+ не всегда является взаимно однозначным. Например, пусть в $ а, b — обозначения констант, a on—обозначение функции двух переменных, в S?— константы а', Ь\ с', функция on, тогда рассмотрим парное соответствие
(p = {@ 箇),© 6〉,〈0, on (a1 犷))}.
Q Haraguchi М., Arikawa S. A Foundation of Reasoning by Analogy. Analogical Union of Logic Programs. — Proc. Logic Programming Conf.— 1986, Jun” Tokyo, pp. 103—110.
Для такого 屮 巨 ф+, т. е. два в соответствие что отношение лено подобие,Для такого 屮 巨 ф+, т. е. два в соответствие что отношение лено подобие,〈с, on(а\ b'))t <оп(а, &),。口(优力)〉w различных терма в U(Si) поставлены одному терму в U (S2). Это означает, между областями, в которых опреде- не то же самое, что эквивалентность
Для такого 屮 巨 ф+, т. е. два в соответствие что отношение лено подобие,
Для такого 屮 巨 ф+, т. е. два в соответствие что отношение лено подобие,
между областями.
Определение 9.7 (Харагути). Если для парного со- ответствия ф отношение (р+ является взаимно однозначным, то ср назовем частичным тождеством.
Для того чтобы (р являлось частичным тождеством, необходимо в дополнение к Л о ввести следующие
новые аксиомы:
4:Y = 2Z —X 〜У, X 〜Z,
% : У = iZ У 〜X, Z 〜X.
Здесь《=沙 обозначение предиката структурной эквивалентности термов (в смысле возможности унификации). Более строго в соответствии со следующей логикой первого порядка EQi (теории эквивалентности), введенной Кларком, «=,》можно определить так, как указано ниже.
Логика первого порядка EQ,:
для различных констант с, d (с 声 用,
для различных функций f, g
f (X;,・• .,Хп)声 tg (匕,…•,Уm),
для константы с н функции f
f (X!, . . . , Хп)关 /С,
для терма / [X] с переменной X, отличного от X
для функции f'
Х/ = У/ + /(Х],・一,Х") =/(九…,У)
6)Х = Е
/(X],XJ =/餡,…,〃)一
— Х[ = Уь Хп =
Р(АЬ Х")-М二}…篇=乙,
При этих условиях для термов 厶 s в $, не содержащих переменных, утверждения 《EQ. 1 s = /》и 《5 и / структурно равны» равнозначны. С помощью EQj можно следующим образом определить логику первого порядка СТ (ср), которая дает условия того, что ⑶ является частичным тождеством.
CT((p)= EQ】UEQ2U{4, 4, 4}Оф.
Здесь U означает сумму множеств логических формул Теорема 9.2. Для парного соответствия ср следующие два условия равнозначны:
ср—частичное тождество, 一
СТ (ср)——непротиворечивая логика.
Если модель СТ (ср) существует, то она определяется однозначно, с точностью до обозначений, в этом смысле частичное тождество ср можно назвать моделью СТ (ср). Из приведенных выше рассуждений можно следующим образом построить механизм аналогии на основе частичного тождества.
Для заданных представлений объектов S\ и S2 проблема выводов по аналогии разбивается на две подпроблемы. Первая ——проблема обнаружения подобия, а именно: это проблема получения ср, для которого СТ (ф) непротиворечива. Вторая — вывод новых фактов по дедукции из суммн аналогии З^Зг для полученного ср.
В общем случае оценка непротиворечивости логики —алгоритмически нерешаемая проблема. Однако, к счастью, если частичное тождество ср определено, то сразу же можно рассмотреть процедуру вывода из Si(pS2. В следующем разделе мы изучим свойства частичного тождества и приведем процедуру выводов из суммы аналогии.
РЕАЛИЗАЦИЯ МЕХАНИЗМА АНАЛОГИИ
Выше было введено понятие частичного тождества (определение 9.7) и показано, что проблема обнаружения частичного тождества ср равнозначна обнаружению непротиворечивости логики СТ((р). В данном разделе дадим условия обеспечения частичного тождества заданных парных соответствий. Кроме того,
рассмотрим метод реализации механизма аналогии, выполняющего выводы на основе 屮,если с помощью этих условий обнаружено частичное тождество 屮.Основные этапы реализации состоят в следующем.
PL Предварительно получим парное соответствие между моделями множеств определенных предложений, затем будем не только преобразовывать правила, но и одновременно с преобразованием проверять согласование частичных тождеств, частично определив тем самым 屮.
Р2. Объекты аналогии описываются в виде множества определенных предложений, поэтому для преобразования правил воспользуемся конкретизацией и правилом «модус поненс》в системе обработки логических программ (в данном случае интерпретатором Пролога).
В процессе преобразования правил для выводов по аналогии на основе подобия как «структурного частичного тождества» (Харагути) накладывались условия согласования правил на основе некоторого частичного тождества. Кроме того, в системе выводов по аналогии Уинстона, использующей фреймовые структуры как внутреннее представление объектов, априори вводились условия, соответствующие максимальному частичному тождеству, q?, а уже затем делалась аналогия. В рассматриваемом ниже методе 屮 определяется так, как указано в Р1, поэтому нет необходимости заранее знать ф. Отметим также, что Уинстон, используя входной интерфейс, предварительно обрабатывал структуры с целью получения дедуктивных выводов, а в данном методе дедукция делается только при необходимости. В этом состоят наиболее явные отличия этих методов.
ПОДОБИЕ КАК ЧАСТИЧНОЕ ТОЖДЕСТВО
Частичное тождество q)( введенное выше, — это отношение термов, задающее частичную тождественность областей Эрбрана U($). В общем случае парное СО' ответствие 屮 задает отношение 出屮出 атомов а(: в S/ (определение 9.3), а частичное тождество — взаимно однозначное отношение атомов.
Лемма 92 Для частичного тождества 中 ID (ср) = {(a, 01aqM% р е М2,。呻}
отношением атомовотношением атомовявляется взаимно однозначным
отношением атомов
отношением атомов
в Mi и М2.
Из этой леммы следует, что частичное тождествоф задает частичную тождественность М】и М2. Если использовать обобщенное графическое представление (Плоткин), то этот факт можно иллюстрировать так, как на рис. 9.8. На этом рисунке переменные X/ введены для представления пар〈% 力 из(р+. Кроме того, с помощью Xj запись р(^, .. t^^p^ ../:) представляется в виде логической формулы Р (Х1, Х/2).
Для реализации аналогии на основе такого частичного тождества рассмотрим условие, гарантирующее, что заданное парное соответствие 屮 является частичным тождеством.
Определение 98 Следующее условие для парного соответствия 屮三 U(Si) X U(Sz) назовем расширенным условием частичного тождества и обозначим его как EPIC 1).
Условие: пусть《,*〉三屮,隔 f;〉w(p, a term (Хр ...,X%) —терм, не содержащий констант. Тогда не существует《,Г>〈§,仇 term (Х° …,Xj таких, что
/ = term^p J) &,=# term (g, • • •, Q,
/ =# term(/p ...,厶)&,= term(4,{)•
Ml即Ml即Y'MMjiX)”" X户 <h U>Ed*Рис. 9,8. Частичное тождество Mi и Мг・Y'MMjiX)”" X户 <h U>Ed*Рис. 9,8. Частичное тождество Mi и Мг・
Ml即
Ml即
Y'MMjiX)”" X户 <h U>Ed*
Рис. 9,8. Частичное тождество Mi и Мг・
Y'MMjiX)”" X户 <h U>Ed*
Рис. 9,8. Частичное тождество Mi и Мг・
D Сокращение слов Extended Partial Identity Condition (расширенное условие частичного тождества). — Прим. nepeet
Теорема 93 Необходимым и достаточным условием для того, чтобы 屮 было частичным тождеством, является EPIC.
EPIC по существу обеспечивает возможность уни- фикации и играет важную роль при реализации системы выводов, но об этом мы узнаем в следующем разделе,
232 РЕАЛИЗАЦИЯ СИСТЕМЫ АНАЛОГИИ
В данном разделе будет дана процедура вывода от цели к фактам факта а 三 М,(*) для некоторого частичного тождества ср. По определению ММ*) включает минимальную модель Mi множества S^ и является минимальным множеством, замкнутым относительно применения правил, полученных при их преобразовании. Следовательно, искомая процедура вывода состоит из двух процедур:
R1) интерпретатора, который считает 5上 логической программой и выполняет ее процедурную интерпретацию;
R2) процедуры, выполняющей преобразование правил от цели к фактам.
В качестве интерпретатора рассмотрим интерпретатор чистого Пролога. Тогда указанную выше процедуру вывода можно считать логической программой, расширяющей этот интерпретатор. Для преобразования правил в процедуре R2 необходимо определить, на основе какого част?1чного тождества выполнять это преобразование. С этой целью сначала априори зададимся некоторым частичным тождеством ср и рассмотрим метод выводов с фиксированным 屮. Однако это не эффективно в следующих случаях:
для заданных Sj и S2 может существовать несколько ср, поэтому для определения подходящего ср, следуя некоторому порядку действий, потребуется большой объем вычислений;
подходящих для аналогии 屮 также может быть несколько, поэтому выбор только одного из них суживает возможности выводов.
Процедура вывода, приведенная в данном разделе, одновременно с определением некоторого частичного тождества 屮 для атома а в S( показывает с помощью
^е^ннзма выводов от цели к фактам, используемого Прологом, что awM(*・). Объясним действия этой пронепурЕ на простом примере. Задаем э^ 謬 недуре следующие 5】н &: Р°
S[ = {/3, с), /и (а, Ь), gf(X, Z)-p(X, У), "У, Z), Р( Л (X, У), p(Xt Y)<-m(Xt У)},
S2 = {小(鼠,旷),/(У, e‘)}.
Зададимся для этих Si н S2 H некоторого частичного тождества ср начальной целью
[gf («\ с7)^М2 (*)].
В этот момент никакой информации о ф не задано. Процедура вывода прежде всего проверяет безотносительно 屮,является ли gf(a',c,) логическим следствием §2, то есть атомом в М2. В случае неудачи процедура пытается преобразовать правила $. g/(。',с')柒 乂2, поэтому конкретизируем правило Si:
gf(x, z)-p(x, У), f (匕 Z)
и преобразуем его. Для конкретизации сгенерируем подцель:
-[р(Х, У), f(y, Z) в SJ
получим решение 0 = {а/Х, b/Y, c/Z}, с помощью некоторого ср выполним преобразование
gf (а, с)<~р(а. Ь), № с)
刘「八元:五).
По определению преобразования правила для
и = {〈〃,储〉,〈с, с'〉,〈〃,X» © X»,〈仇 Хз〉,〈% Х0}
(9.7)(9.7)должно быть справедливо ЭфЭ^э^з/зЭ^ к^Ф+].
(9.7)
(9.7)
Благодаря определению достаточности формулы (9.7) частично получаем 屮.С этой целью используем следующую лемму.
Лемма 93 Пусть а — ограниченное множество пар термов, не содержащих переменных. Тогда необходимым и достаточным условием существования некоторого частичного тождества, такого, что о 三 屮+, является условие EPIC для а.
По этой лемме формулу (9.7) можно привести к виду
В^^ХгЭ^зЗ^ [а удовлетворяет EPIC]. (9.8) Процедура вывода, определив Хь X* Хз, X* для которых а удовлетворяет EPIC, частично получает 屮, используемое для преобразования правил. Поставив в соответствие 优 и Xi для терма а в Si, EPIC задает (частичную) эквивалентность областей Эрбрана Si и *2, поэтому в S2 должно быть справедливо а' = Х〔・ Аналогично для термов & и с в Si должны быть справедливы 先=Хз и с' = X% В конце концов утверждения «существует некоторое частичное тождество, которое делает возможным преобразование исходных правил» и «множество равенств
® = Х“ Х? = Хз, с' = Х|} •(9.9)
имеет решение» равнозначны. Здесь знак《=》означает отношение структурного равенства термов, поэтому через возможность унификации можно проверить существование решения. В данном случае решение дает замена
,8 = {a7儿,Х3/%,c‘/XJ
а формулу (9.8) можно привести к виду
тХз[и8={〈а, а'〉,〈> Х3),〈с, с'〉} удовлетворяет EPIC].
Таким образом, получаем преобразование правила
@」〃, с)г〃(〃, р), № с)(9 [°)
Далее, для получения Х3 генерируем подцель
«■[рЗ, Хз), /(Хз, с') w №(*)]・
Здесь р(。', Хз)柒 М2> поэтому по аналогии с вышеска- занным выполним преобразование правила, а именно:
конкретизируем
р(Х, У)-"%, у)
и проверим преобразование правила
Pk X3KX4, &)•
Далее, аналогично сформируем парное соответствие
0尸 © 鼠〉,〈6 人〉,g X》 g /〉}.
Здесь необходимо проверить, что это и предыдущее преобразования выполнялись на основе одного и того х《е частичного тождества 屮(это назовем проверкой согласования). Для этого используем следующую лемму.
Лемма 94 Пусть ть т2 — ограниченные множества пар термов. Тогда необходимым и достаточным условием для существования некоторого парного соответствия ф такого, что Ti 屮 + и тг 三屮十,является условие EPIC для 口 U 盯
По этой лемме для текущего преобразования ⑴ и предыдущего преобразования и® можно получить Хз, Х《и Х5, для которых
(т9 U (Ti = {(«,吟,〈瓦 Хз〉,〈с, с'〉,〈仇 а'〉,〈с,心, 色九〉,〈& /〉}
удовлетворяет EPIC. В данном случае а/ ставится в соответствие а и bf но а = b не справедливо, поэтому указанных выше Х3, Х4, Х5 не существует, и введенные преобразования правил отвергаются как неподходящие. В этом случае процедура вывода осуществляет возврат управления и конкретизирует еще одно правило для р
р(х, п^^(А\ Л
и проверяет преобразование
р(а, Ь) <— т (а, &)
卩亿 Хз) —/"(X], Х5)
Далее, аналогично выполняется унификация для
11 = {〈0,後〉,〈" 4〉,g。‘〉,〈。,X〉© %〉}
и получается преобразование
р(а\ 爲)*-加% %)
Далее, для получения Х5 генерируется подцель
<-[/л (鼠,Х5) в S2],
из решения Ьг/Х5 следует, что m{ar, br)^ Mi, поэтому П приведем к виду
П‘ = {〈。,〃'〉,〈> 犷〉,G с'〉}・
Множество г/ удовлетворяет EPIC, поэтому очевидно, что
g〃优,cf) е М2 (*)
справедливо для частичного тождества 屮,такого, что «三
Таким образом, процедура вывода процедурно интерпретирует программу на чистом Прологе, вь卜 полняет преобразования правил и проверку их согласования, идя от цели к фактам. Преобразование правил и проверка согласования по существу заменяют унификацию термов. На рис. 9.9 приведена основная часть программы на Прологе, реализующая указанную выше процедуру вывода.
Прежде всего предполагается, что факт Л и правило С —吕,…,Вп множества Si накоплены в базе данных Пролога, преобразованные с помощью предиката fa* в вид
fact[(4)<-
fact[ (С) —fa* (当),・・・,factt (BJ.
Точно так же факты и правила S2 о помощью fact2 преобразованы в предложения Пролога. Цель (Goal) а е Mi{^) для процедуры вывода представляется через предикат fact, (а) и передается основному предикату ana программы на рис. 9.9.
Вторая переменная Epic и третья переменная Epio' предиката reason (причина) принимают в качестве значения множество пар терминов, представлен- ньдх в виде списков, первая переменная Goal прини- мает значение цели процедуры вывода. Предложения
с С2 по С4 — блок интерпретатора чистого Пролога. Prematch (подбор) в теле предложения С5 этой программы —это предикат поиска возможных правил для преобразования правил. Предикат trans(преобразование) вводит новые переменные и выполняет преобразования правил, полученных с помощью prematch. Как указано в примере, преобразование правил с помощью унификации и других методов заканчивается в четвертом литерале предложения С5 и далее. Предикат Epic получает множество равенств из списка (множества) пар терминов и осуществляет унификацию в соответствии с леммой 9.3. Проверка согласования на основе леммы 9.4 выполняется в пятом и шестом литералах в теле предложения С5.
В результате reason (Goal, Epic, Epic') наряду с преобразованием правил для заданных Goal и Epic в соответствии с леммами 9.3 и 9.4 конкретизирует список пар терминов Epic, получая как множество
(Cl) ana (Goal)
:—reason (Goa1, [ ], Epic).
(C2) reason (true, Epic, Epic)
:—I.
(C3) reason (Goal, Goal), Epic, Epic2)
:-!,
reason (Goal, Epic, Epicl), reason (Goal, Epicl, Epic2).
(C4) reason (Goal, Epic, Epicl)
:—clause (Goal, Goals), reason (Goals, Epic, Epicl).
(C5) reason (Goal, Epic, Epic3)
:—prematch (Goal, Sgoal, Sgoals), reason (Sgoals, Epic, Epicl)»
trans (Goal, Sgoal, Sgoals, Tgoal, Bind), epic (Bind),
append (Epicl, Bind, Epic2),
epic (Epic2),
reason (Tgoals, Epic2, Epic3), epic (Epic3).
Phc. 9.9. Программа на Прологе для аналогии.
пар расширенный список терминов Epic' и рекурсе но вызывает предикат reason. Частичное тождество <р получается поэтапно благодаря рекурсивному вызову этого предиката. Данная система аналогий реалнзот вана с помощью C-Пролога на компьютере DCL.
В заключение приведем достаточно сложный при мер аналогии. Приведенные ниже S】и S? взяты из примера, который Уннстон составил по трагедии Шекспира《Макбет》. Аргументы предикатов, начи^ нающиеся с прописной буквы,— это переменные, а начинающиеся со строчной ——константы. Системе аналогий задан вопрос: убил (X, придворньш_а) в Sj? а именно, кто убил придворного_а? Строго говоря, вопрос имеет вид: аналогия (факт2 (убил(Х, придвор- ный^а)))? Выполняя аналогию с использованием Si, система примерно через 20 секунд получила ответ: X = прыдворный-Ь, т. е. мог убить придворный-6.
5( = {корыстолЕобивая(ледимак), женат(мак, ледимак), безвольный(мак), хбкоролевой1)(ледимак:), король (дункан), преданиый(макдуфф, дункан), злон(мак) <- безвольный(мак:) & женат(мак, X) &. корыстолЕобивый (X), убийца (X, У)《женат (У, X) & безвольный (У) & корыстолюбивый (X) хбкоролем(мак) «- убеждает(ледимак, мак) & хбкоролевой(ледимак), убийца(Убийца, Король) ^король
(Король) & хбкоролем(Убийца)& злой(Уб[[йца), убил(Преданный, Убийца) <- убийца(Убийца, Ктот。)& преданный(Преданпый( Ктото)}
$2= {npHABopHbii1(npHABopHbiii__a)f леди(леди__а), король (король —а), прндворный(придворный_Ь), преданный(прндворный_Ь, королька), >кенат(придворный_а, леди_а), безвольный(прндворный_а), корыстолЕобивая(леди_а), хбко ролевой (леди _ а) вопрос:. у6нл(Х, придворный_а) (в S2) ответ: X = придворный_Ь
ПРОБЛЕМЫ, КОТОРЫЕ ПРЕДСТОИТРЕШИТЬ В БУДУЩЕМ
В данном разделе рассмотрены принципы аналогии для логической импликации, и показана возможность унифицированной реализации аналогии и Дедукции благодаря формализации аналогии в рамках хорнов- ской логики. В частности, существенное достоинство реализации механизма аналогии на основе частичного тождества с помощью логических программ заключается в том, что этот механизм создает естественное расширение интерпретатора Пролога и его унификацию. Вместе с тем в процессе теоретических исследований! и практической реализации, начало которому положила связь логики равенств и аналогии, возникло немало проблем. Кратко познакомимся с некоторыми из них.
Здесь были рассмотрены только принципы аналогии для импликации,-но желательно изучить также аналогию для логических отношений более высокого уровня, чем импликация. Для обсуждения принципов аналогии на таком уровне, сохраняющих согласование с дедуктивными выводами, необходима теория типов отношений.
Аналогия была формализована в рамках хор- новской логики, поэтому не была описана обработка негативных знаний, но в общем случае можно рассмотреть устранение избыточной аналогии с помощью негативных знаний. Проблема аналогии и негатив- ных знаний имеет глубокую связь с выводом М-опе- раторов в немонотонной логике, что можно считать расширением теории аналогии, которая обсуждалась в данной главе.
Одна из главных целей исследования аналогии _ ее приложение к автоматическому синтезу и преобразованию программ. Это также тесно связано с проблемой создания пакетов программ и их повторного использования. На практике повторно используемые программы можно рассматривать как программы, в которых абстрагируются некоторые общие стороны нескольких программ. Следовательно, теория н методология абстрагирования подобных программ (в данном случае логических программ) будет
строиться на основе теории аналогии между моделями, рассмотренной в данной главе.
Еще одна из целей исследования аналогии — изучение связи аналогии с другими выводами и построение единой системы выводов. Для этого необходимо, в частности, обсудить связь индуктивных выводов и аналогии. Более конкретно, видимо, можно повысить эффективность системы индуктивных выводов благодаря тому, что при генерации гипотез с помощью индуктивных выводов производить частичный отбор (множества) правил, используя преобразование правил. А в качестве операции отбора правил достаточно рассмотреть некоторое расширение принципа преобразования правил, указанного в данной главе (Арикава).
Таким образом, можно привести ряд разнообразных проблем как с теоретической, так и с практической точки зрения. В будущем необходимо продолжить эти исследования.
ПРИМЕНЕНИЕ ИНДУКТИВНЫХ ВЫВОДОВИ АНАЛОГИИ
Как следует из материалов этой главы, индуктивные выводы и аналогия — это сравнительно новые методы обработки интеллектуальной информации, а для человека — это естественные выводы, и их теоретические исследования в настоящее время ведутся достаточно активно. Следовательно, сейчас можно рассматривать разнообразные приложения этой теории в плане повышения уровня использования компьютеров, в основе которого лежит обработка интеллектуальной информации. В данном разделе хотелось бы ознакомить читателя с некоторыми областями применения 9Toй теории и обсудить новые формы применения индуктивных выводов и аналогии.
轧4J. ПРИМЕНЕНИЕ ИНДУКТИВНЫХ ВЫВОДОВ
Средн типичных областей применения индуктивных выводов отметим полуавтоматическое приобретение знаний в экспертных системах, автоматический синтез программ по примерам в области интеллектуального
программирования, полуавтоматическую отладку и другие области.
Применение для приобретения знаний имеет два основных аспекта: систематизация данных, при кото- рой из собранных данных и данных наблюдения извлекается некоторое общее правило, и передача зиа~ ннй, суть которой ——в получении знаний от эксперта. В первом случае индуктивные выводы, которые рассматривались до сих пор, можно использовать в неизменном виде. Примерами служат экспертная система Meta-Dendral и система обработки интеллектуальной информации на базе Пролога в проекте ICOT °. Во втором случае теорию индуктивных выводов нельзя применять в чистом виде, но в последние годы исследования Англюна в йельском университете, США, теоретически развили это направление, и с этими исследованиями связывают определенные надежды.
Применение индуктивных выводов к автоматическому синтезу программ по примерам, как видно из первой части гл. 8, было исследовано еще несколько лет назад. Однако этим исследованиям не хватает последовательности в части формализации выводов и разнообразия объектов, хотя развитие системы вывода моделей Шапиро, рассмотренной во второй части гл. 8, позволяет надеяться на практическую реализацию автоматического синтеза логических программ. Однако следует отметить, что до поистине широкого применения остается решить еще немало проблем, таких, как разработка способов сужения пространства поиска, необходимого при перечислении предположений (в данном случае логических программ), проблема введения так называемых теоретических терминов, и других проблем. Кроме синтеза программ с помощью системы вывода моделей за последние годы опубликованы два примера применения индуктивных выводов в редакторах, являющихся средством общения человека с компьютером. Один из призеров—система ввода данных, разработанная Си-
и Проект ЗВМ пятого поколения Токийского института вычислительной техники новых поколений (1СОП. — Прим, перев.
нохара. В ней применены методы вывода образных языков, объясненные в гл. 7, но практически время, необходимое для вывода, должно расти не быстрее, чем полином от времени характерной реакции человека. Второй пример — система редактирования по примерам, предложенная Никсом; она автоматически синтезирует программы для размещения в реляцион^ ной базе данных конкретных входных данных. Оссь бенность этих двух систем состоит в том, что они реализованы на основе теоретических результатов.
Разработка программ всегда сопровождается отладкой, для частичной ее автоматизации можно применять систему вывода моделей Шапиро. Это главная тема его докторской диссертации, ее основной результат—алгоритм слежения за противоречивыми точками ——изложен во второй части гл. 8, а именно: если в логической программе, которую предстоит разработать, оказались ошибки, то эти ошибки вкрались в программу в какой-то момент. Следовательно, считая разработчика программ предсказателем и спрашивая его об истинности операторов наблюдения^ можно обнаружить предложение с ошибкой. Это новый интересный пример применения индуктивных выводов.
ПРИМЕНЕНИЕ АНАЛОГИИ
Аналогия в каком-то смысле более естественный метод вывода для человека, нежели индукция, поэтому можно рассматривать ее различные применения. Классический пример — прогнозы и решение задач, именно они стимулируют теоретические исследования аналогии, рассмотренной в данной главе. Кроме того, аналогию можно применять для преобразования знаний человека в знания для экспертных систем. В настоящее время еще только подходят к исследованиям машинного перевода на основе аналогии, объектом которой служат оригинальные тексты и их переводы на другой язык ——как естественный, так и технический, но, видимо, скоро и это будет возможным.
Аналогию можно применять также при разработке программ. Как правило, при разработке значительная
иасть работ сводится к повторному применению существующих программ. С этой целью часто используются программы, подобные программе, которую предстоит разработать. Ниже приведем пример такой программы. Допустим, что уже разработаны (логиче- ская) программа обратной перестановки элементов списка rev:
S[ = {&,&},
& : rev([],[]),
C2 : rev ([/|Xs], W) <- rev (Xs, Zs),append (Zs, [X], W)
и программа append конкатенации списков. Поставим себе целью составить программу fullrev обратной перестановки элементов списка, которые в свою очередь являются списками. Это программа, которая, например, с успехом выполняет следующие действия:
^ c ^u^ c ^u:fullrev ([],[]),
^ c ^u
^ c ^u
:fullrev ([1, 2], [2, 1]),
:fullrev ([1, 2], 3, [4, [5, 6]]], [[[6, 5], 4], 3, [2, 1]]).
Для простоты с самого начала будем использовать Сз как часть целевой программы:
$2 = {&}‘
Для текущего S2 результат С4, разумеется, не мо- 〉кет быть получен. Поэтому выведем С4 с помощью преобразования правил Si. Практически на основе парного соответствия
Ф = {〈[],【]〉,〈1, 1〉,⑵ 2〉, (append, append), (rev, fullrev)}
с помощью преобразования правил
rev(【X|Xs], lb) —rev(Xs,Zs), append(Zs, [X], Щ
fullrev([1, 2], [2, 1]) <-fullrev ([2], [2]), append (⑵,[1】,[2, 1])
а также преобразования
Г吧00L图)上三^/」1厶」」L.叱1)士也(口」2в」型
fullrev("[2], [2])<-fullrev([ ]Л~\1 append^ ], [2], [2]) очевидно получим
fullrev([l, 2], 2 1])三m2(*).
Таким образом, добавив в S2 c помощью ф правило Si, выполняющее преобразование правила, получим
52={Q:fullrev([ ], [ 1).
С7: fullrev([X| Xs], IK)<—fullreY(Xs, Zs), append (Zs, [X], U^).}
Но это S2 приводит к неудаче для С5. Кроме того, не- упачно введение нового правила, полученное только что с помощью преобразования правила. При этом впервые вспомним о том, что можно вызвать атом условия и процедуру генерации новых предложений программы для индуктивных выводов. Действительно, добавив в тело С7 атом условия atom (X) и вновь сгенерировав
C8:fullrev([Х| Xs],吩―
fullrev(X, У), full「ev(Xs, Zs), append(Zsf [Y], ”),
можно получить целевую программу S2-{C6:fullrev([],[]).
С7: fullrev([X| Xs],步)—atom(X), fullrev(^5, Zs), append(Zs, [X], IF).
C8 : fullrev([X I Xs], W *-fullrev(X, У), fullrev(Xs, Zs), append (Zs, [У], W).}
Таким образом, применяя индуктивные выводы к аналогии, по группе известных программ можно разработать новую требуемую программу. Эта проблема к настоящему времени еще недостаточно изучена, но является актуальной прикладной проблемой.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
Абстрагирование пропозицион- пое 26G
Автомат 152
Аналогия 262
Атом 251, 272
—порождающий 252
База данных 160
дедуктивная 171
реляционная 161
—знаний 15
Вложение 148
Вывод грамматический 180
—индуктивный 179, 217
—логический 16
—моделей 250
—правил 179
—функций 182
Гипотеза 251
—закрытых миров 174
—открытых миров 124
Грамматика определенных
предложений 106
—контекстно-свободная 106
Данные отрицательные 181
—положительные 181
Дедукция 20
Демон 268
Диалог 86
Заключение 251
Избыточность 174
Извлечение знаний 72
Идентификация в пределе 183
— конечная 198
Кодирование рекурсивное 188
Компиляция знаний 45
Композиция знаний 45
Коннектионист 143
Конкретизация 274
Координация знаний 47
Кортеж 161
ЛИСП-программа 238
регулярная 245
Логика пороговая 138
Машина выводов 181
—Тьюринга 180'
—экстраполяционная 192
Мера сложности 189
Миры грамматики 97
—предыстории выбора 117
■— связей 117
—словаря 97
Множество перечисляемое 185
Модель 252
—интерпретационная 93
—минимальная 272
—мультииерархмческая 92
—оверлейная 125
—пертурбационная 127
—пользователя 125
—разностная 126
Модус поненс 274
Наблюдение 253
Ыеокогнитрон 134, 140
Область понятий 95
—предметная 91
—Эрбрана 251
—языка 95
Обобщение 47
—минимальное 23
Образ 224
Предметный указатель
Обучение параметрическое 24, 134
—по аналогии 25
.—понятиям 143
—по примерам 19
—эвристическое 13, 26
Ограничение целостности 168
Оператор наблюдения 251
—уточнения 129
Операционализация знаний 18
Опрос критический 87
—с наводящими вопросами 84
—структурированный 84
Открытие 13
Отношение 161
— виртуальное 175
Отождествление 96, 273
Падеж агентивный 104
—инструментальный 104
—объектный 105
Перестановка 207
Перечисление 185, 253
Перцептрон 136
Подобие 271
Подстановка 227
Подчиненность многозначная 169
—функциональная 169
— цепочечная 169
Поиск 161
Покрытие 148
Полуабстрактность знаний 64
Понятие 96
«Почти то» 144
Правило 271
一 обобщения 20
'альтернативного 24
一 一структурного 24
Предложение 251
—определенное 271
—хорновское 251
Предположение 183
—сверхобобщениое 220
Предпосылка 251
Предсказатель 252
Представление 175
—полное 215
—положителььЕое 215
■ правильное 182
Предыстория выбора 104
Преобразование правил 273
Процедура рекурсивная 187
Процедурализация знаний 45
Психология байесовская 39
—бихевиористическая 28
—математическая 37
Самонаблюдение 85
Самоотчет 85
Свидетельство конечное 220
Семейство языков 216
индексированное 216
сверхограниченное 217
Симметрия глобальная 148
一 сглаженная локальная 147
Система вопросов и ответов 91
—компьютерного обучения
91
—распознавания образов 133
—формальная 226
■ примитивная 228
——эквивалентная 227
—экспертная 72
一 ACRONYM 145
—DEBUGGER 128
—GAP 239
—Meta-Dendral 25, 72, 293
一 TEIRESIAS 17
一 THESYS 241
—UNDERSTAND 18
Скиммер 239
Слежение 257
Слово 216
Соответствие парное 272
Специализация 47
Спецификация 238
Стабилизация 48
Стратегия абстрагирования 266
Структурирование знаний 92
Сумма аналогий 276
Схема прагматических выводов 63
Терм 226
Тождество частичное 280
Точка неподвижная 187
—стабилизации 211
Трассировка 245
Уточнение 260
Предметный указатель
Файл 161
Факт 252, 272
Форма каноническая 228
一 основная графическая 274
Формализация 171
Формула 227
Фрагмент 242
Функция рекурсивная 183
—обучения 20
—с автоописанием 189
—частичная рекурсивная 183
—/i-простая 194
Шаг базовый 228
—индукции 228
Эквивалентность структурная 280
Эксперимент 252
Экстраполяция 192
299
Язык 216
—гипотез 251
—запроса по образцу 161
—логический 95
—наблюдений 251
—образный 224
—описания вычислений 6DL 248
—Пролог 95
—рекурсивный-216
—формальный 181
ВС-идентификация 199 ВЕСТ-идентификация 210 CONS-идентификация 204 СР-идеитификация 210 ЕХ-идентификация 184 ЕХп-идентификация 197 ЕХ^-идеитнфикация 198 LD-идеитификаиия 184 ЮагЬ-идентификация 207 ^-идентификация 202 1ргь.идентификация 207 М-выражение 242 NV-экстраполяция 193 S-выражение 238 TOTAL-идеитификация 211 WCP-идентификация 210
ОГЛАВЛЕНИЕ
5 75 7От переводчика-•. ■ •
5 7
5 7
Предисловие
ГЛАВА 1. ВВЕДЕНИЕ
С. Осуга ,
0 0 0 4 5 50 0 0 4 5 5Обучение ・
0 0 0 4 5 5
0 0 0 4 5 5
Как определить функции обучения?
Подходы к исследованию обучения
Приобретение знаний и овладение мастерством ,
Методы приобретения знаний
Этапы приобретения знаний
7 8 4 71 12 27 8 4 71 12 2Обучение без выводов и обучение с выводами на низком уровне
7 8 4 7
1 12 2
7 8 4 7
1 12 2
Основные принципы приобретения знаний из примеров
Этапы обучения по примерам
Приобретение знаний на метауровне
ГЛАВА 2. ВОЗМОЖНОСТИ ТЕХНОЛОГИЧЕСКИХподходов в психологии
Ю. Сазки, X. Судзуки
897123789 0249223444444 5555897123789 0249223444444 5555Введение
897123789 0249
223444444 5555
897123789 0249
223444444 5555
От наивного эмпиризма к психологии обучения .
Расцвет и падение математической психологии ,
Взгляды на обучение в науке о мышлении ...
25 Теория обучения ACT *
2-5,1. ДекларативЕ^ый этап и компиляция знаний
,2. Процедурный этап и координация знаний ,
Значение и проблемы теории ACT * ...,
2.6. Обучение человека .
. Проблема: почему так поздно начинает учиться человек? ..
Новая проблема: сложность среды ,..
Решение: зависимость обучения от знаний 2.7. Знания человека .
9 2 75 6 69 2 75 6 6g.7.L Проблема: специфичность области знаний
9 2 7
5 6 6
9 2 7
5 6 6
2、72 Решение: полуабстрактность знаний 2.8. Заключение'
ГЛАВА 3. МЕТОДЫ И ПРОБЛЕМЫ ИЗВЛЕЧЕНИЯЗНАНИЙ
X. Кобаса
Масса проблем ,,.
Инженерия знаний ,
Уровни приобретения знаний
Экспертные системы,..,
Извлечение знаний
Откуда извлекать знания?
Что извлекать?
Как извлекать знания?
Техника извлечения знаний
Заключение
ГЛАВА 4. ПРИОБРЕТЕНИЕ ЗНАНИЙ И ОБУЧЕНИЕВ ДИАЛОГЕ
Представление знании для диалога
Введение мультииерархической модели ...,
Логические языки и мультииерархическая модель
Смысл мутииерархической модели
Методы диалога
Внешние н внутренние язык»
Преобразование внешнего языка представления знаний
Диалог на естественном языке
Приобретение знаний и обучение в диалоге .....
Значение диалога в приобретении знаний ...
Значение диалога при обучении
ГЛАВА 5, ОБУЧЕНИЕ ПРИ РАСПОЗНАВАНИИ ОБРАЗОВТ. Китахаси
5,1. Введение
52 Модели сети нервных цепей• • ■
Обучающаяся система с учителем — перцептрон
Система, обучающаяся без учителя — неокогнн- трон
Новое направление — [<оннектнонист
5.3, Обучение понятиям по изображениям . . . • - ■- 531. От черно-белого изображения к описанию понятия
Обучение понятию•■ ■
54 Системы, адаптирующиеся к среде •
Автоматы, адаптирующиеся к среде
68697072767680818387686970727676808183879 9 5 6128 8 9 9 о G9 9 5 6128 8 9 9 о G°616222225°616222225133135136139143143144150151152158133135136139143143144150151152158Другие идеи
68697072767680818387
68697072767680818387
9 9 5 612
8 8 9 9 о G
9 9 5 612
8 8 9 9 о G
°616222225
°616222225
133
135
136
139
143
143
144
150
151
152
158
133
135
136
139
143
143
144
150
151
152
158
ГЛАВА 6. ПРИОБРЕТЕНИЕ ЗНАНИЙ, ХРАНЯЩИХСЯВ БАЗАХ ДАННЫХ
Ю. Танака
Базы данных и язык манипулирования данными,..160
Базы данных 160
Запрос по образцу (ЗПО) 161
Нежелательные обновления166
Ограничения целостности при обновлении базданных168
- Непротиворечивость и управление обновлением...171
Исключение избыточности174
Обработка неполной информации177
「ПАВА 7. ТЕОРИЯ ИНДУКТИВНЫХ ВЫВОДОВ
Аракава, Г. Синохара, Г. Мияхара
Основные понятия теории индуктивных выводов • . . 179
Индуктивный вывод функций182
Расширение идентификации в пределе197
Критерий, допускающий исключения, и критерий, имеющий ограничения на количество изменений предположений197
Критерий, основанный на сходимости с точки зрения действий программы198
Индуктивные выводы, удовлетворяющие естественным критеримя .. 202
Критерий с ограничением на область памяти . . 202
Непротиворечивые критерии204
Порядок указания данных207
Другие естественные критерии210
Индуктивные выводы в языках215
Индуктивные выводы из положительныхданных.,.219
Индуктивные выводы в формальных системах....225
Формальные системы и языки226
Ограничения формальных систем228
Индуктивные выводы из положительных данных о формальных системах , 230
Эффективность отрицательных данных232
ГЛАВА 8. СИНТЕЗ ПРОГРАММ ПО ПРИМЕРАМ
С. Аракава, М. Харагути
Автоматический синтез ЛИСП-программ238
82 Идентификация ЛИСП-программ в пределе243
CDL — реальные проблемы 248
84 Вывод моделей '250
8-4.1. Проблема вывода мозелЗ251
42 Алгоритмы вывода моделей254
Опровержение и уточнение гипотез256
4. Совершенствование системы вывода моделей . . 261
будущембудущем
будущем
будущем
ГЛАВА 9. ТЕОРИЯ АНАЛОГИЙ
С Арикава, М. Харагути
Направления исследований аналогии ....
.1. Аналогия при решении задач
Аналогия для предсказаний .,
Теория аналогии
Формализация аналогии
Аналогия и дедукция
^Тогика первого порядка для аналогии
Реализация механизма аналогии ....,
Подобие как частичное тождество ..
Реализация системы аналогии ,,.
Проблемы, которые предстоит решить в
Применение индуктивных выводов и аналогии
Применение индуктивных выводов ..
Применение аналогии
Предметный указатель
УВАЖАЕМЫЙ ЧИТАТЕЛЬ!
Ваши замечания о содержании книги, ее оформлении, качестве перевода и другие просим присылать по адресу: 129820, Москва, И-110, 1-й Рижский пер., д. 2, изд-во «Мир».
Учебное издание
Сэцуо Осуга, Ютака Саэки, X. Судзуки и др.
ПРИОБРЕТЕНИЕ ЗНАНР1И
Под. ред. С. Осуги, Ю. Саэки
Заведующий редакцией д-р техн, наук А. Л. ЩерсЗам. заведующего редакцией Э. Н. ВадиковНаучный редактор С. В. БогдасаровМл. редактор Ю. Л, ЕвдокимоваХудожник В. С. СтуликовХудожественный редактор Н. М. ИвановТехнический редактор И. И. ВолодинаКорректор Т. И. Стифеева
ИВ № 7071
Сдано в набор 12.05.89. Подписано к печати 29.11-89. Фор-мат 84XI08&2. Бумага книжн.-журн. Печать высокая. Гар-нитура литературная. Обьем 4,75 бум. л. Усл. печ. л. 15,96.Уел. кр.-отт. 16,20. Уч.-изд. л. 15,43. Изд. № 6/6601. Тираж25 000 экз. Зак. 179. Цена I р. Ю к.
Издательство ”Мнр" В/О „Совэкспорткнига" Государствен-ного комитета СССР по печати. 129820. ГСП, Москва,I - и Рижский пер., 2.
Ленинградская типография5^№ 2 головное предприятие ордена Трудового Красного Знамени Ленинградского объединения «Техническая кннга» им. Евгении Соколовой при Государственпом комитете СССР по печати 198052. ■ г. Ленинград, Л-52, Измайловский проспект, 29.
6 с. Осуга, IO. Саэки