Künstliche Intelligenz für die Schule

Das Thema „Künstliche Intelligenz“ (englisch: „Artificial Intelligence“) hat nun im Jahr 2023 die „pädagogischen Marktplätze“ erreicht. Mit dem Produkt Chat-GPT ist die Nutzung eines „Schreib­generators“ für vielfältige Zwecke plötzlich aktuell geworden. Mit dem textbasierten Dialogsystem lassen sich täuschend echte Texte für den Sprachunterricht oder auch realistische Fächer (Mathematik, Naturwissenschaften, Informatik) verfassen, wobei die eigenen Fähigkeiten und die eigene sprachliche Kreativität der Studierenden und Schüler*innen kaum mehr eingeschätzt werden kann. „Hausarbeiten“ mit originärem Ursprung werden damit fraglich und ein wesentliches Moment, einen persönlichen Schreibstil zu entwickeln, kann damit massiv gestört werden. Auf der anderen Seite erscheint es dann doch geraten, diese informatischen Entwicklungen so in ein Unterrichts- oder Studiengeschehen einzubeziehen, dass man Aufgabenstellungen findet, die jenseits von einfachen Schreibtexten die Fähigkeiten von Schüler*innen und Studierenden mit Unterstützung von Textgeneratoren bewerten kann.

1.      Der Turingtest

Alan Turing formulierte 1950 die Idee, wie man feststellen könne, ob ein Computer ein dem Menschen gleichwertiges Denkvermögen besitzt. Der „Test“ war eine theoretische Skizze, die im Zeitalter der Informatik und der künstlichen Intelligenz genauer und konkreter ausformuliert wurde (Dartmouth Conference 1956).

Ein menschlicher Fragesteller (Mitte) führt mittels Tastatur und Bildschirm mit zwei unbekannten Gesprächspartnern eine Unterhaltung. Der eine Gesprächspartner ist ein Mensch (Frau rechts), der andere eine Maschine (links). Wenn der Fragesteller nach einer intensiven Befragung nicht klar sagen kann, welcher von beiden die Maschine ist, hat die Maschine den Turingtest bestanden. Ihr wird ein dem Menschen ebenbürtiges Denkvermögen unterstellt.

Turing vermutete, dass es bis zum Jahr 2000 möglich sein werde, Computer so zu programmieren, dass der durchschnittliche Anbieter eine höchsten 70% Chance habe, Mensch und Maschine erfolgreich zu identifizieren, nachdem er 5 Minuten mit ihnen „Gesprochen“ hat. Die Vorhersage hat sich bisher nicht erfüllt- ein Beleg für die Unterschätzung der Komplexität künstlicher Intelligenz!

Die Überlegungen zum Turingtest waren allerdings Basis für den ersten Chat-Bot, ELISA von J. Weizenbaum, der ein Grundrepertoire von freundlichen Fragestellungen hatte („wie geht es Dir?“) und auf  Personen „eingegangen“ ist. Immerhin war etlichen Versuchspersonen nicht bewusst, dass es sich um einen nichtmenschlichen Gesprächspartner handelte. Es bestand den Turingtest allerdings nicht!

2. Künstliche Intelligenz wird in drei Entwicklungsstufen gesehen

Als „schwache KI“ konzentriert man sich auf die Lösung konkreter Anwendungsprobleme aus Mathematik und Informatik. Intelligente Service am Smartphone wie Routenplaner oder Sprachüber­setzer, also erfolgt eine gezielte Beschäftigung mit einer Aufgabe. Auch Schachcomputer und „Alpha-Go“ gehören in diese Kategorie.

Als „starke KI“ würde ein System angesehen, das so „intelligent“ wie ein Mensch ist, also sich mit unterschiedlichen Aufgaben beschäftigt, Vorgangsweisen planen kann oder komplexe Zusammenhänge verstehen kann.

Das Chinesische Zimmer ist der Name für ein Gedankenexperiment des Philosophen John Searle, der damit die „Starke KI“ angreift. Mit seiner Hilfe versucht Searle die Meinung zu widerlegen, dass digi­tale Computer allein dadurch Be­wusstsein erlangen könnten, dass sie ein passendes Programm ausführen. Searle beschrieb einen geschlosse­nen Raum, in dem sich ein Mensch befindet. Ihm werden durch einen Schlitz in der Tür Zettel mit Ge­schichten auf Chinesisch zugestellt.

Er selbst ist der chinesischen Sprache nicht mächtig und versteht somit weder den Sinn der einzelnen Zeichen noch den Sinn der Geschichte. Danach erhält er noch einen Zettel mit Fragen zu der Geschichte (ebenfalls in chinesischer Notation). Der Mensch findet des Weiteren einen Stapel chinesischer Skripte und ein „Handbuch“ mit Regeln in seiner Muttersprache vor. Die Skripte enthalten Zusatz- und Hintergrundinformationen zu den Geschichten (eine Art „Wissensdatenbank“). Das Handbuch ermöglicht es ihm, die Zeichen mit der Geschichte in Verbindung zu bringen, allerdings ausschließlich auf der Ebene der Zeichenerkennung (über die Form der Zeichen). Auch entnimmt er dem Handbuch Anweisungen, welche Zeichen er (abhängig von den Zeichen der Geschichte, der Skripte und der Fragen) auf den Antwortzettel zu übertragen hat. Er folgt also rein mechanischen Anweisungen und schiebt das Ergebnis (die „Antworten“ auf die Fragen) durch den Türschlitz, ohne die Geschichte oder die Fragen verstanden zu haben.

Vor der Tür wartet ein chinesischer Muttersprachler, der die Antwortzettel liest. Er kommt aufgrund des Sinngehaltes der Antworten zu dem Ergebnis, im Raum befinde sich ebenfalls ein Chinesisch sprechender Mensch, der die Geschichte verstanden hat.

Als „Superintelligenz“ wäre eine Maschine zu verstehen, die in jedem kognitiven Feld besser als die begabtesten Menschen ist und Lösungsstrategien „lernen“ und damit weiterentwickeln kann. Da die Maschine aber keine ethischen Maßstäbe entwickeln kann, wäre es hier die Aufgabe, einen „Kern-Code“ zu schreiben.

3. Geschichtliche Entwicklung

Eine kurze geschichtliche Entwicklung der Künstlichen Intelligenz in Schlagworten

1936: Turingmaschine: Der britische Mathematiker Alan Turing beweist durch seine Theorien, dass eine Rechenmaschine – eine sogenannte „Turingmaschine“ – in der Lage wäre, kognitive Prozesse auszuführen, sofern diese sich in mehrere Einzelschritte zerlegen und durch einen Algorithmus darstellen lassen. Damit legt er den Grundstein für das, was wir heute unter Künstlicher Intelligenz verstehen.

1956: Der Begriff „KI“ entsteht: Im Sommer 1956 treffen sich Wissenschaftler zu einer Konferenz am Dartmouth College im US-Bundesstaat New Hampshire. Sie sind der Ansicht, dass Aspekte des Lernens sowie andere Merkmale der menschlichen Intelligenz von Maschinen simuliert werden können. Der Programmierer John McCarthy schlägt dafür den Begriff „Künstliche Intelligenz“ vor. Während der Konferenz wird mit dem „Logic Theorist“ – der es schafft, mehrere Dutzend mathematische Lehrsätze zu beweisen – zudem das erste KI-Programm der Welt geschrieben.

1966: Geburt des ersten Chatbots: Der deutsch-amerikanische Informatiker Joseph Weizenbaum vom Massachusetts Institute of Technology erfindet ein Computerprogramm, das mit Menschen kommuniziert. Über Skripte simuliert „ELIZA“ verschiedene Gesprächspartner, beispielsweise einen Psychotherapeuten. Weizenbaum ist überrascht, mit welch einfachen Mitteln „ELIZA“ die Illusion eines menschlichen Gesprächspartners erzeugen kann.

1972: KI gelangt in die Medizin: Mit „MYCIN“ findet Künstliche Intelligenz den Weg in die Praxis: Das von Ted Shortliffe an der Stanford University entwickelte Expertensystem wird zur Behandlung von Krankheiten eingesetzt. Expertensysteme sind Computerprogramme, die das Wissen eines bestimmten Fachgebietes durch Formeln, Regeln und eine Wissensdatenbank bündeln. In der Medizin dienen sie zur Unterstützung bei Diagnose und Therapie.

1986: „NETtalk“ spricht: Der Computer erhält erstmals eine Stimme. Durch die Eingabe von Beispielsätzen und Phonemketten bringen Terrence J. Sejnowski und Charles Rosenberg ihrem Programm „NETtalk“ das Sprechen bei. „NETtalk“ kann Wörter lesen und korrekt aussprechen sowie das Gelernte auf ihm unbekannte Wörter anwenden. Damit ist es eines der frühen künstlichen neuronalen Netze – also Programme die mit großen Datensätzen gefüttert werden und darauf aufbauend eigene Schlüsse ziehen können. In Aufbau und Funktion ähneln sie damit dem menschlichen Gehirn.

1997: Computer schlägt Schachweltmeister: Die KI-Schachmaschine „Deep Blue“ der Firma IBM bezwingt den amtierenden Schachweltmeister Garry Kasparov in einem Turnier. Dies gilt als historischer Erfolg der Maschinen in einem Bereich, der bislang vom Menschen dominiert wurde. Kritiker werfen jedoch ein, dass „Deep Blue“ nicht durch kognitive Intelligenz, sondern nur durch das Berechnen aller denkbaren Züge gewonnen habe.

Um 2000: Maschinelles Lernen und neuronale Netze: Expertensysteme und andere auf Wissensdatenbanken basierende Systeme hatten nur mäßigen Erfolg, da es sich als zu schwer herausstellte, das benötigte Wissen von Hand in formale Regeln zu überführen. Diese Schwäche wird durch maschinelles Lernen umgangen. Hierbei lernt das Computersystem selbstständig anhand der vorliegenden Daten und ist so auch in der Lage, verborgene Zusammenhänge zu erkennen, die ein Mensch nicht berücksichtigt hätte. Klassische Verfahren lernen dabei eine Ausgabefunktion anhand vorher extrahierter Merkmale, die durch manuelle Programmierung aus den Eingabedaten extrahiert wurden. Hierbei zeigte sich jedoch ein ähnliches Problem wie bei den Expertensystemen, dass eine manuelle Auswahl nicht immer zu einem optimalen Ergebnis führt. Eine aktuell erfolgreiche Struktur für maschinelles Lernen sind künstliche neuronale Netze (KNNs). Sie basieren auf der Fähigkeiten, die erforderlichen Merkmale selbst anhand der Rohdaten zu lernen, beispielsweise direkt aus den Kamerabildern.

2011: KI erreicht den Alltag: Technologiesprünge bei der Hard- und Software bahnen Künstlicher Intelligenz den Weg in das tägliche Leben. Leistungsstarke Prozessoren und Grafikkarten in Computern, Smartphones und Tablets ermöglichen es normalen Verbrauchern auf KI-Programme zuzugreifen. Insbesondere Sprachassistenten erfreuen sich großer Beliebtheit: Apples „Siri“ kommt 2011 auf den Markt, 2014 stellt Microsoft die Software „Cortana“ vor und Amazon präsentiert 2015 Amazon Echo mit dem Sprachdienst „Alexa“.

2011: KI „Watson“ gewinnt Quizshow: Das Computerprogramm „Watson“ tritt in Form eines animierten Bildschirmsymbols in einer US-amerikanischen TV-Quizshow an und gewinnt gegen die menschlichen Mitspieler. Damit beweist „Watson“, dass es die natürliche Sprache versteht und schnell auf schwierige Fragen antworten kann.

2016: Alpha Go besiegt besten Go-Spieler: Im März 2016 besiegte das System AlphaGo mit dem Südkoreaner Lee Sedol einen der weltbesten Go-Spieler. Das vom Unternehmen DeepMind entwickelte Programm hatte zuvor Millionen von archivierten Spielen mit Deep Learning ausgewertet und zudem mehrere Millionen Mal gegen sich selbst gespielt.

2017 – KI Programm besiegt Profi- Computerspieler: Eine künstliche Intelligenz der Firma OpenAI besiegt bei einem mit 24 Millionen Dollar dotierten Turnier des Computerspiels Dota 2 einige der weltbesten Profispieler auf diesem Gebiet. Dota 2 gilt als eines der komplexesten Videospiele überhaupt, komplexer als Go oder Schach. Dota 2 wurde allerdings hier im „Eins zu eins“ – Modus gespielt und nicht im komplexeren Team-Modus. OpenAI erklärte, dass die KI nur vier Monate benötigte, um diese Spielstärke zu erreichen. Die KI wurde trainiert, indem diese immer wieder gegen sich selbst antrat. Die KI bekam das gleiche Sichtfeld wie der menschliche Spieler und durfte nur eine begrenzte Anzahl von Aktionen gleichzeitig ausführen. Ziel von OpenAI ist es nun, eine KI zu entwickeln, die die besten menschlichen Spieler auch im Team-Modus besiegen kann.

2018: KI debattiert über Raumfahrt und vereinbart einen Friseurtermin: Diese beiden Beispiele demonstrieren die Leistungsfähigkeit von Künstlichen Intelligenzen: Im Juni liefert sich „Project Debater“ von IBM mit zwei Debattiermeistern ein Rededuell über komplexe Themen – und schneidet dabei beachtlich ab. Wenige Woche zuvor demonstriert Google auf einer Konferenz, wie die KI „Duplex“ beim Friseur anruft und im Plauderton einen Termin vereinbart – ohne dass die Dame am anderen Ende der Leitung merkt, dass sie mit einer Maschine spricht.

2022: Chat-GPT macht Furore: Das textbasierte Dialogsystem Chat-GPT ist als Pilotprodukt bald in aller Munde: es kann sprachlich korrekte Dialoge führen und besitzt viele Fertigkeiten im kognitiven Bereich ( Mathematik, Naturwissenschaften, etc.). es hält nach zwei Monaten Einzug an Hochschulen und Schulen.

20xx: Die nahe Zukunft: Trotz jahrzehntelanger Forschung steht die Entwicklung der Künstlichen Intelligenz noch relativ am Anfang. Damit sie in sensiblen Bereichen wie dem automatisierten Fahren oder der Medizin eingesetzt werden kann, muss sie zuverlässiger und sicherer gegen Manipulationen werden. KI-Systeme sollen zudem lernen, ihre Entscheidungen zu erklären, damit Menschen sie nachvollziehen und die Denkweise der KI besser erforschen können.

4. Wo wird künstliche Intelligenz heute schon angewendet?

Eine allgemeine künstliche Intelligenz gibt es weiterhin nicht, doch für immer mehr spezielle Aufgaben werden KI-Lösungen entwickelt, die dem Menschen ebenbürtig oder überlegen sind. Dabei geht es häufig um das Erkennen und Interpretieren von Mustern in Bildern, Sprache oder Datenbanken, das Finden optimaler Lösungen in komplexen Situationen oder das Filtern relevanter Informationen.

Oft empfinden wir diese Technologien gar nicht mehr als intelligent, sobald wir uns an sie gewöhnt haben – der bekannte „KI-Effekt“.

Virtuelle Assistenten und Chatbots

Virtuelle Assistenten entsprechen wohl am ehesten der Vorstellung von KI, wie wir sie aus Science-Fiction-Filmen kennen: Siri, Alexa, Cortana oder Google Assistant: Die freundliche Stimme lässt sich per Sprache steuern, kann ein Kinoticket kaufen, Musik abspielen oder das Licht dimmen. Dahinter stecken beeindruckende Leistungen in der Spracherkennung (die Geräusche müssen in Wörter übersetzt werden) und der Sprachverarbeitung (in der Folge von Wörtern muss eine konkrete Anforderung erkannt werden).  Chatbots, als einfachere, textbasierte Variante, sind seit Jahren vor allem im Kundenservice vieler Unternehmen im Einsatz und können die Mitarbeiter bei der großen Masse an Routine-Anfragen entlasten.

Beispiel: Google Assistant – ein virtueller persönlicher Assistent auf Basis von KI

Robotik

In der physischen Steuerung von Robotern stößt KI weiterhin an ihre Grenzen, vor allem in einer offenen unerwarteten Umgebung. In kontrollierten Umgebungen sieht das anders aus: Industrieroboter übernehmen zum Beispiel einen Großteil der Fertigung von Autos bei VW. Oder ein Beispiel aus der Logistik: Mit künstlicher Intelligenz kann zum Beispiel Amazon Millionen von Warenhaus-Robotern kollisionsfrei steuern.

Und in virtuellen Umgebungen wie Schach, Go, oder Computerspielen hat der Computer dem Menschen bereits den Rang abgelaufen. AlphaGo im Duell gegen Lee Sedol. Quelle: www.bbc.com/news/technology-35785875

Suchmaschinen

Eine weitere Spielart der KI, an die wir uns längst gewöhnt haben, sind Suchmaschinen. Nur sie ermöglichen uns, in den riesigen Datenmengen des World Wide Web zu navigieren und die für uns relevanten Inhalte zu finden.

Empfehlungsdienste

Den gleichen Vorteil – die relevanten Inhalte aus einem überwältigenden Angebot zu finden, bieten uns Empfehlungssysteme, zum Beispiel in E-Shops wie Amazon oder Dienste wie Spotify oder Netflix. Sie steuern aber auch die Neuigkeiten und Gruppen, die uns in sozialen Medien vorgeschlagen werden oder werden im Recruiting von Firmen verwendet. Netflix: Ein Produkt, das ohne intelligente Empfehlungen nicht denkbar ist.

Content-Moderation

In sozialen Medien oder Nachrichtenforen ist die Moderation eine große Herausforderung. Trolle, Beleidigungen und verbotene Inhalte zu erkennen und zu löschen ist oft mit menschlicher Arbeitskraft nicht mehr zu bewältigen. Youtube beispielsweise setzt bei der Moderation stark auf künstliche Intelligenz: 76% der gelöschten Videos auf Youtube wurden von künstlicher Intelligenz identifiziert und markiert.

Gesichtserkennung

Die Gesichtserkennung hat große Fortschritte gemacht. Die meisten aktuellen Smartphones können heute mittels Gesichtserkennung entsperrt werden. Ebenfalls mittels Gesichtserkennung erkennt Facebook Photo Review, wer auf neu hochgeladenen Fotos abgebildet ist und fragt die Person nach ihrem Einverständnis. Digitalkameras lernen, automatisch auf Gesichter zu fokussieren oder bewegende Gegenstände wie Autos zu verfolgen und scharf zu stellen.

Die gleiche technologischen Grundlage wird auch in der Bekämpfung der Corona-Pandemie verwendet: In vielen britischen Städten oder in den Einrichtungen von Amazon wird so mittels der Bilder von existierenden Überwachungskameras die Einhaltung der Sicherheitsabstände registriert.

5. Regelbasierte Systeme – Logiksysteme

Die Programme für künstliche Intelligenz werden hier auf der Basis mathematischer Logik ausgeführt. Die Beschäftigung mit künstlicher Intelligenz erfordert eine Befassung mit logischen Kalkülen wie der Aussage- und der Prädikatenlogik. Ein kurzer Abriss anbei:

5.1.Aussagen

Klassische Logik: z.B. Es gibt unendliche viele natürliche Zahlen ϵ N a,b und c, sodass die Gleichung a2 + b2 = c2 (Teil des großen Fermatschen Satzes!). Ist eine Aussage. Aussagen können „wahr“ (w) oder „falsch“ (f) sein. Aussagen kann man mit „Wahrheitstabellen“ darstellen.

Die Negation ¬A ist beispielsweise „falsch“, wenn A „wahr“ ist. Daher zeigt die Tabelle

A¬A
wf
fw

Die Konjunktion A ∧ B („A und B“) ist dann wahr, wenn beide Aussagen „wahr“ sind. Die Dis­junktion A ∨ B („A oder B“) ist dann wahr, wenn eine der Aussagen falsch ist. in Tabellenform:

ABA∧B
www
wff
fwf
fff
ABAB
www
wfw
fww
fff

Bei der Implikation A ⇒ B ist die Aussage falsch, wenn A wahr und B falsch ist. Bei der Äquivalenz A ⇔ B ist die Aussage wahr, wenn A und B beide wahr oder beide falsch sind.

ABAB
www
wff
fww
ffw
ABA B
www
wff
fwf
ffw

Aus diesen „kleinen Wahrheitstabellen“ kann man nun eine größere logische Aussage überprüfen. Dazu wird die Wahrheitstabelle erweitert. Z.B. die Wahrheitstafeln von A B und (AB) ∧ (BA) sind gleich.

ABA B
www
wff
fwf
ABABBA(AB) (BA)
wwwww
wffwf
fwwff

Die Symbole ¬, und werden als Quantoren bezeichnet.

5.2. Logik

Spezielle Sprachen, die Denkmuster der Logik unterstützen, sind die Aussagelogik (siehe Kap. I) und die Prädikatenlogik. Die Prädikatenlogik ist eine künstliche Sprache, ähnlich einer Programmiersprache, die keine Mehrdeutigkeiten zulässt. Wortschatz und Grammatik sind minimal. Die Logik hat viele Bezüge zur Informatik: Die Verbindung der Aussagelogik zur Digitaltechnik, die Logik und Komplexitätstheorie, die Verbindung von Prädikatenlogik und relationale Datenbanken und die Logik als Programmiersprache (z.B. Prolog).

5.3. Aussagelogik

Syntax (= korrekte Schreibweise): Aussagelogische Formeln werden induktiv in vier Schritten definiert. Σ wird dabei die Menge der Atome genannt.

  1. Jedes Atom in Σ ist eine Formel.
  2. Ist a eine Formel, so ist (¬α) eine Formel.
  3. Für Formeln a und β sind auch (α ˄ β), (α ˅ β), (α → β) und (α ↔ β) Formeln.
  4. Nur Ausdrücke, die mit den ersten drei Prämissen gebildet werden, sind Formeln.
  5. Es gelten folgende Bindungsregeln: ¬ bindet am stärksten, gefolgt von ˄, ˅, → und ↔.

Semantik (= Bedeutung der aussagelogischen Formeln): Sei J eine „Bewertung“ der Atome, die mit {0, 1} erfolgen kann. Die Bewertung von Formeln wird erweitert, wenn folgende Regeln gelten:

  1. J(¬α) =1 , wenn J( α ) = 0.
  2. J(α ˄ β) = 1, wenn J( α ) =1 und J( β ) =1.
  3. J(α ˅ β) =1, wenn J( α ) =1 oder J( β ) =1.
  4. J(α → β) =1, wenn J( α ) =0 oder J( β ) =1.
  5. J(α ↔ β) =1, wenn J( α ) = J( β ).

Wenn alle möglichen Bewertungen J (a) der Atome Formel zusammen mit dem zugehörigen Wahrheitswert „w(ahr)“ oder „f(alsch)“ in eine Tabelle geschrieben werden, erhält man die Wahrheitstafel siehe Kap. Aussagen).

Beispiel: Sei a = (A ˅ ¬B) ˄ (A˅B→C), dann ist die Wahrheitstafel (ähnlich oben):

A  B  C   A˅¬B  A˅B → C  α
0  0  0    1     1       1
0  0  1    1     1       1
0  1  0    0     0       0
0  1  1    0     1       0
1  0  0    1     0       0
1  0  1    1     1       1
1  1  0    1     0       0
1  1  1    1     1       1

Wahrheitstafel der obigen Aussage: Es gilt: Eine Formel α ist erfüllbar, wenn es wenigstens eine Bewertung J ( α ) =1 gibt. Eine Formel heißt tautologisch, wenn für jedes J ( α ) = 1 gilt. Eine Formel heißt widerspruchsvoll, wenn für jeden Formel J( α ) =0 ist. Eine Formel heißt falsifizierbar, wenn es eine Bewertung J ( α )= 0 gibt.

Wenn α und β aussagelogische Formeln sind. Dann ist β eine semantische Folgerung aus α, wenn für jede Bewertung J, für die α wahr ist, auch β wahr ist. Sei α = (A ˅ B) ˄ (¬A ˅ B) und β = B, dann ist α = (1, 0, 1, 0 – bitte nachprüfen!) und β = (1, 0, 1, 0). Somit ist β eine semantische Schlussfolgerung aus α und man schreibt α |= β.

Zwei aussagelogische Formel α und β heißen logisch äquivalent, wenn J (α) = J (β) für alle Bewertungen gilt. Die Schreibweise für die logische Äquivalenz ist α ≈ β.

In der Logik gibt es Regeln, welche semantische Folgerungen einfacher machen:

A. Die Vererbungsregeln: Sind α, β und γ aussagelogische Formeln. Dann gelten

  1. Wenn α ≈ β, so gilt auch ¬α ≈ ¬β.
  2. Wenn α ≈ β, so gilt γ ˄ α ≈  γ ˄ β,
  3. Wenn α ≈ β, so gilt γ ˅ α ≈  γ ˅ β.

B. Die Junktor-Minimierung: Sind α und β aussagelogische Formeln. Dann gilt:

  1. α →β ≈ ¬α ˅ β.
  2. α ˄ β ≈ ¬(¬α ˅ ¬β)
  3. α ↔ β ≈ (α→ β) ˄ (β→ α) ≈ (¬α ˅ β) ˄ (¬β ˅ α).

Man zeige die Formeln über Wahrheitstafeln.

C. Die Äquivalenzregeln: Sind α, β und γ aussagelogische Formeln. Dann gelten

  1. ¬ ¬α ≈ α (Negationsregel).
  2. α ˅ α ≈ α bzw. α ˄ α ≈ α (Idempotenzregeln)
  3. α ˄ β ≈ β ˄ α bzw. α ˅ β ≈ β ˅ α (Kommutativgesetz)
  4. (α ˅ β) ˅ γ ≈ α ˅ (β ˅ γ) und (α ˄ β) ˄ γ ≈ α ˄ (β ˄ γ) (Assoziativgesetz)
  5. (α ˄ β) ˅ γ ≈ (α ˅ γ) ˄ (β ˅ γ) und (α ˅ β) ˄ γ ≈ (α ˄ γ) ˅ (β ˄ γ) (Distributivgesetz)
  6. ¬(α ˄ β) ≈ ¬α ˅ ¬β und  ¬(α ˅ β) ≈  ¬α ˄ ¬β (Regeln von de Morgan).

Mit all diesen Regeln lassen sich Normalformen von aussagelogischen Formeln finden, die in der Logik eine wichtige Rolle spielen.

a) Die Negationsnormalform

Sei α eine aussagelogische Formel ohne → und ↔. Dann ist α eine Negationsnormalform (NNF), wenn jedes Negationszeichen direkt vor einem Atom steht.

Beispiel: Man berechne eine NNF von ¬ ((A ˅ B) ˄ (¬C ˅ D).

Es gilt: ¬ ((A ˅ B) ˄ (¬C ˅ D) ≈  ¬ (A ˅ B) ˅ ¬(¬C ˅ D) De Morgan

                                                           ≈   (¬A ˄ ¬B) ˅ ¬(¬C ˅ D) De Morgan

                                                           ≈   (¬A ˄ ¬B) ˅ (¬¬C ˄ ¬D) de Morgan

                                                           ≈   (¬A ˄ ¬B) ˅ (C ˅ ¬D) Negationsregel

Die letzte Form ist eine Negationsnormalform.

b) Konjunktive Normalform

Eine Formel der Form α = Vαi (i =1 bis n) wird Klausel genannt. Eine Formel α heißt konjunktive Normalform (KNF), wenn sie eine Konjunktion mehrerer Klauseln ist.

Beispiel: Man berechne eine KNF von α = ¬(A ˅ ¬B ˅ ¬(¬C ˅ D) ˅ ¬A)).

¬(A ˅ ¬B ˅ ¬(¬C ˅ D) ˅ ¬A)          ≈  ¬A ˄ (B ˄ (¬C ˅ D) ˄ A) Negationsnormalform

                                                       ≈   (¬A ˅ B) ˄ (¬A ˅ ((¬C ˅ D) ˄ A)) Distributivgesetz

                                                       ≈  (¬A ˅ B) ˄ (¬A ˅ (¬C ˅ D) ˄ (¬A ˅A) Distributivgesetz

                                                       ≈ (ØA ˅ B) ˄ (ØA ˅ ØC ˅ D) ˄ 1 Klammern

Die letzte Form ist die konjunktive Normalform, eine Konjunktion von Klauseln.

Ein Algorithmus zur schnellen Berechnung einer konjunktiven Normalform

Eingabe: Aussagelogische Formel α

Verfahren: sei α von der Form H1 ˄ … ˄ Hn, wobei Hi keine Konjunktionen sind

While ein Hi Tiefe =>4 besitzt do

  for i ϵ {1,…,n} do

    if Hi hat Tiefe => 4 then

      seien G1, …,Gm alle Subformeln von Hi in Tiefe 3, die Tiefe =>1 haben

      ersetze Hi wie folgt:   Hi [G1,…Gm] -> (G1 X1) ˄ ….˄ (Gm Xm) ˄  Hi[X1,…,Xm ]

    end if

  end for

 Iteriere mit der entstandenen Formel als neues α

end while

Wende die KNF-Erstellung auf die entstandene Formel an

c) Disjunktive Normalform

Eine Formel der Form α = Ʌαi (i =1 bis n) wird Monom genannt. Eine Formel α heißt disjunktive Normalform (DNF), wenn sie eine Disjunktion mehrerer Monome ist.

Beispiel: Man berechne die DNF von α = ¬(A ˅ ¬B ˅ ¬(¬C ˅ D) ˅ ¬A)).

¬(A ˅ ¬B ˅ ¬(¬C ˅ D) ˅ ¬A))           ≈ ¬A ˅ (B ˄ (¬C ˅ D) ˅ A) Negationsnormalform

                                                           ≈ ¬A ˅ ((B ˄ ¬C) ˅ (B ˄ D) ˄A Distributivgesetz

                                                           ≈ ¬A ˅ ((B ˄ ¬C) ˄ A) ˅ ((B ˄ D) ˄ A) Distributivgesetz

                                                           ≈ ¬A ˅ ((B ˄ ¬C) ˄ A) ˅ (B ˄ D ˄ A) Klammern

Die letzte Form ist die disjunktive Normalform, eine Disjunktion der Monome.

Logische Formeln werden direkt in digitalen Netzwerken realisiert. Dabei spielen Normalformen beim Schaltungs­aufbau eine wichtige Rolle. Die flexibelsten „Gatter“ (Logikbau-steine) heißen NOR und NAND, also ¬˅ und ¬˄. Das Bild zeigt die Umformung einer komplexen Schaltung Z aus drei Eingängen A, B und C und Umformung zu einer „schlanken“ Schaltung: Z = ¬(¬A ˄ ¬(¬B˄C) ˄ ¬(A¬BC))

Mit Kalkülen der Aussagelogik kann man formale Beweise führen. Dazu braucht es Prämissen α1, α2, α3, αn oder Voraussetzungen und die Formel α1˄ α2˄ α3˄…˄αn → β heißt gültiges Argument, wenn sie eine Tautologie ist d.h. für alle αi ist J(αi) = 1. 

Beispiel: Die Formel α ˄ (α→β) → β ist ein gültiges Argument. Sie ist von der Bauarbeit α1˄α2→γ und γ = β.

Mit α = (0,0,1,1) und β = (0,1,0,1) ergibt α→β (1,1,0,1) und  α ˄ (α→β) ergibt (0,0,0,1) und damit ergibt α ˄ (α→β) → β (1,1,1,1).

Die Formel ist tautologisch, also ein gültiges Argument.

Auch hier gelten die Äquivalenzregeln (siehe oben) und auch entsprechende Schlussregeln:

Formeläquivalent zuName der Regel
α ˅ β,  α ˄ ββ ˅ α, β ˄ αKommutativgesetz/ com
(a ˅ β) ˅ γ …..α ˅ (β ˅ γ )…Assoziativgesetz / ass
¬ (α ˄ β) …¬α ˅ ¬β…..De Morgan
α → β¬α ˅ βImplikation / imp
ᬬαDoppelte Negation /dn
AussageAbleitbarName der Regel
α  und α→βΒModus ponens/ mp
α → β und ¬β¬αModus Tollens/mt
α und βα ˄ βKonjunktion /con
α ˄ βα, βVereinfachung /simp
αα˅βAusdehnung/add

Zu den Begriffen:

  • „Modus ponens“: Die Implikation enthält die Wahrheit.
  • „Modus tollens“: Verlangt, dass α→β und ¬β wahr sind; dann ist auch ¬a wahr.
  • Konjunktion: Wenn α und β wahr, dann ist auch α ˄ β wahr.
  • Die „Ausdehnung“ sagt, dass man zu jeder wahren Prämisse α jede beliebige Formel β hinzunehmen darf, um mit α ˅ β eine wahre Aussage zu bekommen.

Beispiel: Formel (α→β) ˄ (β→γ) → (α→γ) soll bewiesen werden: Zuerst wird die eine Implikation weggebracht: (α→β) ˄ (β→γ) ˄ α→γ :

  1. Prämisse:    α→β
  2. Prämisse:    β→γ
  3. Prämisse:    α
  4. 1,3 imp:       β                   
  5. 2,4 imp:       γ

5.4. Prädikatenlogik

Prädikate sind Eigenschaften von Objekten eines Universums. Man benötigt ein Vokabular, um Aussagen und Sätze zu formulieren.

Syntax (Schreibweise): Es gibt Terme t1, ..,tn, die aus Variablen V, Konstanten K und Funktionssymbolen F bestehen und in der Form f(t1, t2, .., tn) aufgebaut sind. P(t1, t2, ..,tn) heißt n-stelliges Prädikat. Prädikate werden durch Junktoren ¬, ˄, ˅, → und ↔ und Quantoren „Allquantor“ und „Existenzquantor“ zu prädikatenlogischen Formeln verknüpft.

Beispiele: x (P(x) ˄ Q(x)) ˄ y(S(y) ˄ zR(x,z)) oder x(x = f(x) ˅ ¬P(x,x)) mit Termen x und f(x).

Das Vorkommen einer Variable x heißt frei, wenn es nicht im Wirkungsbereich des Quantors liegt. Das Vorkommen von x heißt gebunden, wenn es im Wirkungsbereich des Quantors liegt.

Beispiel: x(P(x)˅Q(x))˄y(S(y)˄zR (x, z)); wirkt auf x, P und Q, auf y, auf z; x in R(x, z) ist frei.

Solange ein Variablenname x sowohl frei als auch gebunden vorkommt, wähle man einen neuen Variablennamen z und ersetze alle freien x durch z (Konsistente Umbenennung!).

Semantik (Bedeutung): Eine Signatur besteht aus einem Tripel Σ = (K, F, R), wobei K die Menge der Konstantesymbolen, F die Menge der Funktionssymbole und R die Menge der Prädikatensymbole ist. Wenn α eine Formel ist, ist Σ(α) eine induzierte Signatur. Auf dieser Basis kann man für eine Formel α den Wahrheitsgehalt bestimmen.

Beispiel: α = xyP(x, y) ˄ xy(x =y →P(x, f(y))) ˄ ØP(α, α) Wie bestimmt sich der Wahrheits­wert?

Mit U = {3,4}, J(P) = P = {(3, 4), (4, 3)} , J(a) = a=3 und J(f) = f mit f(3) =4 und f(4) = 3 ergibt sich

xyP(3, 4) ˄ xy(x =y →P(3, f(4))) ˄ ØP(3, 3); die erste Teilformel J(y,yu)P(3,y) = 1 und J(y,yu)P(4,y) ergeben 1, die zweite Teilformel J(xy(x =y →P(x, f(y))) = 1 und J(ØP(3, 3)) = 1. α ist „wahr“.

Die Äquivalenzregeln der Prädikatenlogik sind:

  1. ¬(xα) ≈   x(¬α) und ¬(xα) ≈ x(¬α)  Quantorenwechsel
  2. xyα≈ yxa  und xyα ≈ yxα Quantorentausch
  3. xα ˅ xβ ≈ x(α ˅ β)  und ……………Quantorenzusammenfassung
  4. Ist x keine freie Variable in α, so gilt xα ≈ α und xα ≈α Qantorelimination
  5. Ist x keine freie Variable in β, so gilt
  6. ¬(P(x) → yQ(y))˅R (z) xα ˄ β ≈ x(α˄β) und xα ˅ β ≈ x(α ˅ β) oder
  7. xα ˄ β ≈  x(α˄β) und  xα ˅ β ≈ x(α ˅ β)  Quantifizierung

Dazu kommt noch die konsistente Umbenennung.

Es gibt zwei Normalformen:

a) Die Negationsnormalform (auch hier steht jedes Negationszeichen direkt vor der Primformel)

Beispiel: ¬(P(x) → yQ(y)) ˅ R (z) umwandeln in eine Negationsnormalform

¬(P(x) → yQ(y)) ˅ R (z)        ≈ ¬(¬P(x) ˅ yQ(y)) ˅ R (z)  Ersetzen von →

                                               ≈ ¬¬P(x) ˅ ¬yQ(y) ˅ R (z) de Morgan

                                               ≈ P(x) ˅  ¬yQ(y) ˅ R (z) Doppelte Negation weg

                                               ≈ P(x) ˅ y¬Q(y) ˅ R(z)  Quantorentausch (= Negationsnormalform)

b) Pränexe Normalform: a ist in einer pränexen Normalform, wenn sie die Form Q1x1, .., Qnxnβ hat, wobei β keine Quantoren enthält. Die Quantorenfolge Q1x1,..Qnxn wird als Präfix und β als der Kern der Formel bezeichnet.

Beispiel: Man transformiere die Formel z((¬x(P(x, z) ˅ yQ(x, f(y))))˅ yP(g(z, y), z)) in eine pränexe Normalform, wobei der Kern eine konjunktive Normalform ist.

Konsistente Umbenennung: z((¬x(P(x, z) ˅ yQ(x, f(y))))˅ wP(g(z, w), z))

Es gilt: ≈ z((xØP(x, z) ˅ yQ(x, f(y)))) ˅ wP(g(z, w), z)) Quantorenwechsel

                        ≈ z((xØP(x, z) ˅ yQ(x, f(y)))) ˅ wP(g(z, w), z)) de Morgan

                        ≈ z(x((¬P(x, z) ˄ y¬Q(x, f(y))) ˅ wP(g(z, w), z)) 2 mal Quantorenwechsel

                        ≈z(x(y(w(¬P(x, z) ˄ ¬Q(x, f(y))) ˅ P(g(z, w), z)))) 3 mal Quantifizierung

                        ≈zxyw(¬P(x, z) ˄ ¬Q(x, f(y))) ˅ P(g(z, w), z)  Klammern (Kern fett!).

Typische Anwendungsbereiche der logikbasierten KI sind Mustererkennung (Fingerabdruck, Iriserkennung, Gesichtserkennung), Sprachverarbeitung (Language Parsing) oder eine semantische Analyse. Mit mathematischer Logik werden Expertensysteme betrieben (MYCIN war eines der ersten unterstützenden Diagnosewerkzeuge), es ist auch Grundlage von Verfahren zum maschinellen Lernen (siehe unten), es erlaubt regelbasiertes Schlussfolgern oder Modellieren und ist die Basis für logik- und funktionale Programmierung (z.B. mit PRLOG) und ist die Basis für Programme, die sich selbst abwandeln können.

Auch in der Wissensrepräsentation zur Darstellung von Fakten und Zusammenhängen werden logische Kalküle eingesetzt. (Hierarchische) Taxonomien werden über logische Darstellungen repräsentiert.

Beispiel Kontoverzinsung: Daten (2, %) wird in der Syntax als (2%) geschrieben, bedeutet im Kontext eine Verzinsung von 2% auf dem Konto und die Wissensrepräsentation ergibt bei € 100 nach einem Jahr 102 € am Konto.

6. Suchalgorithmen und Entscheidungsstrategien

Eine zweite Klasse von Verfahren der KI sind Suchtechniken, die dann auch zu Entscheidungsstrategien führen. Es gibt eine größere Anzahl von Möglichkeiten, etwa Netzwerke mit vielen Knoten und Übergängen. Nun geht es darum, den „optimalen“ Pfad durch das Netzwerk zu finden.

Einfache Suchalgorithmen vernachlässigen die spezielle Natur des jeweiligen Problems. Deshalb können sie allgemeiner und abstrakter implementiert werden, wodurch dieselbe Implementierung für eine große Auswahl von Problemen verwendet werden kann. Der Nachteil einfacher Suchalgorithmen sind die entstehenden Kosten: Der Suchraum von Suchproblemen ist im Allgemeinen sehr groß, einfaches Suchen läuft jedoch nur in kleinen Suchräumen in annehmbarer Zeit ab.

Suche in Listen

Algorithmen zur Suche in Listen sind die einfachsten Suchalgorithmen überhaupt. Das Ziel der Suche in Listen ist es, ein bestimmtes Element einer Liste zu finden, von dem der zugehörige Suchschlüssel bekannt ist. Da dieses Problem in der Informatik oft anzutreffen ist, sind die verwendeten Algorithmen – sowie deren Komplexität– sehr gut untersucht.

Abbildung: Suche in einer Skip-Liste

Der einfachste Suchalgorithmus für Listen ist die lineare Suche. Bei ihr wird solange ein Element nach dem anderen durchlaufen, bis ein Element mit dem gesuchten Schlüssel angetroffen wird. Die lineare Suche hat eine Laufzeit von O(n) (n ist die Anzahl der Elemente der Liste) und kann sowohl auf sortierte als auch unsortierte Listen angewendet werden. Ein fortgeschrittenes Verfahren ist die binäre Suche mit einer Laufzeit von O (log n). Für große Listen ist sie viel effizienter als die lineare Suche, setzt jedoch voraus, dass die Liste vorher sortiert wurde und ein wahlfreier Zugriff auf die Elemente möglich ist. Die Interpolationssuche, auch Intervallsuche genannt, ist eine Verbesserung der binären Suche, die eine Gleichverteilung der Daten voraussetzt. Die Laufzeit (log(log n)) ist nur für sehr große Datenmengen besser als die der binären Suche. Ein weiterer Suchalgorithmus für Listen ist der Grover-Algorithmus, der auf Quantencomputern zum Einsatz kommt und quadratisch schneller als die klassische lineare Suche für unsortierte Listen abläuft. Für die Suche in Listen kann auch Hashing (ist eine Abbildung, die eine große Eingabemenge auf eine kleine Zielmenge abbildet) verwendet werden, das im Durchschnitt eine konstante Zeit O (1), im schlechtesten Fall jedoch lineare Zeit benötigt.

Suche in Bäumen

Abbildung: Ein binärer Suchbaum der Größe neun und der Tiefe drei

Die Suche in Bäumen ist die Königsdisziplin unter den Suchalgorithmen. Sie durchsucht Knoten von Bäumen, unabhängig davon, ob der Baum explizit oder implizit (während der Suche generiert) ist. Dabei wird folgendes Prinzip angewendet: Ein Knoten wird aus einer Datenstruktur entnommen. Seine Kindknoten werden untersucht und gegebenenfalls der Datenstruktur hinzugefügt. Je nach Auswahl der Datenstruktur kann der Baum in verschiedenen Reihenfolgen durchsucht werden. Die Verwendung einer Warteschlange führt so zu einer Breitensuche, bei der der Baum Ebene für Ebene durchlaufen wird. Bei Verwendung eines Stacks hingegen wird jeweils bis zu einem Blatt gesucht und erst anschließend mit dem nächsten Kindknoten fortgefahren. Dies wird als Tiefensuche bezeichnet.

Suche in Graphen

Viele Probleme der Graphentheorie können mit Hilfe von Suchalgorithmen gelöst werden. Beispiele für diese Probleme sind das Problem des Handlungsreisenden, die Berechnung kürzester Pfade und die Konstruktion eines minimalen Spannbaums. Die entsprechenden Algorithmen sind zum Beispiel Kruskals Algorithmus, Dijkstras Algorithmus oder Prims Algorithmus, die als Erweiterungen der Algorithmen für die Suche in Bäumen gesehen werden können.

Suchalgorithmen können auf Spielsituationen angewandt werden: 4 Damen-Problem: Die Schachdamen bedrohen sich wenn sie auf horizontaler, vertikaler oder diagonaler Linie stehen. Nun soll keine Dame die andere bedrohen. Zwei mögliche Lösungen:

Ein möglicher Ablauf der Suche wäre:

  • Dame A1
  • Dame A2; Bedrohung
  • Dame A2 nach B2; Bedrohung
  • Dame B2 nach C2
  • Dame A3; Bedrohung
  • Dame A3 nach B3; Bedrohung
  • Dame A3 auf Reihe 3, Dame C2 auf D2…  usw.

Nun können etliche Algorithmen helfen, einen Suchprozess in einer Liste oder auf einem Graphen (siehe oben) voranzutreiben:

Algorithmus zur Tiefensuche

Datenstrukturen: L ist eine Liste von Knoten

Eingabe: Füge die initialen Knoten in die Liste L ein

Algorithmus:

  1. Wenn L leer ist, dann breche ab
  2. Wähle ersten Knoten K aus Liste L, R ist die Restliste
  3. Wenn K ein Zielknoten ist, dann gebe aus: Zielknoten und Weg dorthin (Weg im Graphen)
  4. Wenn K kein Zielknoten ist, dann sei N (K) die (geordnete) liste der direkten Nachfolger von K, mit dem Weg dorthin markiert

L = N (K) ++ R (wobei ++ Listen zusammenhängt!)

Mache weiter mit 1.

Algorithmus zur Breitensuche

Datenstrukturen: L ist eine Menge von Knoten, markiert mit dem dorthin führenden Weg

Eingabe: Füge den initialen Knoten in die Menge L ein

Algorithmus:

  1. Wenn L leer, dann breche ab
  2. Wenn L einen Zielknoten K enthält, dann gebe aus: K und Weg dorthin
  3. Sonst sei N (L) die Menge aller direkten Nachfolger der Knoten von L, mit dem Weg dorthin

Mache weiter mit Schritt 1 und L = N(L).

Rückwärtssuche

Man geht von einem bekannten Zielknoten aus und versucht, den Anfangsknoten zu erreichen

Voraussetzung ist die explizite Angabe des Zielknotens und man kann von jedem Knoten die direkten Vorgänger berechnen

Eine Rückwärtssuche ist besser wie eine Vorwärtssuche, wenn die Verzweigungsrate in Rückwärtsrichtung kleiner ist als die Verzweigungsrate in Vorwärtsrichtung.

Man kann auch die normale Suche in die Rückwärtssuche kombinieren.

Evolutionäre (genetische) Algorithmen

Genetische bzw. evolutionäre Algorithmen orientieren sich an der Evolution von Lebewesen. Daher gibt es eine

  • Anfangspopulation d.h. eine Menge von Individuen (Zustände, Objekte), die üblicherweise als Bitstring dargestellt werden. Ein Bit oder einen Teilfolge von Bits entspricht dabei einem Gen.
  • eine Bewertungsfunktion, die Fitnessfunktion genannt wird.

Gesucht ist ein optimaler Zustand.
Daher werden Zustände als Bitfolgen kodiert
Die Bewertung entspricht der Fitness der Bitfolge
Höhere Fitness bedeutet mehr Nachkommen
Man beobachtet die Entwicklung einer Menge von Bitfolgen (Population)
Nachkommen werden durch zufällige Prozesse unter Verwendung von Operationen analog zur Mutation und Crossover (Rekombination) erzeugt
An Operatoren wird verwendet: Selektion, Rekombination (Austausch), Mutation (1 -> 0, 0 -> 1), Aussterben, Ende der Evolution   

Algorithmus genetische Suche

Eingabe: Anfangspopulation, Fitnessfunktion Ω, Populationsgröße K

Datenstrukturen: S,S‘: Mengen von Individuen

Algorithmus:

S = Anfangspopulation;

while (K enthält ein Individuum mit maximalem Ω) do:

     S‘ = 0

     for i = 1 to K do

            wähle zufällig (mit Ω gewichtet) zwei Individuen A und B aus S;

            Erzeuge Nachkommen C aus A und B durch Rekombination;

            C‘ = Mutation von C;

             S‘ = S‘ ˅ {C‘};

      end for

       S = S‘

end while

gebe Individuum mit maximaler Fitness aus

Beispiel: n-Damen mit evolutionärem Algorithmus

Individuen: Folge von n Zahlen, wobei die i-te Zahl die Position (Spalte) der Dame in der Zeile i angibt. Fitness: Anzahl der Damenpaare, die sich nicht gegenseitig bedrohen, also (n über 2) = n*(n-1)/2 Operationen: Mutation ändert den Eintrag in der Folge auf beliebigen Wert zwischen 1 und n. Da man aber schon weiß, dass die Zustände mit doppelten zahlen in der Folge nicht gültig sind, lässt man nur Permutationen von 1 bis n als Individuen zu.

Fitness: Anzahl der Damenpaare, die sich nicht gegenseitig bedrohen, also (n über 2) = n*(n-1)/2

Operationen: Mutation ändert den Eintrag in der Folge auf beliebigen Wert zwischen 1 und n. Da man aber schon weiß, dass die Zustände mit doppelten zahlen in der Folge nicht gültig sind, lässt man nur Permutationen von 1 bis n als Individuen zu.

4 Damen am Spielfeld:

Population {3,2,1,4}
Bewertung: Ω(3,2,1,4) = 2
Mutation: [3,2,1,4] -> [4,2,1,3] [1,2,3,4]
Bewertung: Ω(4,2,1,3) = 3; Ω(1,2,3,4) = 0
Mutation: [4,2,1,3] -> [2,4,1,3] ………  
Bewertung: Ω (2,4,1,3) = 4  ….
Kodierung [2,4,1,3] ist eine Lösung!

Typische Anwendungsbereiche für Suchstrategien sind eben „Strategiespiele“ wie Schach oder Go, oder Verfahren in Computernetzwerken, um einen Pfad, der minimale Ressourcen verbraucht, zu finden.

Nun erfolgt der Schritt von den Suchverfahren zu heuristischen Bewertungsfunktionen für eine KI-Aufgabe: z.B. Schach: Ein Schachmeister wird befragt und es werden Bewertungsfunktionen aufgesetzt:

B(s) = a1*Material + a2*Bauernstruktur+ a3*Königssicherheit + a4*Springer_im_Zentrum + a5*Läufer_Diagonalabdeckung + ….(Material meint die Expertise von „gelungenen Zügen“). Die Gewichtungen ai werden mit Experten abgesprochen! Die optimale Bewertungsfunktion muss gefunden werden – durch regelmäßiges Üben.

Die Experten werden nur nach relevanten Eigenschaften f1(s),…fn(s) gefragt und die Bewertungsfunktion wird zu      B( f1(s),…fn(s)). Mit einer zufälligen Belegung wird gestartet und im Lauf der Spiele wird die Bewertungsfunktion laufend verändert.

Das zentrale Problem dabei ist nicht die Bewertung einzelner Züge, sondern vom gesamten Spiel –  Lernen durch Verstärkung (siehe unten).

7. Maschinelles Lernen

Maschinelles Lernen ist ein Oberbegriff für die „künstliche“ Generierung von Wissen aus Erfahrung: Ein künstliches System lernt aus Beispielen und kann diese nach Beendigung der Lernphase verallgemeinern. Dazu bauen Algorithmen beim maschinellen Lernen ein statistisches Modell auf, das auf Trainingsdaten beruht und welches gegen die Testdaten getestet wird. Das heißt, es werden nicht einfach die Beispiele auswendig gelernt, sondern Muster und Gesetzmäßigkeiten in den Lerndaten erkannt. So kann das System auch unbekannte Daten beurteilen (Lerntransfer) oder aber am Lernen unbekannter Daten scheitern (Überanpassung; englisch overfitting). Aus dem weiten Spektrum möglicher Anwendungen seien hier genannt: automatisierte Diagnose­verfahren, Erkennung von Kreditkartenbetrug, Aktienmarkt­analysen, Klassifikation von Nukleotidsequenzen, Sprach- und Texterkennung sowie autonome Systeme.

Dabei wird auf den Begriff „Agent“ zurückgegriffen, der Information verarbeitet und aus einer Eingabe eine Ausgabe produziert. Ein Softwareagent berechnet aus einer Benutzereingabe ein Ergebnis. Agenten brauchen immer eine genaue Anleitung, ein Programm, um diese Ausgaben zu erzeugen. Ein Agent wäre dann „intelligent“, wenn er sich das Programm durch „Metaanweisungen“ (auf höhere Ebene) selber schaffen könnte.  Da aber die direkte Programmierung eines intelligenten Agenten nicht möglich ist, muss man das Fernziel versuchen, anders zu erreichen: Durch einen Lernprozess, also maschinelles Lernen.

Beim maschinellen Lernen spielen Art und Mächtigkeit der Wissensrepräsentation eine wichtige Rolle. Man unterscheidet zwischen symbolischen Ansätzen, in denen das Wissen – sowohl die Beispiele als auch die induzierten Regeln – explizit repräsentiert ist, und nicht-symbolischen Ansätzen, wie neuronalen Netzen, denen zwar ein berechenbares Verhalten „antrainiert“ wird, die jedoch keinen Einblick in die erlernten Lösungswege erlauben; hier ist Wissen implizit repräsentiert.

Ein Untergebiet von maschinellem Lernen sind neuronale Netze (siehe nächstes Kapitel). Diese Lernalgo­rithmen sind von Nervenzellenver­bindungen im menschlichen Gehirn inspiriert. Das Gehirn verarbeitet In­formationen über Neuronen und Synapsen. Analog dazu bestehen künstliche neuronale Netze aus mehreren Reihen von Datenknoten, die mit gewichteten Verbindungen unter­einander vernetzt sind.  

Typische Anwendungen:

  • Erweiterung und Anpassung des Lexikons eines linguistischen Systems durch automatische Verarbeitung von geschriebenen Sätzen, wobei der Inhalt der Sätze gleichzeitig automatisch erfasst wird
  • Adaptierung von gewichten eines Bewertungsverfahrens in einem Zweipersonenspiel, wobei man abhängig von gewinn/Verlust gewichte verändert.
  • Lernen einer Klassifikation durch Vorgabe von Trainingsbeispielen, die als positiv/negativ klassifiziert werden

Maschinelles Lernen kann automatisiert Wissen generieren, Algorithmen trainieren, Zusammenhänge identifizieren und unbekannte Muster erkennen. Diese identifizierten Muster und Zusammenhänge lassen sich auf einem neuen, unbekannten Datensatz anwenden, um so Vorhersagen zu treffen und Prozesse zu optimieren.

Machine Learning nutzt Daten, um Muster und Zusammenhänge in Daten zu identifizieren (Modelltraining). Anhand der erlernten Muster lässt sich eine Vorhersage für die Zukunft erstellen. Anders als bei der traditionellen Softwareentwicklung, liegt bei Machine Learning der Schwerpunkt auf dem selbstständigen Lernen aus Daten. Das bedeutet, dass der Algorithmus aus den Daten lernt und seinen Programmcode allein erstellt.

Maschinelles Lernen kann folgende Aufgaben erledigen;

  • Vorhersage von Werten auf Basis der analysierten Daten treffen (bspw. Stromverbrauch oder Umsatzforecast),
  • Berechnung von Wahrscheinlichkeiten für bestimmte Ereignisse (bpsw. Kaufwahrscheinlichkeit oder Kündigungswahrscheinlichkeit),
  • Erkennen von Gruppen und Clustern in einem Datensatz,
  • Erkennen von Zusammenhängen in Sequenzen,
  • Reduktion von Dimensionen ohne großen Informationsverlust
  • Optimierung von Geschäftsprozessen.

Damit maschinelles Lernen funktioniert und die Software die Entscheidung treffen kann, muss ein Mensch den Algorithmus trainieren. Durch das Bereitstellen von Trainings- und Beispieldaten, kann der Algorithmus Muster und Zusammenhänge erkennen und somit aus den Daten lernen. Diesen Prozess nennt man auch Modelltraining. Maschinelles Lernen wird häufig mit den Begriffen Data Mining und predictive Analytics in Verbindung gebracht. Letztlich nutzen Data Mining und predictive Analytics die Verfahren des maschinellen Lernens. Damit Machine Learning funktioniert und ein Muster lernen kann, muss es von einem Menschen trainiert werden. Dieser Lernprozess beginnt mit einem vorbereiteten Datensatz (Trainingsdatensatz).

Einordnung der Lernverfahren

Die Struktur eines lernenden Systems lässt sich wie folgt beschreiben:

  • Agent: Diese ausführende Einheit soll mit Erfahrungen verbessert werden; d.h. etwas lernen
  • Lerneinheit: Hier wird der Lernvorgang gesteuert und bewertet. Insbesondere wird vorgegeben, was gut und schlecht ist.
  • Umwelt: In der Umwelt soll agiert werden. Die Rückmeldung über den Ausgang bzw. den Effekt von Aktionen kommt aus dieser Umwelt. Das kann eine reale oder künstliche Umwelt sein.

Lernmethoden

Maschinelles Lernen besteht aus verschiedenen Arten von maschinellen Lernmodellen, die verschiedene algorithmische Techniken verwenden. Abhängig von der Art der Daten und dem gewünschten Ergebnis kann eines von vier Lernmodellen genutzt werden: überwacht, unüberwacht, teilüberwacht oder bestärkend. Innerhalb jedes dieser Modelle können eine oder mehrere algorithmische Techniken angewendet werden – je nach den genutzten Datensätzen und den beabsichtigten Ergebnissen. Algorithmen des maschinellen Lernens sind grundsätzlich dafür ausgelegt, Dinge zu klassifizieren, Muster zu finden, Ergebnisse vorherzusagen und fundierte Entscheidungen zu treffen. Die Algorithmen können einzeln oder kombiniert eingesetzt werden, um bei komplexen und unvorhersehbaren Daten die bestmögliche Genauigkeit zu erzielen.

Überwacht: Der Algorithmus lernt eine Funktion aus gegebenen Paaren von Ein- und Ausgaben. Dabei stellt während des Lernens ein „Lehrer“ den korrekten Funktionswert zu einer Eingabe bereit. Ziel beim überwachten Lernen ist, dass dem Netz nach mehreren Rechengängen mit unterschiedlichen Ein- und Ausgaben die Fähigkeit antrainiert wird, Assoziationen herzustellen. Ein Teilgebiet des überwachten Lernens ist die automatische Klassifizierung. Ein Anwendungsbeispiel wäre die Handschrifterkennung. Lernen kann auch ständig (Inkrementell) oder in einer Trainingsphase, die irgendwann beendet ist, erfolgen.

Teilüberwachtes Lernen: Nur für einen Teil der Eingaben sind die dazugehörigen Ausgaben bekannt

Unüberwacht: Der Algorithmus erzeugt für eine gegebene Menge von Eingaben ein statistisches Modell, das die Eingaben beschreibt und erkannte Kategorien und Zusammenhänge enthält und somit Vorhersagen ermöglicht. Dabei gibt es Clustering-Verfahren, die die Daten in mehrere Kategorien einteilen, die sich durch charakteristische Muster voneinander unterscheiden. Das Netz erstellt somit selbständig Klassifikatoren, nach denen es die Eingabemuster einteilt. Ein wichtiger Algorithmus in diesem Zusammenhang ist der EM-Algorithmus, der iterativ die Parameter eines Modells so festlegt, dass es die gesehenen Daten optimal erklärt. Er legt dabei das Vorhandensein nicht beobachtbarer Kategorien zugrunde und schätzt abwechselnd die Zugehörigkeit der Daten zu einer der Kategorien und die Parameter, die die Kategorien ausmachen.

Des Weiteren unterscheidet man zwischen Batch-Lernen, bei dem alle Eingabe/Ausgabe-Paare gleichzeitig vorhanden sind, und kontinuierlichem (sequentiellem) Lernen, bei dem sich die Struktur des Netzes zeitlich versetzt entwickelt.

Bestärkendes Lernen: Das bestärkende Lernen ist ein Bereich des maschinellen Lernens, der sich mit der Frage beschäftigt, wie Agenten in einer Umgebung agieren sollten, um einen bestimmten Wert der kumulierten Belohnung zu maximieren. Aufgrund seiner Allgemeingültigkeit wird dieses Gebiet auch in vielen anderen Disziplinen untersucht, z. B. in der Spieltheorie, der Kontrolltheorie, der „Operations Research“, der Informationstheorie, der simulationsbasierten Optimierung, den Multiagentensystemen, der Schwarmintelligenz, der Statistik und den genetischen Algorithmen. Viele Algorithmen des Verstärkungslernens verwenden Techniken der dynamischen Programmierung. Verstärkungs­lernalgorithmen werden in autonomen Fahrzeugen oder beim Lernen eines Spiels gegen einen menschlichen Gegner eingesetzt.

Die folgenden Machine Learning Algorithmen können für viele Problemstellen genutzt werden:

  • Lineare Regression
  • Entscheidungsbaum
  • Clustering Algorithmen
  • Self Organizing Maps
  • Hierarchisches Clustering
  • Random Forest
  • künstliche neuronale Netze
  • Feed forward neural networks
  • Recurrent Neural Networks (RNN)
  • viele weitere.

Für die Bewertung von Lernverfahren kann man Maßzahlen entwickeln:

  • Klassifikation von „Vogel“ anhand bekannter Attribute wie „kann-fliegen“, „hat-Federn“ usw.
  • Vorhersage, dass ein Auto noch ein Jahr keinen defekt hat aufgrund der Parameter wie Alter, gefahrene Kilometer, Marke, Kosten der letzten Reparatur usw.
  • Medizinischer Test auf HIV: Antikörper
  • Vorhersage der Interessen bzw. Kaufentscheidung eines Kunden aufgrund der bisherigen Käufe und anderer Informationen (online-Buchhandel).
  • Kreditwürdigkeit eines Kunden einer Bank, aufgrund des Einkommens, Alters, der Eigentumsverhältnisse usw. 

Ein Klassifikator mit ja/nein – Antworten klassifiziert Objekte mit Attributen, um ein zukünftiges Ereignis vorherzusagen. Es gibt

  • Eine Menge von Objekten (mit innerer Struktur)
  • Ein Programm P : M -> {0,1}, das Objekte klassifiziert
  • Die wahre Klassifikation K : M -> {0,1}

Es gilt: Im Fall P(x) = K(x) liegt das Programm richtig mit

                          richtig – positiv, wenn P(x)  =1 und K(x) = 1

                          richtig – negativ, wenn P(x) = 0 und K(x) = 0

            Im Fall P(x) <> P(x) liegt das Programm falsch mit

                          falsch – positiv, wenn P(x) = 1 und K(x) = 0

                          falsch – negativ, wenn P(x) = 0 und K(x) =1

Nun kann man Wahrscheinlichkeiten ermitteln, mit denen P eine richtig-positive u.a. Klassifikation macht.

Recall (Richtig-positiv-Rate, hit rate):  |{x ϵ M | P(x) =1 ˄ K(x) =1}| / |{x ϵ M | K(x) =1}| ist der Anteil der richtig klassifizierten Objekte bezogen auf alle tatsächlich richtigen!

Richtig-Negativ-Rate (correct rejection rate): |{x ϵ M | P(x) =0 ˄ K(x) =0}| / |{x ϵ M | K(x) =0}| ist der Anteil der als falsch erkannten Objekte bezogen auf alle tatsächlich falschen!

Precision (positive predictive value): |{x ϵ M | P(x) =1 ˄ K(x) =1}| / |{x ϵ M | P(x) =1}| ist der Anteil der richtigen Objekte unter den als scheinbar richtigen erkannten.

Negative Vorhersage Rate (negative predictive value): |{x ϵ M | P(x) =0 ˄ K(x) =0}| / |{x ϵ M | P(x) =0}| ist der Anteil der richtigen Objekte als falsch klassifizierten unter allen falsch klassifizierten!

Beispiel Gelbfieber: Körpertemperatur > 38,5°, dann Gelbfieber-> Recall =1, Precision = 0,0001; ist keine gute Diagnose. Man muss beide Größen (Recall und Precision) ermitteln, um den Test genauer zu machen!

Nun führen wir den Begriff der Entropie ein: pi ist eine diskrete Wahrscheinlichkeitsverteilung (i =1,…,n).

Dann gilt I (ak) = log2 (1/pk) = – log2 (pk) => 0, wobei I der Informationsgehalt des Zeichens ak ist            (Symbol ak ist wie Ziehen einer Zahl aus einer Urne).

Die Entropie ist dabei der mittlere Informationsgehalt der Symbole in der Wahrscheinlichkeitsverteilung:

I(X) = ∑pi * log2 (1/pi) =  – ∑pi*log2(pi) => 0 ; dabei ist X die Zufallsvariable und pi die Wahrscheinlichkeitsverteilung.

Beispiel: Nimmt man ein Bernoulli-Experiment (Kopf, Zahl), wobei Kopf p und Zahl 1-p hat, dann ergibt sich eine Parabel:

Die auf er y-Achse aufgetragene Entropie hat Werte zwischen 0 und 1, die x- Werte sind p mit 0 bis 1. d.h. die Entropie als mittlerer Informationsgehalt eines Münzwurfes ist maximal, wen man das Zeichen nicht vorhersagen kann (p =0.5)! Bei p =0.9 kann man vorhersagen, dass Kopf häufig auftritt. Bei p = 0.1 tritt Zahl häufig auf. Died Entropie wäre in diesen Fällen 0,46!

Lernen mit Entscheidungsbäumen

Auch Bäume können ein Klassifikator-programm repräsentieren. Es sollen Algorithmen gefunden werden, die einen guten Entscheidungsbaum erstellen. Güte meint hier, dass der baum möglichst flach ist.

Beginn. Es gibt eine Menge von Attributen a ϵ A mit möglichen Werten Wa. Ein Objekt ist dann A-> Wa. Ein Konzept K ist repräsentiert durch ein Prädikat Pk z.B. Pk (0) = True. 

Beispiel: Bücher mit den Attributen (Autor, Titel, Seitenzahl, Preis, Erscheinungsjahr) mit beispielweise Preis >= 10 € oder Seitenzahl => 500 Seiten

Dann ist ein Entscheidungsbaum ein Konzept K als endlicher Baum, der an inneren Knoten zum Wert eines Attributs folgende Abfragen machen kann: Für einen Wert v mit a <=v oder a > v gibt es einen Teilbaum für „Ja“ und einen für „Nein“. Bei diskreten Attributen wird der exakte Wert abgefragt. Die Blätter des Baumes sind mit „Ja“ oder „Nein“ markiert -> ein Entscheidungsbaum B k ist die Darstellung eines Algorithmus zum Erkennen, ob ein vorgelegtes Objekt zum Konzept K gehört. 

Wenn es nur diskrete Attribute gibt, dann entsprechen die Konzepte genau den Entscheidungsbäumen: Zu jedem Konzept kann man offenbar eine (aussagelogische) Formel in der disjunktiven Normalform angeben:

a1 = v1 ˄…an = vn als Konjunktion, wenn die Tupel (v1, …, vn) im Konzept enthalten sind. Diese kann man dann in einen Entscheidungsbaum überführen.  

Bei reellwertigen Attributen ist dies nicht ganz einfach!

Beispiel: Als praktische Anwendung kann man reale Konzepte mit einer Menge von Attributen beschrieben werden. Für Tiere beispielsweise gilt:

GrößeReell
GewichtReell
Kann fliegenboolesch
Nahrungpflanzlich/tierisch
KörpertemperaturReell

Die Menge der Insekten könnte in einem Ereignisbaum mit den obigen Attributen klassifiziert werden. 

Beispiel: Nun klassifizieren wir Äpfel

                                süß                                       sauer

Es gibt nun verschiedene Algorithmen, die die Aufgabe lösen, einen Entscheidungsbaum für ein Konzept zu lernen. Die Anzahl der Fragen soll gering sein!

Bäume können sehr umfangreich werden. Dann kann man einen Baumschnitt durchführen: Wenn eine gewisse Baumtiefe erreicht ist, wird der Teilbaum durch ein Blatt ersetzt und das Blatt hat das Ergebnis des Teilbaums.

Entscheidungsbäume können trotz Fehlwerten funktionieren: Der Algorithmus kann Ersatzattribute vorsehen. Mit neuen Daten können dann die Ersatzattribute einbezogen werden.

Lernverfahren können nun mit unterschiedlichen Attributen und auch mit der Nutzung von Entropieverfahren (Informationsgehalt) weiter entwickelt werden. Dabei können durchaus komplexe Testverfahren eingesetzt werden: Modelle für maschinelles Lernen können bezüglich des Algorithmus und seines Outputs so komplex sind, dass sie vom Menschen weder erklärt noch verstanden werden können. Dies wird als „Blackbox“-Modell bezeichnet. Es stellt für Unternehmen ein Risiko dar, wenn sie nicht feststellen können, wie und warum ein Algorithmus zu einem bestimmten Ergebnis oder einer bestimmten Schlussfolgerung oder Entscheidung gelangt ist.

Beispiel z.B. Aus „Learning Analytics“: Analyse von saisonalen Effekten bei Lernplattformen. Wie ist die Nutzung vor, in und nach der Prüfungswoche (Log-File Analyse). Die Teilnehmerstatistik der Nutzung wird ausgewertet. Dabei ist die Teilnahmefrequenz vor und in der Prüfungswoche vier bis zehn-mal so hoch wie vorher (und nachher). Was sagt das über das (nicht kontinuierliche) Lernverhalten?

8. Neuronale Netze und Deep Learning

Deep Learning ist ein Teilbereich von Maschine Learning. Er beschreibt einen vom menschlichen Gehirn inspirierten Aufbau des Programms aus künstlichen neuronalen Verbindungen, das neuronale Netzwerk. Während klassisches Maschine Learning auf feste Modellgruppen zur Erkennung und Klassifizierung zurück-greift, entwickelt Deep Learning Algorithmen eigenständig weiter oder erstellen eigenständig neue Modell-ebenen innerhalb neuronaler Netzwerke. Grundlagen zu den neuronalen Netzen und Stärken der Kombination von KI-Ansätzen (Unterschied siehe Graphik).

Ein Ausgangpunkt: Man finde einen Satz von möglich wenigen Merkmalen, der als Eingabe für einen Lernalgorithmus verwendet werden kann.

Fluch der Dimension: 10 Mio. Pixel mit 3 Byte pro Bildpunkt für ein Bild sind notwendig!

Möglicher Ausweg: Reduktion der Dimension des Vektorraums in Richtung der höchsten Varianz, um dann die daten mittels linearer Abbildung auf die Hauptkomponenten zu projizieren. Und da entstand eben seit 1995 „Deep Learning“.

Dabei wird das neuronale Netz trainiert, indem ihm immer wieder Daten vorgelegt werden. Durch diese Wiederholung lernt das neuronale Netz die Daten jedes Mal exakter einzuordnen. Dabei wird die Natur als Vorbild genommen: zweiteiliges mehrschichtiges Netzwerk, wobei die erste Schicht „vortrainiert“ wird und die zweite Schicht mit überwachtem Lernen arbeitet.

Wie funktioniert das neuronale Netzwerk?

Das funktioniert, indem die Gewichtung für die einzelnen Verbindungen zwischen den Neuronen-Schichten immer wieder angepasst werden. Das in den Lerndurchläufen erzeugte Modell kann dann auch auf Daten angewandt werden, die die Künstliche Intelligenz im Training noch nicht kennengelernt hat. Dabei hat die Architektur des Netzwerkes „versteckte“ Schichten, die nicht direkt an die Eingabe- oder Ausgabe-Schicht gekoppelt sind, werden sie »Deep Neural Networks« genannt. Deep Neural Networks können Hunderttausend oder Millionen Neuronen-Schichten aufweisen. Es entstehen sehr komplexe Architekturen, womit beim sogenannten »Deep Learning« immer komplexere Probleme gelöst werden können.

Die Verfahren zum Einsatz der vielen Schichten nennen sich „Convolutional Neural Networks“ (CNN), „Deep Belief Networks“ (CBN) und „Recurrent Neural Newtorks“ (RNN).

CNN nutzt beispielweise Prinzipien der linearen Algebra (Matrizenmultiplikation), um Muster in einem Bild zu erkennen. Dies wird mit graphischen Verarbeitungseinheiten zum Trainieren der Modelle bewerkstelligt. Die Eingabedaten sind Bilder, die nach verschiedenen Aspekten (Verzerrungen, Gewichtungen) ausgewertet werden. Auf diese Weise kann CNN zwischen Bildern unterscheiden und sie klassifizieren. Eine erste Version von CNN -LeNet (benannt nach dem Erfinder Yann LeCun) konnte handgeschriebene Ziffern erkennen (Lesen von Schecks und Postleitzahlen). Diese Konstruktion aus 1980 wurde 2012 wieder aufgegriffen und mit verbesserter Technologie konnten große Datensätze abgearbeitet werden.

Wie oben schon angeführt, wurden die Anzahl der Schichten („Layer“) erhöht. Dabei wurde eine „Faltungsschicht“ als erste Schicht eingeführt, die Informationen über die weiteren Schichten enthält. Dabei werden „Bilder“ in Pixel dargestellt. Die Faltungsschicht wandelt nun das gegebene Bild in numerische Werte um und ermöglicht es dem Netzwerk „räumliche Bilder“ zu „verstehen“. „Faltung“ ist mathematisch eine Operation, um zwei Datensätze zusammenzuführen.

Ein „Pooling“ von Schichten wird nun verwendet, um die Dimension des Bildes zu reduzieren. Das Ergebnisfeld enthält dann die Durchschnittswerte bei der Berechnung des Musters des Empfangsfeldes . Als zweite Methode wird das Pixel mit dem maximalen Wert ausgewählt und sendet es zum Ausgangsfeld. Dabei kommen „Filter“ zum Einsatz, die z.B. die Größe 3*3 haben und das Eingangsbild „überstreichen“. Für die einzelnen Ausschnitte werden Matrizenmultiplikationen durchgeführt.

Struktur eines typischen CNNs zur Bildklassifikation. Subsampling entspricht Pooling. Dieses Netz besitzt pro Convolutional Layer mehrere Filterkernel, sodass Schichten an Feature Maps entstehen, die jeweils die gleiche Eingabe bekommen, jedoch aufgrund unterschiedlicher Gewichtsmatrizen unterschiedliche Features extrahieren.

Praxisbeispiele:

  • Datensatz mit handgeschriebenen Zahlen (Ziffern von 0 bis 9), um alle Schreibweisen dieser Ziffern gut trennen zu können.
  • RNNs können mit historischen Daten trainiert werden und schaffen dann selbst „Kunstwerke“.
  • Gedichte aus der Literatur können gelernt und abgewandelt werden.

Literatur

  • Angerer Christoph (2018), Neuronale Netze – Revolution für die Wissenschaft? In: Spektrum der Wissenschaft 1.18, S 12 – 21
  • Dilger Werner (2004-06), Künstliche Intelligenz in der Schule, Vorlesungen an der Uni Chemnitz, Chemnitz
  • Forum Neue Medien in der Lehre (2019), Learning Analytics: Einsatz an österreichischen Hochschulen, Konzeptpapier
  • Gopnik Alison (2018), Computer lernen wie die Kinder in: Spektrum der Wissenschaft 4.18, S 74 – 79
  • Kwon Diana (2018), Robotik: Selbständig lernende Roboter In. Spektrum der Wissenschaft 7.18, S 66 – 72
  • Lenzen Manuela (2018), Künstliche Intelligenz – was sie kann & was uns erwartet, Beck-Verlag, München
  • Mödritscher Felix (2019), Neuronale Netze und Deep Learning, Seminarmanuskript, FH Technikum Wien
  • Nielsen Michael (2018), Künstliche Intelligenz – Alpha Go – Computer lernen Intuition in: Spektrum der Wissenschaft 1.18, S 22 – 27
  • Schmidt-Schauß Manfred und Sabel David (2012), Einführung in die Methoden der künstlichen Intelligenz, Vorlesung am Institut für Informatik, Goethe-Universität Frankfurt am Main
  • Stettes Oliver (2019), Keine Angst vor Robotern – eine Aktualisierung, IW-Report 17/2019, Köln
  • Luise Unger, Mathematische Grundlagen, Kurseinheit 7: Logik; Fernuni Hagen 2020 Mathematik-Fakultät
  • Universität München, Panel (2019), wie schlau kann KI werden? LM-Uni München
  • Wikipedia (2016), Turingtest, https://de.wikipedia.org/wiki/Turing-Test
Zur Werkzeugleiste springen