Top Banner
65

𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

Aug 09, 2018

Download

Documents

vukien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 2: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 3: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐼 𝑙Λ

𝐼

𝐼

Ξ› = {"wheel", "cars" … . .……"castle", "baboon", … }

Page 4: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐼 𝑙Λ

𝐼

𝐼

Ξ› = {"wheel", "cars" … . .……"castle", "baboon", … }

Page 5: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 6: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 7: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 8: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

β€’

β€’

Page 9: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 10: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 11: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

Page 12: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

DateDeep Learnig Classes

(09:30-13:00)Image Classification Classes

(14:15-17:45)

12/02/2018Introduction to Deep Learning, Classification

and Feed Forward Neural NetworksIntroduction to Image Classification and basics

of image handling in Python

14/02/2018Overfitting and regularization, gradient descent

variations, tips & tricksHand-crafted features for image classification

16/02/2018Recurrent neural networks, vanishing gradient

issues, Long-Short Term Memories Computer Vision features for image

classification

19/02/2018 TensorFlow and PyTorchData-driven feature extraction and

Convolutional Neural Networks

21/02/2018Deep neural networks architectures for image

classification and structural learning (with guests)

Advanced CNNs and Best practicesin image classification

23/02/2018Special guests: Variational Autoencoder, ShapeClassification, Overview of DeepMind research.

An overview on extended problems in image classification

Page 13: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

DateDeep Learnig Classes

(09:30-13:00)Image Classification Classes

(14:15-17:45)

12/02/2018Introduction to Deep Learning, Classification

and Feed Forward Neural NetworksIntroduction to Image Classification and basics

of image handling in Python

14/02/2018Overfitting and regularization, gradient

descent variations, tips & tricksHand-crafted features for image classification

16/02/2018Recurrent neural networks, vanishing gradient

issues, Long-Short Term Memories Computer Vision features for image

classification

19/02/2018 TensorFlow and PyTorchData-driven feature extraction and

Convolutional Neural Networks

21/02/2018Deep neural networks architectures for image

classification and structural learning (with guests)

Advanced CNNs and Best practicesin image classification

23/02/2018Special guests: Variational Autoencoder, ShapeClassification, Overview of DeepMind research.

An overview on extended problems in image classification

Page 15: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 16: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

123 122 134 121 132 133 145 134

122 121 125 132 124 121 116 126

119 127 137 119 139 127 128 131

𝒙

Page 17: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐼(π‘Ÿ, 𝑐) = [120, πŸπŸ“πŸŽ, 30]

𝐼(π‘Ÿ, 𝑐) = [100, 190, πŸπŸ’πŸŽ]

𝐼(π‘Ÿ, 𝑐) = [πŸπŸ’πŸŽ, 80, 70]

𝐼(π‘Ÿ, 𝑐) = [40, 30, 11]

[0 βˆ’ 255]

Page 18: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐺 ∈ ℝ𝑅×𝐢

𝐡 ∈ ℝ𝑅×𝐢

𝐼 ∈ ℝ𝑅×𝐢×3

𝑅 ∈ ℝ𝑅×𝐢

𝐼 ∈ ℝ512Γ—512Γ—3

Page 19: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 20: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 21: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 22: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 23: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 24: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 25: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐼 ∈ ℝ𝑅 Γ— 𝐢 Γ— 3

𝑉 ∈ ℝ𝑅 Γ— 𝐢 Γ— 3 Γ— 𝑇

𝑅 = 144, 𝐢 = 180388.800

Page 26: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’ 𝑅 = 1080, 𝐢 = 1920 β‰ˆ 6𝑀𝐡

β€’ β‰ˆ 150𝑀𝐡

Page 27: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

Page 28: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 29: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 30: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 31: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 32: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 33: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 34: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 35: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 36: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 38: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’ 𝒙 ∈ ℝ𝑑 𝑑

β€’ 𝑦 ∈ Ξ› = {1, … , 𝐿} 𝐼 𝐿

𝑇𝑅 = { 𝒙𝑖 , 𝑦𝑖 , 𝑖 = 1, … , 𝑁}𝒦 ∢ ℝ𝑑 β†’ Ξ›

ΰ·œπ‘¦π‘— = 𝒦 𝒙𝑗

𝑦𝑗 , βˆ€π‘—

ΰ·œπ‘¦π‘— 𝒦

{ π‘₯𝑗 , 𝑦𝑗 , 𝑗 = 1, … }

Page 39: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

Page 41: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 42: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

Page 43: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

ΰ·œπ‘¦π‘— = π‘¦π‘—βˆ— , being π‘—βˆ— = argmin𝑖=1…𝑁

𝑑( 𝒙𝑗 , 𝒙𝑖)

𝑑 𝒙𝑗 , 𝒙𝑖 = 𝒙𝒋 βˆ’ π’™π’Š 𝟐=

π‘˜π’™π’‹ π‘˜

βˆ’ π’™π’Š π‘˜

𝟐

Page 44: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝐾 βˆ’

ΰ·œπ‘¦π‘— = π‘¦π‘—βˆ— , being π‘—βˆ— the mode of 𝒰𝐾 𝒙𝑗

𝒰𝐾(𝒙𝑗) 𝐾 𝒙𝑗

𝐾

Page 45: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

𝑇𝑅 𝑑

β€’

β€’

Page 47: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

ℝ𝑑

CS231n: Convolutional Neural Networks for Visual Recognition http://cs231n.github.io/

Page 48: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

𝑑 = 32 Γ— 32 Γ— 3= 3072

Page 49: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 50: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 51: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 52: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 53: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 54: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝒙𝐿

𝒦: ℝ𝑑 β†’ ℝ𝐿

𝒦(𝒙) 𝐿 βˆ’ 𝑖 βˆ’

𝑠𝑖 = 𝒦 𝒙 𝑖

𝒙 π’Š

Page 55: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝒦𝒦 𝒙 = π‘Šπ’™ + 𝑏

π‘Š ∈ ℝ𝐿×𝑑 𝑏 ∈ ℝ𝐿

𝒦

π‘Š 𝑏

CS231n: Convolutional Neural Networks for Visual Recognition http://cs231n.github.io/

𝒦

Page 56: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

ΰ·œπ‘¦π‘— = argmax𝑖=1,..,𝐿

𝑠𝑗 π’Š

𝒔𝑗 π’Šπ‘– βˆ’

𝒦 𝒙𝑗 = π‘Šπ’™π‘— + 𝒃

𝒦

Page 57: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝒦

Page 58: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

𝑇𝑅𝑇𝑅

π‘Š, 𝑏 = argminπ‘Šβˆˆβ„πΏΓ—π‘‘ π‘βˆˆ ℝ𝐿

𝒙𝑖,𝑦𝑖 βˆˆπ‘‡π‘…

β„’ 𝒙, 𝑦𝑖

π‘Š, 𝑏 = argminπ‘Šβˆˆβ„πΏΓ—π‘‘ π‘βˆˆ ℝ𝐿

𝒙𝑖,𝑦𝑖 βˆˆπ‘‡π‘…

β„’ 𝒙, 𝑦𝑖 + πœ† β„›(π‘Š, 𝑏)

πœ† > 0

Page 59: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 60: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

π‘Š(𝑖, : ) 𝑑 βˆ’π‘– βˆ’

𝑖 βˆ’

π‘Š 𝑖, : βˆ— 𝒙

𝑑 βˆ’

Page 61: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

ℝ𝑑

ℝ𝑑

ℝ2

𝑓 π‘₯1, π‘₯2 = 𝑀1π‘₯1 + 𝑀2π‘₯2 + 𝑏

π‘₯1, π‘₯2

𝑓 π‘₯1, π‘₯2 = 0

ℝ2

ℝ𝑑

Page 62: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual
Page 63: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

Page 64: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

Input image

Input image

Feat

ure

Ext

ract

ion

A

lgo

rith

ms

𝐼1 ∈ β„π‘Ÿ1×𝑐1

𝐼1 ∈ β„π‘Ÿ2×𝑐2

𝐱 ∈ ℝ𝑑

𝐱 ∈ ℝ𝑑

Cla

ssif

ier

(𝑑 β‰ͺ π‘Ÿ Γ— 𝑐)

β€œparcel”

β€œdouble”

𝑦 ∈ Ξ›

𝑦 ∈ Ξ›

Page 65: 𝐼 𝑙 - Politecnico di Milanohome.deib.polimi.it/boracchi/teaching/IC/IC_Lez1_a...Β Β· 2018-02-14Β Β· Convolutional Neural Networks ... Convolutional Neural Networks for Visual

β€’

β€’

β€’

β€’

β€’

β€’