# DemoSSL

a Matlab GUI to explore semi-supervised learning and the influence of different similarity graphs

by Matthias Hein and Ulrike von Luxburg

## PURPOSE

DemoSSL: The purpose of this demo is to show how graph-based semi-supervised learning depends on the graph structure, the amount of labeled data and the regularization
parameter. As algorithm we use the one proposed by Zhou et al: "Learning with local and global consistency" .

## TUTORIAL

DemoSSL has been used for teaching purposes at the Machine Learning Summer School 2007 in Tuebingen, Germany. The tutorial presents the theoretical basis of the algorithm
of Zhou as well as of related ones. The influences of the different parameters on the classification results of the semisupervised learning algorithm are discussed, too.

Download tutorial on semi-supervised learning

## SCREENSHOT OF DemoSimilarityGraphs

## PANELS IN DemoSSL

From left to right, the labeled and unlabeled points, the associated neighborhood graph and the result of the semi-supervise learning algorithm.*Plots:*One can choose to draw data from a new dataset as well as a new sample from the same dataset. The latter is useful if one wants to study the influence of the statistical fluctuations on the semi-supervised learning algorithm.*Data Generator (Left):*The neighborhood graph and its parameter (the number of neighbors k or the neighborhood radius eps) can be choosen as well as the parameter sigma (kernel width) of the Gaussian weights.*Graph Properties (Middle):*The number of edges as well as the weights of the edges within/between the different classes are shown. Additionally, the number of the connected components of the graph is presented.*Graph Statistics (Middle/Bottom):*The control for the regularization parameter of the graph.*SSL Parameters (Middle/Right):*The percentage of training and test (on the unlabeled data) error are shown. Additionally, also the percentage of unlabeled points is reported. Points which are unlabeled are also counted as errors. However, unlabeled points should be rather seen as a third class which indicates that the algorithm has not enough information to infer their labels.*SSL Classification results (Middle/Right):*