CSUN 2007 Schedule
Jump to navigation
Jump to search
Schedule | People | Matlab | Notes | Data | Main
Module 0: Learning Matlab
Practice with Matlab. Try the Matlab tutorial.
Module 1: Introduction to pattern recognition
- Read intro Sec 1.1 thru 1.6 in old Bishop
- Download 4-categories.zip from the data page and use Matlab functions explore_images.m to explore the images
- Do classification manually
- How to quantify the performance of a classifier: the confusion matrix
Module 2: Overview of pattern recognition
Details on Module 2 and its exercises: PDF
Summary of Module 2 and its exercises:
- Excercise 1
- Get training set
- Choosing features
- Choosing a classifier
- Classifying the data
- Excercise 2 (variant of Ex. 1.2 and 1.3 in old Bishop)
- Drawing linear decision boundaries by hand
- Generalizing to more than 2 categories
Module 3: Automating classification - simple case-study
Details on Module 3 and its exercises: PDF
Summary of Module 3 and its exercises:
- Design simple system for Classification & Training applicable to urine database and implement with Matlab. Here the type of classifier will be given. Students will determine the best w (the boundary) based on training and then run on test set. Compare error rates. What are the possible types of errors? Are all types of errors equal?
Module 4: Training a classifier automatically by brute force
Details on Module 4 and its exercises: PDF
Summary of Module 4 and its exercises:
- Consider the linear classifiers you used in the previous weeks. As you may remember, you trained by hand. Could you have automated the process of selecting the parameters w? The `brute force' approach is simple but computationally heavy.
Module 5: Fisher Linear Discriminants
Need to reduce dimensionality
- Derivation of Fisher Linear Discriminants:
- Read PDF
- Make up a 30 minute presentation on this.
- Implement Fisher in your classifier
- Follow PDF
Module 6: The multi-class case
- Using linear classifiers in the multi-class case
- Dividing up space by intersections of half-spaces
- Tennis ladder
Module 7: Large experiment
- Make the code more efficient and modular
- Run large experiment on 13 categories with confusion matrix
Module 8: Analyzing the results
- Overall performance: average the entries on the main diagonal of the confusion matrix
- Look at the confusion matrix: which categories get confused? Can we fix this?
- Gather the pictures of the particles that got misclassified (e.g. Class C1 particles that were classified as class C2). Gather the pictures of the closest (in feature space) training examples in both C1 and C2. Compare the pictures: would you have been able to classify them correctly by eye? If so: we should be able to figure out newer and better features to do a good job. If not: we are less optimistic.
- Might the error arise from the complexity of the multi-class problem? Try and separate out classes C1 and C2 and train a 2-class classifier. See if the confusion goes down. If so: we should start worrying that our multi-class scheme may not be as good as we thought it was.
- As we look for new features, it is a good idea to play around with C1 and C2 separately from the other categories: we will be able to zero-in on promising features more quickly.
Module 9: More features
- Read note on features (summarizing Ranzato's report) -- PDF
- A few ideas for features that might prove useful in classifying urine particles. The differential invariant features were suggested by Koenderink and van Doorn and used by both Schmid and Ranzato in his thesis.
- Implement differential invariant features
- Implement nonlinear
- Take squares and products (all 2nd order terms) of existing features
Module 10: ADAboost
- What happens to Fisher Linear Discriminants when the n. of features is larger than the number of training examples?
- Consider cases where classes are not linearly separable: how could one `fix' this situation (hint: consider polynomials of features)
- The idea of boosting, the ADAboost algorithm. Introduction by Prof. Perona. Read the introduction to this in the new Bishop.
- Implement ADAboost by hand on paper on a simple case (4 iterations is sufficient!) for the following situation: PDF . You will have to "guess" the y_i's.
- Derivation of ADAboost as the minimization of a cost function. Read this section from new Bishop. Prepare a 30 minute presentation on this.