SlideShare a Scribd company logo
Inside the ANN (Artificial Neural Network) A visual and intuitive journey* to understand how it stores knowledge and how it takes decisions*no code, no math included[following BCN Python Group’s request after my presentation on Machine Learning last September 25th2014] 
PresentedbyXavier Arrufat 
BCN Python Meetup–November2014 
Barcelona, November20th, 2014
Questions from last Meetup(Python BCN -september25th2014) 
1.How does an ANN work? Examples? 
2.You must be an engineer… a mathematicianwould never say ANNs are easy [to understand]!
Real case 
Mail sorting by ZIP (postal) codeNY –1912U.S. Postal ServiceMt.Pleasantsortingoffice –1951TheBritishPostal Museum1960s? Photo Credit: Patrick S. McCabe, U.S. Postal ServiceRoyal Mail on Christmas–Glasgow –2010s? (TheTelegraph–picture: PA) 1990s? U.S. Postal Service
Real case 
Mail sorting by ZIP (postal) codeRoyal Mail on Christmas –Glasgow –2010s? (TheTelegraph–picture: PA)
Agenda 
10 minHow humanslearn to read 
30 minHow ANNslearn to read (digits) 
0 minIs there muchdifference?
How humans learn to read 
This is letter ‘a’… 
A a 
4 years old
How humans learn to read 
And these are letter ‘a’ too…
How humans learn to read 
Reading test
How humans learn to read 
Reading test completed: ‘Paranoia’ 
Easy? Are these really ‘a’s?
d b 
qp 
How humans learn to read 
Challenging letters…
d b 
qp 
How humans learn to read 
Remark: vertical axed symmetry leads to confusion much more often
Human writing at age 4 
Notice: only vertical axed symmetry gets (spontaneously) generated
Vision circuitry 
Observe symmetric ‘wiring’ (only in one plane, I infer) 
http://webvision.med.utah.edu/book/part-ix- psychophysics-of-vision/the-primary-visual-cortex/ 
http://www1.appstate.edu/~kms/classes/ psy3203/EyePhysio/VisualPathways.jpg
Real case 
Mail sorting by ZIP (postal) codeNY –1912U.S. Postal ServiceMt.Pleasantsortingoffice –1951TheBritishPostal Museum1960s? Photo Credit: Patrick S. McCabe, U.S. Postal ServiceRoyal Mail on Christmas–Glasgow –2010s? (TheTelegraph–picture: PA) 1990s? U.S. Postal Service
MNIST dataset 
http://yann.lecun.com/exdb/mnist/ 
Training set of 60,000 examples (6,000 per digit) 
Test set of 10,000 examples (1,000 per digit) 
Each character is a 28x28 pixel box => 
784 numbers per character within range [0:white, background, 255:black, foreground] 
(N.B.: when using ANNs, normalize values to range [0,1] or [-1,1] before continuing)
Machine Learning 
Problem definition –handwritten digits identification 
Input0123456789 
Whoseclassdoesitbelong? 
(classificationproblem)
Machine Learning 
Expected solution: probabilistic 
Input0123456789 
Whoseclassdoesitbelong? 
(classificationproblem) 
Probability 
0.01 
0.10 
0.07 
0.06 
0.31 
0.04 
0.03 
0.15 
0.02 
0.21
Machine Learning 
What’s the solving black box like? 
Input 
28 x 28 pixel box 
784numbers0123456789Machine Learning-Black Box - 
Probability 
0.01 
0.10 
0.07 
0.06 
0.31 
0.04 
0.03 
0.15 
0.02 
0.21
ANN –Artificial Neural Network 
Standard schema (scaring, huh?) Forward computationLowerlayerweightmatrixUpperlayerweightmatrix 
numbers 
Θ1 (Theta1) 
15 x 784 numbers 
Θ2 (Theta2) 
10 x 15+1numbers 
Credit on directed graph (text overlaid is mine instead): Michael Nielsenon http://neuralnetworksanddeeplearning.com/chap1.html
Digression 
Cellulose acetate
Cellulose acetate 
Replaced by PET nowadays 
(Polyethylene terephthalate a.k.a. ‘polyester’) 
Image from Unimed(http://unimed.eu.com/products/radiology- supplies/x-ray-film-cassette-with-screen-4682.html)
Semitransparent patternsImage1Image2
Semitransparent patternsImage1Image2 
0.00 
0.50 
0.00 
0.50 
1.00 
0.50 
0.00 
0.50 
0.00 
0.00 
0.00 
0.00 
0.50 
1.00 
0.50 
0.50 
0.50 
0.50‘Transparency’ values(foodforthoughtto complete theanalogy: ifnegativevalues, thefilm emitslight insteadof absorbingit?)
Superposing patternsImage1Image2SuperposeResult
Superposing mathImage1Image2SuperposeResult 
0.00 
0.50 
0.00 
0.50 
1.00 
0.50 
0.00 
0.50 
0.00 
0.00 
0.00 
0.00 
0.25 
1.00 
0.25 
0.00 
0.25 
0.00 
0.00 
0.00 
0.00 
0.50 
1.00 
0.50 
0.50 
0.50 
0.50multiplicationPixelbypixel
‘Coincidence’ levelImage1Image2Result
Machine Learning 
What’s the solving black box like? 
Input 
28 x 28 pixel box 
784numbers0123456789Machine Learning-Black Box - 
Probability 
0.01 
0.10 
0.07 
0.06 
0.31 
0.04 
0.03 
0.15 
0.02 
0.21
Internal ‘sensors’ 
(or filters, or bases, or internal features, or neurons … or lower layer) 
Sensor commitee1: 20 membersImage fromSheng-huaZhong, Yan Liu, Yang Liu. Bilinear Deep Learning for Image Classification. To appear in ACM International Conference of Multimedia (SIG MM'11), 2011
Internal ‘sensors’ 
(or filters, or bases, or internal features, or neurons … or lower layer) 
Sensor commitee1: 20 membersImages fromSheng-huaZhong, Yan Liu, Yang Liu. Bilinear Deep Learning for Image Classification. To appear in ACM International Conference of Multimedia (SIG MM'11), 2011
Internal ‘sensors’ 
(or filters, or bases, or internal features, or neurons …) 
Sensor commitee2: 900 members 
Sensor commitee3: 64 members 
Image from Pikalike 
http://www.picalike.com/ 
Image from Tom Lahore http://evolvingstuff.blogspot.com.es/2012/12/mnist-features.html
Internal sensors 
(reduced selection for the sake of simplicity) ‘Neurons’ extracted from Pikalike’simage on previous page 
http://www.picalike.com/
Internal sensors: matching input 
Levelof response as per patternmatching 
Input 
high 
low 
mid 
mid 
low 
mid 
low 
low
Internal sensors: voting0123456789 
‘Sensor commitee’ 
(response as per patternmatching) 
Individual ‘votes’ 
high 
low 
mid 
mid 
low 
mid 
low 
low 
0.70 
0.80 
0.12 
0.11 
0.85 
0.03 
0.32 
0.65 
0.15 
0.08 
Input 
Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
Internal sensors: voting0123456789 
‘Votingcommitee’ 
(as per patternrecognition) 
Cumulated‘votes’ 
high 
low 
mid 
mid 
low 
mid 
low 
low 
2.42 
20.40 
15.73 
12.52 
63.61 
7.93 
6.06 
2.94 
4.11 
41.56 
Input 
Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
Normalizing votes (probability) 0123456789 
‘Votingcommitee’ 
(as per patternrecognition) 
Cumulated‘votes’ 
high 
low 
mid 
mid 
low 
mid 
low 
low 
2.42 
20.40 
15.73 
12.52 
63.61 
7.93 
6.06 
2.94 
4.11 
41.56 
Input 
0.01 
0.10 
0.07 
0.06 
0.31 
0.04 
0.03 
0.15 
0.02 
0.21 
Probability 
(votes / total) 
Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
Decision making0123456789 
‘Votingcommitee’ 
(as per patternrecognition) 
Cumulated‘votes’ 
high 
low 
mid 
mid 
low 
mid 
low 
low 
2.42 
20.40 
15.73 
12.52 
63.61 
7.93 
6.06 
2.94 
4.11 
41.56 
Input 
0.01 
0.10 
0.07 
0.06 
0.31 
0.04 
0.03 
0.15 
0.02 
0.21 
Probability 
(votes / total) 
Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
All steps in one page 
0.0 
0.9 
* 
= 
0.00.90.9 
* 
=0.8 
Σ 
1) Multiplyinput * filter, pixelper pixel 
2) Addup resultingvalues. Youget a simple real numberR 
4) Cast weighted votes on your filter’s favorite classes 
7.35 
Input 
Filter 
3) (optional–non-lineal activationfunction) SquashR withintherange(0,1) [ or (-1,1) ] 
Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results. 
5) Normalize votes: compute class probabilities 
6) Make a decisionbased on probabilites 
0) Get a convenient set of filtersandvotingrules(a.k.a. ‘ANN training’)
ANN –Artificial Neural Network 
Standard schema (now a bit more intuitive?) 
Θ1 (Theta1) 
15 x 784 numbers 
Θ2 (Theta2) 
10 x 15+1numbersLowerlayerweightmatrixUpperlayerweightmatrix RatingDecisionmaking Forward computation PatterncomparisonInternalmatchinglevelVoting 
numbers 
Credit on arrowed graph (text overlaid is mine instead): Michael Nielsenon http://neuralnetworksanddeeplearning.com/chap1.html
Q & A

More Related Content

Viewers also liked

Reversing the dropbox client on windows
Reversing the dropbox client on windowsReversing the dropbox client on windows
Reversing the dropbox client on windows
extremecoders
 
Euro python2011 High Performance Python
Euro python2011 High Performance PythonEuro python2011 High Performance Python
Euro python2011 High Performance Python
Ian Ozsvald
 
Odessapy2013 - Graph databases and Python
Odessapy2013 - Graph databases and PythonOdessapy2013 - Graph databases and Python
Odessapy2013 - Graph databases and Python
Max Klymyshyn
 
Python Performance 101
Python Performance 101Python Performance 101
Python Performance 101
Ankur Gupta
 
Machine Learning for NLP
Machine Learning for NLPMachine Learning for NLP
Machine Learning for NLP
butest
 
Beyond tf idf why, what & how
Beyond tf idf why, what & howBeyond tf idf why, what & how
Beyond tf idf why, what & how
lucenerevolution
 
Image Search: Then and Now
Image Search: Then and NowImage Search: Then and Now
Image Search: Then and Now
Si Krishan
 
Don't do this
Don't do thisDon't do this
Don't do this
Richard Jones
 
Kick start graph visualization projects
Kick start graph visualization projectsKick start graph visualization projects
Kick start graph visualization projects
Linkurious
 
Introduction to Apache Accumulo
Introduction to Apache AccumuloIntroduction to Apache Accumulo
Introduction to Apache Accumulo
Aaron Cordova
 
Deploying and Managing Hadoop Clusters with AMBARI
Deploying and Managing Hadoop Clusters with AMBARIDeploying and Managing Hadoop Clusters with AMBARI
Deploying and Managing Hadoop Clusters with AMBARI
DataWorks Summit
 
Ante natal clinic - protocol
Ante natal  clinic - protocolAnte natal  clinic - protocol
Ante natal clinic - protocol
drmcbansal
 
NLTK - Natural Language Processing in Python
NLTK - Natural Language Processing in PythonNLTK - Natural Language Processing in Python
NLTK - Natural Language Processing in Python
shanbady
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
Yogendra Tamang
 
NLP
NLPNLP
Introduction to Natural Language Processing
Introduction to Natural Language ProcessingIntroduction to Natural Language Processing
Introduction to Natural Language Processing
Pranav Gupta
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
Jaganadh Gopinadhan
 
Python Coroutines, Present and Future
Python Coroutines, Present and FuturePython Coroutines, Present and Future
Python Coroutines, Present and Future
emptysquare
 
Slideshare Powerpoint presentation
Slideshare Powerpoint presentationSlideshare Powerpoint presentation
Slideshare Powerpoint presentation
elliehood
 
State of the Word 2011
State of the Word 2011State of the Word 2011
State of the Word 2011
photomatt
 

Viewers also liked (20)

Reversing the dropbox client on windows
Reversing the dropbox client on windowsReversing the dropbox client on windows
Reversing the dropbox client on windows
 
Euro python2011 High Performance Python
Euro python2011 High Performance PythonEuro python2011 High Performance Python
Euro python2011 High Performance Python
 
Odessapy2013 - Graph databases and Python
Odessapy2013 - Graph databases and PythonOdessapy2013 - Graph databases and Python
Odessapy2013 - Graph databases and Python
 
Python Performance 101
Python Performance 101Python Performance 101
Python Performance 101
 
Machine Learning for NLP
Machine Learning for NLPMachine Learning for NLP
Machine Learning for NLP
 
Beyond tf idf why, what & how
Beyond tf idf why, what & howBeyond tf idf why, what & how
Beyond tf idf why, what & how
 
Image Search: Then and Now
Image Search: Then and NowImage Search: Then and Now
Image Search: Then and Now
 
Don't do this
Don't do thisDon't do this
Don't do this
 
Kick start graph visualization projects
Kick start graph visualization projectsKick start graph visualization projects
Kick start graph visualization projects
 
Introduction to Apache Accumulo
Introduction to Apache AccumuloIntroduction to Apache Accumulo
Introduction to Apache Accumulo
 
Deploying and Managing Hadoop Clusters with AMBARI
Deploying and Managing Hadoop Clusters with AMBARIDeploying and Managing Hadoop Clusters with AMBARI
Deploying and Managing Hadoop Clusters with AMBARI
 
Ante natal clinic - protocol
Ante natal  clinic - protocolAnte natal  clinic - protocol
Ante natal clinic - protocol
 
NLTK - Natural Language Processing in Python
NLTK - Natural Language Processing in PythonNLTK - Natural Language Processing in Python
NLTK - Natural Language Processing in Python
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
NLP
NLPNLP
NLP
 
Introduction to Natural Language Processing
Introduction to Natural Language ProcessingIntroduction to Natural Language Processing
Introduction to Natural Language Processing
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Python Coroutines, Present and Future
Python Coroutines, Present and FuturePython Coroutines, Present and Future
Python Coroutines, Present and Future
 
Slideshare Powerpoint presentation
Slideshare Powerpoint presentationSlideshare Powerpoint presentation
Slideshare Powerpoint presentation
 
State of the Word 2011
State of the Word 2011State of the Word 2011
State of the Word 2011
 

Similar to Inside the ANN: A visual and intuitive journey to understand how artificial neural networks store knowledge and how they make decisions (no code, no math included)

Gan seminar
Gan seminarGan seminar
Gan seminar
San Kim
 
Deep learning simplified
Deep learning simplifiedDeep learning simplified
Deep learning simplified
Lovelyn Rose
 
Neural Networks: Principal Component Analysis (PCA)
Neural Networks: Principal Component Analysis (PCA)Neural Networks: Principal Component Analysis (PCA)
Neural Networks: Principal Component Analysis (PCA)
Mostafa G. M. Mostafa
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
Mustafa Aldemir
 
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Rai University
 
Mca i-u-1.1 digital logic circuits, digital component floting and fixed point
Mca i-u-1.1 digital logic circuits, digital component floting and fixed pointMca i-u-1.1 digital logic circuits, digital component floting and fixed point
Mca i-u-1.1 digital logic circuits, digital component floting and fixed point
Rai University
 
digital logic circuits, digital component floting and fixed point
digital logic circuits, digital component floting and fixed pointdigital logic circuits, digital component floting and fixed point
digital logic circuits, digital component floting and fixed point
Rai University
 
ECCV2010: feature learning for image classification, part 2
ECCV2010: feature learning for image classification, part 2ECCV2010: feature learning for image classification, part 2
ECCV2010: feature learning for image classification, part 2
zukun
 
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
Rai University
 
Deep Learning with Audio Signals: Prepare, Process, Design, Expect
Deep Learning with Audio Signals: Prepare, Process, Design, ExpectDeep Learning with Audio Signals: Prepare, Process, Design, Expect
Deep Learning with Audio Signals: Prepare, Process, Design, Expect
Keunwoo Choi
 
Do's and Don'ts of using t-SNE.pdf
Do's and Don'ts of using t-SNE.pdfDo's and Don'ts of using t-SNE.pdf
Do's and Don'ts of using t-SNE.pdf
FrankClat
 
Demo3 Convolutional Neural Network
Demo3 Convolutional Neural NetworkDemo3 Convolutional Neural Network
Demo3 Convolutional Neural Network
Romaric Saounde Tsopnang
 
A deep dive into Clojure's data structures - EuroClojure 2015
A deep dive into Clojure's data structures - EuroClojure 2015A deep dive into Clojure's data structures - EuroClojure 2015
A deep dive into Clojure's data structures - EuroClojure 2015
Mohit Thatte
 
Introduction to Image Processing
Introduction to Image ProcessingIntroduction to Image Processing
Introduction to Image Processing
Israel Gbati
 
Deep learning
Deep learningDeep learning
Deep learning
Alessio Palma
 
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
Simplilearn
 
Adv.TopicsAICNN.ppt
Adv.TopicsAICNN.pptAdv.TopicsAICNN.ppt
Adv.TopicsAICNN.ppt
ZeeshanAhmad449947
 
Number systems
Number systemsNumber systems
Number systems
Volodymyr Ushenko
 
AlphaZero and beyond: Polygames
AlphaZero and beyond: PolygamesAlphaZero and beyond: Polygames
AlphaZero and beyond: Polygames
Olivier Teytaud
 
Fcv learn yu
Fcv learn yuFcv learn yu
Fcv learn yu
zukun
 

Similar to Inside the ANN: A visual and intuitive journey to understand how artificial neural networks store knowledge and how they make decisions (no code, no math included) (20)

Gan seminar
Gan seminarGan seminar
Gan seminar
 
Deep learning simplified
Deep learning simplifiedDeep learning simplified
Deep learning simplified
 
Neural Networks: Principal Component Analysis (PCA)
Neural Networks: Principal Component Analysis (PCA)Neural Networks: Principal Component Analysis (PCA)
Neural Networks: Principal Component Analysis (PCA)
 
Introduction to Deep Learning
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
 
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
Bca 2nd sem u-1.1 digital logic circuits, digital component floting and fixed...
 
Mca i-u-1.1 digital logic circuits, digital component floting and fixed point
Mca i-u-1.1 digital logic circuits, digital component floting and fixed pointMca i-u-1.1 digital logic circuits, digital component floting and fixed point
Mca i-u-1.1 digital logic circuits, digital component floting and fixed point
 
digital logic circuits, digital component floting and fixed point
digital logic circuits, digital component floting and fixed pointdigital logic circuits, digital component floting and fixed point
digital logic circuits, digital component floting and fixed point
 
ECCV2010: feature learning for image classification, part 2
ECCV2010: feature learning for image classification, part 2ECCV2010: feature learning for image classification, part 2
ECCV2010: feature learning for image classification, part 2
 
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
B.sc cs-ii -u-1.1 digital logic circuits, digital component floting and fixed...
 
Deep Learning with Audio Signals: Prepare, Process, Design, Expect
Deep Learning with Audio Signals: Prepare, Process, Design, ExpectDeep Learning with Audio Signals: Prepare, Process, Design, Expect
Deep Learning with Audio Signals: Prepare, Process, Design, Expect
 
Do's and Don'ts of using t-SNE.pdf
Do's and Don'ts of using t-SNE.pdfDo's and Don'ts of using t-SNE.pdf
Do's and Don'ts of using t-SNE.pdf
 
Demo3 Convolutional Neural Network
Demo3 Convolutional Neural NetworkDemo3 Convolutional Neural Network
Demo3 Convolutional Neural Network
 
A deep dive into Clojure's data structures - EuroClojure 2015
A deep dive into Clojure's data structures - EuroClojure 2015A deep dive into Clojure's data structures - EuroClojure 2015
A deep dive into Clojure's data structures - EuroClojure 2015
 
Introduction to Image Processing
Introduction to Image ProcessingIntroduction to Image Processing
Introduction to Image Processing
 
Deep learning
Deep learningDeep learning
Deep learning
 
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
What Is Deep Learning? | Introduction to Deep Learning | Deep Learning Tutori...
 
Adv.TopicsAICNN.ppt
Adv.TopicsAICNN.pptAdv.TopicsAICNN.ppt
Adv.TopicsAICNN.ppt
 
Number systems
Number systemsNumber systems
Number systems
 
AlphaZero and beyond: Polygames
AlphaZero and beyond: PolygamesAlphaZero and beyond: Polygames
AlphaZero and beyond: Polygames
 
Fcv learn yu
Fcv learn yuFcv learn yu
Fcv learn yu
 

Recently uploaded

20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 

Recently uploaded (20)

20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 

Inside the ANN: A visual and intuitive journey to understand how artificial neural networks store knowledge and how they make decisions (no code, no math included)

  • 1. Inside the ANN (Artificial Neural Network) A visual and intuitive journey* to understand how it stores knowledge and how it takes decisions*no code, no math included[following BCN Python Group’s request after my presentation on Machine Learning last September 25th2014] PresentedbyXavier Arrufat BCN Python Meetup–November2014 Barcelona, November20th, 2014
  • 2. Questions from last Meetup(Python BCN -september25th2014) 1.How does an ANN work? Examples? 2.You must be an engineer… a mathematicianwould never say ANNs are easy [to understand]!
  • 3. Real case Mail sorting by ZIP (postal) codeNY –1912U.S. Postal ServiceMt.Pleasantsortingoffice –1951TheBritishPostal Museum1960s? Photo Credit: Patrick S. McCabe, U.S. Postal ServiceRoyal Mail on Christmas–Glasgow –2010s? (TheTelegraph–picture: PA) 1990s? U.S. Postal Service
  • 4. Real case Mail sorting by ZIP (postal) codeRoyal Mail on Christmas –Glasgow –2010s? (TheTelegraph–picture: PA)
  • 5. Agenda 10 minHow humanslearn to read 30 minHow ANNslearn to read (digits) 0 minIs there muchdifference?
  • 6. How humans learn to read This is letter ‘a’… A a 4 years old
  • 7. How humans learn to read And these are letter ‘a’ too…
  • 8. How humans learn to read Reading test
  • 9. How humans learn to read Reading test completed: ‘Paranoia’ Easy? Are these really ‘a’s?
  • 10. d b qp How humans learn to read Challenging letters…
  • 11. d b qp How humans learn to read Remark: vertical axed symmetry leads to confusion much more often
  • 12. Human writing at age 4 Notice: only vertical axed symmetry gets (spontaneously) generated
  • 13. Vision circuitry Observe symmetric ‘wiring’ (only in one plane, I infer) http://webvision.med.utah.edu/book/part-ix- psychophysics-of-vision/the-primary-visual-cortex/ http://www1.appstate.edu/~kms/classes/ psy3203/EyePhysio/VisualPathways.jpg
  • 14. Real case Mail sorting by ZIP (postal) codeNY –1912U.S. Postal ServiceMt.Pleasantsortingoffice –1951TheBritishPostal Museum1960s? Photo Credit: Patrick S. McCabe, U.S. Postal ServiceRoyal Mail on Christmas–Glasgow –2010s? (TheTelegraph–picture: PA) 1990s? U.S. Postal Service
  • 15. MNIST dataset http://yann.lecun.com/exdb/mnist/ Training set of 60,000 examples (6,000 per digit) Test set of 10,000 examples (1,000 per digit) Each character is a 28x28 pixel box => 784 numbers per character within range [0:white, background, 255:black, foreground] (N.B.: when using ANNs, normalize values to range [0,1] or [-1,1] before continuing)
  • 16. Machine Learning Problem definition –handwritten digits identification Input0123456789 Whoseclassdoesitbelong? (classificationproblem)
  • 17. Machine Learning Expected solution: probabilistic Input0123456789 Whoseclassdoesitbelong? (classificationproblem) Probability 0.01 0.10 0.07 0.06 0.31 0.04 0.03 0.15 0.02 0.21
  • 18. Machine Learning What’s the solving black box like? Input 28 x 28 pixel box 784numbers0123456789Machine Learning-Black Box - Probability 0.01 0.10 0.07 0.06 0.31 0.04 0.03 0.15 0.02 0.21
  • 19. ANN –Artificial Neural Network Standard schema (scaring, huh?) Forward computationLowerlayerweightmatrixUpperlayerweightmatrix numbers Θ1 (Theta1) 15 x 784 numbers Θ2 (Theta2) 10 x 15+1numbers Credit on directed graph (text overlaid is mine instead): Michael Nielsenon http://neuralnetworksanddeeplearning.com/chap1.html
  • 21. Cellulose acetate Replaced by PET nowadays (Polyethylene terephthalate a.k.a. ‘polyester’) Image from Unimed(http://unimed.eu.com/products/radiology- supplies/x-ray-film-cassette-with-screen-4682.html)
  • 23. Semitransparent patternsImage1Image2 0.00 0.50 0.00 0.50 1.00 0.50 0.00 0.50 0.00 0.00 0.00 0.00 0.50 1.00 0.50 0.50 0.50 0.50‘Transparency’ values(foodforthoughtto complete theanalogy: ifnegativevalues, thefilm emitslight insteadof absorbingit?)
  • 25. Superposing mathImage1Image2SuperposeResult 0.00 0.50 0.00 0.50 1.00 0.50 0.00 0.50 0.00 0.00 0.00 0.00 0.25 1.00 0.25 0.00 0.25 0.00 0.00 0.00 0.00 0.50 1.00 0.50 0.50 0.50 0.50multiplicationPixelbypixel
  • 27. Machine Learning What’s the solving black box like? Input 28 x 28 pixel box 784numbers0123456789Machine Learning-Black Box - Probability 0.01 0.10 0.07 0.06 0.31 0.04 0.03 0.15 0.02 0.21
  • 28. Internal ‘sensors’ (or filters, or bases, or internal features, or neurons … or lower layer) Sensor commitee1: 20 membersImage fromSheng-huaZhong, Yan Liu, Yang Liu. Bilinear Deep Learning for Image Classification. To appear in ACM International Conference of Multimedia (SIG MM'11), 2011
  • 29. Internal ‘sensors’ (or filters, or bases, or internal features, or neurons … or lower layer) Sensor commitee1: 20 membersImages fromSheng-huaZhong, Yan Liu, Yang Liu. Bilinear Deep Learning for Image Classification. To appear in ACM International Conference of Multimedia (SIG MM'11), 2011
  • 30. Internal ‘sensors’ (or filters, or bases, or internal features, or neurons …) Sensor commitee2: 900 members Sensor commitee3: 64 members Image from Pikalike http://www.picalike.com/ Image from Tom Lahore http://evolvingstuff.blogspot.com.es/2012/12/mnist-features.html
  • 31. Internal sensors (reduced selection for the sake of simplicity) ‘Neurons’ extracted from Pikalike’simage on previous page http://www.picalike.com/
  • 32. Internal sensors: matching input Levelof response as per patternmatching Input high low mid mid low mid low low
  • 33. Internal sensors: voting0123456789 ‘Sensor commitee’ (response as per patternmatching) Individual ‘votes’ high low mid mid low mid low low 0.70 0.80 0.12 0.11 0.85 0.03 0.32 0.65 0.15 0.08 Input Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
  • 34. Internal sensors: voting0123456789 ‘Votingcommitee’ (as per patternrecognition) Cumulated‘votes’ high low mid mid low mid low low 2.42 20.40 15.73 12.52 63.61 7.93 6.06 2.94 4.11 41.56 Input Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
  • 35. Normalizing votes (probability) 0123456789 ‘Votingcommitee’ (as per patternrecognition) Cumulated‘votes’ high low mid mid low mid low low 2.42 20.40 15.73 12.52 63.61 7.93 6.06 2.94 4.11 41.56 Input 0.01 0.10 0.07 0.06 0.31 0.04 0.03 0.15 0.02 0.21 Probability (votes / total) Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
  • 36. Decision making0123456789 ‘Votingcommitee’ (as per patternrecognition) Cumulated‘votes’ high low mid mid low mid low low 2.42 20.40 15.73 12.52 63.61 7.93 6.06 2.94 4.11 41.56 Input 0.01 0.10 0.07 0.06 0.31 0.04 0.03 0.15 0.02 0.21 Probability (votes / total) Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results.
  • 37. All steps in one page 0.0 0.9 * = 0.00.90.9 * =0.8 Σ 1) Multiplyinput * filter, pixelper pixel 2) Addup resultingvalues. Youget a simple real numberR 4) Cast weighted votes on your filter’s favorite classes 7.35 Input Filter 3) (optional–non-lineal activationfunction) SquashR withintherange(0,1) [ or (-1,1) ] Note: all numbersin thisslidearemadeup. Theydo notcorrespondto actual results. 5) Normalize votes: compute class probabilities 6) Make a decisionbased on probabilites 0) Get a convenient set of filtersandvotingrules(a.k.a. ‘ANN training’)
  • 38. ANN –Artificial Neural Network Standard schema (now a bit more intuitive?) Θ1 (Theta1) 15 x 784 numbers Θ2 (Theta2) 10 x 15+1numbersLowerlayerweightmatrixUpperlayerweightmatrix RatingDecisionmaking Forward computation PatterncomparisonInternalmatchinglevelVoting numbers Credit on arrowed graph (text overlaid is mine instead): Michael Nielsenon http://neuralnetworksanddeeplearning.com/chap1.html
  • 39. Q & A