TensorFlow 2 mit GPU Unterstützung unter Windows einrichten

Nach dem ich meinen neuen PC mit NVIDIA Grafikkarte an den Start gebracht hatte, wollte ich auch die GPU der Grafikkarte für das Machine Learning in TensorFlow verwenden. Hat sich aber herausgestellt das das unter Windows leider nicht ganz so einfach ist – eher das Gegenteil.

Es war jedenfalls mal wieder ein richtiges Download- und Installationsgemetzel. Daher hier meine „Lessons learned“ – eine ausführliche Anleitung wie man TensorFlow 2 mit GPU Unterstützung unter Windows zum Laufen bekommt.

Meine Zielumgebung:

  • NVIDIA GeForce RTX 2070 Grafikkarte
  • Windows 10
  • TensorFlow 2.4
  • Python 3.8 mit Jupyter Notebook
TensorFlow 2 mit GPU Unterstützung unter Windows einrichten weiterlesen

Alma Bot – ein deutschsprachiger TJBot-Roboter

Alma basiert auf IBM TJBot, einem Open-Source Robotik-Projekt, über das Dienste der künstlichen Intelligenz auf einfache und lustige Weise ausprobiert werden können. So ein TJBot kann als 3D Druck oder als Laser Cut selber hergestellt werden und mit einem der verfügbaren Beispiele zum Leben erweckt werden.

Alma ist eine deutschsprachige Variante solch eines Beispiels und verwendet dazu die deutschsprachige Version der folgenden IBM Watson Services aus dem Bereich der künstlichen Intelligenz:

  • IBM Speech To Text: Wandelt die Sprachbefehle in Text um (Almas Ohren).
  • IBM Watson Assistant: Erkennt aus dem Text, was Alma genau tun soll, gibt eine entsprechende Antwort und kann ggf. Rückfragen stellen, wenn etwas unklar ist (Almas Gehirn).
  • IBM Text To Speech: Wandelt die Antwort vom Watson Assistant in Sprache um (Almas Mund).
  • IBM Visual Recognition: Erkennt Gegenstände in dem von der Kamera aufgenommenen Bild (Almas Augen).

Hier ein Beispiel was Alma so alles kann (bitte Lautstärke aufdrehen):

https://youtu.be/hSWbMVd4BS0
Alma Bot – ein deutschsprachiger TJBot-Roboter weiterlesen

Erste Schritte mit Watson Studio

Watson Studio ist eine IBM Cloud Umgebung mit der Machine Learning Modelle und ganze KI Anwendungen erstellt, trainiert, verwaltet und eingerichtet werden können.

Watson Studio stellt ein Bündel von verschiedenen Werkzeugen zur Verfügung, wie z.B. Jupyter Notebooks oder IBM SPSS, und ermöglicht dadurch Data Scientists, Anwendungsentwickler und Fachbereichsbenutzer gemeinsam mit Daten zu arbeiten und diese zu analysieren.

Was ich persönlich sehr cool finde ist das Watson Studio den Einstieg in das Thema Machine Learning so einfach gestaltet. Ich kann loslegen und meinen ersten eigenen Modelle trainieren ohne der TensorFlow oder Apache Spark Experte zu sein. Für erfahrene Benutzer wird beides auch unterstützt, aber es ist eben nicht zwingende Voraussetzung für den Einstieg.

In diesem Tutorial möchte ich erste Schritte mit Watson Studio vorstellen, von der Einrichtung bis zur Erstellung eines ersten Machine Learning Modells.

Erste Schritte mit Watson Studio weiterlesen

Watson Knowledge Studio auf Bluemix

IBM Watson Knowledge Studio ist seit kurzem auf Bluemix Experimental verfügbar.

Über Watson Knowledge Studio (WKS) können wir den verschiedenen Watson Services beibringen wie domänenspezifische Begriffe und Zusammenhänge in unstrukturiertem Text interpretiert werden können.

Was sind die Vorteile des Umzugs auf Bluemix? Wie sieht die neue Version aus?

Watson Knowledge Studio auf Bluemix weiterlesen

Machine Learning Textanalyse in der Cloud

Nach dem wir in den vorherigen Teilen dieser Serie über maschinelles Lernen mit WKS ein Textanalysemodell trainiert haben, möchte ich in diesem Artikel beschreiben wie wir dieses Modell nun in den verschiedenen IBM Watson Diensten anwenden können um damit eine große Anzahl von Texten zu verstehen.

Für das maschinelle Lernen selbst haben wir IBM Watson Knowledge Studio (WKS) verwendet. Watson Knowledge Studio bietet uns einen intuitiven Weg Expertenwissen vom Menschen auf ein Textanalysemodell zu übertragen.

Das fertig trainierte Textanalysemodell können wir nun in verschiedenen IBM Watson Diensten einsetzen. Unser System hat gelernt was für uns wichtige Begriffe und Zusammenhänge sind und kann dieses Wissen auf eine große Menge von neuen Inhalten anwenden, diese lesen und verstehen und die für uns wichtigen Informationen extrahieren.

Und das natürlich viel schneller als wenn wir selbst jeden dieser Texte lesen müssten.

Dazu können wir entweder cloudbasierte Dienste verwenden oder wir können die Verarbeitung auch komplett „On Premise“ auf einer eigenen Infrastruktur laufen lassen.

Machine Learning Textanalyse in der Cloud weiterlesen

Machine Learning Modell trainieren mit Watson Knowledge Studio

IBM Watson Knowledge Studio (WKS) bietet uns einen intuitiven Weg Expertenwissen vom Menschen auf eine Maschine zu übertragen.

Nach dem die Fachexperten die relevanten Begriffe und Zusammenhänge in den Trainingsdokumenten markiert haben können wir über Watson Knowledge Studio mit diesem Grundwissen ein Modell trainieren (überwachtes maschinelles Lernen / supervised machine learning).

Im diesem Artikel möchte ich beschreiben wie das maschinelle Lernen in WKS funktioniert und wie wir das trainierte Modell überprüfen und verbessern können.

Machine Learning Modell trainieren mit Watson Knowledge Studio weiterlesen

Wissenstransfer vom Mensch zur Maschine mit IBM Watson Knowledge Studio

IBM Watson Knowledge Studio (WKS) bietet uns einen intuitiven Weg Expertenwissen vom Menschen auf eine Maschine zu übertragen.

Dieser Wissenstransfer findet statt in dem die Fachexperten in Beispieldokumenten die wichtigen Begriffe und Zusammenhänge markieren. Ähnlich wie wenn man mit einem Textmarker durch einen Text geht und die wichtigen Stellen farblich hervorhebt. In WKS wird dieser Schritt „Human Annotation“ genannt.

Ergebnis dieser Annotationen ist das sogenannte „Ground Truth“, das Grund- oder Basiswissen für unser System.

Mit diesem Grundwissen wird dann ein Modell trainiert (überwachtes maschinelles Lernen / supervised machine learning). Das System lernt die wichtigen Begriffe und ihre Zusammenhänge im Text zu erkennen und kann dieses gelernte Wissen dann auf neue, unbekannte Texte anwenden.

In diesem Artikel beschreibe ich wie wir in Watson Knowledge Studio dieses Grundwissen für unser System erstellen können.

Wissenstransfer vom Mensch zur Maschine mit IBM Watson Knowledge Studio weiterlesen

Entwurf eines Typsystems in IBM Watson Knowledge Studio

Der erste Schritt in einem Textanalyseprojekt mit IBM Watson Knowledge Studio (WKS) sollte der Entwurf eines Typsystems sein.

Das Typsystem beschreibt welche Begriffe (Entitäten) und welche Zusammenhänge (Relationen) später durch das trainierte Modell aus dem Text extrahiert werden sollen.

Eine der grundlegenden Voraussetzungen um ein Typsystem zu entwerfen ist es  die fachliche Domäne und das Geschäftsproblem des Kunden zu verstehen.

Daher sind am Anfang eines WKS Projektes in Zusammenarbeit mit dem Kunden ein paar grundlegende Fragen zu klären:

  • Welche Informationen sollen aus den Texten extrahiert werden?
  • Können diese Informationen dazu beitragen das Geschäftsproblem des Kunden zu lösen?
  • Sind diese Informationen überhaupt in den zu analysierenden Texten enthalten?
  • Kann eine ausreichende Anzahl von relevanten Beispieltexten für das Training bereitgestellt werden?

Entwurf eines Typsystems in IBM Watson Knowledge Studio weiterlesen

Maschinelles Lernen in der Praxis: IBM Watson Knowledge Studio

Eines der interessanten neuen Werkzeuge die ich in meinem täglichen Arbeitsleben verwende ist das IBM Watson Knowledge Studio.

Mit dem Watson Knowledge Studio (kurz WKS) können wir domänenspezifisches Expertenwissen in eine für lernende Systeme verständliche Form bringen. Auf Basis dieses Wissen trainieren wir dann einen Algorithmus – Maschinelles Lernen – der dieses Wissen auf neuen, unbekannten Texten anwenden kann.

Ich kann damit also der Maschine beibringen welche Begriffe und Zusammenhänge in einem Text wichtig für mich sind. Ausgestattet mit diesem Wissen kann die Maschine dann zum Beispiel in sekundenschnelle tausende von Seiten für mich lesen und analysieren und mir gezielt die für mich relevanten Informationen präsentieren.

Leider gibt es wenig Informationen zum IBM Watson Knowledge Studio in Deutsch. Daher möchte ich in diesem und den folgenden Beiträgen beschreiben wie wir konkret in solchen Projekten vorgehen und auch ein paar Einblicke schaffen wie sich diese neue Vorgehensweise von früheren Textanalyseansätzen unterscheidet.

Maschinelles Lernen in der Praxis: IBM Watson Knowledge Studio weiterlesen

Was ist Maschinelles Lernen?

Maschinelles Lernen bezeichnet die automatische Generierung von Wissen auf Basis von vorgegebenen Lerndaten. Es wird genutzt um ein künstliches neuronales Netz zu trainieren.

Normalerweise wird das neuronale Netz dabei mit bestehenden Daten trainiert. Das nennt sich dann „Überwachtes Lernen“. D.h. ich gebe der KI vor für welche Eingabewerte ich welches Ergebnis erwarte. Das sind die Lerndaten.

Typische Anwendungsfälle für maschinelles Lernen sind Bilderkennung, Spracherkennung, Klassifizierung, Vorhersagemodelle und das Finden von Entitäten in Texten. Für jede dieser Anwendungsfälle benötigt man jeweils unterschiedliche Lerndaten.

Was ist Maschinelles Lernen? weiterlesen