| Literature DB >> 31035731 |
Antonio A Aguileta1,2, Ramon F Brena3, Oscar Mayora4, Erik Molino-Minero-Re5, Luis A Trejo6.
Abstract
Sensors are becoming more and more ubiquitous as their price and availability continue to improve, and as they are the source of information for many important tasks. However, the use of sensors has to deal with noise and failures. The lack of reliability in the sensors has led to many forms of redundancy, but simple solutions are not always the best, and the precise way in which several sensors are combined has a big impact on the overall result. In this paper, we discuss how to deal with the combination of information coming from different sensors, acting thus as "virtual sensors", in the context of human activity recognition, in a systematic way, aiming for optimality. To achieve this goal, we construct meta-datasets containing the "signatures" of individual datasets, and apply machine-learning methods in order to distinguish when each possible combination method could be actually the best. We present specific results based on experimentation, supporting our claims of optimality.Entities:
Keywords: fusion methods; optimal data integration; virtual sensors
Mesh:
Year: 2019 PMID: 31035731 PMCID: PMC6539686 DOI: 10.3390/s19092017
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Architecture of a virtual sensor.
Figure 2Activity recognition workflow (we adapted it from Bulling et al. [49]).
Figure 3Extended activity recognition workflow.
Figure 4Overview of the optimal fusion method prediction approach.
Relationship between the configurations of the fusion methods and the datasets, with respect to significant differences found when these configurations mainly used Random Forest as a classifier.
| Configuration | Voting (Shuffled Features) | Voting | Voting All Features CART-LR-RFC | Multi-View Stacking (Shuffle) | Multi-View Stacking | Multi-View Stacking All Features CART-LR-RFC | Adaboost | |
|---|---|---|---|---|---|---|---|---|
| Dataset | ||||||||
| DailyRlAccRaGy | ✘ | ✘ | ✔ | ✔ | ||||
| PAMAP2 | ✘ | ✘ | ✘ | |||||
| OpportunityLlAccGy | ✘ | ✘ | ✘ | ✘ | ||||
| DailyLaAccRaGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityLuAccLlGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| PAMAP2HaAccAnGy | ✘ | ✘ | ✘ | |||||
| Opportunity | ✘ | ✘ | ✘ | |||||
| DailyLaAccRlGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| DailyLlAccLaGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| PAMAP2AnAccChGy | ✘ | ✘ | ✘ | |||||
| DailyRaAccLaGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityLlAccLuGy | ✘ | ✘ | ✘ | ✘ | ||||
| OpportunityLlAccRuGy | ✘ | ✘ | ✘ | ✘ | ||||
| DailyLlAccRaGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| OpportunityRuAccLuGy | ✘ | ✘ | ✔ | ✘ | ||||
| DailyRlAccToGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| OpportunityRlAccRuGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| DailyLlAccRlGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityLlAccRlGy | ✘ | ✘ | ✘ | ✘ | ||||
| OpportunityLuAccRuGy | ✘ | ✘ | ✘ | ✘ | ||||
| DailyRaAccRlGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| DailyLlAccToGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| DailyRlAccLlGy | ✘ | ✘ | ✘ | ✔ | ||||
| DailySportleftarmAccGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| DailyRaAccLlGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| HAPT | ✘ | ✘ | ✘ | ✔ | ||||
| DailySportLeftLegAccGy | ✘ | ✘ | ✘ | ✔ | ||||
| DailyRaAccToGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| MHealthLaAccRaGy | ✔ | ✔ | ||||||
| OpportunityLuAccRlGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| DailySport | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityBaAccLuGy | ✘ | ✔ | ✔ | |||||
| OpportunityRuAccLlGy | ✘ | ✘ | ✘ | |||||
| MHealthRaAccLaGy | ✔ | ✘ | ✘ | ✔ | ||||
| DailyLaAccToGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityLlAccBaGy | ✘ | ✘ | ✘ | |||||
| DailySportRightLegAccGy | ✘ | ✘ | ✘ | |||||
| MHealth | ✘ | ✘ | ✔ | |||||
| DailyLaAccLlGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| DailyToAccRaGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| OpportunityBaAccLlGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| OpportunityRuAccBaGy | ✘ | ✘ | ✘ | |||||
| OpportunityBaAccRlGy | ✘ | ✘ | ✘ | ✔ | ||||
| PAMAP2ChAccHaGy | ✘ | ✘ | ✘ | ✘ | ||||
| OpportunityRuAccRlGy | ✘ | ✘ | ✘ | ✔ | ✘ | |||
| OpportunityBaAccRuGy | ✘ | ✘ | ✔ | |||||
| PAMAP2ChAccAnGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| PAMAP2AnAccHaGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityRuAccGy | ✘ | ✘ | ✘ | ✘ | ||||
| OpportunityRlAccLlGy | ✘ | |||||||
| OpportunityBaAccGy | ✘ | ✘ | ✘ | ✘ | ||||
| PAMAP2ChAccGy | ✘ | ✘ | ✘ | ✘ | ||||
| DailyToAccLlGy | ✘ | ✘ | ✘ | ✔ | ||||
| DailyToAccLaGy | ✘ | ✘ | ✘ | ✔ | ||||
| OpportunityRlAccBaGy | ✘ | ✘ | ✘ | ✘ | ||||
| OpportunityLuAccBaGy | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| MHealthLaAccGy | ✔ | ✘ | ✔ | ✘ | ||||
| OpportunityRlAccLuGy | ✘ | ✘ | ✘ | ✘ | ||||
| PAMAP2HaAccChGy | ✘ | ✘ | ✘ | ✔ | ✔ | |||
| PAMAP2AnAccGy | ✘ | ✘ | ✘ | ✘ | ✘ | ✘ | ||
| OpportunityLuAccGy | ✘ | ✘ | ✘ | ✘ | ✘ | ✘ | ||
| UDT | ✘ | ✘ | ✘ | ✘ | ✘ | |||
| DailyToAccRlGy | ✘ | ✘ | ✘ | ✔ | ||||
| DailyRlAccLaGy | ✘ | ✘ | ✘ | ✔ | ||||
| DailySportTorsoAccGy | ✘ | ✘ | ✘ | ✔ | ||||
Relationship between the configurations of the fusion methods and the datasets, with respect to the largest significant differences found when these configurations used Random Forest as a classifier.
| Configuration | Voting (Shuffled Features) | Voting | Voting All Features CART-LR-RFC | Multi-View Stacking (Shuffle) | Multi-View Stacking | Multi-View Stacking All Features CART-LR-RFC | Adaboost | |
|---|---|---|---|---|---|---|---|---|
| Dataset | ||||||||
| DailyRlAccRaGy | ✔ | |||||||
| PAMAP2 | ||||||||
| OpportunityLlAccGy | ||||||||
| DailyLaAccRaGy | ✔ | |||||||
| OpportunityLuAccLlGy | ||||||||
| PAMAP2HaAccAnGy | ||||||||
| Opportunity | ||||||||
| DailyLaAccRlGy | ✔ | |||||||
| DailyLlAccLaGy | ✔ | |||||||
| PAMAP2AnAccChGy | ||||||||
| DailyRaAccLaGy | ✔ | |||||||
| OpportunityLlAccLuGy | ||||||||
| OpportunityLlAccRuGy | ||||||||
| DailyLlAccRaGy | ✔ | |||||||
| OpportunityRuAccLuGy | ✔ | |||||||
| DailyRlAccToGy | ✔ | |||||||
| OpportunityRlAccRuGy | ||||||||
| DailyLlAccRlGy | ✔ | |||||||
| OpportunityLlAccRlGy | ||||||||
| OpportunityLuAccRuGy | ||||||||
| DailyRaAccRlGy | ✔ | |||||||
| DailyLlAccToGy | ✔ | |||||||
| DailyRlAccLlGy | ✔ | |||||||
| DailySportleftarmAccGy | ||||||||
| DailyRaAccLlGy | ✔ | |||||||
| HAPT | ✔ | |||||||
| DailySportLeftLegAccGy | ✔ | |||||||
| DailyRaAccToGy | ✔ | |||||||
| MHealthLaAccRaGy | ✔ | |||||||
| OpportunityLuAccRlGy | ||||||||
| DailySport | ✔ | |||||||
| OpportunityBaAccLuGy | ✔ | |||||||
| OpportunityRuAccLlGy | ||||||||
| MHealthRaAccLaGy | ✔ | |||||||
| DailyLaAccToGy | ✔ | |||||||
| OpportunityLlAccBaGy | ||||||||
| DailySportRightLegAccGy | ||||||||
| MHealth | ✔ | |||||||
| DailyLaAccLlGy | ✔ | |||||||
| DailyToAccRaGy | ✔ | |||||||
| OpportunityBaAccLlGy | ||||||||
| OpportunityRuAccBaGy | ||||||||
| OpportunityBaAccRlGy | ✔ | |||||||
| PAMAP2ChAccHaGy | ||||||||
| OpportunityRuAccRlGy | ✔ | |||||||
| OpportunityBaAccRuGy | ✔ | |||||||
| PAMAP2ChAccAnGy | ||||||||
| PAMAP2AnAccHaGy | ✔ | |||||||
| OpportunityRuAccGy | ||||||||
| OpportunityRlAccLlGy | ||||||||
| OpportunityBaAccGy | ||||||||
| PAMAP2ChAccGy | ||||||||
| DailyToAccLlGy | ✔ | |||||||
| DailyToAccLaGy | ✔ | |||||||
| OpportunityRlAccBaGy | ||||||||
| OpportunityLuAccBaGy | ||||||||
| MHealthLaAccGy | ✔ | |||||||
| OpportunityRlAccLuGy | ||||||||
| PAMAP2HaAccChGy | ✔ | |||||||
| PAMAP2AnAccGy | ||||||||
| OpportunityLuAccGy | ||||||||
| UDT | ||||||||
| DailyToAccRlGy | ✔ | |||||||
| DailyRlAccLaGy | ✔ | |||||||
| DailySportTorsoAccGy | ✔ | |||||||
Relationship between the Multi-view stacking configuration that shuffles features and the datasets, with respect to the significant differences found when this configuration is compared to the Multi-view stacking configuration that does not shuffle features.
| Configuration | Multi-View Stacking (Shuffle) | |
|---|---|---|
| Dataset | ||
| DailyRlAccRaGy | ||
| DailyLaAccRaGy | ||
| DailyLaAccRlGy | ||
| DailyLlAccLaGy | ||
| DailyRaAccLaGy | ||
| DailyLlAccRaGy | ||
| OpportunityRuAccLuGy | ||
| DailyRlAccToGy | ||
| DailyLlAccRlGy | ||
| DailyRaAccRlGy | ||
| DailyLlAccToGy | ||
| DailyRlAccLlGy | ||
| DailyRaAccLlGy | ||
| HAPT | ||
| DailySportLeftLegAccGy | ✔ | |
| DailyRaAccToGy | ||
| MHealthLaAccRaGy | ✔ | |
| DailySport | ✔ | |
| MHealthRaAccLaGy | ✔ | |
| DailyLaAccToGy | ||
| MHealth | ||
| DailyLaAccLlGy | ||
| DailyToAccRaGy | ||
| OpportunityBaAccRlGy | ✔ | |
| OpportunityRuAccRlGy | ||
| OpportunityBaAccRuGy | ✔ | |
| PAMAP2AnAccHaGy | ||
| DailyToAccLlGy | ✔ | |
| DailyToAccLaGy | ||
| MHealthLaAccGy | ✔ | |
| PAMAP2HaAccChGy | ||
| DailyToAccRlGy | ✔ | |
| DailyRlAccLaGy | ||
| DailySportTorsoAccGy | ✔ | |
Summary of the significant differences between the best of the configurations that include Multi-view stacking and the best of the configurations that include Voting.
| Configuration | The Best Multi-View Stacking | The Best Voting | Comparison | |
|---|---|---|---|---|
| Dataset | ||||
| DailyRlAccRaGy | MultiViewStackingNotShuffle | VoteAllFeatures | ✔ | |
| DailyLaAccRaGy | MultiViewStacking | Vote | ✔ | |
| DailyLaAccRlGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyLlAccLaGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyRaAccLaGy | MultiViewStacking | Vote | ✔ | |
| DailyLlAccRaGy | MultiViewStackingNotShuffle | VoteAllFeatures | ✔ | |
| OpportunityRuAccLuGy | MultiViewStacking | Vote | ✔ | |
| DailyRlAccToGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyLlAccRlGy | MultiViewStacking | Vote | ✔ | |
| DailyRaAccRlGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyLlAccToGy | MultiViewStacking | Vote | ✔ | |
| DailyRlAccLlGy | MultiViewStackingNotShuffle | VoteAllFeatures | ✔ | |
| DailyRaAccLlGy | MultiViewStacking | Vote | ✔ | |
| HAPT | MultiViewStacking | Vote | ✔ | |
| DailySportLeftLegAccGy | MultiViewStacking | Vote | ✔ | |
| DailyRaAccToGy | MultiViewStacking | Vote | ✔ | |
| MHealthLaAccRaGy | MultiViewStacking | Vote | ||
| DailySport | MultiViewStacking | VoteAllFeatures | ✔ | |
| MHealthRaAccLaGy | MultiViewStacking | Vote | ||
| DailyLaAccToGy | MultiViewStacking | Vote | ✔ | |
| MHealth | MultiViewStacking | Vote | ||
| DailyLaAccLlGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyToAccRaGy | MultiViewStacking | Vote | ✔ | |
| OpportunityBaAccRlGy | MultiViewStacking | Vote | ✔ | |
| OpportunityRuAccRlGy | MultiViewStacking | Vote | ✔ | |
| OpportunityBaAccRuGy | MultiViewStacking | VoteAllFeatures | ✔ | |
| PAMAP2AnAccHaGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyToAccLlGy | MultiViewStacking | Vote | ✔ | |
| DailyToAccLaGy | MultiViewStacking | Vote | ✔ | |
| MHealthLaAccGy | MultiViewStacking | Vote | ||
| PAMAP2HaAccChGy | MultiViewStackingNotShuffle | Vote | ✔ | |
| DailyToAccRlGy | MultiViewStacking | Vote | ✔ | |
| DailyRlAccLaGy | MultiViewStackingNotShuffle | VoteAllFeatures | ✔ | |
| DailySportTorsoAccGy | MultiViewStacking | Vote | ✔ | |
Important data on the Fingerprint dataset.
| Dataset | Dimensions | Class Distribution | |||
|---|---|---|---|---|---|
| Aggregation | Multi-View | Multi-View | Adaboost | ||
| Stacking | Stacking NotShuffle | ||||
| Fingerprint | (65, 210) | 30 | 23 | 11 | 1 |
Balanced Fingerprint dataset.
| Dataset | Dimensions | Class Distribution | |||
|---|---|---|---|---|---|
| Aggregation | Multi-View | Multi-View | Adaboost | ||
| Stacking | Stacking NotShuffle | ||||
| Fingerprint | (120, 210) | 30 | 30 | 30 | 30 |
Confusion matrix of Multi-view stacking with RFC on a Fingerprint Dataset.
| Label | Adaboost | Aggregation | Multi-View Stacking | Multi-View Stacking NotShuffle |
|---|---|---|---|---|
| Adaboost | 30 | 0 | 0 | 0 |
| Aggregation | 1 | 24 | 2 | 3 |
| MultiViewStacking | 0 | 2 | 24 | 4 |
| MultiViewStackingNotShuffle | 0 | 1 | 0 | 29 |
Metrics of Multi-view stacking with RFC on the Fingerprint Dataset.
| Label | Precision | Recall | f1-Score | Support |
|---|---|---|---|---|
| Adaboost | 0.97 | 1.00 | 0.98 | 30 |
| Aggregation | 0.89 | 0.80 | 0.84 | 30 |
| MultiViewStacking | 0.92 | 0.80 | 0.86 | 30 |
| MultiViewStackingNotShuffle | 0.81 | 0.97 | 0.88 | 30 |
| avg/total | 0.90 | 0.89 | 0.89 | 120 |