CSC 411: Lecture 11: Neural Networks II
Class based on Raquel Urtasun & Rich Zemel’s lectures Sanja Fidler
University of Toronto
March 2, 2016
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 1 / 55
CSC 411: Lecture 11: Neural Networks II Class based on Raquel - - PowerPoint PPT Presentation
CSC 411: Lecture 11: Neural Networks II Class based on Raquel Urtasun & Rich Zemels lectures Sanja Fidler University of Toronto March 2, 2016 Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 1 / 55 Today
University of Toronto
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 1 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 2 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 3 / 55
I Intrinsically difficult, computers are bad at it Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 3 / 55
I Intrinsically difficult, computers are bad at it
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 3 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 4 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 5 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 6 / 55
I Intrinsically difficult, computers are bad at it
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 7 / 55
I Intrinsically difficult, computers are bad at it
I Segmentation: Real scenes are cluttered Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 7 / 55
I Intrinsically difficult, computers are bad at it
I Segmentation: Real scenes are cluttered I Invariances: We are very good at ignoring all sorts of variations that do
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 7 / 55
I Intrinsically difficult, computers are bad at it
I Segmentation: Real scenes are cluttered I Invariances: We are very good at ignoring all sorts of variations that do
I Deformations: Natural shape classes allow variations (faces, letters,
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 7 / 55
I Intrinsically difficult, computers are bad at it
I Segmentation: Real scenes are cluttered I Invariances: We are very good at ignoring all sorts of variations that do
I Deformations: Natural shape classes allow variations (faces, letters,
I A huge amount of computation is required Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 7 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 8 / 55
34
Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 9 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 10 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 10 / 55
[Slide: Y. Zhu]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 11 / 55
[Slide: Y. Zhu]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 12 / 55
[Slide: Y. Zhu]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 13 / 55
35
Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 14 / 55
5
I Copies have slightly different
I Could also replicate across scale and
I Tricky and expensive I Replication reduces number of free
I Allows each patch of image to be
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 15 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 16 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 17 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 18 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 19 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 20 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 21 / 55
Ra Ranzato
j = max(0, K
k=1
k
jk)
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 22 / 55
54
Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 23 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 24 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 24 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 24 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 24 / 55
[http://cs231n.github.io/convolutional-networks/] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 24 / 55
[http://cs231n.github.io/convolutional-networks/]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 25 / 55
61
Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 26 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 27 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 28 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 28 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 28 / 55
[http://cs231n.github.io/convolutional-networks/]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 28 / 55
67
Ra Ranzato
n−1
n
n1
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 29 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 30 / 55
∂E ∂w1 and ∂E ∂w2
∂E ∂w1 + ∂E ∂w2 for w1 and w2
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 30 / 55
∂E ∂w1 and ∂E ∂w2
∂E ∂w1 + ∂E ∂w2 for w1 and w2
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 30 / 55
∂E ∂w1 and ∂E ∂w2
∂E ∂w1 + ∂E ∂w2 for w1 and w2
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 30 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 31 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 32 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 33 / 55
[http://cs231n.github.io/convolutional-networks/]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 34 / 55
95
CONV LOCAL CONTRAST NORM MAX POOLING FULLY CONNECTED LINEAR CONV LOCAL CONTRAST NORM MAX POOLING CONV CONV CONV MAX POOLING FULLY CONNECTED
category prediction input Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 35 / 55
96
CONV LOCAL CONTRAST NORM MAX POOLING FULLY CONNECTED LINEAR CONV LOCAL CONTRAST NORM MAX POOLING CONV CONV CONV MAX POOLING FULLY CONNECTED
4M 16M 37M 442K 1.3M 884K 307K 35K
4M 16M 37M 74M 224M 149M 223M 105M
category prediction input Ra Ranzato
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 36 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 37 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 38 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 39 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 39 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 39 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 39 / 55
[He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 40 / 55
Slide: R. Liao, Paper: [He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 41 / 55
Slide: R. Liao, Paper: [He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 42 / 55
Slide: R. Liao, Paper: [He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 43 / 55
Slide: R. Liao, Paper: [He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 44 / 55
Slide: R. Liao, Paper: [He, K., Zhang, X., Ren, S. and Sun, J., 2015. Deep Residual Learning for Image Recognition. arXiv:1512.03385, 2016] Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 45 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 46 / 55
[http://arxiv.org/pdf/1311.2901v3.pdf]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 47 / 55
[http://arxiv.org/pdf/1311.2901v3.pdf]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 48 / 55
[http://arxiv.org/pdf/1311.2901v3.pdf]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 49 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
[Slide: Y. Zhu, check tutorial slides and code: http://www.cs.utoronto.ca/~fidler/teaching/2015/CSC2523.html]
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 50 / 55
Read about it here (and try it!): https://codewords.recurse.com/issues/five/ why-do-neural-networks-think-a-panda-is-a-vulture Watch: https://www.youtube.com/watch?v=M2IebCN9Ht4
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 51 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 52 / 55
Generate text: https://vimeo.com/146492001, https://github.com/karpathy/neuraltalk2, https://github.com/ryankiros/visual-semantic-embedding
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 53 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 54 / 55
Urtasun, Zemel, Fidler (UofT) CSC 411: 11-Neural Networks II March 2, 2016 55 / 55