Qual é a diferença entre função de decisão, previsão deproba e função de previsão para o problema de regressão logística?

10

Venho examinando a documentação do sklearn, mas não consigo entender o objetivo dessas funções no contexto da regressão logística. Pois decision_functiondiz que é a distância entre o hiperplano e a instância de teste. como essas informações específicas são úteis? e como isso se relaciona com predicte predict-probamétodos?

Sameed
fonte

Respostas:

26

Lembre-se de que a forma funcional da regressão logística é

f(x)=1 11 1+e-(β0 0+β1 1x1 1++βkxk)

É isso que é retornado por predict_proba.

O termo dentro do exponencial

d(x)=β0 0+β1 1x1 1++βkxk

é o que é retornado por decision_function. O "hiperplano" referido na documentação é

β0 0+β1 1x1 1++βkxk=0 0

Essa terminologia é uma reserva das máquinas de vetores de suporte, que literalmente estimam um hiperplano de separação. Para a regressão logística, esse hiperplano é um construto artificial, é o plano de igual probabilidade, onde o modelo determinou que as duas classes-alvo são igualmente prováveis.

A predictfunção retorna uma decisão de classe usando a regra

f(x)>0,5

Correndo o risco de caixa de sabão, a predictfunção tem muito poucos usos legítimos, e vejo isso como um sinal de erro ao revisar outros trabalhos. Eu iria longe o suficiente para chamá-lo de erro de design no próprio sklearn (a predict_probafunção deveria ter sido chamada predicte predictdeveria ter sido chamada predict_class, se é que alguma coisa).

Matthew Drury
fonte
Obrigado pela resposta @ Matthew, mas você pode esclarecer um pouco mais este ponto "Para regressão logística, este hiperplano é um construto artificial, é o plano de igual probabilidade, onde o modelo determinou que as duas classes-alvo são igualmente prováveis . " ?
Sameed
Esta explicação é interessante e útil. Eu gostaria que o sklearn explicasse melhor. O que eu não entendo é para que serve saber o valor de x na função logística 1 / (1 + e ^ -x)? Tudo o que consigo pensar é usar uma função sigmóide diferente como x / (1+ | x |). Há mais? obrigado!
Ldmtwo
Basicamente, a função de decisão deveria ter sido o sigmóide na regressão logística. Corrigir?
3nomis 03/10/19
2
Eu acho que a razão para @Matthew estar em uma caixa de sabão é que usar 0,5 como o limite de previsão é ingênuo. A primeira coisa que se deve fazer é aprender a usar a validação cruzada, curvas ROC e AUC para escolher um limite apropriado c, e usar como função de decisão f (x)> c.
hwrd 4/03