## 5 Supervised Classification of Clients
### Customized Naive Associative Classifier (CNAC)  
NAC classifier has a predefined similarity function, based on the Mixed and Incomplete Data Similarity Operator (MIDSO). It also has the possibility of using feature weights, and to compute them by means of metaheuristic algorithms [55]. In addition, in its functioning NAC considers the overall similarity of the instance to classify with respect every class of instances, which makes it suitable for dealing with imbalanced data [7]. The first modification to NAC is to substitute the MIDSO operator by a customized feature similarity operator Customized Mixed and Incomplete Data Similarity Operator (CMIDSO). We consider that if we replace MIDSO with a customized similarity operator, able to use feature weights, and to compare the differences between feature values, we can extend the NAC algorithm to a Customized Naive Associative Classifier (CNAC). By that, we preserve the nature of NAC, but we make it more flexible and useful for specific problems. Other feasible alternatives are: (a) design a novel classifier for mixed and incomplete data, based on other paradigms, and (b) using data preprocessing techniques with the objective of enhancing the results. However, (a) is complex, and (b) will require having more data than the ones we have. The main advantage of adopting this operator is that it is based on features comparison criteria, which makes it suitable for designed customized similarity functions. This is a generalization of the MIDSO operator and allows the users to define whatever similarity they want, for any specific problem. This affects the results in a positive way, due to the experiments made show a significant increase in the performance of the classifier, by using the proposed CMIDSO operator. In our opinion, the increase in the performance is due to the use of a similarity function which takes into consideration the problem specifications, as well as the way the feature values are compared. Let \(x\) and \(y\) be two instances, described by a set of features \(A=\{A_{1},\ \cdots,\ A_{m}\}\). If an attribute is missing, its value is denoted by \"?\". Each instance belongs to a unique class from a set of classes \(K=\{K_{1},\ \cdots,\ K_{p}\}\). and the set of attributes \(A\) may have an associated set of attribute weights \(W=\{w_{1},\ \cdots,\ w_{m}\}\). The total similarity \(s^{t}\) with respect to the instance \(o\) to be classified, is computed as \(s^{t}(o,y)=\sum\limits_{i=1}^{m}w_{i}*CMIDSO(o,y,A_{i})\). As using CMIDSO function as an algorithm parameter, we can customize the classifier, by maintaining the NAC advantages. The pseudocode of the proposed Customized Naive Associative Classifier is shown in Figure 6.  
To solve the problem of classifying the non-verbal preferences of the clients, we introduce a novel operator, suitable for comparing the non-verbal preferences of the clients. The proposed CMIDSO is then defined as follows, by considering the features defined for the clients' preferences (Table 1):  
\[CMIDSO(x,\ y,\ A_{i})=\left\{ \begin{array}{ll}s_{1}(x,\ y,\ A_{i})&\quad if \ i\in\{1,3,4\}\\ s_{2}(x,\ y,\ A_{i})&\quad if\ i\in\{2,13,14,15\}\\ s_{3}(x,\ y,\ A_{i})&\quad if\ i=22\\ s_{4}(x,\ y,\ A_{i})&\quad otherwise\end{array} \right. \tag{10}\]  
\[s_{1}(x,\ y,\ A_{i})=\left\{ \begin{array}{ll}0&if\ x_{i}\
eq y_{i}\\ 1&\quad otherwise\end{array} \right. \tag{11}\]  
\[s_{2}(x,\ y,\ A_{i})=\left\{ \begin{array}{ll}\frac{|x_{i}-y_{i}|}{max_{i}- min_{i}}&\quad if\ x_{i}\
eq?\ \wedge y_{i}\
eq?\\ 1&\quad if\ x_{i}=?\ \vee y_{i}=?\end{array} \right. \tag{12}\]\[s_{3}(x,\ y,\ A_{i})=\left\{ \begin{array}{ll}1&\quad if\ [x_{i}=?\ \lor y_{i}=?]\lor x_{i}=y_{i}\\ 0.6&\quad if\ x_{i},\ y_{i}\in\{A,B\}\\ 0.3&\quad if\ x_{i},\ y_{i}\in\{B,C\}\ \lor x_{i},\ y_{i}\in\{C,D\}\\ 0&\quad otherwise\\ \end{array} \right. \tag{13}\]  
\[s_{4}(x,\ y,\ A_{i})=\left\{