Machine Learning: a Primer
JULY 8TH, 2016
Before diving into Machine Learning, let's take a step back and take a look at the larger field of technology that encompasses it. Machine Learning is a subfield of Artificial Intelligence. The traditional definition of Artificial Intelligence is the ability of machines to execute tasks and solve problems in ways normally attributed to humans. Artificial Intelligence is not a new tech, but recent breakthroughs in Machine Learning techniques have vastly improved the ability of machines to execute such tasks.
So, what exactly is Machine Learning? Machine Learning (and Deep Learning) systems are modeled on the neural networks of the human brain. These artificial neural networks are learning algorithms that are structured in terms of an interconnected group of artificial neurons. Machine neural networks are similar to biological neural networks in that neurons function collectively and in parallel, rather than by a clear delineation of subtasks to which individual units are assigned. This principle of non-linear, distributed, parallel and local processing is one hallmark of neural networks (biological and machine). The second major hallmark is adaptation, or 'learning'. Any mathematically defined change in neural connection weights over time is referred to as a 'learning'. Learning, in this context, consists of three important parameters; experience (E), some class of tasks (T), and performance (P). If performance (P) at tasks (T), improves with experience (E), the program is said to learn. A third defining characteristic of Machine Learning is that the computer has the ability to 'learn' without being explicitly programmed. Instead of writing code, users feed data (a 'training set') into the algorithm and the algorithm builds its own logic based on the data. Said another way, the algorithm builds a model based upon the training set of input observations in order to make data-driven predictions or decisions expressed as outputs, rather than following strictly static program instructions.
Machine Learning, or neural networks, or learning algorithms, are used to model complex relationships between inputs and outputs, and to find patterns in data via a nonlinear, hierarchical view of the world that accounts for infinite variability. This allows machines to execute tasks efficiently, as opposed to the brute force task execution protocols of previous generations of AI. Researchers, data scientists, engineers, and analysts use these models to produce reliable, repeatable decisions and results and uncover hidden insights through learning from historical relationships and trends in the data.
All of the AI supercomputers that have generated significant media attention (IBM Watson, Google DeepMind, Microsoft Oxford, etc.) are a result of the Machine Learning breakthrough.
Applications for Machine Learning include:
Classifying DNA sequences
Computer vision, including object recognition
Detecting credit card fraud
Internet fraud detection
Sentiment analysis (or opinion mining)
Stock market analysis
If you're looking for additional introductory resources on Machine Learning, Andrew Ng’s free Machine Learning class on Coursera is pretty amazing. Additionally, Adam Geitgey has posted a couple of blog posts titled Machine Learning is Fun! and Machine Learning is Fun! Part 2, which serve as a primer and also include demonstrative examples of Machine Learning in practice.