csc 411: lecture 14: principal components analysis ...urtasun/courses/csc411/14_pca.pdf · applying...

18
CSC 411: Lecture 14: Principal Components Analysis & Autoencoders Raquel Urtasun & Rich Zemel University of Toronto Nov 4, 2015 Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 1 / 18

Upload: others

Post on 20-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

CSC 411: Lecture 14: Principal Components Analysis &Autoencoders

Raquel Urtasun & Rich Zemel

University of Toronto

Nov 4, 2015

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 1 / 18

Page 2: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Today

Dimensionality Reduction

PCA

Autoencoders

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 2 / 18

Page 3: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Mixture models and Distributed Representations

One problem with mixture models: each observation assumed to come fromone of K prototypes

Constraint that only one active (responsibilities sum to one) limitsrepresentational power

Alternative: Distributed representation, with several latent variables relevantto each observation

Can be several binary/discrete variables, or continuous

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 3 / 18

Page 4: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Example: continuous underlying variables

What are the intrinsic latent dimensions in these two datasets?

How can we find these dimensions from the data?

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 4 / 18

Page 5: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Principal Components Analysis

PCA: most popular instance of second main class of unsupervised learningmethods, projection methods, aka dimensionality-reduction methods

Aim: find small number of ”directions” in input space that explain variationin input data; re-represent data by projecting along those directions

Important assumption: variation contains information

Data is assumed to be continuous:

I linear relationship between data and learned representation

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 5 / 18

Page 6: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

PCA: Common tool

Handles high-dimensional data

I if data has thousands of dimensions, can be difficult for classifier todeal with

Often can be described by much lower dimensional representation

Useful for:

I VisualizationI PreprocessingI Modeling – prior for new dataI Compression

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 6 / 18

Page 7: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

PCA: Intuition

Assume start with N data vectors, of dimensionality D

Aim to reduce dimensionality:I linearly project (multiply by matrix) to much lower dimensional space,

M << D

Search for orthogonal directions in space w/ highest varianceI project data onto this subspace

Structure of data vectors is encoded in sample covariance

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 7 / 18

Page 8: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Finding principal components

To find the principal component directions, we center the data (subtract thesample mean from each variable)

Calculate the empirical covariance matrix:

C =1

N

N∑n=1

(x(n) − x̄)(x(n) − x̄)T

with x̄ the mean

What’s the dimensionality of x?

Find the M eigenvectors with largest eigenvalues of C : these are theprincipal components

Assemble these eigenvectors into a D ×M matrix U

We can now express D-dimensional vectors x by projecting them toM-dimensional z

z = UTx

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 8 / 18

Page 9: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Standard PCA

Algorithm: to find M components underlying D-dimensional data

1. Select the top M eigenvectors of C (data covariance matrix):

C =1

N

N∑n=1

(x(n) − x̄)(x(n) − x̄)T = UΣUT ≈ UΣ1:MUT1:M

where U: orthogonal, columns = unit-length eigenvectors

UTU = UUT = 1

and Σ: matrix with eigenvalues in diagonal = variance in direction ofeigenvector

2. Project each input vector x into this subspace, e.g.,

zj = uTj x; z = UT1:Mx

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 9 / 18

Page 10: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Two Derivations of PCA

Two views/derivations:

I Maximize variance (scatter of green points)I Minimize error (red-green distance per datapoint)

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 10 / 18

Page 11: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

PCA: Minimizing Reconstruction Error

We can think of PCA as projecting the data onto a lower-dimensionalsubspace

One derivation is that we want to find the projection such that the bestlinear reconstruction of the data is as close as possible to the original data

J =∑n

||x(n) − x̃(n)||2

where

x̃(n) =M∑j=1

z(n)j uj +

D∑j=M+1

bjuj

Objective minimized when first M components are the eigenvectors with themaximal eigenvalues

z(n)j = (x(n))Tuj ; bj = x̄Tuj

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 11 / 18

Page 12: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Applying PCA to faces

Run PCA on 2429 19x19 grayscale images (CBCL data)

Compresses the data: can get good reconstructions with only 3 components

PCA for pre-processing: can apply classifier to latent representation

I PCA w/ 3 components obtains 79% accuracy on face/non-facediscrimination in test data vs. 76.8% for m.o.G with 84 states

Can also be good for visualization

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 12 / 18

Page 13: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Applying PCA to faces: Learned basis

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 13 / 18

Page 14: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Applying PCA to digits

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 14 / 18

Page 15: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Relation to Neural Networks

PCA is closely related to a particular form of neural network

An autoencoder is a neural network whose outputs are its own inputs

The goal is to minimize reconstruction error

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 15 / 18

Page 16: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Autoencoders

Definez = f (W x); x̂ = g(V z)

Goal:

minW,V

1

2N

N∑n=1

||x(n) − x̂(n)||2

If g and f are linear

minW,V

1

2N

N∑n=1

||x(n) − VW x(n)||2

In other words, the optimal solution is PCA.

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 16 / 18

Page 17: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Autoencoders: Nonlinear PCA

What if g() is not linear?

Then we are basically doing nonlinear PCA

Some subtleties but in general this is an accurate description

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 17 / 18

Page 18: CSC 411: Lecture 14: Principal Components Analysis ...urtasun/courses/CSC411/14_pca.pdf · Applying PCA to faces Run PCA on 2429 19x19 grayscale images (CBCL data) Compresses the

Comparing Reconstructions

Urtasun & Zemel (UofT) CSC 411: 14-PCA & Autoencoders Nov 4, 2015 18 / 18