A branch of the Artificial Intelligence, Machine Learning is opening up entirely new possibilities in the world of automation. Machine Learning is a class of algorithms that learn from data through supervised or unsupervised means.
We can already see the uses of Machine Learning in everything from healthcare, to E-Commerce to autonomous vehicles.While robotics & automation has been simplifying and helping with the most dangerous of industrial tasks since inception, Machine Learning is the next step in refining and streamlining many automated processes, furthering many industries and improving existing systems.
What are Neural Networks?
Modeled off the networks in our own brains, Neural Networks, or Deep Learning as it is sometimes known, is a branch of Machine Learning capable of efficiently learning from large amounts of data. This data can come in a variety of forms including images, number collections, words & even time series/sequential data such as video, sentences or any other type of data sequences.
Despite being developed in the 1940’s Neural Networks have only started to flourish in the last decade thanks to the availability of big data and processing power. What is more is you have probably already come across and used Neural Networks without even knowing. They are the reason spam emails go straight to the junk folder and the same reason you get Netflix and YouTube recommendations that align well with what you want to watch or hear.
How is Machine Learning used?
We can also see this branch of Machine Learning used in fraud detection, e-commerce and other cost vs need based business models, for example in Uber’s surge pricing.
The Uber app uses Neural Networks to adjust its algorithm in real time in response to the huge amounts of data constantly flowing through the app. Everything from time of day, location, city, average distance traveled, event information, traffic information, traffic patterns, car ownership and income for geographic area is all considered, calculated and acted on. With more users than drivers, the algorithm adjusts pricing to try to entice offline drivers to want to start taking passengers. At the same time, this encourages passengers to hold off on their journey if they can. Eventually the supply and demand balance out and the app will eventually return to more regular pricing. All decisions made thanks to the learnings, calculations and then decision-making abilities of a computer.
How do Neural Networks work?
Neural Networks enable machines to learn from data, so the only human involvement required is to provide the data, both for training and for use in the real world. The algorithms that train the networks are 'optimisation algorithms' that are designed to efficiently minimise cost functions by adjusting (up to) millions of model parameters, the outcome is that key features in the data that correlate with the desired outcome are automatically detected. Being able to process huge amounts of data and use it to create effective decisions, as with Uber, is what makes Machine Learning so effective.
Machine Learning removes the need for specialist programs from having to be written that attempt to capture relevant features in data to solve some problem. Instead Machine Learning methods will learn from the data which features are relevant to meeting the desired outcome. Instead of focusing on a few specific features (as humans do), Machine Learning methods will use all of the available information in the data to make predictions. This usually results in a more robust system because when a critical feature is missing, the human designed – specialist programs tend to fail as they tend to focus on only a few obvious features, whereas Machine Learning tends to capture even the most subtle features from which the model can still make accurate predictions.
Neural Networks work better than these specialist programmes as they take a series of inputs, process these and present you with an output, which over time and with more data becomes increasingly accurate. Each network is simply a mathematical function. Put simply there are three parts to a Neural Network, an input, an output & inner layers in the middle. The network is made up of up to millions of smaller functions called neurons, the inputs and outputs of these neurons connect together to make the inner layers of the network. The inner layers of the network process the input data to determine the output, with each inner connection having a weight associated with it that determines how much the input at this connection will influence the output. The value of the weights is what is learned during the training process.
Machine Learning and Neural Networks/Deep Learning are a complex but rewarding way of using and processing data which will help technology and automation in the future, to be smarter and more dynamic. Advances in detection, analysis and problem solving have already simplified many processes and we can already see these advances making an impact in both our everyday lives as well as the multitude of industries we work in.
For additional information on how neural networks work watch Mark Rober (ex NASA engineer) explains and builds a Neural Network to predict baseball signals and Machine Learning and Artificial Intelligence Crash Course.
Make sure to read part 2 of our Machine Learning series, describing the three key training & network types.