Категория
Информатика
Тип
реферат
Страницы
43 стр.
Дата
27.07.2013
Формат файла
.doc — Microsoft Word
Архив
836237.zip — 120.31 kb
  • jazyki-predostavlenija-znanij_836237_1.doc — 259 Kb
  • Readme_docus.me.txt — 125 Bytes
Оцените работу
Хорошо  или  Плохо


Текст работы

     
Основные

данные о работе


 

Версия 

шаблона
2.1
Филиал  
Вид работы Курсовая работа
Название 

дисциплины
Информационные 

технологии
Тема Языки предоставления

знаний
Фамилия

студента
 
Имя студента  
Отчество 

студента
 
№ контракта  

     
Одной

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

является как хранить и обрабатывать

знания в информационных системах формальным

способом так, чтобы механизмы могли использовать

их для достижения поставленных задач.

Примеры применения здесь экспертные

системы, Машинный перевод, компьютеризированное

техническое обслуживание и системы извлечения

и поиска информации (включая пользовательские

интерфейсы баз данных).
3

     
Для

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

семантические сети. Такая сеть изображена

на рисунке приложения Б. Каждый узел

такой сети представляет концепцию,

а дуги используются для определения 

отношений между концепциями. Одна

из самых выразительных и детально описанных

парадигм представления знаний основанных

на семантических сетях это MultiNet (акроним

для Многослойные Расширенные Семантические

Сети англ. Multilayered Extended Semantic Networks).

     
Начиная

с 1960-х годов, использовалось понятие

фрейма знаний или просто фрейма. Каждый

фрейм имеет своё собственное имя и набор

атрибутов, или слотов которые содержат

значения; например фрейм дом мог бы содержать

слоты цвет, количество этажей и так далее.

     
Использование

фреймов в экспертных системах является

примером объектно-ориентированного программирования,

с наследованием свойств, которое описывается

связью «is-a». Однако, в использовании связи

«is-a» существовало немало противоречий:

Рональд Брахман написал работу озаглавленную

«Чем является и не является IS-A», в которой

были найдены 29 различных семантик связи

«is-a» в проектах, чьи схемы представления

знаний включали связь «is-a». Другие связи

включают, например, «has-part».

     
Фреймовые

структуры хорошо подходят для представления 

знаний, представленных в виде схем и стереотипных

когнитивных паттернов. Элементы подобных

паттернов обладают разными весами, причем

большие весы назначаются тем элементам,

которые соответствую текущей когнитивной

схеме (schema). Паттерн активизируется при

определённых условиях: Если человек видит

большую птицу, при условии что сейчас

активна его «морская схема», а «земная

схема» - нет, он классифицирует её скорее

как морского орлана, а не сухопутного

беркута.

     
Фреймовые

представления объектно-
центрированы

в том же смысле что и Семантическая

сеть: Все факты и свойства, связанные

с одной концепцией, размещаются в одном

месте, поэтому не требуется тратить ресурсы

на поиск по базе данных.

     
Скрипт 

это тип фреймов, который описывает 

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

типичный пример описание похода в ресторан.

События здесь включают ожидание места,

прочитать меню, сделать заказ, и так далее.

     
Различные

решения в зависимости от их семантической 

выразительности могут быть организованы

в так называемый семантический 

спектр (англ. Semantic spectrum).

     
1.3

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


 

     
Некоторые

люди считают, что лучше всего 

будет представлять знания также 

как они представлены в человеческом

разуме, который является единственным

известным на сегодняшний день работающим

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

в форме естественного языка. Доктор Ричард

Баллард, например, разработал «семантическую

систему, базирующуюся на теории», которая

не зависит от языка, которая выводит цель

и рассуждает теми же концепциями и теориями

что и люди. Формула, лежащая в основе этой

семантики: Знание=Теория+Информация.

Большинство распространенных приложений

и систем баз данных основаны на языках.

К несчастью, мы не знаем как знания представляются

в человеческом разуме, или как манипулировать

естественными языками также как это делает

человек. Одной из подсказок является

то, что приматы знают как использовать

интерфейсы пользователя point and click; таким

образом интерфейс жестов похоже является

частью нашего когнитивного аппарата,

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

языку, и которая существует в других животных

кроме человека.

     
Поэтому

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

различные искусственные языки 

и нотации. Обычно они основаны на

логике и математике, и имеют легко 

читаемую грамматику для облегчения

машинной обработки. Обычно они попадают

в широкую область онтологий.

     
Последней

модой в языках представления 

знаний является использование XML в 

качестве низкоуровневого синтаксиса.

Это приводит к тому, что вывод 

этих языков представления знаний машины

могут легко Синтаксический анализ, за

счёт Удобочитаемости для человека. Логика

первого порядка и язык Пролог широко

используется в качестве математической

основы для этих систем, чтобы избежать

избыточной сложности. Однако даже простые

системы основанные на этой простой логике

можно использовать для представления

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

обработки для нынешних компьютерных

систем: причины раскрываются в теории

вычислимости.

     
Примеры

искусственных языков которые используются

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

CycL IKL, KIF, Loom, KM: Машина Знаний (англ. Knowledge

Machine) (фреймовый язык, использовавшийся

для задач представления знаний), OWL, 

язык Пролог, Липс.

     
Некоторые

из этих языков, мы рассмотрим в данной

курсовой работе далее.
 

     
2

Обзор языков предоставления

знаний

     
2.1

Пролог


 

     
Пролог

(фр. Programmation en Logique) — язык и система 

логического программирования, основанные

на языке предикатов математической

логики дизъюнктов Хорна, представляющей

собой подмножество логики предикатов

первого порядка.
4

     
Основными

понятиями в языке Пролог являются

факты, правила логического вывода

и запросы, позволяющие описывать 

базы знаний, процедуры логического 

вывода и принятия решений.

     
Факты

в языке Пролог описываются логическими 

предикатами с конкретными значениями.

Правила в Прологе записываются в форме

правил логического вывода с логическими

заключениями и списком логических условий.

     
Особую 

роль в интерпретаторе Пролога играют

конкретные запросы к базам знаний,

на которые система логического

программирования генерирует ответы «истина»

и «ложь». Для обобщённых запросов с переменными

в качестве аргументов созданная система

Пролог выводит конкретные данные в подтверждение

истинности обобщённых сведений и правил

вывода.

     
Факты

в базах знаний на языке Пролог представляют

конкретные сведения (знания). Обобщённые

сведения и знания в языке Пролог задаются

правилами логического вывода (определениями)

и наборами таких правил вывода (определений)

над конкретными фактами и обобщёнными

сведениями.

     
Начало 

истории языка относится к 1970-м годам.

Будучи декларативным языком программирования,

Пролог воспринимает в качестве программы

некоторое описание задачи или баз знаний

и сам производит логический вывод, а также

поиск решения задач, пользуясь механизмом

поиска с возвратом и унификацией.

     
Пролог 

реализован практически для всех

известных операционных систем и 

платформ (в том числе для Java и

.NET). В число операционных систем

входят OS для мэйнфреймов, всё семейство

Unix, Windows, OS для мобильных платформ.

     
Интерес

к Прологу поднимался и затихал несколько

раз, энтузиазм сменялся жёстким неприятием.

Наиболее высоко был поднят интерес к

языку Пролог, как к языку будущего, во

время разработок японской национальной

программы компьютеры пятого поколения

в 1980-х годах, когда разработчики надеялись,

что с помощью Пролога можно будет сформулировать

новые принципы, которые приведут к созданию

компьютеров более высокого уровня интеллекта.

     
Язык 

Пролог в 1980-х годах был включен 

в ряд советских вузовских 

и школьных учебников информатики

для изучения элементов математической

логики, принципов логического программирования

и проектирования баз знаний и моделей

экспертных систем. С этой целью на IBM PC

и ряде советских школьных компьютеров

были реализованы учебные русскоязычные

интерпретаторы Пролога.

     
В

языке Пролог факты описываются 

в форме логических предикатов с 

конкретными значениями. Правила 

вывода описываются логическими 

предикатами с определением правил

логического вывода в виде списка

предикатов над базами знаний и процедурами

обработки информации.
5

     
В

настоящее время Пролог, несмотря

на неоднократные пессимистические

прогнозы, продолжает развиваться в 

разных странах и вбирает в 

себя новые технологии и концепции,

а также парадигмы 
императивного 

программирования. В частности, одно

из направлений развития языка (в том числе

и в России) реализует концепцию интеллектуальных

агентов.

     
Многие 

современные реализации языка имеют 

внутреннее расширение за счет ООП-архитектуры.

Кроме проприетарных решений 

также существуют свободные реализации

Пролог. Важно, что для языка существует

стандарт ISO, принятый как ISO/IEC JTC1/SC22/WG17.

     
Базовым

принципом языка является равнозначность

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

(декларативность), отчего утверждения 

языка одновременно являются и записями,

подобными записям в базе данных, и правилами,

несущими в себе способы их обработки.

Сочетание этих качеств приводит к тому,

что по мере работы системы Пролога знания

(и данные и правила) накапливаются. Поэтому

Пролог-системы считают естественной

средой для накопления базы знаний и обучения

студентов и школьников принципам логического

программирования.

     
Однако,

Пролог критикуется в первую очередь 

за свою недостаточную гибкость, от

чего решения на «обычных» языках

программирования (например, C++, Java) в 

сочетании с базами данных оказываются

более технологичными, чем аналогичные

решения на Прологе. Негибкость заключается

в трудности изучения языка, более высоких

требований к квалификации программиста

на Прологе, трудности отладки программы,

неразвитости технологии программирования,

плохой контролируемости промежуточных

результатов.

     
Перспектива

развития всемирной Сети, известной 

как проект Веб 3.0 поддерживает особый

интерес к семантике 
распределенных

данных и их обработке декларативными

методами. В связи с этим появились

концепции языка OWL, основанного на концепции

First-Order Logic (FOL), реализацию которой, в свою

очередь, можно рассматривать как значительно

более расширенную технику классического

Prolog.

     
2.2 Web Ontology Language


 

     
OWL (англ. Web Ontology Language)

— язык описания онтологий для семантической

паутины. Язык OWL позволяет описывать классы

и отношения между ними, присущие для веб-документов

и приложений. OWL основан на более ранних

языках OIL и DAML+OIL и в настоящее время является

рекомендованным консорциумом Всемирной

паутины.

     
Выражаясь

неформально, OWL позволяет гарантировать,

что в условиях высокой гетерогенности

современных информационных систем

(ИС), термины, объявленные в одной 

системе будут корректно 
интерпретированы

в другой системе, причем независимо

от технических особенностей систем и

сценариев работы с ними. Важность подобной

согласованности легко представить на

примере двух медицинских ИС - электронных

медицинских карточек и системы помощи

в постановке диагнозов. Обе системы оперируют

медицинскими терминами, в частности,

симптомами, наименованиями болезней,

тестов и медикаментов. При этом если "симптом

Х", указанный в карточке пациента, будет

неверно интерпретирован системой постановки

диагноза, то последствия (как для пациента,

так и для врача) могут оказаться самыми

нежелательными.

     
OWL

предоставляет данные 
возможности 

благодаря своим логическим 
основам, 

а именно, описательной логике (Description

Logic или DL). Одним из ключевых 

преимуществ логики является 

формальная семантика (смысл) 

логических утверждений. Проще говоря,

это означает, что семантика логический

утверждений (или смысл понятий в OWL) не

зависит от того, как, кем и в каком контексте

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

образом, не оставляя возможностей для

неоднозначной интерпретации.
6

     
Рассмотрим 

пример описания термина НесчастныйРебенок 

в виде сын или дочь инженера и 

врача (заранее прошу прощения, если

кому-то шутка покажется неуместной

в современных реалиях!). Итак, налицо

двусмысленность: кто-то скажет, что 

имеются в виду дети, у которых один родитель

- врач, а другой - инженер, а кому-то покажется,

что речь идет о детях, у которых хотя бы

один родитель и врач и инженер одновременно.

Это может вызвать улыбку, но если бы речь

шла об описании специфических болезней,

то некорректная интерпретация симптомов

могла бы легко привести к неверному диагнозу.

     
OWL

позволяет определить термин 

следующим образом: 
НесчастныйРебенок 

SubClassOf ребенок some (Инженер and Врач)

(синтаксис будет 
рассматриваться 

ниже), что недвусмысленно означает,

что один из родителей должен быть инженером

и врачом одновременно (другой вариант

тоже легко описывается, но несколько

длиннее). Таким образом, все клиенты (пользователи

или приложения), использующие корректные

средства для работы с OWL, будут одинаково

интерпретировать термины.

     
Варианты 

применения OWL весьма разнообразны, поэтому 

ниже приведены лишь наиболее классические

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

знаний, OWL может быть полезен в 

любой информационной системе, которой 

требуется явное описание метаинформации

(т.е. информации или знаний о структуре

данных). При этом, чем сложнее и разнообразнее

подобные знания, тем лучше подходит OWL

для этой задачи.

     
Итак,

на данный момент варианты применения

OWL включают следующие:

     
Согласованное

представление терминологии

в медицине, химии и

биоинформатике.

     
Эти

области активно развиваются 

и непрекращающиеся исследования приводят

к появлению все большего объема

данных и знаний. При этом основная

проблема заключается в том, что 

накапливаемые знания зачастую описываются

неформальными образом и содержатся во

множестве различных, неинтегрированных

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

являются трудности в проверке согласованности

результатов научных исследований. Например,

разные исследовательские проекты могут

прийти к заключениям, что "протеин

Х взаимодействует с протеином Y при условии

Z1" и "не взаимодействует при условии

Z2". При этом автоматически проанализировать

и сопоставить эти результаты можно только

в том случае, если, в частности, термины

"условия Z1 и Z2" описаны формально,

скажем, в виде классов OWL. В этом случае

несовместимость (disjointness) классов УсловияZ1

и УсловияZ2 будет означать полную согласованность

результатов, включение УсловияZ1 в УсловияZ2

(или наоборот) — несогласованность (противоречивость)

результатов, а отсутствие какого-либо

отношения может говорить о том, что необходимо

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

протеинов в случае, если условия Z1 и Z2

наблюдаются одновременно. Последний

случай может служить примером того, как

существующие знания могут использоваться

для выбора направления исследований.

     
Интеграция 

гетерогенных информационных

систем (в особенности 

баз данных)

     
Во 

многих областях наблюдается ситуация,

при которой важная информация распределяется

по множеству баз данных. Основная проблема

заключается в том, что эти базы данных,

как правило, создавались разными людьми,

в разное время и с использованием разных

технологий, поэтому схемы данных также

оказываются весьма различными. В результате

крайне осложняется задача интеграции

данных, которая необходима, в частности,

для прозрачного выполнения запросов

над всеми имеющимися данными.

     
Онтологии

в целом, и OWL в частности, могут 

использоваться в этой ситуации для 

формального описания и интеграции

схем баз данных (тех самых метаданных).

Это позволяет организовать дополнительный

метауровень, который создает интегрированную

картину данных для внешних клиентов.

Таким образом, клиенты могут использовать

запросы к интегрированному представлению

данных, которые затем разделяются на

части, выполняются над отдельными БД,

после чего результаты вновь объединяются

в соответствии с интеграцией схем.

     
К

сожалению, насколько я знаю, полностью 

готовых решений на данный момент

не существует, поэтому подобная метаинтеграция

в каждом конкретном случае разрабатывается

отдельно.

     
Описание 

расширенных классификаций 

для Web-порталов.

     
Web-порталы, 

обладающие богатым 
информационным 

содержимым, могут использовать 

онтологии OWL и SKOS для улучшения 

качества поиска и просмотра 

информации, а также упрощения сопровождения.

Яркими примерами подобных порталов могут

служить ebay.com, amazon.com, craigslist.org, gumtree.com и

т. д., на которых продаются практически

любые виды товаров. Описание модели информации

(категорий товаров и связей между ними)

имеет следующие преимущества:

     
-

Позволяет выполнять поиск с 

учетом семантики терминов.

     
-

Позволяет просматривать 
связанные 

товары с переходами по 
семантическим 

связям (которые могут быть между 

товарами как одной, так и 

разных категорий).

     
-

Позволяет динамически менять представление

информации без повторного развертывания

Web-приложения (например, можно осуществлять

реорганизацию каталога путем изменения

онтологий).

     
-

Открывает дополнительные 
возможности 

персонализации и анализа 
активности 

клиентов.

     
-

Упрощает добавление 
семантических 

аннотаций на страницы, тем самым 

поддерживая использование 
портала 

приложениями-агентами.

     
Описание 

ограничений целостности 

данных

     
С

некоторыми оговорками OWL может использоваться

в качестве выразительного языка для

ограничений целостности и валидации

данных. Выше уже упоминалось, что OWL можно

применять для описания и интеграции схем

данных, но проверка ограничений целостности

представляет собой отдельную задачу.

Главным моментом здесь является то, что

OWL изначально ориентирован на логический

вывод новых знаний, а не на проверку целостности

существующих данных. То же самое, кстати,

относится и к RDFS. Разницу можно пояснить

на следующем примере:

     
Person

SubClassOf hasMother exactly 1 Woman

     
hasMother(John,

Maria)

     
hasMother(John,

Jessica)

     
Первая 

аксиома означает, что у любого человека

есть одна и только одна мать, являющаяся

женщиной. Следующие две аксиомы означают,

что Мария и Джессика являются матерями

Джона. Казалось бы, налицо нарушение ограничения

целостности. Однако, с точки зрения семантики

OWL здесь нет противоречия, но делается

логический вывод, что Мария и Джессика

являются одним и тем же человеком (другим

логическим выводом является то, что обе

они — женщины). Разумеется, если явно

указать, что они — разные объекты (для

этого в OWL есть специальная конструкция

— owl:differentFrom), то противоречие будет выведено.

     
Тем

не менее, поскольку ограничения 

целостности идут рука об руку с 

описанием схем (метаданных), то были

созданы специальные решения, позволяющие 

использовать OWL для их описания. В 

частности, Pellet предоставляет специальное

расширение для проверки данных на соответствие

ограничениям целостности, описанным

в виде аксиом OWL (оно было представлено

на конференциях "Semantic Technologies 2009"

и "OWL: Experience and Directions 2009"). Причем существует

возможность использовать одни и те же

онтологии, как для представления знаний,

так и для валидации данных.

     
2.3

Лисп


 

     
Вычислительные 

машины первоначально разрабатывались 

для осуществления численных 

вычислений и обработки больших 

объемов данных. Численным вычислениям

свойственно выполнение большого числа

алгоритмов или сложных, но заранее точно

определённых вычислений над сравнительно

простыми однообразными элементами данных

- числами, векторами, массивами и т.п. Наиболее

эффективные суперкомпьютеры способны

выполнять обескураживающее количество

операций в секунду. Численные вычисления

хорошо подходят для решения научно-технических

задач, их понятия количественно измеримы

и точно представимы в числовой форме.

     


В свою очередь в экономических 

задачах обрабатывается большое количество

данных, состоящих часто из элементов

данных различных типов, которые, однако,

регулярны по форме и относятся к количественным

типам данных, таких, например, как записи,

файлы и базы данных. Осуществляемые действия

сравнительно просты, но программы могут

быть довольно велики.

     


Вычислительные машины, ориентированные 

на решение описанных выше задач,

и языки программирования не подходят

столь же хорошо для символьной обработки,

которая имеет дело со сложными структурами 

данных и базами знаний, содержащими правила

принятия решений и другие многообразные

объекты. Символьная обработка позволяет

эффективно работать с такими структурами,

как предложения естественного языка,

значения слов и предложений, нечеткие

понятия и т.д., и на их основе принимать

решения, проводить рассуждения и осуществлять

другие, свойственные человеку способы

обращения с данными. В качестве типичного

примера служат экспертные системы, содержащие

профессиональные знания по некоторой

специальности, программы, работающие

с естественным языком и т.д.

     


В этих применениях предполагается

представление в подходящей форме 

символьных и данных со сложной структурой.

Работа с ними часто ведётся в 

заранее непредсказуемых 
ситуациях.

Характерно, что кроме сложной 

структуры таким данным свойственно разнообразие

форм их выражения. Большая часть объектов

данных конкретной проблемной области

может иметь отличное от других индивидуальное

строение. Однако при их обработке поведение

программы определяется на основе задаваемых

на более общем уровне принципов, законов

и правил, а также на основе типов ситуаций

и образцов, распознаваемых в этих ситуациях.

     


Например, в играющей в шахматы 

программе невозможно заранее учесть

все позиции. Анализ игры осуществляется

на основе классификации позиций, распознавания

стандартных позиций, определения характеристик

позиций, построения оценок текущей позиции

и использования ограниченного набора

стратегий, правил принятия решения и

т.д. Так программа может оценить такие

позиции, которые программист специально

не предусматривал. При удачном стечении

обстоятельств программа может победить

своего создателя.
7

     


С помощью структур, имеющих множество 

форм представления, стало возможным 

решать задачи, которые ранее считались 

практически или даже принципиально

неразрешимыми. Наибольшие ограничения

в создании разумных программ накладывает

недостаточное знание нами механизмов

принятия решений, строения знаний об

естественном языке и о других областях,

а также уровень нашего мастерства в программировании.

     
Лисп 

является наиболее важным языком программирования,

используемым в исследованиях по

искусственному интеллекту и в математической

лингвистике. Название языка "Лисп"

происходит из "list processing" (обработка 

списков). Буквально английское слово

"lisp" означает "лепетать", "шепелявить"

и "сюсюкать". В качестве имени языка

программирования искусственного интеллекта

это метко, поскольку именно с помощью

Лиспа вычислительные машины научились

в некоторой мере лепетать на человеческом

языке.

     


И всё же Лисп ни в каком смысле не

является младенцем. Скорее он старик

среди языков программирования. Лисп разработан

уже в 50-х годах и является вслед за Фортраном

старейшим ещё используемым языком программирования.

Но в отличие от Фортрана будущее Лиспа

ещё впереди.

     


Лисп представляет собой язык так называемого

функционального программирования. Он

основан на алгебре списочных структур,

лямбда-исчислении и теории рекурсивных

функций. Благодаря неразвитости традиционной

вычислительной техники, отличающемуся

от других языков программирования характеру

и из-за наличия элементарных средств

обработки списков Лисп долгое время являлся

основным инструментом исследователей

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

теоретического подхода к анализу программирования.

Однако в 80-х годах Лисп, наконец, вышел

из лабораторий и нашел применение в прикладных

проблемах.

     


Обычно языки программирования не изобретают,

а проектируют. Однако по отношению 

к Лиспу можно говорить об изобретении.

Первоначальная версия языка, в частности,

содержала множество понятий и принципов,

которые сначала казались очень странными,

но многие из которых позже оказались

существенным нововведением. Кроме этого,

возможность добавления в Лисп в течение

десятилетий многих новых черт подтвердила

свойство расширяемости этого языка. Вокруг

Лиспа возникла широкая культура, охватывающая

многочисленные школы и разнообразные

диалекты языка, различные системы и методы

программирования, программные среды

и Лисп-машины.

     
Про

Лисп говорят, что это неэффективный 

язык, особенно в части арифметики.

Это было верно на начальном этапе. На

численную сторону не обращалось внимание,

поскольку язык был предназначен для символьной

обработки. Теперь это уже не так. Лисп-системы

могут в численных вычислениях быть более

эффективными, чем Фортран на той же машине.

Это объясняется в том числе и тем, что

в трансляторах с Лиспа можно применять

более сложные преобразования для оптимизации

кода.

     


Естественным является то, что большие 

системы, предлагающие многосторонние

и разумные услуги, требуют большой

вычислительной мощности и громоздки

для системы разделения времени. Однако

это связано не с Лиспом или его плохой

реализацией, а с тем вниманием и с той

готовностью помочь, которые система предлагает

пользователю.

     


Например, Интерлисп сохраняет полный

перечень всех действий пользователя

и полное описание более ранних состояний

системы и способен автоматически исправлять

многие неточности, как, например, ошибки

в написании. Если эти свойства правильно

использовать, то они повышают производительность

профессионального программиста в большей

степени, чем тратят ресурсы машины.

     


С точки зрения программирования

критике подвергается и внешний 

облик языка: изобилие скобок и кажущийся 

беспорядок. Лисп ("Lots if Idiotic Silly Parentheses")

представляется как трудно-понимаемый

и трудно-изучаемый язык.

     


Такой подход проистекает из используемых

в Лиспе функционального образа

мышления и техники программирования,

которые чужды программистам, привыкшим 

к операторному программированию традиционных

языков. Естественно используемые в

программировании на Лиспе структуры

данных и управляющие структуры часто

сложны, поскольку проблемы искусственного

интеллекта из-за своей сложности предполагают

сложные структуры и программы. Иерархические

списочные структуры и Лисп как раз и задумывались

для работы со сложными проблемами. Искусственное

упрощение структур означало бы пренебрежение

действительной сложностью проблем.

     


Идеей Лиспа является попытка 

упростить решение проблемы, структурируя

используемые данные и упрощая программы.

Такой подход оказался полезным, например,

в объектно-ориентированном программировании

и в экспертных системах. Эти области содержат

больше количество знаний со сложной структурой,

которые интерпретируются часто довольно

простыми процедурами поиска и принятия

решения.

     
Структура

языка Лисп проста и последовательна.

Функции Лиспа можно напечатать

в ясно структурированном и хорошо

читаемом виде. Во многих системах существует

возможность использования 
формы 

записи с малым количеством скобок

и близкой по виду к более традиционным

языкам.

     
Хорошим

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

Лиспа является его широкое применение

в исследовательских работах 

по программированию сложных методов 

обработки знаний. Большая часть 

значимых программ искусственного интеллекта

запрограммирована на Лиспе или на основанном

на нем языке более высокого уровня. По

результатам некоторых исследований можно,

скажем, в среде программирования Лисп-машины

достичь повышения производительности

программирования в несколько десятков

раз по сравнению, например, с программированием

на Коболе.

     
2.4

Языки Ontology


 

     
Некоторые

людей думают они было само лучше 

для того чтобы представить знание

in the same way что он представлено в людской 

разум, который будет единственной

известный деятельностью 
сведения

до тех пор, или представить знание in the

form of людской язык. L. Ричард. Ballard, например,

начинало теори-основанной системой семантики

которая будет язык независимо, который

требует захватить и причина с такими

же принципиальными схемами и теорией

как люди. Семантика формулы основная

теори-основанная является следующим:

Knowledge=Theory+Information. Большинств обычные применения

и системы базы данных язык-основаны. Несчастливо,

мы не умеем как знание представлено в

людском разуме, или как манипулировать

людские языки такая же дорога которой

людской разум делает ее. Один clue что приматы

умеют как использовать пункт и click поверхности

стыка потребителя; таким образом жест-основанная

поверхность стыка кажется, что будет

часть нашего познавательного прибора,

a модальность не связано к учтной язык,

и который существует в другом животные

кроме того люди.

     
Для

этой причины, различно искусственние 

языки и нотации предложите для 

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

основаны дальше логика и математика,

и легко parsed грамматики к легкости обрабатывать

машины. Они обычно падают в обширный домен

ontologies.

     
Ontology

- пооже CycL, нескольк языки ontology

превратитесь. Большая часть декларативные 

языки, и то языки рамки, 

или оснуйте дальше first-order логика.

Большой часть из этих языков только

определяет верхнее ontology с родовыми принципиальными

схемами, тогда как принципиальными схемами

домена не будут часть определения языка.

Английская язык Gellish пример ontological языка

вклюает полный словарь английской языка

инженерства.

     
Пока

hyperlinks come into widespread польза, близко отнесенное

смысловое соединение пока широко не

использует. математически таблица 

использует с тех пор Вавилонско

времена. Недавн, эти таблицы были

использованы для того чтобы представить 

исходы деятельностей логики, such as таблицы

правды, который были использованы для

того чтобы изучить и моделировать булевскую

логику, например. Spreadsheets yet another таблитчатое

представление знания. Другие представления

знания валы, посредством которого соединения

среди основных принципиальных схем и

производеных принципиальных схем можно

показать.

     
Визуально

представления, вызванные «plex» как 

превращено TheBrain Технологией относительно

новы в поле управления знания но дают

потребителю дорогу визуализировать 

как одна мысль или идея подключены

к другим идеям включающ возможность двигать

от одной мысли к другим для того чтобы

расположить необходимы информацию. Подход

не без своих конкурентов.
8

     
Недавний 

способ в языках представления знания

должен использовать XML как низкоуровневый

синтаксис. Это клонит сделать выход этих

языков KR легких для машин к parse, за счет

человека считываемость и часто космос-эффективность.

     
First-order

calculus сказуемого общ использует 

за математически основа для 

этих систем, для избежания чрезмерно

сложность. Однако, даже просто системы

основанные на этой просто логике можно

использовать к приведенные данные которые

наилучшим образом за возмоности обработки

в настоящее время систем компьютера:

см. computability для причин.

     
Примеры

нотаций:
9

     
DATR

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

знание

     
RDF

просто нотация для 
представлять 

отношения между и среди 
предметы

     
Одна 

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

consist of как хранить и манипулировать

знание в информационная система 

в официально дороге TAK, CTO она будет

мочь быть использовано механизмами для

выполнения, котор дали задачи. Примеры

применений экспертные системы, системы

машинного перевода, computer-aided обслуживание

системы и поиск информации системы (включая

front-ends базы данных).

     
Смысловые

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

чтобы представить знание. Каждый узел

представляет a принципиальная схема и

дуги использованы для того чтобы определить

отношения между принципиальными схемами.

Одна из самых выразительных и всесторонн

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

вдоль линий смысловых сетей MultiNet (акроним

для Multilayered выдвинутых смысловых сетей).

     
От

1960s, рамка знания или как раз 

рамка использует. Каждая рамка имеет 

свое собственное имя и комплект

атрибуты, или шлицы содержат значения;

for instance, рамка для дом могл содержать a

цвет шлиц, количество полов шлиц, cEtc.

     
Использование

рамок для экспертные системы 

применение object-oriented программировать,

с унаследование характеристик 

описанных «будет-«соединение. Однако,

не было малого количества сбивчивость

в использовании «будет-» соединение:

J. Рональд. Brachman написал озаглавленную

бумагу «IS-A и не», при котором по-разному

семантика 29 была найдена в проектах которых

схемы представления знания включили

«будет-» соединение. Другие соединения

вклюают соединение «иметь-части».

     
Структуры

рамки well-suited для представления 
схематического

знания и стереотипно познавательных

картин. Природная стихия таких схематических 

картин утяжелены неравно, приписывая

более высокие весы к более 

типичным элементам a схима. Картина активирована

некоторыми ожиданностями: Если персона

видит большую птицу, то он или она расклассифицируют

ее довольно как орел моря чем золотистый

орел, предполагая his or her «мор-схема» в

настоящее время активирована и его «земл-схема»

не будет.

     
Представления

рамки предмет-центризованы в таком 

же чувстве как смысловые сети

являются следующими: Все факты и 

свойства подключенные с принципиальной

схемой расположены в одном месте

- не будет потребности для дорогих 

процессов поиска в базе данных.

     
A

поведенческий сценарий тип 
рамки 

описывает случается височно; 

обычный дали пример, котор то 

из описывать идти к a трактир. 

Шаги вклюают ждать, котор 
нужно 

усадить, получающ меню, приказывать 

и затем prakriya chodnatmak.

     
По-разному 

разрешения можно аранжировать в so-called

смысловой спектр по отношению к их смысловому

expressivity.

     
Заключение


 

     
Обратим

внимание на некоторые аспекты 
представления 

знаний. Не удивительно, что перед 

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

знаний, появляется вопрос о том, что такое

знание, какая его природа и основные характеристики.

В связи с этим употребляют, например,

попытки дать такое определение знания,

из которого можно было бы выходить в решении

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

системах.

     
Представлению

данных свойственный пассивный аспект:

книга, таблица, заполненная информацией

память. В теории искусственного интеллекта

особенно подчеркивается активный аспект

представления знаний: приобретение знания

должно стать активной операцией, что

позволяет не только запоминать, но и применять

воспринятые (приобретенные, усвоенные)

знания для рассуждений на их основе.

     
Использование

символического языка, такой, как языки 

математической логики, позволяет формулировать 

описание в форме, одновременно близкой

и к обычному языку, и к языку программирования.

Впрочем, математическая логика позволяет

рассуждать, базируясь на приобретенных

знаниях: логические выводы действительно

являются активными операциями получения

новых знаний из уже усвоенных.

     
Принципиальная

мировоззренческая установка складывается

в рассмотрении ЭВМ как предмета-посредника

в познавательной человеческой деятельности.

Компьютерная система, подобно другим

посредникам (орудиям труда и предметам

быта, инструментам, приборам, знаково-символическим

системам, научным текстам и так далее

), играя инструментальную роль в познании,

является средством об’ективизации накопленного

знания, воплощением определенного социально

исторического опыту практической и познавательной

деятельности.

     
Проблема 

представления знаний возникла как одна

из проблем искусственного интеллекта.

Она связана с переходом исследований

в этой области в некоторую новую фазу.

Речь идет о создании практически полезных

систем (в первую очередь так называемых

экспертных систем), применяемых в медицине,

геологии, химии. Создание такого рода

систем требует интенсивных усилий по

формализации знания, накопленного в соответствующей

науке.

     
Со 

сроком «представление знаний» связывается 

определенный этап в развитии математического 

обеспечения ЭВМ. Если на первом этапе

доминировали программы, а данные играли

вспомогательную роль своеобразной «еды»

для «голодных» программ, то на следующих

этапах роль данных неуклонно росла. Их

структура усложнялась: от машинного слова,

размещенного в одном амбарчике памяти

ЭВМ, происходил переход к векторам, массивам,

файлам, спискам. Венцом этого развития

стали абстрактные типы данных, которые

обеспечивают возможность создания такой

структуры данных, что наиболее удобная

при решении задания. Последовательное

развитие структур данных привело к их

качественному изменению и к переходу

от представления данных к представлению

знаний. Уровень представления знаний

отличается от уровня представления данных

не только более сложной структурой, но

и существенными особенностями: способность

к интерпретации, наличие классифицированных

связей (например, связь между знаниями,

которые относятся к элементу множественного

числа, и знаниями, об этом множественном

числе), которые позволяют хранить информацию,

одинаковую для всех элементов множественного

числа, записанную одноактный при описании

самого множественного числа, наличие

ситуативных отношений (одновременности,

нахождение в одной точке пространства

и тому подобное, эти отношения определяют

ситуативную совместимость тех или других

знаний, сохраненных в памяти). Кроме того,

для уровня знаний характерны такие признаки,

как наличие специальных процедур обобщения,

пополнения имеющихся в системе знаний

и ряда других процедур.

     
Моделирование

на ЭВМ понималось как техническая 

реализация определенной формы знакового

моделирования. Однако, рассматривая ЭВМ

в гносеологическом плане как посредника

в познании, имеет смысл не фиксировать

внимание, в первую очередь на «железной

части» (hardware) компьютера, а рассматривать

всю компьютерную систему как сложную

систему взаимозависимых и к некоторым

пределам самостоятельных моделей - как

материальных, так и знаковых, то есть

идеальных. Такой подход не только отвечает

рассмотрению компьютерных систем в современной

информатике, но есть и гносеологически

оправданным. Много важных философских

аспектов проблем, которые возникают в

связи с компьютеризацией разных сфер

человеческой деятельности, требуют для

своего исследования обращения, в первую

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

систем. Это верно и относительно философских

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

     
В

последние годы все чаще стал употребляться 

срок «компьютерное моделирование».

Очевидно, имеет смысл помечать им

построение любой из составляющих компьютерной

системы - будь то знаковая модель или

материальная.

     
В

области искусственного интеллекта,

решение задач может быть упрощено

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

знаний. Определенный метод может 

сделать какую-либо область знаний

легко представимой. Например диагностическая 

экспертная система Мицин использовала

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

на правилах. Неправильный выбор метода

представления затрудняет обработку.

В качестве аналогии можно взять вычисления

в индо-арабской или римской записи. Деление

в столбик проще в первом случае и сложнее

во втором. Аналогично, не существует такого

способа представления, который можно

было бы использовать во всех задачах,

или сделать все задачи одинаково простыми.
 

     
Глоссарий


 

№ п/п Понятие Определение
1 2 3
1 OWL (англ. Web Ontology

Language)
язык описания

онтологий для семантической 

паутины. Язык OWL позволяет описывать 

классы и отношения между ними,

присущие для веб-документов и приложений.
2 База 

знаний
семантическая

модель, описывающая предметную область 

и позволяющая отвечать на такие 

вопросы из этой предметной области, ответы

на которые в явном виде не присутствуют

в базе. База знаний является основным

компонентом интеллектуальных и экспертных

систем.
3 Лисп универсальный

язык программирования высокого уровня.

Язык Лисп:

- относится

к декларативным языкам функционального

типа;

- предназначен 

для обработки символьных 
данных,

представленных в виде списков.
 

Основой

языка являются функции и рекурсивные 

построения.

4 Логическое 

программирование
программирование 

в терминах фактов и правил вывода,

с использованием языка, основанного на

формальных исчислениях.
5 Модель 

представления знаний
формализм, предназначенный 

для отображения статических 

и динамических свойств предметной

области. Различают универсальные 

и специализированные модели представления

знаний.
6 Пролог  язык логического 

программирования, программа на 

котором состоит: 

- из 

логических утверждений, 
образующих 

базу данных; и 

- из 

правила вывода новых 
утверждений 

из известных.

7 Система

представления знаний
средство: описания

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

организации знаний, включая: накопление,

анализ и обобщение знаний. Центральное

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

занимает язык представления знаний.
1 2 3
8. Система

управления базами знаний
комплекс программных,

языковых и интеллектуальных средств,

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

и использование базы знаний.
9 Специализированная 

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

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

знаний, разработанная для конкретной

проблемной области.
10 Экспертная 

система
система искусственного

интеллекта, включающая знания об определенной

слабо структурированной и 
трудно

формализуемой узкой предметной

области и способная предлагать

и объяснять пользователю разумные

решения. Экспертная система состоит 

из базы знаний, механизма логического

вывода и подсистемы объяснений.

     
Список 

использованных источников


 

1 Анатолий Адаменко,

Андрей Кучуков Логическое программирование

и Visual Prolog (с CD).. — СПб.: «БХВ-Петербург»,

2003. — 990 c. — ISBN 5-94157-156-9
2 Артур B. Markman: Представление

знания Сподвижницы Лоренс Erlbaum, 2009. –

398 c. — ISBN 6-783-78375-8
3 Благодатских 

В.А., Волнин В.А., Поскакалов К.Ф. Стандартизация

разработки программных средств. - М:

Финансы и статистика, 2003. -650 c. —

ISBN 70958-916-7
4 Братко Иван. Алгоритмы

искусственного интеллекта на языке PROLOG

= Prolog Programming For Artificial Intelligence. — М.: Вильямс,

2004. — 640 с. — ISBN 0-201-40375-7
5 Вендров А.М. Проектирование

программного обеспечения экономических

информационных систем - М: Финансы и статистика,

2002.- 450 c. — ISBN 8-94892-806-8
6 Вендрова А.М.

Практикум по проектированию программного

обеспечения экономических 
информационных

систем - М: Финансы и статистика,

2002.- 635 c. — ISBN 8-98157-706-6
7 Джозеф Джарратано,

Гари Райли Глава 2. Представление 

знаний (в PDF) // Экспертные системы: принципы

разработки и программирование = Expert

Systems: Principles and Programming. — 4-е изд. — 

М.: «Вильямс», 2006. —1152 c. — ISBN 789-5-8959-6656
8 Джон F. Sowa: Представление

знания: Логически, философски, и вычислительные

учредительства. Ручейки/Cole: Нью-йорк,

2000.- 670 c.
9 Майкл Negnevitsky: Искусственный

интеллект, направляющий выступ к толковейшим

системам, Ограничиваемое образование,

2002. – 782 c. — ISBN 0-508-36387-0
10 Черемных С.В.,

Семенов И.О., Ручкин В.С. Структурный 

анализ систем: IDEF-технологии - М: Финансы 

и статистика, 2001. – 890 c.— ISBN 0-809-40780-8
<</div>



Ваше мнение



CAPTCHA