suponha que o rótulo correto é 1, isto significa que o primeiro DigitCap é responsável por codificar a presença do dígito 1. Para a função de perda deste DigitCap T_c será um e para todos os nove DigitCaps restantes T_c será 0. Quando T_c é 1, Então o primeiro termo da função de perda é calculado e o segundo torna-se zero. Para o nosso exemplo, a fim de calcular a perda do primeiro DigitCap tomamos o vetor de saída deste DigitCap e subtraí – lo de m+, que é fixado em 0,9. Então mantemos o valor resultante apenas no caso em que é maior que zero e quadrá-lo. Caso contrário, devolve 0. Em outras palavras, a perda será zero se o DigitCap correto previr o rótulo correto com maior que 0.9 probabilidade, e será não-zero se a probabilidade for menor que 0.9.
para DigitCaps que não correspondem com o rótulo correto, T_c será zero e, portanto, o segundo termo será avaliado (correspondente a (1 — T_c) parte). Neste caso, podemos ver que a perda será zero se o erro de correspondência DigitCap prevê um rótulo incorreto com probabilidade inferior a 0.1 e não-zero se prevê um rótulo incorreto com probabilidade superior a 0.1.
finalmente, na fórmula coeficiente lambda é incluído para a estabilidade numérica durante a formação (seu valor é fixado em 0,5). Os dois termos na fórmula têm quadrados porque esta função de perda tem norma L2 e os autores aparentemente consideram esta norma para funcionar melhor.
Parte II. descodificador.
Decodificador toma um vetor 16-dimensional do DigitCap correto e aprende a decodificá-lo em uma imagem de um dígito (note que ele só usa o vetor DigitCap correto durante o treinamento e ignora os incorretos). O decodificador é usado como um regularizador, ele leva a saída da DigitCap correta como entrada e aprende a recriar uma imagem de 28 por 28 pixels, com a função de perda sendo a distância euclidiana entre a imagem reconstruída e a imagem de entrada. O decodificador força cápsulas para aprender características que são úteis para reconstruir a imagem original. Quanto mais próxima a imagem reconstruída à imagem de entrada, melhor. Exemplos de imagens reconstruídas podem ser vistos na imagem abaixo.
Camada 4. Totalmente conectado #1
entrada: 16×10.
saída: 512.
número de parâmetros: 82432.
cada saída do nível inferior é ponderada e direcionada para cada neurônio da camada totalmente conectada como entrada. Cada neurônio também tem um termo de viés. Para esta camada há entradas 16×10 que são todas direcionadas para cada um dos 512 neurônios desta camada. Portanto, há (16×10 + 1)x512 parâmetros treináveis.
para o cálculo das duas camadas a seguir é o mesmo: número de parâmetros = (número de entradas + viés) x número de neurônios na camada. É por isso que não há explicação para camadas totalmente conectadas 2 e 3.
camada 5. Totalmente conectado #2
entrada: 512.
saída: 1024.
número de parâmetros: 525312.
camada 6. Totalmente conectado #3
entrada: 1024.
saída: 784 (que depois de remodelar dá de volta uma imagem decodificada 28×28).
número de parâmetros: 803600.
número Total de Parâmetros na rede: 8238608.