Coleção modelos
RLS online
Regressão linear que aprende ponto a ponto: mínimos quadrados recursivos, dentro de uma região de fluxo.
O que o bloco faz
models/rls Atualiza coeficientes ponto a ponto e emite previsão anterior ao ponto, valor observado e resíduo. A saída é um fluxo de tabela com previsto, real e resíduo por ponto.
Antes de continuar
Termos que esta página usa, em poucas palavras. As definições completas estão no glossário.
- Variância
- A média dos quadrados das distâncias de cada valor à média: mede o quanto os dados se espalham. O desvio padrão é a raiz quadrada da variância e fica na mesma unidade dos dados.
- Resíduo
- A diferença entre o valor observado e o valor que o modelo ajustado prevê para aquela observação. É nos resíduos que se conferem os pressupostos do modelo: eles devem parecer ruído, sem padrão.
- Modelo linear
- Um modelo em que a resposta é a soma de efeitos das variáveis explicativas, cada um multiplicado por um coeficiente, mais um erro aleatório. Regressão e análise de variância são casos dele; “linear” se refere aos coeficientes, não à forma da curva.
- Fator
- Uma variável explicativa categórica cujo efeito se quer estudar, como adubo, cultivar ou dose. Num experimento fatorial, dois ou mais fatores são combinados.
- Pressuposto
- Uma condição sob a qual o método dá resultados confiáveis, como resíduos normais ou observações independentes. Quando um pressuposto falha, p-valores e intervalos podem ficar errados, mesmo que a conta rode.
Quando usar
Use em região de fluxo quando cada observação precisa atualizar a regressão antes de processar a próxima.
Pressupostos
O modelo é linear e seus coeficientes são fixos no tempo: o RLS sem fator de esquecimento pondera igualmente o passado e o presente.
Se falhar: Para relação que muda com o tempo, ajuste por janelas, ou use o
models/lmem cada período.Os preditores estão em escalas parecidas: a prior difusa
lambda · I(a matriz inicialP0, que diz ao RLS "ainda não sei nada" sobre os coeficientes) fica mal condicionada com colunas de ordens de grandeza diferentes.Se falhar: Escale as colunas num
data/mutateantes.Os mesmos pressupostos de erro do
models/lm(independência, variância constante) valem para interpretar os coeficientes como os de mínimos quadrados.
Configuração
Resposta indica a coluna observada; Preditores lista covariáveis ou fica vazio para usar as demais colunas. Lambda define a incerteza inicial.
Exemplo
library(trama)
reg <- tr_registry()
tr_use("trama.data", registry = reg)
tr_use("trama.models", registry = reg)
tr_flow(reg) |>
tr_add("dados", "models/example", dataset = "cars") |>
tr_add("lotes", "data/to_stream", lote = 1, from = "dados") |>
tr_add("rls", "models/rls", resposta = "dist", preditores = "speed", from = "lotes") |>
tr_add("historico", "data/from_stream", from = "rls")data/to_stream entrega cada carro como ponto; data/from_stream recompõe o histórico das previsões.
Como interpretar
Previsão é calculada antes de incorporar o ponto; resíduo é real menos previsto. Lambda grande representa prior difusa; valor pequeno pode manter viés em direção a zero.
Implementação
trama.models::step_rls()versão 0.6.6Implementação própria da atualização recursiva de mínimos quadrados, comP0 = lambda · Ie simetrização dePa cada passo.
No código O bloco chama trama.models::tr_models_rls_fn(), em trama.models/R/nos_online.R:200.
A conta é implementada pelo próprio trama, sem um pacote R de referência por trás.
Referências
Teoria
- Plackett, R. L. (1950). Some theorems in least squares. Biometrika, 37(1-2), 149-157. doi:10.1093/biomet/37.1-2.149