mindtext.modules.encoder.conv

class mindtext.modules.encoder.conv.ConvEncoder (init_embed: StaticEmbedding, num_filters: int = 256, kernel_size: int = 3, num_layers: int = 7, embed_dropout: float = 0.1)

卷积编码器

Example

>>> vocab = Vocabulary()
>>> vocab.update(["i", "am", "fine"])
>>> embed = StaticEmbedding(vocab, model_dir_or_name=None, embedding_dim=100)
>>> conv_encoder = ConvEncoder(embed)
>>> words = mindspore.Tensor(np.random.randint(0, 3, (1, 256)))
>>> x = conv_encoder(words)

init (init_embed: StaticEmbedding, num_filters: int = 256, kernel_size: int = 3, num_layers: int = 7, embed_dropout: float = 0.1)

参数

  • init_embed (StaticEmbedding): StaticEmbedding。

  • num_filters (int): 过滤器的数量,默认为256。

  • kernel_size (int): 卷积核的大小,默认为3。

  • num_layers (int): CNN的复合数量,默认为7。

  • embed_dropout (float): dropout层的概率,默认为0.1。

construct (word)

参数

  • word (Tensor): 输入的向量。

返回

  • x (Tensor): 卷积编码层返回的向量。