SlideShare a Scribd company logo
1 of 30
Download to read offline
Computational
decision making
Dr. Boris Adryan
@BorisAdryan
What I aim to
provide
✓basic vocabulary for
✓fundamental concepts of
computational decision making
✓phenomenological introduction
to machine learning methods
✓a rough idea when and how to
use these methods
What this
presentation isn’t
x hands-on tutorial
x thorough summary
x comprehensive guide
x technical deep dive
x statistics course
Is this artificial
intelligence?
word = input(‘Enter a word:’)
for key in British_dictionary.iteritems():
if key.startswith(word):
print(‘This is a British word.’)
Is this machine
learning?
temperature = float(input('What is the temperature?'))
if temperature >= 1.0:
print('Wear shorts.')
else:
print('Wear long underwear.’)
Definition
Rule-based decision making on
the basis of numeric thresholds
or string patterns etc is not
machine learning.
And most definitely it is
not artificial intelligence.
But what if…
…the threshold is inferred at
run time?
“Write a software that says how
close to Euston you can move if
you can afford to spend £650k.”
450
550
650
750
850
950
1050
0 3 6 9 12
Average property price
Northern Line, number of stops from Euston
table = input_table(‘cost at station’)
print(where_x_yields_a_low_enough_y)
Linear regression
is probably the most simple
“machine learning” method.
Average property price
Northern Line, number of stops from Euston
It is an example of supervised
learning, because we teach the
computer the relation between
an input variable (“feature”) and
an output variable (“label”).
450
550
650
750
850
950
1050
0 3 6 9 12
y = m . x + b
Linear regression
can become arbitrarily
complicated.
The difference between curve fitting
in statistics and machine learning is
mostly semantics.
f(number of stops to Euston,
square footage, bedrooms,
bathrooms, …) price
many features
Euston
High
Barnet
small
large
price
Classification tasks I. setosa
I. virginica
I. versicolor
All images from https://en.wikipedia.org/wiki/Iris_flower_data_set
Rather than projecting the feature
vector onto a continuous variable,
many supervised learning
methods identify “class labels”.
Classification tasks
Supervised learning requires
complete input matrices. Missing
or nonsensical values have to be
replaced or removed.
Non-numerical features (think, e.g.
“name of colour”, “smell”) have to
be encoded.
class
label
feature 1 feature 2 feature 3 feature 4
1 5.1 3.5 1.4 0.2
1 4.9 3.0 1.4 0.2
2 7.0 3.2 4.7 1.4
3 6.3 3.3 6.0 2.5
Classification tasks
sepal length
sepalwidth
I. setosa
I. virginica
In a first approximation,
classification (by regression) aims
to find a function that best
separates the different class labels.
f(sepal width, sepal length) (1,2)
“1”
“2”
sepal length
sepalwidth
I. setosa
I. virginica
I. versicolor
Decision trees
sepal width
petalwidth
A decision tree can be understood
as a series of linear separations of
the data.
ratio of sepal width : sepal length
I. virginica
ratio of petal width : sepal width
I. setosa I. versicolor
Random forests
A collection of decision trees, each
trained on a random subset of the
data, can minimise the risk of
over-fitting.
A single big decision tree trained
on all data can effectively describe
a single data point.
sepal width
petalwidth
Over-/Underfitting
Sloppy separation is called
underfitting, and greedy
separation overfitting.
Counteracting an overfit is called
regularisation, and works by
penalising too many features (L1)
or too strong feature weights (L2).
underfit (high bias)
okay
overfit (high variance)
Dimensionality
reduction
Dimensionality reduction aims to
reduce the complexity of a dataset
(in respect to number of features).
The first principal components are
dimensions that explain most of a
dataset’s variance.
Support vector
machine
The SVM aims to provide an ideal
separation plane by supporting it
with a training data vector.
A classification margin protects the
SVM against overfitting.
?
margin support vectors
decision boundary
wTx = 0
negative hyperplane
wTx = -1
positive hyperplane
wTx = 1
Kernel trick
Input data can be projected into a
higher-dimensional space that
allows linear separation of
otherwise inseparable data.
There are different kernels, such
as the radial basis function
(Gaussian) or polynomial kernel.
“2D” input space
Φ
“3D” feature space
http://scikit-learn.org/0.18/auto_examples/svm/plot_iris.html
features
weather forecast
airport location
# of gates
# of runways
# of
snowploughs
airline
aircraft
BLACK
BOX
training
flights
cancelled in
the past classifier
ranked list of
relevant features
weight of
features
thresholds for
features
performance
metric
prediction
new data
General
approach
An intuitive example from real life.
training
classifier
performance
assessment
good enough?
success!
moredatafortraining
data
no
yes
sensitivity
“truepositives”
1-specificity
“false positives”
0 0.2 0.4 0.6 0.8 1.0
1.0
0.8
0.6
0.4
0.2
worse than
random
guess
Classifier
performance
Not all machine learning behaves
ideal, and performance metrics
are important for quality checks
and parameter tuning.
https://en.wikipedia.org/wiki/Precision_and_recall
There is a wide range of performance
metrics, comprising combinations of
true & false positives as well as
true & false negatives.
Metrics zoo
positive class (P) negative class (N)
predicted positive true positive (TP) false positive (FP)
predicted negative false negative (FN) true negative (TN)
data acquisition model building test use in production
data recording
(production system)
evaluation
raw data clean-up feature engineering model learning model selection
labour intense compute intensebrain intense
development
production
ML pipeline
Choosing a method
from: Olson et al., 2017, https://arxiv.org/abs/1708.05070
There is no ‘one-size-fits-all’
machine learning method. Most
methods need to be carefully
tuned to perform ideal.
Often, there a ‘non-functional’
constraints on choosing a method.
Runtime, interpretability, etc.
What about
neural networks?
feature 1 feature 2 feature 3
weight 1 weight 2 weight 3
input function
activation function
class output
error for weight updates
a simple perceptron
Neural networks attempt to mimic
the integrative properties of neurons.
The perceptron is a single-layer
network.
inputs
outputs
Deep neural networks
http://www.asimovinstitute.org/neural-network-zoo
While many artificial neural networks
show great performance, the basis on
which features exactly the classification
works remains largely unknown.
In RL, the methods iteratively
learn to optimise an output from
an abstract representation of a
system
Reinforcement
learning
move (l/r)
or shoot
unknown
systemmap (210 x 160 pixels, 8-bit RGB)
actual score
choose action on basis
of map to optimise score
Mnih et al., Nature (2015)
Machine learning can help to
structure and explore an
unknown dataset.
These methods aid the
identification of classes where
their existence isn’t known yet.
Unsupervised
learning
• Hierarchical clustering
• K-means clustering
• Expectation maximisation
• Density-based clustering
plus
clever visualisation
Hierarchical clustering
Derives hierarchical dependencies of
individual rows and columns in the
dataset on the basis of similarity
(correlation) between their properties.
Combined with a heatmap, gives a good
first impression of a dataset.
k-means clustering
Defines k different centroids to which
data points are assigned by proximity. If
the distance doesn’t get much smaller, k
is the number of clusters in the set.
Density-based clustering and expectation
maximisation are conceptually related,
the latter giving a probability for
membership in any group.
k = 2
k vs centroid distance
Conclusions
https://badryan.github.io/2015/10/20/is-it-all-machine-learning.html
•People on the Internet steal
infographics.
•ML methods have been around in
the stats world for ages, but big
data sets and compute power
make them more widely known.
•Understanding key principles
behind ML should be part of the
school curriculum.

More Related Content

What's hot

Deep Learning Primer: A First-Principles Approach
Deep Learning Primer: A First-Principles ApproachDeep Learning Primer: A First-Principles Approach
Deep Learning Primer: A First-Principles ApproachMaurizio Calo Caligaris
 
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaDeep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaSpark Summit
 
IRJET - Object Detection using Deep Learning with OpenCV and Python
IRJET - Object Detection using Deep Learning with OpenCV and PythonIRJET - Object Detection using Deep Learning with OpenCV and Python
IRJET - Object Detection using Deep Learning with OpenCV and PythonIRJET Journal
 
Eckovation machine learning project
Eckovation machine learning projectEckovation machine learning project
Eckovation machine learning projectVinod Jatav
 
II-SDV 2017: The Next Era: Deep Learning for Biomedical Research
II-SDV 2017: The Next Era: Deep Learning for Biomedical ResearchII-SDV 2017: The Next Era: Deep Learning for Biomedical Research
II-SDV 2017: The Next Era: Deep Learning for Biomedical ResearchDr. Haxel Consult
 
Recent Trends in Deep Learning
Recent Trends in Deep LearningRecent Trends in Deep Learning
Recent Trends in Deep LearningSungjoon Choi
 
Cat and dog classification
Cat and dog classificationCat and dog classification
Cat and dog classificationomaraldabash
 
Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016MLconf
 
Notes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew NgNotes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew NgdataHacker. rs
 
Bhadale group of companies ai neural networks and algorithms catalogue
Bhadale group of companies ai neural networks and algorithms catalogueBhadale group of companies ai neural networks and algorithms catalogue
Bhadale group of companies ai neural networks and algorithms catalogueVijayananda Mohire
 
Machine Learning for Everyone
Machine Learning for EveryoneMachine Learning for Everyone
Machine Learning for EveryoneDhiana Deva
 
Deep learning with Tensorflow in R
Deep learning with Tensorflow in RDeep learning with Tensorflow in R
Deep learning with Tensorflow in Rmikaelhuss
 
Deep learning - A Visual Introduction
Deep learning - A Visual IntroductionDeep learning - A Visual Introduction
Deep learning - A Visual IntroductionLukas Masuch
 
Super Resolution with OCR Optimization
Super Resolution with OCR OptimizationSuper Resolution with OCR Optimization
Super Resolution with OCR OptimizationniveditJain
 
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...Edge AI and Vision Alliance
 
Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Manuel Martín
 
Deep Learning: Application Landscape - March 2018
Deep Learning: Application Landscape - March 2018Deep Learning: Application Landscape - March 2018
Deep Learning: Application Landscape - March 2018Grigory Sapunov
 
PPT - Deep and Confident Prediction For Time Series at Uber
PPT - Deep and Confident Prediction For Time Series at UberPPT - Deep and Confident Prediction For Time Series at Uber
PPT - Deep and Confident Prediction For Time Series at UberJisang Yoon
 
Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow Rajiv Shah
 

What's hot (20)

Deep Learning Primer: A First-Principles Approach
Deep Learning Primer: A First-Principles ApproachDeep Learning Primer: A First-Principles Approach
Deep Learning Primer: A First-Principles Approach
 
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaDeep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
 
IRJET - Object Detection using Deep Learning with OpenCV and Python
IRJET - Object Detection using Deep Learning with OpenCV and PythonIRJET - Object Detection using Deep Learning with OpenCV and Python
IRJET - Object Detection using Deep Learning with OpenCV and Python
 
Eckovation machine learning project
Eckovation machine learning projectEckovation machine learning project
Eckovation machine learning project
 
II-SDV 2017: The Next Era: Deep Learning for Biomedical Research
II-SDV 2017: The Next Era: Deep Learning for Biomedical ResearchII-SDV 2017: The Next Era: Deep Learning for Biomedical Research
II-SDV 2017: The Next Era: Deep Learning for Biomedical Research
 
Recent Trends in Deep Learning
Recent Trends in Deep LearningRecent Trends in Deep Learning
Recent Trends in Deep Learning
 
Cat and dog classification
Cat and dog classificationCat and dog classification
Cat and dog classification
 
Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016Daniel Shank, Data Scientist, Talla at MLconf SF 2016
Daniel Shank, Data Scientist, Talla at MLconf SF 2016
 
Notes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew NgNotes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew Ng
 
Bhadale group of companies ai neural networks and algorithms catalogue
Bhadale group of companies ai neural networks and algorithms catalogueBhadale group of companies ai neural networks and algorithms catalogue
Bhadale group of companies ai neural networks and algorithms catalogue
 
Machine Learning for Everyone
Machine Learning for EveryoneMachine Learning for Everyone
Machine Learning for Everyone
 
Deep learning with Tensorflow in R
Deep learning with Tensorflow in RDeep learning with Tensorflow in R
Deep learning with Tensorflow in R
 
Deep learning - A Visual Introduction
Deep learning - A Visual IntroductionDeep learning - A Visual Introduction
Deep learning - A Visual Introduction
 
Super Resolution with OCR Optimization
Super Resolution with OCR OptimizationSuper Resolution with OCR Optimization
Super Resolution with OCR Optimization
 
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...
“An Introduction to Data Augmentation Techniques in ML Frameworks,” a Present...
 
Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?Automating Machine Learning - Is it feasible?
Automating Machine Learning - Is it feasible?
 
Deep Learning: Application Landscape - March 2018
Deep Learning: Application Landscape - March 2018Deep Learning: Application Landscape - March 2018
Deep Learning: Application Landscape - March 2018
 
Data Parallel Deep Learning
Data Parallel Deep LearningData Parallel Deep Learning
Data Parallel Deep Learning
 
PPT - Deep and Confident Prediction For Time Series at Uber
PPT - Deep and Confident Prediction For Time Series at UberPPT - Deep and Confident Prediction For Time Series at Uber
PPT - Deep and Confident Prediction For Time Series at Uber
 
Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow
 

Similar to Computational decision making

Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)Zihui Li
 
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkOBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkshesnasuneer
 
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkOBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkshesnasuneer
 
Introduction to Deep Learning and Tensorflow
Introduction to Deep Learning and TensorflowIntroduction to Deep Learning and Tensorflow
Introduction to Deep Learning and TensorflowOswald Campesato
 
Computational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding RegionsComputational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding Regionsbutest
 
Presentation on Machine Learning and Data Mining
Presentation on Machine Learning and Data MiningPresentation on Machine Learning and Data Mining
Presentation on Machine Learning and Data Miningbutest
 
Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learningAmAn Singh
 
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...cscpconf
 
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...csandit
 
Classifiers
ClassifiersClassifiers
ClassifiersAyurdata
 
A Few Useful Things to Know about Machine Learning
A Few Useful Things to Know about Machine LearningA Few Useful Things to Know about Machine Learning
A Few Useful Things to Know about Machine Learningnep_test_account
 
Deep learning from a novice perspective
Deep learning from a novice perspectiveDeep learning from a novice perspective
Deep learning from a novice perspectiveAnirban Santara
 
Analytical study of feature extraction techniques in opinion mining
Analytical study of feature extraction techniques in opinion miningAnalytical study of feature extraction techniques in opinion mining
Analytical study of feature extraction techniques in opinion miningcsandit
 
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...cscpconf
 
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MININGANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MININGcsandit
 
notes as .ppt
notes as .pptnotes as .ppt
notes as .pptbutest
 
Artificial Neural Networks for NIU
Artificial Neural Networks for NIUArtificial Neural Networks for NIU
Artificial Neural Networks for NIUProf. Neeta Awasthy
 
Machine Learning Comparative Analysis - Part 1
Machine Learning Comparative Analysis - Part 1Machine Learning Comparative Analysis - Part 1
Machine Learning Comparative Analysis - Part 1Kaniska Mandal
 

Similar to Computational decision making (20)

Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)
 
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkOBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
 
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkkOBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
OBJECTRECOGNITION1.pptxjjjkkkkjjjjkkkkkkk
 
Introduction to Deep Learning and Tensorflow
Introduction to Deep Learning and TensorflowIntroduction to Deep Learning and Tensorflow
Introduction to Deep Learning and Tensorflow
 
Computational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding RegionsComputational Biology, Part 4 Protein Coding Regions
Computational Biology, Part 4 Protein Coding Regions
 
Presentation on Machine Learning and Data Mining
Presentation on Machine Learning and Data MiningPresentation on Machine Learning and Data Mining
Presentation on Machine Learning and Data Mining
 
Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learning
 
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...
X-TREPAN: A MULTI CLASS REGRESSION AND ADAPTED EXTRACTION OF COMPREHENSIBLE D...
 
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...
X-TREPAN : A Multi Class Regression and Adapted Extraction of Comprehensible ...
 
Classifiers
ClassifiersClassifiers
Classifiers
 
A Few Useful Things to Know about Machine Learning
A Few Useful Things to Know about Machine LearningA Few Useful Things to Know about Machine Learning
A Few Useful Things to Know about Machine Learning
 
Deep learning from a novice perspective
Deep learning from a novice perspectiveDeep learning from a novice perspective
Deep learning from a novice perspective
 
AI and Deep Learning
AI and Deep Learning AI and Deep Learning
AI and Deep Learning
 
Analytical study of feature extraction techniques in opinion mining
Analytical study of feature extraction techniques in opinion miningAnalytical study of feature extraction techniques in opinion mining
Analytical study of feature extraction techniques in opinion mining
 
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...
Radial Basis Function Neural Network (RBFNN), Induction Motor, Vector control...
 
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MININGANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING
ANALYTICAL STUDY OF FEATURE EXTRACTION TECHNIQUES IN OPINION MINING
 
Deep learning
Deep learningDeep learning
Deep learning
 
notes as .ppt
notes as .pptnotes as .ppt
notes as .ppt
 
Artificial Neural Networks for NIU
Artificial Neural Networks for NIUArtificial Neural Networks for NIU
Artificial Neural Networks for NIU
 
Machine Learning Comparative Analysis - Part 1
Machine Learning Comparative Analysis - Part 1Machine Learning Comparative Analysis - Part 1
Machine Learning Comparative Analysis - Part 1
 

More from Boris Adryan

Development and Deployment: The Human Factor
Development and Deployment: The Human FactorDevelopment and Deployment: The Human Factor
Development and Deployment: The Human FactorBoris Adryan
 
Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017Boris Adryan
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Boris Adryan
 
Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Boris Adryan
 
Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Boris Adryan
 
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16Boris Adryan
 
Eclipse IoT - Day 0 of thingmonk 2016
Eclipse IoT - Day 0 of  thingmonk 2016Eclipse IoT - Day 0 of  thingmonk 2016
Eclipse IoT - Day 0 of thingmonk 2016Boris Adryan
 
Geo-IoT World, 25/05/16
Geo-IoT World, 25/05/16Geo-IoT World, 25/05/16
Geo-IoT World, 25/05/16Boris Adryan
 
Smart IoT London, 13th April 2016
Smart IoT London, 13th April 2016Smart IoT London, 13th April 2016
Smart IoT London, 13th April 2016Boris Adryan
 
Eclipse IoT - ecosystem
Eclipse IoT - ecosystemEclipse IoT - ecosystem
Eclipse IoT - ecosystemBoris Adryan
 
TopConf Linz, 02/02/2016
TopConf Linz, 02/02/2016TopConf Linz, 02/02/2016
TopConf Linz, 02/02/2016Boris Adryan
 
IoT - Be Open or Miss Out
IoT - Be Open or Miss OutIoT - Be Open or Miss Out
IoT - Be Open or Miss OutBoris Adryan
 
Node-RED and Minecraft - CamJam September 2015
Node-RED and Minecraft - CamJam September 2015Node-RED and Minecraft - CamJam September 2015
Node-RED and Minecraft - CamJam September 2015Boris Adryan
 
EclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackEclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackBoris Adryan
 
Node-RED workshop at IoT Toulouse
Node-RED workshop at IoT ToulouseNode-RED workshop at IoT Toulouse
Node-RED workshop at IoT ToulouseBoris Adryan
 
Data Science London - Meetup, 28/05/15
Data Science London - Meetup, 28/05/15Data Science London - Meetup, 28/05/15
Data Science London - Meetup, 28/05/15Boris Adryan
 
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...Boris Adryan
 
An introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDAn introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDBoris Adryan
 
What the IoT should learn from the life sciences
What the IoT should learn from the life sciencesWhat the IoT should learn from the life sciences
What the IoT should learn from the life sciencesBoris Adryan
 

More from Boris Adryan (20)

Development and Deployment: The Human Factor
Development and Deployment: The Human FactorDevelopment and Deployment: The Human Factor
Development and Deployment: The Human Factor
 
Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017
 
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
Mehr und schneller ist nicht automatisch besser - data2day, 06.10.16
 
Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16Industry of Things World - Berlin 19-09-16
Industry of Things World - Berlin 19-09-16
 
Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016Just because you can doesn't mean that you should - thingmonk 2016
Just because you can doesn't mean that you should - thingmonk 2016
 
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16
Plattformen für das Internet der Dinge, solutions.hamburg, 05.09.16
 
Eclipse IoT - Day 0 of thingmonk 2016
Eclipse IoT - Day 0 of  thingmonk 2016Eclipse IoT - Day 0 of  thingmonk 2016
Eclipse IoT - Day 0 of thingmonk 2016
 
Geo-IoT World, 25/05/16
Geo-IoT World, 25/05/16Geo-IoT World, 25/05/16
Geo-IoT World, 25/05/16
 
Smart IoT London, 13th April 2016
Smart IoT London, 13th April 2016Smart IoT London, 13th April 2016
Smart IoT London, 13th April 2016
 
Eclipse IoT - ecosystem
Eclipse IoT - ecosystemEclipse IoT - ecosystem
Eclipse IoT - ecosystem
 
TopConf Linz, 02/02/2016
TopConf Linz, 02/02/2016TopConf Linz, 02/02/2016
TopConf Linz, 02/02/2016
 
IoT - Be Open or Miss Out
IoT - Be Open or Miss OutIoT - Be Open or Miss Out
IoT - Be Open or Miss Out
 
Thingmonk 2015
Thingmonk 2015Thingmonk 2015
Thingmonk 2015
 
Node-RED and Minecraft - CamJam September 2015
Node-RED and Minecraft - CamJam September 2015Node-RED and Minecraft - CamJam September 2015
Node-RED and Minecraft - CamJam September 2015
 
EclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science TrackEclipseCon France 2015 - Science Track
EclipseCon France 2015 - Science Track
 
Node-RED workshop at IoT Toulouse
Node-RED workshop at IoT ToulouseNode-RED workshop at IoT Toulouse
Node-RED workshop at IoT Toulouse
 
Data Science London - Meetup, 28/05/15
Data Science London - Meetup, 28/05/15Data Science London - Meetup, 28/05/15
Data Science London - Meetup, 28/05/15
 
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...
O'Reilly Webcast: Organizing the Internet of Things - Actionable Insight Thro...
 
An introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-REDAn introduction to workflow-based programming with Node-RED
An introduction to workflow-based programming with Node-RED
 
What the IoT should learn from the life sciences
What the IoT should learn from the life sciencesWhat the IoT should learn from the life sciences
What the IoT should learn from the life sciences
 

Recently uploaded

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 

Recently uploaded (20)

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 

Computational decision making

  • 2. What I aim to provide ✓basic vocabulary for ✓fundamental concepts of computational decision making ✓phenomenological introduction to machine learning methods ✓a rough idea when and how to use these methods
  • 3. What this presentation isn’t x hands-on tutorial x thorough summary x comprehensive guide x technical deep dive x statistics course
  • 4. Is this artificial intelligence? word = input(‘Enter a word:’) for key in British_dictionary.iteritems(): if key.startswith(word): print(‘This is a British word.’)
  • 5. Is this machine learning? temperature = float(input('What is the temperature?')) if temperature >= 1.0: print('Wear shorts.') else: print('Wear long underwear.’)
  • 6. Definition Rule-based decision making on the basis of numeric thresholds or string patterns etc is not machine learning. And most definitely it is not artificial intelligence.
  • 7. But what if… …the threshold is inferred at run time? “Write a software that says how close to Euston you can move if you can afford to spend £650k.” 450 550 650 750 850 950 1050 0 3 6 9 12 Average property price Northern Line, number of stops from Euston table = input_table(‘cost at station’) print(where_x_yields_a_low_enough_y)
  • 8. Linear regression is probably the most simple “machine learning” method. Average property price Northern Line, number of stops from Euston It is an example of supervised learning, because we teach the computer the relation between an input variable (“feature”) and an output variable (“label”). 450 550 650 750 850 950 1050 0 3 6 9 12 y = m . x + b
  • 9. Linear regression can become arbitrarily complicated. The difference between curve fitting in statistics and machine learning is mostly semantics. f(number of stops to Euston, square footage, bedrooms, bathrooms, …) price many features Euston High Barnet small large price
  • 10. Classification tasks I. setosa I. virginica I. versicolor All images from https://en.wikipedia.org/wiki/Iris_flower_data_set Rather than projecting the feature vector onto a continuous variable, many supervised learning methods identify “class labels”.
  • 11. Classification tasks Supervised learning requires complete input matrices. Missing or nonsensical values have to be replaced or removed. Non-numerical features (think, e.g. “name of colour”, “smell”) have to be encoded. class label feature 1 feature 2 feature 3 feature 4 1 5.1 3.5 1.4 0.2 1 4.9 3.0 1.4 0.2 2 7.0 3.2 4.7 1.4 3 6.3 3.3 6.0 2.5
  • 12. Classification tasks sepal length sepalwidth I. setosa I. virginica In a first approximation, classification (by regression) aims to find a function that best separates the different class labels. f(sepal width, sepal length) (1,2) “1” “2”
  • 13. sepal length sepalwidth I. setosa I. virginica I. versicolor Decision trees sepal width petalwidth A decision tree can be understood as a series of linear separations of the data. ratio of sepal width : sepal length I. virginica ratio of petal width : sepal width I. setosa I. versicolor
  • 14. Random forests A collection of decision trees, each trained on a random subset of the data, can minimise the risk of over-fitting. A single big decision tree trained on all data can effectively describe a single data point. sepal width petalwidth
  • 15. Over-/Underfitting Sloppy separation is called underfitting, and greedy separation overfitting. Counteracting an overfit is called regularisation, and works by penalising too many features (L1) or too strong feature weights (L2). underfit (high bias) okay overfit (high variance)
  • 16. Dimensionality reduction Dimensionality reduction aims to reduce the complexity of a dataset (in respect to number of features). The first principal components are dimensions that explain most of a dataset’s variance.
  • 17. Support vector machine The SVM aims to provide an ideal separation plane by supporting it with a training data vector. A classification margin protects the SVM against overfitting. ? margin support vectors decision boundary wTx = 0 negative hyperplane wTx = -1 positive hyperplane wTx = 1
  • 18. Kernel trick Input data can be projected into a higher-dimensional space that allows linear separation of otherwise inseparable data. There are different kernels, such as the radial basis function (Gaussian) or polynomial kernel. “2D” input space Φ “3D” feature space http://scikit-learn.org/0.18/auto_examples/svm/plot_iris.html
  • 19. features weather forecast airport location # of gates # of runways # of snowploughs airline aircraft BLACK BOX training flights cancelled in the past classifier ranked list of relevant features weight of features thresholds for features performance metric prediction new data General approach An intuitive example from real life.
  • 20. training classifier performance assessment good enough? success! moredatafortraining data no yes sensitivity “truepositives” 1-specificity “false positives” 0 0.2 0.4 0.6 0.8 1.0 1.0 0.8 0.6 0.4 0.2 worse than random guess Classifier performance Not all machine learning behaves ideal, and performance metrics are important for quality checks and parameter tuning.
  • 21. https://en.wikipedia.org/wiki/Precision_and_recall There is a wide range of performance metrics, comprising combinations of true & false positives as well as true & false negatives. Metrics zoo positive class (P) negative class (N) predicted positive true positive (TP) false positive (FP) predicted negative false negative (FN) true negative (TN)
  • 22. data acquisition model building test use in production data recording (production system) evaluation raw data clean-up feature engineering model learning model selection labour intense compute intensebrain intense development production ML pipeline
  • 23. Choosing a method from: Olson et al., 2017, https://arxiv.org/abs/1708.05070 There is no ‘one-size-fits-all’ machine learning method. Most methods need to be carefully tuned to perform ideal. Often, there a ‘non-functional’ constraints on choosing a method. Runtime, interpretability, etc.
  • 24. What about neural networks? feature 1 feature 2 feature 3 weight 1 weight 2 weight 3 input function activation function class output error for weight updates a simple perceptron Neural networks attempt to mimic the integrative properties of neurons. The perceptron is a single-layer network. inputs outputs
  • 25. Deep neural networks http://www.asimovinstitute.org/neural-network-zoo While many artificial neural networks show great performance, the basis on which features exactly the classification works remains largely unknown.
  • 26. In RL, the methods iteratively learn to optimise an output from an abstract representation of a system Reinforcement learning move (l/r) or shoot unknown systemmap (210 x 160 pixels, 8-bit RGB) actual score choose action on basis of map to optimise score Mnih et al., Nature (2015)
  • 27. Machine learning can help to structure and explore an unknown dataset. These methods aid the identification of classes where their existence isn’t known yet. Unsupervised learning • Hierarchical clustering • K-means clustering • Expectation maximisation • Density-based clustering plus clever visualisation
  • 28. Hierarchical clustering Derives hierarchical dependencies of individual rows and columns in the dataset on the basis of similarity (correlation) between their properties. Combined with a heatmap, gives a good first impression of a dataset.
  • 29. k-means clustering Defines k different centroids to which data points are assigned by proximity. If the distance doesn’t get much smaller, k is the number of clusters in the set. Density-based clustering and expectation maximisation are conceptually related, the latter giving a probability for membership in any group. k = 2 k vs centroid distance
  • 30. Conclusions https://badryan.github.io/2015/10/20/is-it-all-machine-learning.html •People on the Internet steal infographics. •ML methods have been around in the stats world for ages, but big data sets and compute power make them more widely known. •Understanding key principles behind ML should be part of the school curriculum.