Die Firma Microsoft dürfte den Meisten vor Allem wegen des Betriebssystems Windows und der Büro-Suite Office ein Begriff sein. Microsoft ist jedoch auch im Bereich künstliche Intelligenz sehr aktiv und bietet Entwicklern und Unternehmen verschiedene Möglichkeiten, bestehende Produkte und Geschäftsmodelle um kognitive Technologien zu erweitern.
Cortana
Die von Microsoft im April 2013 vorgestellte digitale Assistentin Cortana hilft Nutzern bei der Erledigung alltäglicher Aufgaben. Sie funktioniert auf Basis von Text und Spracherkennung.
Cortana kann z.B. …
- Zeit-, orts- oder personenbezogene Erinnerungen ausgeben,
- Pakete, Sportmannschaften, Interessen und Flüge nachverfolgen,
- E-Mails und SMS senden,
- Kalender verwalten und den Nutzer auf dem Laufenden halten,
- Listen erstellen und verwalten,
- Plaudern und Spiele spielen,
- Fakten, Dateien, Orte und Infos suchen,
- Beliebige Apps im System öffnen.
Dabei ist Cortana nicht nur für Microsofts Betriebssysteme Windows und Windows-Phone verfügbar, sondern kann per App ebenfalls auf iOS und Android Geräten verwendet werden. Cortana ist somit als Pendant zu Siri, der Sprachassistentin von Apple, einzuordnen und bewegt sich im selben Umfeld wie auch google Assistant und Alexa von Amazon.
Cortana wurde jedoch nicht nur als eigenständiger Service entwickelt, sondern auch in Microsoft Produkte wie z.B. den Webbrowser Edge und die Suchmaschine Bing integriert. Auch das „Windows in the Car“-Concept enthält Cortana-Funktionalitäten, um beispielsweise Reservierungen in Restaurants zu übernehmen oder Tipps für das Sightseeing zu geben.
Cortana Skills
Auf der BUILD-Konferenz 2017 hat Microsoft das sogenannte Skills Kit vorgestellt. Dieses ermöglicht die Implementierung von Dritt-Services in die Cortana Plattform. Einmal angebundene Skills sind auf allen Geräten und Betriebssystemen verfügbar.
Cognitive Services
Die sog. Cognitive Services von Microsoft sind eine Zusammenstellung verschiedener APIs, SDKs und Services, die Entwicklern dabei helfen, ihre Anwendungen intelligenter und benutzerfreundlicher zu machen. Die technische Basis für die Cognitive Services bietet Microsofts Azure Plattform, auf der die Dienste betrieben werden und per API ansprechbar sind.
Momentan (Stand: September 2017) sind folgende Services verfügbar oder stehen kurz vor der Veröffentlichung. Ein Großteil der verfügbaren Dienste kann auf den jeweiligen Detailseiten von Microsoft auch direkt ausprobiert werden.
Nicht alle Cognitive Services sind auf Deutsch verfügbar. Details: Microsoft Cognitive Services – Verfügbare Sprachen
Bildanalyse
Maschinelles Sehen-API
Mit der API für maschinelles Sehen lassen sich Informationen aus Bildern extrahieren, um sie als visuelle Daten kategorisieren und verarbeiten zu können. Ein Anwendungsbeispiel hierfür sind Inhaltsfilter in sozialen Netzwerken, die unangebrachte Bilder erkennen und aussortieren.
Für die Erkennung der Inhalte greift die API für maschinelles Sehen auf bisher erkannte Objekte zurück. Mit selbst gekennzeichneten Bildern lässt sich der Service jedoch auch auf neue Objekte trainieren und somit an spezielle Anforderungen anpassen. Microsoft nennt dies den Benutzerdefinierten Dienst für maschinelles Sehen.
Gesichtserkennungs-API
Die Gesichtserkennungs-API ist in der Lage, menschliche Gesichter zu erkennen und Ähnlichkeiten zu vergleichen, Bilder anhand von Ähnlichkeiten in Gruppen zu organisieren und zuvor markierte Personen in Bildern zu identifizieren. Mit der Microsoft Gesichtserkennungs-API ist es beispielsweise möglich zu prüfen, ob eine Person auf zwei unterschiedlichen Bildern zu sehen ist.
Content Moderator
In einigen Bereichen des Internets, wie z.B. in sozialen Netzwerken oder auf Videoportalen, ist es nötig, die dort von Nutzern publizierten Inhalte zu moderieren. An dieser Stelle kommt der Content Moderator zum Einsatz. Dieser ermöglicht es, Inhalte wie Bilder, Texte und Videos automatisiert zu überprüfen. Dabei bedient sich der Service verschiedener technischer Funktionalitäten wie beispielsweise der optischen Zeichenerkennung (OCR).
Der Content Moderator bietet zudem ein Tool, über welches Menschen die Vorhersagegenauigkeit verbessern und Ergebnisse kontrollieren können.
Emotionen-API
Eine App, die verärgerten Nutzern anders gegenüber handelt, als zufriedenen? Mit der Emotionen-API ist das realisierbar. Diese API nutzt Bilderkennung zur Analyse von Gesichtsausdrücken. Die daraus resultierenden Ergebnisse können entsprechend verwendet werden. Das funktioniert nicht nur live (per Kamera), sondern auch im Nachhinein z.b. mit vorhandenem Videomaterial.
Video-API
Microsofts Video-API bietet Entwicklern eine intelligente Videoverarbeitung. Sie kann Videos stabilisieren, intelligente Miniaturansichten (Thumbnails) generieren, Bewegungen erkennen und Gesichter verfolgen.
Videoindizierung
Mit der Videoindizierung von Microsoft lassen sich Informationen aus Videoinhalten extrahieren und dann für weitere Aktionen verwenden. So lässt sich z.B. in einem Video per Text-Suche nach einer bestimmten Stelle suchen. Dies erspart dem Nutzer das Anschauen der für ihn irrelevanten Videosequenzen und ermöglicht das vollautomatische Erstellen eines Inhaltsverzeichnisses mit Sprungmarken.
Ein weiterer Case für die Verwendung der Videoindizierung ist das automatisierte Auslösen von Geschäftsprozessen, sobald ein Video einen bestimmten Inhalt aufweist.
Spracheingabe und -ausgabe
Sprachübersetzungs-API
Die Sprachübersetzungs-API ist die auf Gespräche optimierte Sprachübersetzung von Microsoft. Mit dem cloudbasierten, automatischen Echtzeit-Übersetzungsdienst können Entwickler auf End-to-End Übersetzungen zurückgreifen und diese für ihre Anwendungen nutzen.
Sprechererkennungs-API
„Hallo, wer spricht..?“ – Die Antwort auf diese Frage liefert die Sprechererkennungs-API. Sie ist in der Lage die Stimmen einzelner Sprecher zu identifizieren und kann auch für die Authentifizierung von Personen anhand ihrer Stimme genutzt werden.
Bing-Spracheingabe-API
Die Bing-Spracheingabe-API wandelt Gesprochenes in Geschriebenes, Geschriebenes in Gesprochenes und versteht die Absicht hinter einer gesprochenen Eingabe. Neben der Live-Eingabe durch ein Mikrofon sind auch andere Echtzeitquellen und das Einlesen von Audiodateien möglich. Ein klassischer Einsatzzweck dieser API ist die sprachbasierte Interaktion zwischen Anwendungen und Nutzern.
Benutzerdefinierter Spracherkennungsdienst
Mit Hilfe des benutzerdefinierten Spracherkennungsdienstes lassen sich übliche Hürden bei der Spracherkennung, wie beispielsweise Hintergrundgeräusche, Dialekte und Jargons überwinden. Dafür werden angepasste Akustikmodelle des Spracherkennungsmoduls erstellt, die auf die jeweiligen Anforderungen trainiert werden.
Sprachverarbeitung und -analyse
Language Understanding Intelligent Service
Der Language Understanding Intelligent Service (LUIS) von Microsoft bietet ein Tool-Set, welches ein kontextbasiertes Sprachverständnis ermöglicht und mit dem individuelle Sprachmodelle erstellt werden können. Dadurch können z.B. Text-basierte bots oder Assistenten die Intentionen von Nutzern besser erkennen und entsprechend agieren. Beispiel: „All on“ soll das gleiche Ergebnis liefern wie „Turn all lights on“.
Textanalyse-API
Was ist der häufigste Grund für eine Beschwerde über mein Hotel und welche Punkte sind meinen Gästen besonders wichtig? Die Antworten liefert die Textanalyse-API, indem sie z.B. erhaltene Bewertungen analysiert. Sie erkennt die Sprache, verwendete Schlüsselwörter, behandelte Themen sowie die Stimmung in Texten und gibt die Ergebnisse in einem strukturierten Format aus.
Bing-Rechtschreibprüfungs-API
Die Bing-Rechtschreibprüfungs-API sorgt für korrekte Rechtschreibung, erkennt Homophone und schlägt Verbesserungen für Namen, Markennamen und Jargon vor. Sie kann sowohl in Echtzeit als auch im Nachhinein angewendet werden.
Textübersetzungs-API
Mit der Textübersetzungs-API lassen sich Texte in Echtzeit in eine Vielzahl von Sprachen übersetzen. So lässt sich z.B. mit wenig Aufwand Inhalt lokalisiert zur Verfügung stellen und die Reichweite von Anwendungen erweitern. Zudem besteht die Möglichkeit die Übersetzungen durch internes Crowdsourcing zu verbessern.
Web Language Model API
Die Web Language Model API unterstützt Entwickler bei der Automatisierung standardmäßiger Verarbeitungsaufgaben für natürliche Sprache. Ein Beispiel ist das Trennen von Wörtern nach verschiedenen Modellen. So lassen sich zum Beispiel Hashtags (ohne Leerzeichen) oder der Teil einer URL in sauber getrennte Wörter unterteilen.
API für linguistische Analyse
An welcher Stelle lassen sich komplexe Formulierungen in einfache Sprache umwandeln? Mit der Linguistik-API lässt sich genau das feststellen. Sie analysiert Texte, findet Konzepte und Aktionen und markiert Wortarten. So lassen sich z.B. sehr sachliche von sehr emotionalen Texten unterscheiden. Dies kann insbesondere im Bereich des Kundenfeedbacks und Customer Success Managements eine hilfreiche Unterstützung sein.
Insights und Wissen
Empfehlungs-API
Mit der Empfehlungs-API lassen sich Empfehlungen auf Basis vorhandener Kundendaten generieren. Beispielsweise können Kunden Produkte vorgeschlagen bekommen, für die sie sich – abgeleitet aus früheren Transaktionen – sehr wahrscheinlich interessieren. Die Kundendaten können entweder gesammelt hochgeladen oder direkt im Online-Shop erfasst werden.
Neben den personalisierten Empfehlungen identifiziert die Empfehlungs-API auch häufig zusammen gekaufte Produkte und sorgt durch Klickmuster-Analysen zur besseren Auffindbarkeit von Produkten.
Academic Knowledge-API
Microsoft Academic Graph ist ein heterogene Sammlung wissenschaftlicher Publikationsdatensätze, Zitatbeziehungen zwischen diesen Publikationen sowie Autoren, Institutionen, Zeitschriften, Konferenzen und Studienrichtungen. Der Academic Graph wird in verschiedenen Microsoft Produkten (z.B. Bing, Cortana, Word und Microsoft Academic) verwendet.
Mit der Academic Knowledge-API gibt Microsoft Entwicklern die Möglichkeit, auf Informationen aus dem Academic Graph zuzugreifen und diese z.B. für die Interpretation von Suchergebnissen zu verwenden. Weitere akademische Funktionen, wie beispielsweise die Berechnung der akademischen Kosinusähnlichkeit zwischen zwei Texteingaben, sind verfügbar.
Knowledge Exploration Service
Der Knowledge Exploration Service ermöglicht die interaktive Suche in strukturierten Daten. Die Suchabfrage kann dabei in natürlicher Sprache erfolgen und es steht eine automatische Vervollständigung zur Verfügung.
QnA Maker-API
Über die Zeit kann sich in einem Unternehmen viel Wissen ansammeln – sowohl für Kunden, als auch intern. Die QnA Maker-API destilliert Informationen zu übersichtlichen und einfach strukturierten FAQs.
Beispiel: Ein User stellt in einem Chatbot die Frage „How do i login to the QnA maker portal?“ und erhält eine Antwort auf seine Frage. Im Nachgang wird der Chatverlauf an die QnA Maker-API gesendet. Diese formuliert daraus den FAQ-Eintrag „How do I login?“ mit der selben Antwort, die der User bereits im Chat erhalten hat.
Aus einem bestehenden Support-System lassen sich also recht einfach relevante Informationen extrahieren und automatisiert als FAQ formulieren.
Entity Linking Intelligence Service-API
Ein Wort kann viele Bedeutungen haben. So kann man sich zum Beispiel auf eine „Bank“ setzen oder sie ausrauben. Regelbasierte Systeme tun sich mit der Unterscheidung benannter Entitäten schwer. Um zu erkennen, dass in dem einen Fall ein Sitzmöbel und im anderen Fall ein Finanzinstitut gemeint ist, bedarf es eines komplexeren Systems. Microsoft hat zu diesem Zweck die Entity Linking Intelligence Service-API entwickelt. Diese erkennt und identifiziert – basierend auf dem Kontext – jede einzelne Entität in einem Absatz.
Benutzerdefinierter Entscheidungsdienst
Der benutzerdefinierte Entscheidungsdienst von Microsoft bietet eine API zum Treffen von kontextbasierten Entscheidungen in Echtzeit. Im Prozess der Entscheidungsfindung lernt der Entscheidungsdienst aus Erfahrungen, optimiert sich ständig selbst und experimentiert mit neuen Optionen, um sicherzustellen, dass er stets die beste Entscheidung trifft.
Suche
Die folgenden Services enthalten teilweise nur bedingt intelligente Komponenten. Da Microsoft sie jedoch zur Kategorie Cognitive Services zählt, listen wir sie der Vollständigkeit halber hier ebenfalls.
Bing-Vorschlagssuche-API
Das automatische Vorschlagen von Suchbegriffen anhand der ersten eingegebenen Lettern gehört mittlerweile zu den Hygienefaktoren eines Nutzer-zentrierten Digitalproduktes. Mit der Bing-Vorschlagssuche-API lässt sich diese Funktion ohne großen Aufwand in Anwendungen implementieren.
Bing-API für die Bildersuche
Mit der Bing-API für die Bildersuche können Entwickler verschiedene Möglichkeiten für die Suche nach Bildern anhand von Suchbegriffen in ihre Services integrieren. Mögliche Suchergebnisse sind neben den Bildern an sich auch Bild-URLs, Metadaten, Thumbnails u.v.m.
Bing-API für die Videosuche
Eine Suchbegriff-basierte Videosuche bietet die Bing-API für die Videosuche. Mit ihr lassen sich neben den Videos auch die zugehörigen Vorschauen und Metadaten mit Informationen zum Autor, zur Codierung, zur Video-Länge, zur Video-Beliebtheit u.v.m. abrufen. Hinzu kommen verschiedene Filterkriterien, wie beispielsweise Auflösung, Aktualität und Videolänge.
Bing-API für die News-Suche
Um Websites oder Apps immer mit den aktuellsten Nachrichten aus aller Welt zu versorgen, stellt Microsoft die Bing-API für die News-Suche bereit. Darüber abgerufene Nachrichten lassen sich nach Themen gruppieren und unter mehreren Kriterien (z.B. nach der Aktualität) filtern. Zudem sind die Metadaten der News durchsuchbar und Nachrichten können auf lokaler Ebene angezeigt werden.
Bing-API für die Websuche
Die Bing-API für die Websuche kombiniert verschiedene Bing-APIs zu einer API für die ganzheitliche, horizontale Suche nach Inhalten im Web. Dabei greift sie auf durch dir Suchmaschine Bing indizierte Webdokumente zu und ermöglicht das eingrenzen der abgerufenen Informationen anhand von verschiedenen Faktoren, wie bspw. der Aktualität, dem Ergebnistyp, etc.
Benutzerdefinierte Bing-Suche
Mit der benutzerdefinierten Bing-Suche kann die Bing-Suchfunktionalität an individuelle Anforderungen angepasst werden. Auf das Schreiben von Code kann dabei verzichtet werden. Anstatt dessen werden die Suchvorgänge über eine Benutzeroberfläche erstellt und verwaltet. Aufgrund der Werbefreiheit ist eine kommerzielle Verwendung dieses Services möglich.
Die Suche an sich erfolgt dann in drei Schritten. Zunächst werden zum Thema passende Websites identifiziert. Diese werden dann in eine Rangfolge gebracht und als Suchergebnisse ausgegeben. Die Suchparameter können dabei jederzeit angepasst werden. Von der Suchfunktion zu beachtende Bereiche auf einer Website können im Rahmen von Webslices festgelegt werden.
Ein anschaulicher Case, für den diese Technologie verwendet werden kann, ist die Site-Search (z.B. für eine Nachrichten-Website). Dazu wird der Suchbereich auf die einzelne Website eingegrenzt und es ist nicht notwendig, eine eigene Suchfunktion zu erstellen.
Bing-Entitätssuche-API
Um Informationen in Anwendungen um weitere Daten zu ergänzen, hat Microsoft die Bing-Entitätssuche-API entwickelt. Diese liefert umfassende Kontextdaten zu Personen, Orten, Dingen und lokalen Unternehmen. Dadurch können z.B. CRM Einträge vervollständigt und um interessante Fakten angereichert oder Umkreissuchen realisiert werden.
Cognitive Services Labs
Neben den o.g. Services experimentiert Microsoft in sog. Cognitive Services Labs an verschiedenen Projekten im Bereich künstliche Intelligenz. Diese Projekte befassen sich u.a. mit Gestensteuerung (Project Prague), Routenlogistik (Projekt Johannesburg) und Isochronenberechnungen (Projekt Nanjing).
Cognitive Toolkit
Microsofts Cognitive Toolkit (ehemals CNTK) ist ein kostenloses, Open-Source Deep Learning Framework, mit dem künstliche neuronale Netze trainiert werden können. Das Cognitive Toolkit wurde von Microsoft Research entwickelt und verspricht eine kompromisslose Skalierung, Geschwindigkeit und Genauigkeit. Zudem ist es mit vielen Programmiersprachen kompatibel und hat einen Reifegrad erlangt, der einen zuverlässigen Betrieb auch mit großen Datensets ermöglicht.
Inhaltsverzeichnis
- Cortana
- Cognitive Services
- Bildanalyse
Maschinelles Sehen-API
Gesichtserkennungs-API
Content Moderator
Emotionen-API
Video-API - Spracheingabe und -ausgabe
Sprachübersetzungs-API
Sprechererkennungs-API
Bing-Spracheingabe-API
Benutzerdefinierter Spracherkennungsdienst - Sprachverarbeitung und -analyse
Language Understanding Intelligent Service
Textanalyse-API
Bing-Rechtschreibprüfungs-API
Textübersetzungs-API
Web Language Model API
API für linguistische Analyse - Insights und Wissen
Empfehlungs-API
Academic Knowledge-API
Knowledge Exploration Service
QnA Maker-API
Entity Linking Intelligence Service-API
Benutzerdefinierter Entscheidungsdienst - Suche
Bing-Vorschlagssuche-API
Bing-API für die Bildersuche
Bing-API für die Videosuche
Bing-API für die News-Suche
Bing-API für die Websuche
Benutzerdefinierte Bing-Suche
Bing-Entitätssuche-API - Cognitive Services Labs
- Cognitive Toolkit