torch.stack()
含义:在指定的维度对元素进行叠加
例子:
使用torch生成如下的三个tensor: a, b, c
在指定的维度 0 对a, b, c进行叠加:
在指定的维度 1 对a, b, c进行叠加:
在指定的维度 2 对a, b, c进行叠加:
注意: 对于维度 0, 1, 2应该从外往里面看进去. 在指定的维度对tensor进行叠加时, 应该把该维度对应的个体看成是一个块, 然后进行块的叠加. 例如, 0 维度对应的就是把每一个tensor看成是块, 进行叠加时,就把每一个tensor整体进行叠加. 当指定叠加的维度是 1 时, 就把每一个tensor从外往里看进去一层, 把该层对应的每一个个体看成一个块, 然后再三个 tensor 再对应叠加. 同理, 再往里看进去一层进行上述的操作即可得到维度为 2 的叠加.
重点: 这里在不同维度对 tensor 进行叠加重点在于对tensor 从外往里看进去,然后把看到的那一层的每一个元素看成是块, 最后再把所有 tensor 的块进行叠加.