Como derivar regras de atualização de entropia cruzada categórica para regressão logística multiclasse

Nov 25 2020

Estou ciente de que existe uma postagem semelhante: Vetorização de perda de entropia cruzada

Mas olhando por algumas horas, ainda não entendo o que eles estão tentando dizer.

Estou tentando encontrar as regras de atualização para usar a função de entropia cruzada em regressão logística multiclasse, aqui para 10 classes.

Estou confuso sobre o que isso significa - este é o custo de todo o conjunto de dados ou apenas o custo de um único exemplo? Não tenho certeza se y e yhat são escalares e a soma passa por um único exemplo ou se y e yhat são vetores e se a indexação i significa que está passando por todo o conjunto.

Supondo que ele esteja passando por todo o conjunto de treinamento, como o derivamos em relação a todos os tetas? como vetorizá-lo e chegar a uma regra geral de atualização para todos os pesos?

Eu ficaria muito grato por uma resposta - Eu tentei com caneta e papel por muito tempo e ainda não consegui.

Obrigado, A

Respostas

1 gunes Nov 25 2020 at 16:12

Isso não abrange todo o conjunto de treinamento. É para um único exemplo,$i$representa o índice da classe. Então, se você tem$n$ Aulas, $\mathbf y$ e $\mathbf{ \hat y}$ está $n\times 1$ vetores reais. $\mathbf y$ é a verdade básica, então será um vetor binário com o índice correspondente à classe correta para a amostra sendo $1$ e outros sendo $0$.

Para encontrar os gradientes, você pode assumir apenas uma amostra e, em seguida, somar os gradientes para cada amostra de treinamento. Então, para simplificar, faça a diferenciação usando esta formulação, ou seja,$\frac{\partial L}{\partial \theta}$, Onde $y=\sigma( \theta^Tx+b)$.