How you can bring intelligence to your apps with Bing
You don't have to have data scientists and a huge budget to add intelligence to your own apps to make them smarter and more engaging - you can do it in just a few lines of code using APIs that give you facial identification, location intelligence, speech understanding, text analytics, and more.
Wherever you look, everything is going AI these days, from self-driving cars to predictive maintenance that services lifts and airplane engines just before they develop a fault. And it’s not just things that sound like science fiction; intelligence is already in tools you use every day. AI-driven product recommendations pop up on shopping sites to show you the product someone like you is most likely to buy right now. Machine learning-powered search engines make it easy to find obscure web sites with the information you need. AI is behind translation tools that can understand speech in multiple languages. Intelligent tools can look at the text of a job advert and tell you who you’ll appeal to with your phrasing and who you’ll discourage from advertising. What could you do with that in your own applications?
You don't have to have data scientists and a huge budget to add intelligence to your own apps to make them smarter and more engaging - and it's as useful as for traditional applications as it is for bots, voice-driven services and ambitious attempts to solve cancer. AI is something any developer can use, for any app you need to build - and on any platform. Want to find out how? Come to the free Bing API Developer event Bringing Intelligence To Your Apps at out London Paddington offices on the 5th of December!
What do intelligent apps look like? Uber wants to make sure the person driving the car that turns up to collect you is the driver who’s registered with the service, not a cousin or friend they know nothing about. So now the drivers have to snap a selfie when they start work, and face recognition makes sure they’re who they say they are. And if they’re wearing a hat or sunglasses that make it hard to tell, the driver app tells them that’s why they haven’t been recognised so they can fix it quickly.
Like Uber, social media analytics service Vigiglobe is using Microsoft Cognitive Services APIs. Their own software was great for interpreting what customers were saying online when they used text, but it couldn’t understand the images that are attached to up to half of social media posts these days – which might completely change the sentiment of the message, or might even contain inappropriate adult content. With the Computer Vision API, Vigiglobe can tag and analyse pictures too, making it easier to spot unhappy users or filter the messages a marketing campaign highlights.
Building machine learning systems is still complicated, but you can take advantage of machine learning algorithms with a minimum of code by calling the many APIs offered as Microsoft Cognitive Services, covering vision, speech, language, knowledge and search and providing functionality like object recognition, emotion detection, facial identification, speech understanding, sentiment analysis and text analytics. These are based on the AI developed for Microsoft products like Bing and Skype and Office, turned into a growing collection of cross-platform, online APIs covering vision, speech, language, knowledge and search and providing functionality like object recognition, emotion detection, facial identification, speech understanding, sentiment analysis and text analytics (with more tools added frequently).
The search APIs let you pull in all of Bing’s knowledge of the web into your own application; you can include Bing news results, Bing web results, images and videos, even the Bing search suggestions. You can do a lot more than embedding search queries; you can use the knowledge graph Bing uses to represent all the entities it knows about and the way they’re connected. That’s how Bing knows that movies have directors and actors and posters and release dates and sound tracks and script writers and filming locations, while restaurants have menus and opening hours and special offers. For news stories, it means you can specify a topic and get relevant stories even if they don’t have the keyword you might expect. And the images you retrieve come with machine-generated captions to explain them, and galleries of images that are visually similar, so your users can keep exploring them (there’s a deep dive on the search APIs at the event).
Want to tag the contents of photos so you can search for them later, or extract the text from a credit card receipt so it can drop straight into an expense claim? There are APIs for that. Want your support chatbot to be able to deal with a wide range of language rather than just a few keywords? You could put up a camera and find out if the people stopping at your stand at a trade show are surprised or bored by your products. Start using the APIs with the free tier, even in commercial apps; if you need more calls, as usual with APIs you pay by usage.
And if you want to get more sophisticated once you find out how useful intelligence is in your applications, you can move on to building your own models with the drag and drop algorithms in Azure Machine Learning Studio, using the machine learning features in Azure Data Lake if you need to work against very large data sources, or turn to the Cortana Intelligence Suite for predictive analytics and maintenance.
Mapping your business
Another way to make your applications smarter is to add location intelligence. Some seventy to eighty percent of all business data has a geospatial context that you can use for planning, asset tracking, customer service and business intelligence. Maps have gone from being a source of information to a way of helping you understand your data, so you can spot business trends and opportunities. You could use that to see where sales are increasing – or going down. You can see where customers are interested in your products, and whether you’re selling them in those areas. Geofencing in apps could alert staff who are travelling when they’re close to an important customer, or a supplier it’s worth checking up on.
Add in time and it gets even more useful. Take congestion and travel times into account and you can find out whether an outlet is really convenient for the customers you want to attract in that area. Look at seasonality and discover what products you need to have available and when, in specific areas. It might surprise you. Instead of buying the obvious things like torches, batteries, canned food and bottled water, when there’s a hurricane on the way in Florida, shoppers head to Wal-Mart to buy beer, and sales of Strawberry Pop-Tarts go up sevenfold.
You can get those kinds of insights yourself using the Bing Maps developer APIs for custom app development. With Bing Spatial Data Services you can overlay your own data on maps, and use data from Microsoft like post codes, neighbourhoods, city and county boundaries – and you can set up that connection to Bing Maps with just five or six lines of code.
You can upload your own data set and have that exposed as a spatial REST service. If you want to find locations along a route and look at the intersection as a polygon, SDS takes the results and turns them into the Bing Maps shapes for you so you don’t have to write any code to do the parsing. Or you can add geometry calculations. When you want to search along a route, the standard buffer distance is a mile away from the road and you don’t need to write extra code to do that. But if you need a larger buffer for rural areas, or a much smaller zone for built-up areas, you can choose your own size.
If you just want to embed maps, there’s a new API that lets you do that without writing complex code.
Displaying the boundary of a post code or combing multiple post codes together, filtering results, searching inside an area uses select on a map, generating test data to try out your map, creating heatmaps, choosing the map style, using custom image filters to customise or remove colours, even pulling in 360-degree StreetSide imagery: you can get rich visualisations with the minimum of code thanks to built-in primitives. You can call Bing Maps autosuggest tools for cleaning up addresses and locations that users type in even if you’re not displaying a map. And then you can export maps, complete with your own business data, as images you can print or share via email via an API as well as exporting KML or the more common GeoJSON to get your visualisations out of Bing Maps.
If you want to learn more about adding intelligence to your software, take advantage of the search APIs in Microsoft Cognitive Services to bring just the right information into your apps, and start getting key business insights from your own information with maps and rich data visualisation using the location intelligence platform in Bing Maps, then make sure to sign up for Bringing Intelligence To Your Apps Developer event on the 5 December!