Представление знаний: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 139: Строка 139:
* [http://nelements.org Nelements KOS] - a generic 3d knowledge representation system
* [http://nelements.org Nelements KOS] - a generic 3d knowledge representation system
* [http://bigspb.ru/publications/other/km/predst_znan_v_intel_shemah.php Представление знаний в интеллектуальных системах]
* [http://bigspb.ru/publications/other/km/predst_znan_v_intel_shemah.php Представление знаний в интеллектуальных системах]
* [http://newknowledges.narod.ru Новые метадисциплинарные опережающие знания]

{{Инженерия знаний}}
{{Инженерия знаний}}
{{ai-stub}}
{{ai-stub}}

Версия от 08:10, 15 февраля 2008

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

Некоторые вопросы, которые возникают в представлении знаний с точки зрения ИИ:

  • Как люди представляют знания?
  • Какова природа знаний и как мы их представляем?
  • Должна ли схема представления связываться с частной областью знаний, или она должна быть общецелевой?
  • Насколько выразительна данная схема представления?
  • Должна ли быть схема декларативной или процедурной?

Было очень немного top-down обсуждения вопросов представления знаний и исследования в данной области is a well aged quiltwork. Есть хорошо известные проблемы, такие как "spreading activation," (задача навигации в сети узлов) "категоризация" (это связано с выборочным наследованием; например вездеход можно считать специализацией (особым случаем) автомобиля, но он наследует только некоторые характеристики) и "классификация". Например помидор можно считать как фруктом, так и овощем.

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

История в информатике

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

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

В 1970-х и начале 1980-х были предложены, и с переменным успехом опробованы многочисленные методы представления знаний, например эвристические вопросно-ответные системы, нейросети, доказательство теорем, и экспертные системы. Главными областями их применения в то время были медицинская диагностика (к примеру Мицин) и игры (например шахматы).

В 1980-х годах появились формальные компьютерные языки представления знаний. Основные проекты того времени пытались закодировать (занести в свои базы знаний) огромные массивы общечеловеческого знания. Например в проекте «Cyc» была обработана большая энциклопедия, и кодировалась не сама хранящаяся в ней информация, а знания, которые потребуются читателю чтобы понять эту энциклопедию: наивная физика, понятия времени, причинности и мотивации, типичные объекты и их классы. Проект Cyc развивается компанией Cycorp, Inc.; большая часть (но не вся) их базы свободно доступна.

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

Было разработано несколько языков программирования ориентированных на представление знаний. Пролог, разработанный в 1972 (см. http://www.aaai.org/AITopics/bbhist.html#mod), но получивший популярность значительно позже, описывает высказывания и основную логику, и может производить выводы из известных посылок. Ещё больше нацелен на представление знаний язык KL-ONE (1980-е).

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

Связи и структуры

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

Относительно новый подход к управлению знаниями — визуальные способы представления, например разработанный компанией TheBrain Technologies Corp. "плекс". Они дают пользователю способ визуализировать как мысль или идея связана с другими идеями, позволяя перемещаться от одной мысли к другой для того, чтобы найти требующуюся информацию. Данный подход развивают несколько компаний. Другие визуальные инструменты поиска созданы компаниями Convera, Entopia, Inc., EPeople Inc., и Inxight Software Inc.

Хранение и обработка

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

Для представления знаний можно использовать семантические сети. Каждый узел такой сети представляет концепцию, а дуги используются для определения отношений между концепциями. Одна из самых выразительных и детально описанных парадигм представления знаний основанных на семантических сетях это MultiNet (акроним для Многослойные Расширенные Семантические Сети англ. Multilayered Extended Semantic Networks).

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

Использование фреймов в экспертных системах является примером объектно-ориентированного программирования, с наследованием свойств, которое описывается связью "is-a". Однако, в использовании связи "is-a" существовало немало противоречий: Рональд Брахман написал работу озаглавленную "Чем является и не является IS-A", в которой были найдены 29 различных семантик связи "is-a" в проектах, чьи схемы представления знаний включали связь "is-a". Другие связи включают, например, "has-part".

Фреймовые структуры хорошо подходят для представления знаний, представленных в виде схем и стереотипных когнитивных паттернов. Элементы подобных schematic patterns обладают разными весами, attributing higher weights to the more typical elements of a schema. A pattern активизируется при определённых условиях: Если человек видит большую птицу, при условии что сейчас активна его "морская схема", а "земная схема" - нет, он классифицирует ее скорее как морского орлана, а не сухопутного беркута.

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

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

Различные решения в зависимости от их семантической выразительности могут быть организованы в так называемый семантический спектр (англ. Semantic spectrum).

Язык и нотация

Некоторые люди считают, что лучше всего будет представлять знания также как они представлены в человеческом разуме, который является единственным известным на сегодняшний день работающим разумом, или же представлять знания в форме естественного языка. Доктор Ричард Баллард, например, разработал семантическую систему theory-based которая не зависит от языка, которая claims to capture и рассуждает теми же концепциями и теориями что и люди. Формула, лежащая в основе theory-based семантики: Знание=Теория+Информация. Большинство распространенных приложений и систем баз данных основаны на языках. К несчастью, мы не знаем как знания представляются в человеческом разуме, или как манипулировать естественными языками также как это делает человек. Одной из подсказок является то, что приматы знают как использовать интерфейсы пользователя point and click; таким образом интерфейс жестов похоже является частью нашего когнитивного аппарата, модальность которая не привязана к устному языку, и которая существует в других животных кроме человека.

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

Нотация

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

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

Примеры нотаций:

Языки

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

Методы и формализмы

Методы и формализмы представления знаний название раздела I.2.4 в Компьютерной классификации ACM.

Данная секция расположена под:

  • Категорией самого верхнего уровня, I Вычислительные методологии, и
  • Категорией второго уровня, I.2 Искусственный интеллект.

Она включает следующие темы:

  1. фреймы и скрипты
  2. Модальная логика
  3. Логика первого порядка
  4. Реляционные системы
  5. Языки представления
  6. Представления (процедурные и основанные на правилах)
  7. Семантические сети
  8. Темпоральная логика

См. также

References

  • Джозеф Джарратано, Гари Райли. Глава 2. Представление знаний (в PDF) // Экспертные системы: принципы разработки и программирование = Expert Systems: Principles and Programming. — 4-е изд. — М.: «Вильямс», 2006. — С. 1152. — ISBN 978-5-8459-1156-8.
  • Amaravadi, C. S., “Knowledge Management for Administrative Knowledge,” Expert Systems, 25(2), pp 53-61, May 2005.
  • Ronald J. Brachman; What IS-A is and isn't. An Analysis of Taxonomic Links in Semantic Networks; IEEE Computer, 16 (10); October 1983 [1]
  • Jean-Luc Hainaut, Jean-Marc Hick, Vincent Englebert, Jean Henrard, Didier Roland: Understanding Implementations of IS-A Relations. ER 1996: 42-57 [2]
  • Hermann Helbig: Knowledge Representation and the Semantics of Natural Language, Springer, Berlin, Heidelberg, New York 2006
  • Arthur B. Markman: Knowledge Representation Lawrence Erlbaum Associates, 1998
  • Michael Negnevitsky: Artificial Intelligence, A Guide to Intelligent Systems, Pearson Education Limited, 2002
  • John F. Sowa: Knowledge Representation: Logical, Philosophical, and Computational Foundations. Brooks/Cole: New York, 2000
  • Adrian Walker, Michael McCord, John F. Sowa, and Walter G. Wilson: Knowledge Systems and Prolog, Second Edition, Addison-Wesley, 1990

Ссылки