KI – Kaum Intelligent

KI – Kaum Intelligent

By Johannes Rabold, Gesina SchwalbeScienceNatural Sciences
Download on the App Store

KI – Kaum Intelligent episodes

  • Was ist maschinelles Lernen?
    • Gesina Schwalbe
      • Email
      • Website
      • GitHub
      • ORCiD
      • ResearchGate
      • Twitter
      • Linkedin
      • Johannes Rabold
        • Twitter
        • Website
        • Email
        • GitHub
        • ResearchGate
        • ORCiD

          Heute wollen wir uns mit der Frage „Was ist Maschinelles Lernen?“ auseinandersetzen. Wir werden die Grundprinzipien maschinellen Lernens erläutern und eine Auswahl wichtiger Ansätze und Algorithmen kennen lernen.
          Außerdem haben wir wichtige Fragen an euch (Stichwort Interaktivität) und bedanken uns bei vielen vielen Menschen.

          Hausmeisterei
          • Wir haben Fragen. Schickt uns gerne euer Feedback an die Kontakte, die ihr hier finden könnt: https://kaum-intelligent.de/kontakt/
            • Sind euch die Folgen zu lang / zu kurz?
            • Passt euch unser Stil? Eher mehr ausschweifen mit Anekdoten oder kurz und knackig?
          • Danke an Sönke fürs Feedback zu den Shownotes!!
          • Herzlichen Dank an den Sendegarten! Wir sind ein Setzling (https://www.sendegarten.de/)
          • Podcastwerbung:
            • Das Ach! (https://www.das-a.ch/)
            • Coastercast (https://www.coastercast.de/)
            • Echt Abgefakt (https://soundcloud.com/echt-abgefakt)
          • Danke an Franz, den besten Bro!
          Zusammenfassung: Ganz kurz für Beepo
          • Definition: ML ist Modellierung anhand von Beispielen. Mehr Beispiele führen zu einer Verbesserung des Verfahrens. Ein Modell generiert aus Eingaben passende Vorhersagen.
          • Abgrenzung: Maschinelles Lernen (ML) ist nicht gleich Deep Learning. Deep Learning ist ein Teilbereich von ML, sowie ML ein Teilbereich von KI ist. Data Mining ist wiederum die Extraktion von unbekanntem Wissen aus Daten.
          • Vor dem Training sollten wichtige Designentscheidungen geklärt werden.
          • Es gibt nicht das EINE Verfahren, sondern sehr viele verschiedene — insb. sind neuronale Netze nicht immer die beste Wahl
            (den Blogeintrag mit einer illustrativen Geschichte dazu findet Gesina leider nicht mehr)
          Ein paar Details
          • Definition Maschinelles Lernen
            • Aus Tom Mitchells Buch „Machine Learning“ (McGraw-Hill, 1997)
            • „Computerprogramme, die sich automatisch durch Erfahrung verbessern.“
            • Erfahrung ~ standardisierte Beispiele
            • Es werden Modelle gelernt, die dann für neue Beispiele Vorhersagen treffen können.
          • Grundprinzipien
            • Weiß ich vorher schon für jedes Beispiel, welche Ausgabe ich idealerweise haben möchte (supervised)? Gibt es Trainingsbeispiele, die noch keine Ausgabe zugewiesen haben (semi-supervised)? Habe ich gelabelte Sequenzen von Aktionen (Reinforcement Learning)? Möchte ich Muster in ungelabelten Daten erkennen (unsupervised)?
            • Labelling ist sehr zeitaufwändig
            • Induktion (= „Verallgemeinerung“ als Gegensatz zur Deduktion)
              • Deduktion: Wenn wir wissen, dass alle Menschen sterblich sind, und wissen, dass Sokrates ein Mensch ist, können wir ableiten, dass Sokrates sterblich ist. Deduktion ist, richtig angewendet, auch immer korrekt.
              • Induktion: Wenn wir beobachtet haben, dass Sokrates sterblich ist, und wir auch wissen, dass er ein Mensch ist, dann könnten wir daraus induzieren, dass alle Menschen sterblich sind. Induktion ist nicht immer korrekt. Sie wird aber immer korrekter, je mehr unterstützende Observationen wir machen.
            • Wir müssen zwischen Trainings- und Testdaten streng unterscheiden. Trainingsdaten habe ich zum Beispiel in gelabelter Form zur Verfügung. Diese Labels sind meist die einzige Grundlage auf der ich ein Modell lernen kann. Ein gelerntes Modell wird dann mit den separaten Testdaten überprüft. Wenn ein großer Prozentsatz an getätigten Vorhersagen des Modells mit den Labels der Testdaten übereinstimmt, performt das Modell gut (zumindest auf den ausgewählten Testdaten).
            • Overfitting tritt dann auf, wenn sich ein Modell zu sehr an die Trainingsdaten anpasst und nicht mehr über die Testdaten generalisieren kann. Dies tritt zum Beispiel auf, wenn sich Fehler in die Trainingsdaten eingeschlichen haben, welche vom Modell als absolute Wahrheit auswendig gelernt wurden. Diese Fehler spiegeln natürlich nicht die „reale Welt“ der Testdaten wider. Das Modell wird also mit hoher Wahrscheinlichkeit Fehler in der Praxis machen.
            • Induktiver Bias beschreibt die Gesamtheit aller Annahmen, die ich tätige um zu rechtfertigen, dass ich nicht einfach nur alle Trainingsdaten auswendig lernen sollte. Induktiver Bias ergibt sich direkt aus den Problemen, die das Overfitting mit sich bringt. Ich muss in der Lage sein, Kompromisse einzugehen, damit ich über meine Trainingsdaten hinweg generalisieren kann. Der Induktive Bias ergibt sich zum Beispiel aus der Wahl des Modelles oder des verwendeten Lernverfahrens.
          • Designentscheidungen vor dem eigentlichen Lernen
            • Art des Problems
              • Klassifizierung (z.B. Katze vs. Hund vs. Stirnlappenbasilisk)
              • Regression (z.B. Kosten für ein Wohnhaus; Vorhersage von Zahlen)
              • u.v.m.
            • Optimierungskriterien
              • Welche Größe möchte ich mit meinem Verfahren „verbessern“, z.B. Minimierung der Fehler die mein Modell auf den Testdaten machen
            • Art des Inputs
              • symbolisch
              • numerisch
              • sequenziell
              • etc.
            • Art des Outputs
              • Konzept (z.B. Katze vs. keine Katze)
              • Klasse (z.B. Katze vs. Hund vs. Stirnlappenbasilisk)
              • Zahl
              • etc.
            • Anzahl (und Qualität) der verfügbaren gelabelten Daten
              • Deep Learning mit kleiner Excel-Tabelle? Nein nein!
              • Sind Fehler in den Daten vorhanden/nicht auszuschließen?
            • Ist mir Trainings- oder Inferenz-Geschwindigkeit wichtiger?
              • Kann ich mir Zeit mit dem Training lassen, damit die Inferenz (Vorhersage für neue, ungesehene Daten) schneller geht (z.B. für selbst fahrende Autos)?
            • Wichtigkeit der Interpretierbarkeit
              • Neuronale Netze sind zwar sehr gut in den zugewiesenen Tasks, sind aber im gelernten Zustand unglaublich komplex und es ist schwer nachzuvollziehen, wie eine Entscheidung entstanden ist.
              • Besonders bei gesundheits- und geldkritischen Situationen sollte klar sein, ob das Modell auch so handelt, wie man es von erfahrenen Expertinnen und Experten erwarten würde.
            • Hardware- und Speicherkapazität
              • Neuere Verfahren wie neuronale Netze sind oftmals sehr hardware-hungrig. Dies kann zum Beispiel Auswirkungen auf den Energieverbrauch und somit auch auf die Umwelt haben.
              • Außerdem kann es negative Auswirkungen auf die demokratische Nutzung von Modellen haben, wenn sich nicht jede*r die Hardware oder den nötigen Speicher leisten kann.
              • Embedded devices sind hier auf dem Vormarsch.
          • Ausgewählte Lernverfahren & Modelle
            • Instanzbasierte Verfahren & Lazy Learning (z.B. k-Nearest Neighbors)
              • Es wird kein Modell gelernt.
              • Wenn ein neues Beispiel ankommt, wird die Ähnlichkeit dieses Beispiels zu bereits vorhandenen Beispielen bewertet und führt zu der neuen Vorhersage.
              • Man braucht hier entweder Punkte im mehrdimensionalen Raum oder Kernels, welche die Ähnlichkeit von beliebig gearteten Beispielen bewerten können.
              • Inferenz kann recht lange dauern! -> Indexierungsmethoden
            • Entscheidungsbauminduktion
              • Baumartige Struktur von Entscheidungsfragen
              • Start oben bei der Wurzel z.B. mit der Frage: „Hat Johannes einen Termin? Ja oder Nein?“
              • Wenn ja, dann Ast nach links, wenn nein, dann nach rechts
              • Auf der nächsten Ebene wieder neue Fragen
              • Irgendwann kommt man dann zum Ende, bei dem dann eine Entscheidung getroffen wird (z.B. „Geht Johannes in die Uni? Ja oder Nein?“).
              • Lernen funktioniert über Filterprozesse in den Trainingsdaten bis eine eindeutige Entscheidung getroffen werden kann.
            • Inductive Logic Programming (= symbolische KI)
              • Gelernte Modelle bestehen aus aussagekräftigen logischen Wenn-Dann-Regeln.
              • „X ist Großvater von Y, wenn es einen Elternteil Z von Y gibt und wenn X der Vater von Z ist.“
              • Lernen funktioniert zum Beispiel mittels gesteuerter Suche im Raum aller möglichen Regeln. Eine gute Regel trifft auf möglichst viele positive und auf möglichst wenig negative Beispiele zu.
              • Erste Erfolge von ILP wurden im Bereich der Mutagenizität erreicht.
              • Modelle sind meist sehr gut von Menschen interpretierbar.
              • Allerdings müssen Beispiele auch in symbolische Daten umgewandelt werden können (z.B. kann man mit ILP nicht direkt auf Bildern arbeiten).
            • Backpropagation
              • Voraussetzungen:
                • Ich habe ein Modell (z.B. ein neuronales Netz) mit Parametern, die angepasst bzw. gelernt werden sollen.
                • Für ein beliebiges Eingabebeispiel kann ich sagen, welcher Parameter (ein kleines Bisschen) in welche Richtung geändert werden muss, um die Ausgabe meines Modells in eine bestimmte Richtung (z.B. Hund -> Katze) zu ändern. Das heißt, man kann berechnen welcher Parameter in welcher Art und Weise zu der (potentiell noch falschen) Ausgabe des Modells beigetragen hat.
              • Für eine vorhandene Struktur eines Modells, z.B. eines neuronalen Netzes, kann ich nach und nach mit Beispielen die Parameter des Modelles so anpassen, dass das Modell irgendwann die korrekten Ausgaben der Testbeispiele ausgeben kann.
              • Die Parameter werden Schritt für Schritt in die „richtige“ Richtung verändert, bis für einen Großteil der Daten die korrekten Ausgaben erzeugt werden.
            • Genetische Optimierung
              • Angelehnt an die natürliche Evolution
              • Modelle werden auf ihre Performanz getestet und es werden die besten Modelle ausgewählt.
              • Diese werden dann nach evolutionären Operatoren mutiert, vereinigt etc., um wieder neue und bessere Modelle zu finden.
          1 hr 15 min
        • Was ist ein neuronales Netz?
          • Gesina Schwalbe
            • Email
            • Website
            • GitHub
            • ORCiD
            • ResearchGate
            • Twitter
            • Linkedin
            • Johannes Rabold
              • Twitter
              • Website
              • Email
              • GitHub
              • ResearchGate
              • ORCiD

                Heute soll es im Detail um die Frage gehen, was ein neuronales Netz eigentlich ist, wie es aussieht und warum sie so beliebt geworden sind, um komplexe Probleme damit zu modellieren. Außerdem sprechen wir ein paar Nachteile an und wo man anfangen kann, wenn man mal selber ein neuronales Netz basteln möchte. Vorwissen wird keines nötig.

                Hausmeisterei
                • Vielen Dank an:
                  • Oli, unseren Podcastpapi: Vielen Dank für die technische Unterstützung!
                    Schaut doch mal bei seinem Podcast Coastercast auf coastercast.de vorbei.
                  • Laura, Beepos Mami: Vielen Dank für die wunderschönen Illustrationen!
                  • Alle, die uns Feedback gegeben haben!
                • Gebt uns Feedback aller Art (Kontaktinfos findet ihr auf unserer Homeage)! Was hat euch gefallen? Was stört euch?
                Zusammenfassung: Ganz kurz für Beepo
                • Klassische neuronale Netze (NNs) haben wenig mit Gehirnen zu tun, sondern sind mathematische Funktionen die schon lange erforscht werden.
                • Wie bei allen Funktionen: Eine passende Modellierung des Problems als „Zahlen-rein-Zahlen-raus“ ist Voraussetzung, um das Problem mit einem NN lösen zu können.
                • NNs sind modular aufgebaut aus (vielen) kleinen, einfachen Funktionsbausteinen, den Neuronen, die miteinander verknüpft und häufig in Schichten angeordnet sind.
                • Neuronale Netze sind sehr flexibel (können viele Problem lösen), parallelisierbar und gut optimierbar und damit gut geeignet für maschinelles Lernen in komplexen Problemstellungen.
                • Natürlich haben NNs auch Nachteile: Aufgrund ihrere Größe sind ihre Entscheidungen oft schwer nachvollziehbar („black-box„) und NNs erlangen häufig nur Fähigkeiten der Mustererkennung aber kein echtes Verständnis von Randbedingungen eines Problems (z.B. physikalische Gesetzmäßigkeiten).
                Ein paar Details
                • Klassische künstliche neuronale Netze (NN) haben wenig mit Gehirnen zu tun außer die Modularität. Sie sind lediglich von natürlichen Neuronen inspiriert und wurden bereits in den 1950er von Frank Rosenblatt in Form des einfachen Perzeptrons vorgestellt.
                  (Das ist anders für sog. Spiking Neural Networks, die explizit echten biologischen Neuronen nachempfunden sind. Hier wird zusätzlich eine zeitliche Verzögerung beim „Feuern“ der Neuronen verwendet.)
                • Ein NN ist „nur“ eine sehr flexible Funktion, d.h. nimmt einen oder mehrere Zahlenwerte entgegen und gibt einen oder mehrere Zahlenwerte aus.
                • Anwendungen: Um ein NN anwenden zu können, muss man sein Problem so formulieren (mathematisch modellieren), dass man eine Funktion sucht, die Zahlen entgegennimmt und Zahlen zurückgibt. Z.B.
                  • Eingaben: Bilder (jedes Pixel ist ein oder mehrere Zahlenwerte), Tabellarische Daten (jeder Spalteneintrag ist eine Zahl), Text (jedes Wort erhält eine eindeutige Zahlenrepräsentation), Audioaufnahmen (vgl. MP3-Format)
                  • Ausgaben: z.B. bei Klassifizierung in N verschiedene Klassen wird für jede Klasse eine Zahl ausgegeben und für eine Eingabe „gedie mit dem höchsten Wert „gewinnt“ jeweils
                • Aufbau: Ähnlich wie ein Haus aus Legobausteinen ist ein NN modular aufgebaut aus einfachen kleinen Bausteinen, den Neuronen, und Verknüpfungen dazwischen.
                  • Ein Neuron ist auch eine Funktion, die Zahlenwerte entgegen nimmt und einen Zahlenwert zurückgibt. Dabei ist die Reihenfolge der Zahlenwerte bei der Eingabe zumeist egal, z.B. weil sie im Neuron zuerst aufsummiert werden. Ein Neuron ist meistens nicht-linear:
                    • Erst werden die Eingaben aufsummiert,
                    • dann wird eine Verschiebung (lernbarer Bias) addiert und
                    • zuletzt wird eine nicht-lineare Aktivierungsfunktion (z.B. Rectified Linear Unit oder Sigmoid)
                  • Eine Verknüpfung zwischen Neuronen leitet die Ausgabe eines Neurons als Eingabe an ein anderes Neuron weiter. Dabei wird die Ausgabe gewichtet, d.h. mit einem Faktor (dem Gewicht) multipliziert (Intuition: Wie viel soll Neuron A zu Neuron B beitragen?). Diese Gewichte sind auch ein Teil, der angepasst (gelernt) werden kann.
                  • Neuronen sind meist gruppiert in Schichten (Layer), wobei Neuronen innerhalb einer Schicht nicht miteinander verknüpft sind und daher parallel ausgewertet werden können. Schichten werden meist klassifiziert nach der Struktur der Verbindungen zur vorherigen Schicht, z.B.: Dense Layer, falls jedes Neuron als Eingabe alle Ausgaben der Vorschicht bekommt, oder Convolutional Layer, wenn jedes Neuron nur mit solchen aus demselben lokalen Bereich verknüpft sind .
                  • Eingaben werden über Eingabeneuronen und Ausgaben über Ausgabeneuronen modelliert. Die Eingabeneuronen nehmen einfach den Werte der Eingabe an und leiten diese weiter (ein Neuron pro Zahl) und Ausgabeneuronen nehmen am Ende den Wert der Endausgabe an.
                • Stellschrauben:
                  • Architektur: Typ & Anzahl & Verknüpfungen der Neuronen (u.a. auch Anzahl und Breite der Schichten)
                  • Parameter, die gelernt werden können: Gewichte & Bias, u.U. weitere Parameter der Aktivierungsfunktion
                • Vorteilhafte Eigenschaften: NNs haben ein paar wirklich praktische Eigenschaften:
                  • Flexibilität: Neuronale Netze können bei geeigneter Wahl der Architektur sehr komplexe Probleme mit Zahlen als Ein- und Ausgabe lösen. Genauer: Es ist mathematisch erwiesen, dass unter bestimmten Voraussetzungen für jedes Problem und jede gewünschte Genauigkeit theoretisch ein NN existiert, das dieses Problem mit entsprechender Genauigkeit löst (also entsprechend nah an die zugrundeliegende wahre Funktion heran kommt). Der Sammelbegriff für diese Aussagen ist Unversaler Approximationssatz.
                    Aber Achtung: Das ein rein theoretisches Resultat, d.h. man weiß, dass es eine Architektur und Parameter gibt, die ein Problem lösen, aber leider nicht welche (und es können auch wirklich seeehr viele Neuronen nötig sein).
                  • Parallelisierbarkeit: Alle Neuronen, die gegenseitig keine Eingabe voneinander bekommen, können parallel berechnet werden (meist in Schichten zusammengefasst).
                    Das lässt sich auf spezieller Hardware, wie z.B. Grafikkarten, sehr schnell ausführen, oder sogar auf mehrere Geräte verteilen. Das gilt sowohl für das Ausführen als auch für das Training des NNs (Stichwort Federated Learning).
                  • Optimierbarkeit: Die Grundoperationen sind einfach und gut erforscht. Insb. ist die Ableitung bekannt. D.h. man weiß für ein gegebenes Beispiel, in welche Richtung man die Parameter ändern muss, um für dieses Beispiel ein Stückchen besser zu werden, also näher an eine gewünschte Ausgabe heranzukommen. Die meisten Lernverfahren nutzen dies um ein NN schrittweise zu optimieren.
                • Nachteile:
                  • Black-box: Neuronale Netze sind „Black-boxes„, d.h. sie sind mit teilweise mehreren Millionen Neuronen so komplex, dass man nicht mehr ohne weiteres nachvollziehen kann, aus welchen Gründen Entscheidungen getroffen werden. Mit der Frage, wie man trotzdem in NNs reingucken kann, beschäftigt sich das Forschungsfeld der erklärbaren künstlichen Intelligenz (XAI).
                  • „Recognition is not understanding“ (Alan Turing?), frei übersetzt „Mustererkennung bedeutet kein Problemverständnis“. NNs sind statistischer Natur und versuchen anhand wiederkehrender Muster passende Verhaltensregeln zu finden. Allerdings erlangen sie hierbei meist kein tiefergreifendes Verständnis des Problem. Z.B. lernen NNs zur Objekterkennung häufig keine Objektpermanenz (Objekte verschwinden nicht sondern werden höchstens verdeckt).
                • Zum selber Ausprobieren:
                  • Implementierung: Wer es selber ausprobieren will: Es gibt ein paar spezialisierte Software-Bibliotheken, die dabei helfen, NNs einfach und hardwareeffizient zu implementieren, z.B. Keras, Tensorflow (v.a. Python), Pytorch (Python), Caffe (C, C++), Deeplearning4j (Java).
                  • Schöne interaktive Visualisierungen findet man z.B. im Tensorflow Playground oder in der Summit Visualisierung.
                  • Es gibt einige Plattformen, auf denen Probleme aus der Praxis (mit Lerndaten) veröffentlicht und oft auch ein Preisgeld auf deren Lösungen ausgeschrieben wird. Dazu zählt z.B. Kaggle.
                Was gibt es sonst noch

                Was wir in dieser Folge (noch) nicht im Detail besprochen haben:

                • Typen und Architekturen von Netzen: z.B. Neuronen mit Gedächtnis und rekurrente Netze (als Gegensatz zu den Feedforward Netzen), Spiking Neural Networks; um ein Gespür für die Vielfalt an Architekturen zu bekommen, lohnt sich ein Blick auf den Neural Network Zoo
                • Lernverfahren für das Training von NNs, z.B. Backpropagation
                • Erklärbare künstliche Intelligenz, oder „Wie kann man in NNs reingucken“
                Weitere Links und Quellen
                • Hier geht’s zu Olis Podcast: https://www.coastercast.de/
                  Und hier geht’s zu seiner Homepage mit seinen anderen Projekten: https://www.pheerai.de/
                • Ein ausführliches deutsches Tutorial zu Perzeptrons und deren Lernprozess (den wir uns in einer der nächsten Folgen nochmal genauer anschauen werden) findet ihr hier.
                • Warum mehr Layer das Training eines NNs erleichtern: Dieses Paper folgert aus näheren Untersuchungen zum Trainingsvorgang von NNs, dass mehr anstatt breiterer Schichten einen Vorteil fürs Training bringen:
                  Shwartz-Ziv, Ravid, and Naftali Tishby. 2017. “Opening the Black Box of Deep Neural Networks via Information.” CoRR abs/1703.00810. http://arxiv.org/abs/1703.00810.
                • Eine sehr ausführliche und aktuelle Liste zu Frameworks für Deep Learning, also mit denen man neuronale Netze implementieren und trainieren kann. findet man auf der englischen Wikipedia.
                  In dieser Folge haben wir folgende Deep Learning Frameworks erwähnt:
                  • Keras
                  • Tensorflow
                  • Pytorch
                  • Caffe
                  • Deeplearning4j
                • Im Tensorflow Playground kann man neuronale Netze für ganz einfache Klassifikationsproblem grafisch zusammenbauen, trainieren lassen und analysieren.
                • SUMMIT bietet eine schöne interaktive Visualisierung der Vorgänge innerhalb eines Faltungsnetzes für Bilderkennung. Das Paper dazu ist:
                  Summit: Scaling Deep Learning Interpretability by Visualizing Activation and Attribution Summarizations, Fred Hohman, Haekyu Park, Caleb Robinson, and Duen Horng (Polo) Chau.
                  IEEE Transactions on Visualization and Computer Graphics (TVCG, Proc. VAST’19). 2020. https://fredhohman.com/papers/19-summit-vast.pdf
                • Ein Beispiel einer Plattform, auf der Wettbewerbe zu Machine Learning Problemen veröffentlicht werden, ist Kaggle.
                • Wer sehen will, wie vielfältig man Neuronen zu neuronalen Netzen zusammenbauen kann, sollte einen Blick auf diese Übersicht von Architekturen im Neural Network Zoo werfen: https://www.asimovinstitute.org/neural-network-zoo/
                1 hr 20 min
              • Eine Geschichte der künstlichen Intelligenz
                • Johannes Rabold
                  • Twitter
                  • Website
                  • Email
                  • GitHub
                  • ResearchGate
                  • ORCiD
                  • Gesina Schwalbe
                    • Email
                    • Website
                    • GitHub
                    • ORCiD
                    • ResearchGate
                    • Twitter
                    • Linkedin

                      Diesmal machen wir eine Zeitreise durch die (unserer Meinung nach) wichtigsten Kapitel und Meilensteine der Geschichte künstlicher Intelligenz. Wo kommt sie her? Wie fing es an? War KI schon immer so ein heißes Forschungsthema? Und was waren die wichtigen Treiber und Bremsen in der Geschichte der KI-Forschung? Um das zu beantworten, geht es (nahezu) chronologisch vom 19. bis ins 21. Jahrhundert entlang einiger von uns ausgewählten Ereignisse.

                      Errata (unsere Kurzschlüsse)
                      • Der ENIAC Computer wurde erst 1946, nicht schon 1943 vorgestellt. 1943 wurde der Bauvertrag unterzeichnet.
                      • Das Beispiel, dass ein Modell zur Detektion gegnerischer Panzer einen Bias zum Wetter hatte, scheint ein Mythos zu sein, wie hier recherchiert wurde: https://www.gwern.net/Tanks
                        Das macht das Beispiel aber leider nicht unrealistisch
                      Zusammenfassung: Ganz kurz für Beepo
                      • KI ist schon über 50 Jahre alt! Die Dartmouth Conference 1956 gilt als Begründung des Forschungsbereichs.
                      • KI war nicht immer ein komplettes „Hype-Thema“ und hat wenigstens zwei Tiefphasen (KI-Winter) in den 70ern und Ende der 80er hinter sich.
                      • KI ist nicht losgelöst von Geschichte und Zeitgeist. Z.B. war während des kalten Krieges ein wichtiger Geldgeber immer das Militär.
                      • Wichtigste Entwicklungstreiber der Forschung an künstlicher Intelligenz:
                        • Faszination & Streben nach Automatisierung
                        • Wettbewerb zwischen Staaten und große Firmen
                        • Theoretische Grundlagen, z.B. Grundlagen der Informatik oder neuronale Netze
                        • (mehr) Rechenleistung
                        • (mehr) Daten, d.h. Beispiele für das Trainieren von lernenden Algorithmen
                      • Wichtigste Entwicklungsbremse: Hypes um KI, d.h. zu große und dann stark enttäuschte Erwartungshaltung, weswegen Forschungsgelder wegbrechen; Gründe, weswegen Hypes abrupt endeten:
                        • Vorhergesagtes Versagen: Aufdecken theoretischer Limitierungen von „ge-hype-ten“ Ansätzen
                        • Nichteintreffen von vorhergesagten Durchbrüchen
                      Ein Zeitstrahl der KI
                      • Kapitel I: Die Vorarbeiten
                        • Jhd.: Ada Lovelace entwickelt erste Grundlagen des Programmierens.
                        • 1920: Der Begriff „Roboter“ wird geprägt in einem Theaterstück.
                        • 1936: Alan Turing beschreibt die Turingmaschine, eine theoretische Definition von Computeralgorithmen.
                        • 1943 1946: Mit dem ENIAC geht der erste programmierbare & turing-vollständige Computer in Betrieb, d.h. er hat den vollen Funktionsumfang einer Turingmaschine.
                        • 1943: Die McCulloch-Pitts-Zelle ist die erste theoretische Beschreibung eines künstlichen Neurons, wie es für künstliche neuronale Netze benötigt wird.
                        • 1949: Aus der Psychologie motiviert wird die Hebbsche Lernregel für künstliche neuronale Netze vorgeschlagen („What fires together, wires together“).
                        • 1950: Alan Turing beschreibt den Turing-Test als Maß für die Qualität (eigentlich Menschenähnlichkeit) einer KI.
                      • Kapitel II: Die Gründung und der Anfang
                        • 1956: Auf dem Dartmouth College wird das Forschungsfeld der künslichen Intelligenz etabliert
                        • 1960: Frank Rosenblatt baut die erste lernfähige Maschine, indem er ein einfaches neuronales Netz implementiert, und ADELINE wird das erste kommerziell breit genutzte neuronale Netz.
                        • 1966: Der erste Chatbot ELIZA simuliert mit einfachsten Mitteln erfolgreich psychotherapeutische Gespräche.
                      • Kapitel III: 1. Winter und der Hype um Expertensysteme
                        • 1970er: Im Buch Perceptrons (-> zur engl. Zusammenfassung) beleuchten Misky und Papert Limitierungen damaliger neuronaler Netze, mit ein Auslöser des ersten KI-Winters.
                        • 1972: Das Expertensystem MYCIN für medizinische Diagnose zeigt beispielhaft die Stärken und Schwächen von Expertensystemen.
                        • 1986: Der Sprachcomputer NETtalk wird veröffentlicht.
                      • Kapitel IV: Aus dem 2. Winter zurück in die Öffentlichkeit
                        • 1987: Der 2. KI-Winter bricht an, ausgelöst durch Enttäuschungen im Bereich der Expertensysteme.
                        • 1989: Yann LeCun entwickelt die Architektur der faltenden neuronalen Netzen (Convolutional Neural Network), die später im Computer Vision Bereich abräumen werden. (-> gute Visualisierung der Faltungsoperation und hier ein ausführliche Erklärung auf englisch).
                        • 1997: Noch ein Beispiel einer wegweisenden Architektur neuronaler Netze wird entwickelt: Long-Short Term Memory (LSTM) neuronale Netze für sequenzielle Daten wie Text (-> gute Erklärung in Colah’s Blog).
                        • ab 1997: jährlicher Robocup Wettbewerbe in verschiedenen Disziplinen
                        • 1997: Das System Deep Blue von IBM schlägt mit purer Rechenleistung den amtierenden Schachweltmeister Garry Kasparov.
                      • Kapitel V: Mit Rechenleistung und Daten zum heutigen Erfolg
                        • 2011: „GPU-Revolution“ für neuronale Netze: Technologien für die Nutzung leistungsstärkerer Hardware ebnen den Weg für komplexe KI in großen Skalen.
                        • ab 2011: Noch mehr Siege in komplexen Spielen:
                          • 2011: Das Expertensystem Watson von IBM gewinnt im Fernsehquizz Jeopardy.
                          • 2016: AlphaGo von Google, das u.a. auf einem neuronalen Netz basiert, wird Weltmeister im komplexen Brettspiel Go.
                          • 2017: Eine KI siegt im komplexen Strategiespiel Dota 2.
                        • ab 2011: Ära der persönlichen Assistenten bis hin zu natürlicher Konversation: u.a. Siri von Apple (2011), Cortana von Microsoft (2014), Amazon Alexa (2015), Google Assistant (2016), IBM Project Debater (2018), Google Duplex (2018), Google LaMDA (2021)
                        • 2014: Noch mehr Architekturen: Generative adversariale neuronale Netze (Generative Adversarial Networks, GANs) werden entwickelt. Sie sind heute z.B. für Kunst mithilfe künstlicher neuronaler Netze und DeepFakes verantwortlich. (Hier gibt es eine ausführlichere Einführung in englisch.)
                        • 2015: Das Mooresche Gesetz feiert 50-jährige(!) Gültigkeit. Es ist eine Faustregel, die den Anstieg der Komplexität von integrierten Schaltkreisen (also auch Computern) schätzt — je nach Maß in etwa eine Verdopplung alle zwei Jahre.
                        • 2016: Das Forschungsprogramm der DARPA zu erklärbarer KI (XAI) rückt menschliches Verständnis künstlich gelernter Algorithmen weiter in den Fokus der Forschung.
                        • 2018: Geoffrey Hinton, Yann LeCun und Yoshua Bengio erhalten den Turing Award (in etwa der Nobelpreis der Informatik) für ihre Errungenschaften um künstliche Intelligenz.
                      Weitere Links und Quellen
                      • Das Original-Paper von Alan Turing zu seinem „Imitation Game / Turing Test“ kann man hier (auf englisch) lesen.
                      • Der Film „The Imitation Game“ mit Benedict Cumberbatch zeigt das Leben von Alan Turing sowie seine maßgebliche Beteiligung am Knacken des deutschen „Enigma-Codes“. Hier ist der Trailer.
                      • Das Open AI Five Projekt erzielte große Erfolge bei der Entwicklung von KI-Spielern für Dota 2, die in der Timeline auf der Projektstartseite verlinkt sind.
                      • Wer sich mal mit dem ersten Chatbot ELIZA unterhalten will, sollte sich mal die Implementierung im Texteditor Emacs ansehen.
                      • Joseph Weizenbaum flüchtete mit seiner jüdischen Familie vor dem Nazi-Regime nach Amerika. Dieser Artikel beinhaltet einen Auszug aus einem Buch über seine Lebensgeschichte und Wertevorstellungen.
                      • John McCarthy bringt zentrale Probleme mit Expertensystemen (u.a. Mycin) auf den Punkt. Die Auslöser des zweiten KI-Winters sind in diesem Artikel schön zusammen gefasst (englisch)
                      • Dieser Artikel (englisch) erklärt gut die Herausforderungen beim Chip-Design, die das Mooresche Gesetz vermutlich bald ungültig wegen Quanteneffekten bei zu kleinen Chips.
                      • Diese YouTube-Playlist zeigt einige Hintergründe und Jeopardy-Spiele von Watson
                      • TED Talk des geschlagenen Jeopardy Champions Ken Jennings
                      • MOBA steht für Multi-Player Online Battle Arena (auch bekannt als Action Real-Time Strategy, ARTS).
                      • Computerphile gibt hier auf Youtube ein sehr schöne Einführung in die Turingmaschine (auf englisch).
                      • Diese Bilder sind von GANs erzeugt: https://thispersondoesnotexist.com und https://thiscatdoesnotexist.com (Einfach die Seite aktualisieren für neue Bilder).
                      • Die Rede zum Turing-Award 2018 für Errungenschaften um künstliche Intelligenz und neuronale Netze findet sich hier auf Youtube (englisch).
                      • Dieses Youtube-Video (englisch) erklärt die McCulloch-Pitts-Zelle, ein erstes und sehr einfaches Neuronenmodell, und dieses Video (ebenfalls englisch) nimmt sich die Hebbsche Lernregel vor.
                      • Aus dem Podcast Sebstbewusste KI vom KIT stammt das Zitat „Die natürliche Intelligenz sollte auch nicht ganz außen vor gelassen bleiben bei all den Forschungen über die künstliche.“
                      • Der Bericht zu fehlerhaften maschinell gelernten Modellen, die COVID-19 auf Röntgenbildern erkennen sollten, findet sich hier (englisch). Ich bin über den englischen Podcast Let’s Talk AI darauf gestoßen.
                      • Ein Nachtrag zu den Leistungen von Yoshua Bengio: Dieser bekam den Turing Award unter anderem für seine Vorreiterarbeiten im Bereich der natürlichen Sprachverarbeitung.

                      2 hr 5 min
                    • Was ist künstliche Intelligenz?
                      • Johannes Rabold
                        • Twitter
                        • Website
                        • Email
                        • GitHub
                        • ResearchGate
                        • ORCiD
                        • Gesina Schwalbe
                          • Email
                          • Website
                          • GitHub
                          • ORCiD
                          • ResearchGate
                          • Twitter
                          • Linkedin

                            Wir beschäftigen uns in dieser Folge mit der Anfangsfrage: Was ist eigentlich diese ominöse künstliche Intelligenz (KI)? Was gehört dazu und was nicht?

                            Errata (unsere Kurzschlüsse)
                            • Das Zitat von Elaine Rich ist nicht von 1963, sondern 1983
                            Zusammenfassung: Ganz kurz für Beepo
                            • KI ist schwer zu definieren. Unser Versuch: „Algorithmische Lösung zu einem eingegrenzten Problem auf eine Weise, die von vielen als intelligent empfunden wird“
                            • Folgendes ist nicht das gleiche wie KI: starke KI, Technologien für KI (maschinelles Lernen, neuronale Netze & Deep Learning)
                            • KI ist ein seeehr breites Feld (Anwendungen, Technologien, Komplexität)
                            Eine Umfrage: „Was ist KI?“

                            Wir haben uns die vielen Rückmeldungen von den unterschiedlichsten Leuten zur Frage „Was ist KI für euch?“ genauer angeschaut (Vielen Dank euch für die Rückmeldungen!):

                            • Was assoziieren viele mit KI?
                              Alles von Buzzword über Bedrohung bis zum Hoffnungsträger.
                            • Was gehört zu KI, was ist die Basis und welche Anwendungen gibt es?
                              Es ist ein Forschungsthema mit einer Fülle an Anwendungen und Schnittbereichen mit Mathematik, Informatik, Psychologie etc.
                            • Welche Eigenschaften hat KI?
                              Die Eigenschaften reichen von der Fähigkeit zur Mustererkennung über Einschätzungen von Situationen und Lernen zum automatisierten Schlussfolgern.
                            Definitionen von Künstlicher Intelligenz

                            Nach dem Realitätscheck schauen wir uns mal genauer ein paar existierende Definitionen von KI an. Dabei gestaltet sich die Definition grundsätzlich schwierig, da bereits „natürliche“ Intelligenz nicht eindeutig definiert und schwierig zu messen ist (dazu siehe auch Turing Test).

                            • John McCarthy, 1956 (Ursprüngliche Definition): Künstliche Intelligenz soll natürliche (menschliche) Intelligenz simulieren.
                            • Elaine Rich, 1963 1983: Informatikprobleme, die Menschen noch besser lösen können als Maschinen
                              Quellen:
                              Rich, E.A. „Artificial Intelligence“. McGraw-Hill, New York, 1983.
                              Rich, E. „Artificial intelligence and the humanities“. Comput Hum 19, 117–122 (1985). https://doi.org/10.1007/BF02259633
                            • Aus unserer Umfrage, danke an Leonie: Künstliche Intelligenz ist wie ein klassischer Teenager-Film: Nimm den größten Nerd der Schule (= Mathematik), eine Umstyling-Montage bis zur Unkenntlichkeit (= Lernprozess der Algorithmen) und er wird danach auf jede Party eingeladen (= lass uns jedes Problem mit KI lösen!).

                            Außerdem muss zwischen starker (allgemeiner) und schwacher KI unterschieden werden. Unsere Definition am Ende ist:

                            „Eine schwache KI ist die algorithmische Lösung zu einem eingegrenzten Problem auf eine Weise, die von vielen als intelligent empfunden wird. Es ist also eine täuschend echte, algorithmische Nachahmung menschlicher Intelligenz eingegrenzt auf eine bestimmte Aufgabe.“

                            „Starke KI (=Terminator) beschreibt die vollständige Nachahmung menschlichen kognitiven Denkens und ist aktuell reine Utopie / Dystopie.“

                            Sonstige Links
                            • Buchtipp zum Thema zerstörtes Parkett: „Die Känguru-Apokryphen“ von Marc-Uwe Kling, Kapitel 6
                            • Duden-Definitionen von „künstlich“ und „Intelligenz“
                            • Wikipedia zu Intelligenz, kognitives System und zum Unterschied zwischen starker und schwacher KI
                            • KI-Definition in offiziellen EU Dokumenten: European Rules on Artificial Intelligence, Title I, Article 3, §(1)
                            Besucht uns gerne auf …
                            • … unserer Homepage: https://kaum-intelligent.de/
                            • … bei Twitter: @KaumIntelligent
                            • … bei Instagram: kaum.intelligent
                            1 hr 17 min
                          • Nullnummer
                            • Johannes Rabold
                              • Twitter
                              • Website
                              • Email
                              • GitHub
                              • ResearchGate
                              • ORCiD
                              • Gesina Schwalbe
                                • Email
                                • Website
                                • GitHub
                                • ORCiD
                                • ResearchGate
                                • Twitter
                                • Linkedin

                                  Das sind wir:

                                  • Johannes: https://www.uni-bamberg.de/en/cogsys/rabold/
                                  • Gesina: https://gesina.github.io/

                                  Und Beepo sowie Näheres zu unserem Podcast findet ihr hier: https://kaum-intelligent.de

                                  11 min

                                About KI – Kaum Intelligent

                                From the publisher's feed

                                Echte Gespräche über künstliche Intelligenz