| Literature DB >> 34276807 |
Jacob L Newman1, John S Phillips2, Stephen J Cox1.
Abstract
The aim of the work presented here was to develop a system that can automatically identify attacks of dizziness occurring in patients suffering from positional vertigo, which occurs when sufferers move their head into certain positions. We used our novel medical device, CAVA, to record eye- and head-movement data continually for up to 30 days in patients diagnosed with a disorder called Benign Paroxysmal Positional Vertigo. Building upon our previous work, we describe a novel ensemble of five 2D Convolutional Neural Networks, using composite recognition features, including eye-movement data and three-channel accelerometer data. We achieve an F 1 score of 0.63 across an 11-fold cross-fold validation experiment, demonstrating that the system can detect a few seconds of motion provoked dizziness from within over a 100 h of normal eye-movement data. We show that the system outperforms our previous 1D Neural Network approach, and that our ensemble classifier is superior to each of the individual networks it contains. We also demonstrate that our composite recognition features provide improved performance over results obtained using the individual data sources independently.Entities:
Year: 2021 PMID: 34276807 PMCID: PMC8261823 DOI: 10.1016/j.bspc.2021.102708
Source DB: PubMed Journal: Biomed Signal Process Control ISSN: 1746-8094 Impact factor: 3.880
Fig. 1The Dix-Hallpike manoeuvre for diagnosing BPPV. (1) The patient sits on a raised couch and faces 45 away from the sagittal plane of their body. The patient faces left or right, depending on which ear is suspected of being affected by BPPV. (2) The clinician will then quickly move the patient back, maintaining the 45-degree tilt of the head, supporting the head as it hangs off the edge of the couch. Ordinarily, the patient would be instructed to keep their eyes open to allow the clinician to observe any resulting nystagmus.
Fig. 2The CAVA device as worn on the face. The device includes an event marker button for the patient to highlight events of interest to the clinician, and in conjunction with the device's status LED, also provides a way for the patient to check the status of the device.
Details of data files used in our experiment. Each file has a separate ID, and contains data from one or more subjects. Also shown are the total durations of nystagmus and non-nystagmus data within each file, and whether or not that file contains negative Dix-Hallpike tests.
| File ID | Subj. ID | Non-nystagmus (hh:mm:ss) | Nystagmus (hh:mm:ss) | Contains neg. Dix-Hallpikes |
|---|---|---|---|---|
| 1 | 1, 2 | 00:16:28 | 00:00:00 | Yes |
| 2 | 3 | 01:48:39 | 00:00:00 | Yes |
| 3 | 3 | 24:01:15 | 00:00:00 | Yes |
| 4 | 4 | 00:23:18 | 00:00:25 | No |
| 5 | 5 | 24:01:15 | 00:00:30 | No |
| 6 | 5 | 00:08:18 | 00:00:19 | No |
| 7 | 5 | 00:23:32 | 00:00:11 | No |
| 8 | 5 | 00:28:16 | 00:00:31 | No |
| 9 | 5 | 24:01:03 | 00:00:10 | No |
| 10 | 5 | 24:00:10 | 00:00:19 | No |
| 11 | 5 | 24:00:45 | 00:00:08 | No |
| 12 | 5 | 24:01:00 | 00:00:13 | No |
| 13 | 5 | 24:00:39 | 00:00:13 | No |
| Total | 171:34:38 | 00:02:59 |
The data used for each fold of the cross-fold validation experiments. The IDs refer to the files listed in Table 1.
| Fold # | Training file IDs | Testing file IDs | Testing subj. IDs |
|---|---|---|---|
| 1 | 3, 4, 6, 7, 8, 9, 10, 11, 12, 13 | 1, 2, 5 | 1, 2, 3, 5 |
| 2 | 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 | 3 | 3 |
| 3 | 3, 5, 6, 7, 8, 9, 10, 11, 12, 13 | 4 | 4 |
| 4 | 3, 4, 5, 7, 8, 9, 10, 11, 12, 13 | 6 | 5 |
| 5 | 3, 4, 5, 6, 8, 9, 10, 11, 12, 13 | 7 | 5 |
| 6 | 3, 4, 5, 6, 7, 9, 10, 11, 12, 13 | 8 | 5 |
| 7 | 3, 4, 5, 6, 7, 8, 10, 11, 12, 13 | 9 | 5 |
| 8 | 3, 4, 5, 6, 7, 8, 9, 11, 12, 13 | 10 | 5 |
| 9 | 3, 4, 5, 6, 7, 8, 9, 10, 12, 13 | 11 | 5 |
| 10 | 3, 4, 5, 6, 7, 8, 9, 10, 11, 13 | 12 | 5 |
| 11 | 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 | 13 | 5 |
Fig. 3Block diagram of nystagmus detection system. Input recognition features are combined into either a 2D matrix or multi-channel 1D vector.
Fig. 4The 2D Convolutional Neural Network architecture used in our experiments. ‘X’ denotes input samples.
Fig. 5An illustration of how each network output is combined by the ensemble classifier. Networks NN1 to NN5 produce a classification for frames f1 to fN. Positive classifications shown in yellow. The Ensemble output is determined by the majority vote for each frame. In this example, NN1's positive classification of f1 does not propagate through to the Ensemble output. By contrast, four networks have classified f4 as a positive example of nystagmus, and therefore this class wins by majority vote and is present in the Ensemble output.
Results of a frame-level classification task for four different CNN configurations: A 1D CNN, and three experiments using a 2D CNN. All experimental results were obtained using a five-network ensemble and the same processes as described in Section 2. The 1D CNN experiment did not use the sieve filter step, as its inclusion removed all true positive detections. When calculating mean and standard error of scores, we assumed a score of 1.00 for fold #2 in cases where no false positive detections were made, as the fold contains no examples of nystagmus.
| Experiment # | tp | tn | fp | fn | Sensitivity (%) | Specificity (%) | Mean (SE) | |
|---|---|---|---|---|---|---|---|---|
| 1D CNN baseline: velocity & accelerometer features | ||||||||
| 1 | 13 | 222261 | 272 | 128 | 9 | 100 | 0.06 | 0.21 (0.09) |
| 2D CNN: eye-movement features | ||||||||
| 2 | 0 | 222483 | 50 | 141 | 0 | 100 | 0.00 | 0.09 (0.09) |
| 2D CNN: accelerometer features | ||||||||
| 3 | 56 | 221963 | 570 | 85 | 40 | 100 | 0.15 | 0.26 (0.08) |
| 2D CNN: velocity &accelerometer features | ||||||||
| 4 | 73 | 222515 | 18 | 68 | 52 | 100 | 0.63 | 0.63 (0.09) |
tp = true positive, tn = true negative, fp = false positive, fn = false negative.
Frame-level results for the individual networks used in the ensemble configuration to produce the results shown for Exp. #4 in Table 3.
| Network # | tp | tn | fp | fn | Sensitivity (%) | Specificity (%) | Mean (SE) | |
|---|---|---|---|---|---|---|---|---|
| 1 | 51 | 222457 | 76 | 90 | 36 | 100 | 0.38 | 0.42 (0.11) |
| 2 | 50 | 222491 | 42 | 91 | 35 | 100 | 0.43 | 0.37 (0.11) |
| 3 | 66 | 222469 | 64 | 75 | 47 | 100 | 0.49 | 0.50 (0.09) |
| 4 | 64 | 222146 | 387 | 77 | 45 | 100 | 0.22 | 0.40 (0.09) |
| 5 | 75 | 222502 | 31 | 66 | 53 | 100 | 0.61 | 0.63 (0.09) |
tp = true positive, tn = true negative, fp = false positive, fn = false negative.
Results for the individual folds summarised in the results for Exp. #4 in Table 3.
| Fold # | tp | tn | fp | fn | Sens. (%) | Spec. (%) | |
|---|---|---|---|---|---|---|---|
| 1 | 3 | 39343 | 6 | 21 | 12 | 100 | 0.18 |
| 2 | 0 | 1096 | 0 | 0 | - | 100 | - |
| 3 | 16 | 563 | 3 | 7 | 70 | 99 | 0.76 |
| 4 | 6 | 196 | 0 | 10 | 38 | 100 | 0.55 |
| 5 | 5 | 577 | 3 | 4 | 56 | 99 | 0.59 |
| 6 | 18 | 693 | 0 | 5 | 78 | 100 | 0.88 |
| 7 | 8 | 35017 | 2 | 0 | 100 | 100 | 0.89 |
| 8 | 0 | 35996 | 0 | 12 | 0 | 100 | 0.00 |
| 9 | 3 | 36010 | 2 | 4 | 43 | 100 | 0.50 |
| 10 | 6 | 35016 | 2 | 3 | 67 | 100 | 0.71 |
| 11 | 8 | 36008 | 0 | 2 | 80 | 100 | 0.89 |
tp = true positive, tn = true negative, fp = false positive, fn = false negative.