SlideShare uma empresa Scribd logo
1 de 45
Unsupervised Feature Learning:
A Literature Review
By: Amgad Muhammad & Mohamed EL Fadly

1
Outline
• Background
• Problem Definition
• Unsupervised Feature Learning
• Our Work
• Sparse Auto-encoder
• Preprocessing: PCA and Whitening
• Self-Taught Learning and Unsupervised Feature Learning

• References

2 of 37
Background
•

Machine learning is one of the corner stone fields in Artificial Intelligence, where machines learn to act

autonomously, and react to new situations without being pre-programmed.
•

Machine learning has seen numerous successes, but applying learning algorithms today often means
spending a long time hand-engineering the input feature representation. This is true for many problems in
vision, audio, NLP, robotics, and other areas.

•

There are many learning algorithms for learning among them are [1]:
1)

Supervised learning

2)

Unsupervised learning

3 of 37
Problem Definition
•

The target of the supervised learning method can be summarized as follows:
•
•

•

Regression
Classification

The first step to train a machine using the supervised learning method, is collecting the data set, which in most cases
is a very difficult and an expensive process

•

The alternative approach is to measure and use everything, which will lead to other problems, i.e. the noisy data [2]

4 of 37
Unsupervised feature learning
•

The unsupervised feature learning approach learns higher-level representation of the unlabeled data

features by detecting patterns using various algorithms, i.e. sparse encoding algorithm [3]
•

It is a self-taught learning framework developed to transfer knowledge from unlabeled data, which is much
easier to obtain, to be used as preprocessing step to enhance the supervised inductive models.

•

This framework is developed to tackle present issues in the supervised learning model and to increase its
accuracy regardless of the domain of interest (vision, sound, and text).[4]

5 of 37
Our Work
•

We will present some of the methods for unsupervised feature learning and deep learning, each of which

automatically learns a good representation of the input from unlabeled data.
•

We will be concentrating on the following algorithms, with more details in the following slides:
•
•

PCA and Whitening

•

•

Sparse Autoencoder

Self-Taught

We will also be focusing on the application of these algorithms to learn features from images

6 of 37
Sparse Autoencoders

7 of 37
Sparse Auto-encoder

Autoencoder [6]
8 of 37
Neural Network
Before we get further into the details of the algorithm, we need to quickly go through neural network.
To describe neural networks, we will begin by describing the simplest possible neural network. One that comprises

a single "neuron." We will use the following diagram to denote a single neuron [5]

Single Neuron [8]

9 of 37
Neural Network

10 of 37
Sigmoid Activation Function

Sigmoid Function [8]

11 of 37
Tanh Activation Function

Tanh Function [8]

12 of 37
Neural Network Model
•

A neural network is put together by hooking together many of our simple "neurons," so that the output of a
neuron can be the input of another. For example, here is a small neural network

•

The circles labeled "+1" are called bias units, and correspond to the intercept term. The leftmost layer of the
network is called the input layer, and the rightmost layer the output layer .The middle layer of nodes is called
the hidden layer, because its values are not observed in the training set.[8]

Small Neural Network[8]

13 of 37
Neural Network Model

14 of 37
Autoencoders and Sparsity

15 of 37
Autoencoders and Sparsity Algorithm

16 of 37
Autoencoders and Sparsity Algorithm –cont’d

17 of 37
Autoencoders and Sparsity Algorithm –cont’d

KL Function [6]
18 of 37
Autoencoders and Sparsity Algorithm – Cont’d

19 of 37
Autoencoder Implementation
•

We implemented a sparse autoencoder, trained with 8×8 image patches using the L-BFGS optimization algorithm

Step 1: Generate training set
The first step is to generate a training set.

A random sample of 200 patches from the dataset.

20 of 37
Autoencoder Implementation
Step 2: Sparse autoencoder objective
Compute the sparse autoencoder cost function Jsparse(W,b) and the corresponding derivatives of Jsparse with respect
to the different parameters
Step3: Train the sparse autoencoder
After computing Jsparse and its derivatives, we will minimize Jsparse with respect to its parameters, and thereby train our
sparse autoencoder. We trained our sparse encoder with L-BFGS algorithm Our neural network for training has 64
input units, 25 hidden units, and 64 output units.

21 of 37
Autoencoder Implementation Results
After training the sparse autoencoder, the sparse autoencoder
successfully learned a set of edge detectors.
CPU

Intel corei7 Quad Core processor
2.7GHz

RAM

6 GB RAM

Training Set

200 patches 8x8 images

Neural Network for training

64 input units, 25 hidden units, and
64 output units.

22 of 37
Autoencoder Implementation Results
Training Time

Expected Time [1]

39 seconds

Less than a minute

23 of 37
Principle Component Analysis –
PCA

24 of 32
Principle Component Analysis – PCA
•

PCA is a dimensionality reduction mechanism used to eliminate highly correlated variables, without
sacrificing much of the details.[7]

25 of 37
PCA – Example
Example
•

Given the 2D data example.

•

This data has already been pre-processed using mean normalization.

•

We want to find the principle directions of variation.

2D data example[8]
26 of 37
PCA – Example (Cont’d)

u2

u1

2D data example[8]
27 of 37
PCA – Math

28 of 37
PCA – Math

2D data example[8]

29 of 37
PCA – Dimensionality Reduction

30 of 37
PCA – Dimensionality Reduction

31 of 37
Whitening

32 of 37
Self-Taught Learning

33 of 32
Self-Taught learning and Unsupervised feature
learning
Given an unlabeled data set, we can start training a sparse autoencoder to extract
features to give us a better, condense representation of the data.

Neural Network[8]

34 of 37
Self-Taught learning and Unsupervised feature
learning
• Once the training is done, the network is now ready to find better features to represent
the input using the activations of the network hidden layer. [8]

Input layer of Neural Network[8]

35 of 37
Self-Taught learning and Unsupervised feature
learning

Input layer of Neural Network[8]

36 of 37
Self-Taught learning and Unsupervised feature
learning

Input layer of Neural Network[8]

37 of 37
Self-Taught Learning Application
• We used the self-taught learning paradigm with the sparse autoencoder and softmax
classifier to build a classifier for handwritten digits.
• The goal is to distinguish between the digits from 0 to 4. We will use the digits 5 to 9 as

our "unlabeled" dataset; we will then use a labeled dataset with the digits 0 to 4 with
which to train the softmax classifier.

38 of 37
Self-Taught Learning Implementation
Step 1: Generate the input and test data sets
We used the datasets from the MNIST Handwritten Digit Database for this project.
Step 2: Train the sparse autoencoder
We used the unlabeled data (the digits from 5 to 9) to train a sparse autoencoder. These results are shown after training is
complete for a visualization of pen strokes like the image shown to the right
Step 3: Extracting features
After the sparse autoencoder is trained, we will use it to extract features from the handwritten digit images.
Step 4: Training and testing the logistic regression model
We will train a softmax classifier using the training set features and labels and finally computing the predictions and accuracy

39 of 37
Self-Taught Learning Setup Environment
CPU

Intel
corei7
Quad
processor 2.7GHz

Core

RAM

6 GB RAM

Training Set

60,000 examples from MNIST
database

Unlabeled set

29404 examples

Supervised training set

15298 examples

Supervised testing set

15298 examples

40 of 37
Self-Taught Learning Results
The results are shown below after training is complete for a visualization of pen strokes like the image shown below:

41 of 37
Self-Taught Learning Anaylsis
We have done a comparison between our
application outputs and the Stanford course
tutorial outputs [8].
Our classifier

Tutorial’s
classifier

Training
Time

16 minutes

25 minutes

Classifier
Score
(Accuracy)

98.208916%

98 %

42 of 37
Future Work
We propose that if we were able to parallize our code or make the training part run on a GPU for example, it will
boost the performance and decrease the time needed to train the classifier

43 of 37
References
[1] Taiwo Oladipupo Ayodele. New Advances in Machine Learning. InTech, 2010.
[2] SB Kotsiantis, ID Zaharakis, and PE Pintelas. Supervised machine learning: A review of classication techniques. 31:249-268, 2007.
[3] Honglak Lee, Alexis Battle, Rajat Raina, and Andrew Ng. Ecient sparse coding algorithms. In Advances in neural information processing systems, pages 801-808,2006.
[4] Bruno A Olshausen et al. Emergence of simple-cell receptive field properties by learning a sparse code for natural images.Nature, 381(6583):607-609, 1996.
[5] Simon O. Haykin, ”Multilayer Perceptron,” in Neural Networks and Learning Machines, 3rd Edition ed. , Prentice Hall, 2009.
[6] Andrew Ng. CS294A . Lecture notes, Topic : “Sparse autoencoder ” Standford University, Jan 11, 2011. Available:
http://www.stanford.edu/class/cs294a/sparseAutoencoder_2011new.pdf. [Accessed Dec. 10,2013].
[7] Aapo Hyvärinen, Jarmo Hurri, and Patrik O. Hoyer, “Principal components and whitening,” in Natural Image Statistics: A Probabilistic Approach to Early
Computational Vision., Vol. 39, Springer-Verlag, 2009,pp. 97-137
[8] Andrew Ng, Jiquan Ngiam, Chuan Yu Foo, Yifan Mai, and Caroline Suen, “UFLDL Tutorial”, April 7, 2013. [Online]. Available:
http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial. [Accessed Dec. 10,2013].

44 of 37
Thank You!

Mais conteúdo relacionado

Mais procurados

A Brief Introduction on Recurrent Neural Network and Its Application
A Brief Introduction on Recurrent Neural Network and Its ApplicationA Brief Introduction on Recurrent Neural Network and Its Application
A Brief Introduction on Recurrent Neural Network and Its ApplicationXiaohu ZHU
 
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Simplilearn
 
Deep learning in Computer Vision
Deep learning in Computer VisionDeep learning in Computer Vision
Deep learning in Computer VisionDavid Dao
 
Artificial neural network for machine learning
Artificial neural network for machine learningArtificial neural network for machine learning
Artificial neural network for machine learninggrinu
 
Fundamental of deep learning
Fundamental of deep learningFundamental of deep learning
Fundamental of deep learningStanley Wang
 
Deep neural networks
Deep neural networksDeep neural networks
Deep neural networksSi Haem
 
introduction to deep Learning with full detail
introduction to deep Learning with full detailintroduction to deep Learning with full detail
introduction to deep Learning with full detailsonykhan3
 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learningJunaid Bhat
 
Deep learning frameworks v0.40
Deep learning frameworks v0.40Deep learning frameworks v0.40
Deep learning frameworks v0.40Jessica Willis
 
Machine Learning, Deep Learning and Data Analysis Introduction
Machine Learning, Deep Learning and Data Analysis IntroductionMachine Learning, Deep Learning and Data Analysis Introduction
Machine Learning, Deep Learning and Data Analysis IntroductionTe-Yen Liu
 
Geek Night 17.0 - Artificial Intelligence and Machine Learning
Geek Night 17.0 - Artificial Intelligence and Machine LearningGeek Night 17.0 - Artificial Intelligence and Machine Learning
Geek Night 17.0 - Artificial Intelligence and Machine LearningGeekNightHyderabad
 
Image classification with Deep Neural Networks
Image classification with Deep Neural NetworksImage classification with Deep Neural Networks
Image classification with Deep Neural NetworksYogendra Tamang
 
Deep Learning With Neural Networks
Deep Learning With Neural NetworksDeep Learning With Neural Networks
Deep Learning With Neural NetworksAniket Maurya
 
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...Simplilearn
 

Mais procurados (20)

A Brief Introduction on Recurrent Neural Network and Its Application
A Brief Introduction on Recurrent Neural Network and Its ApplicationA Brief Introduction on Recurrent Neural Network and Its Application
A Brief Introduction on Recurrent Neural Network and Its Application
 
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
Deep Learning Tutorial | Deep Learning Tutorial For Beginners | What Is Deep ...
 
Deep learning in Computer Vision
Deep learning in Computer VisionDeep learning in Computer Vision
Deep learning in Computer Vision
 
Artificial neural network for machine learning
Artificial neural network for machine learningArtificial neural network for machine learning
Artificial neural network for machine learning
 
Fundamental of deep learning
Fundamental of deep learningFundamental of deep learning
Fundamental of deep learning
 
Deep neural networks
Deep neural networksDeep neural networks
Deep neural networks
 
Intoduction to Neural Network
Intoduction to Neural NetworkIntoduction to Neural Network
Intoduction to Neural Network
 
introduction to deep Learning with full detail
introduction to deep Learning with full detailintroduction to deep Learning with full detail
introduction to deep Learning with full detail
 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learning
 
Image captioning
Image captioningImage captioning
Image captioning
 
Deep learning frameworks v0.40
Deep learning frameworks v0.40Deep learning frameworks v0.40
Deep learning frameworks v0.40
 
Machine Learning, Deep Learning and Data Analysis Introduction
Machine Learning, Deep Learning and Data Analysis IntroductionMachine Learning, Deep Learning and Data Analysis Introduction
Machine Learning, Deep Learning and Data Analysis Introduction
 
Geek Night 17.0 - Artificial Intelligence and Machine Learning
Geek Night 17.0 - Artificial Intelligence and Machine LearningGeek Night 17.0 - Artificial Intelligence and Machine Learning
Geek Night 17.0 - Artificial Intelligence and Machine Learning
 
Image classification with Deep Neural Networks
Image classification with Deep Neural NetworksImage classification with Deep Neural Networks
Image classification with Deep Neural Networks
 
Deep learning (2)
Deep learning (2)Deep learning (2)
Deep learning (2)
 
Deep Learning With Neural Networks
Deep Learning With Neural NetworksDeep Learning With Neural Networks
Deep Learning With Neural Networks
 
Deep learning
Deep learningDeep learning
Deep learning
 
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...
Deep Learning Interview Questions And Answers | AI & Deep Learning Interview ...
 
Som paper1.doc
Som paper1.docSom paper1.doc
Som paper1.doc
 
Deep learning
Deep learning Deep learning
Deep learning
 

Semelhante a Unsupervised Feature Learning

Deep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesDeep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesTuri, Inc.
 
Facial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceFacial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceTakrim Ul Islam Laskar
 
Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summaryankit_ppt
 
Deep Learning with Apache Spark: an Introduction
Deep Learning with Apache Spark: an IntroductionDeep Learning with Apache Spark: an Introduction
Deep Learning with Apache Spark: an IntroductionEmanuele Bezzi
 
Build a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flowBuild a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flowDebasisMohanty37
 
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakLearn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakPyData
 
IRJET- Analysis of PV Fed Vector Controlled Induction Motor Drive
IRJET- Analysis of PV Fed Vector Controlled Induction Motor DriveIRJET- Analysis of PV Fed Vector Controlled Induction Motor Drive
IRJET- Analysis of PV Fed Vector Controlled Induction Motor DriveIRJET Journal
 
IRJET- Deep Learning Model to Predict Hardware Performance
IRJET- Deep Learning Model to Predict Hardware PerformanceIRJET- Deep Learning Model to Predict Hardware Performance
IRJET- Deep Learning Model to Predict Hardware PerformanceIRJET Journal
 
Presentation 7.pptx
Presentation 7.pptxPresentation 7.pptx
Presentation 7.pptxShivam327815
 
Table of Contents
Table of ContentsTable of Contents
Table of Contentsbutest
 
Nepali character classification
Nepali character classificationNepali character classification
Nepali character classificationPitambar88
 
MachinaFiesta: A Vision into Machine Learning 🚀
MachinaFiesta: A Vision into Machine Learning 🚀MachinaFiesta: A Vision into Machine Learning 🚀
MachinaFiesta: A Vision into Machine Learning 🚀GDSCNiT
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsLola Burgueño
 
Artificial Intelligence and Deep Learning in Azure, CNTK and Tensorflow
Artificial Intelligence and Deep Learning in Azure, CNTK and TensorflowArtificial Intelligence and Deep Learning in Azure, CNTK and Tensorflow
Artificial Intelligence and Deep Learning in Azure, CNTK and TensorflowJen Stirrup
 
Getting started with Machine Learning
Getting started with Machine LearningGetting started with Machine Learning
Getting started with Machine LearningGaurav Bhalotia
 
EssentialsOfMachineLearning.pdf
EssentialsOfMachineLearning.pdfEssentialsOfMachineLearning.pdf
EssentialsOfMachineLearning.pdfAnkita Tiwari
 
Denoising autoencoder by Harish.R
Denoising autoencoder by Harish.RDenoising autoencoder by Harish.R
Denoising autoencoder by Harish.RHARISH R
 
IRJET- Machine Learning V/S Deep Learning
IRJET- Machine Learning V/S Deep LearningIRJET- Machine Learning V/S Deep Learning
IRJET- Machine Learning V/S Deep LearningIRJET Journal
 

Semelhante a Unsupervised Feature Learning (20)

Deep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep FeaturesDeep Learning Made Easy with Deep Features
Deep Learning Made Easy with Deep Features
 
Facial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceFacial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional Face
 
Deep learning-practical
Deep learning-practicalDeep learning-practical
Deep learning-practical
 
Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summary
 
Practical ML
Practical MLPractical ML
Practical ML
 
Deep Learning with Apache Spark: an Introduction
Deep Learning with Apache Spark: an IntroductionDeep Learning with Apache Spark: an Introduction
Deep Learning with Apache Spark: an Introduction
 
Build a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flowBuild a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flow
 
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr TeterwakLearn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
Learn to Build an App to Find Similar Images using Deep Learning- Piotr Teterwak
 
IRJET- Analysis of PV Fed Vector Controlled Induction Motor Drive
IRJET- Analysis of PV Fed Vector Controlled Induction Motor DriveIRJET- Analysis of PV Fed Vector Controlled Induction Motor Drive
IRJET- Analysis of PV Fed Vector Controlled Induction Motor Drive
 
IRJET- Deep Learning Model to Predict Hardware Performance
IRJET- Deep Learning Model to Predict Hardware PerformanceIRJET- Deep Learning Model to Predict Hardware Performance
IRJET- Deep Learning Model to Predict Hardware Performance
 
Presentation 7.pptx
Presentation 7.pptxPresentation 7.pptx
Presentation 7.pptx
 
Table of Contents
Table of ContentsTable of Contents
Table of Contents
 
Nepali character classification
Nepali character classificationNepali character classification
Nepali character classification
 
MachinaFiesta: A Vision into Machine Learning 🚀
MachinaFiesta: A Vision into Machine Learning 🚀MachinaFiesta: A Vision into Machine Learning 🚀
MachinaFiesta: A Vision into Machine Learning 🚀
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
Artificial Intelligence and Deep Learning in Azure, CNTK and Tensorflow
Artificial Intelligence and Deep Learning in Azure, CNTK and TensorflowArtificial Intelligence and Deep Learning in Azure, CNTK and Tensorflow
Artificial Intelligence and Deep Learning in Azure, CNTK and Tensorflow
 
Getting started with Machine Learning
Getting started with Machine LearningGetting started with Machine Learning
Getting started with Machine Learning
 
EssentialsOfMachineLearning.pdf
EssentialsOfMachineLearning.pdfEssentialsOfMachineLearning.pdf
EssentialsOfMachineLearning.pdf
 
Denoising autoencoder by Harish.R
Denoising autoencoder by Harish.RDenoising autoencoder by Harish.R
Denoising autoencoder by Harish.R
 
IRJET- Machine Learning V/S Deep Learning
IRJET- Machine Learning V/S Deep LearningIRJET- Machine Learning V/S Deep Learning
IRJET- Machine Learning V/S Deep Learning
 

Mais de Amgad Muhammad

Improving region based CNN object detector using bayesian optimization
Improving region based CNN object detector using bayesian optimizationImproving region based CNN object detector using bayesian optimization
Improving region based CNN object detector using bayesian optimizationAmgad Muhammad
 
CUDA and Caffe for deep learning
CUDA and Caffe for deep learningCUDA and Caffe for deep learning
CUDA and Caffe for deep learningAmgad Muhammad
 
Auto-Encoders and PCA, a brief psychological background
Auto-Encoders and PCA, a brief psychological backgroundAuto-Encoders and PCA, a brief psychological background
Auto-Encoders and PCA, a brief psychological backgroundAmgad Muhammad
 
Android Performance Best Practices
Android Performance Best Practices Android Performance Best Practices
Android Performance Best Practices Amgad Muhammad
 

Mais de Amgad Muhammad (6)

Improving region based CNN object detector using bayesian optimization
Improving region based CNN object detector using bayesian optimizationImproving region based CNN object detector using bayesian optimization
Improving region based CNN object detector using bayesian optimization
 
CUDA and Caffe for deep learning
CUDA and Caffe for deep learningCUDA and Caffe for deep learning
CUDA and Caffe for deep learning
 
Auto-Encoders and PCA, a brief psychological background
Auto-Encoders and PCA, a brief psychological backgroundAuto-Encoders and PCA, a brief psychological background
Auto-Encoders and PCA, a brief psychological background
 
Android Performance Best Practices
Android Performance Best Practices Android Performance Best Practices
Android Performance Best Practices
 
Google File System
Google File SystemGoogle File System
Google File System
 
Python
PythonPython
Python
 

Último

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 

Último (20)

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 

Unsupervised Feature Learning

  • 1. Unsupervised Feature Learning: A Literature Review By: Amgad Muhammad & Mohamed EL Fadly 1
  • 2. Outline • Background • Problem Definition • Unsupervised Feature Learning • Our Work • Sparse Auto-encoder • Preprocessing: PCA and Whitening • Self-Taught Learning and Unsupervised Feature Learning • References 2 of 37
  • 3. Background • Machine learning is one of the corner stone fields in Artificial Intelligence, where machines learn to act autonomously, and react to new situations without being pre-programmed. • Machine learning has seen numerous successes, but applying learning algorithms today often means spending a long time hand-engineering the input feature representation. This is true for many problems in vision, audio, NLP, robotics, and other areas. • There are many learning algorithms for learning among them are [1]: 1) Supervised learning 2) Unsupervised learning 3 of 37
  • 4. Problem Definition • The target of the supervised learning method can be summarized as follows: • • • Regression Classification The first step to train a machine using the supervised learning method, is collecting the data set, which in most cases is a very difficult and an expensive process • The alternative approach is to measure and use everything, which will lead to other problems, i.e. the noisy data [2] 4 of 37
  • 5. Unsupervised feature learning • The unsupervised feature learning approach learns higher-level representation of the unlabeled data features by detecting patterns using various algorithms, i.e. sparse encoding algorithm [3] • It is a self-taught learning framework developed to transfer knowledge from unlabeled data, which is much easier to obtain, to be used as preprocessing step to enhance the supervised inductive models. • This framework is developed to tackle present issues in the supervised learning model and to increase its accuracy regardless of the domain of interest (vision, sound, and text).[4] 5 of 37
  • 6. Our Work • We will present some of the methods for unsupervised feature learning and deep learning, each of which automatically learns a good representation of the input from unlabeled data. • We will be concentrating on the following algorithms, with more details in the following slides: • • PCA and Whitening • • Sparse Autoencoder Self-Taught We will also be focusing on the application of these algorithms to learn features from images 6 of 37
  • 9. Neural Network Before we get further into the details of the algorithm, we need to quickly go through neural network. To describe neural networks, we will begin by describing the simplest possible neural network. One that comprises a single "neuron." We will use the following diagram to denote a single neuron [5] Single Neuron [8] 9 of 37
  • 11. Sigmoid Activation Function Sigmoid Function [8] 11 of 37
  • 12. Tanh Activation Function Tanh Function [8] 12 of 37
  • 13. Neural Network Model • A neural network is put together by hooking together many of our simple "neurons," so that the output of a neuron can be the input of another. For example, here is a small neural network • The circles labeled "+1" are called bias units, and correspond to the intercept term. The leftmost layer of the network is called the input layer, and the rightmost layer the output layer .The middle layer of nodes is called the hidden layer, because its values are not observed in the training set.[8] Small Neural Network[8] 13 of 37
  • 16. Autoencoders and Sparsity Algorithm 16 of 37
  • 17. Autoencoders and Sparsity Algorithm –cont’d 17 of 37
  • 18. Autoencoders and Sparsity Algorithm –cont’d KL Function [6] 18 of 37
  • 19. Autoencoders and Sparsity Algorithm – Cont’d 19 of 37
  • 20. Autoencoder Implementation • We implemented a sparse autoencoder, trained with 8×8 image patches using the L-BFGS optimization algorithm Step 1: Generate training set The first step is to generate a training set. A random sample of 200 patches from the dataset. 20 of 37
  • 21. Autoencoder Implementation Step 2: Sparse autoencoder objective Compute the sparse autoencoder cost function Jsparse(W,b) and the corresponding derivatives of Jsparse with respect to the different parameters Step3: Train the sparse autoencoder After computing Jsparse and its derivatives, we will minimize Jsparse with respect to its parameters, and thereby train our sparse autoencoder. We trained our sparse encoder with L-BFGS algorithm Our neural network for training has 64 input units, 25 hidden units, and 64 output units. 21 of 37
  • 22. Autoencoder Implementation Results After training the sparse autoencoder, the sparse autoencoder successfully learned a set of edge detectors. CPU Intel corei7 Quad Core processor 2.7GHz RAM 6 GB RAM Training Set 200 patches 8x8 images Neural Network for training 64 input units, 25 hidden units, and 64 output units. 22 of 37
  • 23. Autoencoder Implementation Results Training Time Expected Time [1] 39 seconds Less than a minute 23 of 37
  • 24. Principle Component Analysis – PCA 24 of 32
  • 25. Principle Component Analysis – PCA • PCA is a dimensionality reduction mechanism used to eliminate highly correlated variables, without sacrificing much of the details.[7] 25 of 37
  • 26. PCA – Example Example • Given the 2D data example. • This data has already been pre-processed using mean normalization. • We want to find the principle directions of variation. 2D data example[8] 26 of 37
  • 27. PCA – Example (Cont’d) u2 u1 2D data example[8] 27 of 37
  • 29. PCA – Math 2D data example[8] 29 of 37
  • 30. PCA – Dimensionality Reduction 30 of 37
  • 31. PCA – Dimensionality Reduction 31 of 37
  • 34. Self-Taught learning and Unsupervised feature learning Given an unlabeled data set, we can start training a sparse autoencoder to extract features to give us a better, condense representation of the data. Neural Network[8] 34 of 37
  • 35. Self-Taught learning and Unsupervised feature learning • Once the training is done, the network is now ready to find better features to represent the input using the activations of the network hidden layer. [8] Input layer of Neural Network[8] 35 of 37
  • 36. Self-Taught learning and Unsupervised feature learning Input layer of Neural Network[8] 36 of 37
  • 37. Self-Taught learning and Unsupervised feature learning Input layer of Neural Network[8] 37 of 37
  • 38. Self-Taught Learning Application • We used the self-taught learning paradigm with the sparse autoencoder and softmax classifier to build a classifier for handwritten digits. • The goal is to distinguish between the digits from 0 to 4. We will use the digits 5 to 9 as our "unlabeled" dataset; we will then use a labeled dataset with the digits 0 to 4 with which to train the softmax classifier. 38 of 37
  • 39. Self-Taught Learning Implementation Step 1: Generate the input and test data sets We used the datasets from the MNIST Handwritten Digit Database for this project. Step 2: Train the sparse autoencoder We used the unlabeled data (the digits from 5 to 9) to train a sparse autoencoder. These results are shown after training is complete for a visualization of pen strokes like the image shown to the right Step 3: Extracting features After the sparse autoencoder is trained, we will use it to extract features from the handwritten digit images. Step 4: Training and testing the logistic regression model We will train a softmax classifier using the training set features and labels and finally computing the predictions and accuracy 39 of 37
  • 40. Self-Taught Learning Setup Environment CPU Intel corei7 Quad processor 2.7GHz Core RAM 6 GB RAM Training Set 60,000 examples from MNIST database Unlabeled set 29404 examples Supervised training set 15298 examples Supervised testing set 15298 examples 40 of 37
  • 41. Self-Taught Learning Results The results are shown below after training is complete for a visualization of pen strokes like the image shown below: 41 of 37
  • 42. Self-Taught Learning Anaylsis We have done a comparison between our application outputs and the Stanford course tutorial outputs [8]. Our classifier Tutorial’s classifier Training Time 16 minutes 25 minutes Classifier Score (Accuracy) 98.208916% 98 % 42 of 37
  • 43. Future Work We propose that if we were able to parallize our code or make the training part run on a GPU for example, it will boost the performance and decrease the time needed to train the classifier 43 of 37
  • 44. References [1] Taiwo Oladipupo Ayodele. New Advances in Machine Learning. InTech, 2010. [2] SB Kotsiantis, ID Zaharakis, and PE Pintelas. Supervised machine learning: A review of classication techniques. 31:249-268, 2007. [3] Honglak Lee, Alexis Battle, Rajat Raina, and Andrew Ng. Ecient sparse coding algorithms. In Advances in neural information processing systems, pages 801-808,2006. [4] Bruno A Olshausen et al. Emergence of simple-cell receptive field properties by learning a sparse code for natural images.Nature, 381(6583):607-609, 1996. [5] Simon O. Haykin, ”Multilayer Perceptron,” in Neural Networks and Learning Machines, 3rd Edition ed. , Prentice Hall, 2009. [6] Andrew Ng. CS294A . Lecture notes, Topic : “Sparse autoencoder ” Standford University, Jan 11, 2011. Available: http://www.stanford.edu/class/cs294a/sparseAutoencoder_2011new.pdf. [Accessed Dec. 10,2013]. [7] Aapo Hyvärinen, Jarmo Hurri, and Patrik O. Hoyer, “Principal components and whitening,” in Natural Image Statistics: A Probabilistic Approach to Early Computational Vision., Vol. 39, Springer-Verlag, 2009,pp. 97-137 [8] Andrew Ng, Jiquan Ngiam, Chuan Yu Foo, Yifan Mai, and Caroline Suen, “UFLDL Tutorial”, April 7, 2013. [Online]. Available: http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial. [Accessed Dec. 10,2013]. 44 of 37