标签: torch

"视图"方法在PyTorch中如何工作?

view()对以下代码片段中的方法感到困惑.

class Net(nn.Module):
    def __init__(self):
        super(Net, self).__init__()
        self.conv1 = nn.Conv2d(3, 6, 5)
        self.pool  = nn.MaxPool2d(2,2)
        self.conv2 = nn.Conv2d(6, 16, 5)
        self.fc1   = nn.Linear(16*5*5, 120)
        self.fc2   = nn.Linear(120, 84)
        self.fc3   = nn.Linear(84, 10)

    def forward(self, x):
        x = self.pool(F.relu(self.conv1(x)))
        x = self.pool(F.relu(self.conv2(x)))
        x = x.view(-1, 16*5*5)
        x = F.relu(self.fc1(x))
        x = F.relu(self.fc2(x))
        x = self.fc3(x)
        return x

net = Net()
Run Code Online (Sandbox Code Playgroud)

我的困惑在于以下几行.

x = x.view(-1, 16*5*5)
Run Code Online (Sandbox Code Playgroud)

tensor.view()功能有什么作用?我已经在许多地方看到了它的用法,但我无法理解它如何解释它的参数.

如果我将负值作为参数给view()函数会发生什么?例如,如果我打电话会发生什么tensor_variable.view(1, 1, -1)

任何人都可以view()通过一些例子解释功能的主要原理吗?

python memory torch pytorch tensor

144
推荐指数
5
解决办法
9万
查看次数

Pytorch,什么是梯度参数

我正在阅读PyTorch的文档,并找到了他们编写的示例

gradients = torch.FloatTensor([0.1, 1.0, 0.0001])
y.backward(gradients)
print(x.grad)
Run Code Online (Sandbox Code Playgroud)

其中x是一个初始变量,从中构造y(一个3向量).问题是,渐变张量的0.1,1.0和0.0001参数是什么?文档不是很清楚.

gradient neural-network gradient-descent torch pytorch

100
推荐指数
4
解决办法
1万
查看次数

在 Pytorch 中“unsqueeze”有什么作用?

我无法理解PyTorch 文档中的示例如何对应于解释:

返回一个新的张量,其尺寸为 1,插入到指定位置。[...]

>>> x = torch.tensor([1, 2, 3, 4])
>>> torch.unsqueeze(x, 0)
tensor([[ 1,  2,  3,  4]])
>>> torch.unsqueeze(x, 1)
tensor([[ 1],
        [ 2],
        [ 3],
        [ 4]])
Run Code Online (Sandbox Code Playgroud)

python torch pytorch

71
推荐指数
5
解决办法
6万
查看次数

PyTorch:如何将DataLoader用于自定义数据集

如何利用torch.utils.data.Datasettorch.utils.data.DataLoader你自己的数据(不只是torchvision.datasets)?

有没有办法使用DataLoaders他们使用的内置TorchVisionDatasets在任何数据集上使用?

python torch pytorch

48
推荐指数
3
解决办法
3万
查看次数

PyTorch和Torch之间有什么关系?

有两个PyTorch存储库:

第一个显然需要Torch和lua并且是一个包装器,但第二个没有引用Torch项目,除了它的名字.

它与Lua Torch(http://torch.ch/)有什么关系?

torch pytorch

27
推荐指数
3
解决办法
2万
查看次数

如何检查两个Torch张量或矩阵是否相等?

我需要一个Torch命令来检查两个张量是否具有相同的内容,如果它们具有相同的内容则返回TRUE.

例如:

local tens_a = torch.Tensor({9,8,7,6});
local tens_b = torch.Tensor({9,8,7,6});

if (tens_a EQUIVALENCE_COMMAND tens_b) then ... end
Run Code Online (Sandbox Code Playgroud)

我应该在这个脚本中使用什么而不是EQUIVALENCE_COMMAND

我试过简单,==但它不起作用.

lua torch

26
推荐指数
4
解决办法
2万
查看次数

AttributeError:“_MultiProcessingDataLoaderIter”对象没有属性“next”

我尝试使用 加载数据集Torch Dataset and DataLoader,但出现以下错误:

AttributeError: '_MultiProcessingDataLoaderIter' object has no attribute 'next'
Run Code Online (Sandbox Code Playgroud)

我使用的代码是:

class WineDataset(Dataset):

    def __init__(self):
        # Initialize data, download, etc.
        # read with numpy or pandas
        xy = np.loadtxt('./data/wine.csv', delimiter=',', dtype=np.float32, skiprows=1)
        self.n_samples = xy.shape[0]

        # here the first column is the class label, the rest are the features
        self.x_data = torch.from_numpy(xy[:, 1:]) # size [n_samples, n_features]
        self.y_data = torch.from_numpy(xy[:, [0]]) # size [n_samples, 1]

    # support indexing such that dataset[i] can be used to get …
Run Code Online (Sandbox Code Playgroud)

python torch pytorch pytorch-dataloader

26
推荐指数
2
解决办法
5万
查看次数

23
推荐指数
4
解决办法
6974
查看次数

火炬总和沿轴线的张量

ipdb> outputs.size()
torch.Size([10, 100])
ipdb> print sum(outputs,0).size(),sum(outputs,1).size(),sum(outputs,2).size()
(100L,) (100L,) (100L,)
Run Code Online (Sandbox Code Playgroud)

如何对列进行求和?

python sum torch pytorch tensor

23
推荐指数
2
解决办法
4万
查看次数

Pytorch中张量流和动态计算图中的静态计算图有什么区别?

当我学习张量流时,张量流的一个基本概念是计算图,并且这些图被认为是静态的.我在Pytorch发现这些图表是动态的.Pytorch中张量流和动态计算图中静态计算图的区别是什么?

deep-learning torch tensorflow

19
推荐指数
3
解决办法
5644
查看次数