Познакомимся с экспертной системой

Создание сайтов, мобильных приложений и информационных систем в Нижнем Новгороде — заказать сайт

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

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

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

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

Обсуждение проблем символьных вычислений мы отложим до главы 4. Пример символического представления вы найдете во врезке 1. В области искусственного интеллекта ведется интенсивная работа по созданию языков представления representation languages.

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

Познакомимся поближе

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

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

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

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

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

За прошедшие годы было предложено немало соглашений, пригодных для кодирования знаний на языковом уровне. Среди них отметим порождающие правила production rules [Davis and King, ], структурированные объекты structured objects [Findler, ] и логические программы logic programs [Kowalski, ].

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

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

Знание о том, какие знания нужны в той или иной конкретной ситуации, и умение ими распорядиться — важная часть процесса функционирования экспертной системы. Такие знания получили наименование метазнаний — то есть знаний о знаниях.

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

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

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

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

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

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

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

Системы искусственного интеллекта. Лекция 5. Экспертные системы

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

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

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

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

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

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

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

Прослеживание и оценка поведения системы — задача довольно сложная и для ее решения необходимы совместные усилия эксперта и специалиста по информатике подробно этот вопрос рассматривается в главах 3, 13 и Загадка одного портрета В одной известной загадке человек смотрит на портрет и говорит: Во-вторых, представьте себе, как вы будете объяснять ход решения кому-нибудь постороннему, но при этом нельзя пользоваться никакими вспомогательными средствами вроде карандаша и бумаги.

Для многих эта загадка представляется головоломной, причем немало и таких, которые не могут проследить за ходом уже описанного решения Smullyan, ]. Как мы пришли к такому заключению, станет ясно после того, как мы воспользуемся логическим представлением. Пусть Пит — человек на портрете, а Люк — человек, который смотрит на портрет.

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

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

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

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

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

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

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

Так вот, если это YP-пароль, я первым делом регистрируюсь как "root" на YP-главном. А что такое YP-главный? Это дисковая машина, на которой установлена база данных с информацией обо всей сети. А "дисковая машина" означает Что на ней ОС установлена на локальном диске. Почесывает в затылке Итак, ты регистрируешься на Затем я редактирую файл данных паролей, удаляю зашифрованный элемент и создаю новую карту паролей.

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

На бездисковой машине клиента я мог бы воспользоваться командой passwd. Сожалеет, что взялся за onpoc Конечно, бедный Кен старался, как. Возможно, ему было бы полегче, если бы перед разговором со специалистом он заглянул в Руководство системного администратора и освоился хотя бы с основной терминологией.

Неудовлетворительные результаты подобных собеседований пробудили у некоторых исследователей интерес к автоматизации процесса передачи знаний специалистом машине. Одно из направлений исследований в этой области — автоматизированное извлечение знаний automated knowledge elicitation — появилось как побочный продукт в развитии систем человеко-машинного диалога см. Другие исследователи полагают, что "расшить" это узкое место можно, двигаясь по пути машинного обучения machine learning.

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

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

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

Можно также заметить, что предложения "Сэм — отец Джилла". О синтаксисе и семантике мы поговорим более подробно в главах 3 и 8. В х годах исследования в области представления знаний развивались в направлениях раскрытия принципов работы памяти человека, создания теорий извлечения сведений из памяти, распознавания и восстановления.

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

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

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

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

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

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

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

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

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

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

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

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

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

За прошедшие годы было предложено немало соглашений, пригодных для кодирования знаний на языковом уровне. Среди них отметим порождающие правила production rules [Davis and King, ], структурированные объекты structured objects [Findler, ] и логические программы logic programs [Kowalski, ]. В большинстве экспертных систем используется один или несколько из перечисленных формализмов, а доводы в пользу и против любого из них до сих пор представляют собой тему для оживленных дискуссий среди теоретиков.

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

Создание, продвижение и поддержка сайтов, мобильных приложений и информационных систем

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

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

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

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

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

Если вы не ограничены в средствах, и у вас есть опыт работы с профессиональ- 2 3 ными фотоаппаратами больше года, и вы предпочитаете фотографировать внутри помещения, в студии, с использованием специальной аппаратуры, Вам подойдут такие фотоаппараты, как Nikon D70, Canon 5D.

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

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

Познакомимся с экспертной системой

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

Дерево решений орграфотражающее знания ЭС Таблица 1. В этом случае система должна будет выдать пользователю окончательное решение и объяснить, как было получено принятое решение. Студент самостоятельно выбирает проблемную область ПО и задачу, для решения которой он будет строить ЭС в соответствии с номером своей фамилии в списке группы и приведенным выше списком вариантов. Проводит онтологические исследования, составляет словарь терминов и определяет взаимосвязи объектов в выбранной ПО 1 ; 3.

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