basics of machine learning€¦ · basics of machine learning joel reijonen lead data scientist at...
TRANSCRIPT
Ericsson Internal | 2018-02-21
Basics of Machine Learning
Joel ReijonenLead Data Scientist at [email protected]
Ericsson Internal | 2018-02-21
Machine Learning –Motivation
— We are living in a connected world where the connected devices and users produce more data than we have ever seen
— How do we cope with such high volumes of data?
— How do we ensure that services today will also function tomorrow?
— Here machine learning may become handy..
Figure taken from Ericsson Mobility Report: Internet of Things forecast
Ericsson Internal | 2018-02-21
Machine Learning –What is it?
— Machine learning refers to the machine’s ability to improve its own performance independently
— Machine learning strives to extract additional, hidden, information from the data
— Machine learning performs well with multi-dimensional data whereas human gets easily lost in the details
Intelligence Amplification
Artificial Intelligence
Machine Learning
Machine Intelligence
Big Data Models
Algorithms
Ericsson Internal | 2018-02-21
Rules
Machine Learning –New way of thinking
Algorithm Programming
Machine Learning
Rules
DataAnswers
Data
Answers
Ericsson Internal | 2018-02-21
Functionality of Machine Learning
— In machine learning, the main idea is to construct a model
— The constructed model consists of parameters or weights
— Learning happens by updating weights
x1
x2
w11
w12
w13
w14
w21
w22
w23
y
Input layer
Hidden layer
Output layer
wij = weighted connection
Ericsson Internal | 2018-02-21
Machine Learning Techniques
Unsupervised Learning
Supervised Learning
Machine Learning
Other Learning Techniques
Classification Regression Clustering Reinforcement Learning
Deep Learning
Ericsson Internal | 2018-02-21
Supervised Learning
— Supervised learning is a technique where learning is based on training from examples or experiences in the past
— Training set is composed of labeled data which consists real observed input and output values.
— Goal: Predict class or value
Raw data
Supervisor
Supervised Learning
Training Outputs
Training inputs
Output
Ericsson Internal | 2018-02-21
Supervised Learning –Classification
— Classification is a supervised learning method that determines for which output or class do the sampling of inputs belong to
— Classification can be used in applications such as image recognition, pattern detection and natural language processing
— Potential industrial use-cases: surveillance, quality control, system health monitoring
Class 2
Class 1
Classification rule
Ericsson Internal | 2018-02-21
Supervised Learning –Regression
— Regression is a supervised learning method where the inputs of the system are mapped on outputs that are numeric values
— Regression is used in applications that take advantage of estimations, predictions and forecasting
— Potential industrial use-cases: battery power consumption, power plant engine load optimization, stock-market prediction
Regression
Ericsson Internal | 2018-02-21
Unsupervised Learning
— Unsupervised learning is a technique that does not utilize the observed output values rather takes advantage of input values
— Unsupervised learning pursues to extract main features and structures of the data
— Goal: Determine groupings and pattern
Raw data
Unsupervised Learning
Output
Self-guided learning
Ericsson Internal | 2018-02-21
Unsupervised Learning –Clustering
— Clustering is an unsupervised learning method where inputs with similar features and attributes are allocated in the same cluster
— Clustering can be utilized in applications such as image analysis, data mining and pattern recognition
— Potential industrial use-cases: customer clustering, fault detection in power plant engines
Cluster 1
Cluster 3
Cluster 2
Ericsson Internal | 2018-02-21
Other Learning Techniques
— Other learning methods are techniques which may have similarities with supervised or unsupervised techniques but yet they have significant differences in their functionalities to be categorized differently
— Most of the other learning techniques take advantage of feature extraction and rewarding policies
— Goal: Learn features and achieve rewards from the environment
Raw data
Other Learning techniques
Output
Feature learning
Environment
Ericsson Internal | 2018-02-21
Reward
Other Learning Techniques –Reinforcement Learning
— In reinforcement learning, the machine is rewarded if the actions or decisions that the machine has made have increased overall performance in a certain environment
— Reinforcement learning can be applied in applications that take advantage of multi-agent systems, controlling systems and swarm intelligence
— Potential industrial use-cases: traffic light management, robotics, video games
Action
Environment
Machine
State
Ericsson Internal | 2018-02-21
Other Learning Techniques –Deep Learning
— Deep learning takes a new approach on learning multiple layers of meaningful representations
— Each learned layer introduces new extracted features
— Applications that take advantage of deep learning include, e.g., near-human-level image classification, speech recognition and natural language processing
— Potential industrial use-cases: robotics, advanced system management, digital assistants
Ericsson Internal | 2018-02-21
Other Learning Techniques –Deep Learning
Fault detection
FailureNo Failure
Traditional Machine Learning approach
Input Feature extraction
Output
Fault detection
FailureNo Failure
Deep Learning approach
Input Feature extraction
Output
Ericsson Internal | 2018-02-21
Neural Networks
— Neural networks are a common way to implement previously described machine learning techniques
— Neural networks are inspired by biological neural networks where high number of interconnected neurons process information in parallel
— In neural networks, the connections are called synapsesand processing units as neurons
— Goal: Neural networks strive to achieve human-like performance in wide field of applications
x1
x2
w11
w12
w13
w14
w21
w22
w23
y
Input layer
Hidden layer
Output layer
Ericsson Internal | 2018-02-21
Output
Neural Networks –Training
Input
Neural Network
Target
Loss function
Optimizer
Modify weights
— Neural network training is iterative process where the learned performance of the neural network is evaluated by using a loss function
— Loss function (cost function) refers to an objective function that evaluates the performance of the neural network
— By utilizing results from loss function, the optimizer handles the weight modification by updating the weights in such a way that it strives to improve the performance of the neural network
Ericsson Internal | 2018-02-21
Beyond Machine Learning –Artificial Intelligence
— In artificial intelligence, machine learning is an essential concept in order to enable continuous learning from examples or from experiences in the past
— Artificial intelligence take advantage of multiple functionalities but the two most obvious are learning and decisiong making
— In learning, artificial intelligence utilizes machine learning techniques to train models that describe the system behaviour and performance based on the training data
— In decision making, artificial intelligence utilizes trained machine learning models in inferences
— Based on these inferences, artificial intelligence can perform decisions by taking advantage of deduction logic
Machine Learning
Artificial Intelligence
Ericsson Internal | 2018-02-21
Beyond Machine Learning –Data preparation
— In order to achieve reliable results in machine learning, raw data needs to be pre-processed
— Raw data may include noise, redundancy, missing values and domination that may cause counterproductive effects
— Proper data preparation is a preliminary requirement for efficient machine learning
Raw Data
Prepared Data
Structured Data
Cleaned Data
Ericsson Internal | 2018-02-21
Beyond Machine Learning –Skills to Master
— In order to become a superstar in machine learning, I would recommend to learn following skills:
— Linear algebra
— Calculus
— Probability theory and statistics
— Theoretical computer science
— Programming skills e.g. in Python, R or C++
— As interesting machine learning frameworks, I would recommend following:
— TensorFlow
— PyTorch
— Scikit-learn
— Keras
— MXNet
Ericsson Internal | 2018-02-21
Q & A
Thank you for participating!Contact: [email protected]