Sim, é possível usar esses dados de confiança. No entanto, eu não recomendaria a abordagem que você mencionou. Em vez disso, deixe-me sugerir uma abordagem diferente. Na verdade, vou sugerir dois. O primeiro é conceitualmente limpo; o segundo é provavelmente mais fácil de implementar; e provavelmente serão aproximadamente equivalentes na prática.
Ajuste a função de perda
Você pode ajustar a função de perda para refletir as pontuações de confiança que possui nos dados de treinamento.
Em particular, se você estiver usando a perda de entropia cruzada , há uma maneira particularmente limpa de fazer isso. Deixe-me explicar alguns antecedentes da perda de entropia cruzada e depois explicar como. Pensamos no rótulo na instância de treinamento como uma distribuição de probabilidade nos rótulos. Na classificação binária, essa distribuição pode ser representada como um vetor que representa a probabilidade de o rótulo ser 0 e a probabilidade de o rótulo ser 1. Normalmente, recebemos "rótulos físicos": se saiba que o rótulo correto na instância é 0, então isso corresponde à distribuição de probabilidade ; se o rótulo correto for 1, essa é a distribuição(p0 0,p1)p0 0p1x( 1 , 0 )( 0 , 1 ). A perda de entropia cruzada compara a previsão do classificador a essa distribuição.
O bom da perda de entropia cruzada é que ela gera prontamente a comparação de duas distribuições. Portanto, se você tem confiança de que o rótulo correto, por exemplo, é 0, isso corresponde a uma distribuição de probabilidade . Agora, você pode calcular a entropia cruzada da previsão do classificador em relação à distribuição , e essa é a contribuição para a perda da instância de treinamento . Soma isso em todas as instâncias do conjunto de treinamento e você obtém uma função de perda ajustada.0,8x( 0,8 , 0,2 )( 0,8 , 0,2 )x
Agora você pode treinar um classificador minimizando essa função de perda ajustada, que incorporará diretamente todas as informações em suas pontuações de confiança.
Use pesos
Como alternativa, você pode usar pesos para refletir as informações de confiança.
Alguns classificadores permitem especificar um peso para cada instância no conjunto de treinamento. A ideia é que uma imprevisibilidade para uma instância específica seja penalizada pela proporcionalidade ao seu peso; portanto, instâncias com um peso alto são mais importantes para acertar e instâncias com um peso baixo são menos importantes. Ou, de forma equivalente, o procedimento de treinamento se esforça mais para evitar erros em instâncias com um alto peso.
Você pode usar pesos para refletir informações de confiança. Suponha que você tenha um instanciado no conjunto de treinamento que acha que deveria ter o rótulo 0, com confiança . Você adicionaria uma cópia de ao conjunto de treinamento com peso (ou seja, a instância é rótulo é 0) e uma cópia de ao conjunto de treinamento com peso (ou seja, instância é e label é 1). Crie o conjunto de treinamento dessa maneira. Isso dobra o tamanho do seu conjunto de treinamento. Agora treine um classificador, usando esses pesos.x0,8( x , 0 )0,8x( x , 1 )0,2x
Para classificadores que suportam pesos, isso deve ser fácil de implementar.
Pode-se também mostrar que é eficaz e razoável. Por exemplo, ao usar a perda de entropia cruzada para treinar um classificador, essa abordagem usando pesos é equivalente a ajustar a função de perda, conforme destacado acima. Portanto, nesse contexto específico, as duas abordagens são realmente equivalentes.