O RNN pode ser usado para previsão ou mapeamento de sequência para sequência. Mas como a RNN pode ser usada para classificação? Quero dizer, damos a uma sequência inteira um rótulo.
O RNN pode ser usado para previsão ou mapeamento de sequência para sequência. Mas como a RNN pode ser usada para classificação? Quero dizer, damos a uma sequência inteira um rótulo.
Respostas:
Pode-se usar o RNN para mapear várias entradas para uma única entrada (etiqueta), pois esta figura ( fonte ) ilustra:
Cada retângulo é um vetor e as setas representam funções (por exemplo, multiplicação de matrizes). Os vetores de entrada estão em vermelho, os vetores de saída estão em vetores azuis e verdes mantêm o estado da RNN (mais sobre isso em breve). Da esquerda para a direita: (1) Modo de processamento de baunilha sem RNN, da entrada de tamanho fixo à saída de tamanho fixo (por exemplo, classificação da imagem). (2) Saída sequencial (por exemplo, a legenda da imagem obtém uma imagem e gera uma sentença de palavras). (3) Entrada de sequência (por exemplo, análise de sentimentos em que uma determinada frase é classificada como expressando sentimentos positivos ou negativos). (4) Entrada e saída de sequência (por exemplo, tradução automática: um RNN lê uma frase em inglês e, em seguida, produz uma frase em francês). (5) Entrada e saída de sequência sincronizada (por exemplo, classificação de vídeo onde queremos rotular cada quadro do vídeo).
No caso de RNN simples, alimente a sequência inteira à sua rede e, em seguida, imprima a etiqueta da classe no último elemento da sequência (consulte este documento e faça referências aqui para obter um exemplo inicial dessa abordagem). Na fase de treinamento, podemos retribuir o erro no tempo desde o último elemento da sequência até o início da sequência. Em geral, isso não difere do problema de rotulagem de sequência RNN, onde precisamos atribuir rótulos apenas a alguns elementos da sequência (ou todos os outros elementos são rotulados como OTHER).