Podemos adicionar um recurso em LinearRegression que possa remover a colinearidade (colinearidade exata) nos dados?
Minha proposta é adicionar um argumento extra como remove_collinearity se for definido pelo usuário, então podemos remover variáveis colineares exatas usando a classificação da matriz ou variáveis colineares usando VIF. Isso pode economizar algum tempo em vez de ir para a regressão de Ridge.
Pode ser melhor ter isso como um pré-processador em sklearn.feature_selection
, dessa forma, pode ser aplicado a vários estimadores. Não tenho certeza se a colinearidade exata é um problema frequente. Talvez um estimador com um limite de correlação de recursos definido pelo usuário?
Não tenho certeza se é algo que é feito com frequência, ao contrário de agrupamento de recursos. O último pode ser feito no scikit-learn com cluster.FeatureAgglomeration, embora talvez a interface com um n_clusters necessário não seja ideal.
cc @glemaitre
Isso está sendo trabalhado como um transformador de seleção de recursos aqui: https://github.com/scikit-learn/scikit-learn/pull/14698
De fato, obrigado. Fechando este problema como uma duplicata de https://github.com/scikit-learn/scikit-learn/issues/13405 então. Se você tiver outros comentários ou sugestões @ divyaprabha123 , comente aqui.
Comentários muito úteis
Isso está sendo trabalhado como um transformador de seleção de recursos aqui: https://github.com/scikit-learn/scikit-learn/pull/14698