标签: pytorch

如何在 PyTorch 中更新神经网络的参数?

比方说,我想乘在神经网络中的所有参数PyTorch(从继承类的实例,torch.nn.Module通过)0.9。我该怎么做?

pytorch

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

如何在 PyTorch 中执行求和池

如何在 PyTorch 中执行求和池。具体来说,如果我们有输入(N, C, W_in, H_in)并想要(N, C, W_out, H_out)使用特定的输出kernel_sizestride就像nn.Maxpool2d?

conv-neural-network max-pooling pytorch spatial-pooling

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

torchtext BucketIterator 最小填充

我正在尝试使用 torchtext 中的 BucketIterator.splits 函数从 csv 文件加载数据以用于 CNN。除非我有一批最长的句子比最大的过滤器尺寸短,否则一切正常。

在我的示例中,我有大小为 3、4 和 5 的过滤器,因此如果最长的句子没有至少 5 个单词,我会收到错误消息。有没有办法让 BucketIterator 动态设置批次的填充,同时还设置最小填充长度?

这是我用于 BucketIterator 的代码:

train_iter, val_iter, test_iter = BucketIterator.splits((train, val, test), sort_key=lambda x: len(x.text), batch_size=batch_size, repeat=False, device=device)
Run Code Online (Sandbox Code Playgroud)

我希望有一种方法可以在 sort_key 或类似的东西上设置最小长度?

我试过这个,但它不起作用:

FILTER_SIZES = [3,4,5]
train_iter, val_iter, test_iter = BucketIterator.splits((train, val, test), sort_key=lambda x: len(x.text) if len(x.text) >= FILTER_SIZES[-1] else FILTER_SIZES[-1], batch_size=batch_size, repeat=False, device=device) 
Run Code Online (Sandbox Code Playgroud)

python pytorch torchtext

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

pytorch - 在“with statement”中使用设备

有没有办法pytorch在特定(GPU)设备的上下文中运行(无需为每个新张量指定设备,例如.to选项)?

类似于tensorflow with tf.device('/device:GPU:0'):..

似乎默认设备是cpu(除非我做错了):

with torch.cuda.device('0'):
   a = torch.zeros(1)
   print(a.device)

>>> cpu
Run Code Online (Sandbox Code Playgroud)

python gpu pytorch

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

Pytorch 验证模型错误:预期输入batch_size (3) 匹配目标batch_size (4)

我正在 Pytorch 中构建一个神经网络,它应该可以跨 102 个类别进行分类。

我有以下验证功能:

def validation(model, testloader, criterion):
    test_loss = 0
    accuracy = 0

    for inputs, classes in testloader:
        inputs = inputs.to('cuda')
        output = model.forward(inputs)
        test_loss += criterion(output, labels).item()

        ps = torch.exp(output)
        equality = (labels.data == ps.max(dim=1)[1])
        accuracy += equality.type(torch.FloatTensor).mean()

    return test_loss, accuracy
Run Code Online (Sandbox Code Playgroud)

训练代码(调用validation):

epochs = 3
print_every = 40
steps = 0
running_loss = 0
testloader = dataloaders['test']

# change to cuda
model.to('cuda')

for e in range(epochs):
    running_loss = 0
    for ii, (inputs, labels) in …
Run Code Online (Sandbox Code Playgroud)

python neural-network pytorch

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

安装matplotlib后在Spyder中导入pytorch导致内核崩溃

我在 Anaconda3 中创建了一个环境,并在 Linux 机器上安装了 pytorch 和 spyder。以下是规格:

spyder                    3.3.1  
ipython                   7.0.1  
python                    3.7.0  
pytorch                   0.4.1  
torchvision               0.2.1  
Run Code Online (Sandbox Code Playgroud)

当我打开 spyder 并导入 Torch 时,它可以工作。之后我安装了 matplotlib 3.0.1。重新启动 spyder 并再次导入 pytorch 会在 spyder 的 ipython 窗口上显示一条消息:

An error ocurred while starting the kernel
terminate called after throwing an instance of 'std::runtime_error'
what(): expected ) but found 'ident' here:
aten::_addmv(Tensor self, Tensor mat, Tensor vec, *, Scalar beta=1, Scalar alpha=1) ?> Tensor
~~~~~~ <??? HERE
Run Code Online (Sandbox Code Playgroud)

在 bash 终端上,我收到以下消息:

js: Not allowed to load local …
Run Code Online (Sandbox Code Playgroud)

python matplotlib spyder anaconda pytorch

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

torch.utils.data.dataloader 输出类型错误:“模块”对象不可调用

所以我试图学习 pytorch,我从教程中得到了这段代码,它只是在那里导入一个 mnist 数据集,但它输出“TypeError:'module' object is not callable”在教程中“dataloader”被写为“Dataloader”但是当我像这样运行它时它输出“AttributeError:模块'torch.utils.data'没有属性'Dataloader'”

在文件 mnist 中下载的数据,但我不知道它是否完整

import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optom
from torchvision import datasets, transforms
from torch.autograd import Variable
kwargs={}
train=torch.utils.data.dataloader(datasets.MNIST("mnist",train=True,download=True,transform=transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.1307),(0.3081,) )] ) ),batch_size=64, shuffle=True, **kwargs)
Run Code Online (Sandbox Code Playgroud)

python-3.x pytorch

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

使用预训练的 ImageNet 模型进行 PyTorch 迁移学习

我想在已经在 ImageNet 上训练的模型上使用转移学习创建一个图像分类器。

如何torchvision.models用我自己的自定义分类器替换ImageNet 分类器的最后一层?

python pytorch torchvision

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

PyTorch 运行时错误:参数 0 无效:张量的大小必须匹配,维度 1 除外

我有一个 PyTorch 模型,我正在尝试通过执行前向传递来测试它。这是代码:

class ResBlock(nn.Module):
    def __init__(self, inplanes, planes, stride=1):
        super(ResBlock, self).__init__()
        self.conv1x1 = nn.Conv2d(inplanes, planes, kernel_size=1, stride=1, bias=False)
        self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=3, stride=stride, padding=1, bias=False)
        #batch normalization
        self.bn1 = nn.BatchNorm2d(planes)
        self.relu = nn.ReLU()
        self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, stride=stride, padding=1, bias=False)
        self.bn2 = nn.BatchNorm2d(planes)
        self.stride = stride

    def forward(self, x):
        residual = self.conv1x1(x)

        out = self.conv1(x)
        out = self.bn1(out)
        out = self.relu(out)

        out = self.conv2(out)
        out = self.bn2(out)

        #adding the skip connection
        out += residual
        out = self.relu(out) …
Run Code Online (Sandbox Code Playgroud)

deep-learning pytorch

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

运行时错误:库 libcublas.so.11 未找到或无法加载

我正在使用 V100 GPU、高 RAM 模式在 google colab 上开发一个 LLM 项目,这些是我的依赖项:

git+https://github.com/pyannote/pyannote-audio
git+https://github.com/huggingface/transformers.git@v4.34.1
openai==0.28
ffmpeg-python
pandas==1.5.0
tokenizers==0.14
torch==2.1.1
torchaudio==2.1.1
tqdm==4.64.1
EasyNMT==2.0.2
psutil==5.9.2
requests
pydub
docxtpl
faster-whisper==0.10.0
git+https://github.com/openai/whisper.git
Run Code Online (Sandbox Code Playgroud)

这是我导入的所有内容:

from faster_whisper import WhisperModel
from datetime import datetime, timedelta
from time import time
from pathlib import Path
import pandas as pd
import os
from pydub import AudioSegment
import numpy as np
from sklearn.cluster import AgglomerativeClustering
from sklearn.metrics import silhouette_score

import requests

import torch
import pyannote.audio
from pyannote.audio.pipelines.speaker_verification import PretrainedSpeakerEmbedding
from pyannote.audio import Audio …
Run Code Online (Sandbox Code Playgroud)

python pytorch google-colaboratory openai-whisper large-language-model

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