1 / 86

Semantika koolitus . Moodul 3 Ontoloogiate formaliseeri - mine ja realiseerimine

Semantika koolitus . Moodul 3 Ontoloogiate formaliseeri - mine ja realiseerimine. / koolituse koht , aeg , asutus / / koolitajad /. Tellija: Euroopa Liidu struktuurifondide programm “Infoühiskonna teadlikkuse tõstmine”. K oolitusmooduli eesmärk.

aurek
Download Presentation

Semantika koolitus . Moodul 3 Ontoloogiate formaliseeri - mine ja realiseerimine

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Semantikakoolitus. Moodul 3Ontoloogiateformaliseeri-mine jarealiseerimine /koolitusekoht, aeg, asutus/ /koolitajad/ Tellija: Euroopa Liidu struktuurifondide programm “Infoühiskonna teadlikkuse tõstmine”

  2. Koolitusmooduli eesmärk • Anda ülevaade teadmiste esitamise viisidest ja ontoloogiate esitamise keeltest • Selgitada OWL keele konstruktsioone ja nende kasutamist ontoloogiate loomisel • Tutvustada ontoloogiate kvaliteedi hindamise aspekte • Realiseerida oma organisatsiooni valdkonna spetsiifika kirjeldamise ontoloogia OWL vormingus

  3. Kuidas semantikat esitada ja mis on ontoloogiad? TEADMISTE ESITAMINE

  4. Teadmiste esitamise viisid • Graafilised esitlused • Semantikavõrgud (semantic networks) • Teemakaardid (topic maps) • UML • RDF • Formaalsel loogikal baseerivad esitlused • Kirjeldusloogikad (OIL, DAML+OIL, OWL jne) • Reeglid (RuleML, Prolog jne) • Esimest järku loogika

  5. Teadmiste esitamise näited

  6. Ontoloogiad • Ontoloogia filosoofias: õpetus olemisest kui sellisest • Formaalne ontoloogia: valdkonna mõistete ja nendevaheliste seoste formaalne käsitlus • Lihtne näide: • Töövõtjad töötavad organisatsioonidele • Töövõtjad annavad tööandjatele aru

  7. Ontoloogiad lingvistikas

  8. Ontoloogiad arvutiteaduses • Ontoloogia on valdkonna konkreetne kirjeldus • Mõisted • Mõistete omadused ja atribuudid • Omaduste ja atribuutide kitsendused • Eksemplarid(pole alati kohustuslikud) • Ontoloogia defineerib • Ühise sõnavara • Ühise arusaama (konsensus sõnavara interpreteerimisel)

  9. Ontoloogiate eesmärgid • Tagab tõrgeteta suhtlemise • Inimeste vahel (nii formaalsed kui mitteformaased) • Agentide (nii inimesed kui masinad) vahel (formaalsed ontoloogiad) • Rakendused • Andmete esitamine ja hoidmine (nt. andmebaasiskeemid) • Nii valdkonnasisene kui –ülene teadmiste vahetamine • Tarkvara-arendus • Andmeobjektide klassifitseerimine • Lepingute sõlmimine

  10. Ontoloogiad veebis • Taksonoomiad • Yahoo! Categories, OpenDirectory Project • E-poodide kataloogid • Amazon.com jt tootekataloogid • Valdkonnaterminoloogiad • SNOMED Clinical Terms – kliinilise meditsiini terminoloogia • UNSPSC – UN toodete ja teenuste klassifikatsioon

  11. Ontoloogiate repositooriumid • DAML ontology library • http://www.daml.org/ontologies • Ontolingua • http://ontolingua.stanford.edu • Protégé • http://protege.stanford.edu/ontologies.html • WebOnto • http://webonto.open.ac.uk • SHOE • http://www.cs.umd.edu/projects/plus/SHOE/onts/index.html

  12. Miks ei piisa XMList andmete esitamisel? XML

  13. XML • eXtensible Markup Language • XML: • on struktureeritud andmete esitamise vahend • määrab, kuidas teksti struktuuri märgistada • on lihtne, hästi juurdunud ja stabiilne • on metakeel teiste keelte kirjeldamiseks • XML ei: • ole programmeerimiskeel • taga automaatset andmevahetust ega integratsiooni • ole andmemudel– vaid andmete esitamise süntaks

  14. A: B: "foo" C: "bar" C: "lab" XML andmemudelina • XML 1.0 standard: • Pole konkreetset andmemudelit • Vaid trimmis ja kehtivate (vastavalt DTDle) dokumentide süntaks • Võimalikudandmemudelid: • nested containers (“kastid kastides") • märgistatud järjestatud puud (poolstruktureeritudandmemudel) • relatsioonilised, objekt-orienteeritud jms andmed A <A> <B>foo</B> <C>bar</C> <C>lab</C> </A> B C C "foo" "bar" "lab" Järjestatud “lapsed”

  15. A B C a1 b1 c1 a2 b2 c2 a3 b3 c3 R tuple tuple tuple A A A B B B C C C a3 b3 c3 a1 b1 c1 a2 b2 c2 Relatsioonilised andmedja XML R R tuple A a1 /A B b1 /B C c1 /C /tuple tuple A a2 /A B b2 /B C c2 /C /tuple … /R

  16. kinnisturaamat::getImmovableDetails() <complexType name="getRegisteredImmovableDetails"> <sequence> <element name=”registerPartNumber" type="string"/> <element name="onlyValidRecords" type="boolean"/> </sequence> </complexType> … <complexType name="CadastralUnit"> <sequence> <element maxOccurs=”5" minOccurs="0" name="address" type="tns:Address"/> <element name="area" nillable="true" type="string"/> <element name="areaUnit" nillable="true" type="string"/> <element name="cadastralRegisterNumber" nillable="true" type="string"/> <element name="createdOnPlanBasis" type="boolean"/> </sequence> </complexType> …

  17. ::objektiHind() <complexType name=”KinnisvaraObjekt"> <sequence> <element name=”registrikood” type="string"/> <element name=”kuupäev" type=”datetime"/> </sequence> </complexType> <complexType name=”Hind"> <sequence> <element name=”valuutaKood” type="string"/> <element name=”summa" type="float"/> </sequence> </complexType>

  18. XML-i piirid (1) <complexType name=” KinnisvaraObjekt "> <sequence> <element name=”registrikood” type="string"/> <element name=”kuupäev" type=”datetime"/> </sequence> </complexType> Katastri- tunnus … <complexType name="CadastralUnit"> <sequence> <element maxOccurs=”5" minOccurs="0" name="address" type="tns:Address"/> <element name="area" nillable="true" type="string"/> <element name="areaUnit" nillable="true" type="string"/> <element name="cadastralRegisterNumber" nillable="true" type="string"/> <element name="createdOnPlanBasis" type="boolean"/> </sequence> </complexType> …

  19. XML-i piirid (2) • Integratsiooniks ei piisa kui on olemas: • XML dokumendid • XML skeemid • nimeruumid • Kui pole: • skeemide dokumentatsiooni/semantikat • konsensust skeemide semantika suhtes

  20. OWLi ajalugu ning iseärasused OWL keel

  21. OWL keel • Ontology Web Language • XML-il baseeruv ontoloogiate kirjeldamise keel • W3C (World Wide Web Consortium) Recommendation alates 10. veebruar, 2004

  22. OWLi ajalugu DAML OIL RDF RDFist mõjutatud DAML = DARPA Agent Markup Language OIL = Ontology Inference Layer DAML+OIL OWL OWL on W3C Recommendation

  23. Ontoloogia näide OWLis <owl:Class rdf:ID=“Person” /> <owl:Class rdf:ID=“Man”> <rdfs:subClassOf rdf:resource=“#Person” /> <owl:disjointWith rdf:resource=“#Woman” /> </owl:Class> <owl:Class rdf:ID=“Woman”> <rdfs:subClassOf rdf:resource=“#Person” /> <owl:disjointWith rdf:resource=“#Man” /> </owl:Class> <owl:Class rdf:ID=“Father”> <rdfs:subClassOf rdf:resource=“Man” /> </owl:Class> <owl:Class rdf:ID=“Mother”> <rdfs:subClassOf rdf:resource=“Woman” /> </owl:Class> <owl:Class rdf:ID=“Parent”> <owl:unionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Father"/> <owl:Class rdf:about="#Mother"/> </owl:unionOf> </owl:Class> <owl:ObjectProperty rdf:ID=“hasChild"> <rdfs:domain rdf:resource="#Parent" /> <rdfs:range rdf:resource="#Person" /> </owl:ObjectProperty>

  24. OWLiga seotud tehnoloogiad

  25. XML, RDF, RDFS ja OWL • XML • kirjeldab struktureeritud dokumentide süntaksi, kuid ei mingit semantikat • XML Schema • vahend XML dokumentide struktuuri defineerimiseks ja piiramiseks • RDF • raamistikressursside ja nendevaheliste seoste kirjeldamiseks ja vastava andmemudeli lihtsustatud semantika • RDF/XML • RDF väljendite esitlusviis XMLis • RDF Schema • RDF ressursside klasside ja omaduste kirjeldamise sõnastik ja semantika ülem-/alamklass seostele • OWL • keerulisemad seosed, piirangud, andmetüübid, kardinaalsus jms

  26. Keelte võrdlus

  27. Formaalne kirjeldamine Kirjeldusloogika

  28. Kirjeldusloogika baasmõisted • Indiviididid/eksemplarid (nt johnja mary) • Mõisted (ntManja Woman) • Rollid (nt hasChild) • Interpretatsioon baseerub indiviidide hulkadel ja indiviididevahelistel seostel • Semantiliselt oluliseks baasühikuks on kirjeldus

  29. Kirjelduste defineerimine (ALC keel) • KirjeldusCvõiDvõib olla: Abaasmõiste T (top) universaalmõiste  (bottom) nullmõiste ¬C mõiste eitus C1∩D1 mõistete ühisosa C1UD1mõistete ühend R.Cuniversaalkvantor R.C eksistentsiaalkvantor

  30. Kirjeldusloogika näide Kirjeldusloogika kirjeldus “Õnnelikust isast” (Näite autor Ian Horrocks, U Manchester, UK)

  31. Veel näiteid (1) • baasmõiste • baasmõiste • defineeritud mõiste läbi ühisosa • … lisaks eitus • … eksistentsikvantoriga piirang

  32. Veel näiteid (2)

  33. Veel näiteid (3)

  34. Manchester OWL Syntax

  35. Protégé süntaks

  36. Andmete esitamine Web 2.0 jaoks RDF

  37. RDF • Resource Description Format (alatest aastast 1999) oli algselt veebiressursside jaoks mõeldud info esitamise raamistik • Baseerub ideel identifitseeridaobjekte URIdega (Uniform Resource Identifier), ning kirjeldada neid lihtsate omaduste ja nende väärtustega

  38. RDF/XML struktuur (1) • [subjekt] [predikaat] [objekt] <?xml version="1.0"?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# ...> <rdf:Description rdf:about="subjekt"> <predikaat>objekt</predikaat> </rdf:Description> </rdf:RDF> • [”Hamlet”] [r:autor] [”W. Shakespeare”] <?xml version="1.0"?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# ...> <rdf:Description rdf:about="hamlet_object_uri"> <r:autor>"W. Shakespeare"</r:autor> </rdf:Description> </rdf:RDF>

  39. RDF/XML struktuur (2) • [”Hamlet”] [r:autor] [”W. Shakespeare”] • [”Hamlet”] [r:aasta] [”1600”] • [”Hamlet”] [r:peategelane] [”Prints Hamlet”] <?xml version="1.0"?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# ...> <rdf:Description rdf:about="hamlet_object_uri"> <r:autor>"W. Shakespeare"</r:autor> <r:aasta>“1600"</r:aasta> <r:peategelane>“Prints Hamlet"</r:peategelane> </rdf:Description> </rdf:RDF>

  40. RDF/XML struktuur (3) [http://www.example.org/index.html] [exterms:creation-date] [“August 16, 1999”] [http://www.example.org/index.html][dc:language] [”English”] [http://www.example.org/index.html] [dc:creator] [http://www.example.org/staffid/85740] <?xml version="1.0"?> <rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns# xmlns:dc=http://purl.org/dc/elements/1.1/ xmlns:exterms="http://www.example.org/terms/"> <rdf:Description rdf:about="http://www.example.org/index.html"> <exterms:creation-date>August 16, 1999</exterms:creation-date> </rdf:Description> <rdf:Description rdf:about="http://www.example.org/index.html"> <dc:language>English</dc:language> </rdf:Description> <rdf:Description rdf:about="http://www.example.org/index.html"> <dc:creator rdf:resource="http://www.example.org/staffid/85740"/> </rdf:Description> </rdf:RDF>

  41. Mida on vaja, et jõuda RDFist OWLini? RDF + ? = OWL

  42. Klassid: rdfs:Resource rdfs:Class rdfs:Literal rdf:XMLLiteral rdfs:Datatype rdf:Property Omadused: rdfs:range rdfs:domainrdf:typerdfs:subClassOfrdfs:subPropertyOfrdfs:labelrdfs:comment    Konteinerklassid ja omadused: rdfs:Containerrdf:Bag – unordered set rdf:Seq – ordered set rdf:Alt – set of choices rdfs:ContainerMembershipProperty rdfs:member RDF kollektsioonid rdf:List rdf:first rdf:rest rdf:nil Reification rdf:Statement rdf:subject rdf:predicate rdf:object Lisaomadused rdfs:seeAlso rdfs:isDefinedBy rdf:value RDF Schema sõnavara

  43. OWL = RDFS + palju muud • OWLi eesmärk on sarnane RDFSile – pakkuda XML sõnavara klasside, nende omaduste ja seoste defineerimiseks • Kõiki RDF ja RDFS elemente/atribuute saab kasutada OWL dokumentides • OWL klassidvõimaldavad kirjeldada enamat kui RDFSklassid • Eristamaks RDFS ja OWL klasse, on OWLi raames defineeritud uus klass, owl:Class • Rikkalikuma keele tõttu saab OWLi abil kirjeldada keerulisemaid probleeme ning neid vastavaid tuletusmootoreid kasutades lahendada

  44. Mis lisandub? • Piirangud omaduste kardinaalsusele, nttäht kuulub täpselt ühte galaktikasse • Piirangud omaduste kardinaalsuselevõi väärtustele vastavalt seotud klassile, nt kristlastel on tavaks, et abielus osaleb 2 isikut, samas kui moslemitel on vähem piiranguid • Saab määrata kas omadus ontransitiivne, nt, kui A hasAncestor B, ja B hasAncestor C, siis A hasAncestor C. • Klasside ekvivalentsus – määrab, etkahe erineva URIgaklassid kujutavad endast tegelikult sama klassi • Eksemplaride ekvivalentsus – määrab, etkahe erineva URIgaeksemplarid kujutavad endast tegelikult sama eksemplari • Võimalus kirjeldada uusi klasse kombineerides olemasolevaid (nt,ühendidjaühisosad) klasse, või öeldes, et teatud klasside ühisosa on tühi hulk(ükski eskemplar ei kuulu mõlemasse klassi samaaegselt) • jms

  45. Full DL Lite OWLi kihid • OWL Lite • Lihtsaim ja madalaima arvutusliku keerukusega OWLi alamkeel • Peamiselt lihtsate taksonoomiate ja lihtsate piirangute kirjeldamiseks, nt kardinaalsuse jaoks vaid väärtused 0 ja 1 • OWL DL • Kõik OWL keele konstruktsioonidkoos teatud piirangutega • Baseerub kirjeldusloogikail (Description Logics) • Seega arvutuslikult decidable, täielik • Mittekooskõlalisuse kontroll • OWL Full • Kõrgeim arvutuslik keerukus • Arvutuslikult undecidable

  46. OWL Lite (1) • Võrdlemine: • equivalentClass • equivalentProperty • sameAs • differentFrom • allDifferent • Omaduste kirjeldamine: • inverseOf • TransitiveProperty • SymmetricProperty • FunctionalProperty • InverseFunctionalProperty

  47. OWL Lite (2) • Omaduste piirangud: • allValuesFrom • someValuesFrom • Klasside ühisosa: • intersectionOf

  48. OWL Lite kokkuvõte • RDFS tunnused • owl:Class, rdfs:subClassOf , owl:Individual • rdf:Property, rdfs:subPropertyOf • rdfs:domain , rdfs:range • Võrdsus and võrratus • owl:sameClassAs , owl:samePropertyAs , owl:sameIndividualAs • owl:differentIndividualFrom • Piiratud kardinaalsus (hulga liikmete arv) • owl:minCardinality, owl:maxCardinality (piirang: 0 või 1) • owl:cardinality (piirang: 0 või 1) • Omaduste tunnused • owl:inverseOf , owl:TransitiveProperty , owl:SymmetricProperty • owl:FunctionalProperty, owl:InverseFunctionalProperty • owl:allValuesFrom, owl:someValuesFrom (piirang: universaal- ja eksistentsiaalkvantori rakenduspiirkond on lokaalne) • Andmetüübid • RDF Core järgi. • Päiseinfo • owl:imports , Dublin Core Metadata , owl:versionInfo

  49. OWL-DL • DL tuleneb väljendist“Description Logic” • Maksimaalne osa OWList, mis veel tagab: • täielikkuse (kui probleemile on lahendus, siis see ka leitakse) • lahenduvuse (arvutused teostatakse lõpliku aja jooksul) • Sisaldabkõiki OWL keele konstruktsioone, kuid piirab selle kasutust • ntklass ei saa olla eksemplari ja omaduse rollis, omadus ei saa olla klassi ja eksemplari rollis

  50. Klassiaksioomid: oneOf, dataRange disjointWith equivalentClass rdfs:subClassOf Hulgateoreetilised operatsioonid: unionOf intersectionOf complementOf Suvaline kardinaalsus: minCardinality maxCardinality cardinality Väärtuse info: hasValue OWL Full (lisandub OWL Lite osale)

More Related