Project by: Cirill Aizenberg, Dima Altshuler Supervisor: Erez Berkovich.

Slides:



Advertisements
Similar presentations
Semi-Supervised Learning in Gigantic Image Collections
Advertisements

Applications of one-class classification
EigenFaces and EigenPatches Useful model of variation in a region –Region must be fixed shape (eg rectangle) Developed for face recognition Generalised.
Naïve-Bayes Classifiers Business Intelligence for Managers.
Image classification Given the bag-of-features representations of images from different classes, how do we learn a model for distinguishing them?
Presented by Xinyu Chang
Learning Techniques for Video Shot Detection Under the guidance of Prof. Sharat Chandran by M. Nithya.
Semi-supervised Learning Rong Jin. Semi-supervised learning  Label propagation  Transductive learning  Co-training  Active learning.
AGE ESTIMATION: A CLASSIFICATION PROBLEM HANDE ALEMDAR, BERNA ALTINEL, NEŞE ALYÜZ, SERHAN DANİŞ.
Efficient Distribution Mining and Classification Yasushi Sakurai (NTT Communication Science Labs), Rosalynn Chong (University of British Columbia), Lei.
Lecture 3 Nonparametric density estimation and classification
Watching Unlabeled Video Helps Learn New Human Actions from Very Few Labeled Snapshots Chao-Yeh Chen and Kristen Grauman University of Texas at Austin.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm Lecture #20.
Content Based Image Clustering and Image Retrieval Using Multiple Instance Learning Using Multiple Instance Learning Xin Chen Advisor: Chengcui Zhang Department.
Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data.
Project 4 out today –help session today –photo session today Project 2 winners Announcements.
Semi-Supervised Learning in Gigantic Image Collections Rob Fergus (NYU) Yair Weiss (Hebrew U.) Antonio Torralba (MIT) TexPoint fonts used in EMF. Read.
Object Class Recognition Using Discriminative Local Features Gyuri Dorko and Cordelia Schmid.
KNN, LVQ, SOM. Instance Based Learning K-Nearest Neighbor Algorithm (LVQ) Learning Vector Quantization (SOM) Self Organizing Maps.
Computer Vision I Instructor: Prof. Ko Nishino. Today How do we recognize objects in images?
Pattern Recognition. Introduction. Definitions.. Recognition process. Recognition process relates input signal to the stored concepts about the object.
Y. Weiss (Hebrew U.) A. Torralba (MIT) Rob Fergus (NYU)
E.G.M. PetrakisDimensionality Reduction1  Given N vectors in n dims, find the k most important axes to project them  k is user defined (k < n)  Applications:
Large-Scale Content-Based Image Retrieval Project Presentation CMPT 880: Large Scale Multimedia Systems and Cloud Computing Under supervision of Dr. Mohamed.
Dimensionality reduction Usman Roshan CS 675. Supervised dim reduction: Linear discriminant analysis Fisher linear discriminant: –Maximize ratio of difference.
Exercise Session 10 – Image Categorization
Methods in Medical Image Analysis Statistics of Pattern Recognition: Classification and Clustering Some content provided by Milos Hauskrecht, University.
Computer vision.
Processing of large document collections Part 2 (Text categorization) Helena Ahonen-Myka Spring 2006.
1 Graph Embedding (GE) & Marginal Fisher Analysis (MFA) 吳沛勳 劉冠成 韓仁智
Multimodal Interaction Dr. Mike Spann
ADVANCED CLASSIFICATION TECHNIQUES David Kauchak CS 159 – Fall 2014.
General Tensor Discriminant Analysis and Gabor Features for Gait Recognition by D. Tao, X. Li, and J. Maybank, TPAMI 2007 Presented by Iulian Pruteanu.
1 Pattern Recognition Concepts How should objects be represented? Algorithms for recognition/matching * nearest neighbors * decision tree * decision functions.
Introduction to machine learning and data mining 1 iCSC2014, Juan López González, University of Oviedo Introduction to machine learning Juan López González.
Overview of Supervised Learning Overview of Supervised Learning2 Outline Linear Regression and Nearest Neighbors method Statistical Decision.
Classification Course web page: vision.cis.udel.edu/~cv May 12, 2003  Lecture 33.
1 Pattern Recognition Pattern recognition is: 1. A research area in which patterns in data are found, recognized, discovered, …whatever. 2. A catchall.
Visual Information Systems Recognition and Classification.
GRASP Learning a Kernel Matrix for Nonlinear Dimensionality Reduction Kilian Q. Weinberger, Fei Sha and Lawrence K. Saul ICML’04 Department of Computer.
CSE 185 Introduction to Computer Vision Face Recognition.
Gang WangDerek HoiemDavid Forsyth. INTRODUCTION APROACH (implement detail) EXPERIMENTS CONCLUSION.
1 Chapter 10 Introduction to Machine Learning. 2 Chapter 10 Contents (1) l Training l Rote Learning l Concept Learning l Hypotheses l General to Specific.
1Ellen L. Walker Category Recognition Associating information extracted from images with categories (classes) of objects Requires prior knowledge about.
A NOVEL METHOD FOR COLOR FACE RECOGNITION USING KNN CLASSIFIER
Chapter 13 (Prototype Methods and Nearest-Neighbors )
Fast Query-Optimized Kernel Machine Classification Via Incremental Approximate Nearest Support Vectors by Dennis DeCoste and Dominic Mazzoni International.
Dimensionality reduction
K nearest neighbors algorithm Parallelization on Cuda PROF. VELJKO MILUTINOVIĆ MAŠA KNEŽEVIĆ 3037/2015.
Intro. ANN & Fuzzy Systems Lecture 16. Classification (II): Practical Considerations.
Frank Bergschneider February 21, 2014 Presented to National Instruments.
Computer Vision Lecture 7 Classifiers. Computer Vision, Lecture 6 Oleh Tretiak © 2005Slide 1 This Lecture Bayesian decision theory (22.1, 22.2) –General.
SUPERVISED AND UNSUPERVISED LEARNING Presentation by Ege Saygıner CENG 784.
Machine Learning Supervised Learning Classification and Regression K-Nearest Neighbor Classification Fisher’s Criteria & Linear Discriminant Analysis Perceptron:
Another Example: Circle Detection
Distinctive Image Features from Scale-Invariant Keypoints
Instance Based Learning
Efficient Image Classification on Vertically Decomposed Data
Face Recognition and Feature Subspaces
Recognition: Face Recognition
In summary C1={skin} C2={~skin} Given x=[R,G,B], is it skin or ~skin?
Efficient Image Classification on Vertically Decomposed Data
Instance Based Learning
CS4670: Intro to Computer Vision
Announcements Project 2 artifacts Project 3 due Thursday night
Announcements Project 4 out today Project 2 winners help session today
Concave Minimization for Support Vector Machine Classifiers
Using Manifold Structure for Partially Labeled Classification
Xiao-Yu Zhang, Shupeng Wang, Xiaochun Yun
The “Margaret Thatcher Illusion”, by Peter Thompson
Presentation transcript:

Project by: Cirill Aizenberg, Dima Altshuler Supervisor: Erez Berkovich

 In the recent years everyone knows that Internet contains infinite amount of free data that can be used for large number of applications. Along all the free data out there, we can find billions of images that can be widely used. But there are two major problems that preventing easy access to this reach incredible database, one is that we need a technique to recognize the visual content of the images and the second is the ability for fast search of the huge amount of images.  In our project we implemented one of the new and the promising algorithms that can be found in the computer science community, we will review all the steps of the algorithm, describe the logic behind each step and finally compare the results to other available simple approaches.

Get familiar with existing approaches Implement the SSL and KNN algorithms Test the algorithms on toy and real data

Extracting the most important features from image. Reducing the data size by using Gist descriptor Features extraction Normalization and reducing the size of the features vector. Using PCA to hold only the top and the most important dimensions Dimension reduction Classifying the unlabeled data using the algorithm in order to receive classification function Algorithm Classification

 K-nearest neighbor (KNN) is very simple algorithm that can classify objects based on closest training examples in the tested dataset. In other words for each unlabeled data point in our space we will test the k nearest labeled neighbors to that point and we will determine the type of the data according to the most common type amongst the k neighbors.

The main idea behind the SSL algorithm is that we can use not only the labeled data (supervised algorithms) but also the unlabeled data. We will see that if the algorithm will take in to the consideration the density of the whole data we can receive much better results.

In order to find classification function we will use graph- based semi-supervised learning. We will define graph Laplacian L that will define a smoothness operator that takes into account the unlabeled data. The combinatorial graph Laplacian is defined as:

We want to find f that minimizes:

ALTERNATIVE WAY FINDING CLASSIFICATION FUNCTION

PROBLEM FINDING CLASSIFICATION FUNCTION As we saw in previous section in order to calculate the Classification function we can choose one of two approaches.  Direct resolving – we have to invert L matrix  Use of eigenvectors – we have to find the eigenvectors by diagonalizining L If we take for example 100 million images we will find out that it's impossible to invert or diagonalize 100 million x 100 million matrix. Because our algorithm developed for large scale databases, 100 million images is a reasonable number for database and this is why there is need to find another solution for finding Classification function.

THE USE OF EIGENFUNCTIONS

After we calculate all the histograms we can solve for the eigenfunctions of each 1D distribution. We solve for values of the eigenfunction and their associated eigenvalues at the locations of the bin centers. If we will chose bin number as 20 we will get small system 20×20 that is easily solved. After we have all the eigenfunction for each dimension we can easily find the approximation for the eigenvectors. For each data point we will do a 1D interpolation in the eigenfunction to find the eigenvector value.

1. For each image from input data base create Gist descriptor 2. For each Gist descriptor vector rotate the data to maximize separabillity (using PCA) 3. For each of the input dimensions, Construct 1D histogram, Solve numerically for eigenfunction and values 4. Order eigenfunctions from all dimensions by increasing eigenvalue and take the first k 5. Interpolate data into k eigenfunctions yields approximate eigenvectors of Laplacian 6. Solve k x k system to give Classification function

 First we tested on simple two dimension data in order to see graphical results.

KNN SSL

 We have chosen online image database called CIFAR-10. This database contains thousands of labeled images but all of them categorized only to ten categories. This database will allow us easy testing because we have limited set of categories and more importantly they all were labeled manually by human. Because the SSL algorithm returns binary classification function each execution we can find images from one of the categories

Correctness of the Classification function classification results of class “airplane”. Labeled samples contained 50 positives and 100 negatives classification results of class “airplane”. Labeled samples contained 700 positives and 2500 negatives

All classes classification

SSL vs. KNN

SSL vs. KNN (zoomed in)

 Classification algorithm that is based on KNN calculation is not complete. It doesn’t take into consideration the density and the smoothness of the data, thus it’s correctness is damaged.  Effectiveness of SSL (based on Eigen-Functions) could be increased, by taking bigger amount of positive and negative samples.  Eigen-Function algorithm can retrieve higher positive true percentage if the systems demand allows higher false positive percentage. It is flexible unlike KNN.

 Eigen-Functions algorithm has low complexity than other similar algorithms. Which could enhance classification on large databases.  Every class of data is different, thus it requires different tuning for setting the optimum threshold and choosing the most suitable amount of positive and negative samples.  The SSL algorithm (based on Eigen-Functions) has low TPR values, when the allowed FPR is low.