# Assessment for Alzheimer's Disease Advancement Using Classification Models with Rules
## 3 The Algorithm
### Learning Phase
The merged dataset (ADNI-Merge-ADAS-Cog' dataset) contained 14,627 data observations and attributes related to patients' visits, cognitive tests, memory tests, functional questionnaires, genetics, demographics, and biomarkers, among others. There is one target class in the ADNI-Merge dataset, which is the diagnosis of the last examination visit (DX). There are 4243 data subjects with missing values for the DX attribute in the ADNI-Merge dataset. The age of the participants ranges from 54.4 to 94.4, and the average age is 73. The age distribution of all participants--most are between 70 and 80 years of age. The frequency of the participants' medical visits with at least one per participant and up to 22 visits. To be exact, most of the participants had two medical visits followed by one, five, and seven medical visits, respectively. As the main element of our research is the progression of the disease, this attribute does not exist in ADNI datasets; hence, we used the diagnosis (DX), visit code, and patient ID (RID) attributes from the ADNI-Merge dataset to create it, and we named the new class 'DX Progress' as described in Algorithm 2. Initially, we created an attribute called 'DX Digit' (Line #3) to encode the three possible diagnoses (CN:1, MCI:2, and AD:3); this attribute will help us assign the appropriate values to the DX Progress. The 'DX Digit' is filled based on the current diagnosis attribute (DX) in the original dataset (ADNI-Merge). The process starts by iterating over the data subjects after they are ordered by patient number (RID), and then iterating over the patients' visits. We always set the new attribute 'DX Progress' value to '0' (no progression) for each patient's first visit. The 'DX Progress' captures the change of diagnosis in a patient, establishing a new target class attribute. ```
Input: D: a dataset of all patients' information and visits Output: D': A dataset with the new target variable 'DX Progress'
1. D' = D
2. for each rid in D' do
3. D'.dx digit' = 0
4. for each viscode2 in D do
5. D'.dx digit' = d
6. if (d\({}_{n}\) = d\({}_{n-1}\))
7. D'.dx progress' = 0
8. elseif (d\({}_{n}\) > d\({}_{n-1}\))
9. D'.dx progress' = 1
10. else
11. D'.dx progress' = \(-1\)
12. end
13. end
14. remove all data instances where 'dx progress' = \(-1\)
```

**Algorithm 2** Modelling Process of the Data. The 'DX Progress' attribute will model the changes of the 'DX digit' from the matching patient ID and their subsequent visit with three possible class values. When there is a progression of diagnosis from CN '1' to MCI '2', or MCI '2' to Dementia '3', we labelled the change as '1' in the 'DX Progress' attribute (Lines 8-9). If there was no progression, it was labelled as '0'; regression as '-1' (Lines 6-7). Once the new class ('DX Progress') was derived, we removed instances that had been assigned with regression '-1' (Lines 11), as we focus only on classes that are either '1' for progression or '0' for no progression, with only two class values remaining. A brief analysis is conducted after creating the new class label, and it shows that the new class attribute is imbalanced as it is linked with a high number of no progression ('0') classes versus progression ('1'). Proceeding with an imbalanced dataset to learn classification models produces skewed results that favour the majority target class and ignore the minority class. To deal with the imbalanced data situation, we oversampled the data by synthesised data observations of the low-frequency class from existing data samples. We arbitrarily generated new observations of the minority class to move the number of minority class items closer to the majority class. Table 2 shows the general statistics of the newly merged dataset before and after data balancing. ## 5 Empirical Results and Discussion

### Experimental Settings

All experiments were conducted on a computer with an Intel(r) Core(tm) i7-6200U 2.8 Ghz with 8 GB RAM, on a Windows 10 Home, 64-bit. The hyperparameters of all methods and classification algorithms remained unchanged.