Supongamos que tengo una secuencia continua $X$ de palabras y deseo entrenar un modelo de lenguaje RNN. Según [1], dividiría $X$ en subsecciones $X^{1..|X|/k_1}$ $k_1$ subsecuencias de tamaño ( $k_1$ es nuestro periodo), entonces para cada subsecuencia $X^i$ , propagar $X^i_1$ a través de la red, entonces $X^i_2$ , ... $X^i_{k_1}$ almacenando el estado oculto de la red para el último $k_2$ de estas propagaciones hacia adelante. Por último, se evalúa el softmax sólo para el $X^i_{k_1}$ palabra, es decir, cómo de bien predijo la red esta última palabra. Este error se retropropaga en el tiempo para $k_2$ pasos de tiempo, utilizando el estado oculto para estos pasos de tiempo que almacenamos previamente para calcular los gradientes.
Mi pregunta es: me parece un poco extraño que sólo se evalúe el softmax al final de la $k_1$ período. ¿Cómo se pueden tener en cuenta los errores cometidos en los pasos de tiempo anteriores al último? BPTT retrocederá el error cometido en $X^i_{k_1}$ para $k_2$ tiempos, pero ¿qué pasa con los errores cometidos en $X^i_{1...k_1-1}$ que nunca se calcularon con softmax? ¿No son igual de importantes?
Gracias por su ayuda.
[1] Mikolov, Tomáš. "Modelos lingüísticos estadísticos basados en redes neuronales". Presentación en Google, Mountain View, 2 de abril (2012).