(Matlab Code)
(Matlab Code)
Line 47: Line 47:
 
* Simple perl script that converts data from the libsvm to the fann format. Allows you to quickly convert data if you're using the '''FANN''' and '''LIBSVM''' (please, follow the link under [[Tools_OldKiwi]]).
 
* Simple perl script that converts data from the libsvm to the fann format. Allows you to quickly convert data if you're using the '''FANN''' and '''LIBSVM''' (please, follow the link under [[Tools_OldKiwi]]).
  
== Matlab Code ==
+
== LINK : Matlab Code ==
  
 
1. [http://homepages.cae.wisc.edu/~ece539/matlab/ The contents are below]
 
1. [http://homepages.cae.wisc.edu/~ece539/matlab/ The contents are below]
Line 60: Line 60:
  
 
2. [http://my.fit.edu/~rperalta/RECENT_PROJECTS/K-NearestNeighbor.html KNN Classifier Matlab code]
 
2. [http://my.fit.edu/~rperalta/RECENT_PROJECTS/K-NearestNeighbor.html KNN Classifier Matlab code]
 +
 +
 +
== LINK : C Code ==
 +
1. [http://www.codeproject.com/KB/cpp/MLP.aspx Neural network classifier]
  
 
== Links ==
 
== Links ==

Revision as of 23:20, 24 March 2008

Hw assignment 2

Assignment Description

[Official version: HTML PDF]

Due Tuesday April 1, 2008

Guidelines:

  • Write a short report to present your results.
  • Be sure to include all the relevant graphs as well as a copy of your code.
  • Teamwork is encouraged, but the write up of your report must be your own.
  • Please write the names of ALL your collaborators on the cover page of your report.

Question 1

In the Parametric Method section of the course, we learned how to draw a separation hyperplane between two classes by obtaining w0, the argmax of the cost function $ J(w)=w^TS_Bw / w^TS_ww $. The solution was found to be$ w_0= S_w^{-1}(m_1-m_2) $, where $ m_1 $ and $ m_2 $ are the sample means of each class, respectively.

Some students raised the question: can one simply use $ J(w)= w^TS_Bw $ instead (i.e. setting $ S_w $ as the identity matrix in the solution $ w_0 $? Investigate this question by numerical experimentation.


Question 2

Obtain a set of training data. Divide the training data into two sets. Use the first set as training data and the second set as test data.

a) Experiment with designing a classifier using the neural network approach.

b) Experiment with designing a classifier using the support vector machine approach.

c) Compare the two approaches.

Note: you may use code downloaded from the web, but if you do so, please be sure to explain what the code does in your report and give the reference.


Question 3

Using the same data as for question 2 (perhaps projected to one or two dimensions for better visualization),

a) Design a classifier using the Parzen window technique.

b) Design a classifier using the K-nearest neighbor technique

c) Design a classifier using the nearest neighbor technique.

d) Compare the three approaches.

Data

  • Publicly available data sources are listed here.
  • Simple perl script that converts data from the libsvm to the fann format. Allows you to quickly convert data if you're using the FANN and LIBSVM (please, follow the link under Tools_OldKiwi).

LINK : Matlab Code

1. The contents are below

a). KNN classifiter

b). Classification using SVM

c). Demonstration of parzen window

d). Serval matlab codes realated to learning, clustering, and pattern classification

2. KNN Classifier Matlab code


LINK : C Code

1. Neural network classifier

Links

Links to many SWM softwares, tutorials, etc: Most of these sites are compilation of several links to codes on the web

1. SVM and Kernel Methods Matlab Toolbox http://asi.insa-rouen.fr/enseignants/~arakotom/toolbox/index.html

2. SVM - Support Vector Machines Software http://www.support-vector-machines.org/SVM_soft.html

3. Some SVM sample data http://www.cs.iastate.edu/~dcaragea/SVMVis/data_sets.htm

Alumni Liaison

Basic linear algebra uncovers and clarifies very important geometry and algebra.

Dr. Paul Garrett