摘要
Introduction Electronic nose (E-nose) has many applications in gas detection and classification such as identifying toxic gases from the environment or detecting breath biomarkers for various cancer diseases. The E-noses are usually designed using an array of gas sensors and a machine learning classifier, which is comprised of various models to distinguish the gas sensor data. However, the response of the gas sensors often suffers from unpredictable and uncertain drift issues due to sensor aging, process variation, and environmental interference. From the perspective of pattern recognition, drift causes test data distribution to differ from prior data distribution and reduce the classification accuracy. To solve the above-mentioned problems, drift correction methods such as component correction based on principle component analysis (CC-PCA) and orthogonal signal correction (OSC) can be employed. The correction methods try to remove some components from the data, while the drift is a dynamic and nonlinear one that cannot be easily separated from the data. The other method can be adaption in which new labeled data collected at different time or from different devices are required to update the classifier. The adaption method has better classification capability than the correction method; however, collecting new labeled data or transferring data is a laborious job. Hence, this paper proposes a transfer learning method to adapt different distributions of data without any additional data. Since no transfer data is required, the learning method can also be named as zero-shot learning. Method Fig. 1 shows the proposed method that considers both sensor response correction and adaption. This method combines auto-encoder as well as a neural network (NN) classifier with certain restrictions. The auto-encoder comprises an encoder and a decoder made by a 64-30-20 fully-connected neural network and a 20-30-64 fully-connected neural network, respectively. The purpose of the auto-encoder is to find latent vectors that can highly represent the input data. To find a highly representative latent vector, the encoder encodes the input sample to a 20-dimension latent vector, and then this latent vector is used to reconstruct a 64-dimension vector through the decoder. By forcing the reconstructed vector close to the input data, the latent vector can extract useful information from the input data and represent the corresponding input data. However, a highly representative latent space made up of latent vectors is not equivalent to a space that is easy to be clustered into different classes. For seeking a better classifiable latent space, the performance of the classifier is taken into consideration. In this work, a 20-10-6 fully-connected neural network is adopted as a classifier. In addition, statistical measurements are introduced to determine the transfer sample. The proposed method can be divided into two main stages: (1) Training stage (2) Calibration stage. During the training stage, training data are used to train the auto-encoder and the classifier along with the objective function including reconstruction error, classification error, and statistic error. The reconstruction error is the mean square error between the reconstructed data and the input. The classification error is determined by the classifier, which would be the binary cross-entropy error between NN output and the true label. Further, the statistic error measures the sparsity of the data distribution. For the calibration stage, some unknown samples are treated as test data. First, the test data will be given as the input of the model, consequently, the output of the model is obtained in the form of latent vector and classification result. Then, the statistic error can be calculated by the latent vector and the training data distribution in latent space. According to the customized qualification, the sample is determined to be reliable or not. If it is reliable, then it is put into the transfer dataset with its classification result as the label. Finally, the transfer dataset is used to calibrate the pre-train model through utilizing the transfer dataset as the training data in the first stage. Results and Conclusion The proposed method is evaluated on an open dataset discuss in [1], which collects 13,910 samples using a 16 metal-oxide (MOX) gas sensor array over a period of 36 months. While the dataset is processed using the proposed method, attention should be paid in determining what kind of sample is reliable. If less reliable samples are used, the model might collapse. On the other hand, if the transfer dataset contains only highly reliable samples, the classifier may be stuck with a similar distribution of training data, which means it is unable to adopt the new data distribution and leads to a big hurdle. Hence, the constraints of selecting transfer data are varied with calibration epochs. This work is the first zero-shot transfer learning method applied to E-nose data. The experimental results show that the performance is improved after data transfer. Besides, the other calibration methods on this dataset usually select the transfer data which can describe the overall data distribution in the test batch. Yet, the proposed method can be more practical and general, because a similar operation can be also applied to calibrate the instrumental variation. Furthermore, the proposed method lacks human labeling after the pre-trained model. That is, it is possible to obtain a better result working together with the traditional method and collecting newly labeled transfer data once in a while. Reference [1] A. Vergara, S. Vembu, T. Ayhan, M.A. Ryan, M.L. Homer, R. Huerta, Chemical gas sensor drift compensation using classifier ensembles, Sens. Actuators B: Chem. 166 (2012) 320-329 Figure 1