saryazdi / Imbalanced_Data-NPC

NPC Classification Algorithm for Imbalanced Datasets

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NPC: Neighbors' Progressive Competition

This is the Matlab implementation of "NPC: Neighbors Progressive Competition Algorithm for Classification of Imbalanced Data Sets" paper by Soroush Saryazdi, Bahareh Nikpour and Hossein Nezamabadi-pour. This paper has been accepted in Signal Processing and Intelligent Systems (ICSPIS), International Conference of IEEE, 2017. For more details and the pseudo code of this method please refer to the arXiv preprint version of this paper which can be found here: [arXiv Preprint]

---- Code Instructions ----

-main_NPC.m:

This code is an example of classification using NPC. Use this if you are not sure how the code works.

-CompN.m:

Function that classifies the results using NPC method.
inputs: Sample (training data), Test (test data), Weights (weights calculated by the formula in the paper), WinThresh (winning threshold)
output: classification result (predicted labels)

-GMCalc.m:

Function that calculates Geometric Mean (GM) which is a common metric for evaluating an algorithm's performance on imbalanced data.
inputs: Test (test data labels), Result (classification result: predicted labels)
output: Geometric Mean

-Example_Imbalanced_Dataset_Train.mat:

This is an example training set that was artificially generated, to use in main_NPC to demonstrate how the code works.

-Example_Imbalanced_Dataset_Test.mat:

This is an example test set that was artificially generated, to use in main_NPC to demonstrate how the code works.

About

NPC Classification Algorithm for Imbalanced Datasets

License:MIT License


Languages

Language:MATLAB 100.0%