Cognitive Services - 101 (with Infographic)
Microsoft Cognitive Services are APIs and services which can be used to add intelligent services to applications for different purposes, whether this is a web, mobile or desktop app or a bot which should interact with humans in a more natural way. But as there is a wide range of Cognitive Services which can be used this post should expose and describe each of the APIs currently available. This should help get to know Microsoft’s AI ecosystem a bit more. Additionally, the infographic I came up with should give an overview of the Cognitive Service world, which can be used to describe the individual services and APIs to help understand which service should be used in which area of application.
Microsoft Cognitive Services let you build apps with powerful algorithms to see, hear, speak, understand and interpret our needs using natural methods of communication, with just a few lines of code. Easily add intelligent features – such as emotion and sentiment detection, vision and speech recognition, language understanding, knowledge, and search – into your app, across devices and platforms such as iOS, Android, and Windows, keep improving and are easy to set up. Read more…
Looking at the following infographic, the Cognitive Services can be grouped into six main areas, which are explained in detail below:
- Vision
- Knowledge
- Speech
- Language
- Search
- Labs
Cognitive-Services-Infographic-with-Description
Vision
With the different vision APIs, it is possible to gain insights from pictures or videos. The capabilities range from detecting faces in pictures up to automated image, text or video moderation as well as person recognition. As the infographic shows, there is even the possibility of building an own computer vision model for custom use cases, if the other services are not sufficient for the goal which should be achieved.
Knowledge
Whether you want to build a QnA Bot with the QnA Maker API or you want to build an app which serves the users with recommendations based on past data, this category offers some nice services, which can be used to implement knowledge features into your apps. Additionally, what’s quite cool is the Custom Decision Service which lets you build acontextual decision-making service which is self-learning with experience.
Speech
As speech is the new and modern way to interact with a service, the speech APIs give you the possibility of implementingspeech translation or speaker recognition features into your apps to make it more human. With the Bing Speech API, you can even convert text to speech and vice versa on the go to understand your users’ intent.
Language
With the introduction of my Azure Bot “Homie” , I already showed you how to use one of the services in the language category: Language Understanding Intelligent Service (LUIS) in order to understand the intent of the user who interacts with my Bot. Furthermore, the other APIs can be used to detect the sentiment of a given text (like I did with Survey 365 ) ortranslate text into other languages.
Search
Search is one of the most important services for nearly every application or solution nowadays. In order to implement a search service, it is essential to provide the best possible results. Therefore the services and APIs in the search category are all offered by Bing and can be used to search the content of different types of news, entities, images or videos. In addition, the Bing Custom Search can be used to implement custom search routines to deliver the results you want your users to find.
Labs
As the Cognitive Service APIs are rapidly growing the labs can be used to evaluate possible future APIs which are currently development by Microsoft. The current spectrum is ranging from gesture based controls to route logistics and location insights.
Conclusion
Microsoft Cognitive Services offer powerful and easy to use APIs for adding intelligence to various apps and solutions without the need to hosting the services on your own. The main benefits are:
- Easy to use services
- NodeJS and C# support in terms of development
- Can be implemented nearly everywhere (web apps, desktop/mobile apps, bots, …
- Powerful services with a wide range of possible use cases
The full image can be downloaded here: Cognitive-Services-Infographic-with-Description
Feel free to use it for internal use in your presentations or documents. The only point I ask you to do is to credit me and link this article in your documents where you use it. Please do not sell this as your own ;)
For PowerPoint slides I have also created a more handy infographic, which should fit better on slides (it actually doesn’t show the descriptions of each API). You can download it here:** Cognitive-Services-Infographic **
Cognitive-Services-Infographic