As respostas das referências,
- O(d2n) para regressão de menor ângulo
- O(dn) para descida de coordenadas
, estão corretas.
A diferença é que
As equações LARS são escritas de forma fechada e encontram uma solução exata
(e fazendo isso percorrendo todo o caminho possível λ enquanto a complexidade computacional está escalando o mesmo que encontrar a solução do problema dos mínimos quadrados comuns, que também é escalado como )O(d2n)
enquanto
descida de coordenadas é um esquema iterativo para aproximar a solução. O passo referido (cujos custos computacionais escalam como ) é "apenas" um único passo de aproximação, convergindo / 'descendo' mais perto do mínimo do problema do LASSO.O(dn)
O LARS usa (exatamente) etapas para encontrar a solução (com a complexidade do k-ésimo escalonamento como , primeiro termo para encontrar produtos internos no inativo definir e segundo termo para resolver o novo ângulo nas variáveis ativas) . Com a descida de coordenadas, ninguém realmente conhece a taxa de convergência e o número de etapas necessárias / esperadas para a convergência 'suficiente' (ou pelo menos não foi bem descrita).dO((d−k)n+k2)d−kk
Por outro lado, o custo aumenta muito para dimensões altas (embora não haja motivos fortes para esperar que a taxa de convergência da descida coordenada seja escalada de maneira semelhante, = linear, se aumentar). Portanto, a descida coordenada intuitivamente terá um desempenho melhor acima de um determinado limite para . Isso também foi demonstrado por estudos de caso (veja também a referência que mostra que o glmnet tem desempenho melhor do que o LARS quando , enquanto que para os algoritmos têm desempenho semelhante).d2nddd>>100d=100
Escalar o LARS é um problema que envolve complexidade computacional. A descida de coordenadas de escala é um problema que envolve complexidade e convergência computacional .