Human Activity Recognition

Post on 09-Jul-2015

398 views 1 download

description

The goal of this presentation is show how is possible infer human activity from accelerometer data. The content of this presentation is in portuguese.

Transcript of Human Activity Recognition

Coisas estranhas que podemos fazercom dados coletados em dispositivos

moveis: bye-bye privacidade!

Human Activity Recognition

Fabrıcio J. Barthfabricio.barth@gmail.com

Faculdade BandTec e Watson Group IBM

Novembro de 2014

Exemplos de dispositivos

e dados que podem ser

coletados

2

Celulares

Exemplos de dispositivos e dados que podem ser coletados — Celulares 3

Coleta informacoes sobre:

• Localizacao (latitude e longitude);

• Movimentacao (acelerometro, giroscopio);

• Ambiente (audio, proximidade, luminosidade);

• Social (historico de ligacoes, contatos).

Exemplos de dispositivos e dados que podem ser coletados — Celulares 4

Relogios

Exemplos de dispositivos e dados que podem ser coletados — Relogios 5

Coleta informacoes sobre:

• Frequencia cardıaca;

• Pressao arterial.

Exemplos de dispositivos e dados que podem ser coletados — Relogios 6

Outras aplicacoes (talvez menos uteis)

Exemplos de dispositivos e dados que podem ser coletados — Outras aplicacoes (talvez menos uteis) 7

Monitora atividades fısicas

Exemplos de dispositivos e dados que podem ser coletados — Monitora atividades fısicas 8

Monitora:

• Que atividade esta sendo realizada;

• Qual a duracao;

• Qual a frequencia.

Exemplos de dispositivos e dados que podem ser coletados — Monitora atividades fısicas 9

Disney

Exemplos de dispositivos e dados que podem ser coletados — Disney 10

Monitora:

• Quando entrou e saiu do parque;

• Por onde andou;

• O que e quando comprou;

• Em quais parques foi e quando foi.

Exemplos de dispositivos e dados que podem ser coletados — Disney 11

O que podemos fazer

com os dados coletados?

12

Primeiro exemplo de aplicacao [2]

O que podemos fazer com os dados coletados? — Primeiro exemplo de aplicacao [2] 13

O objetivo deste exemplo e construir um classificador

capaz de dizer que atividade (sitting, sitting down,

standing, standing up, walking) uma pessoa esta

realizando a partir de dados coletados de acelerometros

presentes no corpo desta pessoa.

O que podemos fazer com os dados coletados? — Primeiro exemplo de aplicacao [2] 14

Pipeline do processo para reconhecimentode atividades [1]

O que podemos fazer com os dados coletados? — Pipeline do processo para reconhecimento de atividades [1] 15

Dados coletados e filtrados

• Dados coletados a partir de 4 tri-axial acelerometros.

• Foram consideradas janelas de tempo de 1 segundo,

com overlapping de 150ms.

• Medidas de roll, pitch e modulo de aceleracao foram

adquiridas.

• A amostra dentro da janela de tempo foi agrupada e

atributos foram gerados (i.e., variancia, media).

• Foram filtrados 12 atributos finais - tres para cada

acelerometro.

O que podemos fazer com os dados coletados? — Dados coletados e filtrados 16

Construcao do classificador

• O dataset possui 165.633 exemplos e 19 atributos:

? user, gender, age, how tall in meters, weight,

body mass index, x1, y1, z1, · · ·, x4, y4, z4, class

• O dataset foi dividido em conjunto de treinamento e

teste, respeitando a proporcao dos valores do atributo

class.

Referencia: http://rpubs.com/fbarth/har01

O que podemos fazer com os dados coletados? — Construcao do classificador 17

Alguns resultados da analise descritiva

O que podemos fazer com os dados coletados? — Alguns resultados da analise descritiva 18

O que podemos fazer com os dados coletados? — Alguns resultados da analise descritiva 19

Algoritmo utilizado para criacao domodelo: Random Forest

O que podemos fazer com os dados coletados? — Algoritmo utilizado para criacao do modelo: Random Forest 20

Criando o modelo...

O que podemos fazer com os dados coletados? — Criando o modelo... 21

O que podemos fazer com os dados coletados? — Criando o modelo... 22

O que podemos fazer com os dados coletados? — Criando o modelo... 23

O que podemos fazer com os dados coletados? — Criando o modelo... 24

Outro modelo

Modelo que utiliza apenas dados do acelerometro localizado na

cintura (Erro estimado: 17.12%)

O que podemos fazer com os dados coletados? — Outro modelo 25

Validando o modelo completo com oconjunto de testes

O que podemos fazer com os dados coletados? — Validando o modelo completo com o conjunto de testes 26

Resultados do trabalho original [2]

O que podemos fazer com os dados coletados? — Resultados do trabalho original [2] 27

Dado o mesmo dataset, sera que epossıvel determinar quem esta realizandoa atividade?

http://fbarth.net.br/humanActivityRecognition/scripts/har case01 user.html

O que podemos fazer com os dados coletados? — Dado o mesmo dataset, sera que e possıvel determinar quem esta

realizando a atividade?

28

Segundo exemplo de aplicacao [1]

Os experimentos foram realizados com um grupo de 30

voluntarios entre 19-48 anos. Cada pessoa executou seis

atividades:

• Walking: andando

• Walking Upstairs: andando escada acima

• Walking Downstairs: andando escada abaixo

• Sitting: sentado

• Standing: em pe

• Laying: deitado

usando um smartphone (Samsung Galaxy II) na cintura.

O que podemos fazer com os dados coletados? — Segundo exemplo de aplicacao [1] 29

Com base nos sensores do smartphone, acelerometro e

giroscopio, foram capturados a aceleracao linear nos tres eixos e

a velocidade angular nos tres eixos.

O que podemos fazer com os dados coletados? — Segundo exemplo de aplicacao [1] 30

Adquirindo os dados

http://rpubs.com/fbarth/har02

O que podemos fazer com os dados coletados? — Adquirindo os dados 31

Separando os dados

O que podemos fazer com os dados coletados? — Separando os dados 32

Construindo o modelo

O que podemos fazer com os dados coletados? — Construindo o modelo 33

Construindo o modelo

O que podemos fazer com os dados coletados? — Construindo o modelo 34

Validando o modelo

O que podemos fazer com os dados coletados? — Validando o modelo 35

Comparando com o artigo original [1]

O que podemos fazer com os dados coletados? — Comparando com o artigo original [1] 36

Kaggle: Accelerometer

Biometric Competition

37

Kaggle: Accelerometer Biometric Competition — 38

Kaggle: Accelerometer Biometric Competition — 39

Google Fit, Google Fit

SDK, funf

40

Google Fit: lancado em 28/10/2014

Google Fit, Google Fit SDK, funf — Google Fit: lancado em 28/10/2014 41

Google Fit SDK

Google Fit, Google Fit SDK, funf — Google Fit SDK 42

funf: Open Sensing Framework

Google Fit, Google Fit SDK, funf — funf: Open Sensing Framework 43

Perguntas?

44

Obrigado!

• Todo o material (slides e codigo) aqui apresentado e

Copyleft

• O codigo fonte e encontrado em

http://github.com/fbarth

• Demais materias sao encontrado em

http://fbarth.net.br

• fabricio dot barth at gmail dot com

Perguntas? — Obrigado! 45

References[1] Davide Anguita, Alessandro Ghio, Luca Oneto, Xavier Parra, and JorgeL. Reyes-Ortiz. Human activity recognition

on smartphones using a multiclass hardware-friendly support vector machine. In Jose Bravo, Ramon Hervas, andMarcela Rodrıguez, editors, Ambient Assisted Living and Home Care, volume 7657 of Lecture Notes in ComputerScience, pages 216–223. Springer Berlin Heidelberg, 2012.

[2] Wallace Ugulino, Debora Cardador, Katia Vega, Eduardo Velloso, Ruy Milidiu, and Hugo Fuks. Wearable comput-ing: Accelerometers’ data classification of body postures and movements. In LelianeN. Barros, Marcelo Finger,AuroraT. Pozo, GustavoA. Gimenenez-Lugo, and Marcos Castilho, editors, Advances in Artificial Intelligence -SBIA 2012, Lecture Notes in Computer Science, pages 52–61. Springer Berlin Heidelberg, 2012.

45-1