Using Language Model to Bootstrap Human Activity Recognition Ambient Sensors Based in Smart Homes

Overview

Using Language Model to Bootstrap Human Activity Recognition Ambient Sensors Based in Smart Homes

This repository is the official implementation of Using Language Model to Bootstrap Human Activity Recognition Ambient Sensors Based in Smart Homes.

Requirements

To install requirements:

To use this repository you should download and install SmartHomeHARLib package

git clone [email protected]:dbouchabou/SmartHomeHARLib.git
pip install -r requirements.txt
cd SmartHomeHARLib
python setup.py develop

Embeddings Training

To train Embedding model(s) of the paper, run this command:

To train a Word2Vec model on a dataset, run this command:

python Word2vecEmbeddingExperimentations.py --d cairo

To train a ELMo model on a dataset, run this command:

python ELMoEmbeddingExperimentations.py --d cairo

Activity Sequences Classification Training And Evaluation

To train Classifier(s) model(s) of the paper, run this command:

python PretrainEmbeddingExperimentations.py --d cairo --e bi_lstm --c config/no_embedding_bi_lstm.json
python PretrainEmbeddingExperimentations.py --d cairo --e liciotti_bi_lstm --c config/liciotti_bi_lstm.json
python PretrainEmbeddingExperimentations.py --d cairo --e w2v_bi_lstm --c config/cairo_bi_lstm_w2v.json
python PretrainEmbeddingExperimentations.py --d cairo --e elmo_bi_lstm --c config/cairo_bi_lstm_elmo_concat.json

Results

Our model achieves the following performance on :

Three CASAS datasets

Aruba Aruba Aruba Aruba Milan Milan Milan Milan Cairo Cairo Cairo Cairo
No Embedding Liciotti W2V ELMo No Embedding Liciotti W2V ELMo No Embedding Liciotti W2V ELMo
Accuracy 95.01 96.52 96.59 96.76 82.24 90.54 88.33 90.14 81.68 84.99 82.27 90.12
Precision 94.69 96.11 96.23 96.43 82.28 90.08 88.28 90.20 80.22 83.17 82.04 88.41
Recall 95.01 96.50 96.59 96.69 82.24 90.45 88.33 90.31 81.68 82.98 82.27 87.59
F1 score 94.74 96.22 96.32 96.42 81.97 90.02 87.98 90.10 80.49 82.18 81.14 87.48
Balance Accuracy 77.73 79.96 81.06 79.98 67.77 74.31 73.61 78.25 70.09 77.52 69.38 87.00
Weighted Precision 79.75 82.30 82.97 88.64 79.6 82.03 84.42 87.56 68.45 80.03 77.56 86.83
Weighted Recall 77.73 80.71 81.06 79.17 67.77 75.51 73.62 78.75 70.09 73.82 69.38 84.78
Weighted F1 score 77.92 81.21 81.43 82.93 71.81 77.74 76.59 82.26 68.47 74.84 70.95 84.71
Owner
Damien Bouchabou
PhD Candidate in Machine Learning and Human Activities Recognition
Damien Bouchabou
Back to Event Basics: SSL of Image Reconstruction for Event Cameras

Back to Event Basics: SSL of Image Reconstruction for Event Cameras Minimal code for Back to Event Basics: Self-Supervised Learning of Image Reconstru

TU Delft 42 Dec 26, 2022
A program that can analyze videos according to the weights you select

MaskMonitor A program that can analyze videos according to the weights you select 下載 訓練完的 weight檔案 執行 MaskDetection.py 內部可更改 輸入來源(鏡頭, 影片, 圖片) 以及輸出條件(人

Patrick_star 1 Nov 07, 2021
Image process framework based on plugin like imagej, it is esay to glue with scipy.ndimage, scikit-image, opencv, simpleitk, mayavi...and any libraries based on numpy

Introduction ImagePy is an open source image processing framework written in Python. Its UI interface, image data structure and table data structure a

ImagePy 1.2k Dec 29, 2022
This project aim to create multi-label classification annotation tool to boost annotation speed and make it more easier.

This project aim to create multi-label classification annotation tool to boost annotation speed and make it more easier.

4 Aug 02, 2022
Beyond Image to Depth: Improving Depth Prediction using Echoes (CVPR 2021)

Beyond Image to Depth: Improving Depth Prediction using Echoes (CVPR 2021) Kranti Kumar Parida, Siddharth Srivastava, Gaurav Sharma. We address the pr

Kranti Kumar Parida 33 Jun 27, 2022
Picasso: a methods for embedding points in 2D in a way that respects distances while fitting a user-specified shape.

Picasso Code to generate Picasso embeddings of any input matrix. Picasso maps the points of an input matrix to user-defined, n-dimensional shape coord

Pachter Lab 45 Dec 23, 2022
Code for SyncTwin: Treatment Effect Estimation with Longitudinal Outcomes (NeurIPS 2021)

SyncTwin: Treatment Effect Estimation with Longitudinal Outcomes (NeurIPS 2021) SyncTwin is a treatment effect estimation method tailored for observat

Zhaozhi Qian 3 Nov 03, 2022
UDP++ (ECCVW 2020 Oral), (Winner of COCO 2020 Keypoint Challenge).

UDP-Pose This is the pytorch implementation for UDP++, which won the Fisrt place in COCO Keypoint Challenge at ECCV 2020 Workshop. Top-Down Results on

20 Jul 29, 2022
Libtorch yolov3 deepsort

Overview It is for my undergrad thesis in Tsinghua University. There are four modules in the project: Detection: YOLOv3 Tracking: SORT and DeepSORT Pr

Xu Wei 226 Dec 13, 2022
TransVTSpotter: End-to-end Video Text Spotter with Transformer

TransVTSpotter: End-to-end Video Text Spotter with Transformer Introduction A Multilingual, Open World Video Text Dataset and End-to-end Video Text Sp

weijiawu 66 Dec 26, 2022
Data and Code for paper Outlining and Filling: Hierarchical Query Graph Generation for Answering Complex Questions over Knowledge Graph is available for research purposes.

Data and Code for paper Outlining and Filling: Hierarchical Query Graph Generation for Answering Complex Questions over Knowledge Graph is available f

Yongrui Chen 5 Nov 10, 2022
TargetAllDomainObjects - A python wrapper to run a command on against all users/computers/DCs of a Windows Domain

TargetAllDomainObjects A python wrapper to run a command on against all users/co

Podalirius 19 Dec 13, 2022
Unofficial implementation of One-Shot Free-View Neural Talking Head Synthesis

face-vid2vid Usage Dataset Preparation cd datasets wget https://yt-dl.org/downloads/latest/youtube-dl -O youtube-dl chmod a+rx youtube-dl python load_

worstcoder 68 Dec 30, 2022
[CVPR 2021] VirTex: Learning Visual Representations from Textual Annotations

VirTex: Learning Visual Representations from Textual Annotations Karan Desai and Justin Johnson University of Michigan CVPR 2021 arxiv.org/abs/2006.06

Karan Desai 533 Dec 24, 2022
Match SafeGraph POIs with Data collected through a cultural resource survey in Washington DC.

Match SafeGraph POI data with Cultural Resource Places in Washington DC Match SafeGraph POIs with Data collected through a cultural resource survey in

Changjie Chen 1 Jan 05, 2022
Defocus Map Estimation and Deblurring from a Single Dual-Pixel Image

Defocus Map Estimation and Deblurring from a Single Dual-Pixel Image This repository is an implementation of the method described in the following pap

21 Dec 15, 2022
Implementation of CVPR'2022:Reconstructing Surfaces for Sparse Point Clouds with On-Surface Priors

Reconstructing Surfaces for Sparse Point Clouds with On-Surface Priors (CVPR 2022) Personal Web Pages | Paper | Project Page This repository contains

151 Dec 26, 2022
Viperdb - A tiny log-structured key-value database written in pure Python

ViperDB 🐍 ViperDB is a lightweight embedded key-value store written in pure Pyt

17 Oct 17, 2022
💡 Type hints for Numpy

Type hints with dynamic checks for Numpy! (❒) Installation pip install nptyping (❒) Usage (❒) NDArray nptyping.NDArray lets you define the shape and

Ramon Hagenaars 377 Dec 28, 2022
PyTorch Implementation for AAAI'21 "Do Response Selection Models Really Know What's Next? Utterance Manipulation Strategies for Multi-turn Response Selection"

UMS for Multi-turn Response Selection Implements the model described in the following paper Do Response Selection Models Really Know What's Next? Utte

Taesun Whang 47 Nov 22, 2022