*4.7. Supervised Classifier Training*

Three different types of supervised classifiers have been considered for the automatic assessment of the LA, AC, Po and PSCOM tasks: k-Nearest Neighbours (kNN), Multinomial Logistic Regression (MLR) and Support Vector Machine (SVM) with polynomial kernel [58]. Two types of classification problems were considered: first, a binary classification problem, where the subjects are classified into the HC and the PD classes; second, a multiclass classification problem, where the subjects are classified into the three PD classes of increasing severity. The design of this second experiment was suggested by the distributions of the severity scores of the PD patients recruited for the study, which were essentially distributed among slight, mild and moderate UPDRS severity scores [2], corresponding to the UPDRS1, UPDRS2 and UPDRS3 classes, respectively. Furthermore, the severity scores distributions were adequately balanced among the classes for all the tasks (Table 3). The classifiers were trained for each task (LA, AC, Po, and PSCOM) by using as input the sets of "selected kinematic parameter vector—UPDRS score" pairs obtained from the reference dataset of performances. In particular, the PSCOM classifiers was trained using the PIGD subscale scores (PSPIGD) as UPDRS score.


**Table 3.** Distribution of the severity scores among the UPDRS tasks.

<sup>a</sup> In the LA task, both legs were assessed.

The input data have been normalized both to make more stable the training procedure and to simplify the behavior of the parameters in the parameter space. Specifically, the parameters *p*i PD Norm whose values increases with the worsening of the performance from 1 to their maximum (*p*i PD Norm MAX > 1), are scaled in the range 0 to 1, while those whose values decrease with the worsening of the performance from 1 to the their minimum (0 < *p*i PD Norm MIN < 1) are first reversed and then scaled in the range 0 to 1. The score values are scaled in the range 0 to 1 as well.

The kNN classifiers were employed as baseline and implemented and tested by Matlab scripts (fitcknn function). The classifiers were tested with parameter k = 1,3,5,7 using the Euclidean distance metric. The tie breaking algorithm adopted was to decrease k by 1 until the tie is broken.

The MLR classifiers were implemented and tested by Matlab scripts (fitmnr function for ordinal data with probit link function).

The SVM classifiers were implemented and tested by Matlab scripts with the support of the LibSVM library package [59]. The kernel function of SVM classifier is polynomial with parameters: γ (gamma), *r* (bias) and *d* (polynomial degree) and *C* (cost). Every SVM multiclass classifier uses the one-versus-one coding design with majority voting scheme and is made by three binary SVM models, all with the same parameters [60]. A grid-search and cross-validation method were used to find the optimal values of the SVM parameter *C*, γ, *r* and *d* for the three binary classifiers.
