| Literature DB >> 32756353 |
Xilin Li1, Sai Ho Ling1, Steven Su1.
Abstract
People with sleep apnea (SA) are at increased risk of having stroke and cardiovascular diseases. Polysomnography (PSG) is used to detect SA. This paper conducts feature selection from PSG signals and uses a support vector machine (SVM) to detect SA. To analyze SA, the Physionet Apnea Database was used to obtain various features. Electrocardiography (ECG), oxygen saturation (SaO2), airflow, abdominal, and thoracic signals were used to provide various frequency-, time-domain and non-linear features (n = 87). To analyse the significance of these features, firstly, two evaluation measures, the rank-sum method and the analysis of variance (ANOVA) were used to evaluate the significance of the features. These features were then classified according to their significance. Finally, different class feature sets were presented as inputs for an SVM classifier to detect the onset of SA. The hill-climbing feature selection algorithm and the k-fold cross-validation method were applied to evaluate each classification performance. Through the experiments, we discovered that the best feature set (including the top-five significant features) obtained the best classification performance. Furthermore, we plotted receiver operating characteristic (ROC) curves to examine the performance of the SVM, and the results showed the SVM with Linear kernel (regularization parameter = 1) outperformed other classifiers (area under curve = 95.23%, sensitivity = 94.29%, specificity = 96.17%). The results confirm that feature subsets based on multiple bio-signals have the potential to identify patients with SA. The use of a smaller subset avoids dimensionality problems and reduces the computational load.Entities:
Keywords: feature extraction; feature selection; polysomnography; sleep apnea
Mesh:
Year: 2020 PMID: 32756353 PMCID: PMC7436101 DOI: 10.3390/s20154323
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Example of one minute Polysomnography (PSG) signal.
Feature selection from PSG signals and their results (feature Nos. 1–62 from Electrocardiography (ECG) signals, Nos. 63–66 from SaO2 signals, Nos. 67–75 from airflow signals, Nos. 76–81 from abdominal signals and Nos. 82–87 from thoracic signals. Dashed lines divide the table according to the features of different signals).
| Feature | λfeature | Feature | λfeature |
|---|---|---|---|
| 1*.RMSSD_R_amp | 3 | 44*.var_RR0.03/0.4 | 1 |
| 2*.NN50_RR | 5 | 45*.spectral flatness | 1 |
| 3*.SDSD_RR | 3 | 46.spectral centroid | 0 |
| 4*.tSD_RR | 4 | 47*.spectral spread | 5 |
| 5*.std_RR | 4 | 48*.spectral decrease | 3 |
| 6.mean | 0 | 49*.spectral slope | 2 |
| 7*.var | 4 | 50*.V_MAX | 3 |
| 8*.kurtosis | 4 | 51*.DET | 4 |
| 9*.mean_RR | 4 | 52*.LAM | 3 |
| 10*.CV_EDR | 2 | 53.SCrC_1_RR | 0 |
| 11*.mean_R_amp | 1 | 54*.SCrC_2_RR | 2 |
| 12*.var_EDR_D9 | 2 | 55*.SCrC_3_RR | 2 |
| 13.var_EDR_D2 | 0 | 56*.SCrC_4_RR | 4 |
| 14*.entropy_D1 | 3 | 57*.SCrC_5_RR | 1 |
| 15*.entropy_D2 | 3 | 58*.std_PCA | 1 |
| 16*.entropy_D3 | 3 | 59*.std_kPCA | 1 |
| 17*.entropy_D4 | 3 | 60*.max_dia_PCA | 4 |
| 18*.entropy_D5 | 3 | 61*.max_dia_kPCA | 4 |
| 19*.entropy_D6 | 2 | 62*.RP_2_PC | 2 |
| 3-4[0.8pt/2pt] 20*.entropy_D7 | 2 | 63*.med | 4 |
| 21.entropy_A7 | 0 | 64*.RES4 | 5 |
| 22.mean_D1 | 0 | 65*.mean_PSD0.016/0.05 | 4 |
| 23.mean_D2 | 0 | 66*.SD1 | 5 |
| 3-4[0.8pt/2pt] 24.mean_D3 | 0 | 67*.mean | 2 |
| 25.mean_D4 | 0 | 68*.med | 3 |
| 26.mean_D5 | 0 | 69*.std | 3 |
| 27*.mean_D6 | 1 | 70*.mean_PSD0/0.1 | 3 |
| 28.mean_D7 | 0 | 71*.mean_PSD0.4/0.5 | 2 |
| 29.mean_A7 | 0 | 72.mean_D1 | 0 |
| 30*.var_D1 | 3 | 73.mean_D2 | 0 |
| 31*.var_D2 | 4 | 74.mean_D3 | 0 |
| 32*.var_D3 | 4 | 75*.mean_A3 | 2 |
| 3-4[0.8pt/2pt] 33*.var_D4 | 3 | 76*.sum_abs | 4 |
| 34*.var_D5 | 4 | 77*.std_abs | 5 |
| 35*.var_D6 | 3 | 78*.mean | 4 |
| 36*.var_D7 | 1 | 79*.mean_PSD80/100 | 2 |
| 37.var_A7 | 0 | 80.mean_D1 | 0 |
| 38*.WSD_RR | 3 | 81.mean_D2 | 0 |
| 3-4[0.8pt/2pt] 39*.WSD_R_amp | 4 | 82.sum | 0 |
| 40*.max_PSD0.03/0.5 | 3 | 83*.std | 3 |
| 41*.mean_PSD10/20 | 4 | 84*.med | 4 |
| 42*.mean_PSD80/100 | 4 | 85.mean | 0 |
| 43*.var_EDR0.03/0.4 | 1 | 86*.var | 3 |
| 87.mean_PSD80/100 | 0 |
Feature classes obtained via the relationship between λfeature and νPSG.
| Feature No. | Class A | Class B | Class C | Class D | Class E |
|---|---|---|---|---|---|
| λfeature = | λfeature = | λfeature = | λfeature = | λfeature = | |
| ECG | 2 47 | 4 5 7 8 9 31 32 34 39 41 42 51 56 60 61 | 1 3 14 15 16 17 18 30 33 35 38 40 48 50 52 | 10 12 19 20 49 54 55 62 | 11 27 36 43 44 45 57 58 59 |
| SaO2 | 64 66 | 63 65 | |||
| Airflow | 68 69 70 | 67 71 75 | |||
| Abdominal | 77 | 76 78 | 79 | ||
| Thoracic | 83 | 84 86 |
Means (00.00%) of sensitivity specificity and accuracy of the k-fold method based on the feature classes using SVM models with different kernel functions and parameters (the worse accuracy (≤90%) is highlighted in bold).
| Kernels |
| Class A | Class AB | Class ABC | Class A–D | Class A–E | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sen | Spe | Acc | Sen | Spe | Acc | Sen | Spe | Acc | Sen | Spe | Acc | Sen | Spe | Acc | ||
| RBF | 0.2 | 95.71 | 91.18 | 93.46 | 98.74 | 60.14 |
| 98.83 | 35.60 |
| 59.23 | 52.73 |
| 59.31 | 53.35 |
|
| 1 | 95.52 | 94.65 | 95.07 | 98.56 | 80.44 |
| 98.77 | 62.59 |
| 98.75 | 41.54 |
| 98.84 | 27.24 |
| |
| 10 | 95.93 | 94.70 | 95.31 | 98.36 | 80.44 |
| 98.69 | 63.24 |
| 98.77 | 42.94 |
| 98.74 | 27.69 |
| |
| RBF | 0.2 | 92.97 | 92.75 | 92.86 | 96.85 | 95.92 | 96.39 | 96.75 | 96.16 | 96.46 | 97.28 | 93.50 | 95.39 | 97.75 | 92.60 | 95.16 |
| 1 | 93.98 | 95.17 | 94.57 | 96.48 | 96.69 | 96.60 | 96.50 | 97.47 | 97.01 | 96.35 | 97.57 | 96.96 | 96.02 | 97.20 | 96.61 | |
| 10 | 94.08 | 95.99 | 95.05 | 96.47 | 96.83 | 96.64 | 96.10 | 97.47 | 96.77 | 96.43 | 97.01 | 96.70 | 96.04 | 97.37 | 96.71 | |
| RBF | 0.2 | 75.71 | 91.06 |
| 86.52 | 93.52 | 90.02 | 96.01 | 92.69 | 94.33 | 96.82 | 92.12 | 94.44 | 97.09 | 92.81 | 94.94 |
| 1 | 87.20 | 89.49 |
| 91.60 | 93.96 | 92.78 | 96.70 | 94.65 | 95.67 | 96.91 | 94.62 | 95.76 | 96.83 | 94.54 | 95.68 | |
| 10 | 93.78 | 94.40 | 94.08 | 95.18 | 96.75 | 95.99 | 96.45 | 96.13 | 96.28 | 96.23 | 96.05 | 96.16 | 96.67 | 95.90 | 96.29 | |
| Poly | 0.2 | 94.34 | 95.38 | 94.86 | 95.59 | 95.79 | 95.69 | 95.63 | 96.34 | 95.99 | 95.00 | 95.95 | 95.47 | 95.32 | 95.94 | 95.63 |
| 1 | 94.48 | 95.24 | 94.85 | 93.87 | 95.91 | 94.89 | 95.57 | 95.73 | 95.68 | 94.80 | 95.24 | 95.00 | 95.70 | 96.73 | 96.20 | |
| 10 | 94.33 | 95.66 | 94.99 | 94.34 | 95.98 | 95.14 | 96.01 | 95.23 | 95.61 | 95.37 | 95.92 | 95.64 | 95.70 | 95.76 | 95.73 | |
| Poly | 0.2 | 94.63 | 95.41 | 95.02 | 95.52 | 95.28 | 95.41 | 95.51 | 95.87 | 95.71 | 95.72 | 96.54 | 96.12 | 95.60 | 95.88 | 95.74 |
| 1 | 94.71 | 94.86 | 94.79 | 94.85 | 95.46 | 95.14 | 95.96 | 96.80 | 96.33 | 95.71 | 96.08 | 95.89 | 96.86 | 80.61 |
| |
| 10 | 94.58 | 95.78 | 95.17 | 95.16 | 95.89 | 95.54 | 96.45 | 96.05 | 96.23 | 96.03 | 96.54 | 96.26 | 89.91 | 95.58 | 92.88 | |
| Poly | 0.2 | 95.49 | 95.57 | 95.54 | 95.94 | 95.59 | 95.79 | 24.66 | 85.20 |
| 20.62 | 92.20 |
| 59.80 | 53.69 |
|
| 1 | 94.97 | 95.87 | 95.39 | 95.72 | 96.30 | 96.01 | 05.97 | 97.61 |
| 20.76 | 85.14 |
| 21.48 | 91.12 |
| |
| 10 | 93.66 | 95.76 | 94.71 | 95.56 | 96.20 | 95.88 | 18.38 | 94.97 |
| 41.46 | 69.61 |
| 56.97 | 63.67 |
| |
| Linear | 0.2 | 93.96 | 95.64 | 94.80 | 93.58 | 96.33 | 94.95 | 95.73 | 96.30 | 96.04 | 95.25 | 96.07 | 95.69 | 96.03 | 95.95 | 95.99 |
| 1 | 94.29 | 96.17 | 95.22 | 93.90 | 96.03 | 94.95 | 95.86 | 96.16 | 96.01 | 95.96 | 96.44 | 96.20 | 95.75 | 96.38 | 96.07 | |
| 10 | 93.34 | 95.98 | 95.14 | 93.95 | 96.65 | 95.29 | 95.77 | 96.36 | 96.06 | 95.64 | 96.54 | 96.10 | 95.03 | 96.28 | 95.64 | |
Statistical performance (%) of means of sensitivity, specificity and accuracy in different feature classes.
| Class | Sensitivity | Specificity | Accuracy | |||
|---|---|---|---|---|---|---|
| Mean | Std | Mean | Std | Mean | Std | |
| A–E | 87.21 | 19.72 | 82.68 | 22.47 | 84.89 | 16.50 |
| A–D | 84.71 | 24.89 | 86.68 | 17.84 | 85.59 | 16.72 |
| ABC | 85.06 | 28.22 | 89.45 | 15.55 | 87.25 | 15.24 |
| AB | 95.08 | 02.55 | 92.67 | 08.59 | 93.87 | 03.89 |
| A | 93.22 | 04.27 | 94.60 | 01.82 | 93.93 | 02.79 |
Area of ROC (AUC %) on the k-fold using support vector machine (SVM) models with kernels and parameters (Class A features as input).
| Kernels |
| AUC |
|---|---|---|
| RBF | 0.2 | 93.44 |
| 1 | 95.08 | |
| 10 | 95.31 | |
| RBF | 0.2 | 92.86 |
| 1 | 94.57 | |
| 10 | 95.03 | |
| RBF | 0.2 | 83.38 |
| 1 | 88.34 | |
| 10 | 94.09 | |
| Poly | 0.2 | 94.86 |
| 1 | 94.86 | |
| 10 | 94.99 | |
| Poly | 0.2 | 95.02 |
| 1 | 94.78 | |
| 10 | 95.18 | |
| Poly | 0.2 | 95.53 |
| 1 | 95.42 | |
| 10 | 94.71 | |
| Linear | 0.2 | 94.80 |
| 1 | 95.23 | |
| 10 | 94.66 |