Research Article

A Decoupling and Bidirectional Resampling Method for Multilabel Classification of Imbalanced Data with Label Concurrence

Algorithm 1

The pseudocode of ML-DBR.
Algorithm ML-DBR:
Input: A multilabel dataset D, resampling rate
Output: Preprocessed dataset D
Decoupling strategy
   (1)  Calculate samplesToResampling =  P, IR, Mean IR & Mean Samples
   (2)  Calculate SCUMBLEIns in D and set the SCUMBLE(D) as SCUMBLE(D)1
   (3)  For in D,
   (4)    If , then
   (5)      clone ( is the label set of )
   (6)       ( is the decoupled dataset)
   (7)        For samples
   (8)          Recalculate the SCUMBLE(D) as SCUMBLE(D)j
   (9)          If SCUMBLE(D)j−1 –SCUMBLE(D)j < t, then stop decoupling
   (10)  D = D + 
Resampling strategy
   (11)  While samplesToResampling > 0
   (12)    random select
   (13)    if then
   (14)      
   (15)      While
   (16)        random get m samples from
   (17)        let the max Min-SCUMBLEIns sample of samples as Z, clone Z
   (18)        D = D + Z, , samplesToResampling
   (19)    if then
   (20)      
   (21)      While
   (22)        random get m samples from
   (23)        Let the max Min-SCUMBLEIns sample of m samples as Z, Set of Z to 0
   (24)        , samplesToResampling
   (25)    Recalculate MeanIR, if then stop algorithm
   (26)  return D