ML::NN::MultiHeadAttention
Multi-Head Attention Attention(Q, K, V) = softmax(QK^T / sqrt(d_k)) V
Constructors
Instance methods
call(query : Autograd::Variable, key : Autograd::Variable, value : Autograd::Variable, attn_mask : Tensor | Nil = nil) : Autograd::Variable
Sourcedropout
Sourceembed_dim
Sourceforward(query : Autograd::Variable, key : Autograd::Variable, value : Autograd::Variable, attn_mask : Tensor | Nil = nil, need_weights : Bool = false) : Autograd::Variable
Forward pass query, key, value: [batch, seq_len, embed_dim] attn_mask: optional [batch, seq_len, seq_len] or [seq_len, seq_len] Returns: [batch, seq_len, embed_dim]
head_dim
Sourcek_proj
Sourcenum_heads
Sourceout_proj
Sourceself_attention(x : Autograd::Variable, attn_mask : Tensor | Nil = nil) : Autograd::Variable
Self-attention convenience method
v_proj
Source