pytorch 中的view、reshape、permute、transpose、contiguous

pytorch 中的view、reshape、permute、transpose、contiguous

1、 contiguous

https://stackoverflow.com/questions/48915810/pytorch-contiguous

https://blog.csdn.net/Quincuntial/article/details/89670199

https://www.zhihu.com/question/60321866

 

view相当于numpy中resize()的功能,但是用法可能不太一样.可以参考:https://blog.csdn.net/york1996/article/details/81949843

view只能用在contiguous的variable上。如果在view之前用了transpose,permute等,需要用contiguous()来返回一个contiguous copy 可参考:https://blog.csdn.net/appleml/article/details/80143212?utm_source=blogxgwz0

但是在pytorch最新版本0.4版本中,增加了torch.reshape(),这个与numpy.reshape 的功能类似。它大致相当于tensor.contiguous().view()

permute是维度换位,是更灵活的transpose,可以灵活的对原数据的维度进行调换,而数据本身不变(transpose也是)。

可以参考:https://blog.csdn.net/york1996/article/details/81876886

posted on 2020-06-05 20:34  那抹阳光1994  阅读(1060)  评论(0编辑  收藏  举报

导航