Machine Learning: A 60 Minute Crash Course - IOPOWWOW 20170526

94

Transcript of Machine Learning: A 60 Minute Crash Course - IOPOWWOW 20170526

HANDS UP!

WHAT IS MACHINE

LEARNING?

f(input) = output

“ M L i s m a p p i n g i n p u t s t o o u t p u t s ”

f(numerical) = classification

Fr a u d d e t e c t i o nC r e d i t s c o r i n g

C h u r n p r e d i c t i o nR e s p o n s e m o d e l s* S p a m d e t e c t i o n

CLASSIC EXAMPLES

SIRI / ALEXA

f(text) = intent

“q u e s t i o n a n s w e r i n g ”/ “ i n t e n t m a t c h i n g ”

SIRI / ALEXA

f(intent) = answer

f(audio) = text

“ s p e e c h t o t ex t ”

f(text) = audio

“ t ex t t o s p e e c h”

f(image) = [objects]

G o o g l e P h o t o sF a c i a l R e c o g n i t i o n

IMAGE OBJECT DETECTION

f(photo) = coords

IMAGE SEGMENTATION

f(photo) = text

IMAGE CAPTIONING

https://research.googleblog.com/2014/11/a-picture-is-worth-thousand-coherent.html

f(image + question) = answer

IMAGE Q&A

https://avisingh599.github.io/deeplearning/visual-qa/

IMAGE STYLE TRANSFER

f(photo) = painting

IMAGE STYLE TRANSFER

P R I S M AN B : N O I N P U T/O U T P U T PA I R S ! ? !

https://github.com/junyanz/CycleGAN

MAGIC SPELLS

OBJECT TRANSFIGURATION

f(horse) = zebra?

VIDEO STYLE TRANSFER

https://github.com/junyanz/CycleGAN/blob/master/imgs/horse2zebra.gif

IMAGE GENERATION

https://affinelayer.com/pixsrv/index.html

f(game state) = action

ATA R IS t a r C ra f tA l p h a G o

DEEP MIND

https://www.youtube.com/watch?v=Q70ulPJW3Gk

f(English text) = Russian text

GOOGLE TRANSLATE

MACHINE LEARNING vs.

RULE-BASED MODELS

1 . T h e b a s i c s 2 . S u p e r v i s e d v s U n s u p e r v i s e d3 . S u p e r v i s e d : M u l t i v a r i a t e & L o g i s t i c R e g r e s s i o n4 . F e a t u r e E n g i n e e r i n g5 . U n s u p e r v i s e d : C l u s t e r i n g 6 . S u p e r v i s e d : S V M s & R a n d o m F o r e s t s7 . U n s u p e r v i s e d : P r i n c i p a l C o m p o n e n t s ( e i g e n f a c e s )8 . S u p e r v i s e d : R e c o m m e n d e r S y s t e m s9 . R e i n f o r c e m e n t L e a r n i n g & G e n e t i c A l g o r i t h m s1 0 . S u p e r v i s e d : N e u r a l N e t w o r k s & D e e p L e a r n i n g1 1 . S t a t e o f t h e a r t : N L P 1 2 . S t a t e o f t h e a r t : C o m p u t e r V i s i o n1 3 . Tr a n s f e r L e a r n i n g & F i n e - t u n i n g1 4 . P r a c t i c a l T i p s1 5 . I m p l e m e n t a t i o n s ( G o a c t u a l l y b u i l d s o m e t h i n g ! )1 6 . W h e r e t o f r o m h e r e

OUTLINE

1. THE BASICS

f(input) = output

f(x) = y

mx + c = y

LINEAR REGRESSION

NON-LINEAR (POLYNOMIAL) REGRESSION

OVERFITTING

CROSS VALIDATION!!

2. SUPERVISED VS.

UNSUPERVISED LEARNING

DO YOU HAVE LABELS?

3. SUPERVISED: MULTIVARIATE &

LOGISTIC REGRESSION

f(X) = y

LINEAR REGRESSION

MULTIVARIATE REGRESSION

MULTIVARIATE REGRESSION

LOGISTIC REGRESSION

4. FEATUREENGINEERING

xxx

1-HOT ENCODING

BAG OF WORDS

5. UNSUPERVISED:CLUSTERING

K-MEANS

K-MEANS

http://bl.ocks.org/jbeuckm/5731501

K-MEANS

6. SUPERVISED:SUPPORT VECTOR MACHINES

&RANDOM FORESTS

“max margin classifiers”

SVMs

Ensambles of decision trees

RANDOM FORESTS

Tree splits = minimize “impurity”

RANDOM FORESTS

RANDOM FORESTS

RANDOM FORESTS

https://www.youtube.com/watch?v=kwt6XEh7U3g

RANDOM FORESTSGreat explanation by Jeremy Howard (previously of Kaggle, now fast.ai)

7. UNSUPERVISED:PRINCIPAL COMPONENT

ANALYSIS

PCA

http://setosa.io/ev/principal-component-analysis/

PCA

PCA BIPLOT

8. SUPERVISED:RECOMMENDER

SYSTEMS

GRADIENT DESCENT

STOCHASTIC GRADIENT DESCENT

HILL CLIMBING

QUICK DEMOON RECOMMENDING MOVIES BASED

ON IMDB RATINS

See lesson 4 of http://fast.ai MOOC

9. REINFORCEMENT LEARNING &

GENETIC ALGORITHMS

TRAVELING SALESMAN PROBLEM

DEMO http://joneisen.me/d3-tsp-demo/

STRIP PACKING PROBLEM

QUICK VID

10. SUPERVISED:NEURAL NETWORKS

&“DEEP LEARNING”

NN = LINEAR MODELS

+ NONLINEARITIES

BIOLOGICAL INSPIRATION

BACKPROP

http://playground.tensorflow.org/

DEMO

11. STATE OF THE ART:NLP

Word2vec, GLOVE, FASTTEXT

WORD EMBEDDINGS

WORD EMBEDDINGS

WORD EMBEDDINGS

12. STATE OF THE ART:COMPUTER VISION

IMAGENET

CONVOLUTIONAL NEURAL NETWORKS

http://cs231n.github.io/convolutional-networks/

https://ujjwalkarn.me/2016/08/11/intuitive-explanation-convnets/

CONVOLUTIONAL NEURAL NETWORKS

13. TRANSFERLEARNING

&FINE-TUNING

xxx

CHOP OFF LAST LAYER

SUPER STATE OF ART

WORD2VEC + CNN

14. PRACTICAL TIPS

SOME TIPS

1. Handling missing values

2. Pseudo labelling

3. Ensambles always win

4. Get (or generate) more data

THE UNREASONABLE EFFECTIVENESS

OF BIG DATAhttps://www.youtube.com/watch?v=yvDCzhbjYWs

DATA AUGMENTATION

Random rotate & crop

distort colour

distort orientation

DATA AUGMENTATION

SPATIAL LOOKUP

EXTERNAL DATASETS

15. IMPLEMENTATION(GO ACTUALLY BUILD

SOMETHING!)

R vs. Python(vs julia)

AlchemyWit.ai

IBM WatsonClarif.ai

Amazon RekognitionGoogle Compute

USE API’S

16. WHERE TO FROM HERE

MOOCSh t t p s : // w w w . c o u r s e r a . o r g / l e a r n /m a c h i n e - l e a r n i n gh t t p : // w w w . f a s t . a i

BOOKSh t t p : // w w w - b c f. u s c . e d u / ~ g a r e t h / I S L /

COMMUNIT IESh t t p s : // w w w . k a g g l e . c o m /h t t p s : // w w w . r e d d i t . c o m /r /m a c h i n e l e a r n i n g

PODCASTSh t t p s : / / w w w . o r e i l l y . c o m / t o p i c s / o r e i l l y - d a t a - s h o w - p o d c a s t

h t t p : // w w w . t h e t a l k i n g m a c h i n e s . c o m /