# Multi-Label Classification Based on Associations
## 3 ML-CBA Algorithm  
This section describes the planned ML-CBA. ML-CBA employs AC to address the MLC issue. To accommodate multi-label datasets, the classification based on associations (msCBA) method has been modified. The msCBA algorithm was selected for a number of reasons. First, to address one of the most pressing difficulties in the field of automatic classification, namely the construction or adaptation of an AC based classifier to classify datasets with multi-label and create multi-label rules, given the paucity of research in this particular area [15]. Second, msCBA was one of the first classification systems to use the association rules revealed by the a priori method. Interestingly, it has never been modified to support MLC. In addition, msCBA generates a classifier in the form of \"IF-THEN\" rules, which makes it simpler for experts and normal users to comprehend and use. Finally, AC algorithms are adept at uncovering latent dependencies between various objects, which increases the information acquired during the training phase and, as a result, improves the prediction phase of the learnt classifier. Specifically, two significant enhancements for msCBA algorithm are given to improve its capacity to suit MLC. Initially, the single-label CARs learnt through msCBA should be transformed into multi-label CARs using the captured local dependencies among labels. Second, the technique for sorting the learnt CARs should be modified to account for the operation of MLC, in which each classification rule may result in many class labels. Figure 1 depicts ML-CBA algorithm main stages (transformation stage, number of class labels prediction stage, constructing sub-datasets stage). Figure 2 shows the transformation step. This step aims to generate the complete set of the CARs and is accomplished through three main substeps: firstly, transform the input multi-label dataset into a single-label dataset using the HSDF (high standard deviation first) transformation method [52]. Then, apply the Bayesian-D [53] discretization technique on the transformed dataset, in order to convert the continuous attributes into categorical attributes. Finally, classify the transformed single-label dataset using msCBA algorithm. Both HSDF and Bayesian-D have been chosen after a comprehensive evaluation where they showed the best results compared to other PTMs and discretization techniques. Figure 3 illustrates the phase of predicting the number of class labels that might be linked to an example (instance). More information regarding this stage is provided in the second step of Algorithm 2. Figure 1: ML-CBA primary stages. Figure 2: ML-CBA algorithm transformation stage. ```
0: Multi-label dataset ( D), minsup, minconf, minacc. ```
0: Multi-label CARs ```
0: begin: Step 1:
1.1 Transform (D) into single label dataset (S) using HSDF. 1.2 Convert continuous attributes (if any) into categorical attributes, by applying Bayesian-D discretization technique. 1.3 Construct the single label CARs for the transformed dataset that satisfy minsup and minconf thresholds, by applying the msCBA algorithm. Step 2:
2.1 Amend a new feature to the dataset to represent the total number of labels associated with each instance. 2.2 For each instance in the training set, compute the total number of labels associated with this instance, and amend it to the new feature. 2.3 Remove the label space from the dataset, and consider the last feature as a class. 2.4 Classify the dataset using msCBA algorithm. Step 3:
3.1 Extract the label space of the input multi-label dataset. 3.2 Divide the extracted label space into (K) subsets, where k = the maximum number of labels that are associated with the instances - 1.