• Xin Jin, Fuzhen Zhuang, Shuhui Wang, Qing He and Zhongzhi Shi. Shared Structure Learning for Multiple Tasks with Multiple Views. European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases (ECML-PKDD 2013), Prague, Czech Republic, Sep 23 - 27, 2013, to appear.


Matlab Codes for the Algorithm

The matlab program CASO_MVMT.m can be used to run the algorithm proposed in the above paper. The version of the Matlab used to write the program is Version 7.10.0.499 (R2010a). The input parameters for the program is described as follows:

ParameterDescription
feaa taskNum-by-viewNum cell array of matrices, each matirx represents the feature matrix for a views in a task. If a view does not exist for a task, then it is an empty matrix. It contains the testing samples' features.
label a taskNum dimension cell array of matrices, each matrix contains the true class labels for a task,it is a column vector (n-by-1 matrix), labels are -1 or 1. It contains testing samples' label.
trainFea a taskNum-by-viewNum cell array of matrices, each matirx represents the feature matrix for a views in a task. If a view does not exist for a task, then it is an empty matrix. It contains the labeled training samples' features.
trainLabel a taskNum dimension cell array of matrices, each matrix contains the true class labels for a task,it is a column vector (n-by-1 matrix), labels are -1 or 1. It contains labeled training samples' ture class label.
unlabelFea a taskNum-by-viewNum cell array of matrices, each matirx represents the feature matrix for a view in a task. If a view does not exist for a task, then it is an empty matrix. It contains the unlabeled samples' features.
unlabelLabel a taskNum dimension cell array of matrices, each matrix contains the true class labels for a task,it is a column vector (n-by-1 matrix), labels are -1 or 1. It contains unlabeled samples' label. This information is not used in the current version.
ite the maximum iteration number
h the dimension of the shared low dimensional feature space
alpha,beta,gamma parameters used in Eq.(13),(15) in the paper

The return values of the program is described as follows:

ParameterDescription
result a taskNum dimension cell array of matrices, each matrix contains the predicted class labels for the testing samples in a task
F1 a taskNum dimension vector, each element is the F1 measure for a task
meanF1 mean F1 for all the tasks, i.e.,meanF1=mean(F1)
U a taskNum-by-viewNum cell array of matrices, each matrix is a column vector contains the weitht vector u_t^v for the view in a task
Z a taskNum-by-viewNum cell array of matrices, each matrix is a column vector contains the weitht vector z_t^v for the view in a task
Theta a viewNum cell array of matrices, each matrix is Theta^v for a specific view v

Data Sets Used

It must be noted that the data sets must be preprocessed, so that they satisfy the format requirements of the program as described in the above. A sample input of the 20newsgroups data is provided (20news.mat ). It is a MATLAB formatted binary file (MAT-file), contains data for a problem that contains 20 tasks and 21 views. The number of labeled training samples is 20 for each task, the unlabeled training samples is 80.

The four data sets used in our paper are publicly available, they can be found at:

Running Example

Running this Matlab program is very easy. Using the program and data provied above, a running example is as follows (CASO_MVMT.m, 20news.mat ):

load 20news.mat
[result,F1,meanF1,U,Z,Theta]=CASO_MVMT(fea,label,trainFea,trainLabel,unlabelFea,unlabelLabel,20,15,0.0039,0.0078,0.0039);