Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial...

117
Unsupervised learning with Artificial Neural Networks Guénaël Cabanes

Transcript of Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial...

Page 1: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Unsupervised learning with Artificial Neural Networks

Guénaël Cabanes

Page 2: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Introduction

2019 Guénaël Cabanes 2

Page 3: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Unsupervised learning

Unsupervised learning try to estimate a model of the data underlying distribution

2019 Guénaël Cabanes 3

Page 4: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Unsupervised learning

2019 Guénaël Cabanes 4

Page 5: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Feedforward Networks

2019 Guénaël Cabanes 5

Page 6: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Unsupervised Deep Learning

2019 Guénaël Cabanes 6

Page 7: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Generative Adversarial Networks (GAN)

2019 Guénaël Cabanes 7

Generative• Learn a generative model

Adversarial• Trained in an adversarial setting

Networks• Use Deep Neural Networks

Page 8: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: why generative?

2019 Guénaël Cabanes 8

We’ve seen discriminative models • Given an image X, predict a label Y• Estimates P(Y|X)

Discriminative models have several key limitations• Can’t model P(X), i.e. the probability of seeing a certain image• Thus, can’t sample from P(X), e.g. can’t generate new data

Generative models (in general) cope with all of above• Can model P(X)• Can generate new data

Page 9: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: which face is fake?

2019 Guénaël Cabanes 9

Page 10: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: architecture

2019 Guénaël Cabanes 10

• Z is some random noise (Gaussian/Uniform).• Z can be thought as the latent representation of the image.

https://www.slideshare.net/xavigiro/

Page 11: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: architecture

2019 Guénaël Cabanes 11

Page 12: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: architecture

2019 Guénaël Cabanes 12

Page 13: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: architecture

2019 Guénaël Cabanes 13

Page 14: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: architecture

2019 Guénaël Cabanes 14

Page 15: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 15

Page 16: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 16

Page 17: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 17

Page 18: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 18

Page 19: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 19

Page 20: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 20

Page 21: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 21

Page 22: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 22

Page 23: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 23

Page 24: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 24

Page 25: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 25

Page 26: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 26

Page 27: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 27

Page 28: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 28

Page 29: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 29

Page 30: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 30

Page 31: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: intuition

2019 Guénaël Cabanes 31

Page 32: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: face generation

2019 Guénaël Cabanes 32

Page 33: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: face generation

2019 Guénaël Cabanes 33

Page 34: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: face generation

2019 Guénaël Cabanes 34

Page 35: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 35

ReLU = rectified linear unit

Page 36: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 36

Page 37: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Feature hierarchies

2019 Guénaël Cabanes 37

pixels

edges

object parts(combination of edges)

object models

GAN: Convolutional Network

Page 38: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Convolutional Neural Network

2019 Guénaël Cabanes 38

Page 39: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Convolutional Neural Network

2019 Guénaël Cabanes 39

Page 40: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 40

Page 41: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 41

Page 42: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 42

Page 43: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 43

Page 44: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 44

Page 45: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 45

Page 46: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 46

Page 47: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 47

Page 48: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 48

Page 49: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 49

Page 50: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 50

Page 51: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 51

Page 52: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 52

Page 53: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 53

Page 54: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 54

Page 55: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Network

2019 Guénaël Cabanes 55

Page 56: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Pooling

2019 Guénaël Cabanes 56

Page 57: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Pooling

2019 Guénaël Cabanes 57

3x3 pooling over 5x5 convolved feature

Page 58: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Architecture

2019 Guénaël Cabanes 58

Page 59: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Architecture

2019 Guénaël Cabanes 59

Page 60: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Architecture

2019 Guénaël Cabanes 60

Page 61: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: Convolutional Architecture

2019 Guénaël Cabanes 61

Page 62: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: face generation

2019 Guénaël Cabanes 62

Page 63: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: anime face generation

2019 Guénaël Cabanes 63

Page 64: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: interpolation

2019 Guénaël Cabanes 64

https://arxiv.org/pdf/1703.10717.pdf

Page 65: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: face aging

2019 Guénaël Cabanes 65

Page 66: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: adding attributes

2019 Guénaël Cabanes 66

Page 67: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: combination

2019 Guénaël Cabanes 67

Page 68: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: image reconstruction

2019 Guénaël Cabanes 68

Page 69: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: photo to paint

2019 Guénaël Cabanes 69

Page 70: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: artistic creation

2019 Guénaël Cabanes 70

http://people.eecs.berkeley.edu/~junyanz/projects/gvm/

Page 71: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: text to image

2019 Guénaël Cabanes 71

Page 72: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GAN: text to image

2019 Guénaël Cabanes 72

Page 73: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

• Sample in parallel

• Few restrictions on generator function

• Subjectively better results

• Very difficult to train properly

• Difficult to evaluate

• Likelihood cannot be computed

• No encoder (in vanilla GAN)

2014 Guénaël Cabanes 73

GAN: advantages/drawbacks

Page 74: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Topological Networks

2019 Guénaël Cabanes 74

Page 75: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

75

K-means (reminders)

Cost function :

2019 Guénaël Cabanes

Page 76: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Self-Organizing Maps (SOM)

2019 Guénaël Cabanes 76

Page 77: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Principles

2019 Guénaël Cabanes 77

Page 78: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Cost function

2019 Guénaël Cabanes 78

Page 79: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Topology

2019 Guénaël Cabanes 79

Page 80: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Learning

2019 Guénaël Cabanes 80

Page 81: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Learning

2019 Guénaël Cabanes 81

Page 82: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Algorithm

2019 Guénaël Cabanes 82

Page 83: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Algorithm

2019 Guénaël Cabanes 83

Cost function to minimize

Gradient

Adaptation rules

Affectation

Neighborhood function

Distance on the map

Temperature

Page 84: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Algorithm

2019 Guénaël Cabanes 84

position of neuron s

Page 85: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Examples

2019 Guénaël Cabanes 85

Page 86: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Examples

2019 Guénaël Cabanes 86

Page 87: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Examples

2019 Guénaël Cabanes 87

Page 88: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Application 1

2019 Guénaël Cabanes 88

Page 89: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Application 1

2019 Guénaël Cabanes 89

Page 90: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Interpretation

2019 Guénaël Cabanes 90

Page 91: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Interpretation

2019 Guénaël Cabanes 91

Page 92: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Application 2

2019 Guénaël Cabanes 92

World Bank poverty indicators (1992)

39 variables

Page 93: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Application 2

2019 Guénaël Cabanes 93

Page 94: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

SOM: Application 2

2019 Guénaël Cabanes 94

Page 95: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Deep SOM

2019 Guénaël Cabanes 95

Page 96: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Deep SOM

2019 Guénaël Cabanes 96

Euclidean Distance

Kullback–Leibler divergence

Prototypes are distributions

Prototypes are vectors

Page 97: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Properties

2019 Guénaël Cabanes 97

Erro

r

Page 98: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Properties

2019 Guénaël Cabanes 98

1 layer 5 layers

Page 99: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

• Model is easily interpreted and understood.

• Provide intelligible visualisation of the data.

• Clustering large and complex data sets.

• Lots of parameters to choose.

• Can generate topological anomalies.

• Not very fast

2014 Guénaël Cabanes 99

SOM: advantages/drawbacks

Page 100: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Growing Neural Gas (GNG)

2019 Guénaël Cabanes 100

Page 101: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Algorithm

2019 Guénaël Cabanes 101

• With s and t the two best neurons for a data point x:– Updating errors and utilities:

• Updating ages:– Increment by 1 the age of all edges between s and its topological neighbours. – If needed, create an edge between s and t, then set the age of this edge to 0.

• At the end of each step, for each neuron:

Page 102: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Algorithm

2019 Guénaël Cabanes 102

Updating prototypes:

Page 103: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Algorithm

2019 Guénaël Cabanes 103

Adding a new neuron:

Page 104: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Algorithm

2019 Guénaël Cabanes 104

Removing a neuron:

Page 105: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Algorithm

2019 Guénaël Cabanes 105

Removing an edge:

Page 106: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG: Example

2019 Guénaël Cabanes 106

Page 107: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Density-based – GNG

2019 Guénaël Cabanes 107

Page 108: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 108

Density-based – GNG

Page 109: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 109

Density-based – GNG

Page 110: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 110

Density-based – GNG

Page 111: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 111

Density-based – GNG

Page 112: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 112

Density-based – GNG

Page 113: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

2019 Guénaël Cabanes 113

Density-based – GNG

Page 114: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

GNG vs SOM

2019 Guénaël Cabanes 114

Page 115: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

• Learn the topology.

• Is adapted to data streams.

• Clustering large and complex data sets.

• Lots of parameters to choose.

• No simple visualization.

• Not very fast

2014 Guénaël Cabanes 115

GNG: advantages/drawbacks

Page 116: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Summary

2019 116Guénaël Cabanes

You need useful representations and visualizations of the data structure:

➢ Self Organizing Map

You need a synthetic description of a dynamic data structure:

➢ Growing Neural Gas

You need to generate new data:

➢ Generative Adversarial Networks

Page 117: Unsupervised learning with Artificial Neural Networksbennani/tmpc/RNA/RNA-6.pdfwith Artificial Neural Networks Guénaël Cabanes. Introduction 2019 Guénaël Cabanes 2. ... • Use

Sources

• http://eric.univ-lyon2.fr/~ricco/cours/slides/en/kohonen_som.pdf

• http://www.cis.hut.fi/research/som-research/worldmap.html

• https://www.demogng.de/JavaPaper/node19.html

• https://www.slideshare.net/zukun/p05-deep-boltzmann-machines-cvpr2012-deep-learning-methods-for-vision

• https://skymind.ai/wiki/generative-adversarial-network-gan

• https://medium.com/@jonathan_hui/gan-some-cool-applications-of-gans-4c9ecca35900

• https://medium.com/datadriveninvestor/text-to-image-synthesis-6e5de1bf86ec

2019 Guénaël Cabanes 117