标签: pytorch

urllib.error.HTTPError:HTTP 错误 403:从 pytorch hub 加载 resnet18 时超出速率限制

我不确定为什么会出现速率限制错误。

(fashcomp) [jalal@goku fashion-compatibility]$ python main.py --test --l2_embed --resume runs/nondisjoint_l2norm/model_best.pth.tar --datadir ../../../data/fashion
/scratch3/venv/fashcomp/lib/python3.8/site-packages/torchvision/transforms/transforms.py:310: UserWarning: The use of the transforms.Scale transform is deprecated, please use transforms.Resize instead.
  warnings.warn("The use of the transforms.Scale transform is deprecated, " +
Traceback (most recent call last):
  File "main.py", line 313, in <module>
    main()    
  File "main.py", line 105, in main
    model = torch.hub.load('pytorch/vision:v1.9.0', 'resnet18', pretrained=True)
  File "/scratch3/venv/fashcomp/lib/python3.8/site-packages/torch/hub.py", line 362, in load
    repo_or_dir = _get_cache_or_reload(repo_or_dir, force_reload, verbose)
  File "/scratch3/venv/fashcomp/lib/python3.8/site-packages/torch/hub.py", line 162, in _get_cache_or_reload
    _validate_not_a_forked_repo(repo_owner, repo_name, branch)
  File …
Run Code Online (Sandbox Code Playgroud)

python http-error torch pytorch

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

TensorFlow 中 pytorch NN.module 的别名是什么?

我正在尝试在 TensorFlow 中实现 Triplet Attention。我面临的问题之一是在NN.moduleTensorFlow 中使用什么来代替

class ChannelPool(nn.Module):
    def forward(self, x):
        return torch.cat( (torch.max(x,1)[0].unsqueeze(1), torch.mean(x,1).unsqueeze(1)), dim=1)
Run Code Online (Sandbox Code Playgroud)

我应该在此处放置什么nn.Module

python deep-learning tensorflow pytorch

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

torch.cuda.is_available() 返回 False 为什么?

有人遇到过这种情况吗?

我尝试更新驱动程序并重新安装cuda

CUDA版本:11.4

图形处理器:GeForce RTX 3060 Laptop(6gb)

操作系统:Windows 10 home

火炬。版本1.9.0+cpu

pytorch

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

如何使用 cuda &gt;=11.0(和 pytorch 1.9)安装 torchtext?

我尝试过多种方法,例如

conda install -y pytorch==1.9 torchvision torchaudio torchtext cudatoolkit=11.0 -c pytorch -c nvidia
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,它永远不会下载 cuda 11.0 或更高版本的版本。

错误消息太大而无法粘贴,但您可以在此处查看详细信息:https://github.com/pytorch/text/issues/1395

使用空环境应该很容易重现,如下所示:

conda create -n env_a40 python=3.9
conda activate env_a40
conda install -y pytorch==1.9 torchvision torchaudio torchtext cudatoolkit=11.0 -c pytorch -c nvidia
Run Code Online (Sandbox Code Playgroud)

交叉发布:

有关的:


请注意,您也可以使用 pip 尝试:

pip3 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html
Run Code Online (Sandbox Code Playgroud)

还没有成功。

pytorch

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

为什么 Keras BatchNorm 产生的输出与 PyTorch 不同?

火炬\xef\xbc\x9a\'1.9.0+cu111\'

\n

Tensorflow-gpu\xef\xbc\x9a\'2.5.0\'

\n

我遇到一个奇怪的事情,当使用tensorflow 2.5的Batch Normal层和Pytorch 1.9的BatchNorm2d层计算相同的Tensor时,结果有很大不同(TensorFlow接近1,Pytorch接近0)。我一开始以为是动量和epsilon的区别,但是把它们改成相同后,结果是一样的。

\n
from torch import nn\nimport torch\nx = torch.ones((20, 100, 35, 45))\na = nn.Sequential(\n            # nn.Conv2d(512, 128, kernel_size=(1, 1), stride=(1, 1), padding=0, bias=True),\n            nn.BatchNorm2d(100)\n        )\nb = a(x)\n\nimport tensorflow as tf\nimport tensorflow.keras as keras\nfrom tensorflow.keras.layers import *\nx = tf.ones((20, 35, 45, 100))\na = keras.models.Sequential([\n            # Conv2D(128, (1, 1), (1, 1), padding=\'same\', use_bias=True),\n            BatchNormalization()\n        ])\nb = a(x)\n
Run Code Online (Sandbox Code Playgroud)\n

TensorFlow 的结果

\n

Pytorch的结果

\n

deep-learning keras tensorflow pytorch batch-normalization

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

如何删除GPU内存中的变压器模型

from transformers import CTRLTokenizer, TFCTRLLMHeadModel
tokenizer_ctrl = CTRLTokenizer.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
model_ctrl = TFCTRLLMHeadModel.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
print(tokenizer_ctrl)
gen_nlp  = pipeline("text-generation", model=model_ctrl, tokenizer=tokenizer_ctrl, device=1, return_full_text=False)
Run Code Online (Sandbox Code Playgroud)

你好,我的代码可以将变压器模型(例如这里的 CTRL)加载到 GPU 内存中。使用后如何将其从 GPU 中删除,以释放更多 GPU 内存?

显示我使用torch.cuda.empty_cache()

谢谢。

pytorch huggingface-transformers

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

PyTorch 中的填充如何工作

通常,如果我很好地理解 Conv2D 层的 PyTorch 实现,则填充参数会将带有零的卷积图像的形状扩展到输入的所有四个边。因此,如果我们有形状为 (6,6) 的图像并设置padding = 2strides = 2kernel = (5,5),则输出将是形状为 (1,1) 的图像。然后,padding = 2用零填充(上 2 个、下 2 个、左 2 个、右 2 个),得到形状为 (5,5) 的卷积图像

但是,当运行以下脚本时:

import torch
from torch import nn
x = torch.ones(1,1,6,6)
y = nn.Conv2d(in_channels= 1, out_channels=1, 
              kernel_size= 5, stride = 2, 
              padding = 2,)(x)
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

y.shape
==> torch.Size([1, 1, 3, 3]) ("So shape of convolved image = (3,3) instead of (5,5)")

y[0][0]
==> tensor([[0.1892, 0.1718, 0.2627, …
Run Code Online (Sandbox Code Playgroud)

conv-neural-network pytorch

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

`RuntimeError: 张量的元素 0 不需要 grad 并且没有 grad_fn` 用于使用 torch 进行梯度下降的线性回归

我正在尝试使用 pytorch 实现线性回归的简单梯度下降,如文档中的此示例所示:

import torch
from torch.autograd import Variable

learning_rate = 0.01
y = 5
x = torch.tensor([3., 0., 1.])
w = torch.tensor([2., 3., 9.], requires_grad=True)
b = torch.tensor(1., requires_grad=True)

for z in range(100):
    y_pred = b + torch.sum(w * x)
    loss = (y_pred - y).pow(2)
    loss = Variable(loss, requires_grad = True)
    # loss.requires_grad = True
    loss.backward()
    
    with torch.no_grad():
        w = w - learning_rate * w.grad
        b = b - learning_rate * b.grad
        
        w.grad = None
        b.grad = None …
Run Code Online (Sandbox Code Playgroud)

error-handling linear-regression gradient-descent pytorch

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

运行时错误:找到 dtype Double 但预期为 Float - PyTorch

我是 pytorch 的新手,我正在使用强化学习对时间序列进行 DQN 工作,我需要对时间序列和一些传感器读数进行复杂的观察,所以我合并了两个神经网络,我不确定这是否会破坏我的损失.向后或其他什么。我知道有多个具有相同标题的问题,但没有一个对我有用,也许我错过了一些东西。
首先,这是我的网络:

class DQN(nn.Module):
  def __init__(self, list_shape, score_shape, n_actions):
    super(DQN, self).__init__()

    self.FeatureList =  nn.Sequential(
            nn.Conv1d(list_shape[1], 32, kernel_size=8, stride=4),
            nn.ReLU(),
            nn.Conv1d(32, 64, kernel_size=4, stride=2),
            nn.ReLU(),
            nn.Conv1d(64, 64, kernel_size=3, stride=1),
            nn.ReLU(),
            nn.Flatten()
        )
    
    self.FeatureScore = nn.Sequential(
            nn.Linear(score_shape[1], 512),
            nn.ReLU(),
            nn.Linear(512, 128)
        )
    
    t_list_test = torch.zeros(list_shape)
    t_score_test = torch.zeros(score_shape)
    merge_shape = self.FeatureList(t_list_test).shape[1] + self.FeatureScore(t_score_test).shape[1]
    
    self.FinalNN =  nn.Sequential(
            nn.Linear(merge_shape, 512),
            nn.ReLU(),
            nn.Linear(512, 128),
            nn.ReLU(),
            nn.Linear(128, n_actions),
    )
    
  def forward(self, list, score):
    listOut = self.FeatureList(list)
    scoreOut = self.FeatureScore(score)
    MergedTensor = torch.cat((listOut,scoreOut),1) …
Run Code Online (Sandbox Code Playgroud)

python reinforcement-learning python-3.x pytorch

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

pytorch 闪电 epoch_end/validation_epoch_end

有人可以分解代码并向我解释吗?需要帮助的部分用“#Thispart”表示。我将非常感谢任何帮助,谢谢

def validation_epoch_end(self, outputs):
    batch_losses = [x["val_loss"]for x in outputs] #This part
    epoch_loss = torch.stack(batch_losses).mean() 
    batch_accs =  [x["val_acc"]for x in outputs]   #This part
    epoch_acc = torch.stack(batch_accs).mean()   
    return {'val_loss': epoch_loss.item(), 'val_acc': epoch_acc.item()}

def epoch_end(self, epoch, result):
    print("Epoch [{}], val_loss: {:.4f}, val_acc: {:.4f}".format( epoch,result['val_loss'], result['val_acc'])) #This part
Run Code Online (Sandbox Code Playgroud)

neural-network pytorch pytorch-lightning

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