pytorch相关内容

RNN-运行错误:输入必须有3个维度,得到2

我收到以下错误: 运行错误:输入必须有3个维度,得到%2 我有一个功能栏,我正尝试将其输入GRU神经网络。 下面是我的数据加载器和神经网络。在检索一批数据时,我还包含了数据加载器的输出。 我做错了什么? def batch_data(feature1, sequence_length, batch_size): “”" Batch the neural network d ..

数据帧作为TorchText中的数据源

我有一个数据框,它有两列(评论和观点)。我正在使用pytorch和torchtext库来对数据进行预处理。 是否可以使用DataFrame作为源来读取TorchText中的数据? 我正在寻找类似于的东西,但不是 data.TabularDataset.splits(path='./data') 我已对数据执行了一些操作(清除、更改为所需格式),最终数据在数据帧中。 如果不是torchT ..
发布时间:2022-07-24 10:08:41 其他开发

PyTorch:如何在任何给定时刻更改优化器的学习速度(无LR时间表)

在PyTorch中是否可以在训练过程中动态更改优化器的学习速度(我不想预先定义学习速度计划)? 假设我有一个优化器: optim = torch.optim.SGD(model.parameters(), lr=0.01) 现在由于我在训练中做了一些测试,我意识到我的学习速度太快了,所以我想把它改为0.001。似乎没有方法optim.set_lr(0.001),但有什么方法可以做到 ..
发布时间:2022-07-24 09:55:50 Python

使用PyTorch计算用于分类和回归的95%可信区间的正确方法是什么?

我想使用PyTorch报告我的数据的90、95、99等可信区间。但置信度间隔似乎太重要了,不能让我的实现未经测试或受到批评,所以我希望得到反馈-至少应该由一些专家进行检查。此外,我已经注意到,当我的值为负值时,我得到了NaN值,这让我认为我的代码只适用于分类(至少),但我也会进行回归。我还感到惊讶的是,直接使用NumPy代码实际上给了我可微的张量……这是我意想不到的。 那么这是正确的吗?: ..

二维数组的行式Numpy.isin

我有两个数组: A = np.array([[3, 1], [4, 1], [1, 4]]) B = np.array([[0, 1, 5], [2, 4, 5], [2, 3, 5]]) 是否可以对2D数组使用numpy.isin行?我想检查A[i,j]是否在B[i]中,并将结果返回到C[i,j]中。最后,我将得到以下C: np.array([[False, True], [Tr ..
发布时间:2022-07-24 09:34:56 Python

如何编写一个PyTorch顺序模型?

到目前为止,我用Kera写了我的MLP、RNN和CNN,但现在PyTorch在深度学习社区中越来越受欢迎,所以我也开始学习这个框架。我非常喜欢Kera中的顺序模型,它可以让我们非常快速地制作简单的模型。我还看到了PyTorch具有此功能,但我不知道如何编写它。我试过这种方法 import torch import torch.nn as nn net = nn.Sequential() n ..
发布时间:2022-07-24 09:23:03 Python

如何从图像列表开始加载数据集

我有一个服务可以从另一个服务(我们称其为服务B)接收二进制格式的图像: from PIL import Image img_list = [] img_bin = get_image_from_service_B() image = Image.open(io.BytesIO(img_bin)) # Convert bytes to image using PIL 当使用PIL成功转换 ..
发布时间:2022-07-24 09:16:02 Python

用PyTorch预测网格坐标序列

我有一个类似的开放问题here on Cross Validated(虽然不是以实现为重点的,我打算这个问题是这样的,所以我认为它们都是有效的)。 我正在进行一个项目,该项目使用传感器来监控人员的GPS位置。然后,坐标将被转换为简单的网格表示。我想尝试和做的是,在记录用户路线后,训练神经网络来预测下一个坐标,即以下面的例子为例,用户在一段时间内只重复两条路线,Home->A和Home->B。 ..

对火炬NLLLOS的理解

PyTorch的负对数似然损失nn.NLLLoss定义为: 因此,如果损失是以一批一的标准重量计算的,则损失的公式始终为: -1*(模型对正确类的预测) 示例: 正确类=0 正确类别的模型预测=0.5 损耗=-1*0.5 那么,如果不存在计算损失的对数函数,为什么它被称为负对数似然损失? ​ 推荐答案 实际上没有使用log来计算nn.NLLLoss ..
发布时间:2022-06-28 21:15:17 其他开发

CNN:为什么我们先将图像调整到256,然后将中心裁剪到224?

Alexnet图像输入的转换如下: transforms.Resize(256), transforms.CenterCrop(224), 为什么我们首先将图像大小调整为256,然后将中心裁剪为224?我知道224x224是ImageNet的默认图像大小,但为什么我们不能直接将图像大小调整到224x224? 推荐答案 也许这是最直观的说明。考虑下图(128x128px): ..
发布时间:2022-06-26 20:54:19 其他开发

正在耗尽CUDA内存

我正在尝试培训一个网络,但我得到了, 我将我的批处理大小设置为300,我得到了这个错误,但即使我将它减少到100,我仍然得到这个错误,更令人沮丧的是,对于在~1200个图像上运行10个纪元,它需要大约40分钟,任何建议是哪里出了问题,以及我如何加快这个过程! 任何提示都将是非常有帮助的,提前谢谢。 ----------------------------------------------- ..
发布时间:2022-06-23 18:16:42 其他开发

什么是自适应平均池,它是如何工作的?

最近,当我尝试实现AlexNet时,我在Pytorch中遇到了一个方法。 我不明白它是怎么运作的。请举几个例子解释一下背后的想法。在神经网络功能方面,它与Maxpooling或Average Poling有何不同 nn.AdaptiveAvgPool2d((6,6)) 推荐答案 在平均池化或最大池化中,基本上由您自己设置步长和内核大小,并将它们设置为超参数。如果您碰巧更改了输入大 ..
发布时间:2022-06-23 18:12:16 Python

把一个简单的CNN从眼角变成火炬

有没有人能帮我把这个模型转换成PyTorch?我已经尝试过像这样How can I convert this keras cnn model to pytorch version从凯拉斯转换到火炬,但训练结果不同。谢谢。 input_3d = (1, 64, 96, 96) pool_3d = (2, 2, 2) model = Sequential() model.add(Convolut ..
发布时间:2022-06-23 18:04:19 其他开发

节省和重新装入紧凑面微调变压器

我正在尝试重新加载经过微调的DistilBertForTokenClass模型。我使用的是Translers 3.4.0和pytorch版本1.6.0+cu101。在使用训练器训练了下载的模型之后,我用traine.saveModel()保存了模型,在排除故障时,我通过模型保存到了一个不同的目录。我正在使用Google Colab,并将模型保存到我的Google Drive中。在测试了模型之后,我 ..
发布时间:2022-06-23 17:55:09 Python

通过torch.topk派生渐变

我要通过torch.topk函数派生渐变。 假设输入是一个向量 , 然后通过参数矩阵对其进行变换 , ,并选择向量的前k个值 。 结果向量通过元素乘法进一步转换。 最终损失计算方式为 。 我想知道,损失相对于W是可微的吗?形式上,我们可以计算以下梯度吗? 推荐答案 topk()运算只是拾取张量的前k元素的线性变换。由于这是一种W @ X或矩阵-向量乘法运算 ..
发布时间:2022-04-12 14:17:48 其他开发