in code/scripts/layers.py [0:0]
def __init__(self, units=128, hidden_size=512, dropout=0.0, use_residual=True,
attn_temperature=1.0, weight_initializer=None, bias_initializer='zeros',
prefix=None, params=None):
super(AttentionMapCell, self).__init__(prefix=prefix, params=params)
self._units = units
self._dropout = dropout
with self.name_scope():
if dropout:
self.dropout_layer = nn.Dropout(rate=dropout)
self.attention_cell = ScaledDotProductAttentionCell(temperature=attn_temperature,
scaled=True,
normalized=False)
self.proj_layer = nn.Dense(units=units, flatten=False,
use_bias=False,
weight_initializer=weight_initializer,
bias_initializer=bias_initializer,
prefix='proj_inter_')
self.ffn = PositionwiseFFN(hidden_size=hidden_size,
units=units,
use_residual=use_residual,
dropout=dropout,
weight_initializer=weight_initializer,
bias_initializer=bias_initializer)
self.layer_norm = nn.LayerNorm()