## 2 Materials and Methods
### Identification Methods
#### 2.3.3 Feature Classification
\[\mathcal{L}^{(m)}\approx\sum_{i=1}^{n}\left[g_{i}f_{m}(x_{i})+\frac{1}{2}h_{ i}f_{m}^{2}(x_{i})\right]+\Omega(f_{m}),\] (2)

where \(g_{i}\) is the first-order gradient of the loss function, and \(h_{i}\) is the corresponding second-order gradient. When the structure of \(q\) is fixed, the optimal leaf score can be calculated by minimizing

\[\widetilde{\mathcal{L}}^{(m)}(q)\approx-\frac{1}{2}\sum_{j=1}^{T}\frac{\left( \sum_{i\in I_{j}}g_{i}\right)^{2}}{\sum_{i\in I_{j}}h_{i}+\lambda}+\gamma T, \tag{3}\]

where \(T\) denotes the leaf node number of \(q\), \(I_{j}\) is the sample sets in the \(j\)-th leaf node, and \(\lambda\) and \(\gamma\) are two constants which do not influence the minimization. As shown in Algorithm 4, the exact greedy algorithm for CART regressor construction in XGBoost uses both the first- and second-order statistics. A CART regressor is constructed by iteratively adding child nodes to the tree, which is also called splitting the current leaf nodes. During the tree construction process, the loss is gradually reduced. After the split of a single node, the loss reduction can be represented as

\[\Delta\mathcal{L}_{split}=\frac{1}{2}\left[\frac{\left(\sum_{i\in I_{l}}g_{ i}\right)^{2}}{\sum_{i\in I_{l}}h_{i}+\lambda}+\frac{\left(\sum_{i\in I_{R}}g_{ i}\right)^{2}}{\sum_{i\in I_{R}}h_{i}+\lambda}-\frac{\left(\sum_{i\in[I_{L} \cup I_{R}]}g_{i}\right)^{2}}{\sum_{i\in[I_{L}\cup I_{R}]}h_{i}+\lambda}\right] -\gamma, \tag{4}\]

where \(I_{L}\) and \(I_{R}\) denote the set of samples in the left and right nodes after the split, respectively. ```
Notation: Letting \(G\)- and \(H\)- denote \(\sum_{i\in I_{l}}g_{i}\) and \(\sum_{i\in I_{l}}h_{i}\), respectively. \(I\) denotes the sample set of the current node to be split. for\(k=1\) to \(M\)do \(G_{k}=0\), \(H_{k}=0\);  Sort the samples in \(I\) according to the feature values. for\(j\) in sorted order of \(I\)do \(G_{k}=G_{k}+g_{i}\), \(H_{k}=H_{k}+h_{i}\); \(G_{k}=G-G_{k}\), \(H_{k}=H-H_{k}\);  Update score with \(\max\left(score,\frac{a_{k}^{2}}{h_{k}+\lambda}+\frac{a_{k}^{2}}{h_{k}+\lambda }-\frac{a^{2}}{h+\lambda}\right)\)  end for  end for  end for
```

**Algorithm 4** Exact greedy algorithm for CART construction in XGBoost [14]. ## 3 Results and Discussion

### Data Preprocessing Results

Figure 3a,b show the raw and preprocessed measurements in a typical sampling cycle, respectively. In our EN, the sensing voltages of the eight sensors were sampled through eight different channels, and are plotted as curves with different colors in Figure 3. From Figure 3, we can see the curves all show quick rising but slow descending shapes. This phenomenon coincides with the fast reaction but slow recovery characteristics of MOS sensors. All sensors were powered with a rated voltage of 5 V. Thus, all raw voltage measurements in Figure 3a are smaller than 5 V. Moreover, the curves in Figure 3a seldom coincide with each other. In other words, the responses of the eight sensors to the same perfume sample are obviously different to each other, and jointly form the \"fingerprint\" information for the subsequent PI process. The spiky curves in Figure 3a depict the high-frequency noises in the raw measurements. Thus, as mentioned in Section 2.1, the wavelet method was used for sensing data denoising. To reduce the negative impact of background gas concentrations, the baseline subtraction operation was conducted to remove the sensing voltages sampled before the sensors came into contact with the perfume samples. Figure 3 shows the curves of preprocessed data. From Figure 3b, we can see that the curves are smooth, which reveals that the wavelet denoising method had removed the high-frequency noises. Additionally, it can readily be seen that all curves in Figure 3b intersect with the origin. This is because the measurements caused by the background residues were removed by the baseline subtraction operation.