Apple Watch data engine framework, dataset, and algorithms for human activity recognition.
- Get Started
- Run Data Engine
- Visualized Data Samples
- Human Activity Recognition with Convolutional Neural Network
- Requirements
- References
$ git clone [email protected]:blakete/Wearable-Data-Analysis.git
$ python3 training_data_flow_from_directory.py /path/to/dataset
processing raw dataset
.
. (processes all CSVs in target directories' sub-directories)
.
Successfully processed 100.0% of the dataset
Total samples: 61990.0
Failed samples: 0.0
Successful samples: 61990.0
Classes: ['drive', 'dustbin', 'lay', 'run', 'sit', 'skate', 'stair', 'stand', 'walk']
Samples: [15141. 1004. 15477. 8261. 11659. 185. 532. 3877. 6854.]
Model: "sequential"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
conv2d (Conv2D) (None, 43, 1, 32) 320
_________________________________________________________________
conv2d_1 (Conv2D) (None, 42, 1, 64) 4160
_________________________________________________________________
batch_normalization (BatchNo (None, 42, 1, 64) 256
_________________________________________________________________
flatten (Flatten) (None, 2688) 0
_________________________________________________________________
dense (Dense) (None, 64) 172096
_________________________________________________________________
batch_normalization_1 (Batch (None, 64) 256
_________________________________________________________________
activation (Activation) (None, 64) 0
_________________________________________________________________
dense_1 (Dense) (None, 32) 2080
_________________________________________________________________
batch_normalization_2 (Batch (None, 32) 128
_________________________________________________________________
activation_1 (Activation) (None, 32) 0
_________________________________________________________________
dense_2 (Dense) (None, 7) 231
=================================================================
Total params: 179,527
Trainable params: 179,207
Non-trainable params: 320
Epoch 150/150
62273/62273 [==============================] - 12s 196us/sample - val_loss: 0.1124 - val_accuracy: 0.9593
loss: 0.11244082237378554
accuracy: 0.95932424
- >= Apple A12 or >= iPhone XR
- >= Apple Watch Series 3
- Wearable CoPilot App (coming soon!)