It wasn't too long ago that you needed to put on a white lab coat to work with machine learning & artificial intelligence. The science was arcane, complex, and something that very few human bits of intelligence could grok.
Tap the readymade machine learning models behind these cloud-based APIs to add a stroke of genius to your app
That's changed. The scientists in their lab coats recognized the power of distributing software as a service and they bundled together their code and turned it into an API that anyone could use. Just post your data to the service and artificial genius comes back in a few milliseconds. Well, it could take longer if you've got a big data set.
What does that artificial intelligence do with your dataset behind the curtain? You won't need to pay much attention. That's the point of software as a service. Data goes in. Genius comes out.
Okay, that's exaggerating the progress. You may not need to understand all of the math that's deep inside the AI code and you may not need to feel completely comfortable with "tensor this" and "vector that." But you will need to spend some time wrangling your data until it fits. There is still plenty of work that must be done to get the data in the right format with the values in the right columns with the right type.
After you get the data in the right shape, you'll almost certainly push the start button on the API more than a few times. That's part of the point of the model. You spend your time tweaking your problem and let the magic API run the AI code in the background. You do more science and the API does more of the numerical heavy lifting.
It's not perfect, but it's better than writing the code yourself. That's why there's been an explosion of interest and why there are now many choices of machine learning APIs, not to mention cloud services that will turn your data into models and models into web services. Here are just a few of the machine learning APIs that are ready to save you the hours, days, and months of grinding through complex algorithms.
The terms "artificial intelligence" and "machine learning" aren't very common in the Cloudwords sales literature, but that doesn't mean they aren't part of the offering. Officially, Cloudwords is designed to make it easier for enterprises to manage large chunks of text and keep consistent translations available to any number of languages. Multinational corporations with marketing teams that must target people who speak different languages can use Cloudwords to ensure that all versions of the customer-facing text are kept consistent and up-to-date.
Behind the scenes, Cloudwords relies upon several different translation engines that use both neural networks and statistical models. It also offers a mechanism for keeping a cache of common idioms and phrases that may need custom, human guidance. This translation memory is updated automatically as the text flows through the system.
The code includes modules for integrating the Cloudwords pipeline with enterprise file systems, marketing automation tools, and popular content management systems. When new text arrives in one language, Cloudwords will move it through the pipeline into machine translation services from subcontractors like Google, Microsoft, or Lilt. Then it flows back out into your repository or CMS where your readers will see the text in the appropriate language for them.
"Where's Waldo?" wouldn't be much of an adventure if every kid had access to Microsoft's Face API. When you ask the Face API to scan a photo of a person, you'll receive a data structure with the coordinates of the face in the image. The API will also output very detailed estimates of the hair color, the amount of facial hair, and the age and gender of the person. And for Waldo searchers, the Face API can look for matches in a database of images and return the odds that the two pictures are of the same person.
It's easy for humans to read the emotions on faces and pick out the happiest, saddest, or angriest picture in a stack. Microsoft's Emotion API serves up an artificial intelligence that can discern the feelings of the person in the image automatically.
While emotions are complicated for humans, the Emotion API simplifies them into a vector of eight numbers between zero and one that represents just how much anger, contempt, disgust, fear, happiness, sadness, or surprise can be found in a particular face in the image. Microsoft has tested these across countries and believes they are generally consistent across cultures. Are they really? It's probably best not to place too much weight on this vector and just accept it as a miracle that the algorithm can get answers that are in the right ballpark.
Automatic Alternative Text
Good websites include alternative text in the <img> tags so that search indexes can understand them and the visually impaired can know what's shown. It's easy for a human to do this for a handful of images, but it's very tedious to do it for more. That's where artificial intelligence can save everyone time. Some clever webmasters are using Microsoft's Computer Vision API to automatically assign alternative text to images. The AI isn't always right, but if you've got more than a handful of images it will make your life much easier.
The Automatic Alternative Text module for Drupal is one example of how a good CMS can upload images to the Vision API in the background and then fill out the alt field for you. Websites built on top of Drupal are often homes to large and open communities where the users discuss and occasionally upload images. The participants may or may not want to spend the time figuring out just the right caption for some image. Using artificial intelligence upgrades the quality of the site for everyone, speeding searching and saving the users the time to write good captions.
Sometimes the wisdom of the crowds is marred by the sophomoric humor of a few. If your website wants to open up the doors to images from all of the users, you've got to be ready for the people who enjoy posting sexually explicit imagery where it doesn't belong. Nudebox - one of the tools from Machinebox - will scan the images for too much skin. Is it foolproof? No, but it will help you flag the most questionable images, and that can save you quite a bit of time.
One of the more interesting options from the AWS cloud is Amazon Connect, an applied bundle of tools designed to help you create a call center for your company. On the outside, it's just a toolkit for building telephone services. On the inside, it wires some of Amazon's AI tools into the loop to handle the chores. The natural language tools behind Amazon Lex let you create chatbots that can serve as the first round of contact for your customers. If human intelligence is necessary, Connect can send the customers to the right service agent with the expertise needed to tackle the problem. Then it will track the resolution and rank the agents to ensure that the next callers get the best experience. With Connect, Amazon has already integrated the various AI tools so you don't have to.
Google BigQuery ML
Many of us are comfortable living in the world of SQL. We've built our data collection with INSERT statements and we can write JOIN statements in our sleep. Google created BigQuery ML so the people who use SQL can start to use AI to analyze their data without rewriting their entire stack. In an ideal world, you could take a huge, installed software stack that relies upon SQL and then redirects the SQL storage and copying routines to push the data you want into BigQuery ML using ANSI:2011 SQL. It's never as simple as all that, but it's still much simpler than rethinking the entire architecture and rewriting all of your code.
After you push the data into BigQuery ML, a new "SQL" command, CREATE MODEL, will fit a predictive model to the columns you choose. The command accepts many of the standard SQL selection clauses, making it comfortable for a database analyst to build models without using Python, Java, or any of the traditional machine learning languages.
The biggest advantage may come after the model is created because the data is already in the database and ready to be used by your reporting or business intelligence infrastructure. Google has already worked through the integration with many standard tools such as Tableau, MicroStrategy, and Looker.
If you have a long video with many faces, the Animetrics API will scan through the video, frame by frame, and pull out all of the faces it finds for identification and clustering. The algorithm extends the 2D imagery and constructs a 3D approximation to estimate the "pose," or the orientation of the face along the x, y, and z axes. It can even re-render the face in a different pose or angle than the one that was captured. To generate the results faster, the code process multiple images in parallel. The basic API will also work with a set of still photos of faces if you don't have video.
The world of Twitter is a firehose spewing bazillions of snippets of text that capture the zeitgeist of the most chatty, opinionated people in the world. If your job is tracking a brand, a political movement, or some other bit of textual flotsam that floats along on the torrent of words, DiscoverText will help you make some sense of it. DiscoverText provides access to the main Twitter feed and gives you the tools to set up your own machine classifiers or filters to search out the text you want. Once the tweets are identified, DiscoverText will help you store, analyze, and cluster the results.
It's dangerous to think of an AI as complex and open-ended, like some cyber mashup of Heathcliff and Einstein, wandering around tossing off brilliant observations. Some of the artificial intelligence is tightly focused on delivering one goal.
Consider SendPulse, a tool designed to make marketing emails more desirable and useful so that recipients will open them more often. SendPulse uses a complex model to determine when people normally read their email and then arranges for those emails to arrive just then, so they don't end up in the big pile of slush that might be skimmed and deleted en masse. To gather more intelligence about the readership, SendPulse relies heavily on A/B testing to learn which messages succeeded with each user. All of this data is crunched and optimized to do one thing well: grab more readers in that split second when they skim their inbox.
This approach may be the ultimate expression of artificial intelligence. It's not some grand, buzzword-tagged embodiment of genius. It's not a complex, inscrutable machine filled with high-end math. It's just a simple practical tool with a well-defined job. That's how artificial intelligence goes from being something with lab coats to something that's commonplace.