Alguém pode me apontar na direção de um algoritmo online (recursivo) para a regularização de Tikhonov (mínimos quadrados regularizados)?
Em uma configuração offline, eu calcularia usando meu conjunto de dados original, onde é encontrado usando a validação cruzada n vezes. Um novo valor de pode ser previsto para um determinado usando .
Em uma configuração on-line, continuamente desenho novos pontos de dados. Como posso atualizar quando desenho novas amostras de dados adicionais sem fazer um recálculo completo de todo o conjunto de dados (original + novo)?
Respostas:
Seja , entãoM−1n=(XXT+λI)−1
De acordo com a fórmula de Woodbury , temos
Como um resultado,
A média da Polyak indica que você pode usar para aproximar com intervalos de de para . Você pode tentar, no seu caso, selecionar o melhor para sua recursão.M - 1 nηn=n−α α0,51αM−1n1+xTnM−1nxn α 0.5 1 α
Eu acho que também funciona se você aplicar um algoritmo de gradiente em lote:
fonte
Um ponto que ninguém abordou até agora é que geralmente não faz sentido manter o parâmetro de regularização constante à medida que os pontos de dados são adicionados. A razão para isso é que normalmente cresce linearmente com o número de pontos de dados, enquanto o termo de regularização não.λ ∥Xβ−y∥2 ∥λβ∥2
fonte
fonte
fonte
Este procedimento é como https://github.com/joshday/OnlineStats.jl calcula estimativas on-line de regressão linear / de crista.
fonte