für Kommunikation, Informationstechnik und Ergonomie

Slides:



Advertisements
Ähnliche Präsentationen
Blue J.
Advertisements

ER-Modell: Objekte und Klassen
Zur Rolle der Sprache bei der Modellierung von Datenbanken
Informatik 12 | DAES Compilerbau Wintersemester 2010 / 2011 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung.
für Kommunikation, Informationstechnik und Ergonomie
Frame-Logik Eine Einführung Andreas Glausch.
Kritische Betrachtung
Inhaltlich orientierter Zugriff auf unstrukturierte Daten
16. Juni 2006 Stefan Ukena Burstein und McDermott: Ontology Translation for Interoperability Among Semantic Web Services Hamburg, 16. Juni 2006.
Ontologien- Query 1 Teil2
Grundlagen der Informatik
Kapitel 4 Datenstrukturen
Erschließen von semantischen Referenzen mit Ontology-Reasoning-Werkzeugen Das Ziel dieser Masterarbeit war die Erweiterung des ORBI Systems um ein Inferenz-System.
On a Buzzword: Hierachical Structure David Parnas.
Java: Objektorientierte Programmierung
Java: Grundlagen der Objektorientierung
Die Registervariablen: Tenor of Discourse
Philosophie der Logik nach Frege I
Abstrakte Klassen.
Polymorphie (Vielgestaltigkeit)
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 4 Vererbung Sommersemester 2003 Lars Bernard.
Ontologien und Semantic Translation Christoph Rüther Institut für Geoinformatik Universität Münster DiDoSe GeoInformatik Forum Dienstag
Allgemein Batchdatei/en erstellen Was ist das?? Wie geht das??
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Datentyp  Zusammenfassung von Mengen von "Werten" mit auf
Jan Fienhold1 Institut für Informatik Betriebliche Informationssysteme OWL Web Ontology Language.
Lexikalisch-Funktionale-Grammatik
Vererbung Spezialisierung von Klassen in JAVA möglich durch
Introducing the .NET Framework
Seminar: Verteilte Datenbanken
XML / RDF / OWL in Protégé Aufbau · OWL · Code · Demo · Ausblick
OWL-Web Ontology Language Eine Einführung
RDF-Schema Seminar: „Semantic Web“ André Rosin,
Jakob Voß: Grundlegende Aspekte des Semantic Web: Modellierung von Ontologien ( ) Modellierung von Ontologien Jakob Voß
DVG Klassen und Objekte
Dieter Bergmann, Lichtenfels
Der Supermarkt: Eine beispielhafte Erklärung für die fünf untersten Schichten des Semantic Web Protocol Stack Nicola Henze.
IPD Uni Karlsruhe 1 Seminar S2D2 Ontology Engineering Mario Herb.
Vorlesung Gestaltung von soziotechnischen Informationssystemen - Grenzen soziotechnischer Modellierung - Gst-IS Thomas Herrmann Lehrstuhl Informations-
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
? Was ist Informatik? Was ist Informatik? Alexander Lange
Hyperlinks und Anker Links notieren
Ontologien im Wissensmanagement
GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen Teil 1: Einführung: Wissensbasis und Ontologie Reiner Borchert.
Smart Features b Relationen b Regeln. Relationen b Definition: b Eine Relation ist eine Verbindung zwischen zwei Objekten. Diese Objekte können entweder.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
Copyright 2011 Bernd Brügge, Christian Herzog Grundlagen der Programmierung TUM Wintersemester 2011/12 Kapitel 11, Folie 1 2 Dr. Christian Herzog Technische.
§3 Allgemeine lineare Gleichungssysteme
Java für Fortgeschrittene
Sesame Florian Mayrhuber
Struktur von RDF Fabian Scheller.
Netzwerke.
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Elternabend der Schule … vom …
ENDLICHE KÖRPER RSA – VERFAHREN.
Klassen und Klassenstruktur
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Lexit.at Michael Hausenblas Semantische Darstellung und Abfrage von Rechtsnormen – IRIS 2004 Semantische Darstellung und Abfrage von Rechtsnormen am Beispiel.
Peter Brezany Institut für Softwarewissenschaften Universität Wien
Einführung in die Programmierung mit Java
Lexikalische Semantik
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 9. Vorlesung WS 2001/2002.
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Referat am Thema: Familientherapeutisch- systemische Ansätze Seminar: ADS mit und ohne Hyperaktivität.
WISSENSREPRÄSENTATION IN ACTIVEMATH Theoretische Grundlagen – Teil 1.
 Präsentation transkript:

für Kommunikation, Informationstechnik und Ergonomie Computerlinguistik 7. Vorlesung (24.11.2011) apl. Professor Dr. Ulrich Schade Fraunhofer-Institut für Kommunikation, Informationstechnik und Ergonomie ulrich.schade@fkie.fraunhofer.de

Computerlinguistik Inhalt der Vorlesung Einführung Methoden Tagging Formale Methoden Parsing Ontologien Anwendungen Informationsextraktion Maschinelle Übersetzung Textanalyse

Ontologien – Definition Computerlinguistik Ontologien – Definition „Eigentlich“ ist die Ontologie eine Disziplin der Philosophie: die Lehre vom Sein bzw. vom Seienden. In der Informatik bezeichnet man damit die Repräsentation von Wissen über einen Gegenstandsbereich. Entsprechend ist es in der Informatik auch möglich über „Ontologien“ (Plural) zu sprechen, wobei sich dann zwei Ontologien in der Art des repräsentierten Wissens bzw. im Gegenstandsbereich unterscheiden. In der Philosophie gibt es dagegen nur eine Ontologie.

Ontologien – Definition Computerlinguistik Ontologien – Definition Gruber (1993): „An ontology is an explicit specification of a shared conceptualization.“ „explicit“ – Alles, was ein System wissen soll, muss explizit repräsentiert werden. „shared conceptualization“ – Zu explizieren ist insbesondere auch das, was wir (als Menschen) in der Kommunikation nicht verbalisieren, weil es für uns (als Kommunikationspartner) selbstverständlich ist.

Ontologien – Definition Computerlinguistik Ontologien – Definition Mit der Hilfe von Ontologien soll Wissen – auch implizites Wissen, über das Menschen verfügen – für Systeme nutzbar gemacht werden. Das geschieht dadurch, dass dieses Wissen in der Ontologie explizit ausgedrückt wird. Aus diesem Ansatz ergibt sich auch die Beschränkung auf einen Gegenstandsbereich: Um den Umfang des zu repräsentierenden Wissens überhaupt handhabbar zu halten, können sich Ontologien stets nur auf (eingeschränkte) Gegenstandsbereiche („domains“) beziehen.

Computerlinguistik Was gibt es überhaupt für Arten von Wissen? Ontologien  Wissen Was gibt es überhaupt für Arten von Wissen? Was ist der Unterschied zwischen explizitem und implizitem Wissen?

Computerlinguistik Deklaratives Wissen Faktenwissen (propositional) Faktenwissen (als „Bild“, als „Film“, ...) Wissen über den situativen Kontext Wissen über Regeln Prozedurales Wissen Wissen über die Anwendung von Regelwissen Implizites Wissen über das Ausführen von Handlungen

Computerlinguistik Faktenwissen (propositional) deklaratives Wissen Faktenwissen (propositional) Paris ist die Hauptstadt von Frankreich. Faktenwissen (als „Bild“, als „Film“, ...)

Computerlinguistik Wissen über den situativen Kontext deklaratives Wissen Wissen über den situativen Kontext Wer ist Sprecher, wer ist Hörer? Wo, wann, warum und wie findet das Gespräch statt? Wissen über Regeln „Wenn man eine Telephonnummer nicht weiß, kann man die Auskunft anrufen.“ „Im Deutschen steht bei einer NP der Artikel vor dem Nomen.“

Computerlinguistik Wissen über die Anwendung von Regelwissen prozedurales Wissen Wissen über die Anwendung von Regelwissen Sprachverarbeitung (wenigstens zum Teil) Turn-Taking Beachten von Verkehrsregeln im Straßenverkehr Implizites Wissen über das Ausführen von Handlungen wie man mit dem Fahrrad fährt wie man geht

explizit versus implizit Computerlinguistik explizit versus implizit explizit formuliert formal formuliert  im Computer nutzbar implizit nicht formuliert, (evtl. sogar nicht formulierbar  in der Ontologie nicht repräsentierbar und daher vom Computer nicht nutzbar)

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Vorgehensweise Phase 1: Die Machbarkeitsstudie Phase 2: Start / Vorbereitung Phase 3: Aufbau / Verfeinerung Phase 4: Evaluation Phase 5: Applikationen und Evolution

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Vorgehensweise – Die Machbarkeitsstudie Welches Problem ist zu lösen?  Gegenstandsbereich Welche Ressourcen stehen zur Verfügung ? Hardware ... Software (Protégé http://protege.stanford.edu/ ) Personal ... Zeit ...

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Vorgehensweise – Start und Vorbereitung Was gehört zu dem Problem? Welche problemrelevanten Konzepte umfasst der Gegenstandsbereich? Welche davon sind Klassen und welche sind Instanzen? Welche Attribute der Konzepte sind für die Problemlösung wichtig? Welche Relationen zwischen den Konzepten sind wichtig? Dieser Arbeitsschritt kann mit Papier und Bleistift geleistet werden: Ideen notieren / festhalten! 

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Vorgehensweise – Ontologieaufbau Notierte Ideen in Software gießen. Top-Down: Aufbau der Klassen-Hierarchie (Taxonomie) Hierfür kann man evtl. eine „Upper Ontology“ nutzen. Bottom-Up: Extrahiere (halb-automatisch?) Konzepte, Attribute etc. aus vorliegenden Dokumenten und konstruiere dazu eine Klassen-Hierarchie, die diese Konzepte umfasst.

Computerlinguistik wie man eine Ontologie aufbaut Subclass Hierarchy Tree entity       physical            object                 self connected object                 region                      hole                      astronomical body                      geographic area                           geopolitical area                           water area                           land area                                continent                                island                                nation                                state or province                                address                                city                 collection                 agent            process       abstract Computerlinguistik wie man eine Ontologie aufbaut Eine Upper Ontology enthält die Hierarchie allgemeiner Klassen. Das Beispiel stammt von „SUMO“ (Suggested Upper Merged Ontology). http://www.ontologyportal.org/

Computerlinguistik Ontologieaufbau Die Hierarchie der Objektklassen ist eine Taxonomie, die auf der Relation ISA („water“ is a „substance“) aufgebaut ist. Den einzelnen Objektklassen kann man Attribute zuordnen, die sich entlang der Klassenhierarchie vererben.

Ontologieaufbau Klassen Computerlinguistik Ontologieaufbau Klassen Man unterscheidet „abstrakte“ von „konkreten“ Klassen ( vs. ). Nur konkrete Klassen dürfen Instanzen haben. Es empfiehlt sich, dass nur die untersten Klassen der Hierarchie konkrete Klassen sind.

Ontologieaufbau Instanzen Computerlinguistik Ontologieaufbau Instanzen Instanzen sind – ganz im Sinne der objekt-orientierten Programmierung – individuelle Exemplare ihrer Konzeptklasse. [Mengentheoretisch sind es Elemente.] Ontologie von Frau Granieczny

Computerlinguistik Ontologieaufbau – Instanzen die Verteilung von Wissen zwischen Ontologie und Datenbank Instanzen und spezifische Fakten wie „Paris ist die Hauptstadt von Frankreich.“ stehen in größeren Anwendungen in der Datenbank. Allgemeine Fakten finden sich in der Datenbank (indirekt) und in der Ontologie. Beispiel: „Jedes Land hat (genau) eine Hauptstadt.“ Die Beziehungen zwischen Fakten / Regeln stehen in der Ontologie. Beispiel: „Stadt A liegt näher am Äquator als Stadt B, wenn die Zahl, mit der die Breite von A angegeben ist, kleiner ist als die entsprechende Zahl bei B.“

Ontologieaufbau Attribute Computerlinguistik Ontologieaufbau Attribute Da die Attribute vererbt werden, weist man sie der höchstmöglichen Klasse zu, wobei die Wertebereiche eines Attributs mit zunehmender Hierarchietiefe zunehmend eingeschränkt werden.

Ontologieaufbau Attribute Computerlinguistik Ontologieaufbau Attribute Attributwerte können vom Typ her sein: Strings, Symbols, Zahlen (Integer, Float), Instanzen, Klassen, spezifische Typen (Datum).

Ontologieaufbau Attribute Computerlinguistik Ontologieaufbau Attribute Attribute haben manchmal genau einen Wert (Name). Manchmal können sie auch mehrere Werte haben (z.B. für die Relation „besteht aus“).

Ontologieaufbau Unterklasse oder Attribute Computerlinguistik Ontologieaufbau Unterklasse oder Attribute Je nach Anwendung werden bestimmte Eigenschaften als Attribut oder als Unter-klasse realisiert. So könnte man etwa die Bilder aus der Romantik als Unterklasse der Bilder festlegen.

Ontologieaufbau Relationen Computerlinguistik Ontologieaufbau Relationen Wenn der Wert eines Attributs auf eine andere Klasse bzw. eine andere Instanz der Ontologie verweist, besteht eine Beziehung zwischen den beiden Objekten und damit eine Relation. Im Beispiel haben wir die Relation, dass sich der „Elbe Seiten Kanal“ (bzw. dessen Lokation) unter der „Bahnbrücke bei Stortenbüttel“ befindet.

Ontologieaufbau Relationen Computerlinguistik Ontologieaufbau Relationen Beispiel 2: „Ausstellungsdatum“ (für Dokumente)

Ontologieaufbau Relationen Computerlinguistik Ontologieaufbau Relationen Beispiel 3: „hat als Ressource“

Ontologieaufbau Relationen Computerlinguistik Ontologieaufbau Relationen Beispiel 4: Metarelation Es gibt auch Metarelationen, etwa um auszudrücken, dass zwei Klassen keine gemeinsamen Instanzen haben.

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Evaluation Die Ontologie wird auf Mängel hin überprüft. Werden Mängel entdeckt, so führt dies (hoffentlich ) zu einer Überarbeitung der Ontologie; deshalb heißt die dritte Phase auch „Aufbau und Verfeinerung“. Dabei sind Schleifen normal. Aufbau und Verfeinerung Evaluation

Computerlinguistik Ontologieevaluation Ontologien können unter unterschiedlichen Aspekten evaluiert werden: unter technologischen Aspekten unter nutzerbezogenen Aspekten unter formalen Aspekten

Computerlinguistik Evaluation in Bezug auf die Technologie Ontologieevaluation Evaluation in Bezug auf die Technologie einheitliche Syntax Konsistenz; Widerspruchsfreiheit (Überprüfung der Semantik) Skalierbarkeit (Kann die Ontologie leicht erweitert werden? Ist die Nutzung der Ontologie dann noch schnell genug?) Interoperabilität (Kann die Ontologie technisch eingebunden werden; z.B. im Rahmen einer service-orientierten Architektur?)

Computerlinguistik Evaluation in Bezug auf den Nutzer Ontologieevaluation Evaluation in Bezug auf den Nutzer Erfüllt die Ontologie die gestellte Aufgabe? Ist die Semantik für den Nutzer verständlich? Bedeuten die Namen für die Konzepte (Klassen, Instanzen) und die Attribute das, was der Nutzer darunter versteht?

Computerlinguistik Formale Evaluation Ontologieevaluation Formale Evaluation Formale Überprüfungen können evtl. mit Tools (z.B. OntoClean) durchgeführt werden. Dazu sehen wir uns ein Beispiel an.

Computerlinguistik Definition Ontologieevaluation Definition Eine Eigenschaft ist genau dann für eine Instanz essentiell, wenn diese Instanz diese Eigenschaft immer und notwendigerweise besitzt. Beispiel: Instanz: Angela Merkel essentielle Eigenschaft: weiblich nicht essentielle Eigenschaft: Bundeskanzler sein

Computerlinguistik Definition Ontologieevaluation Definition Eine Eigenschaft ist genau dann rigide, wenn diese Eigenschaft für alle Instanzen, die sie besitzen, essentiell ist. Eine Eigenschaft ist genau dann anti-rigide, wenn diese Eigenschaft für keine Instanz, die sie besitzt, essentiell ist.

Computerlinguistik Ontologieevaluation Objekt rotes Objekt physikalisches Objekt Apfel

wie man eine Ontologie aufbaut Computerlinguistik wie man eine Ontologie aufbaut Applikationen und Evolution In welchen Anwendungen / Systemen kann die entwickelte Ontologie noch verwendet werden? Mit welchen Applikationen kann man das in der Ontologie repräsentierte Wissen abgreifen und nutzen? Unter welchen Umständen bzw. in welchen Zeitzyklen wird die Ontologie an die neusten Entwicklungen angepasst?

Computerlinguistik Literatur Guarino, N. & Welty, C.A. (2004). An Overview of OntoClean. Kapitel 8 in Staab & Studer (Eds.), Handbook on Ontologies. Mitkov, R. (2003). The Oxford Handbook of Computational Linguistics. Oxford, UK: Oxford University Press. Sowa, J.F. (2000). Knowledge Representation. Pacific Grove, CA: Brooks/Cole. Staab, S. & Studer, R. (2004), Handbook on Ontologies. Berlin: Springer. Sure, Y., Staab, S. & Studer, R. (2004). On-To-Knowledge Methodology (OTKM). Kapitel 6 in: Staab & Studer (Eds.), Handbook on Ontologies.