kif converter knowledge net
Download
Skip this Video
Download Presentation
Компонента “KIF Converter” проекта KNOWLEDGE . NET

Loading in 2 Seconds...

play fullscreen
1 / 28

Компонента “KIF Converter” проекта KNOWLEDGE . NET - PowerPoint PPT Presentation


  • 112 Views
  • Uploaded on

Санкт-Петербургский Государственный Университет. Компонента “KIF Converter” проекта KNOWLEDGE . NET. Докладчик Сигалин Максим Владимирович. Научный руководитель Сафонов Владимир Олегович , проф., д.т.н. KIF (Knowledge Interchange Format). Обмен знаниями.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Компонента “KIF Converter” проекта KNOWLEDGE . NET' - halil


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
kif converter knowledge net

Санкт-Петербургский Государственный Университет

Компонента “KIF Converter” проектаKNOWLEDGE.NET

ДокладчикСигалин Максим Владимирович

Научный руководительСафонов Владимир Олегович,проф., д.т.н.

kif knowledge interchange format
KIF (Knowledge Interchange Format)
  • Обмен знаниями
  • Язык исчисления предикатов второго порядка
  • Не имеет конструкций для описания фреймов/онтологий
  • http://logic.stanford.edu/kif/dpans.html
ontolingua
Система Ontolingua
  • Надстройка над KIF
  • Имеет конструкции для описания фреймов/онтологий
  • Набор трансляторов в другие языки представления знаний
  • http://www.ksl.stanford.edu/software/ontolingua/
knowledge net
Конструкции Knowledge.NET
  • Фреймы
  • Онтологии
slide6
Фреймы

Общий вид:

frame FR_CATEGORY FR_IDEN { SLOTS}

slide7
Слоты

SLOTS ::=own_slots [[SL_DESC] SL_NAME[=SL_VALUE];]+ [instance_slots [SL_DESC SL_NAME[=SL_VALUE];]+ ]

slide8
Слоты (расширенное описание)

facets {typeTYPE; [valueVALUE;] [default_valueDEF_VALUE;]} SL_NAME;

slide9
Наследование фреймов

own_slots is_a FR_IDEN1, | FR_IDEN2, FR_IDEN3, FR_IDEN4, …;

slide10
Онтологическая модель
  • Концепты
  • Подконцепты
    • Ais_subconcept_ofB,C;
    • А {is_subconcept_ofB,C;}
  • Thing
slide11
Определение через отношения
  • Пересечение

concept A is_intersection_of B, C, D…

  • Объединение

concept A is_union_of B, C, D…

  • Дополнение

concept A is_complement_of B, C, D…

slide12
Свойства

datatypepropertyPROP_NAME

{

domain A, B, C, …;

range X, Y, Z, ...;

}

slide13
Пример

#ontology “Vehicles”

#concepts

Color is_subconcept_of Thing;

Vehicle is_subconcept_of Thing;

Plane is_subconcept_of Vehicle;

Submarine is_subconcept_of Vehicle;

disjoint Plane, Submarine;

disjoint Color, Vehicle;

#properties

object property HasColor{

domain Vehicle;

rangeColor;

}

slide14
Подсвойства

object property X is_subproperty_of Y{

domainA, B, C, …;

rangeK, L, M, …;

}

slide15
Пример

#concepts

concept Human{

is_subconcept_of {

Thing;

HasSibling some_values_from Sibling;

IsChildOf cardinality 2;

}

}

#properties

object property IsChildOf{

domain Human;

range Human;

inverse HasChild;

}

slide16
Экземпляры

individualDmitry{

alias “Dima”;

is_a Human;

HasSibling = Nina;

HasAncestor = {Victor, Ludmila, Grigory, Alena};

HasChild = {Egor, Maria};

}

ontolingua1
Конструкции Ontolingua
  • DEFINE-CLASS
  • DEFINE-FRAME
  • DEFINE-INSTANCE
define class
DEFINE-CLASS

(DEFINE-CLASS<structure-name> (<argument-list>)

{:def | :iff-def} <sent-with-arg-vars> [:constraints <sent-with-arg-vars>]

[:class-slots (<slot-spec>*)]

[:instance-slots (<extended-slot-spec>*)] [:default-slot-values (<slot-spec>*)]

)

slide19
Пример

(define-class female-person (?person) "female humans"

:iff-def (and (human ?person)

(= (gender ?person) female))

)

slide20
Слоты
  • (Name (SLOT-VALUE-TYPE string))
  • Предопределенные собственные слоты:
    • INSTANCE-OF
    • SUBCLASS-OF
    • ALIAS
    • DOMAIN
    • RANGE
    • ...
define instance
DEFINE-INSTANCE

(define-instance<instance-name>

(<class-name>+)

...

)

slide22
Реализация
  • Интерфейс IModelItem
    • Паттерн Composite
    • Методы:
      • ICollection<IModelItem> getChildren()
      • Write(StreamWriter writer)
  • Интерфейс IModel: IModelItem
imodelitem
Реализации IModelItem
  • Класс AbstractModelItem
    • реализация метода write(StreamWriter writer) – делегирует своим частям
  • Иерархия KIFObject: AbsractModelItem
  • Иерархия OntolinguaObject: KIFObject
  • Части-терминалы
    • паттерн Flyweight
imodel
Реализации IModel
  • KIFModel
  • OntolinguaModel
slide25
Создание моделей
  • Интерфейс IModelBuilder
    • паттерн Builder
    • методы
      • buildFrame(DataFrame frame)
      • buildSlot(Slot slot) ...
      • IModel getModel()
    • Реализации
      • KifModelBuilder
      • OntolinguaModelBuilder
slide26
Конвертация в KIF
  • Класс KifModelBuilder: OntolinguaModelBuilder
    • при создании делегирует методы предку
    • канонизирует
    • заменяет конструкции Ontolingua на конструкции KIF
    • вычисляет зависимости, меняя и пополняя модель
ad