Skip to content

hsoleimani/MLTM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository contains the source code and data files used in the experiments reported in the following paper:

H. Soleimani, D. J. Miller, "Semisupervised, Multilabel, Multi-Instance Learning for Structured Data," Neural Computation, vol. 29, no. 4, pp. 1053-1102, 2017.

Please see the paper for details of the algorithms and the experiments. 

This paper is an extension of an earlier work presented in CIKM2016. Please see the branch CIKM2016 for the experiments reported in that paper.

Contents:

1. The "Code" folder contains the source code for MLTM, MLTMVB, PLLDA, SSLDA, LR, MIL (MISVM, mi_SVM), EnMIMLNN, miGraph, EM-DD, and LDA. Compile each program in a Linux-based system by typing "make".

2. The "Data" folder contains the training and test data sets we used in our experiments in the paper. In most cases, it also contains necessary python scripts to download the data, do the required pre-processing, and split the data into training and test sets. Essentially, running "prepare_ohsumed.py" for instance, is enough to generate the same training and test sets used in the paper.

3. The actual experiments are in the "Experiments" folder. For each dataset and every label proportion, we have a folder in the path: "Dataset/Method/prop/rep/" where Dataset = {Ohsumed, DBPedia, Delicious, Reuters}, Method = {LR, MLTM, MLTMVB, PLLDA, SLDA, MISVM, mi_SVM, migraph, EMDD}, prop = {0.01, 0.05, 0.1, 0.3, 0.6, 0.8, 1} (the label proportion in the training set), and rep = {1,2,3,4,5}; for each method and every label proportion, we repeat the experiments with 5 different initialization, and then take average. Due to time constraint, we had to separate them and run them in parallel. 
For some methods, only one trial (rep={1}) was performed. These methods are miSVM, MISVM, and miGraph, which are insensitive to initialization, and EnMIMLNN, whose computation was
found to be prohibitive.

In each folder, there is a python script ("PyRun.py") which takes care of all steps: training, test, and computing ROC curves.

After running all experiments for each Dataset/Method, the python script "semisup_results.py" in the experiments folder takes average over all 5 iterations and save the final results in "Experiments/Results".

Note: The DLM model in the paper is called LR in these files.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published