【发布时间】:2019-08-09 03:42:39
【问题描述】:
我一直在使用 PyTorch 中的文本分类,但遇到了一维卷积的问题。
我设置了一个维度 (x, y, z) 的嵌入层,其中: x - 表示批量大小 y - 表示句子的长度(用填充固定,所以 40 个单词) z - 预训练词嵌入的维度(目前为 100)
为简单起见,假设我放入了一个 (1,40, 100) 的矩阵
但是,据我所知,一旦我执行了 torch.nn.conv1d(*args), 生成的矩阵变为 (batch size = 1, word size = 40, feature map size = 98),内核大小为 3。
基本上,据我了解,它围绕 y 轴而不是 x 轴进行卷积,并且它不会捕捉词嵌入之间的空间关系。
有什么办法可以改变卷积层,让它围绕不同的轴计算特征图?
TL、DR:
Torch conv1d 层在嵌入层上的行为方式如下: enter image description here
但我希望它表现得像这样
任何帮助将不胜感激。
【问题讨论】:
标签: python conv-neural-network pytorch embedding