SlideShare a Scribd company logo
1 of 1
Download to read offline
Is He Chinese, Korean or Japanese? —— East Asian Ethnicity Classification
Haoxuan Chen, Yiran Deng, Shuying Zhang
Introduction Image Processing Methods
Face cropping:
● Use Haar-Cascade Face Detection from
OpenCV to crop faces from original images
● The face is cropped and positioned upright in
the output
Feature extraction:
● Convert RGB images to grayscale, get the color histogram
over the Hue of the grayscale image, compute the final
Histogram of Oriented Gradient (HOG) feature
Classification methods
k-Nearest Neighbor:
● Simply store the training set, compare test images with all the images in the
training set and gives it the majority label of k most similar training examples
● Use validation set to try different k, we have the best k = 8
Support Vector Machine:
● Linear SVM with hinge loss
● Use validation set to tune
hyperparameters
Two-layer Neural Network:
● Inner structure: fully connected
layer - ReLU layer - fully
connected layer
● Simple implementation yields
much better result than kNN
and SVM
Data Collection
Miscellaneous
Unsupervised Learning:
● Use k-means to autonomously divide the dataset
into several clusters, we used k = 2 and k = 3
Uncropped
Cropped
Results
Mean subtraction:
● Get a “mean face” from training set, then subtract it from all images
● Equivalent to centering the data around the origin along every
dimension
PCA:
● Reduce dimension, images are “blurred”
Whitening:
● Normalize the scale in every dimension
Improvement on failed trails / More tuning on hyperparameters:
● PCA and whitening are too slow (calculating the covariance matrix)
● Using HOG feature doesn’t yield higher accuracy, since it mainly detects edges
● A total of 1380 profile profile photos of university faculty members and
famous celebrities from the three countries were used. We flipped the
images and added a random brightness, therefore quadruple the dataset.
● The celebrity images were downloaded using the Google Custom Search
API by using a person’s name as the searching keyword.
● 80% of the images were used for training; 10% for validation; 10% for test.
Chinese, Japanese, and Korean
have similar facial features partially
due to their geographical similarities.
Some people claim that they can
differentiate these three subgroups of
east asian based on how they look.
But it is very hard to eyeball the
difference.
Future Works
Use Machine Learning methods
to differentiate Chinese, Korean
and Japanese
Can you tell ?
BEATS
ME...
Key idea:
● Each Image is resized to 64×64 for CNN and
128×128 for other classifiers
● The dataset is divided into Chinese / Japanese /
Korean(3 classes), then each subset is divided
into male / female (6 classes)
● Dataset is randomly shuffled before training
Table 1. Number of Images Per Subgroup
*All the images in this poster are from our dataset
Convolutional Neural Network:
● Use the TensorFlow Library to build and train our convolutional neural net
● Two convolutional layers with a fully connected layer and a dropout layer
Fig 3 . Visualization of Weights in 64
neurons in 2-layer NN
Fig 2 . Training / validation accuracy of 2-Layer NN
2-layer NN:
(Params: Learning rate = 1e-4, regularization = 0.5, #iteration
= 3500, batch size = 50, #neuron = 64)
Table 2. Testing Accuracy of Each Method
Fig 5. Accuracy Comparison of Different Methods
Baseline (3 classes)
Baseline (6 classes)
Fig1 . Comparison of Different Preprocessing Methods
Fig 4 . (Not so) mean faces (C, J, K from left to right)

More Related Content

What's hot

A tutorial on deep learning at icml 2013
A tutorial on deep learning at icml 2013A tutorial on deep learning at icml 2013
A tutorial on deep learning at icml 2013
Philip Zheng
 

What's hot (13)

A tutorial on deep learning at icml 2013
A tutorial on deep learning at icml 2013A tutorial on deep learning at icml 2013
A tutorial on deep learning at icml 2013
 
Foundations: Artificial Neural Networks
Foundations: Artificial Neural NetworksFoundations: Artificial Neural Networks
Foundations: Artificial Neural Networks
 
Automatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face RecognitionAutomatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face Recognition
 
Generative Adversarial Networks : Basic architecture and variants
Generative Adversarial Networks : Basic architecture and variantsGenerative Adversarial Networks : Basic architecture and variants
Generative Adversarial Networks : Basic architecture and variants
 
Introduction To Applied Machine Learning
Introduction To Applied Machine LearningIntroduction To Applied Machine Learning
Introduction To Applied Machine Learning
 
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Deep Learning For Practitioners,  lecture 2: Selecting the right applications...Deep Learning For Practitioners,  lecture 2: Selecting the right applications...
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
 
Generative Models for General Audiences
Generative Models for General AudiencesGenerative Models for General Audiences
Generative Models for General Audiences
 
Image Indexing and Retrieval
Image Indexing and RetrievalImage Indexing and Retrieval
Image Indexing and Retrieval
 
R04603104107
R04603104107R04603104107
R04603104107
 
An overview of machine learning
An overview of machine learningAn overview of machine learning
An overview of machine learning
 
Let's paint a Picasso - A Look at Generative Adversarial Networks (GAN) and i...
Let's paint a Picasso - A Look at Generative Adversarial Networks (GAN) and i...Let's paint a Picasso - A Look at Generative Adversarial Networks (GAN) and i...
Let's paint a Picasso - A Look at Generative Adversarial Networks (GAN) and i...
 
Image search engine
Image search engineImage search engine
Image search engine
 
Artificial Intelligence Course: Linear models
Artificial Intelligence Course: Linear models Artificial Intelligence Course: Linear models
Artificial Intelligence Course: Linear models
 

Similar to CS229 poster

ageandgenderdetection-220802061020-9ee5a2cd.pptx
ageandgenderdetection-220802061020-9ee5a2cd.pptxageandgenderdetection-220802061020-9ee5a2cd.pptx
ageandgenderdetection-220802061020-9ee5a2cd.pptx
dhaliwalharsh055
 

Similar to CS229 poster (20)

Facial emotion recognition
Facial emotion recognitionFacial emotion recognition
Facial emotion recognition
 
cvpresentation-190812154654 (1).pptx
cvpresentation-190812154654 (1).pptxcvpresentation-190812154654 (1).pptx
cvpresentation-190812154654 (1).pptx
 
ppt 20BET1024.pptx
ppt 20BET1024.pptxppt 20BET1024.pptx
ppt 20BET1024.pptx
 
Bangla Handwritten Digit Recognition Report.pdf
Bangla Handwritten Digit Recognition  Report.pdfBangla Handwritten Digit Recognition  Report.pdf
Bangla Handwritten Digit Recognition Report.pdf
 
Final year ppt
Final year pptFinal year ppt
Final year ppt
 
InternshipReport
InternshipReportInternshipReport
InternshipReport
 
Caricature Recognition and Generation
Caricature Recognition and GenerationCaricature Recognition and Generation
Caricature Recognition and Generation
 
Facial Emotion Detection Project
Facial Emotion Detection ProjectFacial Emotion Detection Project
Facial Emotion Detection Project
 
ppt.pdf
ppt.pdfppt.pdf
ppt.pdf
 
A study and comparison of different image segmentation algorithms
A study and comparison of different image segmentation algorithmsA study and comparison of different image segmentation algorithms
A study and comparison of different image segmentation algorithms
 
Computer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonComputer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and Python
 
Predicting Emotions through Facial Expressions
Predicting Emotions through Facial Expressions  Predicting Emotions through Facial Expressions
Predicting Emotions through Facial Expressions
 
brief Introduction to Different Kinds of GANs
brief Introduction to Different Kinds of GANsbrief Introduction to Different Kinds of GANs
brief Introduction to Different Kinds of GANs
 
AGE AND GENDER DETECTION.pptx
AGE AND GENDER DETECTION.pptxAGE AND GENDER DETECTION.pptx
AGE AND GENDER DETECTION.pptx
 
ageandgenderdetection-220802061020-9ee5a2cd.pptx
ageandgenderdetection-220802061020-9ee5a2cd.pptxageandgenderdetection-220802061020-9ee5a2cd.pptx
ageandgenderdetection-220802061020-9ee5a2cd.pptx
 
neuralAC
neuralACneuralAC
neuralAC
 
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
 
Learning with Relative Attributes
Learning with Relative AttributesLearning with Relative Attributes
Learning with Relative Attributes
 
PR-231: A Simple Framework for Contrastive Learning of Visual Representations
PR-231: A Simple Framework for Contrastive Learning of Visual RepresentationsPR-231: A Simple Framework for Contrastive Learning of Visual Representations
PR-231: A Simple Framework for Contrastive Learning of Visual Representations
 
Mirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image ProcessingMirko Lucchese - Deep Image Processing
Mirko Lucchese - Deep Image Processing
 

CS229 poster

  • 1. Is He Chinese, Korean or Japanese? —— East Asian Ethnicity Classification Haoxuan Chen, Yiran Deng, Shuying Zhang Introduction Image Processing Methods Face cropping: ● Use Haar-Cascade Face Detection from OpenCV to crop faces from original images ● The face is cropped and positioned upright in the output Feature extraction: ● Convert RGB images to grayscale, get the color histogram over the Hue of the grayscale image, compute the final Histogram of Oriented Gradient (HOG) feature Classification methods k-Nearest Neighbor: ● Simply store the training set, compare test images with all the images in the training set and gives it the majority label of k most similar training examples ● Use validation set to try different k, we have the best k = 8 Support Vector Machine: ● Linear SVM with hinge loss ● Use validation set to tune hyperparameters Two-layer Neural Network: ● Inner structure: fully connected layer - ReLU layer - fully connected layer ● Simple implementation yields much better result than kNN and SVM Data Collection Miscellaneous Unsupervised Learning: ● Use k-means to autonomously divide the dataset into several clusters, we used k = 2 and k = 3 Uncropped Cropped Results Mean subtraction: ● Get a “mean face” from training set, then subtract it from all images ● Equivalent to centering the data around the origin along every dimension PCA: ● Reduce dimension, images are “blurred” Whitening: ● Normalize the scale in every dimension Improvement on failed trails / More tuning on hyperparameters: ● PCA and whitening are too slow (calculating the covariance matrix) ● Using HOG feature doesn’t yield higher accuracy, since it mainly detects edges ● A total of 1380 profile profile photos of university faculty members and famous celebrities from the three countries were used. We flipped the images and added a random brightness, therefore quadruple the dataset. ● The celebrity images were downloaded using the Google Custom Search API by using a person’s name as the searching keyword. ● 80% of the images were used for training; 10% for validation; 10% for test. Chinese, Japanese, and Korean have similar facial features partially due to their geographical similarities. Some people claim that they can differentiate these three subgroups of east asian based on how they look. But it is very hard to eyeball the difference. Future Works Use Machine Learning methods to differentiate Chinese, Korean and Japanese Can you tell ? BEATS ME... Key idea: ● Each Image is resized to 64×64 for CNN and 128×128 for other classifiers ● The dataset is divided into Chinese / Japanese / Korean(3 classes), then each subset is divided into male / female (6 classes) ● Dataset is randomly shuffled before training Table 1. Number of Images Per Subgroup *All the images in this poster are from our dataset Convolutional Neural Network: ● Use the TensorFlow Library to build and train our convolutional neural net ● Two convolutional layers with a fully connected layer and a dropout layer Fig 3 . Visualization of Weights in 64 neurons in 2-layer NN Fig 2 . Training / validation accuracy of 2-Layer NN 2-layer NN: (Params: Learning rate = 1e-4, regularization = 0.5, #iteration = 3500, batch size = 50, #neuron = 64) Table 2. Testing Accuracy of Each Method Fig 5. Accuracy Comparison of Different Methods Baseline (3 classes) Baseline (6 classes) Fig1 . Comparison of Different Preprocessing Methods Fig 4 . (Not so) mean faces (C, J, K from left to right)