Machine Learning para prever probabilidades de classe


20

Estou procurando classificadores que produzam probabilidades que exemplos pertencem a uma das duas classes.

Conheço regressão logística e Bayes ingênuo, mas você pode me falar de outras pessoas que trabalham de maneira semelhante? Ou seja, classificadores que prevêem não as classes às quais os exemplos pertencem, mas a probabilidade de os exemplos se ajustarem a uma classe específica?

Pontos de bônus por quaisquer pensamentos que você possa compartilhar sobre as vantagens e desvantagens desses diferentes classificadores (incluindo regressão logística e Bayes ingênuo). Por exemplo, existem alguns melhores para a classificação de várias classes?

Respostas:


5

O SVM está intimamente relacionado à regressão logística e pode ser usado para prever as probabilidades também com base na distância do hiperplano (a pontuação de cada ponto). Você faz isso fazendo o mapeamento de pontuação -> probabilidade de alguma maneira, o que é relativamente fácil, pois o problema é unidimensional. Uma maneira é ajustar uma curva S (por exemplo, a curva logística ou sua inclinação) aos dados. Outra maneira é usar a regressão isotônica para ajustar uma função de distribuição cumulativa mais geral aos dados.

Além do SVM, você pode usar uma função de perda adequada para qualquer método que possa ser ajustado usando métodos baseados em gradiente, como redes profundas.

Prever probabilidades não é algo levado em consideração atualmente ao projetar classificadores. É um extra que distrai o desempenho da classificação e, portanto, é descartado. No entanto, você pode usar qualquer classificador binário para aprender um conjunto fixo de probabilidades de classificação (por exemplo, "p em [0, 1/4] ou [1/4, 1/2] ou ...") com o " sondagem "redução de Langford e Zadrozny.


4
"Predizer probabilidades não é algo levado em consideração atualmente ao projetar classificadores". Não estou certo se isso era verdade em 2013, mas é quase certamente falso em 2018.
Matthew Drury

9

Outra possibilidade são redes neurais, se você usar a entropia cruzada como o custo funcional com unidades de saída sigmoidais. Isso fornecerá as estimativas que você está procurando.

As redes neurais, bem como a regressão logística, são classificadores discriminativos, o que significa que eles tentam maximizar a distribuição condicional nos dados de treinamento. Assintoticamente, no limite de amostras infinitas, ambas as estimativas se aproximam do mesmo limite.

Você encontrará uma análise detalhada sobre essa mesma questão neste documento . A idéia principal é que, embora o modelo generativo tenha um erro assintótico mais alto, ele pode abordar esse erro assintótico muito mais rapidamente do que o modelo discriminativo. Portanto, qual deles escolher depende do seu problema, dos dados disponíveis e dos seus requisitos específicos.

Por fim, considerar as estimativas das probabilidades condicionais como uma pontuação absoluta na qual basear as decisões (se é isso que você procura) não faz muito sentido em geral. O importante é considerar, dada uma amostra concreta, as melhores classes de candidatos geradas pelo classificador e comparar as probabilidades associadas. Se a diferença entre as duas melhores pontuações for alta, significa que o classificador está muito confiante em sua resposta (não necessariamente correta).


2

Existem muitos - e o que funciona melhor depende dos dados. Existem também várias maneiras de trapacear - por exemplo, você pode executar a calibração de probabilidade nas saídas de qualquer classificador que dê uma aparência de pontuação (ou seja: um produto escalar entre o vetor de peso e a entrada). O exemplo mais comum disso é chamado de escala de Platt.

Há também a questão da forma do modelo subjacente. Se você tiver interações polinomiais com seus dados, a regressão logística de baunilha não poderá modelá-los bem. Mas você pode usar uma versão do kernel da regressão logística para que o modelo se ajuste melhor aos dados. Isso geralmente aumenta a "qualidade" das saídas de probabilidade, pois você também está melhorando a precisão do classificador.

Geralmente, a maioria dos modelos que fornecem probabilidades geralmente usa uma função logística, portanto pode ser difícil comparar. Apenas tende a funcionar bem na prática, as redes bayesianas são uma alternativa. Naive Bayes apenas faz uma suposição simplista demais para que suas probabilidades sejam boas - e isso é facilmente observado em qualquer conjunto de dados de tamanho razoável.

No final, geralmente é mais fácil aumentar a qualidade de suas estimativas de probabilidade, escolhendo o modelo que pode representar melhor os dados. Nesse sentido, não importa muito como você obtém as probabilidades. Se você conseguir 70% de precisão com regressão logística e 98% com um SVM - apenas fornecer uma probabilidade de "total confiança" fará com que os resultados sejam "melhores" pela maioria dos métodos de pontuação, mesmo que não sejam realmente probabilidades (e então você pode fazer a calibração que mencionei antes, tornando-a realmente melhor).

A mesma pergunta no contexto de não conseguir obter um classificador preciso é mais interessante, mas não tenho certeza se alguém estudou / comparou nesse cenário.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.