Das Denken aus Fällen (CBR) (im Englischen als fallbasiertes Denken (CBR) bezeichnet ) ist eine Art von Argumentation, die das menschliche Verhalten kopiert, das natürlich darin besteht, die Erfahrung zur Lösung von Problemen des täglichen Lebens zu nutzen, indem man sich an ähnliche Situationen erinnert, die bereits aufgetreten sind und Vergleichen Sie sie mit der aktuellen Situation, um eine neue Lösung zu entwickeln, die wiederum die Erfahrung bereichert.
Diese Art der Argumentation löst Probleme, indem analoge Fälle in ihrer Wissensbasis gefunden und an den betrachteten Fall angepasst werden. Diese Technologie erschien vor ungefähr fünfzehn Jahren Die ersten Arbeiten zu diesem Thema gehen jedoch auf die Experimente von Schank und Abelson im Jahr 1977 an der Yale University zurück . Es ist jedoch im Vergleich zu anderen Technologien aus dem Bereich der kognitiven Wissenschaften wie Data Mining noch relativ unbekannt . Es unterscheidet sich von letzterem durch seinen Ansatz. In der Tat verwenden wir die Daten hier nur indirekt, um die engen Fälle zu finden, aus denen wir eine Lösung generieren werden.
Ein CBR-System hat eine Basis von Fällen. Jeder Fall hat eine Beschreibung und eine Lösung. Um diese Informationen zu nutzen, ist auch ein Motor vorhanden. Dies wird Fälle finden, die dem aufgeworfenen Problem ähnlich sind. Nach der Analyse bietet der Motor eine geeignete Lösung, die validiert werden muss. Schließlich fügt der Motor das Problem und seine Lösung der Fallbasis hinzu.
Dieses Diagramm zeigt die Hauptschritte im Prozess eines fallbasierten Argumentationssystems. Aus diesen Schritten ergeben sich drei Hauptprobleme:
Um ein fallbasiertes Argumentationssystem zu entwickeln, das diesen Namen verdient, ist es daher notwendig, für jedes dieser Probleme eine wirksame Lösung zu finden. Revision und Lernen sind zwei weitere Probleme, die sich aus den ersten drei ergeben.
Die Darstellung von Fällen spielt bei der Realisierung eines CBR-Systems eine wichtige Rolle. In der Tat bestimmt diese Darstellung die Effizienz und Geschwindigkeit der Fallsuche in der Datenbank. Es ist daher notwendig, die jeweils zu speichernden Informationen auszuwählen und in welcher Form zu finden.
Ein Fall wird durch viele Merkmale beschrieben, die verschiedene Arten von Informationen darstellen:
Nicht alle CBRs verwenden notwendigerweise jede Art von Informationen. Die Beschreibung des Problems und die bereitgestellte Lösung sind wesentliche Elemente. Einige Merkmale (die diskriminierendsten) werden beim Suchen und Hinzufügen von Fällen als Index verwendet. Die Indizes müssen gleichzeitig ausreichend konkret und abstrakt sein, damit sie ein Maximum an Fällen betreffen und für zukünftige Überlegungen wiederverwendbar sind. Sie müssen es auch ermöglichen, die Fälle schnell abzuleiten.
Im Allgemeinen betrachten wir die Fälle als eine Liste von Attribut-Wert-Paaren. Jedes Paar entspricht einem Merkmal. Die Attribute werden eingegeben, hier sind zum Beispiel die in ReMind verwendeten Typen:
Anschließend müssen Sie ein Organisations- und Indexierungsmodell erstellen, um die Fälle miteinander zu verknüpfen. Dieses Modell muss bestimmte Eigenschaften haben. Zuallererst ist es notwendig, dass der Zusatz die Zugänglichkeit zu alten Fällen sicherstellt. Die Suche nach ähnlichen Fällen sollte eine konstante Komplexität beibehalten, wenn sich die Fallbasis füllt. Da ein CBR-System nur mit einer großen Anzahl von Fällen interessant ist, ist es offensichtlich notwendig, eine Lösung in Betracht zu ziehen, die es ermöglicht, ähnliche Fälle schnell zu finden. Normalerweise wird aus diesem Grund die Indizierung verwendet.
Es gibt viele Möglichkeiten, die Fälle zu bestellen. Wir werden alle vorhandenen Modelle schnell untersuchen. Wir werden uns insbesondere auf zwei Modelle konzentrieren:
Beginnen wir zunächst mit dem einfachsten Modell: der linearen Organisation. Diese Organisation wird nicht zur Verwaltung des gesamten Fallspeichers verwendet. Es kann jedoch implizit mit anderen komplexeren Modellen auf der Ebene kleiner Teilmengen von Fällen kombiniert werden.
Es ist möglich, den Speicher in Form eines Entscheidungsbaums zu organisieren : Jeder Knoten entspricht einer Frage in einem der Indizes und die Kinder entsprechen den verschiedenen Antworten. Um so effektiv wie möglich zu sein, muss der Baum die Fragen in der richtigen Reihenfolge stellen und so flach wie möglich sein. Dieser Baum muss dynamisch erstellt werden. Die beste Methode zum Erstellen ist die Verwendung von Data Mining .
Ein weiteres Modell besteht darin, Speicher als Hierarchie von Prototypen aufzubauen. Ein Prototyp ermöglicht es, Bedingungen für Merkmale von Fällen zu beschreiben. Alle Fälle, in denen diese Bedingungen überprüft werden, sind diesem Prototyp zugeordnet. Prototypen sind in einer Vererbungshierarchie organisiert. Es ist somit möglich, allgemeine Prototypen anzugeben, von denen spezifischere Prototypen erben. Durch die Kombination von Entscheidungsbäumen mit dieser Hierarchie von Prototypen erhalten wir eine interessante Struktur. Die „Terminal“ -Prototypen speichern ihre Fälle dann nicht mehr in einer Liste, sondern in einem Entscheidungsbaum. Die Prototyphierarchie repräsentiert das A-priori- Wissen des Systems und die dynamisch generierten Entscheidungsbäume ermöglichen eine ziemlich flexible Struktur.
Dynamisches SpeichermodellDas dynamische Speichermodell wurde von Roger Schank und Janet Kolodner eingeführt. In diesem Modell werden die Fälle in einer hierarchischen Struktur gespeichert, die als verallgemeinerte Episode bezeichnet wird. Wir sprechen auch von MOP für Speicherorganisationspakete. Die verschiedenen Fälle mit ähnlichen Eigenschaften sind in einer allgemeineren Struktur, einer verallgemeinerten Episode, zusammengefasst. Sie enthalten drei Arten von Objekten:
Das Diagramm gibt eine Vorstellung vom dynamischen Speichermodell. Es hat eine Struktur in der Nähe eines Baumes. Wir finden die drei Arten von angegebenen Objekten, mit dem Unterschied, dass zwischen Indizes und Werten unterschieden wird. Wir können auch feststellen, dass es möglich ist, bestimmte Fälle auf unterschiedliche Weise zu erreichen. Dieses Modell ist daher redundant.
Die Suche nach ähnlichen Fällen erfolgt vom Wurzelknoten aus. Wir werden nach der verallgemeinerten Episode suchen, die die meisten Merkmale mit dem aktuellen Problem gemeinsam hat. Dann gehen wir die Indizes durch, die die Merkmale darstellen, die in der Norm der verallgemeinerten Episode, an der wir arbeiten, fehlen. Das ausgewählte Index-Wert-Paar ist dem Problem am ähnlichsten. Von diesem kommt entweder einer zu einer anderen verallgemeinerten Episode, in diesem Fall startet man den Prozess erneut oder man erhält einen Fall, der dem aufgeworfenen Problem ähnlich ist.
Das Verfahren zum Hinzufügen neuer Fälle funktioniert ähnlich wie das Auffinden ähnlicher Fälle. In der Tat ist der Verlauf des Graphen identisch. Wenn wir festgestellt haben, dass die verallgemeinerte Episode die meisten Normen mit dem aktuellen Fall gemeinsam hat, führen wir die Addition durch. Dazu muss ein Index-Wert-Paar generiert werden, das den neuen Fall von den anderen Kindern der verallgemeinerten Episode unterscheidet. Wenn es bereits einen Fall mit demselben Paar gibt, wird eine neue verallgemeinerte Episode erstellt, die diese beiden Fälle enthält.
Wir erhalten daher ein diskriminierendes Netzwerk unter Verwendung der Indizes, die es ermöglichen, die Fälle zu finden. Verallgemeinerte Episoden sind hauptsächlich Indexierungsstrukturen. Die Standards ermöglichen es, ein allgemeines Wissen über die zugrunde liegenden Fälle darzustellen, während die Index-Wert-Paare die Spezifitäten definieren.
Dieser Indexierungsprozess kann jedoch zu einem exponentiellen Anstieg der Anzahl der Indizes im Verhältnis zur Anzahl der Fälle führen. Wir fügen daher bei der Auswahl der Indizes im Allgemeinen bestimmte Grenzen hinzu, auch wenn dies zu einem Leistungsabfall führt.
Kategoriebasiertes ModellDieses Modell ist eine Alternative zum Vorgängermodell. Hier wird auch ein Fall als Beispiel bezeichnet. Die Leitidee ist, dass die Realität durch Fälle umfassend definiert werden sollte. Die Merkmale, die im Allgemeinen durch einen Namen und einen Wert beschrieben werden, sind abhängig von der Zugehörigkeit eines Falls zu einer Kategorie von Bedeutung.
In diesem Modell ist die Fallbasis ein Netzwerk von Kategorien und Fällen. Indizes sind Links, die drei Arten haben können:
Das folgende Diagramm zeigt die verschiedenen Arten von verfügbaren Links. Es handelt sich jedoch nur um eine Kategorie. Es sollte daher hinzugefügt werden, dass die Beispiele mehreren Kategorien angehören können.
Die Suche nach ähnlichen Fällen besteht darin, die Kategorie zu finden, deren Merkmale dem neuen Problem am nächsten kommen. Wenn es gefunden wird, geben wir die prototypischsten Fälle zurück.
Bevor nach ähnlichen Fällen gesucht wird, muss das aufgeworfene Problem untersucht werden. Es ist notwendig, seine Merkmale, aber auch seinen Kontext zu identifizieren, wenn dies möglich ist. Wenn bestimmte Informationen fehlen, können bestimmte Merkmale vernachlässigt oder der Benutzer befragt werden. Während dieses Schritts, der die Präambel der eigentlichen Forschung darstellt, muss das CBR-System versuchen, verrauschte oder inkonsistente Daten zu ermitteln und zu korrigieren. Hierfür können wir Datenreinigungstools verwenden . Es ist auch möglich, mithilfe eines Wissensmodells zu versuchen, Merkmale von anderen abzuleiten. Alle diese Vorgänge erfordern im Allgemeinen die Genehmigung des Benutzers, bevor mit dem nächsten Schritt fortgefahren werden kann.
Die Forschung gliedert sich in zwei Phasen: Filterung und Auswahl. Während dieser beiden Schritte werden statische und dynamische Indizes verwendet. Es gibt verschiedene Möglichkeiten, um zu bestimmen, welche Merkmale als Index ausgewählt werden. Wir können benutzen :
Es ist möglich, die Indizes beim Erstellen des RàPC-Systems auszuwählen, wir sprechen dann von statischen Indizes. Wenn sie automatisch oder über eine Mensch-Maschine-Schnittstelle ausgewählt werden, gelten sie als dynamisch. Schließlich legen einige CBRs Wert auf die verschiedenen Indizes.
Der Filterungsschritt besteht darin, zunächst die Anzahl der bei der Suche verwendeten Fälle zu reduzieren. Dieser Schritt kann übersprungen werden, um direkt zur Auswahl zu gelangen. Es gibt verschiedene Algorithmen, die jedoch häufig mit einer Art Falldarstellung verknüpft sind. Zum Beispiel für die MOP-Darstellung, dh die dynamische Speicherdarstellung, besteht die Filterung darin, die Menge der Fälle auf eine MOP zu reduzieren, die dem Problem nahe kommt. Wir werden es erreichen, indem wir die Indizes nacheinander absteigen.
Aus der Menge der Fälle, die während des Filterungsschritts erhalten wurden, werden wir eine neue Menge ähnlicher Fälle erstellen. Hierfür können wir den Algorithmus der nächsten Nachbarn (nächster Nachbar) oder andere Heuristiken verwenden , mit denen wir die Ähnlichkeit zwischen dem Problem und dem Kandidatenereignis messen können. Tatsächlich werden wir den neuen Fall nur über die Indizes mit den anderen vergleichen. Aus der Ähnlichkeit jedes Index erhalten wir die allgemeine Ähnlichkeit.
Jeder Index muss daher eine Funktion haben, die die Ähnlichkeit zwischen zwei Werten seines Suchsatzes misst. Dies kann problematisch sein, wenn die Fälle aus komplexen Symboltypen bestehen. Aber dieses Problem nicht spezifisch für CBR ist, ist es charakteristisch für Forschung in Analogie . Daher gibt es häufig bereits eine Methode zur Berechnung der Ähnlichkeit für jeden Datentyp. Normalerweise gibt die Berechnungsfunktion einen Wert zurück, der zu einem Intervall gehört.
Es ist möglich, diese Methode des nächsten Nachbarn durch Auswahlheuristiken anzureichern. Damit die Auswahl optimal ist, müssen nicht die Fälle ermittelt werden, die dem Problem am ähnlichsten sind, sondern diejenigen, die für seine Lösung am nützlichsten sind. Heuristiken sollten auswählen:
Wenn wir in einfachen CBR-Systemen einen ähnlichen Fall gefunden haben, verwenden wir die vorgeschlagene Lösung für das aktuelle Problem direkt wieder. Bei dieser Art von Systemen sind wir der Ansicht, dass die Ähnlichkeiten ausreichend sind und dass wir die Unterschiede zwischen dem gefundenen Fall und dem Problem vernachlässigen können.
Diese Vorgehensweise ist immer noch unbefriedigend. Es ist selten, dass wir einen identischen Fall für das Problem finden. Oft ist es notwendig, die bereits vorhandenen Lösungen anzupassen. Anpassung besteht daher darin, eine neue Lösung aus dem aktuellen Problem und ähnlichen gefundenen Fällen zu erstellen. In dieser Phase werden die Unterschiede zwischen den gefundenen Fällen und dem Problem sowie die nützlichen Informationen für die Übertragung auf die neue Lösung hervorgehoben.
Es gibt zwei Arten der Anpassung:
Transformationsanpassung besteht darin, Lösungen aus früheren Fällen direkt wiederzuverwenden. Diese Art der Anpassung berücksichtigt nicht die Art und Weise, wie die Lösungen ähnlicher Fälle generiert wurden. Wir verwenden Anpassungsgesetze, um die alten Lösungen zu transformieren. Diese Gesetze hängen vom Umfang des CBR-Systems ab.
Man kann diese Art der Anpassung verwenden, wenn man für jeden Fall die Basis der Schritte der Argumentation gespeichert hat, die zu den Lösungen führen. Die derivative Anpassung besteht darin, die gleiche Argumentation auf das neue Problem anzuwenden. Beim Erstellen der neuen Lösung bevorzugen wir die Pfade der ausgewählten alten Lösungen und vermeiden erfolglose Pfade. Der neue Fall ist jedoch anders, neue Unterziele werden verfolgt.
Es sind andere Arten von Anpassungen möglich. Zum Beispiel können wir Anpassungsfälle in Anspruch nehmen. Dies läuft darauf hinaus, ein CBR-System in Betracht zu ziehen, das der Anpassung im Allgemeinen gewidmet ist. Es wäre nicht auf ein bestimmtes Gebiet spezialisiert und würde eher abstrakte Anpassungsfälle enthalten.
Ein anderer Ansatz besteht darin, die Fälle in einer Hierarchie zu klassifizieren. Dieser Ansatz ermöglicht die Wiederverwendung von Fällen mit dem höchstmöglichen Abstraktionsgrad, sodass sie leicht auf eine neue Situation angewendet werden können. Um die Unterteile einer Lösung anzupassen, bezieht sich das System auf den Kontext der allgemeinen Lösung.
Nach seiner Erzeugung durch das System wird die Lösung des Problems getestet. Dieser Schritt erfolgt im Allgemeinen außerhalb des RàPC. Je nach Fachgebiet können Sie sich an eine Simulationssoftware oder einen Experten wenden. Vergessen wir nicht, dass die Dauer einer Bewertung sehr lang sein kann, insbesondere im medizinischen Bereich für den Test von Behandlungen. Wenn diese Bewertung schlüssig ist, werden wir diese neue Erfahrung beibehalten. Dies ist die Lernphase, die wir später studieren werden. Wenn die Lösung jedoch nicht zufriedenstellend ist, muss sie repariert oder zumindest die Gründe für den Fehler erläutert werden. Dies ist die Überarbeitungsphase.
In der Überprüfungsphase wird daher zunächst versucht, die Gründe für den Fehler zu ermitteln. Dazu können wir versuchen zu erklären, warum bestimmte Ziele nicht erreicht wurden. Die gesammelten Informationen bereichern einen während der Anpassungsphase verwendeten Fehlerspeicher. Während der nächsten Generationen von Lösungen wird das System seine Fehler nicht wiederholen.
Wenn das System die Gründe für den Ausfall der Lösung ermittelt hat, kann versucht werden, das Problem zu beheben. Dieser Reparaturschritt kann als eine weitere Anpassungsfunktion angesehen werden. Der einzige Unterschied besteht darin, dass wir bei der Reparatur von einer falschen Lösung ausgehen, aber an das Problem angepasst sind, anstatt von korrekten und ungeeigneten Lösungen. Wir werden uns auf die Erklärungen des Versäumnisses verlassen, die Änderungen vorzunehmen.
Dies ist der letzte Schritt im CBR-Zyklus. Während dieser Phase werden der neue Fall und seine validierte Lösung zur Fallbasis hinzugefügt. Es ist daher erforderlich zu bestimmen, welche Informationen in welcher Form gespeichert werden müssen und wie dieser neue Fall in der Datenbank indiziert werden soll.
Wenn der Fall ohne die Hilfe der bereits vorhandenen Fälle gelöst wurde, beispielsweise mit Hilfe des Wissens eines Experten, sollte er auf jeden Fall in die Datenbank aufgenommen werden. Wenn die Lösung hingegen aus alten Fällen generiert wurde, ist das Verfahren komplexer. Tatsächlich muss der neue Fall nicht unbedingt direkt hinzugefügt werden. Man kann zum Beispiel den vorherigen Fall, den Ursprung der neuen Lösung, verallgemeinern. Alternativ kann dieser neue Fall in eine verallgemeinerte Kategorie oder Episode aufgenommen werden.
In Bezug auf die zu speichernden Informationen ist es offensichtlich, dass wir die Merkmale und die Lösung des Problems speichern müssen. In einigen Bereichen können wir die Merkmale, die für das Problem leicht abzugsfähig oder irrelevant sind, immer noch ignorieren. Es ist auch möglich, die Erklärungen der Argumentation aufzuzeichnen, die zur Lösung geführt hat. Auf diese Weise können wir die abgeleitete Anpassung verwenden, wie wir zuvor gesehen haben. Es ist auch möglich, Fehler zu speichern, wie wir im vorherigen Absatz gesehen haben. Wir können zu den Basisfällen Fehler oder falsche Argumentation hinzufügen.
Es ist dann eine Frage der Entscheidung, welche Art von Index das System verwenden wird, um diesen Fall zu finden. Die meisten vorhandenen Softwareprogramme nutzen alle Funktionen. Andere Methoden durchsuchen die Datenbank, um die unterscheidendsten Merkmale für den hinzuzufügenden Fall zu finden.
Schließlich muss der neue Fall in die Basis integriert werden. In dieser Phase werden wir die Indizierung vorhandener Fälle ändern, damit das System Ähnlichkeiten bei der Suche nach ähnlichen Fällen leichter erkennt. In der Praxis werden wir das Gewicht eines Index erhöhen, was zu einem Fall führt, der es ermöglicht hat, einen nützlichen Fall bei der Konstruktion der Lösung zu erreichen. Umgekehrt verringert das System das Gewicht eines Index, was zu einem Fall führt, der zum Ausfall führt. Am Ende bevorzugen wir bestimmte Eigenschaften.
Am Ende der Schulung kann es interessant sein, das System zu testen, indem Sie ihm das Problem geben, mit dem es sich gerade befasst hat. So können wir sehen, ob sich das System wie erwartet verhält.
Die Verwendung von Data Mining erweist sich bei der Indizierung von Daten als vorteilhaft. Die Indexierung ist ein sehr wichtiger Punkt für CBR. Es ist ihm zu verdanken, dass die Ähnlichkeitsberechnung durchgeführt wird. Die Indizes beziehen sich auf verschiedene Kriterien, und die Datenerfassung ermöglicht es, die diskriminierendsten Kriterien und damit die repräsentativsten für die Erstellung der Indizes anzugeben.
Darüber hinaus greift die von der Ähnlichkeitsfunktion durchgeführte Berechnung des Abstands zwischen den Fällen logisch zwischen dem neuen Fall und allen alten Fällen der Basis ein. Dank der Datenerfassung werden Klassen erstellt, um Fälle, die keine Verbindung zum aktuellen Fall haben, direkt auszuschließen. Die Berechnung der Abstände dank der Ähnlichkeitsfunktion wird daher nur innerhalb derselben Klasse durchgeführt, was die Ausführungszeit erheblich verkürzt.
Die Datenreinigung erhöht auch die Leistung eines CBR-Systems. Dadurch wird sichergestellt, dass die in der CBR aufgezeichneten Daten korrekt sind und dass keine ungenauen Fälle vorliegen, die zu völlig falschen Überlegungen führen könnten. Trotzdem kann es vorkommen, dass eine CBR in ihrer Basis widersprüchliche Fälle hat, aber sie sollte daher nicht länger in der Lage sein, Schlussfolgerungen zu ziehen, widersprüchliche Erfahrungen, die im wirklichen Leben existieren.
Die Fuzzy-Logik wird in Bereichen verwendet, in denen es schwierig ist, Objekte in der einen oder anderen Menge zu klassifizieren. Die Verwendung dieser Technologie bringt CBR-Systemen viele Vorteile:
Einige CBR-Systeme verwenden Fuzzy-Logik direkt aus der Speicherung von Fällen. Sie verwalten für jeden Fall Relevanz- und Vertrauensgrade. Die Hauptanwendung der Fuzzy-Logik besteht jedoch darin, ähnliche Fälle zu finden. Auch hier verwenden die Systeme die Vertrauens- und Relevanzgrade, um Ähnlichkeiten zu berechnen. Schließlich ist es auch möglich, die Anpassung mit dieser Technik zu optimieren.
Drei Algorithmen: Induktion, PPV-Analogie (nächster Nachbar und dynamische Induktion) Der dynamische Induktionsalgorithmus wurde im Rahmen des europäischen Projekts INRECA entwickelt.