Como modelar big data longitudinal?

14

Tradicionalmente, usamos modelo misto para modelar dados longitudinais, ou seja, dados como:

id obs age treatment_lvl yield
1  0   11   M  0.2
1  1   11.5 M  0.5
1  2   12   L  0.6
2  0   17   H  1.2
2  1   18   M  0.9

podemos assumir interceptação ou inclinação aleatória para pessoas diferentes. No entanto, a pergunta que estou tentando resolver envolverá enormes conjuntos de dados (milhões de pessoas, 1 mês de observação diária, ou seja, cada pessoa terá 30 observações), atualmente não sei se existem pacotes que podem fazer esse nível de dados.

Eu tenho acesso ao spark / mahout, mas eles não oferecem modelos mistos, minha pergunta é: existe alguma maneira de modificar meus dados para que eu possa usar o RandomForest ou o SVM para modelar esse conjunto de dados?

Alguma técnica de engenharia de recursos que eu possa usar para ajudar o RF / SVM a explicar a correlação automática?

Muito Obrigado!

Alguns métodos em potencial, mas não tive tempo para escrevê-los

Como posso incluir efeitos aleatórios em um randomForest

Regressão SVM com dados longitudinais

user2926523
fonte
1
o conjunto de dados não é tão grande. 1 milhão de indivíduos com 30 registros, talvez 20 bytes de dados por registro trarão 600 MB. não é nada. qualquer pacote de estatísticas irá lidar com isso
Aksakal quase certamente binário

Respostas:

4

Se você tiver apenas algumas variáveis, como no exemplo, não deverá ter problemas com alguma variante de lme4.

Onde as técnicas de aprendizado de máquina realmente brilham é quando você tem muitas variáveis ​​e deseja modelar não-linearidades e interações entre suas variáveis. Poucas abordagens de ML foram desenvolvidas que podem fazer isso com dados longitudinais. RNNs são uma opção, embora geralmente sejam otimizados para problemas de séries temporais, em vez de dados de painel.

Em princípio, uma rede neural feed-forward é um modelo linear (generalizado), com regressores que são funções não lineares dos dados de entrada. Se os regressores derivados - a camada superior do modelo antes da saída - são considerados a parte não paramétrica, não há nada que o impeça de adicionar uma estrutura paramétrica a ela - talvez na forma de efeitos aleatórios.

No entanto, isso não foi implementado para problemas de classificação, o que suponho que você esteja fazendo porque está interessado no SVM como candidato.

generic_user
fonte
2

Você realmente precisa de florestas aleatórias, NNs etc. para seus dados longitudinais? lme4é capaz de lidar com milhões de indivíduos:

https://cran.r-project.org/web/packages/lme4/vignettes/Theory.pdf

Ele pode lidar facilmente com modelos mistos lineares e, como você pode ver no link, também oferece suporte a modelos mistos não lineares (embora eu não esperasse que fosse rápido também para os modelos não lineares).

DeltaIV
fonte