4.2. Онтология CYC. Онтология CYC Lenat D. Самый амбициозный проект Начат в 1984 1 млн. утверждений common sense Микротеории: пространство, время, причинность.

Презентация:



Advertisements
Похожие презентации
Multiples Michael Marchenko. Definition In mathematics, a multiple is the product of any quantity and an integer. in other words, for the quantities a.
Advertisements

Я, по крайней мере, думал, что противоречить друг другу могут только высказывания, поскольку они через умозаключения ведут к другим высказываниям, и мне.
СУБД СЛОЖНЫЕ УСЛОВИЯ ПОИСКА. ВОПРОСЫ НА ПОВТОРЕНИЕ Что такое поле в базе данных? Что такое поле в базе данных? Что называется структурой БД? Что называется.
Алгебра логики. Логика Логика – это наука о формах и законах человеческой мысли, о законах доказательных рассуждений, изучающая методы доказательств и.
МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ. ПЛАН Типы представления знанийЛогическая модельСемантическая модельФреймовая модельПродукционная модель.
Семантический анализ КC-грамматики, с помощью которых описывают синтаксис языков программирования, не позволяют задавать контекстные условия (КУ), имеющиеся.
Оператор ветвления. Для реализации ветвления в программе используют условный оператор (оператор ветвления). Условный оператор в полной форме записывается.
The idea of money is one of the most fascinating ever developed by man. Thousands of years ago money was not used, the «barter» system existed. People.
Реляционное исчисление. Общая характеристика Запрос – формула некоторой формально-логической теории; описывает свойства желаемого результата. Ответ –
Логика первого порядка ХНУРЭ, кафедра ПО ЭВМ, Тел , Лекции Н.В. Белоус Факультет компьютерных наук Кафедра.
ГБПОУ «МСС УОР 2» Москомспорта Преподаватель информатики Володина М.В г.
Логические функции Позволяют решать с помощью табличного процессора логические задачи.
Логика первого порядка ХНУРЭ, кафедра ПО ЭВМ, Тел , Лекции Н.В. Белоус Факультет компьютерных наук Кафедра.
Базы данных Лекция 6 Базисные средства манипулирования реляционными данными: реляционное исчисление.
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Lesson 2. How to say hello & goodbye ?. When we first meet someone whether it is a person we know or someone we are meeting for the first time, we will.
Основы логики. Высказывания.. Логика Логика это наука о формах и способах мышления. Это учение о способах рассуждений и доказательств.
ЦИКЛИЧЕСКИЙ АЛГОРИТМ Цели: -Познакомиться с понятием циклического алгоритма. -Освоить языковые средства для реализации циклических алгоритмов.
3.1. Назначение онтологий. Информационный поиск..
Учебная дисциплина «Базы данных» для студентов специальности Бизнес-информатика (бакалавриат) ЛЕКЦИЯ 3 ВВЕДЕНИЕ В РЕЛЯЦИОННУЮ МОДЕЛЬ ДАННЫХ Вопрос.
Транксрипт:

4.2. Онтология CYC

Онтология CYC Lenat D. Самый амбициозный проект Начат в млн. утверждений common sense Микротеории: пространство, время, причинность Онтология 6 тысяч понятий верхнего уровня – в открытом доступе

Разработчики Cyc Начало 80-х годов Douglas Lenat и адмирал Inman Microelectronics and Computer TechnologyCorporation C 1995 Cycorp

Cyc и онтологии In philosophy, ontology is the study of being. In knowledge-based systems, an ontology is that part of the system which specifies what things exist what is true about them. Cycs ontology is essentially its whole knowledge base

Cyc: symbolic AI Нет статистики утверждений (1995): факты, правила Cyc is intended to provide a deep layer of understanding that can be used by other programs (such as domain-specific expert systems) to make them more flexible

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

Какие знания нужны: пример Napoleon died on St.Helena. Wellington was greatly suddened Мы знаем, что Веллингтон узнал о смерти Наполеона, Веллингтон пережил Наполеона и т.п.

Knowledge pump 1) Наполнить базу миллионами терминов, понятий, фактов, правил, которые необходимы для повседневной жизни 2) Научить общаться на естественном языке, чтобы увеличивать свою базу знаний 3) Самообучение

Представление знаний Сначала предполагалось использовать фреймы Но как представлять мнения, ожидания, противоречащие условия Сейчас логика предикатов второго порядка: P(a1, …an), S(P1,…, Pm)

CycL: константы Словарь онтологии: сущности и понятия #$Walking #$Typewriter Individuals: –#$InternalRevenueService –#$Walking Имена предикатов: #$isa, #$likesAsFriend Имена функций #$GovernmentFn: #$GovernmentOf (#$Canada))

Имена констант Уникальные имена Правила написания Должно отличать понятие от похожих понятий: Bow –Bow-BoatPart –BowTheWeapon –Bowing-BodyMovement

Значимость имен - 1 Понятие Зеленый цвет: #$Green, #$GreenColor, #$Verde, #$Gruen, #$EMRG Смысл понятия задается утверждениями (assertions): 1) (#$isa #$EMRG #$Color) 2) (#$colorOfObject #$Grass37 #$EMRG) 3) (#$forAll ?L (#$implies (#$ ?L #$Leaf) (#$colorOfObject ?L #$EMRG)))

Значимость имен - 2 #$LittleRedHairedGirlLikedByCharlieBrown –#$FemaleChild –#$hairColor –#$RedHairColor –#$CharlieBrown –#$likesAsFriend

Предикаты Число аргументов – predicate arity Фиксированное число аргументов, кроме таких предикатов как #$different Предикат имеет не больше 5 аргументов Запись предиката в утверждениях Cyc должна иметь заявленное число аргументов

Предикаты: типы аргументов Определяются в описании предиката #$arg1Isa, #$arg2Isa Предикат #$residesInDwelling (#$isa #$residesInDwelling #$BinaryPredicate) (#$arg1Isa #$residesInDwelling #$Animal) (#$arg2Isa #$residesInDwelling #$ShelterConstruction)

Функции В основном, фиксированное число аргументов (до 5) Есть функции с произвольным числом аргументов: #$PlusFn Типы аргументов Если число аргументов не задано, то один тип для всех: #$argsIsa Результат – тип результата - #$resultIsa

Пример описания функции: (#$arity #$GovernmentFn 1) (#$arg1Isa #$GovernmentFn #$GeopoliticalEntity) (#$resultIsa #$GovernmentFn #$RegionalGovernment)

Переменные Названия: ?FOO Если в утверждении используется одна переменная, то обычно – это одна буква Если несколько – то лучше использовать мнемонические имена

Формулы и термы Термы (terms) – –константы –переменные –функции Формула – это список в скобках Простейшая формула (Atomic Formula) – предикат с заполненными аргументами Сложная формула (Complex Formula) включает логические связки и квантификаторы

Атомные формулы: примеры (#$likesAsFriend #$DouglLenat #$KeithGoolsbey) (#$skillCapableOf #$LinusVanPelt #$PlayingAMusicalInstrument ) (#$colorOfObject ?CAR ?COLOR) Первые две формулы – ground atomic formulas (GAF)

Логические операторы #$not, #$and, #$or, #$implies #$implies = правило if-then #$implies –Первая часть антецедент –Вторая часть консеквент

Пример правила (#$implies –(#$ownerOfObject #$Bike001 #$Fred) –(#$colorOfObject #$Bike001 #$RedColor)) –Утверждается, что или первый аргумент ложный, или второй аргумент истинный

CycL: квантификаторы ForAll thereExists, thereExistsAtLeast, thereExistsAtMost, thereExistsExactly (#$forAll ?X –(#$implies (#$owns #$Fred ?X) (#$objectFoundLocation ?X #$FredsHouse)))

Пример с квантификаторами (#$implies –(#$isa ?P #$Person) –(#$there ExistExactly 2 ?Leg) (#$and –(#$isa ?Leg #$Leg) –(#$anatomical Parts ?P ?Leg))))

CycL: значение истинности Microtheories 5 значений истинности: –Default true –Monotonically true=true with no exceptions –Default false –Monotonically false –unknown

Утверждения (assertions) Каждое утверждение включает: –Формулу –Микротеорию –Значение истинности –Направление –обоснование

Утверждение и значение истинности При вводе утверждения monotonically true, происходит проверка на противоречивость с базой знаний –Если утверждение с переменными, то если находится объект, для которого утверждение не выполняется, то – ошибка –Если было утверждение об отрицании вводимой формулы для некоторого объекта - ошибка

Направление Определяет, когда начинается вывод с использованием данного утверждения –Forward (вывод начинается в момент помещения утверждения в базу знаний) –Backward (включается при специальном запросе) –По умолчанию GAFs – forward, правила - backward

ASK операция Запрос об истинности той или иной формулы. Включает: –Формулу –Микротеорию –Направление –Число ответов (bindings) –Ограничение по времени –Глубина вывода

Пример ASK (#$and –(#$geographicalSubRegions #$ContinentOfEurope ?X) –(#$headOfStateOf ?X ?Y)) –Direction: backward –Number: 5 –Time: 10 –Inference depth: 3

Продукты компании Cyc Knowledge Server (поставляется разработчикам по индивидуальным лицензиям) CycSecure – исследование уязвимости программного обеспечения - продается CycAnswers - разрабатывается

Cyc Knowledge Server Cyc Knowledge Base Cyc Inference Engine CycL Representation Language Natural Language Processing Subsystem Cyc Semantic Integrated Bus – связь между традиционными структурами хранения (базы данных) и Knowledge base Cyc Developer Toolsets

CycAnswers Semantic Knowledge Source Integrator – генератор ответов, использующий базу знаний Integrity Auditor – анализ соответствия содержимого баз данных и знаний на соответствие запросам User Profiles – настройка на пользователя

Пример неоднозначной синтаксической интерпретации John washed the dishes on the table 1) John washed the dishes which are now on the table 2) John did the dishwashing on the table Правило: Cyc knows that dishwashing typically occurs in sinks or dishwashers, not on tables.

Разрешение референции Fred went to the store, bought a candy bar with his credit card, walked to the park, and ate it. It - "store", "candy bar", "credit card", and "park" ? Правило: parks, stores, and credit cards aren't things which are normally eaten

OpenCyc 6 тысяч понятий - 60 тысяч суждений Cyc Inference Engine Cyc Knowldege Browser Документация Спецификация языка CycL Трансляторы CycL-to-Lisp, CycL-to-C

Upper Cyc Ontology (UCO) Основные структурирующие отношения #$isa – отношение примера к коллекции или классу: (#$isa X Y) #$genls – одна коллекция подмножество другой: (#$genls X Y)

Примеры и свойства - 1 #$genls - транзитивно (#$genls #$Dog #$Mammal) и (#$genls #$Mammal #$Vertebrate) Следует (#$genls #$Dog #$Vertebrate)

Примеры и свойства - 2 #$isa – нетранзитивно (#$isa #$Pufy #$Dog) и (#$isa #$Dog #$BiologicalClass) Не следует (#$isa #$Pufy #$BiologicalClass)

Свойства: isa+genls=isa (#$isa #$Pufy #$Dog) и (#$genls #$Dog #$Mammal) Следует (#$isa #$Pufy #$Mammal)

Организация top ontology Для каждого понятия Набор #$isa отношений Набор #$genls Multiple-inheritance Комментарий на английском языке

Пример: skin #$Skin A (piece of) skin serves as outer protective and tactile sensory covering for (part of) an animal's body. This is the collection of all pieces of skin. Some examples include #$TheGoldenFleece (representing an entire skin of an animal) and (#$BodyPartFn #$YulBrynner #$Scalp) (representing a small portion of his skin). isa: #$AnimalBodyPartType genls: #$BiologicalLivingObject #$AnimalBodyPart #$SheetOfSomeStuff #$VibrationThroughAMediumSensor #$TactileSensor

Вопросы к лекции