标签: torch

如何防止收敛到CNN回归问题的均值解?

我正在训练一个 CNN 来预测手上的关节。问题是我的网络总是收敛到训练集的均值,对于不同的测试图像我只能得到相同的结果。你知道如何防止这种情况吗?

neural-network deep-learning torch caffe

5
推荐指数
1
解决办法
1111
查看次数

如何异步加载和训练批次以训练深度学习模型?

我有 3TB 数据集和 64GB RAM 以及一个 12 核 CPU 和一个 12GB GPU。想在这个数据集上训练一个深度学习模型。如何异步加载批次和模型训练?我想确保数据的磁盘加载不会阻止训练循环等待新批次加载到内存中。

我不依赖于语言,并且是最简单的库,可以在没有摩擦的情况下做到这一点,但我更喜欢torch、pytorch、tensorflow 之一

lua deep-learning torch tensorflow pytorch

5
推荐指数
1
解决办法
2118
查看次数

如何在 docker 镜像中安装 python 模块?

我有一个名为: 的图像Image和一个名为:的正在运行的容器container。我想安装pytorchanacoda。最简单的方法是什么?我是否必须更改dockerfile并构建新映像?非常感谢。

linux docker torch dockerfile pytorch

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

pytorch 自定义层“不是模块子类”

我是 PyTorch 的新手,在使用不同的工具包一段时间后尝试了一下。

我想了解如何编写自定义图层和函数。作为一个简单的测试,我写了这个:

class Testme(nn.Module):         ## it _is_ a sublcass of module ##
    def __init__(self):
        super(Testme, self).__init__()

    def forward(self, x):
        return x / t_.max(x)
Run Code Online (Sandbox Code Playgroud)

这旨在使通过它的数据总和为 1。实际上没有用,只是在测试中。

然后我将其插入 PyTorch Playground 中的示例代码:

def make_layers(cfg, batch_norm=False):
    layers = []
    in_channels = 3
    for i, v in enumerate(cfg):
        if v == 'M':
            layers += [nn.MaxPool2d(kernel_size=2, stride=2)]
        else:
            padding = v[1] if isinstance(v, tuple) else 1
            out_channels = v[0] if isinstance(v, tuple) else v
            conv2d = nn.Conv2d(in_channels, out_channels, kernel_size=3, padding=padding)
            if batch_norm:
                layers += …
Run Code Online (Sandbox Code Playgroud)

torch pytorch autograd

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

如何在代码中使用 PyTorch PackedSequence?

有人可以提供完整的工作代码(不是片段,而是在可变长度循环神经网络上运行的代码),说明您将如何使用 PyTorch 中的 PackedSequence 方法?

文档、github 或 Internet 中似乎没有任何此类示例。

https://github.com/pytorch/pytorch/releases/tag/v0.1.10

machine-learning torch recurrent-neural-network pytorch

5
推荐指数
1
解决办法
3096
查看次数

Jupyter Notebook 中的 Pytorch 模块错误

我在激活虚拟环境时使用 conda 命令安装了 pytorch。

但是,在 Jupyter Notebook 中导入火炬模块时出现了一些问题。

我在提示符和 Jupyter Notebook 中都检查了 sys.path。

嗯..在提示中,结果sys.path

['', '/home/usrname/anaconda3/lib/python36.zip',
     '/home/usrname/anaconda3/lib/python3.6',
     '/home/usrname/anaconda3/lib/python3.6/lib-dynload',
     '/home/usrname/anaconda3/lib/python3.6/site-packages']
Run Code Online (Sandbox Code Playgroud)

导入火炬模块时没有错误。

但是,在 jupyter 笔记本(在 chrome 中执行)中,sys.path

['',
 '/home/usrname/anaconda3/lib/python36.zip',
 '/home/usrname/anaconda3/lib/python3.6',
 '/home/usrname/anaconda3/lib/python3.6/lib-dynload',
 '/home/usrname/anaconda3/lib/python3.6/site-packages',
 '/home/usrname/anaconda3/lib/python3.6/site-packages/IPython/extensions',
 '/home/usrname/.ipython']
Run Code Online (Sandbox Code Playgroud)

我看到一个错误: No module named 'torch'

我无法解决这个问题...

python torch jupyter-notebook pytorch

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

如果文件 ~/.bashrc 不存在,我如何在 Google Colab 上安装 Torch?

我想在 Google Colab 上安装 Torch ( http://torch.ch/docs/getting-started.html#_ )。但是,要安装 Torch,我们需要在最后一步运行以下命令source ~/.bashrc

要在 google colab 上运行此命令,我使用的代码是

%%bash
source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

当我运行这些时,我收到警告

bash: 第 1 行: /content/.bashrc: 没有那个文件或目录

我也用这个命令来查找 bashrc

!find / -name '*bashrc'
Run Code Online (Sandbox Code Playgroud)

这是我得到的输出

/root/.bashrc

/etc/skel/.bashrc

/etc/bash.bashrc

/usr/share/base-files/dot.bashrc

/usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc

/usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc

我尝试source在所有这些路径上运行命令。我也尝试与.profile. 但是仍然没有安装 Torch。

编辑:我不确定是否安装了 Torch。这里的具体问题是我刚刚收到一个错误

找不到相关命令

每当我跑步thluarocks

bash deep-learning torch google-colaboratory

5
推荐指数
1
解决办法
4570
查看次数

AttributeError: 'tuple' 对象没有属性 'dim',当向 Pytorch LSTM 网络提供输入时

我正在尝试运行以下代码:

import matplotlib.pylab as plt
import numpy as np
import torch
import torch.nn as nn

class LSTM(nn.Module):
    def __init__(self, input_shape, n_actions):
        super(LSTM, self).__init__()

        self.lstm = nn.LSTM(input_shape, 12)
        self.hidden2tag = nn.Linear(12, n_actions)

    def forward(self, x):
        out = self.lstm(x)
        out = self.hidden2tag(out)
        return out


state = [(1,2,3,4,5),(2,3,4,5,6),(3,4,5,6,7),(4,5,6,7,8),(5,6,7,8,9),(6,7,8,9,0)]

device = torch.device("cuda")
net = LSTM(5, 3).to(device)

state_v = torch.FloatTensor(state).to(device)

q_vals_v = net(state_v.view(1, state_v.shape[0], state_v.shape[1]))
_, action = int(torch.max(q_vals_v, dim=1).item())
Run Code Online (Sandbox Code Playgroud)

并返回此错误:

import matplotlib.pylab as plt
import numpy as np
import torch
import torch.nn as nn …
Run Code Online (Sandbox Code Playgroud)

python tuples torch lstm pytorch

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

是否可以将训练 DataLoader(和数据集)拆分为训练和验证数据集?

torchvision 包提供了对常用数据集的轻松访问。你会像这样使用它们

trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
                                        download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=4,
                                          shuffle=True, num_workers=2)

testset = torchvision.datasets.CIFAR10(root='./data', train=False,
                                       download=True, transform=transform)
testloader = torch.utils.data.DataLoader(testset, batch_size=4,
                                         shuffle=False, num_workers=2)
Run Code Online (Sandbox Code Playgroud)

显然,您只能在train=True和之间切换train=False。该文档解释:

train (bool, optional) – 如果为 True,则从 training.pt 创建数据集,否则从 test.pt。

但这与三路拆分的常见做法背道而驰。对于严肃的工作,我需要另一个DataLoader带有验证集的。此外,最好自己指定拆分比例。他们没有说明保留用于测试的数据集的百分比,也许我想改变它。

我认为这是一个有意识的设计决定。处理这些数据集之一的每个人都应该使用相同的测试集。这使得结果具有可比性。但我仍然需要从trainloader. 是否可以将 a 拆分DataLoader为两个单独的数据流?

python torch pytorch

5
推荐指数
1
解决办法
3750
查看次数

火炬C ++:通过使用* .data <int>()获得整数张量的值

在C ++版本的Libtorch中,我发现可以通过来获得float张量的值*tensor_name[0].data<float>(),在其中0我可以使用任何其他有效索引代替。但是,当我int通过at::kInt在张量创建中添加选项来定义张量时,我无法使用此结构来获取张量的值,即类似*tensor_name[0].data<at::kInt>()*tensor_name[0].data<int>()不起作用的内容,调试器会不断说Couldn't find method at::Tensor::data<at::kInt>Couldn't find method at::Tensor::data<int>。我可以通过获取值auto value_array = tensor_name=accessor<int,1>(),但是使用起来更容易*tensor_name[0].data<int>()。您能告诉我如何使用张data<>()量值int吗?

我的类型也有同样的问题bool

谢谢,阿夫申

torch pytorch libtorch

5
推荐指数
1
解决办法
1973
查看次数