pytorch 如何输入三维数组序列?

x759pob2  于 2023-03-18  发布在  其他
关注(0)|答案(1)|浏览(120)

我是一名学习自然语言处理的韩国学生。
当我把一个句子放到LSTM中时,我想把它放到一个三维数组中,我想把句子나는 집에서 친구와 밥을 먹었다.改成[['나', '는'],['집','에서'],['친구','와'],['밥','을'],['먹','었','다','.']]
我会把单词改为向量(嵌入)。比如:

[[ [1,0,0,0, ... ], [0,1,0,0, ... ] ], [ [0,0,1,0, ... ], [0,0,0,1, ...] ], [...], ...]

这是一个序列中的三维数组。
如何将三维数组输入到一个LSTM?????

或者,这可能吗???愚蠢的问题,对不起。
我不知道该怎么改变。

class Tagger(nn.Module):
    def __init__(self,
                 embedding_dim=43,
                 n_layers=4,
                 dropout=0.2,
                 output_dim=11,
                 bidirectional=False):
        super(WordTagger, self).__init__()

        self.lstm = nn.LSTM(embedding_dim, embedding_dim,
                            num_layers=n_layers, bidirectional=bidirectional)
        self.hidden_dim = (embedding_dim * 2) if bidirectional else embedding_dim
        self.linear = nn.Linear(self.hidden_dim, output_dim)
        self.dropout = nn.Dropout(dropout)

    def forward(self, embedded):
        lstmed, _ = self.lstm(embedded)
        outputs = self.linear(self.dropout(lstmed))
        scores = F.log_softmax(outputs, dim=1)

        return scores
fxnxkyjh

fxnxkyjh1#

首先用英语,这样能得到答案。
而且,请参阅here,它可能会有所帮助。
一个热门编码是流行的结构无序矩阵。搜索'一个热门编码'在韩国与谷歌。它可以找到。

相关问题