Aqui está um exemplo de por que você desejaria fazê-lo (e aproximadamente como).
Eu tenho três modelos preditivos de preços da habitação: linear, aumento de gradiente, rede neural.
Quero misturá-los em uma média ponderada e encontrar os melhores pesos.
Executo regressão linear e obtenho uma solução com pesos como -3,1, 2,5, 1,5 e alguns interceptos.
Então, o que eu faço usando o sklearn é
blendlasso = LassoCV(alphas=np.logspace(-6, -3, 7),
max_iter=100000,
cv=5,
fit_intercept=False,
positive=True)
E recebo pesos positivos que somam (muito perto) a 1. No meu exemplo, quero o alfa que funciona melhor fora da amostra, para usar o LassoCV com validação cruzada.
Os documentos do sklearn afirmam que você não deve definir alfa como 0 por razões numéricas; no entanto, você também pode usar Lasso () direto e definir o parâmetro alfa o mais baixo possível para obter uma resposta razoável.