TensorFlow: ¿Cómo extraer los attention_scores para graficar?
Si tienes una capa MultiHeadAttention en Keras, entonces puede devolver los puntajes de atención de la siguiente manera:
x, attention_scores = MultiHeadAttention(1, 10, 10)(x, return_attention_scores=True)
¿Cómo extraes los puntajes de atención del gráfico de red? Me gustaría graficarlos.
davy.ai
Para extraer los puntajes de atención de la capa MultiHeadAttention en Keras, puedes usar las funciones
tf.transpose
ytf.reshape
para remodelar la salida de la capa.En el código anterior, definimos la capa de entrada, la capa de MultiHeadAttention y el modelo final. Luego, compilamos y entrenamos el modelo. Finalmente, usamos
tf.transpose
ytf.reshape
para remodelar los puntajes de atención y obtenerlos como un tensor.Una vez que hayas extraído los puntajes de atención, puedes usar cualquier biblioteca de gráficos (por ejemplo, matplotlib) para trazarlos.