Semantic Gap

Semantic Gap

Die Semantische Lücke beschreibt den semantischen, also bedeutungsbezogenen Unterschied zwischen zwei Beschreibungen eines Objekts, der dadurch entsteht, dass verschiedene Repräsentationsformen (Sprachen) gewählt werden. Dieser in der Informatik verwendete Begriff wird im Allgemeinen dort deutlich, wo eine Abbildung des realen Lebens in eine formale, maschinell verarbeitbare Repräsentation übertragen werden muss [1] [2].

Präziser bezeichnet der Begriff den Unterschied zwischen Formulierung von Kontextwissen in einer mächtigen Sprache (z. B. Natürliche Sprache) und dessen formaler und automatisiert reproduzierbaren Repräsentation in einer weniger mächtigen formalen Sprache (z. B. Programmiersprache). In der natürlichen Sprache lassen sich Zusammenhänge ausdrücken, die in einer formalen Sprache nicht auswertbar sind. Aus diesem Grund ist der Unterschied der Ausdrucksmächtigkeit auch nicht formal beschreibbar.

Die Church-Turing-These stellt dazu fest, dass mit einer Maschine genau die formalen Operationen durchführbar sind, die auch ein rechnender Mensch durchführt. Allerdings ist die Auswahl der notwendigen Operationen zur korrekten Durchführung einer Berechnung nicht vollständig durch ein solches formales Regelwerk sichergestellt. Ist die zugrundeliegende Aufgabe nämlich nicht uneingeschränkt berechenbar liefert ein formales Vorgehen entweder kein oder nur ein unvollständiges Ergebnis, beziehungsweise die Regelanwendung terminiert nicht. Im Gegensatz dazu ist es einem Menschen möglich, derartige Aufgaben, wie das Halteproblem, zu formulieren und zu erkennen.

Diese Diskrepanz der Wissensmodellierung ergibt sich aus der kontextbedingten, nicht entscheidbaren Mehrdeutigkeit gesprochener Sprache, die in der Chomsky-Hierarchie als erweiterter Kontext bezeichnet wird. Praktisch einsetzbare Programme, die Wissen automatisiert reproduzieren, sind hingegen auf Eindeutigkeit und Entscheidbarkeit angewiesen. Aus diesem Grund ist die semantische Lücke vermutlich mit den aktuell zur Verfügung stehenden Mitteln nie vollständig zu schließen. Vielmehr muss für jede Anwendung eine Abstraktion von den elementaren Low-Level-Informationen und Werkzeugen hin zum High-Level-Expertenwissen über den Anwendungskontext entwickelt werden. Dies entspricht der Programmierung und Parametrierung eines Algorithmus.

Inhaltsverzeichnis

Formale Sprachen in der Praxis

In der Praxis werden Anwendungen mit Programmiersprachen formalisiert. Die Basis der aktuell gängigen Von Neumann-Architektur bildet die Boolesche Algebra, in der alle Operationen ausgedrückt werden, die überhaupt mit unseren Rechnern möglich sind. Hinzu kommen Mechanismen zur Speicherung der binären Daten und zur Festlegung der Abarbeitungsreihenfolge, was einer Turingmaschine entspricht. Dieses unterste Niveau ist durch das aktuell technisch Machbare vorgegeben, etwas anders verhielte es sich z. B. mit dem Quantenrechner. Auf einer solchen Turingmaschine lassen sich komplexe Algorithmen nur schwer, und moderne Anwendungen wie Betriebssysteme oder Textverabeitungen praktisch nicht mehr implementieren. Daher werden Werkzeuge zur Erleichterung der Arbeit in Form von Programmiersprachen benötigt. Die erste Stufe bilden dabei Maschinen- bzw. Assemblersprachen, die z. B. Arithmetische, und Speicheroperationen in Befehlen kombinieren und lesbar bereitstellen. In höheren Programmiersprachen werden nun immer komplexere Abfolgen dieser low-level Operationen zu immer leichter verständlichen Befehlen zusammengefasst. Da diese Befehle jedoch wiederum nur auf einem Von-Neumann-Rechner ausführbar sind, bildet die Turingmaschine nach wie vor das Limit des Machbaren, egal wie komplex die höhere Programmiersprache scheinbar ist. Das heißt, die dazu üblichen Werkzeuge Compiler oder Interpreter alleine schließen die semantische Lücke nicht.

Abbildung natürlicher Sprache

Um ein Programm für eine Realweltanwendung zu schreiben, bleibt trotz Programmiersprachen die Aufgabe, das Wissen des Anwenders über die Anwendung aus der natürlichen domänenspezifischen Sprache in die Sprache der Turingmaschine zu übersetzen. Dazu ist aus den Untersuchungen der Chomsky-Hierarchie ableitbar, dass genau dieser Schritt nicht automatisierbar ist, also immer eine Interaktion mit dem Menschen erforderlich ist. Eine praktische Konsequenz daraus ist, dass jeglicher Einsatz von Rechnern zum Lösen eines realen Problems vom Anwender ein gewisses Maß an Kenntnissen über das technisch Machbare erfordert. Eine Textverarbeitung verbirgt zum Beispiel Datenstrukturen, Speicherzugriffe sowie Such- und Sortieralgorithmen hinter einer entsprechenden Bedienoberfläche und der Nutzer kann sich auf die Erstellung des Inhaltes auf einer abstrakteren Ebene als der Auswahl von ASCII-Codes konzentrieren. Dabei wird soweit von der zugrundeliegenden Technologie abstrahiert, dass ein Anwender lediglich beim Speichern und Laden des Dokuments auf eine Low-Level-Funktion zugreift. Bei komplexeren Anwendungen, wie einem Entscheidungssystem in der Medizin, wird diese Abstraktion allerdings ungleich schwerer. Dem Anwender müsste theoretisch bekannt sein, welche Methoden existieren, um Messwerte den Beobachtungen so zuzuordnen, wie es die Anwendung erfordert. Andererseits muss der Entwickler wissen, welche Kombinationen aus Messwerten und Beobachtungen vorkommen, um die geeigneten Methoden zum Lernen der Entscheidungsfunktion auszuwählen. Genau bei diesem Domänenwechsel manifestiert sich die semantische Lücke.

Softwaretechnik als Lösung

Es bleibt die allgemeine Aufgabe der Softwaretechnik die Lücke zwischen Anwendungswissen und dem technisch Machbaren anzufüllen. Dazu muss das Domänenwissen (high-level) über ein Problem in einen Algorithmus und eine Parametrierung (low-level) transferiert werden. Dies erfordert den Dialog zwischen Anwender und Softwareentwickler, der für jede Domäne neu geführt werden muss. Ziel ist immer eine Software, die dem Anwender ermöglicht die Ergebnisse des Algorithmus ohne technische Erläuterung des Entwicklers zu interpretieren, sowie sein Wissen in Parametrierungen auszudrücken, ohne die technischen Details der Umsetzung zu kennen. Eine zentrale Rolle spielt dabei eine geeignete Benutzerschnittstelle.

Beispiele

Eine typische Domäne, die ein hohes Maß an Abstraktion von den Low-Level-Methoden bei einem hohen Maß an Automatisierung erfordert, ist die Diagnoseunterstützung in der Medizin. Hier werden für Expertensysteme komplexe Zusammenhänge in Datenstrukturen gespeichert, die vom Anwender effizient zu trainieren und durchsuchen sind, ohne dass von ihm Kenntnisse über Methoden der künstlichen Intelligenz erwartet werden. Noch komplexer ist das Problem der semantischen Lücke in der automatisierten Bildanalyse. Ziel dabei ist es, Bildinhalt zu erkennen, und dem Bild so eine oder mehrere Bedeutungen zuzuordnen. Die dazu verfügbare Datengrundlage bilden lediglich unspezifische Pixeldaten als Low-Level-Information. Um aus diesen Rohdaten die dargestellten Objekte oder Szenen zu erkennen, müssen Algorithmen zur Pixelauswahl oder -manipulation geeignet kombiniert, parametriert und mit natürlichen Begriffen verbunden werden. Die Umsetzung natürlicher Beschreibungskategorien wie Farbe oder Form erfordert dabei jeweils völlig unterschiedliche mathematische Formalisierungskonzepte, die dem Anwender neben der natürlichsprachlichen Formulierung bekannt sein müssen.

Literatur

  1. Smeulders AWM, Worring M, Santini S, Gupta A, Jain R. Content-Based Image Retrieval at the End of the Early Years. IEEE Trans Pattern Anal Mach Intell 2000;22(12):1349-80.
  2. Dorai C, Venkatesh S. Bridging the Semantic Gap with Computational Media Aesthetics. IEEE MultiMedia 2003;10(2):15-17.

Siehe auch


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Semantic gap — The semantic gap characterizes the difference between two descriptions of an object by different linguistic representations, for instance languages or symbols. In computer science, the concept is relevant whenever ordinary human activities,… …   Wikipedia

  • Semantic Sensor Web — Sensors are distributed across the globe leading to an avalanche of data about our environment. The rapid development and deployment of sensor technology involves many different types of sensors, both remote and in situ, with such diverse… …   Wikipedia

  • Semantical Gap — Die Semantische Lücke beschreibt den semantischen, also bedeutungsbezogenen Unterschied zwischen zwei Beschreibungen eines Objekts, der dadurch entsteht, dass verschiedene Repräsentationsformen (Sprachen) gewählt werden. Dieser in der Informatik… …   Deutsch Wikipedia

  • Social Semantic Web — The concept of the Social Semantic Web subsumes developments in which social interactions on the Web lead to the creation of explicit and semantically rich knowledge representations. The Social Semantic Web can be seen as a Web of collective… …   Wikipedia

  • Concept Search — A concept search (or conceptual search) is an automated information retrieval method that is used to search electronically stored unstructured text (for example, digital archives, email, scientific literature, etc.) for information that is… …   Wikipedia

  • Intervalo semántico — El intervalo semántico (del inglés semantic gap[1] ) es la diversidad de significado de dos descripciones de la misma cosa, debido al uso de lenguajes de expresividad distintos.[2] Esa definición no es unitaria, por lo cual el intervalo semántico …   Wikipedia Español

  • Complex instruction set computer — A complex instruction set computer (CISC, pronounced like sisk ) is a microprocessor instruction set architecture (ISA) in which each instruction can execute several low level operations, such as a load from memory, an arithmetic operation, and a …   Wikipedia

  • Burroughs B1700 — The Burroughs B1000 Series machines consisted of three major generations. These were the B1700, B1800, and B1900 series machines. Much original research for the B1700, initially codenamed the PLP ( Proper Language Processor or Program Language… …   Wikipedia

  • Burroughs B2000 — The Burroughs B2000 series of computers was manufactured by Burroughs Corporation in Pasadena, California, United States, and was aimed straight at the business world. The architecture was built to support COBOL programming in the most efficient… …   Wikipedia

  • Inkhorn term — An inkhorn is an inkwell made out of horn. It was an important item for many scholars and soon became symbolic of writers in general. Later it became a byword for or pedantic writers.:And ere that we will suffer such a prince,:So kind a father of …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”