串联是工具箱中需要执行的另一项重要操作。 PyTorch 出于相同的目的制作了功能`cat`。 所有尺寸上的两个张量相同的张量(一个张量除外)可以根据需要使用`cat`进行连接。 例如,大小为 3 x 2 x 4 的张量可以与另一个大小为 3 x 5 x 4 的张量在第一维上级联,以获得大小为 3 x 7 x 4 的张量。`stack`操作看起来非常类似于 串联,但这是完全不同的操作。 如果要向张量添加新尺寸,则可以使用`stack`。 与`cat`相似,您可以将轴传递到要添加新尺寸的位置。 但是,请确保两个张量的所有尺寸都与附着尺寸相同。
串联是工具箱中需要执行的另一项重要操作。 PyTorch 出于相同的目的制作了功能`cat`。 所有尺寸上的两个张量相同的张量(一个张量除外)可以根据需要使用`cat`进行连接。 例如,大小为`3 x 2 x 4`的张量可以与另一个大小为`3 x 2 x 4`的张量在第一维上级联,以获得大小为`3 x 2 x 4`的张量。`stack`操作看起来非常类似于 串联,但这是完全不同的操作。 如果要向张量添加新尺寸,则可以使用`stack`。 与`cat`相似,您可以将轴传递到要添加新尺寸的位置。 但是,请确保两个张量的所有尺寸都与附着尺寸相同。
`split`和`chunk`是用于拆分张量的类似操作。 `split`接受每个输出张量要的大小。 例如,如果要在第 0 个维度上拆分大小为 3 x 2 的张量,尺寸为 1,则将得到三个大小均为 1 x 2 的张量。但是,如果在第 0 个维度上使用 2 作为大小,则将 会得到 2 x 2 的张量和另一个 1 x 2 的张量。
`split`和`chunk`是用于拆分张量的类似操作。 `split`接受每个输出张量要的大小。 例如,如果要在第 0 个维度上拆分大小为`3 x 2`的张量,尺寸为 1,则将得到三个大小均为`3 x 2`的张量。但是,如果在第 0 个维度上使用 2 作为大小,则将 会得到`3 x 2`的张量和另一个`3 x 2`的张量。
您可以使用大小为 100 的单热点编码向量为张量添加另一个维度(因为词汇量为 100 个单词)。 现在,您有了一个尺寸为 10 x 5 x 100 的张量对象,并且每个批量和每个句子一次传递一个单词。
您可以使用大小为 100 的单热点编码向量为张量添加另一个维度(因为词汇量为 100 个单词)。 现在,您有了一个尺寸为`10 x 5 x 100`的张量对象,并且每个批量和每个句子一次传递一个单词。
现在,您必须对句子进行拆分和切分,最有可能的结果是,张量的大小为 10 x 1 x 100(每 10 个单词中的一个单词带有 100 维向量)。 您可以使用 10 x 100 的张量处理它,这使您的生活更加轻松。 继续使用`squeeze`从 10 x 1 x 100 张量得到 10 x 100 张量。
现在,您必须对句子进行拆分和切分,最有可能的结果是,张量的大小为 10 x 1 x 100(每 10 个单词中的一个单词带有 100 维向量)。 您可以使用`10 x 100`的张量处理它,这使您的生活更加轻松。 继续使用`squeeze`从`10 x 1 x 100`张量得到`10 x 100`张量。