O limiar de decisão é um hiperparâmetro na regressão logística?

13

As classes previstas da regressão logística (binária) são determinadas usando um limite nas probabilidades de associação à classe geradas pelo modelo. Pelo que entendi, normalmente 0,5 é usado por padrão.

Mas variar o limite alterará as classificações previstas. Isso significa que o limiar é um hiperparâmetro? Se sim, por que (por exemplo) não é possível pesquisar facilmente em uma grade de limites usando o GridSearchCVmétodo scikit-learn (como você faria no parâmetro de regularização C).

usuario
fonte
1
"Pelo que entendi, normalmente 0,5 é usado por padrão." Depende do significado da palavra "típico". Na prática, ninguém deveria estar fazendo isso.
Matthew Drury
3
Muito relacionado: limiar de probabilidade de classificação
Stephan Kolassa 31/01/19
Estritamente, você não quer dizer regressão logística, mas sim um regressor logístico com um limiar para classificação binária (você também pode treinar um regressor para cada uma das duas classes, com um pouco de aleatoriedade ou ponderação semeada para evitar que sejam linearmente dependentes).
smci 31/01/19

Respostas:

12

O limite de decisão cria uma troca entre o número de positivos que você prediz e o número de negativos que você prediz - porque, tautologicamente, aumentar o limite de decisão diminui o número de positivos que você prediz e aumenta o número de negativos que você prediz. você prevê.

O limite de decisão não é um hiperparâmetro no sentido de ajuste do modelo porque não altera a flexibilidade do modelo.

A maneira como você pensa sobre a palavra "sintonia" no contexto do limite de decisão é diferente de como os hiperparâmetros são ajustados. Alterar C e outros hiperparâmetros do modelo altera o modelo(por exemplo, os coeficientes de regressão logística serão diferentes), enquanto o ajuste do limite pode fazer apenas duas coisas: trocar TP por FN e FP por TN. No entanto, o modelo permanece o mesmo, porque isso não altera os coeficientes. (O mesmo vale para modelos que não têm coeficientes, como florestas aleatórias: alterar o limiar não muda nada nas árvores.) Portanto, em um sentido restrito, você está correto ao encontrar o melhor compromisso entre os erros. é "ajuste", mas você está errado ao pensar que a alteração do limite está vinculada a outros hiperparâmetros do modelo de uma maneira otimizada GridSearchCV.

Em outras palavras, alterar o limite de decisão reflete uma escolha de sua parte sobre quantos falsos positivos e falsos negativos que você deseja ter. Considere a hipótese de definir o limite de decisão para um valor completamente implausível como -1. Todas as probabilidades não são negativas; portanto, com esse limite, você preverá "positivo" para cada observação. De uma certa perspectiva, isso é ótimo, porque sua taxa de falsos negativos é 0,0. No entanto, sua taxa de falsos positivos também está no extremo de 1,0, portanto, nesse sentido, sua escolha do limite em -1 é terrível.

O ideal, é claro, é ter um TPR de 1,0 e um FPR de 0,0 e um FNR de 0,0. Mas isso geralmente é impossível em aplicativos do mundo real, então a pergunta se torna "quanto FPR estou disposto a aceitar por quanto TPR?" E essa é a motivação das curvas .

Sycorax diz restabelecer Monica
fonte
Obrigado pela resposta @Sycorax. Você quase me convenceu. Mas não podemos formalizar a idéia de "quanto FPR estou disposto a aceitar por quanto TPR"? por exemplo, usando uma matriz de custos. Se tivermos uma matriz de custos, não seria desejável encontrar o limite ideal por meio do ajuste, como você ajustaria um hiperparâmetro? Ou existe uma maneira melhor de encontrar o limite ideal?
Nick
1
CGridSearchCV
@ Sycorax O limiar e a interceptação (termo de viés) não estão fazendo basicamente a mesma coisa? Ou seja, você pode manter o limite fixo em 0,5, mas altere a interceptação de acordo; isso "mudará o modelo" (conforme seu último comentário), mas terá o mesmo efeito em termos de previsões binárias. Isso está correto? Nesse caso, não tenho certeza de que a estrita distinção entre "alterar o modelo" e "alterar a regra de decisão" seja tão significativa nesse caso.
Ameba diz Reinstate Monica
@amoeba Esta é uma observação instigante. Vou ter que considerar isso. Suponho que sua sugestão seja "manter o limiar em 0,5 e tratar a interceptação como um hiperparâmetro, que você ajusta". Não há nada matematicamente para impedi-lo de fazer isso, exceto a observação de que o modelo não maximiza mais sua probabilidade. Mas alcançar o MLE pode não ser uma prioridade em algum contexto específico.
Sycorax diz Restabelecer Monica
10

Mas variar o limite alterará as classificações previstas. Isso significa que o limiar é um hiperparâmetro?

Sim, sim, meio que. É um hiperparâmetro da sua regra de decisão , mas não a regressão subjacente.

Nesse caso, por que (por exemplo) não é possível pesquisar facilmente em uma grade de limites usando o método GridSearchCV do scikit-learn (como você faria no parâmetro de regularização C).

Este é um erro de design no sklearn. A melhor prática para a maioria dos cenários de classificação é ajustar o modelo subjacente (que prevê probabilidades) usando alguma medida da qualidade dessas probabilidades (como a perda de log em uma regressão logística). Posteriormente, um limite de decisão sobre essas probabilidades deve ser ajustado para otimizar algum objetivo comercial da sua regra de classificação. A biblioteca deve facilitar a otimização do limite de decisão com base em alguma medida de qualidade, mas não acredito que isso aconteça bem.

Eu acho que esse é um dos lugares que a sklearn entendeu errado. A biblioteca inclui um método,, predictem todos os modelos de classificação com limiares em 0.5. Este método é inútil, e eu defendo fortemente que nunca o invoque. É uma pena que o sklearn não esteja incentivando um melhor fluxo de trabalho.

Matthew Drury
fonte
Também compartilho seu ceticismo em relação à predictescolha padrão de 0,5 como método de corte, mas GridSearchCVaceita scorerobjetos que podem ajustar modelos em relação à perda de entropia cruzada fora da amostra. Estou perdendo o seu ponto?
Sycorax diz Restabelecer Monica
Certo, concordou que é uma prática recomendada, mas não incentiva os usuários a ajustar os limites de decisão.
Matthew Drury
Peguei vocês. Eu entendo o que você quer dizer!
Sycorax diz Restabelecer Monica
1
@ Sycorax tentou editar para esclarecer!
Matthew Drury