Создание и развитие искусственного интеллекта

Создание и развитие искусственного интеллекта













Выполнил: 

Маслов Виктор студент 371гр.


Введение в искусственный интеллект



Начало современного этапа развития систем искусственного интеллекта (ИИ) может быть отнесено к середине 50-х гг. Этому способствовала программа, разработанная А. Ньюэллом, предназначенная для доказательства теорем в исчислении высказываний и названная «ЛОГИК-ТЕОРЕТИК». Некоторые авторы называют эту систему экспертной и связывают определение ее назначения с анализом ее возможностей, проведенных Клодом Шенноном и Марвином Минским.

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

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

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

Тем не менее, в последнее десятилетие это направление возродилось в виде исследований и разработок, направленных на создание экспертных систем с базой знаний. Их используют в управленческой деятельности и многих отраслях экономики (страховании, банковском деле и др.), чтобы с помощью правил и объектов, суммирующих накопленный опыт, повысить качество принимаемых решений.

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

Представление знаний — наиболее важная область исследований по искусственному интеллекту, основа всех остальных дисциплин. Знания имеют форму описаний объектов, взаимосвязей и процедур. Наличие адекватных знаний и способность их эффективно использовать означают «умение».

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

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

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

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

Машины обладают собственным языком для представления знаний и решения задач, т. е. набором символов, используемых для представления знаний (семантика), и правил, предназначенных для обработки этих символов (синтаксис) и решения задач. Человек работает наиболее эффективно, если он владеет специальными языками, которые развиваются до уровня потребностей конкретной предметной области.

Если правила трансляции с естественного языка в машинный и наоборот выражены в виде совокупности знаний (символов и процедур), то логично предположить, что могут быть разработаны средства, позволяющие компьютеру понимать постановку задачи на естественном языке, а затем на естественном же языке выдавать ее решение. Это основная тема исследований по разработке средств общения с ЭВМ на естественном языке. Здесь можно выделить четыре ключевые проблемы:

Машинный перевод — использование компьютеров для перевода текстов с одного языка на другой.

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

Генерация документов — применение компьютеров для преобразования документов, имеющих определенную форму или заданных на специализированном языке, в эквивалентный документ в другой форме или на другом языке.

Взаимодействие с компьютером — организация диалога между пользователем и компьютером.

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

Цель когнитивного моделирования — разработка теории, концепций и моделей человеческого мышления и его функций. Оно позволяет реализовывать не только диагностические и лечебные функции, но и выявлять процессы, протекающие в сознании человека при решении задач. Однако отсюда вовсе не следует, что лучшими компьютерами являются те, которые моделируют работу человеческого мозга, но можно сделать вывод о том, какого типа компьютеры нужны, как спроектировать компьютер, который бы расширил возможности мышления человека и позволил бы ему более эффективно решать задачи.

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

		разработка воспринимающих элементов (в частности, для визуальной информации) и распознавание информации, поступающей от систем восприятия;

		создание манипуляторов и систем управления ими;

		выявление эвристик для решения задач перемещения в пространстве и манипулирования объектами (планирование деятельности).

Анализ разработок в области нейрокомпьютерных систем позволил выделить перспективные основные направления современного развития нейрокомпьютерных технологий: нейропакеты, нейросетевые экспертные системы, системы управления базами данных и базами знаний с включением нейросетевых алгоритмов, обработка изображений, управление динамическими системами и обработка сигналов, управление финансовой деятельностью, оптические нейрокомпьютеры, виртуальная реальность.



Знания и модели их представления



Для специалистов в области искусственного интеллекта термин «знания» означает информацию, которая необходима программе, чтобы она вела себя «интеллектуально».

Функционирование средств интеллектуального интерфейса опирается на развитые методы работы со знаниями: их представление, хранение, преобразование и т. п.

Под термином «знания» при этом понимается вся совокупность информации, необходимой для решения задачи, включающая в себя, в том числе информацию о:

		системе понятий предметной области, в которой решаются задачи;

		системе понятий формальных моделей, на основе которых решаются задачи;

		соответствии систем понятий, упомянутых выше;

		текущем состоянии предметной области;

		методах решения задач.

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

Что же такое знания и чем они отличаются от данных в системах машинной обработки?

Знания — это целостная и систематизированная совокупность понятий о закономерностях природы, общества и мышления, накопленных человечеством в процессе активной преобразующей производственной деятельности и направленная на дальнейшее познание и изменение объективного мира.

Следовательно, интеллектуальная деятельность человека связана с поиском решений в новых, нестандартных ситуациях. Отсюда, задача называется интеллектуальной, если алгоритм ее решения априори неизвестен. При этом задача и ее решение понимаются в самом широком смысле. Решение задачи — это любая деятельность (человека или машины), связанная с выработкой планов и действий, необходимых для достижения определенной цели; выводом новых закономерностей и т. п. Любая интеллектуальная деятельность опирается на знания о предметной области, в которой ставятся и решаются задачи. Предметной областью обычно называют совокупность взаимосвязанных сведений, необходимых и достаточных для решения данной задачи или определенной совокупности задач.

Знания о предметной области включают описания объектов, явлений, фактов, а также отношений между ними.

В общем виде знания в ЭВМ представляются некоторой семиотической (знаковой) системой, в которой выделяются по аналогии с данными три аспекта: синтаксический, семантический и прагматический.

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

Семантика определяет отношения между знаками и их свойствами (концептами), т. е. задает смысл или значения конкретных знаков.

Прагматика определяет знак с точки зрения конкретной сферы его применения либо субъекта, использующего данную знаковую систему.

В соответствии с перечисленными аспектами семиотических систем можно выделить три типа знаний: синтаксические, семантические и прагматические.

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

Семантические знания содержат информацию, непосредственно связанную со значениями и смыслом описываемых объектов и явлений.

Прагматические знания описывают объекты и явления с точки зрения решаемой задачи, например, с учетом действующих в данной даче специфических критериев.

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

Прежде чем перейти к описанию моделей представления знаний, проанализируем особенности знаний, которые собственно и отличают их от данных.

Интерпретируемость. Данные, помещенные в ЭВМ, могут содержательно интерпретироваться лишь соответствующей программой. В отрыве от нее данные не несут никакой содержательной информации. Знания отличаются тем, что возможность содержательной интерпретации всегда присутствует.

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

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

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

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

Особенности знаний, их назначение и структура, способы хранения и интерпретации вызывают определенные аналогии со способами организации человеческой памяти. Однако человеческая память хранит не только числовые данные, но и образы или символы. Символьные образы в памяти человека объединены в так называемые чанки — наборы фактов и связей между ними, запоминаемые и извлекаемые как единое целое. В каждый момент времени человек может обрабатывать и интерпретировать не более 4-7 чанков. Способность формировать чанки отличает Эксперта в конкретной предметной области от не эксперта. Эксперт, в силу профессиональной необходимости, упорно развивает свою способность объединять в чанки большие объемы данных и устанавливать иерархические связи между ними (т. е. преобразовывать данные в знания) для того, чтобы быстро извлекать эти данные из памяти и с их помощью распознавать новые ситуации по мере поступления информации об этих ситуациях. Средний специалист в конкретной предметной области помнит от 50 000 до 100 000 чанков, которые могут быть использованы для решения той или иной проблемы. Накопление в памяти человека и построение указателей для такого объема данных требует от 10 до 20 лет.

Перечисленные особенности информационных единиц определяют ту грань, за которой данные, превращаются в знания, а базы данных перерастают в базы знаний.

Однако в настоящее время не существует баз знаний, в которых комплексно, в полной мере были бы реализованы внутренняя интерпретируемость, структуризация, связность, введена семантическая мера и обеспечена активность знаний.

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



Инженерия знаний



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

Обычно эксперт не прибегает к процедурным или количественным методам; его основные средства — аналогия, интуиция и абстрагирование. Часто эксперт даже не может объяснить, как именно им было найдено решение. В лучшем случае вы получите от него лишь описание основных приемов или эвристик, которые помогли ему успешно справиться с задачей. На инженера знаний возлагается очень сложная работа по преобразованию этих описаний в строгую, полную и непротиворечивую систему, которая позволяла бы решать прикладные задачи не хуже, чем это сделал бы сам эксперт, поскольку процесс построения базы знаний плохо структурирован и по своей природе является скорее циклическим, чем линейным.

Построение базы знаний включает три этапа:

		описание предметной области;

		выбор модели представления знаний (в случае использования оболочки этот этап исключается);

		приобретение знаний.

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

		определить характер решаемых задач;

		выделить объекты предметной области;

		установить связи между объектами;

		выбрать модель представления знаний;

		выявить специфические особенности предметной области.

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

Выделение предметной области представляет собой первый шаг абстрагирования реального мира.

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

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

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

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

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

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

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

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

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

Разработку системы, основанной на знаниях, рекомендуется проводить в следующей последовательности:

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

Определите точно цель решения задачи.

Вникните как можно глубже в существо задачи.

Установите подцели, разбив задачу на подзадачи.

Выявите специфические особенности предметной области.

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

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

Выберите инструментальные средства, необходимые вам для создания системы. Этот выбор будет зависеть от типа решаемой задачи, ваших финансовых возможностей и сложности предметной области.

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

Приступите к созданию базы знаний. Выявите объекты предметной области, взаимосвязи между ними, виды иерархий, разбейте объекты на классы. Структурируйте базу знаний в соответствии с представлением эксперта о строении предметной области.

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



Модели приобретения знаний



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

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

Существуют, по меньшей мере, три уровня методов оснащения системы экспертными знаниями:

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

Программа может заполнить пробелы в знаниях, например из литературы, описывая объекты или формируя этапы работ.

Программа самостоятельно приобретает алгоритмические знания, «читая книги». Это интеллектуальные способности высокого уровня, которые позволяют не только каким-то образом усвоить содержание книг, но и использовать информацию как подсказку или совет.

Итак, рассмотрим модели приобретения знаний.

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

Модель взаимодействия эксперта с системой на ранних этапах развития искусственного интеллекта

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

Модель приобретения знаний ЭС с помощью инженера знаний.

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

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

Модель приобретения знаний ЭС с помощью интеллектуального редактора

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

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

Модель приобретения знаний ЭС с помощью индуктивной программы

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

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

Модель приобретения знаний ЭС с помощью программы понимания текстов

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

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

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

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

Специализированные оболочки и ИС ориентируются на определенный тип приложений. Ряд специалистов подразделяет эти ЭС на проблемно-специализированные и предметно-специализированные.

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

Все это позволяет существенно упростить, ускорить и удешевить процесс приобретения знаний.

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

И в заключение рассмотрим тенденции развития ЭС, связанные с объединением ЭС с другими направлениями, — это также серьезно может повлиять на практику приобретения знаний.

Объединение ЭС с системами традиционного программирования в рамках интегрированных систем. Это будет новое поколение ИС, которые должны интегрироваться со средствами автоматической разработки программного обеспечения и объектно-ориентированными базами данных.

Формирование нового направления Knowledge Publishing, объединяющего ЭС с электронным изданием и гиперсредствами. С этим направлением перекликается (а возможно, и сливается) направление «Системы знаний» — Knowledge Delivery System. Системы знаний — это класс ЭС, в которых имеется база знаний, но устранен механизм вывода. Они не являются системами, способными выполнять рассуждения (их вывод делается за один шаг); они имеют только механизм сопоставления и знания. Системы знаний могут рассматриваться как активные книги.

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

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





1