Programmieren ist der Versuch, Probleme in fixe Regeln zu pressen und damit zu lösen. Komplexe Aufgabenstellungen, wie etwa Sprach- oder auch Bilderkennung, bedürfen aber smarterer Lösungsansätze. Denn sie gehorchen keinem fixen Regelwerk. Computer können solche Herausforderungen nur dann meistern, wenn sie die notwendigen Fähigkeiten vorher erlernen. Erfahren Sie in diesem Blogbeitrag mehr über die faszinierende Technologie, und wie Sie Google Machine Learning ganz einfach für Ihre eigenen Software-Entwicklungen nutzen können.
Wenn Sie ein Bild von einem Apfel betrachten, dann wissen Sie, dass es sich um ein Bild von einem Apfel handelt. Dieses Wissen haben Sie einem Computer voraus. Denn es gibt unzählige Möglichkeiten, wie ein Apfel aussehen und abgebildet werden kann. Ein Regelkorsett in Form eines Programmes über diese Vielfalt an Möglichkeiten zu stülpen, ist kaum möglich und wenig sinnvoll.
Maschinen lernen so wie Menschen
Sie selbst haben allerdings auch nicht schon nach Ihrem ersten Schrei gewusst, dass beispielsweise ein Bild im Kreißsaal einen Apfel zeigt. Das haben Sie erst lernen müssen. So wie wir Menschen, können Computer nun ebenfalls lernen. Das System bekommt viele Male das Bild eines Apfels vorgesetzt und die Info dazu serviert, dass es sich um eben ein Bild eines Apfels handelt. Nach einiger Zeit kann der Rechner ein solches Bild dann erkennen. Nie mit einer hundertprozentigen Sicherheit zwar – aber mit sehr hoher Wahrscheinlichkeit. Die Trefferquote hängt nämlich davon ab, wie gut der Rechner zuvor trainiert wurde.
Unbekanntes aufgrund von Erfahrung interpretieren
Machine Learning wird in der Praxis oft als Synonym für Artificial Intelligence (Künstliche Intelligenz) verwendet. Das ist unpräzise: AI oder KI umschreiben die Versuche, einen Computer so zu programmieren, dass er eigenständig Probleme lösen kann. AI oder KI sollen also das menschliche Denken mechanisieren. Bei Machine Learning hingegen lernt ein System, aus Beispielen verschiedene Muster zu erkennen. Aufgrund dieser kann der Computer dann unbekannte Daten beurteilen.
Google Machine Learning begegnet uns im Alltag
Wir selbst verwenden bereits zahlreiche Anwendungen wie selbstverständlich, in denen Machine Learning integriert ist. Hier finden Sie fünf Beispiele für Google Machine Learning, die Sie vielleicht überraschen werden:
- Google Suche
Das Ergebnis der Google Suche wird etwa durch einen nicht unerheblichen Teil von RankBrain bestimmt. Der Algorithmus lernt anhand des Suchverhaltens der User, welche Ergebnisse für bestimmte Begriffe „gut“ oder „schlecht“ waren. Daraus zieht RankBrain seine Schlüsse und “verbessert” die Suchergebnisse. Besonders bei neuen Suchanfragen spielt dies eine wichtige Rolle. - Automatische Vervollständigung
Für den User sichtbarer als RankBrain ist freilich die Auto-Suggest Funktion der Google Suche. Noch während Sie einen Suchbegriff in das Fenster eingeben, schlägt Ihnen Google mögliche Begriffe vor. Auch hier ist Machine Learning im Spiel. - Spam-Erkennung im Mailprogramm
Spam-Nachrichten von wichtigen Nachrichten zu unterscheiden ist oft nicht einfach. Das Mail-Programm G-Mail von Google filtert ungewollte oder gar gefährliche E-Mails selbständig heraus. Mithilfe der künstlichen Intelligenz von Tensor Flow hat Google den Spam-Filter nun weiter verbessert. Damit sollen täglich 100 Millionen Spam-Nachrichten zusätzlich als solche erkannt werden. - Google Fotos erkennt Inhalt der Bilder
Innerhalb von Google Fotos können Sie nach dem Inhalt der Bilder suchen. Geben Sie „Apfel“ oder „Sonnenuntergang“ ein, und Sie erhalten die gewünschten Ergebnisse. Dank Google Machine Learning ist es möglich, Informationen aus den Bildern zu lesen. Eine Leistung, die mit üblicher Programmierarbeit nicht möglich wäre. - Google Übersetzer für Schrift, Wort und Bild
Diese Anwendung dient als Real-Time-Übersetzer für viele Sprachen – angefangen von Afrikaans bis Zulu. Den zu übersetzenden Text müssen Sie dabei nicht per Tastatur eingeben. Sie können ihn sprechen oder Sie „zeigen“ der Applikation einfach das, was es zu übersetzen gilt. Auf Ihrem Display sehen Sie dann die übersetzte Version. Ein Beispiel: Sie richten Ihr Smartphone auf eine fremdsprachige Speisekarte. Schon sehen Sie alle Gerichte in Ihrer Muttersprache angezeigt.
Nutzen Sie Machine Learning für Ihre eigenen Apps
Google verwendet Machine Learning allerdings nicht nur für die eigenen Applikationen. Es ist leicht möglich, diese Technologie in Ihre eigenen Anwendung einzubinden. Es gibt zwei Möglichkeiten, um Google Machine Learning zu nutzen:
Fertige APIs in die Software einbinden
Auf der Google Cloud Plattform (GCP) stehen verschiedene fixfertige Anwendungen (APIs) zur Verfügung. Diese müssen Sie lediglich in Ihre Software einbinden. Know-how über Machine Learning ist dabei nicht notwendig. 10 verschiedene AI-Bausteine stehen derzeit zur Verfügung:
- Inhalte von Bildern erkennen
Mit Cloud Vision können Sie Informationen aus Bildern gewinnen. Diese Anwendung eröffnet Ihnen eine Fülle an Anwendungsmöglichkeiten: Große Mengen an Fotos lassen sich damit in Kategorien einteilen. Use-Cases angefangen von der Produktbildkategorisierung bis hin zur Krankheitsdiagnose sind damit realisierbar. In Bildern enthaltenen Text können Sie mit der Vision API ebenfalls erfassen. Bei Services, die es Nutzern erlauben, eigene Bilder hochzuladen, erkennt Vision API unangemessene Inhalte.
- Bewegtbild verstehen
Video API erkennt die Inhalte von Bewegtbild. Die Anwendungsmöglichkeiten sind vielfältig: Damit können Sie etwa kontextbezogene Werbung realisieren, große Videobibliotheken indexiert archivieren und Inhalte daraus rasch verfügbar machen, sowie Bewegtbild moderieren und filtern.
- Schnelle und lernfähige Übersetzung
Mithilfe des Translation API können Sie Texte schnell und dynamisch übersetzen. Im vortrainierten Modell stehen dabei mehr als 100 Sprachen zur Verfügung. - Bedeutung und Struktur von Text verstehen
Natural Language API ermöglicht es, die Struktur und die Bedeutung von Texten zu analysieren und den Inhalt zu verstehen. Mit diesem Baustein ist es möglich, Personen, Orte oder Ereignisse in einem Text zu erkennen. Auch Stimmungen und Meinungen lassen sich analysieren. Bei der Auswertung von Kundenrezensionen oder Postings auf Social Media Plattformen ist dies beispielsweise sehr nützlich. - Intelligente Chatbots erstellen
Dialogflow ermöglicht intelligente Konversationen zwischen Mensch und Maschine. Diese können Sie auf verschiedenen Plattformen zur Verfügung stellen – wie etwa auf Websites aber auch über IoT-Geräte. Chatbots, die die Fragen der Nutzer analysieren und intelligent beantworten, lassen sich beispielsweise mit Dialogflow verwirklichen. - Text in gesprochene Sprache umwandeln
Mit der Cloud Text-to-Speech können Sie Text in natürlich klingende Sprache umwandeln. Für über 20 Sprachen stehen derzeit mehr als 100 Stimmen zur Verfügung. Die Lösung eignet sich für die Interaktion mit Geräten oder auch für den Kundendienst.
- Gesprochenes in Text transformieren
Die Cloud Speech-to-Text-API erkennt 120 Sprachen und kann diese in Text umwandeln. Die Anwendung eignet sich beispielsweise für die Steuerung von Geräten durch Sprache oder auch das Transskripieren von Sprachaufzeichnungen in Text.
- Erkenntnisse aus strukturierten Daten gewinnen
Mit AutoML Tables können Sie Daten aus Ihrem Unternehmen dazu nutzen, um mit Hilfe von Machine Learning wichtige Erkenntnisse daraus zu gewinnen. Das erlaubt Ihnen, genauere Prognosen über die Nachfrage Ihrer Kunden zu erstellen. - Den Kunden besser verstehen
Recommondations AI (Beta) hilft Ihnen, das Verhalten Ihrer Kunden besser zu verstehen und Ihre Produktempfehlungen stärker zu personalisieren. - Schnellere Erkenntnisse aus Zeitreihen
Die Analyse von Zeitreihen – etwa die Fußgängerfrequenz vor einem Schaufenster – bilden für viele Unternehmen die Basis für wichtige Entscheidungen. Mit Cloud Inference API (Alpha) lassen sich aus Zeitreihendatensätzen Erkenntnisse in Echtzeit gewinnen.
Individuelle Lern-Modelle generieren
Mithilfe der Cloud Auto ML Produkten können Sie aus vielen der eben beschriebenen Bausteine benutzerdefinierte Modelle erstellen und diese trainieren. Sie können aber auch Ihre eigenen Lern-Modelle generieren, indem Sie das Google Machine Learning als Managed Service aus der Cloud nutzen. Ihre Modelle erstellen Sie dabei mit der plattformunabhängigen Open-Source-Programmbibliothek TensorFlow. Ein Beispiel dafür: Der Japaner Koike Makoto verwendete TensorFlow, um für die Farm seiner Eltern eine intelligente Sortiermaschine für Gurken zu realisieren.
Fazit: Wie Sie Google Machine Learning für Ihre Apps einfach nutzen können
Dank Machine Learning lässt sich das Verständnis zwischen Mensch und Maschine erheblich erleichtern. Ein solches wertet Ihre Anwendungen auf. Mit Google Machine Learning können Sie vorgefertigte Anwendungen in Ihre eigenen Applikationen leicht integrieren. Oder aber, Sie nutzen die Ressourcen von Google Machine Learning, um Ihre selbst kreierten Lern-Modelle laufen zu lassen.