
Pytorch
文章平均质量分 68
lqjun0827
一个有梦想的程序员......
展开
-
PyTorch实现NMS算法
NMS 算法源码实现Python实现NMS(非极大值抑制)对边界框进行过滤。目标检测算法(主流的有 RCNN 系、YOLO 系、SSD 等)在进行目标检测任务时,可能对同一目标有多次预测得到不同的检测框,非极大值抑制(NMS) 算法则可以确保对每个对象只得到一个检测,简单来说就是“消除冗余检测”。原创 2024-06-20 19:31:03 · 714 阅读 · 0 评论 -
torch.topk用法
在指定维度选取k个最大(最小)的值。原创 2024-06-19 18:36:06 · 465 阅读 · 0 评论 -
torch.tensor.gather用法
是PyTorch中的一个函数,它根据索引从输入张量中收集值。原创 2023-12-09 00:46:06 · 730 阅读 · 0 评论 -
DCNv2安装适配pytorch各个版本
注意切换分支master分支支持pytorch1.11+(测试pytorch2.0.1+cuda118, 成功)pytorch1.6分支支持pytroch之前版本(测试pytorch1.10.0+cuda111, 失败)原创 2023-12-08 15:09:16 · 4865 阅读 · 0 评论 -
指数移动平均EMA
指数移动平均(Exponential Moving Average,简称EMA)是一种常用的平滑方法,通常用于时间序列数据的平滑处理。EMA 可以减小噪声的影响,使得数据更加平滑,并且能够自适应地调整权重,更好地反映时间序列的趋势。EMAtx0t0αxt1−αEMAt−1t0EMAtx0αxt1−αEMAt−1t0t0其中,xtx_txt表示时间ttt的观测值,EMAt。原创 2023-10-11 17:16:44 · 1279 阅读 · 0 评论 -
torch.where用法
是 PyTorch 中的一个函数,用于根据给定条件从两个张量中选择元素并返回一个新的张量。condition: 一个布尔型的张量,用于指定选择元素的条件。当条件为 True 时,选择x中对应位置的元素,否则选择y中对应位置的元素。x: 一个张量,表示条件为 True 时要选择的元素。y: 一个张量,表示条件为 False 时要选择的元素。返回一个新的张量,根据条件选择x或y中的元素。原创 2023-08-18 11:37:17 · 531 阅读 · 0 评论 -
计算向量或矩阵的范数
函数用于计算向量或矩阵的范数。具体计算公式取决于ord参数的取值。以下是函数中常见的ordord=None或默认值:计算Frobenius范数(矩阵的二范数)。对于向量,Frobenius范数等同于Euclidean范数(L2范数)。。ord=1:计算L1范数。也称为曼哈顿范数(Manhattan norm)或绝对值范数。。。ord=2:计算L2范数。也称为欧几里德范数(Euclidean norm)或向量的长度。。对于矩阵A,L2范数定义为A的奇异值(Singular Values)的最大值。原创 2023-08-13 12:05:39 · 377 阅读 · 0 评论 -
torch.meshgrid用法
是 PyTorch 中的一个函数,用于生成一个二维或三维网格矩阵。该函数接受一系列一维张量作为输入,然后返回一个包含所有输入张量的网格矩阵。函数通常用于生成坐标网格,以便进行网格采样、插值等操作。原创 2023-08-11 22:32:31 · 505 阅读 · 0 评论 -
LSTM原理及Pytorch使用
LSTM(Long Short-Term Memory)是一种循环神经网络(RNN)的变体,用于处理序列数据。LSTM 的设计目的是解决传统 RNN 面临的短期记忆和梯度消失的问题。LSTM 通过引入门控机制来有效地捕捉和传递长期依赖关系。LSTM 的核心思想是引入了一个称为细胞状态(cell state)的中间变量,用于保存和传递信息。细胞状态可以选择性地更新和忘记信息,从而在处理序列数据时更好地控制信息的流动。输入门遗忘门输出门(output gate)和细胞状态。原创 2023-08-09 03:36:33 · 226 阅读 · 0 评论 -
nn.InstanceNorm2d和nn.BatchNorm2d比较
和都是 PyTorch 中常用的归一化层,用于提高神经网络的训练稳定性和泛化能力。原创 2023-08-06 15:02:51 · 4021 阅读 · 0 评论 -
变分自编码器——pytorch实现VAE
变分自编码器(Variational Autoencoder,VAE)是一种生成模型,结合了自编码器和变分推断的思想。它可以用于学习数据的潜在表示,并用于生成新的样本。VAE的目标是学习一个潜在空间(latent space),使得原始数据可以通过从该潜在空间中采样并解码重构出来。编码器(encoder)和解码器(decoder)。编码器将输入数据映射到潜在空间中的一组潜在变量(latent variables)。编码器将输入数据xxx映射到潜在变量zzz的概率分布qz∣x。原创 2023-08-04 21:59:27 · 3511 阅读 · 1 评论 -
ROI Align原理介绍
是PyTorch的一个操作函数,用于在给定的RoIs(感兴趣区域)上执行空间变换网络。该操作函数可以被用于目标检测和物体识别等计算机视觉任务中,通常在RoI池化之前被执行。RoI Align(Region of Interest Align)是RoI池化的一种改进,它可以更加精确地对齐RoI中的特征,避免了RoI池化过程中的信息损失。具体来说,RoI Align操作首先将RoI区域划分为若干个小的网格,然后在每个网格内执行双线性插值,最终得到固定大小的特征图。原创 2023-07-14 15:09:26 · 3716 阅读 · 0 评论 -
torch.optim.lr_scheduler.StepLR用法
在深度学习模型训练过程中,学习率(learning rate)是一个非常重要的超参数,它决定了模型参数在每个迭代步骤中更新的幅度大小。通常情况下,我们会在训练过程中逐渐降低学习率,以使模型在接近最优解时更加稳定。torch.optim.lr_scheduler.StepLR 就是 PyTorch 中的一个学习率调度器,它可以在训练过程中按照一定的策略逐渐降低学习率。原创 2023-06-17 19:07:07 · 1129 阅读 · 0 评论 -
torch.nn.functional.cross_entropy(交叉熵)使用
是用于计算交叉熵损失函数的函数。它的输出是一个表示给定输入的损失值的张量。具体地说,函数与类是相似的,但前者更适合于控制更多的细节,并且不需要像后者一样在前面添加一个Softmax层。。input:(N, C)形状的张量,其中N为Batch_size,C为类别数。该参数对应于神经网络最后一个全连接层输出的未经Softmax处理的结果。target:一个大小为(N,)张量,其值是0原创 2023-04-14 00:55:56 · 9606 阅读 · 1 评论 -
torch_geometric.nn.MessagePassing使用
上述例子中,我们创建了一个简单的GCN模型,可以应用于输入特征为16个的图。在forward方法中,我们首先将self-loops加入到图中,然后将特征传递到线性层中。接下来,我们计算了边权重的标准化常数,然后使用propagate方法将消息从源节点传递到目标节点。在message方法中,我们对接收到的特征进行了标准化,然后在update方法中将聚合结果作为新的节点嵌入返回。最后,我们使用创建的GCN实例对输入数据进行了轻松的推断。这些类的共同点是可以从图中接收消息并在节点之间进行传递。原创 2023-04-13 10:45:43 · 384 阅读 · 0 评论 -
Pytorch中View和Permute函数比较
View和Permute函数都可以用来reshape(调整矩阵形状),本文主要用来测试其不同点。使用Permute时,是在维度上做了变换,类似于转置T,(原始数据。使用View时,是在连续数据上进行reshape(原始数据。原创 2023-03-31 19:20:24 · 258 阅读 · 0 评论