close
AzureCloudKünstliche Intelligenz

Machine Learning Studio von Microsoft

beitragsbild-source-code-scripting-coding-terminal

Wer aufmerksam das Microsoft Azure Portal beobachtet und regelmäßig besucht, hat vielleicht schon entdeckt, dass es eine Ressource „Machine Learning Studio workplaces“ gibt. Wie der Name schon andeutet, kann man damit Machine Learning Arbeitsbereiche erstellen und verwenden. Nun wird der Eine oder Andere der Meinung sein, dass das sehr kompliziert klingt und möglicherweise außer Aufwand keinen Nutzen hat. Dem möchte ich hier doch deutlich widersprechen :).

Machine Learning

Der Begriff wird in letzter Zeit sehr inflationär und auch oft als Platzhalter den Begriff Künstliche Intelligenz verwendet. Daher hier nochmal eine ganz kurze und hoffentlich verständliche Erklärung. Es wird jetzt keine Abhandlung zu dem Thema folgen, sondern anhand von Beispielen versucht greifbar zu machen, was damit gemeint ist. Ein interessanter Artikel AI Basics: Machine Learning, der mehr auf die Grundlagen eingeht, kann auch auf dieser Blog-Site nachgelesen werden.

Machine Learning ist also Teil der künstlichen Intelligenz. Ganz knapp und vereinfacht könnte man auch sagen, mit Machine Learning ist es möglich, auf Basis von bestehenden Daten Vorhersagen zu machen und diese Vorhersagen auch mit einer Eintrittswahrscheinlichkeit zu versehen. Basierend darauf können dann auch Entscheidung automatisiert getroffen werden.

Beispiele dafür wären in der Medizin zu finden und hier konkret die Unterstützung bei der Diagnose von Brustkrebs. Ein anderes Beispiel aus der Wirtschaft wäre die Vorhersage des Einkommens von Personen aus einer bestimmten Region, mit einem bestimmten Bildungsstand usw. oder z.B. die Kreditwürdigkeit von Personen. Die Qualität von Produkten in Produktionsumgebungen automatisiert prüfen usw. Es gibt unzählige Beispiele dafür, wichtig ist aber, dass man ausreichend Daten in einer guten Qualität zur Verfügung hat.

Machine Learning Workflow

Wie gesagt ist es wichtig, ein gutes Datenmaterial zu haben. Auf Basis von mathematischen Modellen werden diese bestehenden Daten dann dazu verwendet, um mehr oder weniger gute Vorhersagen für neue Daten zu bekommen. Also hat das ganze etwas von „Wahrsagen“, aber fundiert auf mathematischen Modellen. Das entspricht vereinfacht auch dem Machine Learning Workflow, wie in nachfolgender Abbildung gezeigt:

Genau hier setzt auch das Machine Learning Studio an, damit ist es auch Nicht-Informatikern oder Nicht-Entwicklern möglich ohne Programmierkenntnisse ein Tool zur Verfügung zu haben, um Vorhersagen auf Basis von Daten zu machen.

It’s all about Data

Wenn man jetzt gerne mal mit dem Machine Learning Studio arbeiten möchte, um Erfahrungen zu gewinnen, dann ist es oft schwierig, Daten in ausreichender Form und Qualität zur Verfügung zu haben. Auch hier hilft uns Microsoft mit der Azure AI Gallery. Legen wir also los und starten einfach mit einem fertigen Experiment. Für diesen Blog Beitrag wollen wir herausfinden, wie wahrscheinlich es ist, dass eine Person mehr als US$ 50.000,00 pro Jahr verdient.

Machine Learning Studio

In der Abbildung ist zu erkennen, dass man dieses „Experiment“ wie es hier heißt auch gleich in Machine Learning Studio öffnen kann. Per klick auf „Open in Studio“ ist dies möglich. Man wird dadurch automatisch in das Machine Learning Studio umgeleitet, das sich aktuell immer noch im „alten Gewand“ des Azure Portals zeigt.

Man wird aufgeforder eine Region und einen Workspace anzugeben. Da wir uns in Europa befinden, bleiben wir natürlich auch in der Region „West Europe“. Als Workspace entscheiden wir uns für TestMLWorkspace. Damit ein Workspace überhaupt zur Auswahl zur Verfügung steht, sollte man diesen zuvor im Azure Portal auch anlegen. Erst danach kann man diesen auch verwenden. Der nachfolgende Screenshot zeigt wie dies möglich ist.

Kehren wir aber zurück zum Microsoft Machine Learning Studio. Aufgrund der Azure AI Gallery haben wir das komplette Experiment nun in unserem Machine Learning Workspace genannt „TestMLWorkspace“ geladen. Nachfolgender Screenshot zeigt den zuvor angesprochenen Machine Learning Workflow. Der Graph zeigt die ursprünglichen Daten als Knoten und die Modellierung an.

Möchte man den Workflow nun einmal „starten“, d.h. sein Modell trainieren und auch Vorhersagen sehen, dann klickt man einfach auf „RUN“. Dadurch wird das Modell nun für die Verwendung vorbereitet. Man kann nun die Wahrscheinlichkeitsverteilung bzw. die Vorhersagen der bestehenden Datensätze kontrollieren, wenn man z.B. beim „Score Model“ Knoten per Rechtsklick auf das „Scored dataset“ wechselt und sich die Daten ansieht. Wichtig zu wissen ist, dass der Knoten „Split Data“ dafür zuständig ist, dass nur ein Teil der Datenmenge zum Trainieren des Models verwendet wird (hier, zu 90 %). Der andere Teil (die restlichen 10 %) werden dann zum Evaluieren des Modells benötigt.

In der Spalte Scored Probabilites sieht man dann die Wahrscheinlichkeit, dass eine Person zu einer bestimmten Wahrscheinlichkeit mehr als US$ 50.000 verdient.

Betrachtet man den 1. angezeigten Datensatz, sieht man dass ein männlicher Weißer, mit dem Doktorrat in der Tasche, mehr als US$ 50.000 verdient. Tatsächlich hat auch das Modell für diesen Datensatz/Person ein Einkommen von mehr als US$ 50.000  vorhergesagt und das mit einer Wahrscheinlichkeit von rund 91 % (0,906911).

Dieses Expermient kann nun auch als WebService zur Verfügung gestellt werden, durch einen Klick auf „Set Up Web Service“. Anschließend kann man es dann auch als Web Service Deployen entweder als „klassisches“ oder „neues“ WebService, das sich noch im Status Preview befindet. Für unser Beispiel entscheiden wir uns für ein klassisches Webservice, das wir auch jetzt testen können. Um das Service jetzt zu testen, muss man natürlich auch Kenntnis bezüglich der Daten haben, was welches Feld bedeutet. Wir geben Testdatensatz (siehe nachfolgenden Screenshot, grauer Bereich) ein und hoffen auf eine sinnvolle Ausgabe der Wahrscheinlichkeit, ob diese fiktive Person nun mehr als US$ 50.000 verdienen könnte oder eben nicht.

Laut vorliegender Vorhersage und auf Basis des oben definierten Modells würde ein männlicher Weißer mit 40 Jahren, der verheiratet ist und studiert hat mit einer Wahrscheinlichkeit von 0.061, d.h. also von 6,1 % weniger als US$ 50.000 verdienen. Kehrt man das um, so würde er mit einer knapp 94 %igen Wahrscheinlichkeit mehr als US$ 50.000 verdienen. Die Nachfolgende Darstellung zeigt diesen Test und sein Ergebnis an (grauer Bereich innerhalb der Page). Ob diese Vorhersage stimmt oder nicht, können wir an dieser Stelle nicht sagen. Dennoch könnte diese Vorhersage reichen, dass dieser Person ein Handyvertrag bewilligt wird oder eben nicht oder eine 0 % Finanzierung für einen neuen Fernseher bei einem Elektrohändler.

Das auf diese Art und Weise gewonnene WebService kann übrigens auch auch als Add-In in Excel verwendet werden. Hierfür kann man dann gleich einen ganzen Bulk an Daten bewerten lassen.

Fazit

Machine Learning allgemein kann ein sehr mächtiges Werkzeug sein, wenn man Vorhersagen zu bestimmten Fragestellungen treffen möchte. Microsoft ist es gelungen mit Hilfe des Azure Machine Learning Studio’s diese Möglichkeiten auf den Boden zu bringen und für de-facto jedermann zur Verfügung zu stellen. Ich habe mit diesem Artikel wirklich nur den Rand dieses Themas gestreift und doch hoffentlich greifbar und nachvollziehbar zeigen können, wie schnell man mit Hilfe von Microsoft Ergebnisse erzielen kann. Ich empfehle allen, die es interessiert, sich mit der Thematik weiter zu befassen. Hier steckt wirklich ein großes Potential drinnen, einen Mehrwert für eigene Lösungen zu generieren.

 

Michael König

The author Michael König

Michael König ist leidenschaftlicher Informatiker. Er ist bei HATAHET als Leiter der Abteilung Development Solutions sowie als Lead Developer und Application Architekt tätig. Herr König bringt 20 Jahre Berufserfahrung im Bereich der Software-Entwicklung und im IT-Consulting mit. Seit mehr als 10 Jahren beschäftigt sich Herr König intensiv mit den Microsoft SharePoint Technologien und ist in diesem Segment vorrangig auf die Software-Entwicklung, Erweiterung und Individualisierung von SharePoint spezialisiert. Heute beschäftigt er sich mit den neuen Möglichkeiten von SharePoint Online und On-Premises, Office 365 und Microsoft Azure. Die Themen Bots, Cognitive Services und Machine Learning auf Basis von Microsoft Technologien gehören hier ebenfalls dazu.

Leave a Response