| Literature DB >> 35361854 |
Gábor Csizmadia1, Krisztina Liszkai-Peres2,3,4, Bence Ferdinandy5, Ádám Miklósi2,5, Veronika Konok2.
Abstract
Human activity recognition (HAR) using machine learning (ML) methods has been a continuously developed method for collecting and analyzing large amounts of human behavioral data using special wearable sensors in the past decade. Our main goal was to find a reliable method that could automatically detect various playful and daily routine activities in children. We defined 40 activities for ML recognition, and we collected activity motion data by means of wearable smartwatches with a special SensKid software. We analyzed the data of 34 children (19 girls, 15 boys; age range: 6.59-8.38; median age = 7.47). All children were typically developing first graders from three elementary schools. The activity recognition was a binary classification task which was evaluated with a Light Gradient Boosted Machine (LGBM) learning algorithm, a decision tree based method with a threefold cross validation. We used the sliding window technique during the signal processing, and we aimed at finding the best window size for the analysis of each behavior element to achieve the most effective settings. Seventeen activities out of 40 were successfully recognized with AUC values above 0.8. The window size had no significant effect. In summary, the LGBM is a very promising solution for HAR. In line with previous findings, our results provide a firm basis for a more precise and effective recognition system that can make human behavioral analysis faster and more objective.Entities:
Mesh:
Year: 2022 PMID: 35361854 PMCID: PMC8971463 DOI: 10.1038/s41598-022-09521-1
Source DB: PubMed Journal: Sci Rep ISSN: 2045-2322 Impact factor: 4.379
The Budapest activity test battery (BATB) and performance of the machine learning methods.
| Activity name | Description | Sequence | Activity type | Accuracy | AUC | Num pos | Pos % |
|---|---|---|---|---|---|---|---|
| Hopscotch | Alternating hopping on single leg and double leg on a hopscotch ground | One jump (from bouncing off till arriving) | Playful | 0.9773 | 0.9871 | 868 | 3.97 |
| Ball | Throwing and catching a ball | From preparing to throw (hand rising) till catching the ball | Everyday | 0.9813 | 0.9569 | 556 | 2.54 |
| Goliath | Walking on the toes, hands stretched upwards | From the first step till the last step; if child stops coding is paused | Playful | 0.9769 | 0.9447 | 765 | 3.50 |
| Drawing | Drawing with a pencil on a paper | As the pencil touches the paper till lifting up the pencil | Playful | 0.9266 | 0.9429 | 2656 | 12.15 |
| Crab | Crawling backward (hands stretched, legs bent, chest upwards) | From the first step till the last step; if child stops coding is paused | Playful | 0.9649 | 0.9396 | 880 | 4.03 |
| Swimming | Lying on stomach, hands moving around like swimming | From the first hand movement till end of the last | Playful | 0.9740 | 0.9380 | 1037 | 4.74 |
| Spider | Crawling forward (hands stretched, legs bent, chest upwards) | From the first step till the last step; if child stops coding is paused | Playful | 0.9573 | 0.9314 | 947 | 4.33 |
| Seal | Legs and hips on the ground, hands stretched, moving only by using hands | From the first step till the last step; if child stops coding is paused | Playful | 0.9461 | 0.9159 | 902 | 4.13 |
| Building blocks | Building a tower from 5 building blocks (coding only when the action is done with the hand smartwatch on it, and only if building a horizontal tower) | From reaching towards a cube till putting it onto another cube | Everyday | 0.9329 | 0.9057 | 1773 | 8.11 |
| Bear | Crawling forward (hands stretched, legs bent, chest downwards) | From the first step till the last step; if child stops coding is paused | Playful | 0.9588 | 0.9020 | 787 | 3.60 |
| Light off | Turning off the light, then releasing hands | From lifting hand till the hand is next to the body in the start position | Everyday | 0.9820 | 0.8984 | 359 | 1.64 |
The table was sorted by AUC with the highest recognition figures at the top. Num pos is the number of occurrences of a given activity in the dataset.
Figure 1Playful activities with the highest AUC values, AUC values as a function of the window size. Quadratic curves fitted (Hopscotch: adj. R2 = 0.240, Ball: adj. R2 = 0.044). A small random jitter was added to the window sizes for better visibility.
Figure 2Playful activities with the highest AUC values, AUC values as a function of the window size. Quadratic curves fitted (Goliath: adj. R2 = 0.007, Drawing: adj. R2 = 0.074, Crab: adj. R2 = 0.084, Swimming: adj. R2 = 0.026). A small random jitter was added to the window sizes for better visibility.
Figure 3Playful activities with the highest AUC values, AUC values as a function of the window size. Quadratic curves fitted (Spider: adj. R2 = 0.091, Seal: adj. R2 = 0.327, Building blocks: adj. R2 = 0.036, Bear: adj. R2 = 0.115). A small random jitter was added to the window sizes for better visibility.
Figure 4The AUC values of two everyday activities as a function of the window sizes and the quadratic curves fitted (Light on: adj. R2 = 0.138, Doorhandle: adj. R2 = 0.088) for the two activities with the highest R2. A small random jitter was added to the window sizes for better visibility.
The Budapest activity test battery (BATB) and performance of the machine learning methods.
| Activity name | Description | Sequence | Activity type | Accuracy | AUC | Num pos | Pos % |
|---|---|---|---|---|---|---|---|
| Dwarf | Walking in squat position | From the first step till the last step; if child stops coding is paused | Playful | 0.9512 | 0.8838 | 1113 | 5.09 |
| Rabbit | Legs between hands, first moving forward hands, then jumping with legs | Begins with hand stretching, ends with completing the jump | Playful | 0.9790 | 0.8711 | 362 | 1.66 |
| Book | Turning pages in a book | From grasping a page till releasing it | Everyday | 0.9571 | 0.8667 | 750 | 3.43 |
| Nose | Touch nose | From reaching towards nose till releasing it | Everyday | 0.9797 | 0.8576 | 503 | 2.30 |
| Light on | Turning on the light, then releasing hands | From lifting hand till the hand is next to the body in the start position | Everyday | 0.9800 | 0.8558 | 375 | 1.72 |
| Door handle | Grabbing door handle, pushing down, releasing hands | From lifting hand till releasing the door handle | Everyday | 0.9686 | 0.8451 | 645 | 2.95 |
| Peck | Peck the skin on the back of the hand | From reaching towards the hand till releasing it | Everyday | 0.9710 | 0.7892 | 535 | 2.45 |
| Frog | Jumping with open legs, hands in the air beside the body | From moving upward till arriving to the lowest point | Playful | 0.9780 | 0.7781 | 346 | 1.58 |
| Glass grabbing | Grabbing a glass | From reaching glass till grabbing | Everyday | 0.9828 | 0.7696 | 268 | 1.23 |
| Pudding eat | Eating a pudding | One mouthful, from putting spoon into the mouth till moving it away from mouth | Everyday | 0.9598 | 0.7678 | 836 | 3.82 |
| Clapping | Clapping hands | From approximating hands till start position | Everyday | 0.9825 | 0.7577 | 208 | 0.95 |
| Drinking | Drinking from a glass | From touching mouth with the glass till releasing it | Everyday | 0.9630 | 0.7473 | 178 | 0.81 |
| Glass lifting | Lifting a glass | From grabbing till lifting the upmost point | Everyday | 0.9802 | 0.6961 | 216 | 0.99 |
| Sock on (same side) | Put on socks | From grasping a sock till the sock is on the foot | Everyday | 0.9752 | 0.6889 | 512 | 2.34 |
| Sock on (other side) | Put on socks | From grasping a sock till the sock is on the foot | Everyday | 0.9697 | 0.6863 | 462 | 2.11 |
The table was sorted by AUC with the highest recognition figures at the top. Num pos is the number of occurrences of a given activity in the dataset.
The Budapest activity test battery (BATB) and performance of the machine learning methods.
| Activity name | Description | Sequence | Activity type | Accuracy | AUC | Num pos | Pos % |
|---|---|---|---|---|---|---|---|
| Toothbrush (other) | Put toothpaste on to the toothbrush | From grabbing toothbrush and toothpaste till finishing putting toothpaste on the toothbrush | Everyday | 0.9720 | 0.6855 | 371 | 1.69 |
| Hand wash | Washing hands | From rubbing hands till hands are under water | Everyday | 0.9814 | 0.6849 | 285 | 1.30 |
| Snack eat | Eating a snack | One bite, from putting snack into the mouth till moving away from mouth | Everyday | 0.9677 | 0.6587 | 288 | 1.32 |
| Knee (same) | Touch knee | From reaching towards knee till releasing it | Everyday | 0.9762 | 0.6478 | 227 | 1.04 |
| Knee (other) | Touch knee | From reaching towards knee till releasing it | Everyday | 0.9171 | 0.6161 | 134 | 0.61 |
| Shoe on (same side) | Put on shoes | From grasping a shoe till the shoe is on the foot | Everyday | 0.9734 | 0.6139 | 417 | 1.91 |
| Pray | Hands together in pray style | From approximating hands till releasing them | Everyday | 0.9740 | 0.5993 | 389 | 1.78 |
| Toothbrush (same) | Put toothpaste on to the toothbrush (same: pushing toothpaste with the hand smartwatch on it) | From grabbing toothbrush and toothpaste till finishing putting toothpaste on the toothbrush | Everyday | 0.9534 | 0.5637 | 226 | 1.03 |
| Glass to mouth | Lifting glass to the mouth | From lifting glass to the mouth till it touches the mouth | Everyday | 0.7987 | 0.5631 | 31 | 0.14 |
| Shoe off (other side) | Take off shoes, opposite side of the body relative to the hand with the smartwatch | From grasping a shoe till the shoe is off the foot | Everyday | 0.8706 | 0.5383 | 53 | 0.24 |
| Shoe on (other side) | Put on shoes | From grasping a shoe till the shoe is on the foot | Everyday | 0.9387 | 0.5366 | 247 | 1.13 |
| Sock off (same side) | Take off socks | From grasping a sock till the sock is off the foot | Everyday | 0.9280 | 0.5110 | 167 | 0.76 |
| Sock off (other side) | Take off socks | From grasping a sock till the sock is off the foot | Everyday | 0.8481 | 0.5 | 115 | 0.53 |
| Shoe off (same side) | Take off shoes, same side of the body relative to the hand with the smartwatch | From grasping a shoe till the shoe is off the foot | Everyday | 0.8130 | 0.5 | 70 | 0.32 |
The table was sorted by AUC with the highest recognition figures at the top. Num pos is the number of occurrences of a given activity in the dataset.