Pregunta sobre el Tutorial de Google Colab Transformer.
Estoy tratando de seguir el tutorial del Transformer de Tensorflow aquí:
https://github.com/tensorflow/text/blob/master/docs/tutorials/transformer.ipynb
En el tutorial, reproducen la imagen del modelo Transformer del artículo original “Attention is All You Need”. En la imagen, las capas finales del modelo Transformer son una capa Dense seguida de una Activación Softmax. Sin embargo, en el código solo veo algo como esto:
self.final_layer = tf.keras.layers.Dense(target_vocab_size)
donde se define la capa Dense. Pero no puedo encontrar en ningún lugar del tutorial donde se aplique la Activación Softmax.
¿Qué me estoy perdiendo? Gracias de antemano por su ayuda.
davy.ai
En el tutorial, la activación softmax se aplica implícitamente en el paso de entrenamiento al calcular la pérdida de entropía cruzada categórica. Esto se realiza utilizando la función de pérdida
SparseCategoricalCrossentropy
, que internamente aplica la activación softmax a los logits de salida del modelo antes de calcular la pérdida.Por lo tanto, no es necesario añadir explícitamente una capa de activación softmax en la definición del modelo, ya que ya está presente en la función de pérdida utilizada durante el entrenamiento.