Calibrando um classificador otimizado para várias classes


19

Li o artigo de Alexandru Niculescu-Mizil e Rich Caruana, " Obtendo probabilidades calibradas de impulsionar " e a discussão neste tópico. No entanto, ainda estou tendo problemas para entender e implementar a logística ou o dimensionamento de Platt para calibrar a saída do meu classificador impulsionador de várias classes (impulso suave com tocos de decisão).

Conheço um pouco os modelos lineares generalizados e acho que entendo como os métodos de logística e calibração de Platt funcionam no caso binário, mas não sei se sei como estender o método descrito no artigo para o caso de várias classes.

O classificador que estou usando gera o seguinte:

  • = Número de votos que o classificador emite para a classe j na amostra i que está sendo classificadafEujjEu
  • = Classe estimadayEu

Neste ponto, tenho as seguintes perguntas:

P1: Preciso usar um logit multinomial para estimar probabilidades? ou ainda posso fazer isso com regressão logística (por exemplo, de um contra todos )?

P2: Como devo definir as variáveis ​​de destino intermediárias (por exemplo, no dimensionamento de Platt) para o caso de várias classes?

P3: Entendo que isso pode pedir muito, mas alguém estaria disposto a esboçar o pseudocódigo para esse problema? (em um nível mais prático, estou interessado em uma solução no Matlab).


1
ótima pergunta. Também me perguntei como construir a calibração, mesmo se você usar 1 versus o restante do tipo de esquema. Se você criar modelos k usando 1 versus o resto (e existem k classes), você deve / deve normalizá-los de alguma forma para que somarem 1 (por exemplo, dividir cada probabilidade calibrada pela soma de todos os k)?
B_Miner

Respostas:


9

Este é um tópico de interesse prático para mim, então fiz uma pequena pesquisa. Aqui estão dois artigos de um autor que geralmente são listados como referência nesses assuntos.

  1. Transformando as pontuações do classificador em estimativas precisas de probabilidade de várias classes
  2. Reduzindo multiclasse para binário por acoplamento de estimativas de probabilidade

A essência da técnica defendida aqui é reduzir o problema de várias classes a um problema binário (por exemplo, um versus o resto, AKA um contra todos), usar uma técnica como Platt (preferencialmente usando um conjunto de testes) para classificar as pontuações / probabilidades binárias e depois combine-as usando uma técnica como discutido nos documentos (uma é uma extensão do processo de "acoplamento" de Hastie et al.). No primeiro link, os melhores resultados foram encontrados simplesmente normalizando as probabilidades binárias para as que somam 1.

Eu adoraria ouvir outros conselhos e se algum desses técnicos tiver sido implementado na R.


Os links mencionados na resposta estão desatualizados. Últimos links são: citeseerx.ist.psu.edu/viewdoc/... citeseerx.ist.psu.edu/viewdoc/...
Chandra


Ecoando esta resposta. Isso me surpreendeu por algum tempo, mas o trabalho de Zadrozny e Elkan se mostrou útil.
songololo 27/06/19
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.