SlideShare a Scribd company logo
Data Science
Bootcamp
Commencez votre carrière
dans la Data
Nos Speakers
—
Cristina Oprean & Pierre Stefani
Machine Learning Engineer
The Rise of Deep Learning
Healthcare
Autonomous vehicles
Reinforcement learning
Robotics
Language
Processing
GANs
What is Deep Learning ?
Why Deep Learning ?
Hand engineered features are time consuming, brittle and
not scalable in practice
Can we learn the underlying features directly from data?
Why now ?
Neural Networks date back decades, so why the resurgence?
Inspired from neuroscience
- Signal Input
- Neuron activation
Decision
Fully connected networks
Fully connected:
Connect neuron in hidden layer to all
neurons in input layer
No spatial information!
And many, many parameters!
Input:
2D image
Vector of pixel values
Using spatial structure
Idea: connect patches of input to neurons
in the hidden layer.
Neuron connected to region of input. Only
“sees” these values
Input: 2D image.
Array of pixel values
Applying Filters to Extract Features
1) Apply a set of weights – a filter – to extract local features
2) Use multiple filters to extract different features
3) Spatially share parameters of each filter
Convolutional Neural Networks
Layers used to build ConvNets
INPUT → will hold the raw pixel values of the image (e.g.[32,32,3] - image with width 32,
height 32 and 3 channels: RGB)
Convolutional layer (CONV) → compute the output of neurons connected to
local regions in the input (e.g.: output of size [32x32x12] if we decided to use 12 filters)
RELU → apply an elementwise activation function, such as the max(0,x) thresholding at
zero. (e.g. the size of the volume is unchanged [32x32x12])
POOL → perform a downsampling operation along the spatial dimensions (width, height),
resulting in volume such as [16x16x12].
Fully connected layer (FC) → compute the class scores, and it connects all
neurons in this layer with all the neurons in the previous one. (e.g. the size is [1, 1, 10] if we
have 10 classes)
Input layer
Existing color spaces for images:
RBG, Grayscale, HSV, Lab, etc.
CNNs - architectures specific for
images
Reduce the images into a form
easier to process
Without loosing features needed
for a good recognition
Convolutional layer (CONV)
Spatial arrangement:
Depths (D) → nb of filters we want to
use
Stride (S) → value with which we slide
the filter
Padding (P) → the number of zeros we
add to the border
Input size (I) → size of the image
Filter size (F) → size of the convolution
=> Size of the output:
(I−F+2P)/S+1
E.g. i=5, F=3, P=0, S=1 => O=(5-3+0)/1+1=3
Convolutional layer (CONV)
Conv layers:
In CNNs architectures can
have multiple Conv layers
1st layer captures low-level
features
Final layers capture
high-level features
When the image has 3 channels (RGB) => the filter has D = 3
Pooling layer (POOL)
Reduces the spatial size of the
convolved feature
Decreases computational power
Extracts dominant features
Has no parameters to learn
Two types: max and average pooling
Pooling layer (POOL)
Max pooling performs better than
average pooling
Max pooling is a noise
suppressant
RELU (activation function)
Introduces
non-linearities into
the network
RELU (activation function)
Linear Activation functions
produce linear decisions no
matter the network size
Non-linearities allow us to
approximate arbitrarily
complex functions
CNNs for feature learning
1. Learn features in input image through convolution
2. Introduce non-linearity through activation function (real-world data is non-linear!)
3. Reduce dimensionality and preserve spatial invariance with pooling
CNNs for classification
1. CONV and POOL layers output high-level features of input
2. Fully connected layer uses these features for classifying input image
3. Express output as probability of image belonging to a particular class
CNNs: training with backpropagation
Learn weights for convolutional filters and fully connected layers
ConvNet architectures
LeNet
AlexNet
GoogLeNet
VGGNet
ResNet
etc.
Errorrate%
CNNs: Tips - dataset creation
Where to find datasets
https://toolbox.google.com/datasetsearch
https://www.kaggle.com/datasets
Crawl the web ! (Flickr, Bing, Google)
Watch out for scientific paper releases and conference workshops
Faire de la reconnaissance d'images avec le Deep Learning - Cristina & Pierre @ Photobox
CNNs: Tips - training
● No need to start from scratch (train with less data, start from pretrained models,
domain adaptation)
● Monitor loss and validation accuracies
● Optimize once it works
Batch size
Learning Rates
Modules & Loss
Some applications @Photobox
and not only
Photo crop: naive version
⇒ How to crop the photo and keep the main subject ?
Photo crop: using face detection
⇒ Face detection allows to have a crop focused on the faces
Near duplicates filtering
Without duplicates
filtering
With duplicates
filtering
Near duplicates filtering
0.4
0
0.1
…
0
Remove
Feature comparison allows us to find near duplicates and remove them
Goal : reduce the hassle of duplicate selection
Near duplicates filtering
Goal : reduce the hassle of duplicate selection
Feature comparison allows us to find near duplicates and remove them
0.4
5
-3
…
3
Remove
Near duplicates filtering
-4
15
20
…
10
Remove
Feature comparison allows us to find near duplicates and remove them
Goal : reduce the hassle of duplicate selection
Feature comparison allows us to find near duplicates and remove them
-40
5
10
…
11
Remove
Near duplicates filtering
Goal : reduce the hassle of duplicate selection
Feature comparison allows us to find near duplicates and remove them
102
-32
120
…
33
Keep
Near duplicates filtering
Goal : reduce the hassle of duplicate selection
Photo selection with aesthetics
● Propose book covers or photo candidates for full page photos in a book
● Suggest premium products with the most beautiful pictures from a set
Photo selection with aesthetics
● Select the most beautiful photo from a set of duplicates
0.73
0.52
0.53
0.67
Style transfer
38
Let’s pratice !
How it ‘learns’: minimizing the error
input
expected
output expected
output
output
‘ cat ‘
Error
(ou loss)
How it ‘learns’ : minimizing the error
minimum
Starting
point
How it ‘learns’: minimizing the error
minimum
Starting
point
How it ‘learns’: backpropagation
input
expected
output
output
Error
(ou loss)
Takeaways
No algorithm is 100% accurate
It depends on:
How much data we have
The quality of the data
Performance tradeoff
Hardware
Some algorithms are better than humans,
some of them are way behind
Faire de la reconnaissance d'images avec le Deep Learning - Cristina & Pierre @ Photobox
Faire de la reconnaissance d'images avec le Deep Learning - Cristina & Pierre @ Photobox
How it ‘learns’ : minimizing the error
- Define a loss function
- Minimize this loss
- Gradient descent
algorithm

More Related Content

PPTX
Convolution Neural Network (CNN)
Suraj Aavula
 
PPTX
Convolutional Neural Network (CNN)
Muhammad Haroon
 
PPTX
Convolutional neural network
Ferdous ahmed
 
PPTX
Convolution Neural Network (CNN)
Basit Rafiq
 
PPTX
Convolutional neural network
MojammilHusain
 
PDF
Deep learning
Rouyun Pan
 
PDF
Convolutional neural network
Itachi SK
 
PDF
Introduction to Convolutional Neural Networks
Hannes Hapke
 
Convolution Neural Network (CNN)
Suraj Aavula
 
Convolutional Neural Network (CNN)
Muhammad Haroon
 
Convolutional neural network
Ferdous ahmed
 
Convolution Neural Network (CNN)
Basit Rafiq
 
Convolutional neural network
MojammilHusain
 
Deep learning
Rouyun Pan
 
Convolutional neural network
Itachi SK
 
Introduction to Convolutional Neural Networks
Hannes Hapke
 

What's hot (20)

PPTX
Convolutional Neural Network - CNN | How CNN Works | Deep Learning Course | S...
Simplilearn
 
PPTX
Convolutional Neural Network
Vignesh Suresh
 
PPTX
Image classification with Deep Neural Networks
Yogendra Tamang
 
PPTX
Image classification using cnn
SumeraHangi
 
PPTX
CONVOLUTIONAL NEURAL NETWORK
Md Rajib Bhuiyan
 
PPTX
CNN and its applications by ketaki
Ketaki Patwari
 
PPTX
Deep learning for image super resolution
Prudhvi Raj
 
PPTX
Convolutional Neural Network and Its Applications
Kasun Chinthaka Piyarathna
 
PDF
Convolutional Neural Network Models - Deep Learning
Mohamed Loey
 
PPTX
Machine Learning - Convolutional Neural Network
Richard Kuo
 
PDF
Understanding Convolutional Neural Networks
Jeremy Nixon
 
PPTX
Machine Learning - Introduction to Convolutional Neural Networks
Andrew Ferlitsch
 
PPT
Cnn method
AmirSajedi1
 
PPT
Super Resolution in Digital Image processing
Ramrao Desai
 
PPTX
Lecture 29 Convolutional Neural Networks - Computer Vision Spring2015
Jia-Bin Huang
 
PPTX
Convolutional neural network from VGG to DenseNet
SungminYou
 
PDF
Overview of Convolutional Neural Networks
ananth
 
PDF
Deep-Learning Based Stereo Super-Resolution
NAVER Engineering
 
PPTX
Digital image processing techniques
Shab Bi
 
Convolutional Neural Network - CNN | How CNN Works | Deep Learning Course | S...
Simplilearn
 
Convolutional Neural Network
Vignesh Suresh
 
Image classification with Deep Neural Networks
Yogendra Tamang
 
Image classification using cnn
SumeraHangi
 
CONVOLUTIONAL NEURAL NETWORK
Md Rajib Bhuiyan
 
CNN and its applications by ketaki
Ketaki Patwari
 
Deep learning for image super resolution
Prudhvi Raj
 
Convolutional Neural Network and Its Applications
Kasun Chinthaka Piyarathna
 
Convolutional Neural Network Models - Deep Learning
Mohamed Loey
 
Machine Learning - Convolutional Neural Network
Richard Kuo
 
Understanding Convolutional Neural Networks
Jeremy Nixon
 
Machine Learning - Introduction to Convolutional Neural Networks
Andrew Ferlitsch
 
Cnn method
AmirSajedi1
 
Super Resolution in Digital Image processing
Ramrao Desai
 
Lecture 29 Convolutional Neural Networks - Computer Vision Spring2015
Jia-Bin Huang
 
Convolutional neural network from VGG to DenseNet
SungminYou
 
Overview of Convolutional Neural Networks
ananth
 
Deep-Learning Based Stereo Super-Resolution
NAVER Engineering
 
Digital image processing techniques
Shab Bi
 
Ad

Similar to Faire de la reconnaissance d'images avec le Deep Learning - Cristina & Pierre @ Photobox (20)

PPTX
CNN.pptx
AbrarRana10
 
PDF
_AI_Stanford_Super_#DeepLearning_Cheat_Sheet!_😊🙃😀🙃😊.pdf
SongsDrizzle
 
PDF
super-cheatsheet-deep-learning.pdf
DeanSchoolofElectron
 
PPTX
Mnist report ppt
RaghunandanJairam
 
PDF
Mnist report
RaghunandanJairam
 
PPTX
Introduction to convolutional networks .pptx
ArunNegi37
 
PDF
dfdshofdifhdifhdfhgfoighfgofgfgfgfgdfdfdfdf
nguyenhoangy207
 
PDF
Convolutional_neural_network mechanism.pptx.pdf
SwathiSoman5
 
PPT
digital image processing - convolutional networks
Muhammad824617
 
PDF
DL.pdf
ssuserd23711
 
PPTX
Deep learning
Aman Kamboj
 
PDF
Cheatsheet convolutional-neural-networks
Steve Nouri
 
PPTX
conv_nets.pptx
ssuser80a05c
 
PPTX
Deep Learning for Image Analysis
Levan Tsinadze
 
PPTX
cnn ppt.pptx
rohithprabhas1
 
PDF
Introduction to Applied Machine Learning
SheilaJimenezMorejon
 
PPTX
Deep Neural Networks for Computer Vision
Alex Conway
 
PPTX
Deep learning requirement and notes for novoice
AmmarAhmedSiddiqui2
 
PPTX
Deep learning in E-Commerce Applications and Challenges (CNN)
Houda Bakir
 
CNN.pptx
AbrarRana10
 
_AI_Stanford_Super_#DeepLearning_Cheat_Sheet!_😊🙃😀🙃😊.pdf
SongsDrizzle
 
super-cheatsheet-deep-learning.pdf
DeanSchoolofElectron
 
Mnist report ppt
RaghunandanJairam
 
Mnist report
RaghunandanJairam
 
Introduction to convolutional networks .pptx
ArunNegi37
 
dfdshofdifhdifhdfhgfoighfgofgfgfgfgdfdfdfdf
nguyenhoangy207
 
Convolutional_neural_network mechanism.pptx.pdf
SwathiSoman5
 
digital image processing - convolutional networks
Muhammad824617
 
DL.pdf
ssuserd23711
 
Deep learning
Aman Kamboj
 
Cheatsheet convolutional-neural-networks
Steve Nouri
 
conv_nets.pptx
ssuser80a05c
 
Deep Learning for Image Analysis
Levan Tsinadze
 
cnn ppt.pptx
rohithprabhas1
 
Introduction to Applied Machine Learning
SheilaJimenezMorejon
 
Deep Neural Networks for Computer Vision
Alex Conway
 
Deep learning requirement and notes for novoice
AmmarAhmedSiddiqui2
 
Deep learning in E-Commerce Applications and Challenges (CNN)
Houda Bakir
 
Ad

More from Jedha Bootcamp (20)

PDF
DataScientist Job : Between Myths and Reality.pdf
Jedha Bootcamp
 
PDF
L'IA face à l'épreuve du covid-19 - Jedha x Kardinal
Jedha Bootcamp
 
PDF
Générer une image à partir d'un texte - Fullstack Paris #5
Jedha Bootcamp
 
PDF
Recommander des films - Andreea - Fullstack Lyon #1
Jedha Bootcamp
 
PDF
Localiser des objets en intérieur - Abdelilah - Fullstack Lyon #1
Jedha Bootcamp
 
PDF
Construction d'une voiture autonome - Adrien Dodinet, alumni Fullstack
Jedha Bootcamp
 
PDF
Slide portes ouvertes
Jedha Bootcamp
 
PDF
Prédire le comportement consommateurs grâce à la Data Science - Jimmy Brumant...
Jedha Bootcamp
 
PDF
Estimer les prix de vente sur une marketplace - Fabien Herry & Marc De Forzanz
Jedha Bootcamp
 
PDF
Trouver des offres d'emploi grâce au traitement de texte - Mohamed Zebli
Jedha Bootcamp
 
PDF
Optimiser sa stratégie de paris sportifs : le cas du football - Mohamed Zebli
Jedha Bootcamp
 
PDF
Reconnaître du mobilier design sur une photographie - Emmanuelle Guyot
Jedha Bootcamp
 
PDF
Estimer le prix de bijou lors d'une vente aux enchères - Katie Ross
Jedha Bootcamp
 
PDF
Workshop Data Visualisation - Jedha Paris
Jedha Bootcamp
 
PDF
Les applications du Deep Learning - Jedha Lyon
Jedha Bootcamp
 
PDF
Optimiser ses publicités grâce à la Data Science
Jedha Bootcamp
 
PDF
Connaître son audience grâce à la Data - Parisa MAjlessi
Jedha Bootcamp
 
PDF
ONU : baisser la mortalité infantile en optimisant les interventions - Antoin...
Jedha Bootcamp
 
PDF
Automatiser la classification d'un jeu vidéo
Jedha Bootcamp
 
PDF
Reconnaître automatiquement les positions de Yoga - Marine Gubler, programme ...
Jedha Bootcamp
 
DataScientist Job : Between Myths and Reality.pdf
Jedha Bootcamp
 
L'IA face à l'épreuve du covid-19 - Jedha x Kardinal
Jedha Bootcamp
 
Générer une image à partir d'un texte - Fullstack Paris #5
Jedha Bootcamp
 
Recommander des films - Andreea - Fullstack Lyon #1
Jedha Bootcamp
 
Localiser des objets en intérieur - Abdelilah - Fullstack Lyon #1
Jedha Bootcamp
 
Construction d'une voiture autonome - Adrien Dodinet, alumni Fullstack
Jedha Bootcamp
 
Slide portes ouvertes
Jedha Bootcamp
 
Prédire le comportement consommateurs grâce à la Data Science - Jimmy Brumant...
Jedha Bootcamp
 
Estimer les prix de vente sur une marketplace - Fabien Herry & Marc De Forzanz
Jedha Bootcamp
 
Trouver des offres d'emploi grâce au traitement de texte - Mohamed Zebli
Jedha Bootcamp
 
Optimiser sa stratégie de paris sportifs : le cas du football - Mohamed Zebli
Jedha Bootcamp
 
Reconnaître du mobilier design sur une photographie - Emmanuelle Guyot
Jedha Bootcamp
 
Estimer le prix de bijou lors d'une vente aux enchères - Katie Ross
Jedha Bootcamp
 
Workshop Data Visualisation - Jedha Paris
Jedha Bootcamp
 
Les applications du Deep Learning - Jedha Lyon
Jedha Bootcamp
 
Optimiser ses publicités grâce à la Data Science
Jedha Bootcamp
 
Connaître son audience grâce à la Data - Parisa MAjlessi
Jedha Bootcamp
 
ONU : baisser la mortalité infantile en optimisant les interventions - Antoin...
Jedha Bootcamp
 
Automatiser la classification d'un jeu vidéo
Jedha Bootcamp
 
Reconnaître automatiquement les positions de Yoga - Marine Gubler, programme ...
Jedha Bootcamp
 

Recently uploaded (20)

PPTX
The whitetiger novel review for collegeassignment.pptx
DhruvPatel754154
 
PPTX
International-health-agency and it's work.pptx
shreehareeshgs
 
PPTX
Future_of_AI_Presentation for everyone.pptx
boranamanju07
 
PDF
blockchain123456789012345678901234567890
tanvikhunt1003
 
PDF
CH2-MODEL-SETUP-v2017.1-JC-APR27-2017.pdf
jcc00023con
 
PPTX
Web dev -ppt that helps us understand web technology
shubhragoyal12
 
PPTX
Economic Sector Performance Recovery.pptx
yulisbaso2020
 
PDF
Research about a FoodFolio app for personalized dietary tracking and health o...
AustinLiamAndres
 
PPT
Real Life Application of Set theory, Relations and Functions
manavparmar205
 
PDF
The_Future_of_Data_Analytics_by_CA_Suvidha_Chaplot_UPDATED.pdf
CA Suvidha Chaplot
 
PDF
WISE main accomplishments for ISQOLS award July 2025.pdf
StatsCommunications
 
PDF
Company Presentation pada Perusahaan ADB.pdf
didikfahmi
 
PPT
Grade 5 PPT_Science_Q2_W6_Methods of reproduction.ppt
AaronBaluyut
 
PPTX
Fuzzy_Membership_Functions_Presentation.pptx
pythoncrazy2024
 
PPTX
INFO8116 - Week 10 - Slides.pptx big data architecture
guddipatel10
 
PDF
Linux OS guide to know, operate. Linux Filesystem, command, users and system
Kiran Maharjan
 
PDF
Classifcation using Machine Learning and deep learning
bhaveshagrawal35
 
PDF
717629748-Databricks-Certified-Data-Engineer-Professional-Dumps-by-Ball-21-03...
pedelli41
 
PPTX
lecture 13 mind test academy it skills.pptx
ggesjmrasoolpark
 
PPTX
Short term internship project report on power Bi
JMJCollegeComputerde
 
The whitetiger novel review for collegeassignment.pptx
DhruvPatel754154
 
International-health-agency and it's work.pptx
shreehareeshgs
 
Future_of_AI_Presentation for everyone.pptx
boranamanju07
 
blockchain123456789012345678901234567890
tanvikhunt1003
 
CH2-MODEL-SETUP-v2017.1-JC-APR27-2017.pdf
jcc00023con
 
Web dev -ppt that helps us understand web technology
shubhragoyal12
 
Economic Sector Performance Recovery.pptx
yulisbaso2020
 
Research about a FoodFolio app for personalized dietary tracking and health o...
AustinLiamAndres
 
Real Life Application of Set theory, Relations and Functions
manavparmar205
 
The_Future_of_Data_Analytics_by_CA_Suvidha_Chaplot_UPDATED.pdf
CA Suvidha Chaplot
 
WISE main accomplishments for ISQOLS award July 2025.pdf
StatsCommunications
 
Company Presentation pada Perusahaan ADB.pdf
didikfahmi
 
Grade 5 PPT_Science_Q2_W6_Methods of reproduction.ppt
AaronBaluyut
 
Fuzzy_Membership_Functions_Presentation.pptx
pythoncrazy2024
 
INFO8116 - Week 10 - Slides.pptx big data architecture
guddipatel10
 
Linux OS guide to know, operate. Linux Filesystem, command, users and system
Kiran Maharjan
 
Classifcation using Machine Learning and deep learning
bhaveshagrawal35
 
717629748-Databricks-Certified-Data-Engineer-Professional-Dumps-by-Ball-21-03...
pedelli41
 
lecture 13 mind test academy it skills.pptx
ggesjmrasoolpark
 
Short term internship project report on power Bi
JMJCollegeComputerde
 

Faire de la reconnaissance d'images avec le Deep Learning - Cristina & Pierre @ Photobox

  • 1. Data Science Bootcamp Commencez votre carrière dans la Data
  • 2. Nos Speakers — Cristina Oprean & Pierre Stefani Machine Learning Engineer
  • 3. The Rise of Deep Learning Healthcare Autonomous vehicles Reinforcement learning Robotics Language Processing GANs
  • 4. What is Deep Learning ?
  • 5. Why Deep Learning ? Hand engineered features are time consuming, brittle and not scalable in practice Can we learn the underlying features directly from data?
  • 6. Why now ? Neural Networks date back decades, so why the resurgence?
  • 7. Inspired from neuroscience - Signal Input - Neuron activation Decision
  • 8. Fully connected networks Fully connected: Connect neuron in hidden layer to all neurons in input layer No spatial information! And many, many parameters! Input: 2D image Vector of pixel values
  • 9. Using spatial structure Idea: connect patches of input to neurons in the hidden layer. Neuron connected to region of input. Only “sees” these values Input: 2D image. Array of pixel values
  • 10. Applying Filters to Extract Features 1) Apply a set of weights – a filter – to extract local features 2) Use multiple filters to extract different features 3) Spatially share parameters of each filter
  • 12. Layers used to build ConvNets INPUT → will hold the raw pixel values of the image (e.g.[32,32,3] - image with width 32, height 32 and 3 channels: RGB) Convolutional layer (CONV) → compute the output of neurons connected to local regions in the input (e.g.: output of size [32x32x12] if we decided to use 12 filters) RELU → apply an elementwise activation function, such as the max(0,x) thresholding at zero. (e.g. the size of the volume is unchanged [32x32x12]) POOL → perform a downsampling operation along the spatial dimensions (width, height), resulting in volume such as [16x16x12]. Fully connected layer (FC) → compute the class scores, and it connects all neurons in this layer with all the neurons in the previous one. (e.g. the size is [1, 1, 10] if we have 10 classes)
  • 13. Input layer Existing color spaces for images: RBG, Grayscale, HSV, Lab, etc. CNNs - architectures specific for images Reduce the images into a form easier to process Without loosing features needed for a good recognition
  • 14. Convolutional layer (CONV) Spatial arrangement: Depths (D) → nb of filters we want to use Stride (S) → value with which we slide the filter Padding (P) → the number of zeros we add to the border Input size (I) → size of the image Filter size (F) → size of the convolution => Size of the output: (I−F+2P)/S+1 E.g. i=5, F=3, P=0, S=1 => O=(5-3+0)/1+1=3
  • 15. Convolutional layer (CONV) Conv layers: In CNNs architectures can have multiple Conv layers 1st layer captures low-level features Final layers capture high-level features When the image has 3 channels (RGB) => the filter has D = 3
  • 16. Pooling layer (POOL) Reduces the spatial size of the convolved feature Decreases computational power Extracts dominant features Has no parameters to learn Two types: max and average pooling
  • 17. Pooling layer (POOL) Max pooling performs better than average pooling Max pooling is a noise suppressant
  • 19. RELU (activation function) Linear Activation functions produce linear decisions no matter the network size Non-linearities allow us to approximate arbitrarily complex functions
  • 20. CNNs for feature learning 1. Learn features in input image through convolution 2. Introduce non-linearity through activation function (real-world data is non-linear!) 3. Reduce dimensionality and preserve spatial invariance with pooling
  • 21. CNNs for classification 1. CONV and POOL layers output high-level features of input 2. Fully connected layer uses these features for classifying input image 3. Express output as probability of image belonging to a particular class
  • 22. CNNs: training with backpropagation Learn weights for convolutional filters and fully connected layers
  • 24. CNNs: Tips - dataset creation Where to find datasets https://toolbox.google.com/datasetsearch https://www.kaggle.com/datasets Crawl the web ! (Flickr, Bing, Google) Watch out for scientific paper releases and conference workshops
  • 26. CNNs: Tips - training ● No need to start from scratch (train with less data, start from pretrained models, domain adaptation) ● Monitor loss and validation accuracies ● Optimize once it works Batch size Learning Rates Modules & Loss
  • 28. Photo crop: naive version ⇒ How to crop the photo and keep the main subject ?
  • 29. Photo crop: using face detection ⇒ Face detection allows to have a crop focused on the faces
  • 30. Near duplicates filtering Without duplicates filtering With duplicates filtering
  • 31. Near duplicates filtering 0.4 0 0.1 … 0 Remove Feature comparison allows us to find near duplicates and remove them Goal : reduce the hassle of duplicate selection
  • 32. Near duplicates filtering Goal : reduce the hassle of duplicate selection Feature comparison allows us to find near duplicates and remove them 0.4 5 -3 … 3 Remove
  • 33. Near duplicates filtering -4 15 20 … 10 Remove Feature comparison allows us to find near duplicates and remove them Goal : reduce the hassle of duplicate selection
  • 34. Feature comparison allows us to find near duplicates and remove them -40 5 10 … 11 Remove Near duplicates filtering Goal : reduce the hassle of duplicate selection
  • 35. Feature comparison allows us to find near duplicates and remove them 102 -32 120 … 33 Keep Near duplicates filtering Goal : reduce the hassle of duplicate selection
  • 36. Photo selection with aesthetics ● Propose book covers or photo candidates for full page photos in a book ● Suggest premium products with the most beautiful pictures from a set
  • 37. Photo selection with aesthetics ● Select the most beautiful photo from a set of duplicates 0.73 0.52 0.53 0.67
  • 40. How it ‘learns’: minimizing the error input expected output expected output output ‘ cat ‘ Error (ou loss)
  • 41. How it ‘learns’ : minimizing the error minimum Starting point
  • 42. How it ‘learns’: minimizing the error minimum Starting point
  • 43. How it ‘learns’: backpropagation input expected output output Error (ou loss)
  • 44. Takeaways No algorithm is 100% accurate It depends on: How much data we have The quality of the data Performance tradeoff Hardware Some algorithms are better than humans, some of them are way behind
  • 47. How it ‘learns’ : minimizing the error - Define a loss function - Minimize this loss - Gradient descent algorithm