config/glossary-data.js

/**
 * Glossar-Daten als globale Variable.
 *
 * Wrapper um config/glossary.json, damit das Glossar
 * auch ohne lokalen Server (file://) funktioniert.
 *
 * @fileoverview
 * @author Alexander Wolf
 * @version 1.0
 * @global {Object} window.GLOSSARY_DATA
 * @see config/glossary.json
 */

window.GLOSSARY_DATA = {
  "version": 1,
  "lastUpdated": "2025-07-14",
  "categories": [
    "data-structures",
    "algorithms",
    "machine-learning",
    "game-theory",
    "math",
    "general-ai"
  ],
  "categoryLabels": {
    "data-structures": "Datenstrukturen",
    "algorithms": "Algorithmen",
    "machine-learning": "Maschinelles Lernen",
    "game-theory": "Spieltheorie",
    "math": "Mathematik",
    "general-ai": "Allgemeine KI"
  },
  "terms": [
    {
      "id": "agent",
      "term": "Agent",
      "aliases": [
        "KI-Agent",
        "Intelligent Agent"
      ],
      "short": "Ein eigenständig handelndes Programm, das seine Umgebung wahrnimmt und darauf reagiert.",
      "long": "In der KI ist ein Agent ein System, das selbstständig Entscheidungen trifft. In unserer Plattform gibt es verschiedene Agenten-Typen: Der Random-Agent wählt zufällig, der regelbasierte Agent folgt festgelegten Wenn-Dann-Regeln, und der Minimax-Agent berechnet den optimalen Zug. In der Arena kannst du diese Agenten gegeneinander antreten lassen.",
      "category": "general-ai",
      "difficulty": 1,
      "relatedTerms": [
        "minimax",
        "regelsystem",
        "heuristik"
      ],
      "relatedResources": [
        "playground_arena",
        "game_tictactoe"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Intelligenter Agent – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Intelligenter_Agent",
          "type": "article"
        }
      ]
    },
    {
      "id": "aktivierungsfunktion",
      "term": "Aktivierungsfunktion",
      "aliases": [
        "Activation Function",
        "Sigmoid",
        "ReLU"
      ],
      "short": "Eine mathematische Funktion, die bestimmt, ob und wie stark ein künstliches Neuron 'feuert'.",
      "long": "Ohne Aktivierungsfunktion wäre ein Neuronales Netz nur eine langweilige lineare Funktion. Die Aktivierungsfunktion fügt Nichtlinearität hinzu – das ist der Schlüssel, damit Netze komplexe Muster lernen können. Gängige Funktionen sind Sigmoid (quetscht Werte zwischen 0 und 1), ReLU (lässt positive Werte durch, kappt negative auf 0) und Softmax (erzeugt Wahrscheinlichkeiten).",
      "category": "machine-learning",
      "difficulty": 3,
      "relatedTerms": [
        "perceptron",
        "neuronale-netze"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Aktivierungsfunktion – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Aktivierungsfunktion",
          "type": "article"
        }
      ]
    },
    {
      "id": "alpha-beta-pruning",
      "term": "Alpha-Beta-Pruning",
      "aliases": [
        "Alpha-Beta-Suche",
        "AB-Pruning"
      ],
      "short": "Eine Optimierung des Minimax-Algorithmus, die unnötige Zweige des Spielbaums abschneidet.",
      "long": "Alpha-Beta-Pruning ist wie ein kluger Schachspieler, der sagt: 'Diesen Zug muss ich gar nicht zu Ende denken – ich habe schon einen besseren gefunden.' Die Technik merkt sich die bisher beste Option (Alpha für Max, Beta für Min) und überspringt Teilbäume, die das Ergebnis nicht mehr verbessern können. So kann der Algorithmus die gleiche optimale Lösung finden, aber deutlich weniger Knoten besuchen.",
      "category": "algorithms",
      "difficulty": 3,
      "relatedTerms": [
        "minimax",
        "spielbaum",
        "pruning"
      ],
      "relatedResources": [
        "playground_minimax_viz",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Alpha-Beta-Suche – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Alpha-Beta-Suche",
          "type": "article"
        }
      ]
    },
    {
      "id": "backtracking",
      "term": "Backtracking",
      "aliases": [
        "Rückverfolgung"
      ],
      "short": "Eine Strategie, bei der ein Algorithmus einen Lösungsweg ausprobiert und bei einer Sackgasse zum letzten Entscheidungspunkt zurückkehrt.",
      "long": "Backtracking ist wie das Lösen eines Labyrinths: Du folgst einem Pfad, bis du an eine Sackgasse kommst, gehst dann zurück zur letzten Gabelung und probierst den nächsten Weg. Die Tiefensuche (DFS) nutzt intern Backtracking. Es ist eine elegante Methode, um systematisch alle Wege zu testen, ohne den Überblick zu verlieren.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "tiefensuche",
        "stack",
        "suchbaum"
      ],
      "relatedResources": [
        "game_knights_tour",
        "expedition_search_trees"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Backtracking – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Backtracking",
          "type": "article"
        }
      ]
    },
    {
      "id": "benchmark",
      "term": "Benchmark",
      "aliases": [],
      "short": "Ein standardisierter Test, um die Leistung verschiedener KIs objektiv zu vergleichen.",
      "long": "Genau wie Autos auf einer Teststrecke geprüft werden, müssen KI-Modelle durch standardisierte Datensätze (Benchmarks) laufen. So lässt sich wissenschaftlich messen, ob ein neuer Algorithmus tatsächlich schneller lernt oder weniger Fehler macht als sein Vorgänger.",
      "category": "general-ai",
      "difficulty": 2,
      "relatedTerms": [
        "agent"
      ],
      "relatedResources": [
        "challenge_speed"
      ],
      "image": "ressources/glossary/benchmark-chart.png",
      "externalLinks": [
        {
          "title": "Papers with Code: State of the Art Benchmarks",
          "url": "https://paperswithcode.com/sota",
          "type": "article"
        }
      ]
    },
    {
      "id": "bewertungsfunktion",
      "term": "Bewertungsfunktion",
      "aliases": [
        "Evaluation Function",
        "Scoring Function"
      ],
      "short": "Eine Funktion, die einem Spielzustand einen numerischen Wert zuweist, um dessen Güte einzuschätzen.",
      "long": "Wenn der Spielbaum zu groß ist, um ihn komplett zu durchsuchen, braucht die KI eine Methode, um Zwischenzustände zu bewerten ('Wie gut steht es gerade für mich?'). Die Bewertungsfunktion liefert einen Zahlenwert: positiv = gut für Max, negativ = gut für Min. Die Qualität der Bewertungsfunktion bestimmt maßgeblich, wie gut die KI spielt.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "minimax",
        "heuristik",
        "spielbaum"
      ],
      "relatedResources": [
        "playground_minimax_viz",
        "playground_rules_lab"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Bewertungsfunktion – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Bewertungsfunktion_(Spieltheorie)",
          "type": "article"
        }
      ]
    },
    {
      "id": "black-box",
      "term": "Black Box",
      "aliases": [
        "Blackbox"
      ],
      "short": "Ein System, dessen innere Funktionsweise für den Betrachter unsichtbar oder nicht nachvollziehbar ist.",
      "long": "In der heutigen KI (besonders bei Neuronalen Netzen) ist die Black Box ein großes Problem. Wir geben Daten hinein und bekommen ein Ergebnis heraus, wissen aber nicht genau, WARUM die KI so entschieden hat. Unsere Mission bei 'ai-unboxed' ist es, diese Black Boxes durch Visualisierungen zu öffnen und die Algorithmen dahinter transparent zu machen.",
      "category": "general-ai",
      "difficulty": 1,
      "relatedTerms": [
        "neuronale-netze"
      ],
      "relatedResources": [
        "game_rotatebox",
        "challenge_bruteforce"
      ],
      "image": "ressources/glossary/black-box-concept.svg",
      "externalLinks": [
        {
          "title": "Explainable AI (XAI)",
          "url": "https://de.wikipedia.org/wiki/Explainable_Artificial_Intelligence",
          "type": "article"
        }
      ]
    },
    {
      "id": "blatt",
      "term": "Blatt",
      "aliases": [],
      "short": "Ein Endknoten in einem Suchbaum, von dem keine weiteren Zweige abgehen.",
      "long": "Ein Blatt markiert das Ende eines Pfades. Das kann zwei Gründe haben: Entweder ist das Spiel hier zu Ende (Gewinn/Verlust) oder der Algorithmus hat sein Limit erreicht (z.B. weil er so programmiert wurde, nur 5 Ebenen in die Tiefe zu blicken).",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "wurzel",
        "suchbaum",
        "knoten"
      ],
      "relatedResources": [
        "challenge_multiverse"
      ],
      "image": "ressources/glossary/tree-leaf.svg",
      "externalLinks": []
    },
    {
      "id": "breitensuche",
      "term": "Breitensuche",
      "aliases": [
        "BFS",
        "Breadth-First Search"
      ],
      "short": "Ein Algorithmus, der einen Suchbaum Ebene für Ebene absucht, anstatt sofort in die Tiefe zu gehen.",
      "long": "Die Breitensuche geht auf Nummer sicher: Bevor sie 10 Schritte in die Zukunft blickt, schaut sie sich erst alle Möglichkeiten an, die 1, 2 oder 3 Schritte entfernt sind. Der Vorteil: Wenn es eine Lösung gibt, findet BFS garantiert den kürzesten Weg. Der Nachteil: Sie verbraucht extrem viel Arbeitsspeicher (Memory), weil sie sich alle angefangenen Wege merken muss.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "tiefensuche",
        "suchbaum",
        "queue"
      ],
      "relatedResources": [
        "playground_rotatebox_viz",
        "challenge_loop"
      ],
      "image": "ressources/glossary/bfs-animation.gif",
      "externalLinks": [
        {
          "title": "Breitensuche interaktiv visualisiert (VisuAlgo)",
          "url": "https://visualgo.net/en/dfsbfs",
          "type": "interactive"
        }
      ]
    },
    {
      "id": "brute-force",
      "term": "Brute Force",
      "aliases": [
        "Exhaustive Search",
        "vollständige Suche"
      ],
      "short": "Eine Strategie, bei der alle Möglichkeiten systematisch und ohne Abkürzungen durchprobiert werden.",
      "long": "Brute Force ist der 'Holzhammer' unter den Algorithmen: Statt clever abzukürzen, probiert er einfach alles aus. Bei einem 4-stelligen Zahlenschloss würde Brute Force alle 10.000 Kombinationen von 0000 bis 9999 testen. Das funktioniert bei kleinen Problemen, wird aber bei großen Zustandsräumen schnell unpraktikabel – daher brauchen wir Heuristiken und Pruning.",
      "category": "algorithms",
      "difficulty": 1,
      "relatedTerms": [
        "suchbaum",
        "exponentiell",
        "heuristik",
        "pruning"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "game_rotatebox"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Brute-Force-Methode – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Brute-Force-Methode",
          "type": "article"
        }
      ]
    },
    {
      "id": "duplikat",
      "term": "Duplikaterkennung",
      "aliases": [
        "Duplicate Detection",
        "Closed List"
      ],
      "short": "Ein Verfahren, das erkennt, ob ein Zustand bereits besucht wurde, um unnötige Wiederholungen im Suchbaum zu vermeiden.",
      "long": "In vielen Problemen führen unterschiedliche Zugfolgen zum selben Zustand. Ohne Duplikaterkennung würde der Suchbaum diese Zustände mehrfach bearbeiten und exponentiell aufblähen. Durch Speichern bereits besuchter Zustände (z. B. in einer Hash-Tabelle) kann der Algorithmus identische Zustände erkennen und überspringen – das spart enorm Rechenzeit und Speicher.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "suchbaum",
        "brute-force",
        "optimierung"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "playground_rotatebox_viz"
      ],
      "image": null,
      "externalLinks": []
    },
    {
      "id": "entscheidungsbaum",
      "term": "Entscheidungsbaum",
      "aliases": [],
      "short": "Ein Modell, das Entscheidungen anhand einer Abfolge von Ja/Nein-Fragen trifft.",
      "long": "Ein Entscheidungsbaum ist eine der verständlichsten Formen des maschinellen Lernens (White-Box-Modell). Das System spaltet Daten an jedem Knoten basierend auf Merkmalen auf (z.B. 'Ist das Tier größer als 1 Meter?' -> Ja/Nein). Durch das Beantworten der Fragen wandert man von der Wurzel bis zu einem Blatt, das die finale Klassifikation (z.B. 'Es ist ein Pferd') enthält.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "suchbaum",
        "knoten",
        "blatt"
      ],
      "relatedResources": [
        "challenge_boss_quiz"
      ],
      "image": "ressources/glossary/decision-tree.svg",
      "externalLinks": [
        {
          "title": "Entscheidungsbäume interaktiv erklärt (R2D3)",
          "url": "http://www.r2d3.us/visual-intro-to-machine-learning-part-1/",
          "type": "interactive"
        }
      ]
    },
    {
      "id": "exponentiell",
      "term": "Exponentielles Wachstum",
      "aliases": [
        "Exponential Growth"
      ],
      "short": "Ein Wachstumsmuster, bei dem sich eine Größe mit jedem Schritt vervielfacht (z. B. verdoppelt).",
      "long": "Exponentielles Wachstum ist der Grund, warum Brute Force bei großen Problemen scheitert. Wenn bei RotateBox jeder Zustand 4 Nachfolger hat, gibt es nach 10 Zügen bereits über eine Million Zustände (4^10 = 1.048.576). Nach 20 Zügen sind es schon über eine Billion. Deshalb brauchen wir clevere Algorithmen wie Duplikaterkennung oder Pruning.",
      "category": "math",
      "difficulty": 1,
      "relatedTerms": [
        "brute-force",
        "zustandsraum",
        "suchbaum"
      ],
      "relatedResources": [
        "expedition_search_trees"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Exponentielles Wachstum – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Exponentielles_Wachstum",
          "type": "article"
        }
      ]
    },
    {
      "id": "gradient",
      "term": "Gradient",
      "aliases": [
        "Gradientenabstieg",
        "Gradient Descent"
      ],
      "short": "Ein Vektor, der die Richtung und Steilheit des stärksten Anstiegs einer Funktion angibt.",
      "long": "Der Gradient ist das mathematische Herzstück des Lernens: Er sagt dem Neuronalen Netz, in welche Richtung es seine Gewichte anpassen muss, um den Fehler zu verringern. Beim Gradientenabstieg (Gradient Descent) geht man immer entgegen dem Gradienten – also bergab. Das ist wie ein Wanderer, der mit verbundenen Augen den steilsten Talweg sucht.",
      "category": "machine-learning",
      "difficulty": 3,
      "relatedTerms": [
        "lernrate",
        "neuronale-netze",
        "optimierung"
      ],
      "relatedResources": [
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Gradientenverfahren – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Gradientenverfahren",
          "type": "article"
        },
        {
          "title": "Gradient Descent – 3Blue1Brown (Video)",
          "url": "https://www.youtube.com/watch?v=IHZwWFHWa-w",
          "type": "video"
        }
      ]
    },
    {
      "id": "graph",
      "term": "Graph",
      "aliases": [],
      "short": "Ein Netzwerk aus Punkten (Knoten), die durch Linien (Kanten) miteinander verbunden sind.",
      "long": "In der Informatik ist ein Graph eine abstrakte Datenstruktur. Er eignet sich hervorragend, um Netzwerke, Straßenkarten, das Internet oder soziale Beziehungen darzustellen. Suchbäume sind eigentlich nur eine spezielle, hierarchische Form von Graphen, die keine geschlossenen Kreise (Schleifen) enthalten.",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "knoten",
        "kante",
        "suchbaum"
      ],
      "relatedResources": [
        "playground_rotatebox_viz"
      ],
      "image": "ressources/glossary/graph-network.svg",
      "externalLinks": [
        {
          "title": "Wikipedia: Graph (Graphentheorie)",
          "url": "https://de.wikipedia.org/wiki/Graph_(Graphentheorie)",
          "type": "article"
        },
        {
          "title": "Graphen-Visualisierung (VisuAlgo)",
          "url": "https://visualgo.net/en/graphds",
          "type": "interactive"
        }
      ]
    },
    {
      "id": "heuristik",
      "term": "Heuristik",
      "aliases": [
        "Daumenregel"
      ],
      "short": "Eine 'Daumenregel', die eine ungefähre, aber schnelle Einschätzung liefert, ohne alles exakt durchzurechnen.",
      "long": "Heuristiken sind wie Faustregeln: nicht perfekt, aber praktisch. Im Springerproblem z. B. nutzt die Warnsdorff-Heuristik die Regel 'Gehe immer zum Feld mit den wenigsten verbleibenden Zugmöglichkeiten'. Das liefert keine Garantie für die optimale Lösung, führt aber fast immer schnell zum Ziel. In unserem Regel-Labor kannst du eigene Heuristiken für TicTacToe zusammenbauen.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "brute-force",
        "bewertungsfunktion",
        "optimierung"
      ],
      "relatedResources": [
        "playground_rules_lab",
        "game_knights_tour",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Heuristik (Informatik) – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Heuristik_(Informatik)",
          "type": "article"
        }
      ]
    },
    {
      "id": "kante",
      "term": "Kante",
      "aliases": [],
      "short": "Die Verbindungslinie zwischen zwei Knoten in einem Graphen oder Suchbaum.",
      "long": "Eine Kante repräsentiert eine Beziehung oder einen Übergang. In einem Navigationssystem wäre der Knoten eine Stadt und die Kante die Autobahn dazwischen. In Spielen wie RotateBox repräsentiert eine Kante eine mögliche Aktion, z.B. 'Drehe das Spielfeld nach rechts'.",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "knoten",
        "suchbaum",
        "graph"
      ],
      "relatedResources": [
        "expedition_search_trees"
      ],
      "image": "ressources/glossary/node-edge-relationship.png",
      "externalLinks": [
        {
          "title": "Wikipedia: Kante (Graphentheorie)",
          "url": "https://de.wikipedia.org/wiki/Kante_(Graphentheorie)",
          "type": "article"
        }
      ]
    },
    {
      "id": "knoten",
      "term": "Knoten",
      "aliases": [],
      "short": "Ein einzelner Punkt oder Zustand innerhalb eines Graphen oder Suchbaums.",
      "long": "Stell dir einen Knoten wie eine Kreuzung auf einer Landkarte oder einen bestimmten Moment in einem Schachspiel vor. Im Kontext unserer Plattform repräsentiert ein Knoten immer ein exaktes 'Foto' des Spielfelds (z. B. in RotateBox). Die Verbindungen zum nächsten Knoten werden 'Kanten' (Edges) genannt.",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "kante",
        "suchbaum",
        "graph"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "challenge_chain_reaction"
      ],
      "image": "ressources/glossary/graph-nodes-edges.png",
      "externalLinks": [
        {
          "title": "Knoten in der Graphentheorie (Informatik)",
          "url": "https://de.wikipedia.org/wiki/Knoten_(Graphentheorie)",
          "type": "article"
        }
      ]
    },
    {
      "id": "lernrate",
      "term": "Lernrate",
      "aliases": [
        "Learning Rate",
        "Schrittweite"
      ],
      "short": "Ein Parameter, der bestimmt, wie große Schritte ein Neuronales Netz beim Lernen macht.",
      "long": "Die Lernrate ist wie der Gang beim Fahrrad: Zu große Schritte (hohe Lernrate) und man schießt über das Ziel hinaus, zu kleine Schritte (niedrige Lernrate) und man kommt ewig nicht an. Im Perzeptron-Playground kannst du die Lernrate selbst einstellen und beobachten, wie sie das Training beeinflusst.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "gradient",
        "neuronale-netze",
        "perceptron"
      ],
      "relatedResources": [
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Lernrate – Wikipedia (en)",
          "url": "https://en.wikipedia.org/wiki/Learning_rate",
          "type": "article"
        }
      ]
    },
    {
      "id": "minimax",
      "term": "Minimax-Algorithmus",
      "aliases": [
        "Minimax",
        "Min-Max"
      ],
      "short": "Ein Algorithmus für Zwei-Spieler-Spiele, der den Zug wählt, der den eigenen Gewinn maximiert und den Verlust minimiert.",
      "long": "Minimax denkt voraus: 'Wenn ich diesen Zug mache, was wird mein Gegner tun? Und was mache ich dann?' Er baut einen Spielbaum auf und bewertet jeden Endzustand. Der maximierende Spieler (Max) wählt den Zug mit dem höchsten Wert, der minimierende Spieler (Min) den mit dem niedrigsten. In unserer Minimax-Visualisierung kannst du dem Algorithmus live beim Denken zusehen.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "spielbaum",
        "alpha-beta-pruning",
        "bewertungsfunktion",
        "agent"
      ],
      "relatedResources": [
        "playground_minimax_viz",
        "expedition_minimax",
        "game_tictactoe"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Minimax-Algorithmus – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Minimax-Algorithmus",
          "type": "article"
        }
      ]
    },
    {
      "id": "neuronale-netze",
      "term": "Neuronales Netz",
      "aliases": [
        "KNN",
        "Neural Network",
        "Deep Learning"
      ],
      "short": "Ein KI-Modell, das aus vielen künstlichen Neuronen in Schichten besteht und durch Beispieldaten lernt.",
      "long": "Ein Neuronales Netz besteht aus einer Eingabeschicht, einer oder mehreren versteckten Schichten und einer Ausgabeschicht. Jedes Neuron ist im Grunde ein Perzeptron. Durch das Training mit Beispieldaten (z. B. Bildern von Katzen) werden die Gewichte so angepasst, dass das Netz Muster erkennt. 'Deep Learning' bedeutet, dass das Netz besonders viele versteckte Schichten hat. In unserem Perzeptron-Playground kannst du ein einfaches Netz live trainieren.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "perceptron",
        "aktivierungsfunktion",
        "gradient",
        "lernrate"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Künstliches neuronales Netz – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/K%C3%BCnstliches_neuronales_Netz",
          "type": "article"
        },
        {
          "title": "Neural Networks – 3Blue1Brown (Video)",
          "url": "https://www.youtube.com/watch?v=aircAruvnKk",
          "type": "video"
        }
      ]
    },
    {
      "id": "optimierung",
      "term": "Optimierung",
      "aliases": [],
      "short": "Der Prozess, aus vielen möglichen Lösungen die bestmögliche zu finden (z.B. den kürzesten Weg).",
      "long": "In der KI geht es fast immer um Optimierung. Ein Algorithmus versucht eine sogenannte 'Zielfunktion' entweder zu minimieren (z.B. Fehlerquote, Reisezeit, Kosten) oder zu maximieren (z.B. Spielpunkte, Genauigkeit). Techniken wie die Duplikaterkennung sind essenziell, um diese Optimierung überhaupt in vernünftiger Zeit berechnen zu können.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "heuristik",
        "bewertungsfunktion"
      ],
      "relatedResources": [
        "challenge_loop",
        "challenge_filter"
      ],
      "image": "ressources/glossary/optimization-chart.svg",
      "externalLinks": []
    },
    {
      "id": "perceptron",
      "term": "Perzeptron",
      "aliases": [
        "Perzeptron"
      ],
      "short": "Das einfachste künstliche Neuron – ein Baustein, der Eingaben gewichtet, aufsummiert und eine Entscheidung trifft.",
      "long": "Das Perzeptron wurde 1958 von Frank Rosenblatt erfunden und ist der Urgroßvater aller Neuronalen Netze. Es multipliziert jede Eingabe mit einem Gewicht, addiert alles auf und entscheidet über eine Aktivierungsfunktion: Ja oder Nein. Ein einzelnes Perzeptron kann nur linear trennbare Probleme lösen (z. B. AND, OR), aber nicht XOR – das Buch 'Perceptrons' von Minsky/Papert bewies diese Grenze 1969 und löste den ersten KI-Winter aus.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "neuronale-netze",
        "aktivierungsfunktion",
        "lernrate"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Perzeptron – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Perzeptron",
          "type": "article"
        }
      ]
    },
    {
      "id": "pruning",
      "term": "Pruning",
      "aliases": [],
      "short": "Das gezielte Abschneiden von Zweigen in einem Suchbaum, um die Suche effizienter zu machen.",
      "long": "Pruning ('Beschneiden') entfernt Teile des Suchbaums, die garantiert keine bessere Lösung liefern können. Alpha-Beta-Pruning ist das bekannteste Beispiel: Es erkennt, dass bestimmte Spielzüge nie gewählt werden würden, und spart sich die aufwendige Berechnung. Dadurch kann Minimax deutlich tiefer in den Spielbaum blicken und stärkere Züge finden.",
      "category": "algorithms",
      "difficulty": 3,
      "relatedTerms": [
        "alpha-beta-pruning",
        "minimax",
        "spielbaum",
        "optimierung"
      ],
      "relatedResources": [
        "playground_minimax_viz",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Pruning (Entscheidungsbaum) – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Pruning",
          "type": "article"
        }
      ]
    },
    {
      "id": "regelsystem",
      "term": "Regelsystem",
      "aliases": [],
      "short": "Ein KI-Ansatz, bei dem das Verhalten durch explizite Wenn-Dann-Regeln festgelegt wird.",
      "long": "Regelsysteme gehören zur klassischen Symbolischen KI. Statt aus Daten zu lernen, programmiert ein Mensch feste Regeln wie 'Wenn die Mitte frei ist, setze dorthin'. In unserem Regel-Labor kannst du solche Regeln selbst zusammenbauen und testen, wie gut dein regelbasierter Agent gegen den Minimax-Agenten abschneidet.",
      "category": "general-ai",
      "difficulty": 1,
      "relatedTerms": [
        "agent",
        "heuristik",
        "entscheidungsbaum"
      ],
      "relatedResources": [
        "playground_rules_lab"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Regelbasiertes System – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Regelbasiertes_System",
          "type": "article"
        }
      ]
    },
    {
      "id": "spielbaum",
      "term": "Spielbaum",
      "aliases": [
        "Game Tree"
      ],
      "short": "Ein spezieller Suchbaum, der alle möglichen Spielzüge und deren Folgen in einem Spiel darstellt.",
      "long": "Der Spielbaum ist ein Suchbaum speziell für Spiele: Jeder Knoten repräsentiert eine Spielsituation, jede Kante einen möglichen Zug. Bei TicTacToe hat der Spielbaum etwa 255.168 mögliche Spielverläufe. Der Minimax-Algorithmus durchsucht diesen Baum, um den besten Zug zu finden. Durch Alpha-Beta-Pruning kann man große Teile des Baums abschneiden, ohne die optimale Lösung zu verpassen.",
      "category": "data-structures",
      "difficulty": 2,
      "relatedTerms": [
        "suchbaum",
        "minimax",
        "alpha-beta-pruning"
      ],
      "relatedResources": [
        "playground_minimax_viz",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Spielbaum – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Spielbaum",
          "type": "article"
        }
      ]
    },
    {
      "id": "stack",
      "term": "Stapelspeicher (Stack)",
      "aliases": [
        "LIFO"
      ],
      "short": "Eine Datenstruktur nach dem Prinzip 'Zuletzt rein, zuerst raus' (LIFO - Last In, First Out).",
      "long": "Stell dir einen Stapel Teller vor: Du kannst nur den obersten Teller (den du als Letztes draufgelegt hast) wegnehmen. Die Tiefensuche (DFS) nutzt einen Stack, um sich zu merken, an welcher Abzweigung sie zuletzt war, damit sie dorthin zurückkehren (Backtracking) kann, wenn sie in einer Sackgasse landet.",
      "category": "data-structures",
      "difficulty": 2,
      "relatedTerms": [
        "queue",
        "tiefensuche",
        "backtracking"
      ],
      "relatedResources": [
        "expedition_search_trees"
      ],
      "image": "ressources/glossary/stack-lifo.gif",
      "externalLinks": [
        {
          "title": "Wikipedia: Stapelspeicher",
          "url": "https://de.wikipedia.org/wiki/Stapelspeicher",
          "type": "article"
        }
      ]
    },
    {
      "id": "suchbaum",
      "term": "Suchbaum",
      "aliases": [
        "Search Tree"
      ],
      "short": "Eine verzweigte Baumstruktur, in der eine KI alle möglichen Zukünfte (Entscheidungen) durchspielt, um die beste Lösung zu finden.",
      "long": "Ein Suchbaum ist das Kernwerkzeug der klassischen KI. Er startet an der Wurzel (dem aktuellen Zustand) und verzweigt sich mit jeder möglichen Aktion. Da die Anzahl der Äste exponentiell wächst, kann der Baum schnell gigantisch werden. Daher brauchen KIs Heuristiken oder Filter (wie Duplikaterkennung), um nicht in der Datenmenge zu ertrinken.",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "knoten",
        "kante",
        "wurzel",
        "blatt",
        "graph",
        "zustandsraum"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "playground_rotatebox_viz",
        "challenge_multiverse"
      ],
      "image": "ressources/glossary/search-tree-visualization.png",
      "externalLinks": [
        {
          "title": "Wikipedia: Suchbaum",
          "url": "https://de.wikipedia.org/wiki/Suchbaum",
          "type": "article"
        }
      ]
    },
    {
      "id": "tiefensuche",
      "term": "Tiefensuche",
      "aliases": [
        "DFS",
        "Depth-First Search"
      ],
      "short": "Ein Algorithmus, der einem einzigen Pfad so weit wie möglich nach unten folgt, bevor er umkehrt und andere Wege prüft.",
      "long": "Die Tiefensuche ist wie ein Mensch, der in einem Labyrinth stur an der rechten Wand entlangläuft. Sie speichert immer nur den aktuellen Pfad, weshalb sie sehr speichereffizient ist. Allerdings findet sie oft nicht die kürzeste Lösung, sondern einfach nur 'irgendeine', wenn sie sich nicht rechtzeitig begrenzt.",
      "category": "algorithms",
      "difficulty": 2,
      "relatedTerms": [
        "breitensuche",
        "suchbaum",
        "stack",
        "backtracking"
      ],
      "relatedResources": [
        "playground_rotatebox_viz",
        "challenge_boss_quiz"
      ],
      "image": "ressources/glossary/dfs-animation.gif",
      "externalLinks": [
        {
          "title": "Tiefensuche interaktiv visualisiert (VisuAlgo)",
          "url": "https://visualgo.net/en/dfsbfs",
          "type": "interactive"
        }
      ]
    },
    {
      "id": "queue",
      "term": "Warteschlange (Queue)",
      "aliases": [
        "FIFO"
      ],
      "short": "Eine Datenstruktur nach dem Prinzip 'Wer zuerst kommt, mahlt zuerst' (FIFO - First In, First Out).",
      "long": "Wie an der Supermarktkasse: Das Element, das als Erstes in die Warteschlange eingefügt wurde, wird auch als Erstes wieder herausgenommen. Die Breitensuche (BFS) nutzt intern eine Queue, um sicherzustellen, dass sie immer erst die ältesten, obersten Knoten im Baum abarbeitet, bevor sie in die Tiefe geht.",
      "category": "data-structures",
      "difficulty": 2,
      "relatedTerms": [
        "stack",
        "breitensuche"
      ],
      "relatedResources": [
        "expedition_search_trees"
      ],
      "image": "ressources/glossary/queue-fifo.gif",
      "externalLinks": [
        {
          "title": "Wikipedia: Warteschlange (Datenstruktur)",
          "url": "https://de.wikipedia.org/wiki/Warteschlange_(Datenstruktur)",
          "type": "article"
        }
      ]
    },
    {
      "id": "wurzel",
      "term": "Wurzel",
      "aliases": [],
      "short": "Der Startknoten ganz oben in einem hierarchischen Suchbaum.",
      "long": "Im Gegensatz zu echten Bäumen wachsen Suchbäume in der Informatik von oben nach unten. Die Wurzel ist der einzige Knoten, der keinen Vorgänger ('Elternteil') hat. Sie repräsentiert immer den initialen Startzustand eines Problems oder Spiels, von dem aus alle möglichen Zukünfte berechnet werden.",
      "category": "data-structures",
      "difficulty": 1,
      "relatedTerms": [
        "blatt",
        "suchbaum",
        "knoten"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "challenge_chain_reaction"
      ],
      "image": "ressources/glossary/tree-root.svg",
      "externalLinks": []
    },
    {
      "id": "zufall",
      "term": "Zufall",
      "aliases": [],
      "short": "Elemente der Unvorhersehbarkeit in Algorithmen, um festgefahrene Muster zu durchbrechen.",
      "long": "Viele moderne KI-Verfahren (wie Neuronale Netze) sind nicht streng 'deterministisch' (berechenbar identisch), sondern 'stochastisch' (zufallsbasiert). Ein kleiner Schuss Zufall hilft Algorithmen oft, neue Lösungswege zu entdecken und nicht in einer lokalen Sackgasse (Local Minimum) stecken zu bleiben.",
      "category": "general-ai",
      "difficulty": 1,
      "relatedTerms": [
        "agent"
      ],
      "relatedResources": [],
      "image": "ressources/glossary/dice-random.svg",
      "externalLinks": []
    },
    {
      "id": "zustandsraum",
      "term": "Zustandsraum",
      "aliases": [
        "State Space"
      ],
      "short": "Die Menge aller möglichen Zustände, die ein System (z. B. ein Spielfeld) annehmen kann.",
      "long": "Der Zustandsraum ist die Gesamtheit aller denkbaren Konfigurationen eines Problems. Bei RotateBox ist jeder Zustandsraum-Punkt eine bestimmte Anordnung der Kacheln. Der Suchbaum durchsucht einen Teil dieses Raums systematisch. Je größer der Zustandsraum, desto schwieriger wird es für die KI, die optimale Lösung zu finden.",
      "category": "data-structures",
      "difficulty": 2,
      "relatedTerms": [
        "suchbaum",
        "brute-force",
        "exponentiell"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "playground_rotatebox_viz"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Zustandsraum – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Zustandsraum",
          "type": "article"
        }
      ]
    },
    {
      "id": "neuron",
      "term": "Neuron",
      "aliases": [
        "Künstliches Neuron",
        "Artificial Neuron",
        "Unit"
      ],
      "short": "Die kleinste Recheneinheit in einem künstlichen neuronalen Netz – inspiriert von biologischen Nervenzellen.",
      "long": "Ein künstliches Neuron empfängt Eingaben, multipliziert sie mit Gewichten, addiert einen Bias und wendet eine Aktivierungsfunktion an. Das Ergebnis wird an die nächste Schicht weitergeleitet. Im Perceptron-Playground kannst du beobachten, wie einzelne Neuronen lernen, Datenpunkte zu klassifizieren.",
      "category": "machine-learning",
      "difficulty": 1,
      "relatedTerms": [
        "neuronale-netze",
        "perceptron",
        "aktivierungsfunktion",
        "gewicht",
        "bias"
      ],
      "relatedResources": [
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Künstliches Neuron – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/K%C3%BCnstliches_Neuron",
          "type": "article"
        }
      ]
    },
    {
      "id": "gewicht",
      "term": "Gewicht",
      "aliases": [
        "Weight",
        "Gewichte",
        "Kantengewicht"
      ],
      "short": "Ein numerischer Faktor, der bestimmt, wie stark ein Eingangssignal den Ausgang eines Neurons beeinflusst.",
      "long": "Gewichte sind die lernbaren Parameter eines neuronalen Netzes. Jede Verbindung zwischen zwei Neuronen hat ein Gewicht. Während des Trainings werden die Gewichte schrittweise angepasst, damit das Netz bessere Vorhersagen trifft. Im Perceptron-Playground siehst du, wie sich die Gewichte w₁ und w₂ verändern und damit die Entscheidungsgrenze verschieben.",
      "category": "machine-learning",
      "difficulty": 1,
      "relatedTerms": [
        "neuron",
        "bias",
        "lernrate",
        "gradient"
      ],
      "relatedResources": [
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Gewichtung (Neuronales Netz) – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/K%C3%BCnstliches_neuronales_Netz#Gewichte",
          "type": "article"
        }
      ]
    },
    {
      "id": "bias",
      "term": "Bias",
      "aliases": [
        "Schwellenwert",
        "Bias-Wert",
        "Threshold"
      ],
      "short": "Ein zusätzlicher Wert im Neuron, der die Entscheidungsgrenze verschiebt – unabhängig von den Eingaben.",
      "long": "Der Bias ist wie ein einstellbarer Schwellenwert: Er bestimmt, ab welchem Wert ein Neuron aktiviert wird. Ohne Bias könnte die Entscheidungsgrenze eines Perceptrons nur durch den Ursprung gehen. Mit Bias kann sie frei verschoben werden. Im Perceptron-Playground kannst du beobachten, wie der Bias-Wert die Trennlinie nach oben oder unten bewegt.",
      "category": "machine-learning",
      "difficulty": 1,
      "relatedTerms": [
        "neuron",
        "gewicht",
        "perceptron",
        "aktivierungsfunktion"
      ],
      "relatedResources": [
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Bias in neuronalen Netzen – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/K%C3%BCnstliches_neuronales_Netz#Bias",
          "type": "article"
        }
      ]
    },
    {
      "id": "backpropagation",
      "term": "Backpropagation",
      "aliases": [
        "Fehlerrückführung",
        "Rückwärtspropagierung",
        "Backprop"
      ],
      "short": "Das Standardverfahren, mit dem neuronale Netze aus Fehlern lernen – der Fehler wird rückwärts durch das Netz geleitet.",
      "long": "Backpropagation berechnet für jedes Gewicht, wie stark es zum Gesamtfehler beigetragen hat. Dazu wird der Fehler von der Ausgabeschicht Schicht für Schicht zurück zur Eingabe propagiert. Zusammen mit dem Gradientenabstieg werden die Gewichte dann in die Richtung angepasst, die den Fehler verkleinert. Dieses Verfahren hat die moderne KI erst möglich gemacht.",
      "category": "machine-learning",
      "difficulty": 3,
      "relatedTerms": [
        "gradient",
        "verlustfunktion",
        "lernrate",
        "neuronale-netze",
        "training"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Backpropagation – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Backpropagation",
          "type": "article"
        }
      ]
    },
    {
      "id": "verlustfunktion",
      "term": "Verlustfunktion",
      "aliases": [
        "Loss Function",
        "Kostenfunktion",
        "Cost Function",
        "Fehlerfunktion"
      ],
      "short": "Misst, wie weit die Vorhersage des Netzes vom gewünschten Ergebnis entfernt ist.",
      "long": "Die Verlustfunktion (Loss Function) gibt dem Netz eine Zahl, die angibt, wie schlecht es gerade ist. Das Ziel des Trainings ist es, diesen Wert zu minimieren. Gängige Verlustfunktionen sind Mean Squared Error (MSE) für Regression und Cross-Entropy für Klassifikation. Im Perceptron-Playground kannst du den Loss-Wert in Echtzeit sinken sehen.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "optimierung",
        "gradient",
        "backpropagation",
        "training"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Verlustfunktion – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Verlustfunktion_(Statistik)",
          "type": "article"
        }
      ]
    },
    {
      "id": "training",
      "term": "Training",
      "aliases": [
        "Trainingsphase",
        "Lernphase",
        "Model Training"
      ],
      "short": "Der Prozess, bei dem ein KI-Modell aus Daten lernt, indem es seine Parameter schrittweise verbessert.",
      "long": "Beim Training werden dem Modell wiederholt Beispiele gezeigt. Es macht eine Vorhersage, vergleicht sie mit dem richtigen Ergebnis (via Verlustfunktion) und passt seine Gewichte an (via Backpropagation und Gradientenabstieg). Dieser Vorgang wird über viele Epochen wiederholt, bis das Modell gut genug ist. Im Perceptron-Playground kannst du das Training in Echtzeit beobachten.",
      "category": "machine-learning",
      "difficulty": 1,
      "relatedTerms": [
        "lernrate",
        "backpropagation",
        "verlustfunktion",
        "optimierung"
      ],
      "relatedResources": [
        "playground_perceptron",
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Überwachtes Lernen – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/%C3%9Cberwachtes_Lernen",
          "type": "article"
        }
      ]
    },
    {
      "id": "algorithmus",
      "term": "Algorithmus",
      "aliases": [
        "Algorithm",
        "Rechenvorschrift",
        "Verfahren"
      ],
      "short": "Eine eindeutige Schritt-für-Schritt-Anleitung zur Lösung eines Problems.",
      "long": "Ein Algorithmus ist wie ein Kochrezept für den Computer: eine exakte Folge von Anweisungen, die bei gleicher Eingabe immer zum gleichen Ergebnis führt. In unserer Plattform begegnest du vielen Algorithmen: Minimax durchsucht Spielbäume, Breitensuche und Tiefensuche explorieren Graphen, und der Gradientenabstieg optimiert neuronale Netze.",
      "category": "algorithms",
      "difficulty": 1,
      "relatedTerms": [
        "minimax",
        "breitensuche",
        "tiefensuche",
        "heuristik"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Algorithmus – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Algorithmus",
          "type": "article"
        }
      ]
    },
    {
      "id": "komplexitaet",
      "term": "Komplexität",
      "aliases": [
        "Complexity",
        "Rechenkomplexität",
        "Zeitkomplexität"
      ],
      "short": "Ein Maß dafür, wie stark der Rechenaufwand eines Algorithmus mit der Problemgröße wächst.",
      "long": "Komplexität beschreibt, wie viele Rechenschritte ein Algorithmus im schlimmsten Fall benötigt. Bei Suchbäumen wächst die Anzahl der Knoten exponentiell mit der Tiefe – deshalb kann Brute-Force bei großen Spielen wie Schach nicht funktionieren. Die Komplexitätstheorie hilft uns zu verstehen, warum Heuristiken und Pruning so wichtig sind.",
      "category": "math",
      "difficulty": 2,
      "relatedTerms": [
        "exponentiell",
        "brute-force",
        "pruning",
        "heuristik",
        "algorithmus"
      ],
      "relatedResources": [
        "expedition_search_trees",
        "expedition_minimax"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Komplexitätstheorie – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Komplexit%C3%A4tstheorie",
          "type": "article"
        }
      ]
    },
    {
      "id": "hidden-layer",
      "term": "Hidden Layer",
      "aliases": [
        "Versteckte Schicht",
        "Verborgene Schicht"
      ],
      "short": "Eine Schicht im neuronalen Netz zwischen Ein- und Ausgabe, die Muster und Merkmale aus den Daten extrahiert.",
      "long": "Hidden Layers sind die 'Geheimwaffe' neuronaler Netze. Jede versteckte Schicht transformiert die Daten in eine neue Darstellung und lernt dabei zunehmend komplexe Muster. Ein Netz ohne Hidden Layer (wie ein einzelnes Perzeptron) kann nur lineare Zusammenhänge erkennen. Schon ein einzelner Hidden Layer mit genug Neuronen kann theoretisch jede Funktion approximieren. Im NN-Playground siehst du: Zu wenige Neuronen = das Netz kann nichts lernen, zu viele = Overfitting-Gefahr.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "neuronale-netze",
        "perceptron",
        "neuron",
        "topologie"
      ],
      "relatedResources": [
        "playground_nn_ttt",
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": []
    },
    {
      "id": "softmax",
      "term": "Softmax",
      "aliases": [
        "Softmax-Funktion",
        "Normalisierte Exponentialfunktion"
      ],
      "short": "Eine Aktivierungsfunktion, die rohe Netzausgaben in Wahrscheinlichkeiten umrechnet (alle Werte summieren sich zu 1).",
      "long": "Softmax nimmt einen Vektor beliebiger Zahlen und verwandelt ihn in eine Wahrscheinlichkeitsverteilung. Im NN-Playground wird Softmax in der Ausgabeschicht verwendet: Die 9 Ausgabeneuronen liefern jeweils die geschätzte Wahrscheinlichkeit, dass das jeweilige Feld der beste nächste Zug ist. Große Werte werden exponentiell verstärkt, sodass das Netz eine klare Präferenz zeigt.",
      "category": "machine-learning",
      "difficulty": 3,
      "relatedTerms": [
        "aktivierungsfunktion",
        "neuronale-netze",
        "verlustfunktion"
      ],
      "relatedResources": [
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Softmax-Funktion – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/Softmax-Funktion",
          "type": "article"
        }
      ]
    },
    {
      "id": "supervised-learning",
      "term": "Überwachtes Lernen",
      "aliases": [
        "Supervised Learning",
        "Lernen mit Lehrer"
      ],
      "short": "Ein Lernverfahren, bei dem das Modell aus Beispielen mit bekannten richtigen Antworten lernt.",
      "long": "Beim überwachten Lernen bekommt das Modell Paare aus Eingabe und gewünschter Ausgabe (Labels). Es lernt, die Eingaben den richtigen Ausgaben zuzuordnen. Im NN-Playground werden Spielsituationen (9 Felder) als Eingabe verwendet und der optimale Minimax-Zug als Label. Das Netz lernt also aus 'perfekten Beispielen', welcher Zug in welcher Situation am besten ist.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "training",
        "verlustfunktion",
        "backpropagation",
        "neuronale-netze"
      ],
      "relatedResources": [
        "playground_nn_ttt",
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Überwachtes Lernen – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/%C3%9Cberwachtes_Lernen",
          "type": "article"
        }
      ]
    },
    {
      "id": "topologie",
      "term": "Topologie",
      "aliases": [
        "Netzwerk-Architektur",
        "Network Topology",
        "Netzstruktur"
      ],
      "short": "Die Anordnung und Anzahl der Schichten und Neuronen in einem neuronalen Netz.",
      "long": "Die Topologie bestimmt die 'Bauplan' des Netzes: Wie viele Schichten gibt es? Wie viele Neuronen pro Schicht? Im NN-Playground testest du verschiedene Topologien und erlebst, wie sie das Lernverhalten beeinflussen. Eine [9,36,9]-Topologie hat 9 Eingabe-, 36 Hidden- und 9 Ausgabeneuronen. Die Kunst liegt darin, die richtige Balance zu finden: genug Kapazität zum Lernen, aber nicht so viel, dass Overfitting entsteht.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "hidden-layer",
        "neuronale-netze",
        "overfitting"
      ],
      "relatedResources": [
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": []
    },
    {
      "id": "overfitting",
      "term": "Overfitting",
      "aliases": [
        "Überanpassung",
        "Übertraining"
      ],
      "short": "Wenn ein Modell die Trainingsdaten auswendig lernt, statt allgemeine Muster zu erkennen.",
      "long": "Overfitting tritt auf, wenn ein Modell zu viele Parameter hat oder zu lange trainiert wird. Es lernt dann nicht nur die eigentlichen Muster, sondern auch das Rauschen in den Daten. Das Ergebnis: Es funktioniert perfekt auf Trainingsdaten, versagt aber bei neuen Situationen. Im NN-Playground siehst du das beim 'Overkill'-Preset: 3×64 Neuronen können alle Trainingspositionen auswendig lernen, verallgemeinern aber schlecht.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "training",
        "topologie",
        "neuronale-netze"
      ],
      "relatedResources": [
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": [
        {
          "title": "Überanpassung – Wikipedia",
          "url": "https://de.wikipedia.org/wiki/%C3%9Cberanpassung",
          "type": "article"
        }
      ]
    },
    {
      "id": "epoche",
      "term": "Epoche",
      "aliases": [
        "Epoch",
        "Trainingsepoche"
      ],
      "short": "Ein vollständiger Durchlauf durch alle Trainingsdaten – das Modell sieht jedes Beispiel genau einmal.",
      "long": "Eine Epoche bedeutet, dass das Netz alle Trainingsbeispiele einmal gesehen hat. Typischerweise braucht ein Netz viele hundert oder tausend Epochen, bis es gut gelernt hat. Im NN-Playground siehst du den Epochenzähler in der Toolbar ansteigen. Dabei sinkt idealerweise der Verlust (Loss) kontinuierlich. Mehr Epochen = mehr Übung, aber irgendwann droht Overfitting.",
      "category": "machine-learning",
      "difficulty": 1,
      "relatedTerms": [
        "training",
        "verlustfunktion",
        "overfitting"
      ],
      "relatedResources": [
        "playground_nn_ttt",
        "playground_perceptron"
      ],
      "image": null,
      "externalLinks": []
    },
    {
      "id": "forward-pass",
      "term": "Forward Pass",
      "aliases": [
        "Vorwärtsdurchlauf",
        "Vorwärtspropagierung",
        "Inference"
      ],
      "short": "Der Weg der Daten von der Eingabe durch alle Schichten zur Ausgabe – das Netz 'denkt nach'.",
      "long": "Beim Forward Pass fließen die Eingabedaten durch das gesamte Netz: Jedes Neuron berechnet seine gewichtete Summe, wendet die Aktivierungsfunktion an und gibt das Ergebnis weiter. Am Ende kommt eine Vorhersage heraus. Im NN-Playground ist das der sichtbare Datenfluss von links (Spielfeld) nach rechts (Zugvorhersage). Nach dem Forward Pass kommt beim Training der Backward Pass (Backpropagation), um die Gewichte zu verbessern.",
      "category": "machine-learning",
      "difficulty": 2,
      "relatedTerms": [
        "backpropagation",
        "neuronale-netze",
        "aktivierungsfunktion",
        "hidden-layer"
      ],
      "relatedResources": [
        "playground_nn_ttt"
      ],
      "image": null,
      "externalLinks": []
    }
  ]
};