Ontologie-Evaluation mit MC-Tests
Contents
Ontologie-Evaluation mit MC-Tests#
Ausgangspunkt: In den meisten Methoden zum Ontology Engineering wird empfohlen, sog. Kompetenzfragen zu definieren.
Diese können vergleichsweise offen formuliert sein (siehe z.B. https://tishchungoora.medium.com/ontology-competency-questions-3d213eb08d33); sie dienen dazu, frühzeitig den Scope der Ontologie festzulegen, und sind damit in den Phasen des Requirement Engineering angesiedelt.
Denkbar ist aber auch, Kompetenzfragen sehr eng und exakt zu stellen, insbesondere nach Art von Multiple-Choice (MC) Fragen.
Mit MC-Fragen lässt sich in den Endphasen eines Projektes eine Ontologie auch zu evaluieren, und zwar summativ: Eine Ontologie wird dann als “gut” beurteilt, wenn sie - typischerweise in Verbindung mit einem logikbasierten Inferencing-System, wozu haben wir sonst eine Ontologie? - die MC-Fragen so gut beantwortet wie ein Experte. (Oder ein Professor nicht entscheiden kann, ob eine erfolgreiche Prüfung durch einen Menschen oder die KI abgelegt wurde).
Human in the Loop auch bei der Verifikation#
Tatsächlich entspricht der Einsatz von MC-Fragen als Test noch keiner Validierung der Ontologie, sondern lediglich (aber immerhin) einer Verifikation, bei der die MC-Fragen als unvollständige (!) Spezifikation dienen. Indirekt schaffen die MC-Fragen auch eine Möglichkeit, die Ontologie zu validieren, nämlich über den Diskurs von Experten, welche MC-Fragen als Test für die Ontologie herangezogen werden.
Wichtig zu sehen: Die MC-Fragen sind als Spezifikation ist nicht nur unvollständig, sondern auch nicht-formalsprachlich kommuniziert, d.h. der Übergang von den natürlichsprachliche formulierten MC-Fragen zu formalen Anfragen an die Ontologie (etwa in SPARQL) ist nicht erfolgt.
Entsprechend können wir nicht verlangen, dass eine Maschine die MC-Fragen ohne menschliches Zutun beantwortet. Schon alleine dessen gehört es zum Kern der Validierung, dass ein User die MC-Fragen beantwortet, und zwar mit Hilfe der Ontologie, in einem vorgesehenen Arbeitskontext, in einer bestimmten Rolle, mit einem bestimmten Kompetenz-Hintergrund etc. Ob ein User dazu die MC-Fragen als SPARQL-Anfragen formalisiert, oder ob sie dazu in Visualisierungen der Ontologie blättert, hängt auch von solchen Randbedingungen ab, die idealerweise in den Requirements schon dokumentiert wurden.
Sobald ein User in der Loop ist, werden also auch “weiche” Eigenschaften der Ontologie relevant, insbeondere solche, die sich auf die Nutzbarkeit beziehen, die wiederum durch Visualisierungen, geeignete Ontology-Browser, allgemein die Ontologie-Dokumentation unterstützt werden können.
Vorgehen#
Jeder liefert MC-Fragen in einen Pool. Wir bewerten dann die Fragen, insbesondere bezüglich:
“stimmen” die vom Autor vorgegebenen Antworten?
Welchen (Teil-) Wissensbereich deckt die Frage ab:
“normale Gewässer” aus der unmittelbaren Alltags-Erfahrung?
Gewässer aus fremden Ländern und Kulturen?
Wie schwierig ist die Frage:
für Anfänger, Fortgeschrittene, Experten?
beantwortbar durch lebensweltbezogenes Allgemeinwissen; Stand der Technik; Stand der Foschung?
welches Inferencing wird in der Ontologie benötigt?
Wir haben ja die Aufgabe zu bestimmen: Welche Domäne wollen wir mit der Ontologie ausdrücken? … z.B. MC-Frage: hat wahre und falsche Antworten … SC-Frage: genau eine wahre und mindestens eine, idealerweise sogar mehrere falsche Antworten … Bewertung der Frage bzgl. Schwierigkeit … Ein wesentlicher Informationsgehalt von MC-Fragen sind auch die falschen Antworten, die sog. Distraktoren: Die kann man bei der Ontologie-Eval nutzen um zu überprüfen, ob sie nicht abgeleitet werden können.
Die MC-Fragen haben auch eine zweite Funktion: Sie erlauben den Anwendern ins Gespräch zu kommen und zu überprüfen, wo sie in ihrem Verständnis der Domäne übereinstimmen und wo nicht.
Bei der folgenden MC-Frage wird ein Verständnis des Begriffs Aquifer (“Obwohl auch in Teilen der deutschen Fachwelt meist als Synonym zum Grundwasserleiter genutzt, umfasst ein Aquifer ausschließlich wassergesättigte Schichtenfolgen”, https://de.wikipedia.org/wiki/Grundwasserleiter) abgefragt:
Wo gibt es Aquifere?
auf Berggipfeln
in Senken
in phreatischen Höhlen
im Meer
MC-Fragen dienen gleichzeitig auch Abgrenzung der Domäne: Einem naiven Alltagsverständnis zufolge ist oberirdisch/unterirdisch zunächst nur an Land, nicht jedoch im Meer eine sinnvolle Unterscheidung. Nur Gewässer-Experten wissen, dass es auch unter dem Meeresboden Süßwasser-Reservoirs gibt, sog. unterseeische Aquifere (https://www.scinexx.de/news/geowissen/wasserreservoir-unter-dem-meeresgrund-entdeckt/). Obige MC-Frage eignet sich also auch, um Wissens-Abdeckung eines Prüflings menschlichen oder ontologiebasierten Wissens-Systems zu erheben.
True, False, Undecided#
Auswertung der MC-Antworten
Für jede Antwort jeder MC-Frage dokumentieren wir ein Tupel (x,y), mit
x: vom Prüfling angekreuzte Antwort
y: im System hinterlegte Antwort
korrekte Antworten sind diese:
(t,t) .. Auswahl wird vom Prüfling mit “true” markiert und ist als “true” hinterlegt: gut gemacht!
(f,f) … Auswahl wird vom Prüfling mit “false” markiert, und ist als “false” hinterlegt: gut gemacht!
fehlerhafte Antworten sind diese:
(f,t) … Auswahl wird vom Prüfling mit “false” markiert, ist aber als “true” hinterlegt: Fehler
(t,f) .. Auswahl wird vom Prüfling mit “true” markiert, ist aber als “false” hinterlegt: Fehler
Closed World Assumption (CWA)?#
Häufige Annahme in Multiple Choice Fragen: Genau die angekreuzten Antworten sind “true”, alle nicht angekreuzten Antworten sind “false”. In einer Ontologie wäre das die CWA: Nicht ableitbare Statements sind automatisch false.
Alternativ kann man auch verlangen, nur solche Antworten mit “false” zu markieren, die eindeutig als “false” ableitbar sind - und dabei annehmen, dass es auch “0”-Antworten gibt, die weder als “true” noch als “false” ableitbar sind. (Falsch wäre es, mit einem auf CWA beruhenden MC-Test eine Ontologie zu testen, die nicht auf CWA beruht.)
Wir haben also auch unbestimmte Werte:
(u,t) … Auswahl wird vom Prüfling mit “unbestimmt” markiert, ist aber tatsächlich “true”
(u, f) … Auswahl wird vom Prüfling mit “unbestimmt” markiert, ist aber tatsächlich “false”
sowie:
(t,u) … Auswahl wird vom Prüfling mit “true” markiert, aber tatsächlich ist der Wahrheitswert unbestimmt
(f,u) … Auswahl wird vom Prüfling mit “false” markiert, aber tatsächlich ist der Wahrheitswert unbestimmt
In einer CWA können wir u in einer dreiwertigen Logik: https://de.wikipedia.org/wiki/Dreiwertige_Logik darstellen. In einer OWA bedeutet u: weder als t noch als f ableitbar.
MC-Erzeugung aus der Ontologie#
Bisher besprochen: MC-Fragen werden von Menschen erzeugt, und dienen dem Test der Ontologie. Idee: Eigentlich sollte eine Ontologie uns umgekehrt auch darin unterstützen können, MC-Fragen zu generieren. Offensichliche Anwendung: Ein Dozent benötigt für eine Klausur MC-Fragen.
Wer schon mal MC-Fragen entwickelt hat weiß: Die Herausforderung besteht nicht darin, die korrekte Auswahl zu generieren, sondern darin, spannende falsche Auswahlen zu generieren.
Damit eine MC-Frage spannend ist, dürfen die Distraktoren nicht zu abwegig sein.
Hoffnung: Die hohe Strukturierung einer Ontologie erleichtet es, spannende Distraktoren zu finden.
Vorgehen:
Wir nehmen eine minimale, einfache Ontologie als Grundlage
suchen dazu exemplarisch MC-Fragen
reflektieren, wie die MC-Frage und insbesondere die Distraktoren aus der Ontologie abgeleitet wurden
und suchen eine Systematik, ähnliche Fragen semi-automatisch abzuleiten.
Distraktoren-Erzeugung aus dem syntaktischen Umfeld#
Erster Ansatz: Wir verwenden die Syntax, die Visualisierung etc. der Ontologie, um die MC-Fragen zu generieren.
Auszug aus “Schnitzel”:
Schnitzel
BY SOME Herkunft
Schweineschnitzel
Kalbschnitzel
BY SOME Zielgruppe
Kinderschnitzel
Seniorenschnitzel
BY SOME Soße
Jägerschnitzel
Balkanschnitzel (früher: Zigeunerschnitzel)
Rahmschnitzel
MC-Fragen:#
Für welches Schnitzel ist Zielgruppe ein charakteristisches Merkmal?
a) Schweineschnitzel
b) Kinderschnitzel
c) Jägerschnitzel
korrekt: b). Denn nur für Kinderschnitzel ist Zielgruppe ein charakteristisches Merkmal. Falsch sind a) und c): Für Schweineschnitzel wäre das charakteristische Merkmal seine Herkunft, für Jägerschnitzel die zugehörige Soße.
Für welches Schnitzel ist Zielgruppe NICHT ein charakteristisches Merkmal?
a) Schweineschnitzel
b) Kinderschnitzel
c) Seniorenschnitzel
d) Jägerschnitzel
korrekt: a) und d) : Denn chrakteristisches Merkmal bei einem Schweineschnitzel ist Herkunft, und d): bei einem Jägerschnitzel ist Soße das chrakteristisches Merkmal.
Auszug aus “Schnitzel”:
Schnitzel
BY SOME Soße
Jägerschnitzel
SOME Pilzsoße
Balkanschnitzel (früher: Zigeunerschnitzel
SOME Paprikasoße
Rahmschnitzel
SOME Rahmsoße
Welche Soße ist typisch für ein Jägerschnitzel?
a) Pilzsoße
b) Paprikasoße
c) Rahmsoße
korrekt: a); falsch: b) und c)
Konstruktionsprinzip für die Distraktoren: die SOME-Werte der Siblings von Jägerschnitzel.
Ein Schnitzel hat eine Pilzsoße: Welches Schnitzel ist das?
a) Jägerschnitzel
b) Balkanschnitzel
c) Rahmschnitzel
korrekt: a), falsch: b) und c)
Konstruktionsprinzip für die Distraktoren: Die Siblings der durch die Pilzsoße definieren Klasse.
Ein Schnitzel hat eine Pilzsoße: Welches Schnitzel ist das?
Jägerschnitzel
Kinderschnitzel
Schweineschnitzel
korrekt: a), falsch: nichts (!)
Interessant: b) und c) sind nicht falsch, sondern unbestimmt. Denn unsere Ontologie sagt nichts darüber aus, dass Kinder- oder Schweineschnitzel durch eine bestimmte Soße identifiziert werden können.
Welches ist das die am meisten spezifische Oberklasse (das Genus Proximum) von Pilzsoße?
a) Jägerschnitzel
b) Soße
c) Seniorenschnitzel
d) Schnitzel
korrekt: b); falsch: a), c), d). Denn ein Jägerschnitzel hat natürlich eng mit Pilzsoße zu tun, ist aber keine Oberklasse in strengem Sinn. Und c) und d) sind ganz falsch.
Distraktoren-Erzeugung mit Inferencing#
Erweiterter Ansatz: Wir verwenden die Tripel aus der mit (Standard-) Inferencing vollständig ausmaterialisierten Ontologie.
Das ist schwieriger.
MC basierter Ontology-Test#
Gedankenexperiment: Zwei Experten A und B entwickeln auf Grundlage eines gemeinsamen Text-Korpus’ zwei Ontologien O_a und O_b, und daraus zwei Mengen von MC-Fragen MC_a und MC_b. Dann Test: Unabhängige Versuchspersonen selbst versuchen die MC-Fragen mit der jeweils anderen Ontologie zu beantworten.