这篇文章主要介绍了pytorch中的view()函数怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇pytorch中的view()函数怎么使用文章都会有所收获,下面我们一起来看看吧。
一、普通用法 (手动调整size)
view()相当于reshape、resize,重新调整Tensor的形状。
import torch a1 = torch.arange(0,16) print(a1) # tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
a2 = a1.view(8, 2) a3 = a1.view(2, 8) a4 = a1.view(4, 4) print(a2) #tensor([[ 0, 1], # [ 2, 3], # [ 4, 5], # [ 6, 7], # [ 8, 9], # [10, 11], # [12, 13], # [14, 15]]) print(a3) #tensor([[ 0, 1, 2, 3, 4, 5, 6, 7], # [ 8, 9, 10, 11, 12, 13, 14, 15]]) print(a4) #tensor([[ 0, 1, 2, 3], # [ 4, 5, 6, 7], # [ 8, 9, 10, 11], # [12, 13, 14, 15]])
二、特殊用法:参数-1 (自动调整size)
view中一个参数定为-1,代表自动调整这个维度上的元素个数,以保证元素的总数不变。
v1 = torch.arange(0,16) print(v1) # tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]) v2 = v1.view(-1, 16) v2 # tensor([[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]]) v2 = v1.view(-1, 8) v2 # tensor([[ 0, 1, 2, 3, 4, 5, 6, 7], # [ 8, 9, 10, 11, 12, 13, 14, 15]]) v2 = v1.view(-1, 4) v2 #tensor([[ 0, 1, 2, 3], # [ 4, 5, 6, 7], # [ 8, 9, 10, 11], # [12, 13, 14, 15]]) v2 = v1.view(-1, 2) v2 #tensor([[ 0, 1], # [ 2, 3], # [ 4, 5], # [ 6, 7], # [ 8, 9], # [10, 11], # [12, 13], # [14, 15]])
v3 = v1.view(4*4, -1) v3 # tensor([[ 0], # [ 1], # [ 2], # [ 3], # [ 4], # [ 5], # [ 6], # [ 7], # [ 8], # [ 9], # [10], # [11], # [12], # [13], # [14], # [15]])
关于“pytorch中的view()函数怎么使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“pytorch中的view()函数怎么使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注云搜网行业资讯频道。