Schlagwort-Archive: Künstliche Intelligenz

Die Intelligenz in der Suchmaschine

Wie kommt die Intelligenz in die Suchmaschine?

Nehmen wir an, Sie bauen eine Suchmaschine. Sie wollen dabei möglichst keine teuren und nicht immer fehlerfreien menschlichen Fachexperten (domain experts) einsetzen, sondern die Suchmaschine nur mit ausreichend Datenservern (der Hardware für den Korpus) und einer ausgeklügelten Software bauen. Wieder verwenden Sie im Prinzip ein neuronales Netz mit einem Korpus. Wie bringen Sie nun die Intelligenz in Ihr System?

Trick 1: Lass die Kunden den Korpus trainieren

Bei einer Suchmaschine geht es wie bei der Panzer-KI der Vorbeiträge um Zuordnungen, diesmal von einem Eingabetext (Suchstring) eines Kunden zu einer Liste von Webadressen, die für seine Suche interessant sein könnten. Um die relevanten Adressen zu finden, basiert Ihr System wiederum auf einem Lernkorpus, der diesmal aus der Liste aller Sucheingaben von allen Ihren bisherigen Kunden besteht. Die Webadressen, die die früheren Kunden aus den ihnen angebotenen auch tatsächlich angeklickt haben, sind im Korpus als positive Hits vermerkt. Also geben Sie bei neuen Anfragen – auch von anderen Kunden – einfach die Adressen an, die bisher am meisten Klicks erhalten haben. So schlecht können die ja nicht sein, und mit jeder Anfrage und dem darauf folgenden Klick verfeinert sich das System. Und dann gilt: Je grösser der Korpus, umso präziser.

Wieder stammen diese Zuordnungen von aussen, nämlich von den Menschen, die die Auswahl, die Ihre Suchmaschine ihnen angeboten hat, mit ihren Klicks entsprechend bewertet haben. Die Menschen haben das getan:

  • mit ihrer menschlichen Intelligenz und
  • entsprechend ihren jeweiligen Interessen.

Besonders der zweite Punkt ist interessant. Wir könnten später noch etwas detaillierter darauf eingehen.

Trick 2: Bewerte die Kunden dabei mit

Nicht jede Zuordnung von jedem Kunden ist gleich relevant. Als Suchmaschinenbetreiber können Sie hier an zwei Punkten optimieren:

  • Bewerten Sie die Bewerter:
    Sie kennen ja alle Eingaben Ihrer Kunden. So können Sie leicht herausfinden, wie verlässlich die von ihnen gemachten Zuordnungen (die angeklickte Webadressen zu den eingegebenen Suchstrings) sind. Nicht alle Ihre Kunden sind in dieser Hinsicht gleich gut. Je mehr andere Kunden für den gleichen Suchstring die gleiche Webadresse anwählen, umso sicherer wird die Zuordnung auch für zukünftige Anfragen sein. Verwenden Sie nun diese Information, um die Kunden zu gewichten: Der Kunde, der bisher die verlässlichsten Zuordnungen hatte, d.h. derjenige, der am meisten das wählte, was die anderen auch wählten, wird am höchsten gewichtet. Einer, dem die anderen weniger folgten, gilt als etwas weniger verlässlich. Durch die Gewichtung erhöhen Sie die Wahrscheinlichkeit, dass die zukünftigen Suchergebnisse die Websites höher bewerten, die die meisten Kunden interessieren.
  • Bewerten Sie die Sucher:
    Nicht jeder Suchmaschinenbenutzer hat die gleichen Interessen. Das können Sie berücksichtigen, denn Sie kennen ja bereits alle früheren Eingaben von ihm. Diese können Sie verwenden, um ein Profil von ihm zu erstellen. Das dient natürlich dazu, die Suchergebnisse für ihn entsprechend auszuwählen. Bewerter mit einem ähnlichen Profil wie der Sucher werden die potenziellen Adressen auch ähnlich gewichten, und sie können so die Suchergebnisse noch mehr im Interesse des Kunden personalisieren.

Es lohnt sich für Sie als Suchmaschinenbetreiber auf jeden Fall, von allen Ihren Kunden ein Profil zu erstellen,  nur schon zur Verbesserung der Qualität der Suchvorschläge.

Konsequenzen

  1. Suchmaschinen werden durch den Gebrauch immer präziser.
    Das gilt für alle korpusbasierten Systeme, also für alle Technologien mit neuronalen Netzen: Je grösser ihr Korpus ist, desto besser ist ihre Präzision.  Sie können zu erstaunlichen Leistungen fähig sein.
  2. In diesem Zusammenhang lässt sich ein bemerkenswerter Rückkopplungseffekt feststellen: Je grösser ihr Korpus ist, umso besser ist die Qualität einer Suchmaschine und deshalb wird sie häufiger benützt, was wiederum ihren Korpus vergrössert und so ihre Attraktivität gegenüber der Konkurrenz steigert. Dieser Effekt führt unweigerlich zu den Monopolen, wie sie typisch sind für alle Anwendungen von korpusbasierter Software.
  3. Alle Bewertungen sind primär von Menschen erstellt worden.
    Die Basis der Intelligenz – die zuordnenden Eingaben im Korpus – erfolgen weiterhin durch Menschen. Bei den Suchmaschinen ist das jeder einzelne Benutzer, der so sein Wissen in den Korpus eingibt. So künstlich ist die Intelligenz in dieser KI also gar nicht.
  4. Korpusbasierte Systeme tragen die Tendenz zur Blasenbildung in sich: Wenn Suchmaschinen von ihren Kunden Profile anlegen, können sie diese mit besseren Suchergebnissen bedienen. Das führt aber in einem selbstreferenziellen Prozess unweigerlich zu einer Blasenbildung: Anwender mit ähnlichen Ansichten werden von den Suchmaschinen immer näher zusammen gebracht, da sie auf diese Weise die Suchergebnisse erhalten, die ihren jeweiligen Interessen und Ansichten am besten entsprechen.  Abweichende Ansichten bekommen sie immer weniger zu Gesicht.

Dies ist ein Beitrag zum Thema künstliche Intelligenz. Im nächsten Beitrag geht es um einen weiteren wichtigen Aspekt der korpusbasierten Systeme, nämlich um die Rolle der Wahrscheinlichkeit.

Was der Korpus weiss – und was nicht

Die Erstellung des Korpus

In einem Vorbeitrag haben wir gesehen, wie der Korpus – die Basis für das neuronale Netz der KI – erstellt wird. Das neuronale Netz kann den Korpus auf raffinierte Weise interpretieren, aber selbstverständlich kann das neuronale Netz nichts aus dem Korpus herausziehen, was nicht drin steckt.

Das neuronale Netz holt das Wissen aus seinem Korpus
Abb. 1: Das neuronale Netz holt das Wissen aus seinem Korpus

Wie wird der Korpus erstellt? Ein Fachexperte ordnet Bilder einer bestimmten Klasse, einem bestimmten Typus zu, z.B. ‹fremde Panzer› versus ‹eigene Panzer›. Diese Zuordnungen des Experten sind in Abb. 2 die roten Pfeile, welche z.B. die Panzerbilder bewerten.

Abb. 2: Erstellung der Zuordnungen im Korpus
Abb. 2: Erstellung der Zuordnungen im Korpus

Selbstverständlich müssen die durch den menschlichen Experten erfolgten Zuordnungen der einzelnen Bilder zu den Zielkategorien korrekt sein. Doch das reicht nicht. Es bestehen prinzipielle Grenzen für die Auswertbarkeit eines Korpus durch ein noch so raffiniertes neuronales Netz.

Der Zufall regiert im zu kleinen Korpus

Wenn ich nur farbige Bilder der eigenen und schwarzweisse Bilder der fremden Panzer habe (siehe Einstiegsbeitrag zur KI), dann kann sich das System leicht irren und alle farbigen der eigenen und die schwarzweissen der fremden Armee zuordnen. Mit einem genügend grossen Korpus kann dieser Mangel zwar behoben werden, doch zeigt das Beispiel, wie wichtig die richtige Bestückung des Korpus ist. Wenn ein Zufall (farbig/schwarzweiss) entscheidend in den Korpus hineinspielt, wird das System falsche Schlüsse ziehen. Der Zufall spielt dabei eine umso grössere Rolle, je kleiner der Korpus, aber auch je grösser die Anzahl der möglichen ‹Outcomes› (= Anzahl der prinzipiell möglichen Resultate) ist.

Neben diesen relativen Hindernissen gibt es aber auch prinzipielle Grenzen der Auswertbarkeit eines KI-Korpus. Darauf gehen wir jetzt ein.

Raupen- oder Radpanzer?

Was im Korpus nicht drin ist, kann auch nicht herausgeholt werden. Selbstverständlich kann ich mit einem Panzer-Korpus keine Flugzeuge klassifizieren.

Neuronales Netz mit Panzern
Abb 3: Die Bewertung entscheidet – Korpus mit eigenen und fremden Panzern und entsprechend programmiertem Netz.

Was aber ist, wenn unser Panzersystem herausfinden soll, ob es sich um Raupen- oder um Radpanzer handelt? Im Prinzip können im Korpus ja Bilder von beiden Sorten von Panzern enthalten sein. Wie kann die Panzer-KI aus unserem Beispiel das erkennen?

Die einfache Antwort ist: gar nicht. Im Korpus hat das System zwar viele Bilder von Panzern und weiss bei jedem, ob es ein fremder oder eigener ist. Aber ist es ein Radpanzer oder nicht? Diese Information steckt im Korpus (noch) nicht drin und kann deshalb von der KI nicht herausgezogen werden. Zwar kann ein Mensch jedes einzelne Bild entsprechend beurteilen, so wie er das mit der Eigenschaft ‹fremd/eigen› gemacht hat. Aber dann ist es eine KI-fremde, von aussen zugeführte Intelligenz, die das tut. Das neuronale Netz kann das nicht selber leisten, da es nichts über Raupen oder Räder weiss. Es hat nur gelernt, eigene von fremden Panzern zu unterscheiden. Für jede neue Kategorie muss zuerst die Information in den Korpus gegeben (neue rote Pfeile in Abb. 2) und dann das neuronale Netz für die neuen Fragen geschult werden.

Eine solche Schulung muss zwar nicht zwingend am Panzer-Korpus erfolgen. Das System könnte auch anhand eines Korpus von ganz anderen Fahrzeugen lernen, ob sich diese sich auf Rädern oder Raupen bewegen. Auch wenn sich der Unterschied automatisch auf den Panzerkorpus übertragen lässt, muss doch das externe Räder/Raupen-System vorgängig trainiert werden – und zwar mit Zuordnungen, die wieder ein Mensch gemacht hat.

Selber, ohne vorgegebene Beispiele, findet das KI-System dies nicht heraus.

Fazit

  1. Aus einem Korpus können nur Schlüsse gezogen werden, die im Korpus angelegt sind.
  2. Die Kategorie-Zuordnungen (die roten Pfeile in Abb. 2) kommen immer von aussen, d.h. von einem Menschen.

In unserem Beispiel haben wir mit dem Panzerbeispiel eine typische Bilderkennungs-KI untersucht. Aber gelten die daraus gezogenen Schlüsse (siehe Fazit oben) auch für andere korpusbasierte Systeme? Und gibt es nicht so etwas wie ‹Deep Learning›, also die Möglichkeit, dass ein KI-System ganz von selber lernt?

Schauen wir deshalb im nächsten Beitrag einen ganz anderen Typ mit korpusbasierter KI an.


Dies ist ein Beitrag zum Thema künstliche Intelligenz.


 

Korpusbasierte KI: Wo steckt die Intelligenz?

Vorbemerkung

Im Vorbeitrag haben wir gesehen, dass bei der regelbasierten KI die Intelligenz in den Regeln steckt. Diese Regeln sind menschengemacht und das System ist so intelligent wie die Menschen, die die Regeln geschrieben haben. Wie sieht das nun bei der korpusbasierten Intelligenz aus?

Die Antwort ist etwas komplizierter als bei den regelbasierten Systemen. Schauen wir deshalb den Aufbau eines solchen korpusbasierten Systems genauer an. Er geschieht in drei Schritten:

  1. Erstellen einer möglichst grossen Datensammlung (Korpus)
  2. Bewertung dieser Datensammlung
  3. Training des neuronalen Netzes (Lernphase)

Sobald das Netz erstellt ist, kann es angewendet werden:

  1.  Anwendung des neuronalen Netzes

Schauen wir die vier Schritte genauer an und überlegen wir uns dabei, worauf es ankommt und wo die Intelligenz in das korpusbasierte System hineinkommt.

Schritt 1: Erstellung der Datensammlung

In unserem Panzerbeispiel besteht der Korpus (die Datensammlung) aus Photographien von Panzern. Bilder sind typisch für korpusbasierte Intelligenz, aber die Sammlung kann natürlich auch andere Informationen enthalten, z.B. Suchanfragen von Kunden einer Suchmaschine oder GPS-Daten von Handys. Typisch ist, dass die Daten von jedem einzelnen Eintrag aus so vielen Einzelelementen (z.B. Pixeln) bestehen, dass Ihre Auswertung mit bewusst von Menschen konstruierten Regeln zu aufwendig wird. Dann lohnt sich ein regelbasiertes System nicht mehr.

Die Sammlung der Daten reicht aber nicht aus. Sie müssen jetzt auch bewertet werden.

Schritt 2: Bewertung des Korpus
Korpusbasiertes System
Abb. 1: Korpusbasiertes System

Abb. 1 zeigt das bereits bekannte Bild aus unserem Panzerbeispiel. Auf der linken Seiten sehen Sie den Korpus. Dieser ist in der Abbildung bereits bewertet, die Bewertung ist symbolisiert durch die kleinen schwarzen und grünen Fähnchen (Flags) links an jedem Panzerbild.

Man kann sich den bewerteten Korpus vereinfacht als eine zweispaltige Tabelle vorstellen. In der linken Spalte sitzt die Bildinformation, in der rechten die Bewertung und der Pfeil dazwischen ist die Zuordnung, die somit ein wesentlicher Teil des Korpus wird, sie sagt nämlich, zu welcher Kategorie (e oder f) das jeweilige Bild gehört, wie es also bewertet wird.

Korpus mit Bewertungen
Tabelle 1: Korpus mit Bewertungen (e=eigen, f=fremd)

Typischerweise sind die Informationsmengen in den beiden Spalten von sehr unterschiedlicher Grösse. Während die Bewertung in der rechten Spalte in unserem Panzerbeispiel aus genau einem Bit besteht, enthält das Bild der linken Spalte alle Pixel der Photographie; zu jedem Pixel sind Lage, Farbe usw. abgespeichert, also eine ziemlich grosse Datenmenge. Dieser Unterschied im Grössenverhältnis ist typisch für korpusbasierte Systeme – und falls Sie philosophisch interessiert sind, möchte ich auf den Bezug zum Thema Informationsreduktion und Entropie hinweisen . Im Moment geht es uns aber um die Intelligenz in den korpusbasierten KI-Systemen und wir halten dazu fest, dass im Korpus zu jedem Bild seine korrekte Zielkategorie fest zugeordnet wird.

Bei dieser Zuordnung wissen wir nicht, wie sie geschieht, denn sie wird durch einen Menschen durchgeführt, mit den Neuronen in seinem eigenen Kopf, deren genaues Verhalten ihm wohl kaum bewusst ist. Er könnte also nicht Regeln dafür angeben. Hingegen weiss er, was die Bilder darstellen, und vermerkt das im Korpus, eben mit der Zuordnung der entsprechenden Kategorie. Diese Zuordnung kommt von aussen durch den Menschen in den Korpus, sie ist zu hundert Prozent menschengemacht. Gleichzeitig ist diese Bewertung eine absolute Bedingung und die Grundlage für den Aufbau des neuronalen Netzes. Auch später, wenn das fertig trainierte neuronale Netz den Korpus mit den von aussen eingebrachten Zuordnungen nicht mehr braucht, war er doch vorher notwendig, damit das Netz überhaupt entsteht und arbeiten kann.

Woher stammt also die Intelligenz bei der Zuordnung der Kategorien e) und f)? Es ist letztlich ein Mensch, der diese Zuordnung macht und auch falsch machen kann; es handelt sich um seine Intelligenz. Sobald die Zuordnung im Korpus einmal notiert ist, handelt es sich nicht mehr um aktive Intelligenz, sondern um fixiertes Wissen.

Bewertung des Korpus
Abb. 2: Bewertung des Korpus

Die Bewertung des Korpus ist eine entscheidende Phase, und Intelligenz ist dabei zweifellos nötig. Die zusammen getragene Datensammlung muss bewertet werden und der Fachexperte, der diese Bewertung durchführt, muss garantieren, dass sie korrekt ist. In Abb. 2 ist die Intelligenz des Fachexperten durch den gelben Kreis repräsentiert. Der Korpus erhält das so erstellte Wissen über die Zuordnungen; die Zuordnungen selber sind in Abb. 2 als rote Pfeile dargestellt.

Wissen ist etwas anderes als die Intelligenz. Es ist einem gewissen Sinn passiv. In diesem Sinn handelt es sich bei den im Korpus festgehaltenen Informationen um Wissensobjekte, d.h. um Zuordnungen, die formuliert sind und nicht mehr bearbeitet werden müssen. Intelligenz hingegen ist ein aktives Prinzip, das selber Wertungen vornehmen kann, so wie es der menschliche Experte tut. Bei den Elementen im Korpus aber handelt es sich um Daten oder dann bei den erwähnten Zuordnungen um Resultate der Intelligenz von Experten – also um fest formuliertes Wissen.

Um dieses Wissen von der Intelligenz zu unterscheiden, habe ich es in Abb. 2 nicht gelb, sondern grün markiert.

Wir unterscheiden somit sinnvollerweise drei Dinge:

Daten (die Datensammlung im Korpus)
Wissen (die durchgeführte Bewertung dieser Daten)
Intelligenz (die Fähigkeit, diese Bewertung durchzuführen).

Schritt 3: Training des neuronalen Netzes
Lernphase
Abb. 3: Das neuronale Netz lernt das Wissen des Korpus

In der Trainingsphase wird auf Basis des Lernkorpus das neuronale Netz aufgebaut. Damit das funktioniert, ist wieder eine beträchtliche Intelligenz notwendig, diesmal kommt sie vom KI-Experten, der das Funktionieren der Lernphase ermöglicht und steuert. Dabei spielen Algorithmen eine Rolle, die dafür verantwortlich sind, dass das Wissen im Korpus korrekt ausgewertet wird und das neuronale Netz genau die Form erhält, die bewirkt, dass alle im Korpus festgehaltenen Zuordnungen auch durch das Netz nachvollzogen werden können.

Die Wissensextraktion und die dabei verwendeten Algorithmen sind durch den braunen Pfeil zwischen Korpus und Netz symbolisiert. Wenn man will, kann man ihnen durchaus eine gewisse Intelligenz zubilligen, doch sie tun nichts, was nicht vom IT-Experten bzw. vom Wissen im Korpus vorgegeben wird. Das entstehende neuronale Netz selber hat keine eigene Intelligenz, sondern ist das Ergebnis dieses Prozesses und somit der Intelligenz der Experten. Es enthält aber beträchtliches Wissen und ist deshalb in Abb. 3 grün dargestellt, wie das Wissen im Korpus in Abb. 2. Im Gegensatz zum Korpus sind die Zuweisungen (rote Pfeile) aber jetzt wesentlich komplexer, genau so, wie es in einem neuronalen Netz eben komplexer zu und her geht als in einer einfachen zweispaltigen Tabelle (Tabelle 1).

Und noch etwas unterscheidet das Wissen im Netz vom Wissen im Korpus: Im Korpus handelt es sich um Wissen über Einzelfälle, im Netz hingegen ist das Wissen abstrakt. Es kann deshalb auch auf bisher unbekannte Fälle angewendet werden.

Schritt 4: Anwendung
Anwendung eines neuronalen Netzes
Abb. 4: Anwendung eines neuronalen Netzes

In Abb. 4 wird ein bisher unbekanntes Bild vom neuronalen Netz bewertet und entsprechend dem im Netz gespeicherten Wissen kategorisiert. Dabei ist kein Korpus und auch kein Experte mehr nötig, es reichen die ‚geschulten‘, aber jetzt feststehenden Verdrahtungen im neuronalen Netz. Das Netz ist in diesem Moment nicht mehr in der Lage, etwas dazuzulernen. Es ist aber fähig zu durchaus eindrücklichen Leistungen mit ganz neuem Input. Diese Leistungen werden ermöglicht durch die vorgängigen Arbeiten, also den Aufbau des Korpus, die in ihm enthaltenen, (hoffentlich) korrekten Bewertungen und den Algorithmen der Lernphase. Hinter dem Lernkorpus steckt die menschliche Intelligenz des Fachexperten, hinter den Algorithmen der Trainingsphase die menschliche Intelligenz des IT-Experten.

Fazit

Was uns als künstliche Intelligenz erscheint, ist das Resultat der durchaus menschlichen, d.h. natürlichen Intelligenz der Fachexperten und IT-Spezialisten.


Dies ist ein Beitrag zum Thema künstliche Intelligenz. Im nächsten Beitrag schauen wir noch genauer hin. Wir schauen, was für Wissen in einem Korpus wirklich steckt. Und was die KI aus dem Korpus herausholen kann und was nicht.

Die korpusbasierte KI überwindet ihre Schwächen

Zwei KI-Varianten: regelbasiert und korpusbasiert

Im Vorbeitrag erwähnte ich die beiden prinzipiellen Herangehensweisen, mit der versucht wird, dem Computer Intelligenz beizubringen, nämlich die regelbasierte und die korpusbasierte. Bei der regelbasierten steckt die Intelligenz in einem Regelpool, der von Menschen bewusst konstruiert wird. Bei der korpusbasierten Methode steckt das Wissen im Korpus, d.h. in einer Datensammlung, welche von einem raffinierten Programm analysiert wird.

Beide Methoden haben ihre Leistungen seit den 90er Jahren gewaltig steigern können. Am eindrücklichsten ist dies bei der korpusbasierten Methode geschehen, die heute als eigentliche künstliche Intelligenz gilt und in der breiten Öffentlichkeit für Schlagzeilen sorgt. Worauf beruhen die entscheidenden Verbesserungen der beiden Methoden? – Ich werde gleich auf beide Methoden und ihre Verbesserungen eingehen. Als erstes sehen wir uns an, wie die korpusbasierte KI funktioniert.

Wie funktioniert die korpusbasierte KI?

Eine korpusbasierte KI besteht aus zwei Teilen:

  1. Korpus
  2. Algorithmen (neuronales Netz)
k-KI mit Korpus und neuronalem Netz
Abb 1: Aufbau einer korpusbasierten KI

Der Korpus, auch Lernkorpus genannt, ist eine Sammlung von Daten. Dies können z.B. Photographien von Panzern oder Gesichtern sein, aber auch Sammlungen von Suchanfragen, z.B. von Google. Wichtig ist, dass der Korpus die Daten bereits bewertet enthält. Im Panzerbeispiel ist im Korpus vermerkt, ob es sich um eigene oder feindliche Panzer handelt. In der Gesichtersammlung ist vermerkt, um wessen Gesicht es sich jeweils handelt; bei den Suchanfragen speichert Google, welcher Link der Suchende anklickt, d.h. welcher Vorschlag von Google erfolgreich ist. Im Lernkorpus steckt also das Wissen, das die korpusbasierte KI verwenden wird.

Nun muss die KI lernen. Das Ziel ist, dass die KI ein neues Panzerbild, ein neues Gesicht oder eine neue Suchanfrage korrekt zuordnen kann. Dazu verwendet die KI das Wissen im Korpus, also z.B. die Bilder der Panzersammlung, wobei bei jedem Bild vermerkt ist, ob es sich um eigene oder fremde Panzer handelt – in Abb. 1 dargestellt durch die kleinen grauen und grünen Etiketten links von jedem Bild. Diese Bewertungen sind ein notwendiger Teil des Korpus.

Jetzt kommt der zweite Bestandteil der korpusbasierten KI ins Spiel, der Algorithmus. Im Wesentlichen handelt es sich um ein neuronales Netz. Es besteht aus mehreren Schichten von ‹Neuronen›, die Inputsignale aufnehmen, gegeneinander verrechnen und dann ihre eigenen Signale an die nächsthöhere Schicht ausgeben. In Abb. 1 ist dargestellt, wie die erste (gelbe) Neuronenschicht die Signale (Pixel) aus dem Bild aufnimmt und nach einer Verrechnung dieser Signale eigene Signale an die nächste (orange) Schicht weitergibt, bis am Schluss das Netz zum Resultat ‹eigener› oder ‹fremder› Panzer gelangt. Die Verrechnungen (Algorithmen) der Neuronen werden beim Training so lange verändert und angepasst, bis das Gesamtnetz bei jedem Bild das korrekte Resultat liefert.

Wenn jetzt ein neues, noch unbewertetes Bild dem neuronalen Netz vorgelegt wird, verhält sich dieses genau gleich wie bei den anderen Bildern. Wenn das Netz gut trainiert worden ist, sollte der Panzer vom Programm selbstständig zugeordnet werden können, d.h. das neuronale Netz erkennt, ob das Bild einen eigenen oder  fremden Panzer darstellt (Abb. 2).

Suchanfrage mit unbekanntem Panzer

Abb. 2: Suchanfrage mit noch nicht klassifiziertem Panzer an das neuronale Netz

Die Bedeutung des Datenkorpus für die korpusbasierte KI

Die korpusbasierte KI findet ihr Detailwissen im eigens für sie bereitgestellten Korpus vor und wertet die Verbindungen aus, die sie dort antrifft. Der Korpus enthält somit das Wissen, welches die korpusbasierte KI auswertet. Das Wissen besteht in unserem Beispiel in der Verbindung der Photographie, also einer Menge von wild angeordneten Pixeln mit einer einfachen binären Information (unser Panzer/fremder Panzer). Dieses Wissen findet sich im Korpus bereits bevor eine Auswertung durch die Algorithmen stattfindet. Die Algorithmen der korpusbasierte KI finden also nichts heraus, was nicht im Korpus steckt. Allerdings: Das im Korpus gefundene Wissen kann die korpusbasierte KI nun auch auf neue und noch nicht bewertete Fälle anwenden.

Die Herausforderungen an die korpusbasierte KI

Die Herausforderungen an die korpusbasierte KI sind eindeutig:

  1. Grösse des Korpus: Je mehr Bilder sich im Korpus befinden, umso sicherer kann die Zuordnung erfolgen. Ein zu kleiner Korpus bringt Fehlresultate. Die Grösse des Korpus ist für die Präzision und Zuverlässigkeit der Resultate entscheidend.
  2. Hardware: Die Rechenleistung, welche die korpusbasierte KI benötigt, ist sehr gross; und sie wird umso grösser, je präziser die Methode sein soll. Die Performance der Hardware entscheidet über die praktische Anwendbarkeit der Methode.

Dadurch wird schnell klar, wie die korpusbasierte KI ihre Leistung in den letzten zwei Jahrzehnten so eindrücklich verbessern konnte:

  1. Die Datenmengen, welche Google und andere Organisationen im Internet sammeln können, sind drastisch angestiegen. Google profitiert dabei von einem nicht unbedeutenden Verstärkungseffekt: Je mehr Anfragen Google bekommt, umso besser wird der Korpus und damit seine Trefferquote. Je besser die Trefferquote, umso mehr Anfragen bekommt Google.
  2. Die Hardware, welche zur Auswertung der Daten benötigt wird, wird immer günstiger und performanter. Internetfirmen und andere Organisationen verfügen heute über riesige Serverfarmen, welche die rechenintensiven Auswertungen der korpusbasierten KI erst möglich machen.

Neben dem Korpus und der Hardware spielt natürlich auch die Raffinesse der Algorithmen eine Rolle. Die Algorithmen waren aber auch schon vor Jahrzehnten nicht schlecht. Im Vergleich zu den beiden anderen Faktoren – Hardware und Korpus – spielt der Fortschritt bei den Algorithmen für den beeindruckenden Erfolg der korpusbasierten KI nur eine bescheidene Rolle.

Der Erfolg der korpusbasierten KI

Die Herausforderungen an die korpusbasierte KI wurden von den grossen Firmen und Organisationen äusserst erfolgreich angegangen.

Auf Basis der oben erfolgten Beschreibung der Funktionsweise sollten aber auch die systemimmanenten und in den Medien etwas weniger prominent platzierten Schwächen der korpusbasierten KI erkennbar werden. In einem späteren Beitrag werde ich genauer darauf eingehen.


Dies ist ein Beitrag zum Thema künstliche Intelligenz. In der Fortsetzung sehen wir die Herausforderungen für die regelbasierte KI an.

Regelbasierte KI: Wo steckt die Intelligenz?

Zwei KI-Varianten: regelbasiert und korpusbasiert

Die in den Vorbeiträgen erwähnten beiden KI-Varianten sind auch heute noch aktuell, und beide haben bemerkenswerte Erfolge zu verbuchen. Sie unterscheiden sich nicht zuletzt darin, wo genau bei ihnen die Intelligenz sitzt. Schauen wir zuerst das regelbasierte System an:

Aufbau eines regelbasierten Systems

Bei der Firma Semfinder verwendeten wir ein regelbasiertes System. Ich zeichnete 1999 dafür folgende Skizze:

Grün: Daten
Braun: Software
Hellblau: Knowledge Ware
Dunkelblau: Knowledge Engineer

Die Skizze besteht aus zwei Rechtecken, die zwei verschiedene Orte bezeichnen. Das Rechteck links unten zeigt, was im Krankenhaus geschieht, das Rechteck rechts oben, was zusätzlich im Knowledge Engineering abläuft.

Im Krankenhaus liest unser Kodierprogramm die Freitexte der Ärzte, interpretiert sie  zu Begriffsmolekülen und weist diesen mit Hilfe einer Wissensbasis die entsprechenden Kodes zu. Die Wissensbasis enthält die Regeln, mit denen die Texte interpretiert werden. Diese Regeln werden bei uns in der Entwicklerfirma von Menschen (Human Experts) erstellt. Die Regeln sind vergleichbar mit den Algorithmen eines Software-Programms, nur dass sie in einer «höheren» Programmiersprache geschrieben sind, sodass auch Nicht-Informatiker, nämlich die Domain-Experten, die in unserem Fall Ärzte sind, sie einfach bauen und sicher warten können. Dazu verwenden sie den Wissensbasis-Editor, eine weitere Software, welche es erlaubt, die Regeln zu sichten, zu testen, zu modifizieren oder auch ganz neu zu bauen.

Wo sitzt nun die Intelligenz?

Sie steckt in der Wissensbasis. Aber es handelt sich nicht um wirkliche Intelligenz. Die Wissensbasis kann nicht selbstständig denken, sie führt nur aus, was ein Mensch ihr vorgegeben hat. Ich habe deshalb unser System nie als ein intelligentes bezeichnet. Intelligenz bedeutet im mindesten, dass man neue Dinge lernen kann. Die Wissensbasis lernt aber nichts. Wenn ein neues Wort auftaucht oder ein neuer Aspekt der Kodierung eingebaut wird, dann macht dies nicht die Wissensbasis, sondern der Knowledge Engineerjj, also der Mensch. Der Rest (Hardware, Software, Wissensbasis) führt nur aus, was der Mensch vorgibt. Die Intelligenz in unserem System war immer und ausschliesslich Sache der Menschen – also eine natürliche und keine künstliche.


Ist das bei der korpusbasierten Methode anders? Im Folgebeitrag schauen wir dazu ein solches korpusbasiertes System genauer an.

Dies ist ein Beitrag zum Thema künstliche Intelligenz.

Zur KI: Schnaps und Panzer

KI im letzten Jahrhundert

KI ist heute ein grosses Schlagwort, war aber bereits in den 80er und 90er Jahren des letzten Jahrhunderts ein Thema, das für mich auf meinem Gebiet des Natural Language Processing interessant war. Es gab damals zwei Methoden, die gelegentlich als KI bezeichnet wurden und die unterschiedlicher nicht hätten sein können. Das Spannende daran ist, dass diese beiden unterschiedlichen Methoden heute noch existieren und sich weiterhin essenziell voneinander unterscheiden.

KI-1: Schnaps

Die erste, d.h. die Methode, die bereits die allerersten Computerpioniere verwendeten, war eine rein algorithmische, d.h. eine regelbasierte. Beispielhaft für diese Art Regelsysteme sind die Syllogismen des Aristoteles:

Prämisse 1: Alle Menschen sind sterblich.
Prämisse 2: Sokrates ist ein Mensch.
Schlussfolgerung: Sokrates ist sterblich.

Der Experte gibt Prämisse 1 und 2 ein, und das System zieht dann selbstständig die Schlussfolgerung. Solche Systeme lassen sich mathematisch untermauern. Mengenlehre und First-Order-Logic (Aussagelogik ersten Grades) gelten oft als sichere mathematische Grundlage. Theoretisch waren diese Systeme somit wasserdicht abgesichert. In der Praxis sah die Geschichte allerdings etwas anders aus. Probleme ergaben sich durch die Tatsache, dass auch die kleinsten Details in das Regelsystem aufgenommen werden mussten, da sonst das Gesamtsystem «abstürzte», d.h. total abstruse Schlüsse zog. Die Korrektur dieser Details nahm mit der Grösse des abgedeckten Wissens überproportional zu. Die Systeme funktionierten allenfalls für kleine Spezialgebiete, für die klare Regeln gefunden werden konnten, für ausgedehntere Gebiete wurden die Regelbasen aber zu gross und waren nicht mehr wartbar. Ein weiteres gravierendes Problem war die Unschärfe, die vielen Ausdrücken eigen ist, und die mit solchen hart-kodierten Systemen schwer in den Griff zu bekommen ist.

Diese Art KI geriet also zunehmend in die Kritik. Kolportiert wurde z.B. folgender Übersetzungsversuch: Ein NLP-Programm übersetzte Sätze vom Englischen ins Russische und wieder zurück, dabei ergab die Eingabe:
«Das Fleisch ist willig, aber der Geist ist schwach» die Übersetzung:
«Das Steak ist kräftig, aber der Schnaps ist lahm.»

Die Geschichte hat sich vermutlich nicht genau so zugetragen, aber das Beispiel zeigt die Schwierigkeiten, wenn man versucht, Sprache mit regelbasierten Systemen einzufangen. Die Anfangseuphorie, die seit den 50er Jahren mit dem «Elektronenhirn» und seiner «maschinellen Intelligenz» verbunden worden war, verblasste, der Ausdruck «Künstliche Intelligenz» wurde obsolet und durch den Ausdruck «Expertensystem» ersetzt, der weniger hochgestochen klang.

Später, d.h. um 2000, gewannen die Anhänger der regelbasierten KI allerdings wieder Auftrieb. Tim Berners-Lee, Pionier des WWW, lancierte zur besseren Benutzbarkeit des Internets die Initiative Semantic Web. Die Experten der regelbasierten KI, ausgebildet an den besten technischen Hochschulen der Welt, waren gern bereit, ihm dafür Wissensbasen zu bauen, die sie nun Ontologien nannten. Bei allem Respekt vor Berners-Lee und seinem Bestreben, Semantik ins Netz zu bringen, muss festgestellt werden, dass die Initiative Semantic Web nach bald 20 Jahren das Internet nicht wesentlich verändert hat. Meines Erachtens gibt es gute Gründe dafür: Die Methoden der klassischen mathematischen Logik sind zu rigid, die komplexen Vorgänge des Denkens nachzuvollziehen – mehr dazu in meinen anderen Beiträgen, insbesondere zur statischen und dynamischen Logik. Jedenfalls haben weder die klassischen regelbasierten Expertensysteme des 20. Jahrhunderts noch die Initiative «Semantic Web» die hoch gesteckten Erwartungen erfüllt.

KI-2: Panzer

In den 90er Jahren gab es aber durchaus auch schon Alternativen, die versuchten, die Schwächen der rigiden Aussagenlogik zu korrigieren. Dazu wurde das mathematische Instrumentarium erweitert.

Ein solcher Versuch war die Fuzzy Logic. Eine Aussage oder eine Schlussfolgerung war nun nicht mehr eindeutig wahr oder falsch, sondern der Wahrheitsgehalt konnte gewichtet werden. Neben Mengenlehre und Prädikatenlogik hielt nun auch die Wahrscheinlichkeitstheorie Einzug ins mathematische Instrumentarium der Expertensysteme. Doch einige Probleme blieben: Wieder musste genau und aufwendig beschrieben werden, welche Regeln gelten. Die Fuzzy Logic gehört also ebenfalls zur regelbasierten KI, wenn auch mit Wahrscheinlichkeiten versehen. Heute funktionieren solche Programme in kleinen, wohlabgegrenzten technischen Nischen perfekt, haben aber darüberhinaus keine Bedeutung.

Eine andere Alternative waren damals die Neuronalen Netze. Sie galten als interessant, allerdings wurden ihre praktischen Anwendungen eher etwas belächelt. Folgende Geschichte wurde dazu herum

gereicht:

Die amerikanische Armee – seit jeher ein wesentlicher Treiber der Computertechnologie – soll ein neuronales Netz zur Erkennung von eigenen und fremden Panzern gebaut haben. Ein neuronales Netz funktioniert so, dass die Schlussfolgerungen über mehrere Schichten von Folgerungen vom System selber gefunden werden. Der Mensch muss also keine Regeln mehr eingeben, diese werden vom System selber erstellt.

Wie kann das System das? Es braucht dazu einen Lernkorpus. Bei der Panzererkennung war das eine Serie von Fotos von amerikanischen und russischen Panzern. Für jedes Foto war also bekannt, ob amerikanisch oder russisch, und das System wurde nun so lange trainiert, bis es die geforderten Zuordnungen selbstständig erstellten konnte. Die Experten nahmen auf das Programm nur indirekt Einfluss, indem sie den Lernkorpus aufbauten; das Programm stellte die Folgerungen im neuronalen Netz selbstständig zusammen – ohne dass die Experten genau wussten, aus welchen Details das System mit welchen Regeln welche Schlüsse zog. Nur das Resultat musste natürlich stimmen. Wenn das System nun den Lernkorpus vollkommen integriert hatte, konnte man es testen, indem man ihm einen neuen Input zeigte, z.B. ein neues Panzerfoto, und es wurde erwartet, dass es mit den aus dem Lernkorpus gefundenen Regeln das neue Bild korrekt zuordnete. Die Zuordnung geschah, wie gesagt, selbständig durch das System, ohne dass der Experte weiteren Einfluss nahm und ohne dass er genau wusste, wie im konkreten Fall die Schlüsse gezogen wurden.

Das funktionierte, so wurde erzählt, bei dem Panzererkennungsprogramm perfekt. So viele Fotos dem Programm auch gezeigt wurden, stets erfolgte die korrekte Zuordnung. Die Experten konnten selber kaum glauben, dass sie wirklich ein Programm mit einer hundertprozentigen Erkennungsrate erstellt hatten. Wie konnte so etwas sein? Schliesslich fanden sie den Grund: Die Fotos der amerikanischen Panzer waren in Farbe, diejenigen der russischen schwarzweiss. Das Programm musste also nur die Farbe erkennen, die Silhouetten der Panzer waren irrelevant.

Regelbasiert versus korpusbasiert

Die beiden Anekdoten zeigen, welche Probleme damals auf die regelbasierte und die korpusbasierte KI warteten.

  • Bei der regelbasierten KI waren es:
    – die Rigidität der mathematischen Logik
    – die Unschärfe unserer Wörter
    – die Notwendigkeit, sehr grosse Wissenbasen aufzubauen
    – die Notwendigkeit, Fachexperten für die Wissensbasen einzusetzen
  • Bei der korpusbasierten KI waren es:
    – die Intransparenz der Schlussfolgerungs-Wege
    – die Notwendigkeit, einen sehr grossen und relevanten Lernkorpus aufzubauen

Ich hoffe, dass ich mit den beiden oben beschriebenen, zugegebenermassen etwas unfairen Beispielen den Charakter und die Wirkweise der beiden KI-Typen habe darstellen können, mitsamt den Schwächen, die die beiden Typen jeweils kennzeichnen.

Die Herausforderungen bestehen selbstverständlich weiterhin.  In den folgenden Beiträgen werde ich darstellen, wie die beiden KI-Typen darauf reagiert haben und wo bei den beiden Systemen nun wirklich die Intelligenz sitzt. Als Erstes schauen wir die korpusbasierte KI an.

Dies ist ein Beitrag zum Thema künstliche Intelligenz.