On The Construction of Extreme Learning Machine for Online and Offline One Class Classification - An
Please send an email request with Subj: "One-Class ELM Toolbox" to get this Toolbox at: chandangautam31@gmail.com
You must cite following papers if you are using this ELM_DD MATLAB Toolbox:
C. Gautam, A. Tiwari and Q. Leng, “On The Construction of Extreme Learning Machine for Online and Offline One Class Classification - An Expanded Toolbox”, Neurocomputing (ELSEVIER) (Accepted), 2016. (Extended and Invited version of ELM-2015 paper)
Q. Leng, H. Qi, J. Miao, W. Zhu, and G. Su, One-Class Classification with Extreme Learning Machine, Mathematical Problems in Engineering, Hindawi Publishing Corporation, Article ID: 412957, 2014.
Tax [1] have presented very rich data description toolbox for one class classification. We expanded the same toolbox for our proposed methods because this toolbox have various useful function for one class classifier and those functios can also be utilized for our proposed classifier. Extreme Learning Machine (ELM) has been presented for One Class Classification (OCC) by Leng et. al [2]. Further, we [3] have also presented ELM for OCC. Afterwards, extension of this conference's paper [3] is submitted to Neurocomputing [4]. We are providing a brief user manual for now, later we will provide a detailed manual of this expanded toolbox.
In below diagram, R can be any integer, which is depicted on the last node.
Following new functions have been introduced to the existing DD Toolbox:
Ofline Classifier:
All offline classifierc have option to select whether user want to use random or kernel feature mapping for classifiers.
elm_kernel_dd.m: OCC using ELM with one output node and threshold criteria Thr1.
elm_thr2_kernel_dd.m: OCC using ELM with one output node and threshold criteria Thr2.
aaelm_kernel_dd.m: OCC using Auto-associative ELM (AAELM) and threshold criteria Thr1.
aaelm_thr2_kernel_dd.m: OCC using Auto-associative ELM (AAELM) and threshold criteria Thr2.
aaelm_thr3_kernel_dd.m: OCC using Auto-associative ELM (AAELM) and threshold criteria Thr3.
Online Classifier:
All online classifierc are based on only random feature mapping.
oselm_dd.m: OCC using Online Sequential ELM with one output node and threshold criteria Thr1.
oselm_thr2_dd.m: OCC using Online Sequential ELM with one output node and threshold criteria Thr2.
osaaelm_dd.m: OCC using Online Sequential AAELM and threshold criteria Thr2.
osaaelm_thr2_dd.m: OCC using Online Sequential AAELM and threshold criteria Thr2.
osaaelm_thr3_dd.m: OCC using Online Sequential AAELM and threshold criteria Thr3.
Classifier Optimization:
consistent_mocc.m: Optimize the hyperparameter using consistency based model selection for offline classifiers.
consistent_mosocc.m: Optimize the hyperparameter using consistency based model selection for online classifiers.
How to use expanded ELM_DD MATLAB Toolbox?
Step1: First install DD Toolbox and you need to install PR Toolbox first for DD Toolbox.
Step2: For using these one-class classifiers, convert your dataset into prmapping format and set the one label as target class and remaining as outlier class. To create a one-class dataset, several functions are available with DD Toolbox like gendatoc, oc_set and target_class. So, use those function and create one class dataset. For detailed description, just go through the manual of DD Toolbox which is available online [1].
Step3: After preparation of dataset for OCC. Just employ any of the proposed classifiers similar to DD Toolbox as you can see in following example:
W =aaelm_kernel_dd(train_target, thr, para, 'RBF_kernel'); % train the classifier
Where,
thr= how much fraction to reject from training set, 0 <= thr <= 1
para= In any case 1 parameters are always required because one parameter is common for all i.e. regularization coefficient C. So, first parameter (para(1)) will be always the regularization coefficient C. Second parameter will be as per kernel requirement, as you see in following table:
Z = test*W; % Employ trained classifier on testing data
[err1, F] = dd_error(Z); % dd_error is defined in DD Toolbox for calculating F1
Step4: For optimizing hyperparameter of the classifiers use consistent_mocc or consistent_mosocc as per online or offline classifier. An example for elm_thr2_kernel_dd, one hyperparameters (sigma) with RBF_kernel and one for regularization (C) need to optimize:
range= {power(10,-10:10), scale_range(x)};
where 'power(10,-10:10)' is the range of C and 'scale_range(x)' is the range of sigma. scale_range is defined in DD Toolbox.
fold=5; % folds for cross validation
fraction of rejection= 0.1; % 10 percent rejection of positive sample from training data.
opt_para= optimized parameter,
W= trained classifier with optimized parameter
[W opt_para]= consistent_mocc(training data, 'aaelm_kernel_dd', fraction of rejection, range, fold, 'RBF_kernel')
Instead of RBF Kernel, you can use Polynomial Kernel or Wave Kernel or Linear Kernel. However, you have to provide range of parameters as per kernel's requirement.
Note: Our classifiers are totally compatible with DD Toolbox except one function consistent_occ. So, we have provided modified version of that function. So, you can simply use above mentioned classifiers similar to existing classifiers in DD Toolbox.
References
D. M. J. Tax, DDtools2014, the Data Description Toolbox for MATLAB, version 2.1.1 [http://prlab.tudelft.nl/david-tax/dd_tools.html], 2014, last accessed by 26 Sept 2015.
Q. Leng, H. Qi, J. Miao, W. Zhu, and G. Su, One-Class Classification with Extreme Learning Machine, Mathematical Problems in Engineering, Hindawi Publishing Corporation, Article ID: 412957, 2014.
C. Gautam and A. Tiwari, “On The Construction of Extreme Learning Machine for One Class Classifier”. In Proceedings of 6th ELM-2015 (Springer), Hangzhou, China, December, 2015.
C. Gautam, A. Tiwari and Q. Leng, “On The Construction of Extreme Learning Machine for Online and Offline One Class Classification - An Expanded Toolbox”. Extended and Invited version of ELM-2015 paper, Neurocomputing (ELSEVIER) (Accepted), 2016, Impact Factor: 2.392.
Opmerkingen