страница 1 |
|||||||||||||||||||||||||||||||||||||||||||
Похожие работы
|
Лекции №13, №14 18. 10. 2011. Проблема знаний - страница №1/1
![]() Искусственный интеллект – IV курс – День 07, лекции № 13, № 14 18.10.2011. Проблема знаний В данном разделе курса речь идет о проблемах формирования, хранения и использования «знаний» (пока мы считаем, что «знания» – любая информация о системе и ее окружении) на всех этапах жизненного цикла системы искусственного интеллекта (системы ИИ)/интеллектуальной системы (ИС). 1.Терминологические замечания: а) Предметная область (ПО) – «срез» действительности, со своими объектами, отношениями. Проблемная область (ПО) – Предметная область + характерные задачи. Примеры:
Предметная область – Лисп как язык для обработки списков Проблемные области: автоматический синтез программ на Лиспе, автоматизированное обучение приемам программирования на Лиспе. б)Из психологии и педагогики нам известна триада: знания – умения – навыки. Знания – усвоенные Понятия. Умения – способность выполнять новые действия в новых условиях. Навыки – действия, автоматизировавшиеся в процессе их усвоения и выполнения. В работах по ИИ знаниями обычно называют и собственно знания, и умения, и навыки. Поэтому говорят о: базах понятий, базах фактов, базах правил и т.п. Вот, например, два определения из Интернет-ресурса «Тематическая служба толковых словарей» – http://www.glossary.ru. Знания (в информатике) – вид информации, отражающей опыт специалиста (эксперта) в определенной ПО, его понимание множества текущих ситуаций и способы перехода от одного описания объекта к другому. Знания о ПО подразделяются на: -факты, относящиеся к ПО; -закономерности, характерные для ПО; -гипотезы о возможных связях между явлениями, процессами и фактами; -процедуры для решения типовых задач в данной ПО. Чтобы не вступать в противоречие с литературными источниками, мы согласимся с такой трактовкой (расширенной) термина знания. в)Базы знаний (БЗ) в работах по ИИ часто не совсем корректно противопоставляются базам данных (утверждается, например, что базы знаний в отличие от баз данных имеют встроенный дедуктивный механизм вывода следствий из известных фактов и т.п.). Для нас это феномены разноплановых уровней: База знаний – (у нас) – совокупность «знаний» системы ИИ в компьютерном представлении. Средством представления «знаний» может быть, в частности, та или иная штатная база данных (в обычном смысле). 2.Некоторые острые аспекты проблемы знаний: Проблема извлечения знаний Извлечение знаний – процесс взаимодействия инженера по знаниям с источником знаний (экспертом), в результате которого становятся явными процесс рассуждений специалистов при принятии решения и структура их представлений о предметной области. Проблема приобретения знаний Приобретение знаний – автоматизированное построение базы знаний посредством диалога эксперта и/или инженера знаний со специальной программой формирования БЗ. Экспертные знания – знания, которыми располагает специалист в некоторой проблемной области. Эксперт – специалист в некоторой проблемной области. Инженер знаний/Инженер по знаниям/Когнитолог – специалист по искусственному интеллекту, проектирующий и создающий базу знаний системы ИИ. Обычно инженер по знаниям выступает в роли «посредника» между экспертом и базой знаний Проблема открытости знаний Совокупность «знаний» системы ИИ неизбежно должна быть открыта для включения в нее новой информации, отражающей динамику проблемной среды и динамику поручаемых системе ИИ заданий. Открытость может быть реализована по-разному: - пополнение БЗ «хирургическим путем» (программист/администратор вносят изменения в тексты БЗ), - обучение системы пользователем в рабочем режиме, - самообучение системы (приспособление ее к новым условиям/задачам). 3.Базовые методы представления знаний: Метод представления знаний – совокупность взаимосвязанных средств формального описания знаний и оперирования (манипулирования) этими описаниями. (аналог модели данных в теории Баз Данных – понятие концептуального уровня) Логические методы (язык предикатов) Знания, необходимые для решения задач и организации взаимодействия с пользователем, – факты (утверждения). Факт – формула в некоторой логике. Система знаний – совокупность формул. База знаний – система знаний в компьютерном представлении.
иметь (Саша, книга) «Саша имеет книгу» иметь (Саша, книги) ® иметь (Саша, книга) «Если Саша имеет книги, то он имеет книгу» ("x) [человек (x) ® иметь (x, книга)] «Каждый человек имеет книгу» ("x) [свободен (x) ® Ø($y) (на (y,x))] «Если кубик x свободен, то нет такого кубика y, который находится на кубике x» Достоинства:
Недостатки:
Семантические сети Знания, необходимые для решения задач и организации взаимодействия с пользователем, – объекты/события и связи между ними. Статические семантические сети - сети с объектами. Динамические семантические сети (сценарии) - сети с событиями. Система знаний – совокупность сетей (или одна общая сеть). База знаний – система знаний в компьютерном представлении. Для представления семантических сетей используются графы: вершина - атомарный объект (событие), подграф - структурно сложный объект (событие), дуга - отношение или действие. Примеры отношений: род-вид («компьютер» – «персональный компьютер») целое-часть («компьютер» – «память») понятие-пример («компьютер» – «конкретный компьютер . . . ») Основные операции: сопоставление с образцом, поиск, замена, взятие копии Примеры семантических сетей: Будут позже (на сегодняшней лекции). Достоинства:
Недостатки:
Фреймы Знания, необходимые для решения задач и организации взаимодействия с пользователем, – фреймы. Фрейм-понятие – отношение/действие + связанные этим отношением/участвующие в этом действии объекты. Фрейм-пример – конкретный экземпляр отношения/действия + конкретные объекты (связанные этим отношением/участвующие в этом действии). Система знаний – совокупность фреймов-понятий и фреймов-примеров. База знаний – система знаний в компьютерном представлении. Фрейм: ИМЯ - отношение/действие СЛОТЫ - объекты или другие фреймы С каждым слотом может быть связана такая информация: УСЛОВИЕ НА ЗАПОЛНЕНИЕ (тип, «по умолчанию», связь с другими слотами) АССОЦИИРОВАННЫЕ ПРОЦЕДУРЫ (действия, выполняемые, например, при заполнении этого слота)
Фрейм-понятие «Перемещать» ПЕРЕМЕЩАТЬ (кто?, что?, откуда?, куда?, когда?, . . .) Условия: кто? – человек, робот, . . . откуда? – место . . .
Фрейм-пример ПЕРЕМЕЩАТЬ (Саша, Саша, Главное_Здание_МГУ, Факультет_ВМК, вчера в 15-30, . . .) Фрейм-понятие «Персональный_компьютер» ПЕРСОНАЛЬНЫЙ_КОМПЬЮТЕР (фирма-производитель?, процессор?, память?, . . .) Фрейм-пример ПЕРСОНАЛЬНЫЙ_КОМПЬЮТЕР (ASUS, Intel Celeron, 512Мб, . . .) Достоинства:
Недостатки:
Продукции Знания, необходимые для решения задач и организации взаимодействия с пользователем, – продукции (продукционные правила). Продукция – правило вида: p: a®b (где: p – предусловие, a - антецедент, b - консеквент). Система знаний – система продукционных правил + стратегия выбора правил. База знаний – система знаний в компьютерном представлении.
True: T > 200°C & P > 5 кПа ® открыть клапан № 3 True: Х - башня ® Х имеет_часть У1 & У1 есть КРЫША & . . .
Недостатки:
4.Сложности формирования БЗ (на примерах): Пример: Формирование описания объекта на основе знаний «здравого смысла» При описании АРКИ одного из объектов Мира Кубиков с помощью семантических сетей мы будем использовать: 1)объекты/понятия: арка, блок, пирамида (пирам), многогранник (мног); 2)отношения: целое-часть (1), род-вид (2), поддерживает (3) и некоторые другие. Рассматривается проекция трехмерных объектов на плоскость. В описание не включается очевидный факт – работа с Кубиками ведется на плоскости (table). Достаточно естественный вариант АРКИ: может быть описан так: ![]() ![]() Другой возможный вариант АРКИ: имеет другое описание: ![]() Если в БЗ будет указано, что блок и пирам – частные случаи объекта мног → можно дать обобщенное описание АРКИ: ![]() В этом описании не учтен «вырожденный» случай арки (см. ниже). Для того, чтобы исключить такой объект, следует указать, что блоки основания АРКИ не соприкасаются. ![]() Не очень понятно, следует ли считать АРКОЙ объект, изображенный на следующем рисунке («феномен кучи»). Можно заменить в описании отношение не соприкасаются (4) ![]() Отметим, что этот пример можно рассматривать не только в контексте описания (и его формализации) ПО человеком, но и в контексте обучения системы ИИ. Пример: Использование в качестве источника информации о ПО энциклопедических источников Некоторые словарные статьи из «Толкового словаря Ожегова» (http://www.ozhegov.ru/): АВТОБУС: многоместный автомобиль для перевозки пассажиров АВТОМОБИЛЬ: транспортное средство на колесном ”реже полугусеничном или другом” ходу с собственным двигателем для перевозок по безрельсовым путям …
…
…
…
Вероятно, нет. Так как, если Машина не работает, то Ротор не Вращается. Возможное уточнение (требует привлечения информации, которой нет в источнике): Ротор (x) ↔ ("t) [Работает (y, t) & Часть (x, y) & Машина (y) → Вращается (x)] 5. Метазнания в системах искусственного интеллекта: Метазнания – знания системы ИИ о ее собственных знаниях: как они структурированы, как и при каких условиях их можно менять (в том числе, с учетом проблемы полномочий: автоматическое изменение, изменения после получения подтверждения от пользователя, изменение пользователем). С использованием метазнаний в экспертных системах мы познакомимся в соответствующем разделе. В данном разделе мы рассматриваем метазнания как средство разрешения конфликта между наличными знаниями системы ИИ (содержанием базы знаний) и входной информацией.
- не удается завершить анализ текста условия задачи, т.к. в нем встретилось незнакомое системе ИИ слово; - не удается продолжить планирование решения, т.к. ни один оператор к очередной вершине дерева поиска неприменим; - новый факт формально противоречит одному из ранее известных. Разрешение конфликта (на примере появления во входном тексте слова, которое не входит в словарь системы ИИ):
Вспомним, что модуль проверки правописания текстового процессора при появлении незнакомого системе слова предлагает: пропустить это слово, исправить ошибку (выбрав вариант, предлагаемый системой, либо, предложив свой вариант исправления) или добавить слово в словарь системы. Проблема знаний |