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
OpenGAN: Open-Set Recognition via Open Data Generation

OpenGAN: Open-Set Recognition via Open Data Generation ICCV 2021 (oral) Real-world machine learning systems need to analyze novel testing data that di

Shu Kong 90 Jan 06, 2023
Prevent `CUDA error: out of memory` in just 1 line of code.

🐨 Koila Koila solves CUDA error: out of memory error painlessly. Fix it with just one line of code, and forget it. 🚀 Features 🙅 Prevents CUDA error

RenChu Wang 1.7k Jan 02, 2023
Source code for our paper "Improving Empathetic Response Generation by Recognizing Emotion Cause in Conversations"

Source code for our paper "Improving Empathetic Response Generation by Recognizing Emotion Cause in Conversations" this repository is maintained by bo

Yuhan Liu 24 Nov 29, 2022
Trajectory Prediction with Graph-based Dual-scale Context Fusion

DSP: Trajectory Prediction with Graph-based Dual-scale Context Fusion Introduction This is the project page of the paper Lu Zhang, Peiliang Li, Jing C

HKUST Aerial Robotics Group 103 Jan 04, 2023
Pytorch implementation of the popular Improv RNN model originally proposed by the Magenta team.

Pytorch Implementation of Improv RNN Overview This code is a pytorch implementation of the popular Improv RNN model originally implemented by the Mage

Sebastian Murgul 3 Nov 11, 2022
MMdet2-based reposity about lightweight detection model: Nanodet, PicoDet.

Lightweight-Detection-and-KD MMdet2-based reposity about lightweight detection model: Nanodet, PicoDet. This repo also includes detection knowledge di

Egqawkq 12 Jan 05, 2023
Physics-Aware Training (PAT) is a method to train real physical systems with backpropagation.

Physics-Aware Training (PAT) is a method to train real physical systems with backpropagation. It was introduced in Wright, Logan G. & Onodera, Tatsuhiro et al. (2021)1 to train Physical Neural Networ

McMahon Lab 230 Jan 05, 2023
Code for: Imagine by Reasoning: A Reasoning-Based Implicit Semantic Data Augmentation for Long-Tailed Classification

Imagine by Reasoning: A Reasoning-Based Implicit Semantic Data Augmentation for Long-Tailed Classification Prerequisite PyTorch = 1.2.0 Python3 torch

16 Dec 14, 2022
The hippynn python package - a modular library for atomistic machine learning with pytorch.

The hippynn python package - a modular library for atomistic machine learning with pytorch. We aim to provide a powerful library for the training of a

Los Alamos National Laboratory 37 Dec 29, 2022
[ICCV'2021] Image Inpainting via Conditional Texture and Structure Dual Generation

[ICCV'2021] Image Inpainting via Conditional Texture and Structure Dual Generation

Xiefan Guo 122 Dec 11, 2022
Code for reproducing our paper: LMSOC: An Approach for Socially Sensitive Pretraining

LMSOC: An Approach for Socially Sensitive Pretraining Code for reproducing the paper LMSOC: An Approach for Socially Sensitive Pretraining to appear a

Twitter Research 11 Dec 20, 2022
Hack Camera, Microphone, Location, Clipboard With Just a Link. Also, Get Many Details About Victim's Device. And So On...

An Automated Tool to Hack Victim's Camera, Microphone, Location, Clipboard. Has 2 Extra Features. Version 1.1 Update Fixed Some Major Bugs Data Saving

ToxicNoob 36 Jan 07, 2023
Label-Free Model Evaluation with Semi-Structured Dataset Representations

Label-Free Model Evaluation with Semi-Structured Dataset Representations Prerequisites This code uses the following libraries Python 3.7 NumPy PyTorch

8 Oct 06, 2022
[ICCV'21] Official implementation for the paper Social NCE: Contrastive Learning of Socially-aware Motion Representations

CrowdNav with Social-NCE This is an official implementation for the paper Social NCE: Contrastive Learning of Socially-aware Motion Representations by

VITA lab at EPFL 125 Dec 23, 2022
Pytorch implementation of the unsupervised object discovery method LOST.

LOST Pytorch implementation of the unsupervised object discovery method LOST. More details can be found in the paper: Localizing Objects with Self-Sup

Valeo.ai 189 Dec 25, 2022
CM building dataset Timisoara

CM_building_dataset_Timisoara Date created: Febr-2020 The Timi\c{s}oara Building Dataset - TMBuD - is composed of 160 images with the resolution of 76

Orhei Ciprian 5 Sep 07, 2022
You Only Sample (Almost) Once: Linear Cost Self-Attention Via Bernoulli Sampling

You Only Sample (Almost) Once: Linear Cost Self-Attention Via Bernoulli Sampling Transformer-based models are widely used in natural language processi

Zhanpeng Zeng 12 Jan 01, 2023
source code the paper Fast and Robust Iterative Closet Point.

Fast-Robust-ICP This repository includes the source code the paper Fast and Robust Iterative Closet Point. Authors: Juyong Zhang, Yuxin Yao, Bailin De

yaoyuxin 320 Dec 28, 2022
ncnn is a high-performance neural network inference framework optimized for the mobile platform

ncnn ncnn is a high-performance neural network inference computing framework optimized for mobile platforms. ncnn is deeply considerate about deployme

Tencent 16.2k Jan 05, 2023
Outlier Exposure with Confidence Control for Out-of-Distribution Detection

OOD-detection-using-OECC This repository contains the essential code for the paper Outlier Exposure with Confidence Control for Out-of-Distribution De

Nazim Shaikh 64 Nov 02, 2022