mindspore/docs/api/api_python/nn/mindspore.nn.TransformerEnc...

25 lines
1.7 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

mindspore.nn.TransformerEncoderLayer
========================================
.. py:class:: mindspore.nn.TransformerEncoderLayer(d_model: int, nhead: int, dim_feedforward: int = 2048, dropout: float = 0.1, activation: Union[str, Cell, callable] = 'relu', layer_norm_eps: float = 1e-5, batch_first: bool = False, norm_first: bool = False)
Transformer的编码器层。Transformer编码器的单层实现包括MultiheadAttention层和FeedForward层。
参数:
- **d_model** (int) - 输入的特征数。
- **nhead** (int) - 注意力头的数量。
- **dim_feedforward** (int) - FeedForward层的维数。默认值``2048``
- **dropout** (float) - 随机丢弃比例。默认值:``0.1``
- **activation** (Union[str, callable, Cell]) - 中间层的激活函数,可以输入字符串(``"relu"````"gelu"``)、函数接口(``ops.relu````ops.gelu``)或激活函数层实例(``nn.ReLU()````nn.GELU()``)。默认值:``"relu"``
- **layer_norm_eps** (float) - LayerNorm层的eps值默认值``1e-5``
- **batch_first** (bool) - 如果为 ``True`` 则输入输出Shape为(batch, seq, feature)反之Shape为(seq, batch, feature)。默认值: ``False``
- **norm_first** (bool) - 如果为 ``True`` 则LayerNorm层位于MultiheadAttention层和FeedForward层之前反之位于其后。默认值 ``False``
输入:
- **src** (Tensor) - 源序列。
- **src_mask** (Tensor, 可选) - 源序列的掩码矩阵。默认值:``None``
- **src_key_padding_mask** (Tensor, 可选) - 源序列Key矩阵的掩码矩阵。默认值``None``
输出:
Tensor。