ISE Blog

Start Using Machine Learning (Part 1)

“We believe that every successful new application built today will be an intelligent application,” says Soma Somasegar, venture partner at Madrona Venture Group and former head of Microsoft’s Developer Division. Indeed, we are in a transition period where the barriers to entry in Machine Learning are going down dramatically. And at the same time, more individuals and businesses are seeing the potential of Machine Learning to improve existing products and services and to enable completely new applications. The time is now for both software developers and businesses of any size to start using Machine Learning to create more powerful user experiences and bring new ideas to the marketplace.

In part one of this two part post, I will talk about why you should start using Machine Learning, no matter what size your company is. In part two, I will provide some guiding principles on how to start.

Demystifying Machine Learning

There are various, often conflated terms that get tossed around in news articles, tech blogs, and the many conversations on this topic. These include Artificial Intelligence (AI), Machine Learning, Deep Learning, and Predictive Analytics.  In addition, much of the information focuses on sci-fi like applications of the technology that make it seem out of reach. But in fact, the concepts are very accessible.

Artificial Intelligence is simply any human-like intelligence exhibited by machines. It is broken up into two categories:

  • General AI is a machine that can perform all human-like behaviors such as driving a car, carrying on a conversation, ordering off a menu, etc. We are clearly quite a ways off from achieving this.
  • Applied AI is a machine that can perform one specific behavior such as ordering off a menu.

Machine Learning is one means to achieve Artificial Intelligence and is particularly suited to applied AI. It is commonly defined as any algorithm that "gives computers the ability to learn without being explicitly programmed." For example, instead of programming the exact conditions that would qualify an individual for a bank loan, I can present historical loan applications and payment data to a Machine Learning algorithm and allow it to learn the best conditions. Then the model can be presented with new loan applications and predict whether the individual is a good candidate for a bank loan or not. This is also a good example of Predictive Analytics.

Deep Learning is a specific technique for Machine Learning that uses artificial neural networks to learn from data and make predictions.

If you want to keep exploring these topics, check out the AI Playbook microsite from Andreessen Horowitz.

Proven Value, Incredible Potential

The value of Machine Learning has already been proven at large tech giants like Google, Amazon, and Facebook. In fact, it has become a key part of their day-to-day operations. Joaquin Candela, Director of Applied Machine Learning at Facebook made this bold statement, “Facebook today cannot exist without AI. Every time you use Facebook or Instagram or Messenger, you may not realize it, but your experiences are being powered by AI.” In addition, these and other companies continue to drive towards more sophisticated AI techniques and applications that have incredible potential. Andrew Ng, VP & Chief Scientist of Baidu said, "Just as electricity about 100 years ago transformed industry after industry, I think that AI is now in a position to have a similarly large impact on society." Perhaps part of this potential for transformation lies in Machine Learning now becoming a mainstream technology that is not only accessible to tech giants but is also leveraged by small business and startups to build new products and services.

A word of warning though: It's tempting to put the focus on the algorithms and models, and neglect the business problem. Artificial Intelligence and Machine Learning offer a way to power-up an already great idea, to create a more powerful and engaging experience, to set a product apart, they are not the product itself.

Where to Start

So where do you start? One of the most important things you can do is mentally add Machine Learning as one possible solution when approaching a problem. What I mean is, whether you are improving an existing product or building something new, ask yourself if Machine Learning is a good fit. For example, let's say you are creating a fashion forward online clothing store and want to boost sales by recommending new items to shoppers based on their previous purchases and purchases of other similar customers. You could write a complicated set of rules with many "if this, then that" statements to attempt to solve this. Or you could apply Machine Learning to learn past purchasing behaviors and then predict the likelihood that a shopper will buy a certain item. In general, whenever the problem involves complex logic or reasoning then Machine Learning is a strong candidate.

It also helps to know a little bit about the different types of Machine Learning. There are two main categories:

  • Supervised Learning is where you have input data that is labeled with the expected output and you use this data to train a Machine Learning model. The Machine Learning model essentially learns how to map the inputs to the expected output from the training data. Then it can take new inputs and predict the output based on what it has learned. Two key prediction problems solved with Supervised Learning are:
    • Classification: Predicting a category like "cat" or "dog"
    • Regression: Predicting a real value like the number of users that will visit your online store next week
  • Unsupervised Learning is where you have input data with no expected output and you use Machine Learning to find patterns within the data. Two key problems solved with Unsupervised Learning are:
    • Clustering: Finding related groups such as shoppers who have similar tastes
    • Anomaly Detection: Identifying extraordinary items or events within your data such as a fraudulent transaction

It is important to note that today most of the business value is realized through Supervised Learning. So if you need one targeted area of Machine Learning to continue exploring, that's it. If you want to go a little deeper, take a tour of Machine Learning algorithms with Dr. Jason Brownlee.

In summary, while applying Machine Learning to your business problems may not be easy, it is definitely within reach and can yield great benefits. Awareness and a basic understanding can go a long ways and allow you to recognize the solution even if you lack the knowledge or technical skill set to actually implement it. You can always get help with that part (in fact we'd love to help).

In part two of this blog post I will offer a few guiding principles on how to start using Machine Learning effectively.

Matt Coventon, Senior Software Engineer

Matt Coventon, Senior Software Engineer

Matt Coventon is a Senior Software Engineer and the Practice Lead for Big Data Services at Innovative Software Engineering (ISE), a professional services company with a strong interest in the intersection of vehicle telematics, mobile applications, and big data. In his 10 years at ISE his primary focus has been architecting and building web, middleware, and analytics applications that are high performance, fault tolerant, and easy to scale. He enjoys tackling new technologies and understanding how they can be best utilized within the enterprise. He’s a father of four, and in his free time, he’s a songwriter.