Adicionando pesos para conjuntos de dados altamente inclinados na regressão logística

9

Estou usando uma versão padrão da regressão logística para ajustar minhas variáveis ​​de entrada às variáveis ​​de saída binária.

No entanto, no meu problema, as saídas negativas (0s) são muito superiores às saídas positivas (1s). A proporção é 20: 1. Então, quando eu treino um classificador, parece que mesmo os recursos que sugerem fortemente a possibilidade de uma saída positiva ainda têm valores muito baixos (altamente negativos) para os parâmetros correspondentes. Parece-me que isso acontece porque existem muitos exemplos negativos puxando os parâmetros na direção deles.

Então, eu estou querendo saber se posso adicionar pesos (digamos, usando 20 em vez de 1) para os exemplos positivos. É provável que isso se beneficie? E se sim, como devo adicionar os pesos (nas equações abaixo).

A função de custo é semelhante à seguinte:

J=(1/m)i=1mylog(h(xθ))+(1y)(1log(h(xθ)))

O gradiente dessa função de custo (wrt ) é:θ

grad=((h(xθ)y)X)

Aqui = número de casos de teste, = matriz de recursos, = vetor de saída, = função sigmóide, = parâmetros que estamos tentando aprender.x y h θmxyhθ

Finalmente, corro a descida do gradiente para encontrar o menor possível. A implementação parece funcionar corretamente.J

arahant
fonte
Olá, tenho exatamente o mesmo problema que você descreveu. Nos meus dados, muitos exemplos são negativos e muito poucos positivos, e para mim é mais importante classificar corretamente o positivo, mesmo que isso signifique classificar erroneamente alguns negativos. Parece que também estou aplicando os mesmos métodos que você, pois estou usando as mesmas funções de custo e equações de gradiente. Até agora, fiz alguns testes e obtive os seguintes resultados: - Com 7 parâmetros , tamanho da amostra de treinamento: 225000 , tamanho da amostra de teste: 75000 resultados: precisão de 92% , embora nos casos positivos apenas 11% w
Cartz
1
O que você está fazendo é confundir uma função de perda com probabilidade máxima. A mera não ponderada está fazendo a "coisa certa" de uma perspectiva inferencial e refletindo o quão raro é o resultado para cada especificação covariável. Você também pode ter separação - isso aconteceria com um conjunto específico de covariáveis ​​que podem prever perfeitamente a resposta nos dados de treinamento - isso levaria a grandes valores negativos.
probabilityislogic
2
A classificação não é uma boa meta e não é a maneira como a regressão logística foi desenvolvida. É a noção de classificação que causa todos os problemas listados aqui. Atenha-se probabilidades previstas e regras de pontuação precisão adequadas
Frank Harrell
1
@arahant Isso é apenas parcialmente verdade. Uma regressão logística binária com um link logit ainda é válida, pois os coeficientes em suas covariáveis ​​são MLE e refletem o efeito dessas variáveis ​​nas chances da classe 1 em comparação à classe 0. No entanto, em um projeto de controle de caso, a interceptação é sempre fixo para refletir a proporção da classe 1 para a classe 0, e é perfeitamente válido ajustar o termo de interceptação para atribuir classes de acordo com, por exemplo, alguma função de custo de classificação incorreta ou algum outro processo, porque isso não altera os coeficientes em variáveis.
Sycorax diz Restabelecer Monica
1
De onde alguém tirou a ideia de que um ponto de corte é necessário / desejado / desejável?
31714 Frank-Heller-

Respostas:

8

Isso não seria mais uma probabilidade máxima. Uma distribuição tão extrema de só apresenta problemas se você estiver usando um classificador, ou seja, se estiver computando a proporção classificada corretamente, uma regra de pontuação inadequada. As estimativas de probabilidade da probabilidade máxima padrão são válidas. Se o número total de "positivos" for menor que 15 vezes o número de variáveis ​​candidatas, a estimativa da probabilidade máxima penalizada poderá estar em ordem.Y

Frank Harrell
fonte
Frank, há uma referência ou algo para apoiar seus detalhes "15 vezes ..."? Eu tenho desequilíbrio semelhante em alguns dados que estou usando regressão logística para substituir um método ROC que alguns outros pesquisadores desenvolveram. Recentemente, deparei com o viés de amostra pequena e adicionei uma opção para a redução de viés do Firth como uma opção adequada no meu código / pacote. Enquanto escrevo isso para um diário, seria útil ter algo a citar ao longo de regras práticas como essa. Desculpas se a referência for o seu livro do RMS, pois está nas minhas prateleiras, mas ainda não o procurei.
Gavin Simpson
Existem documentos sobre o viés de pequenas amostras e o valor da penalização do Firth. Eu não tenho esses à mão. Em relação a 15: 1, consulte biostat.mc.vanderbilt.edu/wiki/pub/Main/FrankHarrell/…
Frank Harrell
Obrigado Frank - as questões 15: 1 foram as que mais procuraram. Tenho algumas publicações sobre o viés de pequenas amostras e o método de Firth - mas se você tivesse algo em mãos, ficaria muito grato se você me dissesse o que era.
Gavin Simpson
3
Apenas no caso de alguém mais interpretar mal o que foi dito acima, como eu fiz primeiro. O 20: 1 na questão é a proporção de observações negativas para positivas. O 15: 1 na resposta de Frank Harrell é outra coisa: a proporção de observações positivas para variáveis ​​independentes candidatas.
23413 Adam Bailey
Uma distribuição extrema também apresenta um problema aumentando a chance de separação quase completa, especialmente se você tiver preditores categóricos. A penalização ajuda aqui também.
probabilityislogic
3

Em casos como esse, geralmente é melhor usar um link flexível, em vez do link logístico, que pode capturar essa assimetria. Por exemplo, um desvio normal, GEV , sinh-arcsinh , e as referências nele. Existem muitos outros, mas não posso postar mais de 2 links.

Tyrion
fonte
Você pode fornecer alguma explicação para outras funções de link que são melhores?
DW