Lab 3 - manifold regularization

The lab is based on the Matlab code developed by Mikhail Belkin
Local download: zip file

We will compare RLSC (regularized least squares for classification) and LapRLSC  

Part I - warm up

run the file demo.m and a GUI will start.

Generate a dataset with many labeled points (say 20)
- Compare the separation estimated with RLSC and with LapRLS.
Reduce the number of labeled points (say 5)
- Compare again the results obtained with RLSC and LapRLS
- Check how the results of LapRLS change as you move gamma_A and gamma_I
- Remember that if gamma_I is small you are basically applying RLSC and if both gamma_A and gamma_I are big you are discarding information coming from the labeled data (you are unsupervised)
 

Part II - labeled vs unlabeled

Generate a training set and a test set of, say 1000 points. 

see function generate_toydata choosing the method 'moons'

Evaluate the error on the test set while varying the number of labeled data in the range [2:5:100]

see function wipeout_labels giving the generated Y as input and a Yw as output

Choose parameters with cross-validation at each run

see, for instance, the script experiment_moons.m available

Part III - transductive vs semi-supervised

Fix 1000 unlabeled and 10 labeled data.

After tuning the parameter just predict the unlabeled data used in the algorithm (tranductive).

Now use the same solution to predict the labels of 1000 fresh data.

How do the results compare?