Bird-species Recognition Using Convolutional Neural Network

Slides:



Advertisements
Similar presentations
Three kinds of learning
Advertisements

Spatial Pyramid Pooling in Deep Convolutional
What is the Best Multi-Stage Architecture for Object Recognition Kevin Jarrett, Koray Kavukcuoglu, Marc’ Aurelio Ranzato and Yann LeCun Presented by Lingbo.
Introduction to Neural Networks Introduction to Neural Networks Applied to OCR and Speech Recognition An actual neuron A crude model of a neuron Computational.
Lecture 3b: CNN: Advanced Layers
Assignment 4: Deep Convolutional Neural Networks
Facial Smile Detection Based on Deep Learning Features Authors: Kaihao Zhang, Yongzhen Huang, Hong Wu and Liang Wang Center for Research on Intelligent.
Combining Models Foundations of Algorithms and Machine Learning (CS60020), IIT KGP, 2017: Indrajit Bhattacharya.
Big data classification using neural network
Analysis of Sparse Convolutional Neural Networks
Convolutional Neural Network
The Relationship between Deep Learning and Brain Function
Compact Bilinear Pooling
Mini Places Challenge Adrià Recasens, Nov 21.
Convolutional Neural Fabrics by Shreyas Saxena, Jakob Verbeek
The Problem: Classification
Understanding and Predicting Image Memorability at a Large Scale
Evaluating Techniques for Image Classification
A Pool of Deep Models for Event Recognition
Mixture of SVMs for Face Class Modeling
Inception and Residual Architecture in Deep Convolutional Networks
Hierarchical Deep Convolutional Neural Network
Intro to NLP and Deep Learning
Natural Language Processing of Knee MRI Reports
ECE 6504 Deep Learning for Perception
Lecture 5 Smaller Network: CNN
CS 698 | Current Topics in Data Science
CS 698 | Current Topics in Data Science
CS6890 Deep Learning Weizhen Cai
R-CNN region By Ilia Iofedov 11/11/2018 BGU, DNN course 2016.
A Convolutional Neural Network Cascade For Face Detection
Object Recognition & Detection
Layer-wise Performance Bottleneck Analysis of Deep Neural Networks
Introduction to Neural Networks
Goodfellow: Chap 6 Deep Feedforward Networks
Image Classification.
BlackBerry Test Validation and Analysis using Deep Learning
A Comparative Study of Convolutional Neural Network Models with Rosenblatt’s Brain Model Abu Kamruzzaman, Atik Khatri , Milind Ikke, Damiano Mastrandrea,
Two-Stream Convolutional Networks for Action Recognition in Videos
Construct a Convolutional Neural Network with Python
Dog/Cat Classifier Christina Stiff.
Road Traffic Sign Recognition
network of simple neuron-like computing elements
[Figure taken from googleblog
Age and Gender Classification using Convolutional Neural Networks
Neural Networks Geoff Hulten.
Lecture: Deep Convolutional Neural Networks
Use 3D Convolutional Neural Network to Inspect Solder Ball Defects
Forward and Backward Max Pooling
Forecasting Electricity Demand and Prices with Machine Learning
Neural Networks II Chen Gao Virginia Tech ECE-5424G / CS-5824
ImageNet Classification with Deep Convolutional Neural Networks
COSC 4335: Part2: Other Classification Techniques
边缘检测年度进展概述 Ming-Ming Cheng Media Computing Lab, Nankai University
Face Recognition: A Convolutional Neural Network Approach
Neural Networks II Chen Gao Virginia Tech ECE-5424G / CS-5824
CIS 519 Recitation 11/15/18.
Department of Computer Science Ben-Gurion University of the Negev
Automatic Handwriting Generation
Deep Object Co-Segmentation
Image Processing and Multi-domain Translation
VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION
Learning and Memorization
Pose Estimation in hockey videos using convolutional neural networks
CRCV REU 2019 Kara Schatz.
Real-time Object Recognition using deep learning-Raspberry Pi
Sign Language Recognition With Unsupervised Feature Learning
Adrian E. Gonzalez , David Parra Department of Computer Science
Iterative Projection and Matching: Finding Structure-preserving Representatives and Its Application to Computer Vision.
Shengcong Chen, Changxing Ding, Minfeng Liu 2018
Presentation transcript:

Bird-species Recognition Using Convolutional Neural Network ECE539 – Project Report Bird-species Recognition Using Convolutional Neural Network -- Instructor: Yu Hen Hu -- Presenter: Xucheng Wan

Computer Vision → Recognition & Classification → Datasets Problem Introduction As the core task in Computer vision, Image Recognition and Classification has been a popular topic in recent years. For this Project, I want to apply what I learned in this course to try to solve some image classification problems which haven’t been studied much. Computer Vision → Recognition & Classification → Datasets

Caltech UCSD Bird 200 - 2011 (CUB-200) (Established for subordinate categorization study) And I found a interesting and challenging image dataset – CUB-200 200 Bird-species * 60 images for each

I. Bird Recognition - Binary Classifier Method and Progress I. Bird Recognition - Binary Classifier The first step of this whole project is to recognize the bird. I constructed this network with 3 convolutional layers; 2 fully connected layers ; Input is a 128*128*3 image The activation function used within each layer is ReLU and SoftMax

I. Binary Classifier Data: Cifar(60k)+ CUB-200(12k) Validation: 20% Accuracy: 0.951 In this training process I used all 12000 pictures CUB-200 and approximately 60000 non-bird pictures from Cifar10 dataset. And divide the training set into training samples of 80% and cross-validation samples of 20%. Although this accuracy is high enough, if I want to apply this to this project, I would have to build 200 separate binary classifiers for 200 classes including a classifier for outlier samples. Even if I use dichotomy and at each time I could get accuracy of 0.95, the overall prediction accuracy would be 0.95 100 <0.1 . So I have to modify my method.

II. Multi-Class Classifier I tried different structures and this performs the best, # Classes increases → need more features → # Layers increase # Classes increases → need more features → # Layers increase

II. Multi-Class Classifier # of Classes Training Accuracy Validation Accuracy 20 0.87 0.637 80 0.68 0.397 200 0.42 0.273 Acknowledgement I acknowledge that it’s better to try more CNN structures on 200 classes, but it requires so much time. It took my CPU 160 hours to complete first attempt on training 200 classes. If I use GPU and have more time in future, I would like to try more CNN structures. Data is so limited !!!! Only 60 images for each of 200 bird-species.

Modified some layers and activation functions III. Revised GoogLeNet Modified some layers and activation functions GoogLeNet is pre-trained CNN and can be use to classify object images of 1000 classes. And I modified some layers and activation function Then I got the results as shown in this table

III. Revised GoogLeNet ··· ··· Overall Accuracy: 0.8202×0.8697=0.7133 Group Name Validation Loss Validation Accuracy Entire Dataset 0.5718 0.8202 Weighted Average 0.4664 0.8697 Dataset Subset 1 ··· Subset 10 Class 1 ··· Class k Overall Accuracy: 0.8202×0.8697=0.7133

Conclusion & Evaluation Method Validation Accuracy Bird Recognition with Binary Classifier 0.951 CNN with 5 Layers and SoftMax 0.2730 Revised GoogLeNet 0.4771 Revised GoogLeNet on 10 subsets 0.7133 Multi-output activation > Binary classifier More layers VS Overfitting Data is the most important Get improvement Final accuracy, data limitation What I learned

Thank You ! Questions ?