A Semi-Supervised Self-Organizing Map with Adaptive Local Thresholds
Sample code to the model proposed in https://ieeexplore.ieee.org/abstract/document/8851839/
It was presented at the 2019 International Joint Conference on Neural Networks (IJCNN), in Budapest, Hungary.
Please cite our paper if you use this code in your own work:
@inproceedings{braga2019semi,
title={A Semi-Supervised Self-Organizing Map with Adaptive Local Thresholds},
author={Braga, Pedro HM and Bassani, Hansenclever F},
booktitle={2019 International Joint Conference on Neural Networks (IJCNN)},
pages={1--8},
year={2019},
organization={IEEE}
}
-
You must have a file containing all the paths to the datasets you want to use. You can follow this example.
-
You must have a parameters file:
To run ALT-SSSOM, there are 9 parameters to set:
- lp
- dsbeta
- age_wins
- e_b
- e_n
- epsilon_ds
- minwd
- epochs
- seed
You can follow this example, where the first eleven rows represent the first set of parameters, the next 9 rows the second set and so on.
Also, it is important to update the constant noClass, if necessary. The default value is 999.
The sample code to generate the parameters with LHS, as in the paper, is available here.
-
Make sure you fill the requirements.
-
Open the NetbeansProject with Netbeans
-
Set the main arguments for the program:
-i: this flag is used to get the path to the file containing all the paths to the datasets to be used.
-t: this flag is used to get the path of the folder with the test files
-r: this flag is used to get the path to the results folder
-p: this flag is used to get the path to the parameters file
-c[optional]: this flag is used to define if the training and test experiments will be run.
-f[optional]: this flag disables the noisy filtering and all samples will be assigned to a cluster.
-n[optional]: this flag is used to define if the data needs to be normalized.
...and more.
For example, to run experiments for these real datasets:
-i ../../Parameters/inputPathsTrain01 -t ../../Parameters/inputPathsTest -r pray5-l01/ -p ../../Parameters/pray5_0 -c
After that, you can run your metrics based on the results file.
See py-scripts.