• Frage: Wie programmiert man eine KI?

    Frage gestellt dawn25bag am 27 Feb 2024.
    • Foto: Daniel Braun

      Daniel Braun Beantwortet am 27 Feb 2024:


      Beim Programmieren verwendet man eine spezielle Maschinensprache um dem Computer genau zu sagen was er machen soll: Wenn jemand auf das Icon klickt dann öffne das Programm.

      Die meisten KIen basieren heute auf maschinellem Lernen. Dabei muss man dem Programm nicht explizit sagen was es machen soll, sondern man gibt ihm hunderte oder tausende Beispiel für eine Aufgabe und das Programm lernt dann anhand dieser Beispiele wie es die Aufgabe erledigen kann.

      Programmieren spielt deshalb beim Erstellen von KIen heute häufig gar keine so große Rolle mehr. Es gibt einige Standardverfahren zum maschinellen Lernen, die es als fertig programmierte Pakete gibt die man einfach anwenden kann. Die sagen dem Computer dann wie er die Daten analysieren soll um am Ende etwas zu lernen. Deshalb kann man auch eine neue KI erstellen quasi ohne zu programmieren.

      Wichtiger ist bei einer KI das „Training“. Das ist die Phase in der die KI dann die Beispiele analysiert. Gebe ich dem Programm Hundebilder als Beispiel lernt es Hunde zu erkennen, gebe ich ihm Katzenbilder als Beispiel lernt es Katzen zu erkennen. Ohne dass das System umprogrammiert werden muss, nur anhand der Beispiele.

    • Foto: Karsten Weber

      Karsten Weber Beantwortet am 27 Feb 2024:


      Da ich selbst keine KI programmiere, kann ich das nicht im Detail beantworten, aber im Prinzip: Es gibt nicht die eine Art, wie KI programmierit wird, sondern sehr verschiedene Arten. Denn es gibt unterschiedliche Ansätze, wie KIs gebaut werden. Es gibt Symbolverarbeitung, statistische Ansätze, neuronale Netze und sicher noch ein paar mehr. Systeme der Symbolverarbeitung werden oft mit speziellen Programmiersprachen erstellt, früher waren das bspw. LISP und PROLOG. Neuronale Netze werden heute aber viel häufiger genutzt, ChatGPT & Co. sind neuronale Netze, werden als Programm auch programmiert, oft in Python. Aber viel wiochtiger ist das Training mit riesigen Datensätzen — solche KIs „lernen“ mithilfe der Trainingsdatensätze. Sie werden also nicht nur programmiert, sondern „ausgebildet“.

    • Foto: Xenia Klinge

      Xenia Klinge Beantwortet am 27 Feb 2024:


      Das kommt darauf an, was man mit der KI erreichen will. Ein Chatbot ist etwas ganz anderes als eine Aktienkursvorhersage oder ein Programm, das Super Mario World spielen kann, oder ein Roboterarm, der etwas greifen kann ohne es zu zerquetschen.

      Die grundlegenden Schritte sind aber meistens:
      1. Problem und Ziel definieren, also klären, was die KI überhaupt machen soll, z.B. natürlich klingende Gespräche führen, Bilderkennung, Entscheidungsfindung usw.
      2. Daten sammeln, die für das Training der KI benötigt werden, und diese Daten für den Einsatz im Modell aufbereiten, z.B. indem falsche Messwerte entfernt werden oder Formate umgewandelt, etwa von Kilogramm zu Gramm, damit sich besser damit rechnen lässt
      3. Passendes Modell auswählen, also den Algorithmus oder die Architektur, die am besten zum definierten Ziel passt, z.B. neuronale Netzwerke, Entscheidungsbäume, Support Vector Machines usw. (hier hat man oft schon ein Gefühl dafür, was gut funktioniert, aber manchmal ist man beim Ausprobieren doch überrascht)
      4. Modell und Daten kombinieren – das „Training“, also das Anpassen des Modells anhand der bereitgestellten Daten, damit es die definierte Aufgabe lösen kann, hierbei wird der Algorithmus viele tausend Mal verwendet, das Ergebnis überprüft und dann eine winzige Veränderung vorgenommen, damit das Ergebnis näher an der Lösung liegt – wie wenn ich als Mensch „trainiere“ einen Papierball in den Mülleimer zu werfen und meine Bewegungen immer ein bisschen verändere, so dass ich dem Ziel näherkomme
      5. Auswertung des fertigen Modells, wobei mit zurückgehaltenen Daten, die beim Training nicht benutzt wurden, geguckt wird, wie gut das trainierte Modell die Aufgabe erreicht, wenn es mit „neuen“ Problemen konfrontiert wird

      Diese Schritte können sich mehrmals wiederholen, so kann etwa zur Verbesserung eines Modells noch mal die Datenbasis erweitert oder verbessert oder eine andere Architektur ausprobiert werden.

      Wenn die Ergebnisse zufriedenstellend sind, kann das Modell dann zur Verfügung gestellt werden und seine Aufgabe als Teil einer Softwareanwendung, eines Robotersystems oder eines Online-Dienstes erfüllen. Dann muss es trotzdem immer mal wieder überprüft und im Zweifel auch noch einmal angepasst werden, weil die Realität meistens doch etwas anders aussieht als die begrenzten Trainingsdaten das abbilden können.

    • Foto: Emmanuel Müller

      Emmanuel Müller Beantwortet am 29 Feb 2024:


      Eine KI ist mehr als nur ein Programm (ein Algorithmus) dass man als Mensch programmiert. Eine KI kann Dinge tun/vorhersagen die nicht im Programm vom Programmierer festgelegt wurden. Die KI lernt aus Daten und kann damit mehr als ein Algorithmus.

      Stellt euch dazu vor ihr wollt einen Kuchen backen, dann besteht ein Algorithmus aus den Schritten in einem Kochbuch: Backofen aufheizen, Kuchenteig anrühren, …

      Einer KI gibt man nicht die Schritte zum Kuchenbacken vor (also man programmiert nicht wie sie einen Kuchen backen soll), sondern man zeigt der KI tausende von Kuchen und wie man diese hergestellt hat. Die KI lernt also aus Beispielen und das (Training der KI) muss programmiert werden. So wie wenn ihr euren Eltern beim Kuchenbacken zuschaut, dann habt ihr nach einigen Jahren auch raus, wie man Kuchen backt. Und da fängt das spannende an ihr könnt dann auch neue Kuchen erfinden, die es nicht im Kochbuch gibt, genau das kann die KI auch und gibt Ergebnis aus die es so im Training gar nicht gab, durch Kombination von Dingen, die sie vorher gelernt hat.

      Also bei einer KI programmiert man nicht das Ergebnis (das eine Kuchenrezept) sondern man programmiert das Lernen aus vielen Beispielen (das Training zum Kuchenbacken). Eine generative KI kann damit dann Dinge vorhersagen die es so vorher nicht gab (neue Kuchen erfinden).

    • Foto: Knut Linke

      Knut Linke Beantwortet am 1 Mrz 2024: last edited 1 Mrz 2024 6:29 pm


      Edit.

Kommentare