You hear about AI, machine learning, and cognitive services from every direction these days. Personally, I’ve been getting deep into the cognitive services provided by Microsoft and Google. Over the last year these have expanded enormously, and the pace of development is only increasing.
I’ve previously blogged about our best of breed strategy. This blog goes deeper into how our approach works across different cognitive services platforms and how that lets us leverage what I call the “cognitive arms race”.
SuperPower Investments in AI, Machine Learning, and Cognitive Services
I recently did a comparison of Google and Microsoft in a webinar for the Cognitive Computing Consortium – you can check out my deck on SlideShare. Both companies (as well as IBM, Amazon, and Facebook) are investing billions in this area, in a kind of arms race competing for developers and applications.
That’s why we decided to integrate our products with both of them. We can add some remarkable capabilities quickly using these cognitive and machine learning services, providing better search by enhancing familiar search capabilities like content processing, relevance ranking, and recommendations. We can also field new types of search and discovery, from multi-media and multi-lingual search through interaction with search through bots and digital assistants. (Read about our integrations with Google Machine Learning and Microsoft AI on our website).
Our Best of Breed Approach to Cognitive Search
Why do we support both Microsoft and Google?
- Our customers get the flexibility to pick the services that they prefer, whether for performance or because they have an affinity to one or the other cloud platform.
- We can deliver the best machine learning and cognitive computing capabilities, and if one or the other service is significantly better than the other we can take advantage of this.
- Using both and combining the results can provide better results in some cases (using multiple algorithms is a well-known approach in AI, sometimes called ensemble learning, consensus clustering, or bagging).
This is very similar to the approach we’ve used with supporting different search engines for quite some time. We ensure that each search engine is solid and that all of our products work with it. Our customers can pick the search engine they prefer or ask us to recommend or provide one for them. They can also combine results from multiple search engines.
Our cognitive search approach simply adds in cognitive computing and machine learning services in the same way. Our web page on cognitive search shows how this maps across our product portfolio.
Image Recognition for Search
I’ll give you an example of how our approach works for our image recognition and image search offering. Along with our first release of SmartHub, we’ve added image recognition capabilities into our AutoClassifier, using either Microsoft’s Computer Vision API, Google’s Cloud Vision API, or both. These models have been pretrained on millions of images, and the accuracy is surprisingly good. Where customers want to tailor their own models, they can use the Custom Vision Service and/or work directly with Tensorflow models. Our AutoClassifier can take the outputs and confidence levels from these services and create a focused, normalized, high quality set of tags on images – whether they are image-only files or images embedded within documents. In some scenarios, using both Google and Microsoft services and combining the results gives the best answer; this is a well-known technique in machine learning called ensemble methods (also called stacking).
There’s many more exciting things we will be doing with cognitive services. We are always interested in new ideas and difficult challenges, so if you have questions or suggestions around cognitive search and machine learning, don’t hesitate to contact us.