В модели трансформатора https://arxiv.org/pdf/1706.03762.pdf есть самовнимание, которое вычисляется с помощью softmax на векторах Query (Q)
и Key (K)
:
Я пытаюсь понять умножение матриц:
Q = batch_size x seq_length x embed_size
K = batch_size x seq_length x embed_size
QK^T = batch_size x seq_length x seq_length
Softmax QK^T = Softmax (batch_size x seq_length x seq_length)
Как вычисляется softmax, если на каждый элемент пакета приходится seq_length x seq_length
значений?
Ссылка на вычисления Pytorch будет очень полезной.
Ваше здоровье!