假设我们需要对句子进行分类。句子中每个词是由 n 维词向量组成的,也就是说输入矩阵大小为 m*n,其中m为句子长度。 在 pytorch 中,从左往右卷积,因此要将输入维度调换,即(n, m)— (词向量维度, 句子长度)
我们这么进行理解,句子总是一行一行的,每个词有n维向量组成,n则表示的是每个句子中词的个数,m表示的是这一大段话由几个这样的句子组成。所以在我们看文章的时候,默认n是行,m是列,在进行卷积计算的时候,如上面所说,在pytorch中,conv1总是从左往右卷积,关联性最强的行要进行卷积计算,即(n,m)=(词向量个数,句子个数)就需要更换成(m,n)=(句子个数,词向量个数)进行卷积操作。
上面的cat sitting here 很明显是一句话,横着的矩阵是(1,3),将他的方向调换之后,是(3,1),对应后面的卷积核是(2,1),故而可以对每个词进行分别卷积。
因篇幅问题不能全部显示,请点此查看更多更全内容