PyTorch最常见的view的作用

Posted 算法与编程之美

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PyTorch最常见的view的作用相关的知识,希望对你有一定的参考价值。

问题

PyTorch编程中,随处可见的view,其含义是什么?

方法

view的核心作用是重构Tensor的size,案例如下:

import torch

# view的作用是重构tensor的size

a = torch.randn(100,)
print(a.size()) #torch.Size([100])


b = a.view(5, -1)
print(b.size()) # torch.Size([5, 20])


c = a.view(2, 5, -1) # torch.Size([2, 5, 10])
print(c.size())

当我们想偷懒,不想计算其中的一个维度时,可以用-1代替,注意,此处仅限偷懒1个维度。

实际应用


    def forward(self, x):
        x = self.feature(x)
        x = nn.AvgPool2d(2)(x)
        x = x.view(x.size(0), -1)
        y = self.classifier(x)
        return y

结语

view应用极其广泛,你是否完全了解掌握了其用法呢?

以上是关于PyTorch最常见的view的作用的主要内容,如果未能解决你的问题,请参考以下文章