本文重点
在深度学习中,我们常常需要完成多个向量拼接,同时也要完成向量的分割,在pytorch中已经有封装好的库,我们可以直接调用完成这部分任务。
Cat拼接
c=torch.cat([a,b],dim=0)表示将a和b按0维度进行拼接,需要注意再非dim维度,两个矩阵的维度必须是一致的,不然会拼接失败。
Stack拼接
Stack并不会进行维度的拼接,而是会增加新的维度
我们可以看到将a和b在dim=0的维度进行stack,那么并不会将dim=0的16加起来组成32,3,28,28,而是会增加一个新的维度2,这是与cat不一样的地方。
注意stack的两个列表必须在所有维度上都一样大小,如果不一样大小则会出错