FINAL write up : CS 174 Spring 2012

Multi-class Classification

-Dog breed recognition-

Do Hwee Kim, Chang Jo Kim

     

  1. Introduction
    1. Our task is to classify 120 breeds of dog appropriately using machine learning methods. For this project, We had tested and observed several classical methods(kNN, SVM). However, these traditional approaches were actually not fitted to classify 120 classes. Thus, we implemented our new approach by combining classifiers and compared to our new approach (Decision Tree with SVM).

  2. Related work
  3.  

  4. OUR APPROACH (DT with SVM)
    1. General idea

        We introduced combined method to get better accuracy result for our classification problem. We used Decision tree but omitted entropy calculation and picking the most effective feature based on entropy. Instead of using entropy, we applied the process of binary SVM for each tree nodes. we built Random forestwith up to 10 independent trees for each sample. Building trees took a lot of time but the generalization error of a random forest could be reduced by making reducing the correlation among the trees. If trees are once grown up through the training step, the trees vote the correct class for given test set.

      Traning step

    2. Randomly assigning binary labels to examples
    3. Learn a binary split of data using SVM result from the first step and keep 'W' and 'b'. W in here indicates weight vector and b is bias for SVM hyperplain.
    4. Force examples labeled 1 (y = 1) to right child node. Otherwise, move it to left child
    5. Organize Random forest by building more trees. Trees must be built independently.

    Testing step

    1. Each tree will classify individually given test data.
    2. Collect results and vote.
    3. Assign the labels following the "most" voted class

  5. Results graph

  6. Conclusion
  7. References
  8.