gpt4 book ai didi

pytorch - PyTorch 中用于文本输入的卷积神经网络

转载 作者:行者123 更新时间:2023-12-02 09:55:51 28 4
gpt4 key购买 nike

我正在尝试实现 text classification model使用CNN。据我所知,对于文本数据,我们应该使用一维卷积。我在 pytorch 中看到了一个使用 Conv2d 的示例,但我想知道如何将 Conv1d 应用于文本?或者说,这实际上是不可能的?

这是我的模型场景:

Number of in-channels: 1, Number of out-channels: 128 
Kernel size : 3 (only want to consider trigrams)
Batch size : 16

因此,我将提供形状为 <16, 1, 28, 300> 的张量,其中 28 是句子的长度。我想使用 Conv1d,它会给我 128 个长度为 26 的特征图(因为我正在考虑三元组)。

我不确定如何为此设置定义 nn.Conv1d()。我可以使用 Conv2d,但想知道是否可以使用 Conv1d 实现相同的效果?

最佳答案

这个example将 Conv1d 和 Pool1d 层放入 RNN 中解决了我的问题。

因此,在使用 nn.Conv1d 时,我需要将嵌入维度视为 channel 内数量,如下所示。

m = nn.Conv1d(200, 10, 2) # in-channels = 200, out-channels = 10
input = Variable(torch.randn(10, 200, 5)) # 200 = embedding dim, 5 = seq length
feature_maps = m(input)
print(feature_maps.size()) # feature_maps size = 10,10,4

关于pytorch - PyTorch 中用于文本输入的卷积神经网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44212831/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com