Companies today are trying to incorporate AI capabilities to many of their business processes which could help get work done with minimal or no human intervention, To achieve this, every organization has to develop their own Machine Learning models to perform sentiment analysis, ignore offensive contents, Language Detection, Key Phrase Extraction, Image Tagging etc. Not only is it complex to build these ML models but the model will need a tremendous amount of real-world data to get accurate results.
Microsoft has come up with Azure Cognitive Services which brings a set of AI functionalities that can be incorporated with your applications. Azure does the hard part of model creation and regular training while users can just use the model with the help of APIs. To use these services, users need not have any Machine Learning experience.
Some of the AI capabilities of Cognitive Services are,
- Text Analytics
- Text Translation
- Natural Language Understanding
- Anomaly Detection
- Content Moderation
- TTS (Text-to-Speech) and STT (Speech-to-Text)
- Image Tagging and much more
To know more about Cognitive Services Click here.
To derive value from Cognitive Services in PowerBI, users used to write code to authenticate, pass data to the API and store the API response for further modelling. In a typical ETL scenario, Cognitive Services were used in the Transformation layer of the ETL Architecture.
You can also integrate a PowerBI report with Cognitive Services by creating a custom function in M Query with all the connection information of Cognitive Services. Then we need to parse through the JSON response in PowerBI to get the values out of it. You can use all the Cognitive Services API through these methods, Only the endpoint URL and variable to parse the response would be changing.
Cognitive Services are now integrated into PowerBI directly as a premium feature, so you don’t have to deal with all the resource creation, keys, connectivity on the backend, you can now use it directly in PowerBI. Not all Cognitive Services can be used this way at this point.
The supported functionalities as of today are Sentiment Score, Key Phrase Extraction, Language Detection and Image Tagging. To use other features of Cognitive Services, you need to create a cognitive service resource.
Text Analytics is a part of Azure Cognitive Services package, it helps to easily evaluate sentiment and topics to understand what users want. This Package includes Sentiment Score, Key Phrase Extraction, Language Detection
Image Tagging is part of the Vision API which is used to extract rich information from images. The API would process the image and provide text outputs with the objects identified in the image along with a confidence score returned by their Model.
This AI Workload usage that is executed on the Power BI Service does not require an Azure Cognitive Services subscription. However, this feature requires Premium capacity nodes EM2, A2, or P1 and above. You can set the maximum amount of memory the AI workloads can consume so that the other resources are not disturbed.
These services can be invoked as a function from AI Insights button while editing your dataflow entity.
Azure Cognitive Services is an easy solution to implement AI as it takes care of all complexities in ML model creation and training. As users, you only need to make use of the APIs to implement the solution. If the reporting tool is PowerBI, we now have a better integration to avoid resource creation and connectivity. If you would like to know more about how Cognitive Services can be useful to your organisation, Get in touch with us.