Construindo uma função de perda específica do problema

8

Descrição do Problema

Estou iniciando a construção da rede para um problema que eu acho que poderia ter uma função de perda muito mais criteriosa do que uma simples regressão MSE.

Meu problema lida com a classificação de várias categorias ( veja minha pergunta no SO para o que quero dizer com isso), onde há uma distância ou relação definida entre as categorias que devem ser levadas em consideração.

Outro ponto é que o erro não deve ser efetuado pelo número de categorias de tiro presentes. Ou seja, o erro para 5 categorias de disparo com 0,1 de cada uma deve ser igual a 1 categoria de disparo de 0,1. ( disparando, quero dizer que eles são diferentes de zero ou acima de algum limite)


Pontos chave

  • classificação multi-categoria (disparo múltiplo de uma só vez)
  • relações entre categorias
  • A contagem de categorias de disparo não deve afetar a perda:
    • insira a descrição da imagem aqui

Minha tentativa

O erro quadrático médio parece ser um bom lugar para começar:

insira a descrição da imagem aqui

Isso é simplesmente considerar categoria por categoria, que ainda é valiosa no meu problema, mas perde grande parte da imagem.

insira a descrição da imagem aqui

Aqui está minha tentativa de retificar a idéia de distância entre categorias. Em seguida, gostaria de levar em consideração o número de categorias disparadas ( chame: v )

insira a descrição da imagem aqui


Minha pergunta

Eu tenho um histórico muito fraco em estatística; Como resultado, não tenho muitas ferramentas no meu cinto para abordar um problema como este. O tópico abrangente do que estou perguntando parece ser "Ao formar uma função de custo, como combinar várias medidas de custo? Ou que técnicas podemos aplicar para fazer isso?" . Eu também gostaria de ter quaisquer falhas no meu processo de pensamento expostas e melhoradas.

Eu valorizo ​​ser ensinado por que meus erros são erros, em vez de ter alguém que os corrija sem explicação.

Se alguma parte desta pergunta não tiver clareza ou puder ser aprimorada, informe-me.

Aidan Gomez
fonte
Aidan, é bom ver tanto pensamento dedicado à construção de uma função de perda específica do problema. Eu estaria inclinado a ver isso como um problema de matemática, em vez de um problema de estatística. Você está procurando uma função de perda que leva matrizes 2x5 aos números reais e tem algumas idéias fortes sobre certos invariantes que essa função deve satisfazer, o que impõe restrições à forma funcional. Se você explicasse o significado de suas matrizes, provavelmente eu poderia oferecer algumas orientações mais específicas para criar sua função de perda.
David C. Norris

Respostas:

2

Você pode usar a perda de dobradiça, que é um limite superior para a perda de classificação; isto é, penaliza o modelo se o rótulo da categoria de pontuação mais alta for diferente do rótulo da classe de verdade do terreno.

Para mais detalhes sobre a relação entre perda de classificação e perda de dobradiça, você pode ler a Seção 2 deste artigo impressionante de CNJ Yu e T. Joachims.

Em resumo, há uma perda de tarefa , geralmente indicada por , que mede a penalidade para prever a saída da entrada quando a saída esperada (verdade da terra) é . A perda de tarefa para a classificação de várias classes é geralmente definida como . No entanto, desde que dependa apenas dos dois rótulos e , você poderá defini-lo da maneira que desejar. Em particular, pode-se ver como um arbitrárioΔ(yi,y^(xi))y^(xi)xiyiΔ(yi,y^(xi))=1{yiy^(xi)}Δyy^ΔK×Kmatriz em que é o número de categorias e indica a penalidade de classificar uma entrada da categoria como pertencente à categoria .KΔ(a,b)ab

Por exemplo: input data:{(x1,y1),(x2,y2),(x3,y3)},xiRd,yiY={c1,c2,c3,c4}network predictions:y^(x1)=c2,y^(x2)=c1,y^(x3)=c3task loss matrix:[Δ(y1,y1)Δ(y1,y2)Δ(y1,y3)Δ(y1,y4)Δ(y2,y1)Δ(y2,y2)Δ(y2,y3)Δ(y2,y4)Δ(y3,y1)Δ(y3,y2)Δ(y3,y3)Δ(y3,y4)Δ(y4,y1)Δ(y4,y2)Δ(y4,y3)Δ(y4,y4)]=[0123101221013210]classification loss assuming y1=c4,y2=c1,y3=c4:Δ(y1,y^(x1))=Δ(c4,c2)=2Δ(y2,y^(x2))=Δ(c1,c1)=0Δ(y3,y^(x3))=Δ(c4,c3)=1

Sobi
fonte
1
Muito obrigado pela resposta. Adicionei um exemplo à sua pergunta (ainda pode estar em revisão por pares quando você vê esse comentário). Você pode confirmar que minha interpretação está correta?
Aidan Gomez
Entendo, isso é valioso em um problema no estilo de classificação, mas o meu é a regressão (com rótulos multidimensionais), onde várias categorias podem estar "ativadas" ao mesmo tempo. Isso parece ser semelhante a um argmax; para cada entrada, considera apenas a maior categoria de saída. No meu problema, pode-se ter um rótulo como {1,0,1,1}, onde as categorias 0, 2, 3 estão presentes nos dados, mas a categoria 1 não. Se minha rede adivinhou {0,8, 0, 0,6, 0,3}, minha perda não deve ser igual a um palpite como {0,8, 0, 0,7, 0,7}.
Aidan Gomez
Ainda acredito que minha resposta responde à sua pergunta! O que expliquei é chamado SVM Estrutural, em que o espaço de etiqueta (ou seja, o espaço em que os rótulos da verdade da terra vivem) pode ter qualquer estrutura. Parece-me que o que você quer é obtido da seguinte forma: considere um problema de classificação com categorias; definir . A única coisa é que o tamanho do seu matriz, em seguida, torna-se . No entanto, talvez você não precise especificar a matriz. Sinta-se à vontade para solicitar mais detalhes, se isso parecer responder à sua pergunta. YKY={0,1}KΔ2K×2K
Sobi 04/12/2015
Parece o caminho correto. Você poderia fornecer um exemplo fácil, como fizemos no caso de etiqueta unidimensional? Talvez para K = 2 ou 3 #
Aidan Gomez
Digamos que, para uma entrada a resposta correta seja mas seus classificadores prevêem . Nesse caso, estou assumindo . Você pode definir a função de perda como, por exemplo,; isso examina as previsões do classificador para todas as classes e retorna o valor de perda da classe que é o mais distante do valor de verdade da terra correspondente. y = ( 0 , 1 , 1 ) y ( x ) = ( 0,1 , 0,9 , 0,8 ) Δ : { 0 , 1 } 3 × [ 0 , 1 ] 3R Δ ( y , y ) = max K k = 1 | Y [ k ] -xy=(0,1,1)y^(x)=(0.1,0.9,0.8)Δ:{0,1}3×[0,1]3RΔ(y,y^)=maxk=1K|y[k]y^[k]|
Sobi 04/12/2015