Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Закрытая и открытая модели описания содержимого элемента⇐ ПредыдущаяСтр 12 из 12
Когда мы определяем модель содержимого текущего элемента, список дополнительных допустимых элементов правилами не ограничивается - он может свободно расширяться. Например, для приведенного выше правила, кроме обозначенных элементов <tel>,<url> и <email> вполне могут использоваться дополнительные элементы, неописанные правилами, например, <fax>: <contacts> <tel>12-12-12</tel> <fax>21-21-21</fax> <email>[email protected]</email> <url>http://www.j.com</url> </contacts> Однако в том случае, если мы хотим ограничить создаваемые нами правила от включения дополнительных элементов, мы должны использовать атрибут content и установить для него специальное значение CLOSED: <elementType id="contacts" content="CLOSED"> <element type="#tel"> <element type="#email"> <element type="#url"> </elementType> Теперь приведенный фрагмент XML-документа будет считаться некорректным, т.к. параметром contentзапрещено использование внутри элемента contacts других объектов, кроме указанных в правиле.
AIML ( Artificial Intelligence Markup Language ) — язык разметки для искусственного интеллекта. AIML — подмножество XML, он предназначается для создания виртуальных собеседников. Основой AIML (мозга бота) являются категории (category), содержащие ключевые слова (pattern) и ответные реплики (template). <?xml version="1.0" encoding="UTF-8"?>
Обладая таким мозгом, бот сможет отвечать на слово "Привет" (независимо от регистра), произвольно выбирая в качестве варианта ответа либо "приветик ...", либо "Здравствуйте!". <?xml version="1.0" encoding="UTF-8"?> <category> </aiml> Вторая категория (<pattern>ПРИВЕТ *</pattern>) соответствует любой строке, которая начинается со слова "привет" и отправляет бота к категории "ПРИВЕТ" с помощью конструкции <srai>ПРИВЕТ</srai>. Передразнивание. Тег <star/>. Допустим, собеседник предлагает боту неизвестную тему для разговора: "Поговорим о ФКН". Тем для разговора может быть много, знать их все боту нереально трудно, поэтому мы создаем лишь иллюзию того, что бот понимает о чем речь и принимает тему, отвечая: "Ок, о ФКН так о ФКН ...". Создать такую ответную реплику нам удается с помощью тега <star/>. <category>
<star/> - это та самая звездочка, которая стоит в паттерне. Таким образом то, что находится после "Поговорим о" будет вставлено в ответную реплику. Человек: Поговорим о ФКН? Тег <sr/>
Что же такое <sr/>? <sr/> это сокращенная запись <srai><star/></srai>, то есть ссылка на звездочку. < category > <category> <category>
Пример разговора: Человек: Я думаю, ты хороший бот. Ключевой символ «_» Этот символ отбрасывает все слова, которые были написаны до искомого слова и обрабатывает только слово, которое должно быть после данного символа.
Примечание: в случае если искомое слово было написано слитно с «_», то искомое слово как отдельное не найдётся. <category>
Пример общения:
We're true friends It is good! You're my friend Well, when there are friends
Бот, а также интернет-бот, www-бот и т. п. (англ. bot, сокр. от англ. robot) – специальная программа, выполняющая автоматически и/или по заданному расписанию какие-либо действия через те же интерфейсы, что и обычный пользователь
<?xml version="1.0" encoding="ISO-8859-15"?>
Теги <set>, <get> Данные теги используются для работы с переменными в AIML. <set> устанавливает значение переменной
<get> получает значение переменной
Пример <set> , <get> <category> <pattern>I am *</pattern> <template> Hello <set name="username"> <star/>! </set> </template> </category> <category> <pattern>Good Night</pattern> <template> Hi <get name="username"/> Thanks for the conversation! </template> </category> Пример диалога Human: I am Mahesh Robot: Hello Mahesh! Human: Good Night Robot: Good Night Mahesh! Thanks for the conversation!
Тег <that> Данный тег используется в AIML для реагирования внутри контекста
<category> <pattern>WHAT ABOUT MOVIES</pattern> <template>Do you like comedy movies</template> </category> <category> <pattern>YES</pattern> <that>Do you like comedy movies</that> <template>Nice, I like comedy movies too.</template> </category> <category> <pattern>NO</pattern> <that>Do you like comedy movies</that> <template>Ok! But I like comedy movies.</template> </category>
Human: Hi Alice! What about movies? Robot: Do you like comedy movies? Human: No Robot: Ok! But I like comedy movies.
Тег < topic > Данный тег используется в AIML для хранение контекста, на основе которого будет базироваться дальнейший диалог с ботом. Как правило, тег <topic> используется в общении типа ДА/НЕТ Human: let discuss movies Robot: Yes movies Human: Comedy movies are nice to watch Robot: Watching good movie refreshes our minds. Human: I like watching comedy Robot: I too like watching comedy.
<category> <pattern>LET DISCUSS MOVIES</pattern> <template>Yes <set name="topic">movies</set></template> </category> <topic name="movies"> <category> <pattern> * </pattern> <template>Watching good movie refreshes our minds.</template> </category> <category> <pattern> I LIKE WATCHING COMEDY! </pattern> <template>I like comedy movies too.</template> </category> </ topic > Тег < think > Данный тег используется в AIML для хранения значения переменной без уведомления пользователя об этом.
Human: My name is Mahesh Robot: Hello! Human: Byeee Robot: Hi Mahesh Thanks for the conversation!
<category> <pattern>My name is *</pattern> <template> Hello!<think><set name="username"> <star/></set></think> </template> </category> <category> <pattern>Byeee</pattern> <template> Hi <get name="username"/> Thanks for the conversation! </template> </category> Тег < condition > Данный тег похож на переключатель темы Human: How are you feeling today Robot: I am happy!
<category> <pattern>ARE YOU FEELING TODAY *</pattern> <template> <think><set name="state"> <star/> </set></think> <condition name="state" value="happy"> I am happy! </condition> <condition name="state" value="sad"> I am sad! </condition> </template> </category> 23. Программный бот, его программирование, регистрация в WWW, сообщества ботов. Области использования ботов. Ро́бот, или бот, а также интернет-бот, www-бот и т. п. (англ. bot, сокр. от чеш. robot) — специальная программа, выполняющая автоматически и/или по заданному расписанию какие-либо действия через те же интерфейсы, что и обычный пользователь. Обычно боты предназначаются для выполнения работы, однообразной и повторяемой, с максимально возможной скоростью (очевидно, намного выше возможностей человека). Лицо, обслуживающее серверы, может поместить на сервере файл robots.txt, содержащий ограничения, которым обязаны подчиняться боты. Боты находят также применение в условиях, когда требуется лучшая реакция по сравнению с возможностями человека (например, игровые боты, боты для интернет-аукционов и т. п.) или, реже, для имитации действий человека (например, боты для чатов и т. п.). Чат-бот может выдать достаточно адекватный ответ на вопрос, сформулированный на правильном русском языке (или любом другом, работа с которым поддерживается). Такие боты часто применяются для сообщения прогноза погоды, результатов спортивных соревнований, курсов валют, биржевых котировок и т. п. Они находят применение, например, в системе SmarterChild в AOL Instant Messenger и MSN messenger. (наплетите фигню, как мы создавали чат-бота на сайте Pandora). Также бывают боты для коммерческого использования, такие используются на eBay, а также для вредоносного использования. У каждого бота должна бать своя учетная запись. Все боты, которые осуществляют какие-либо протоколируемые действия (например, редактирование страниц, загрузка файлов или создание аккаунтов), должны быть одобрены до начала работы. Операторы могут осуществлять ограниченное тестирование ещё не одобренного бота при условии, что испытания малы и немногочисленны, а также ограничены в области проведения тестовыми страницами. Подобные тестовые правки могут быть выполнены из-под любой учётной записи. Кроме того, любой бот или автоматизированный процесс, затрагивающий лишь собственные личные страницы и подстраницы либо личные страницы ботовладельца, может быть запущен без предварительного одобрения. 24. Понятие онтологии, элементы онтологии : экземпляры (примеры), понятия (концепты), атрибуты, отношения.
Термин «онтология» был предложен Рудольфом Гоклениусом в 1613, имеет два значения: • «Философская дисциплина, которая изучает наиболее общие характеристики бытия и сущностей» • «Онтология – артефакт, структура, описывающая значения элементов некоторой системы» Онтология - это точная спецификация некоторой предметной области. Формальное и декларативное представление, которое включает словарь (или имена) указателей на термины предметной области и логические выражения, которые описывают, что эти термины означают, как они соотносятся друг с другом, и как они могут или не могут быть связаны друг с другом. Самое короткое определение. Онтология - это спецификация концептуализации (Том Грубер, 1993 ) • Тезаурусы -особая разновидность словарей, в которых указаны семантические отношения (синонимы, антонимы, паронимы, и т. п.) между лексическими единицами. • Словари, таксономии • Идея системы ссылок (пример нелинейного описания предметной области - Библия). Элементы онтологий Современные онтологии строятся по большей части одинаково, независимо от языка написания. Обычно они состоят из экземпляров, понятий, атрибутов и отношений. Экземпляры (англ. instances) или индивиды (англ. individuals) — это основные, нижнеуровневые компоненты онтологии. Экземпляры могут представлять собой как физические объекты (люди, дома, планеты), так и абстрактные (числа, слова). Строго говоря, онтология может обойтись и без конкретных объектов. Однако, одной из главных целей онтологии является классификация таких объектов, поэтому они также включаются. Понятия (англ. concepts) или классы (англ. classes) — абстрактные группы, коллекции или наборы объектов. Они могут включать в себя экземпляры, другие классы, либо же сочетания и того, и другого. Пример: · Понятие «люди», вложенное понятие «человек». Чем является «человек» — вложенным понятием, или экземпляром (индивидом) — зависит от онтологии. · Понятие «индивиды», экземпляр «индивид». Классы онтологии составляют таксономию — иерархию понятий по отношению вложения[1]. Объекты в онтологии могут иметь атрибуты. Каждый атрибут имеет по крайней мере имя и значение и используется для хранения информации, которая специфична для объекта и привязана к нему. Например, объект Автомобиль-модели-А имеет такие атрибуты, как: · Название: Автомобиль-модели-А · Число-дверей: 4 · Двигатель: {4.0Л, 4.6Л} · Коробка-передач: 6-ступенчатая Значение атрибута может быть сложным типом данных. В данном примере значение атрибута, который называется Двигатель, является списком значений простых типов данных. Важная роль атрибутов заключается в том, чтобы определять отношения (зависимости) между объектами онтологии. Обычно отношением является атрибут, значением которого является другой объект. Предположим, что в онтологии автомобилей присутствует два объекта — автомобиль Автомобиль-модели-А и Автомобиль-модели-Б. Пусть Автомобиль-модели-Б это модель-наследник Автомобиль-модели-А, тогда отношение между Автомобиль-модели-А и Автомобиль-модели-Б определим как атрибут «isSuccessorOf» со значением «Автомобиль-модели-А» для объекта Автомобиль-модели-Б (следует заметить, что в языках описания онтологий существуют предопределенные отношения наследования).
25. Типы онтологий: верхнего уровня, предметных областей, прикладные онтологии. Характеристики онтологий верхнего уровня (ОВУ)
n Набор основных отношений: § Иерархические § класс-подкласс § часть-целое § Ассоциативные n Типичные концепты и принципы разделения: § Сущность § Явление § Объект § Процесс § Роль n Нацеленность на многократное повторное использование онтологии
Характеристики онтологий предметных областей n Существенные отличия от ОВУ: § Охват конкретной области знаний (авиация, медицина, культура), § Круг решаемых задач и вопросов, на которые онтология отвечает, ограничен выбранной областью, § Больший по сравнению с ОВУ объем онтологии, § Наличие отношений специфичных для конкретной области. n Повторное использование только в рамках предметной области
Характеристики прикладных онтологий n Направленность на решение конкретной задачи, обеспечение работы некоторого приложения. n Круг вопросов, на которые онтология отвечает n Задается перед ее созданием n Влияет на процесс концептуализации n Используется для проверки “компетентности” онтологии
26. Языки описания онтологий. Стандарты. Язык описания онтологий — формальный язык, используемый для кодирования онтологии. Существует несколько подобных языков (изначально это был язык XML): · OWL — Web Ontology Language, стандарт W3C, язык для семантических утверждений, разработанный как расширение RDF и RDFS; · KIF (англ.)русск. (англ. Knowledge Interchange Format — формат обмена знаниями) — основанный на S-выражениях синтаксис для логики; · Common Logic (CL) (англ.)русск. — преемник KIF (стандартизован — ISO/IEC 24707:2007). · CycL (англ.)русск. — онтологический язык, использующийся в проекте Cyc. Основан на исчислении предикатов с некоторыми расширениями более высокого порядка. · DAML+OIL (англ.) русск. (FIPA) Для работы с языками онтологий существует несколько видов технологий: редакторы онтологий (для создания онтологий), СУБД онтологий (для хранения и обращения к онтологии) и хранилища онтологий (для работы с несколькими онтологиями).
27. Назначение онтологий. Задачи, решаемые с помощью онтологий. ОНТОЛОГИИ: применение • формирование и фиксация общего разделяемого всеми экспертами знания о предметной области (ПО) • явная концептуализация ПО, позволяющая описывать семантику данных • Возможность многократно использовать формализованные знания • интеграция и возможность совместного использования разнородных данных и знаний в рамках одной системы • обеспечение лучшего понимания предметной области пользователями системы • Использование онтологии при проектировании и разработке ИС (управляемая онтологией разработка ИС). • Использование онтологии в качестве полноценного компонента ИС (в управляемой онтологией ИС) |
Последнее изменение этой страницы: 2019-04-10; Просмотров: 207; Нарушение авторского права страницы