Fähigkeiten

Wie beginnt man mit AI? Wo ist der Startpunkt? Es gibt unterschiedliche Antworten auf diese Frage. Als Softwareentwickler müssen Sie zum Beispiel eine Funktion zur Detektion von Gesichtern implementieren und wollen sich über verfügbare Umsetzungsmöglichkeiten informieren. Als ProjektleiterIn wollen Sie wissen, worauf Sie in AI-basierten Projekten aufpassen müssen und welche Aspekte von Relevanz sind.

Abhängig von Ihrem Schwerpunkt können Sie die Plattform AIAV unterschiedlich nutzen. Sollten Sie Interesse an konkreten Methoden haben, können Sie direkt die Methodendatenbank nutzen. Wollen Sie sich durch unsere praktisch validierten Use-Cases inspirieren lassen, können sie das in der Use-Case-Datenbank machen.

Möchten Sie sich ein ganzheitliches Bild über das Potenzial und die Fähigkeiten von AI machen, können Sie die nachfolgenden sechs Unterkapitel nutzen, um einen besseren Überblick zu gewinnen. Basierend auf der Gliederung nach Russel („Artificial Intelligence: A Modern Approach”, 2016) haben wir für Sie AI-Fähigkeiten aufgeschlüsselt und mit den zugehörigen Videos erweitert.

Die Fähigkeit nach einer Lösung zu suchen ist eine der ältesten AI-Fähigkeiten. Diese Fähigkeit setzt auf Datenstrukturen auf und ist für nicht IT-versierte Personen häufig schwer verständlich. Worum geht es im Kern von Suchalgorithmen?

Das Ziel ist es, möglichst effizient und zielgerichtet eine Lösung für ein Problem zu suchen. Das kann man sich wie einen Spaziergang durch ein Labyrinth vorstellen. Wir beginnen an einem bestimmten Punkt und brauchen eine Strategie, um das Ziel zu erreichen. Es gibt viele mehr oder weniger intelligente Wege, um durch dieses Labyrinth zu kommen, wobei sich folgende Fragen stellen: Haben wir eine Metrik, die uns eine Aussage über die Qualität unserer Bewegung im Labyrinth erlaubt? Sind wir mit einem Schritt nun näher ans Ziel gekommen oder weiter davon entfernt? Solche Metriken nennt man Heuristik. Worin liegt nun die Komplexität, wenn man die Fähigkeit „Suchen“ für eigene Probleme anwenden möchte?

Der erste Schritt ist, zu erkennen, ob das angedachte Problem überhaupt mit „Suchen“ gelöst werden kann. Lässt sich aus dem Problem ein Suchspiel (also ein Labyrinth) machen? Klassische Beispiele hierfür wären Pfadplanungsprobleme in der Robotik oder Schachspiele. Beim Pfadplanungsproblem ist die Umwandlung des Problems in ein Labyrinth offensichtlich – bei einem Schachspiel nicht. Sie können sich dieses Labyrinth so vorstellen: Der Startpunkt des Labyrinths ist der Ausgangspunkt eines jeden Schachspiels. Die Figuren stehen in ihrer Ausgangsposition und jede mögliche Bewegung jeder Figur ist nun ein einzelner Schritt in eine andere Richtung des virtuellen Labyrinths. Sie sehen: dieses virtuelle Labyrinth wird sehr schnell sehr groß.

Es ist die Mächtigkeit der Such-algorithmen, die ein systematisches Durchsuchen dieses riesigen Labyrinths erst möglich macht. Im nachfolgenden Video bekommen Sie einen Einblick in die Problemlösung durch Suchen.

Jeder von uns war – wenn auch nur unbewusst – schon mit AI in Berührung. Sei es über Science-Fiction-Filme oder „Data“, den humanoiden Roboter aus der Serie „Star Trek“. Als klassisches Beispiel im menschlichen Kontext wäre Sherlock Holmes zu nennen – er versucht Probleme durch logisches Schlussfolgern zu lösen. Die Herausforderung ist nun, wie diese Fähigkeit auf Maschinen umgelegt werden kann. Was benötigt man dazu und wie wird das real eingesetzt? Erinnern wir uns zurück – wie hat „Data“ geschlussfolgert? Er nutzt eine Repräsentation der „Welt“ (oder des Universums in „Star Trek“) und gesammelte Daten.

Ähnlich funktioniert es auch mit der AI – wir nutzen eine Wissensrepräsentation und logische Zusammenhänge, um Probleme zu lösen.

Darauf aufbauend stellt sich die Frage: wie kann man menschliches Wissen formalisieren? Das geschieht über sogenannte Ontologien – diese werden im folgenden Video kurz erklärt.

Eine wichtige Frage bleibt offen: Wenn wir die Welt mit Logik beschreiben können und es sogar bestehende Tools gibt, um reale Probleme lösen zu können – warum ist AI bis heute immer noch „Forschung“? Warum haben Roboter nicht schon die Welt erobert? Warum kann ein humanoider Roboter noch immer nicht sinnvoll mit mir reden?

Die Antwort darauf ist (leider) ganz einfach: die Welt folgt meistens nicht logischen Regeln und lässt sich daher nur schwer durch Logik beschreiben. Wann können wir sie also nicht verwenden? Das ist der Fokus des nächsten Moduls.

Im vorhergehenden Modul haben wir Logik als eine Grundfähigkeit der AI kennengelernt. Warum diese häufig nicht ausreicht, ist am einfachsten mit einem Beispiel erklärt. In Zeiten einer weltweiten Pandemie sitzen Sie vielleicht – wie der Autor dieses Beitrags – vor einem Computer und haben nur ein Fenster nach draußen. Gerade jetzt ist es wichtig für die Gesundheit, auch regelmäßig Sport zu treiben. Da das besagte Fenster nur eingeschränkte Sicht erlaubt, kann sich der Autor nur auf die Optik der paar sichtbaren Quadratmeter Beton berufen. Ist der Beton nass oder trocken? Kann ich jetzt joggen gehen oder regnet es? Wie würden wir diese Problemstellung mit Logik formulieren? Wenn der Beton nass ist, regnet es? Was passiert, wenn wir wissen, dass die Rasenbewässerung bis zur Betonfläche reicht?

In diesem Beispiel erkennen Sie, dass wir keine Wahr/Falsch- oder Ja/Nein-Antwort berechnen können. Wir müssen mit Wahrscheinlichkeiten arbeiten: Wie hoch ist die Wahrscheinlichkeit, dass es regnet, basierend auf dem Wissen, das wir gesammelt haben? Konkret wäre es hier unser „Sensorwert“ (wir sehen die Betonfläche) und weitere Daten wie Jahreszeit oder der Wetterbereich, der am vorhergehenden Tag in der Zeitung stand. Der Umgang mit unsicherem Wissen ermöglicht uns flexibler auf reale Daten eingehen zu können.

Es existiert ein „Tool“, welches dieses unsichere Verhalten der Realität beschreiben kann: die Statistik! In diesem Video hören Sie eine kurze Einführung in die Thematik.

In der Technik verwendet man unsicheres Wissen für die Lokalisierung von mobilen Robotern basierend auf Sensordaten. Hier wird ein Modell der physikalischen Bewegung bzw. der Sensorunsicherheit genutzt und geschätzt, wo sich der Roboter zu einem bestimmten Zeitpunkt befinden wird. Aber warum schätzen? Weil es eine Reihe an Faktoren gibt, die Einfluss auf das Endergebnis nehmen können: Beispielsweise können Räder durchrutschen, wodurch identische Fahrbefehle in unterschiedlichen Bewegungen resultieren. Darüber hinaus sind alle Sensorwerte mit einem gewissen Messfehler behaftet, was wiederum zu Abweichungen führen kann. Man versucht nun diese Abweichungen möglichst genau zu beschreiben – und zwar mit Statistik. Abgesehen von solchen Problemen haben wir im Video gesehen, dass alle Sensoren und die Umgebung, in der wir uns befinden, „unsicher“ sind. Das Akzeptieren dieser Unsicherheiten und das Evaluieren in der eigenen Anwendung führt zu einem Umdenken: Müssen wir mit Statistik arbeiten oder reicht Logik?

In vielen realen Fällen hat sich gezeigt, dass Logik nicht reicht und Statistik herangezogen werden muss. Die Fähigkeit, mit unsicherem Wissen umgehen zu können, ist die entscheidende Grundfähigkeit für die weiteren Module „Lernen“ und „Wahrnehmen und Handeln“.

Im vorhergehenden Modul haben wir die Notwendigkeit von Statistik kennengelernt. Wir haben gehört, dass reale Probleme mit Unsicherheit behaftet sind. Gleichzeitig haben wir bei AI ein Ziel: wir wollen, dass ein „Ding“ lernt, Probleme zu lösen – diese Probleme können für Menschen leicht lösbar, aber auch sehr komplex sein. Letztendlich gilt es, Prozesse zu automatisieren. Typische Beispiele wären das Erkennen von Objekten in Bildern oder das Verstehen von gesprochener Sprache. Wir wollen also, dass eine Maschine versteht, welche Pixel repräsentativ für ein Objekt sind oder welches analoge Audiosignal für welches Wort steht.

Die Fähigkeit „Lernen“ kann also verwendet werden, um einer Maschine etwas beizubringen. Dabei gibt es unterschiedliche Philosophien. Beginnen wir zunächst, uns mit den Prinzipien des Lernens auseinanderzusetzen. Was bedeutet Lernen? Welche Arten von Lernen gibt es?

Jetzt wissen wir, dass es unterschiedliche Lernarten gibt. Aber wie ist das für eine Applikation anwendbar? Welche Probleme können wir „lernen“? In den folgenden drei Videos sehen Sie simple Beispiele für die drei Lernarten:​

Das Lernen in Interaktion mit der Umgebung:

Reinforcement Learning

Das Lernen mit Coach:

Supervised Learning

Das Lernen ohne Coach:

Unsupervised Learning

Für viele Anwendungen wollen wir menschenähnliches Verhalten erzeugen. Beispielsweise sollen Bilder interpretiert werden – das baut, wie auch beim Menschen, auf der Fähigkeit „Lernen“ auf. Wir wollen mit Maschinen Sprache verstehen und Anwendungen durch eine Kooperation mit Robotern erleichtern. Die Interaktion mit der Realität (besonders mit Maschinen) ist häufig nicht eindeutig.

Es ist also eine „Intelligenz“ nötig, die basierend auf wahrgenommenen Informationen richtiges Handeln ableitet. Diese Komplexität wird im Video erklärt.

Die Robotik dient der Interaktion mit der Umgebung. Hierbei muss man unterscheiden: Wann ist ein Roboter intelligent und wann arbeitet er nur vordefinierte Befehle ab? In einer Fertigungsstraße haben Industrieroboter wenig Intelligenz – obwohl die Applikation auf den ersten Blick sehr intelligent und hochkomplex wirkt. Auf der anderen Seite kann ein mobiler Roboter in einer Fabrik sehr intelligent sein, wenn er selbstständig Sensordaten fusioniert und Entscheidungen trifft. Für Personen mit wenig Erfahrung im Bereich AI ist es häufig schwierig, intelligente Systeme von künstlicher Intelligenz zu unterscheiden.

Besonders in industrieller Umgebung: warum mit AI arbeiten, wenn klassische Robotik zu einer robusteren Lösung führt?

SUCHEN
WISSENSREPRÄSENTATION
& LOGIK
UNSICHERES WISSEN
LERNEN
WAHRNEHMEN & HANDELN
ROBOTIK
 
 
 
 
 
 

Das waren die von uns "willkürlich" und überlappend definierten AI-Fähigkeiten. Die nächste Frage ist nun: Wie können wir z.B. "lernen" anwenden? Dazu müssen wir uns mit Methoden der AI beschäftigen, die die Fähigkeiten implementieren.