Estou usando o scikit-learn do Python para treinar e testar uma regressão logística.
O scikit-learn retorna os coeficientes da regressão das variáveis independentes, mas não fornece os erros padrão dos coeficientes. Eu preciso desses erros padrão para calcular uma estatística de Wald para cada coeficiente e, por sua vez, comparar esses coeficientes entre si.
Eu encontrei uma descrição de como calcular erros padrão para os coeficientes de uma regressão logística ( aqui ), mas é um pouco difícil de seguir.
Se você conhece uma explicação simples e sucinta de como calcular esses erros padrão e / ou pode me fornecer um, eu realmente aprecio isso! Não quero dizer código específico (embora fique à vontade para publicar qualquer código que possa ser útil), mas uma explicação algorítmica das etapas envolvidas.
Respostas:
Seu software fornece uma matriz de covariância a parâmetros (ou covariância a variações)? Nesse caso, os erros padrão são a raiz quadrada da diagonal dessa matriz. Você provavelmente deseja consultar um livro didático (ou o google para obter notas de aula universitárias) sobre como obter a matriz para modelos lineares e lineares generalizados.Vβ
fonte
Os erros padrão dos coeficientes do modelo são as raízes quadradas das entradas diagonais da matriz de covariância. Considere o seguinte:
(NOTA: Isso pressupõe um modelo com interceptação.)
A matriz de covariância pode ser escrita como:
Isso pode ser implementado com o seguinte código:
Tudo isso dito,
statsmodels
provavelmente será um pacote melhor para usar se você desejar acessar MUITOS diagnósticos "prontos para uso".fonte
V = np.product(predProbs, axis=1);
covLogit = np.linalg.pinv(np.dot(X_design.T * V), X_design)
Se você estiver interessado em fazer inferência, provavelmente desejará dar uma olhada nos modelos de estatísticas . Erros padrão e testes estatísticos comuns estão disponíveis. Aqui está um exemplo de regressão logística .
fonte