Entscheidungsbäume – KI in der Schule

Im aktuellen Lehrplan von Bayern für Gymnasien im Fach Informatik hat die KI Einzug erhalten in der Oberstufe. Das Entscheidungsbaum-Projekt war eine Art Machbarkeitsstudie, ob es möglich ist, Entscheidungsbäume mit Schülern im Unterricht zu implementieren. Spoiler-Alarm: NEIN, das ist viel zu kompliziert. Dennoch ein interessantes Projekt für Kollegen oder leistungsstarke Schüler, die sich in eine praktische Umsetzung des Lernstoffs reinarbeiten/lesen wollen.

Der Entscheidungsbaum kann mit beliebigen gelabelten Daten umgehen – es muss "nur" eine SQLite-Datenbank erstellt werden und in der Connect-Klasse der Name der Datenbank, der Tabelle und der Spalten angegeben werden. Das Projekt enthält zwei verschiedene Datenbanken.

Iris-Blumen-Datensatz

Die erste Datenbank enthält einen modifizierten Datensatz zu den Iris-Blumen. Es gibt drei unterschiedliche Sorten der Blumengattung Iris. Bei insgesamt 150 Blumen wurde jeweils die Länge und Breite der Kelchblätter und der Blütenblätter gemessen und gespeichert, um welche Sorte es sich handelt. Da diese Entscheidungsbaum-Implementierung keine eigenen Zahlbereiche herauszufinden vermag, wurde der Datensatz verändert: Zu jeder Blume und jedem der vier Attribute wurde gespeichert, ob es "klein", "normal" oder "breit" ausgeprägt ist.

Der Entscheidungsbaum lernt sich anhand dieser Daten selbstständig, mithilfe der Merkmalsausprägungen zu entscheiden, um welche Iris-Sorte es sich bei dieser Blume handelt. Das Projekt kann hier inklusive aller Quelltexte heruntergeladen werden.

Demo & Testergebnisse

Fisch-Datensatz

Die zweite Datenbank enthält zwei Tabellen: eine mit einem großen Datensatz von Fischen und eine mit einem kleinen Datensatz. Der Entscheidungsbaum lernt aus Attributen wie Schuppenfarbe und Muster, zu entscheiden, ob es sich um einen friedlichen oder einen feindseligen Fisch handelt. Beide Datensätze wurden aus dem Begleitmaterial zur Fortbildung zum Thema KI entnommen und von Dr. Wolfgang Pfeffer und Tobias Fuchs entwickelt.

Zusatzinfo

Die Connect-Klasse kann auch verwendet werden, um von Java aus auf eine x-beliebige SQLite-Datenbank zuzugreifen.