pytorch contiguous的使用

contiguous一般与transpose,permute,view搭配使用

即使用transpose或permute进行维度变换后,调用contiguous,然后方可使用view对维度进行变形。

具体原因我还没搞清,看到网上有两种说法,一种是维度变换后tensor在内存中不再是连续存储的,而view操作要求连续存储,所以需要contiguous,另一种是说维度变换后的变量是之前变量的浅复制,指向同一区域,即view操作会连带原来的变量一同变形,这是不合法的,所以也会报错,先甭管是哪个原因吧,记得这样用。

posted @ 2018-09-18 13:19  wuzeyuan  阅读(5990)  评论(0编辑  收藏  举报