Machine learning has been around for a while, so even if you haven’t worked on it as a developer, you’re probably very familiar with it as a consumer. When you add something to your cart in Amazon, and see a list of other recommended products that you might also like—that's an example of machine learning. Essentially, machine learning is the development of computer programs that can learn and create their own rules, based on data.
Developing machine learning applications is different than developing standard applications. Instead of writing code that solves a specific problem, machine learning developers create algorithms that are able to take in data and then build their own logic based on that data. In the Amazon example, data about customer behavior and sales is used to determine which products you're most likely to also be interested in. It isn't looking at a 1:1 relationship between what's in your cart and another specific product—like something a marketer or sales person recommended selling together—instead it's taking into account all of the existing data, from all visits and all sales, and using that to predict behavior and determine recommendations that make sense. New products—and new data—are always being input, so the recommendation results are continuously adjusting and improving.
Why should you care about machine learning now? With the current increase in IoT and connected devices, we now have access to so much more data—and along with it, an increased need to manage and understand what we know.
Also, because so many different industries are starting to rely on machine learning, you have a great opportunity as a developer to learn how it works and how it might bring value to your product.
Types of Machine Learning Algorithms
The training data consist of labeled inputs and known outcomes, which the machine studies until it can apply the label on its own. For example, to create a face detection algorithm, you might provide images of landscapes, people, animals, buildings, and so on, with their respective labels until the machine could reliably recognize a face in an unlabeled image.
The machine analyzes unlabeled data and categorizes it based on similarities it has identified. So, you might provide the same photos as in the above example, but without their labels. The machine would still be able to cluster images based on shared characteristics (the sharp lines of a cityscape vs. the round shape of a face, for example)—but it would not be able to say that that round shape is a “face.” These programs are used to identify groupings within data sets that may be difficult or impossible for a human to see.
A combination of the above, used when there is a large amount of data but only some of it is labeled. Unsupervised learning techniques might be used to group and cluster the unlabeled data, while supervised learning techniques can be used to predict labels for it.
Uses simple reward data to train the machine on ideal behavior within a specific context.
Faster than We Can Do by Hand
The biggest advantage to machine learning is that it allows us to do things much more quickly than we'd be able to do otherwise. It can't solve problems that a human being couldn't also solve, but it can take in a huge amount of data and very quickly build connections and predictions based on it. That becomes even more important as we continue to expand the amount of data we're generating through IoT and connected devices. Think of a smart outlet or a step counter—or really, anything in your life that generates data—and then think about how much data it’s able to generate on a daily basis. And then multiply that by every person who owns that product. The more connected we are, the more information there is; machine learning allows us to identify important patterns and insight, at a speed that humans simply can’t.
What’s the Market?
Any industry with access to data can benefit from a greater understanding about what that data means—whether that’s a manufacturing plant trying to anticipate repairs, or the makers of a driverless car. Here’s how some industries are using machine learning:
Hello, My Name Is Chatbot: Current Trend
This year, Facebook Messenger launched with chatbots, making it possible for companies and consumers to engage using bots. Essentially, this means that when a customer visits your Facebook page, they can hit Message as if sending a direct message, and interact right away with AI that can help them make decisions and learn about products. With each interaction, the chatbot improves. Specific transactions can also take place directly—click on the car icon in Messenger to request a ride from Uber, for example.
These chatbots not only send text, but also images and call-to-action buttons—which means that they can handle automated customer service, e-commerce assistance, and even content. As accuracy continues to improve, this begins to look a lot like an automated concierge, allowing consumers to quickly and easily get the information and service they’re looking for. This is part of a bigger trend, sometimes called “conversational commerce," which taps into the popularity of mobile messaging apps and the increasing power of AI—where the future of shopping happens in a chat window.
A Few Places to Get You Started
One of the best ways to learn more about machine learning is to look for groups in your area. There are also a lot of resources online. Here are some links to get you started:
Machine Learning Glossary
Common terms in machine learning, statistics, and data mining.
Facebook DataMining / Machine Learning / AI Group
Public group for anyone with a general interest in various aspects of data mining, machine learning, human-computer interaction, and artificial intelligence.
Facebook Bots Group
Closed group with about 10,000 members. Request to join the group to discuss what you're working on in the world of chatbots.
LinkedIn Pattern Recognition, Data Mining, Machine Intelligence and Learning Group
Closed group with just under 30,000 members, for anyone interested in pattern recognition, data mining, machine Intelligence, and learning.
LinkedIn Machine Learning and Data Science Group
Closed group with 40,000 members, with a focus on the latest in data science and machine learning. Includes forum-based technical support and industry job opportunities.
LinkedIn Machine Learning Connection Group
Closed group with over 20,000 members, intended as a networking group for anyone interested in next-generation machine learning.
Quora Machine Learning
Questions from novice to experienced machine learning developers answered by the Quora community.
Machine learning is a huge topic, with a rich history, and a lot of things for you to consider. It’s also a topic that we’re very interested in, so check back here for more exploration of this topic in the future.