class: center, middle, inverse, title-slide # Modelagem Robusta de Observações Ausentes em Dados Sensoriados de Apiários ## WCAMA 2021 – XII Workshop de Computação Aplicada à Gestão do Meio Ambiente e Recursos Naturais ###
Daniel de Amaral da Silva
, Antonio Rafael Braga, Juvêncio S. Nobre, Danielo G. Gomes --- <style> .title-slide h1 { font-size: 53px; } .title-slide h2 { font-size: 28px; } .title-slide h3 { font-size: 36px; } .title-slide { background-image: url(./figures/logo.png); background-position: 16% 15%; background-size: 600px; background-color: #fff; padding-left: 100px; /* delete this for 4:3 aspect ratio */ } </style> --- class: inverse, center, middle # Motivação e Contextualização --- # Sistemas de Monitoramento de Colmeias ## Mellisphera Sistema online (*Dashboard*) flexível que possibilita *feedback* com **1 ou mais sensores instalados**. <img src="./figures/mellisphera.PNG" width="85%" style="display: block; margin: auto;" /> --- # Sistemas de Monitoramento de Colmeias ## myBee Sistema (*Dashboard*) que possibilita *feedback* com **2 sensores instalados ** (temperatura e umidade). <img src="figures/mybee.PNG" width="50%" style="display: block; margin: auto;" /> Trabalhos semelhantes com **2+ sensores**: - Kviesis et al. (2015) [**Temperatura e Umidade**] - Marco Giammarini et al. (2015) [**Temperatura e Umidade**] - Fiona Edwards Murphy et al. (2015) [**Temperatura, Umidade e Gases**] - Marković et al. (2016) [**Seis Sensores de Temperatura**] --- # Sistemas de Monitoramento de Colmeias ## Nectar e ApisProtect Sistemas (*Dashboard*) que possibilitam *feedback* com **4 sensores instalados ** (temperatura, umidade, audio e movimento). .pull-left[ <img src="./figures/nectar.jpg" width="75%" style="display: block; margin: auto;" /> ] .pull-right[ <img src="figures/apisprotect.jpg" width="90%" style="display: block; margin: auto;" /> ] --- # Sistemas de Monitoramento de Colmeias ## Grade de Sensores Becher and Moritz (2009) detalha um sistema que possibilita *feedback* através de uma densa grade de 16x16 = **256 sensores instalados** (temperatura). <img src="figures/becher.PNG" width="70%" style="display: block; margin: auto;" /> --- # Sistemas de Monitoramento de Colmeias ## Grade de Sensores Linton et al. (2020) detalha um sistema que possibilita *feedback* através de uma grade de 4x9 = **36 sensores instalados** (temperatura). <img src="figures/grid_top.png" width="30%" style="display: block; margin: auto;" /> --- # Sistemas de Monitoramento de Colmeias ## O Problema As abordagens vistas diferem entre si pela combinação de quantidade e variedade dos sensores. Entretanto, **todas possuem um problema em comum** -- O problema de --- # Modelagem Univariada ## Processos Gaussianos Nosso principal objetivo é mapear uma função sobre o vetor de entradas `\(\mathbf{x}_n\)` de modo que `\(\mathbf{y}_n = f(\mathbf{x}_n)\)` <sup>1</sup>. <img src="./figures/Ativo 1.png" width="85%" style="display: block; margin: auto;" /> .footnote[ [1] Bishop, C. M. (2006). Pattern Recognition and Machine Learning (Information Science and Statistics). Springer-Verlag, Berlin, Heidelberg. ] --- # Modelagem Univariada ## Processos Gaussianos Um Processo gaussiano para regressão modela a forma funcional `\(f\)` por uma distribuição a priori, dada por: .pull-left[ `$$\\[0.25in]$$` `\begin{align} p(f) = \prod_{i=1}^d \mathcal{GP}(f_i; \boldsymbol{\mu}_x, \mathbf{K}_{xx}) \end{align}` `$$\\[0.1in]$$` - `\(\boldsymbol{\mu}_x\)`: vetor de médias, usualmente um vetor de zeros `\(\boldsymbol{\mu} = \mathbf{0}\)`; - `\(\mathbf{K}_{xx}\)`: função de autocovariãncia ou kernel `\(k(x; x')\)` sobre os pares de entradas `\(x\)` e `\(x'\)`. ] -- .pull-right[ <img src="./figures/model.png" width="100%" style="display: block; margin: auto;" /> ] --- # Modelagem Univariada ## Inferência Variacional Quando é possivel calcular a distribuição preditiva (a posteriori) pela definição, há um custo computacional elevado quando o número de observações aumenta. A técnica de inferência variacional aproxima-se diretamente da posteriori em vez de usar a definição, ignorando a necessidade do cálculo da distribuição de probabilidade marginal. A ideia da abordagem de inferência variacional é aproximar a distribuição `\(p(\mathbf{z}|\mathbf{x})\)`, inicialmente desconhecida, através de uma família conhecida de distribuições `\(q(\mathbf{z};\boldsymbol{\lambda})\)` parametrizada por `\(\boldsymbol{\lambda}\)`, pela minimização da divergência `\(\text{KL}(q(\mathbf{z};\boldsymbol{\lambda}) || p(\mathbf{z}|\mathbf{x}))\)`. Essa abordagem equivale a maximizar o limite inferior da evidência (ELBO) `\(\mathcal{L}\)`. `\begin{align} \mathcal{L} = \mathbb{E}_{q(\mathbf{z};\boldsymbol{\lambda})}[\log p(\mathbf{z}|\mathbf{x})] - \text{KL}(q(\mathbf{z};\boldsymbol{\lambda})||p(\mathbf{z}|\mathbf{x})) \end{align}` --- # Modelagem Univariada ## Inferência Variacional <img src="https://miro.medium.com/max/1050/1*XdSqXpBJ3QUbzKlOtDF_zw.png" width="70%" style="display: block; margin: auto;" /> -- A distribuição preditiva `\(p(f|y)\)` não necessariamente possui essa forma, podendo ter diferentes características. --- # Modelagem Multivariada ## Modelo Intrínseco de Corregionalização (ICM) A idéia básica da modelagem multivariada via ICM está na definição da função de autocovariância/kernel do processo gaussiano multivariado, utilizando um kernel de multiplas saídas (*multi-output kernels*). -- Seja `\(\mathbf{B}\)` uma matriz `\(P \times P\)`, simétrica e positíva semidefinida, que representa uma estimativa da correlação entre cada par dos `\(P\)` processos gaussianos, podemos definir a função de kernel do processo gaussiano multivariado como: `\begin{align} \mathbf{K}(\mathbf{x}, \mathbf{x}') = k(\mathbf{x}, \mathbf{x}')\mathbf{B} \end{align}` -- O ICM é um caso específico de um modelo linear de corregionalização (LMC) com `\(Q = 1\)`. Assim, para um par específico de processos gaussianos a função de autocovariância/kernel se torna: `\begin{align} (\mathbf{K}(\mathbf{x}, \mathbf{x}'))_{i, j} = k(\mathbf{x}, \mathbf{x}')b_{ij} \end{align}` --- # Resultados ## Modelo de Processos Gaussianos Corregionalizados <img src="figures/predict_all2.png" width="80%" style="display: block; margin: auto;" /> --- # Resultados ## Modelo de Processos Gaussianos Corregionalizados <img src="figures/AB2.png" width="80%" style="display: block; margin: auto;" /> --- # Resultados ## Modelo de Processos Gaussianos Corregionalizados <img src="figures/CD32.png" width="80%" style="display: block; margin: auto;" /> --- # Resultados ## Métricas do Modelo <img src="figures/table.png" width="50%" style="display: block; margin: auto;" /> --- # Ambiente Experimental - Máquina virtual EC2 da *Amazon Web Services* (AWS)<sup>1</sup> - 32 GB de memória RAM - Xeon 2.3 GHZ - Ambiente Python + Framework GPflow<sup>2</sup> .footnote[ [1] https://aws.amazon.com/pt/ec2 [2] https://github.com/GPflow/GPflow ] --- # Conclusão - Alternativa flexível e robusta para modelagem de observações faltantes em dados provenientes de sistemas com múltiplos sensores; -- - Métricas com erros de predição de 3 a 4 graus na temperatura, com métricas de `\(R^2\)` superiores a 87% em 35 dos 36 sensores; -- - Ideia da incerteza a respeito de uma predição pontual através da distribuição posteriori ou preditiva; -- - Abordagem que pode ser generalizada para qualquer outro sistema de sensoriamento, bastando apenas que o sistema possua múltiplos sensores relacionados de alguma forma. --- # Trabalhos Futuros - Uso de Processos Gaussianos Variacionais Esparsos (SVGP) para reduzir a complexidade computacional; -- - Uso de Funções de Média diferentes de `\(\mathbf{0}\)` para modelar a tendência dos dados; -- - Avaliação em sistemas com com diferentes quantidades e tipos de sensores (umidade, gases, etc.). --- class: center, middle, title-slide-final # Thank you! Check out [smartbee.great.ufc.br](https://http://smartbee.great.ufc.br/) for more!. | | | | :----------------------------------------------------------------------------------------| :--------------------- | | <a href="mailto:danielamaral@alu.ufc.br">.RUred[<i class="fa fa-paper-plane fa-fw"></i>] | danielamaral@alu.ufc.br| | <a href="http://github.com/damarals">.RUred[<i class="fa fa-github fa-fw"></i>] | @damarals | Slides created via the R package [**xaringan**](https://github.com/yihui/xaringan).