自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 收藏
  • 关注

原创 FCN原理讲解

https://juejin.cn/post/7163126966558654501

2024-07-18 20:16:04 109

原创 SEnet

2024-07-18 20:01:24 65

原创 softmax进行分类

解释:

2024-07-18 12:39:21 102

原创 无需锚框的中心域法FCOS

2024-07-16 19:22:54 65

原创 无需锚框地检测算法

2024-07-16 18:48:43 69

原创 内容回顾:基于锚框的检测算法

2024-07-16 14:06:36 100

原创 人脸识别地 技术与挑战

2024-07-16 13:23:38 154

原创 基于锚框的单阶段检测算法:RetinaNet和Focal loss和难样本挖掘;sigmoid和softmax区分

2024-07-16 11:51:00 68

原创 物体检测单阶段SSD

Faster RCNN 数据增广:

2024-07-15 21:37:05 191

原创 Faster R-CNN算法的改进:多个检测层和特征金字塔FPN

2024-07-15 20:02:47 104

原创 R-CNN

2024-07-15 19:40:02 78

原创 基于锚框的物体检测过程

锚框匹配在基于锚框的物体检测算法(如 Faster R-CNN、SSD 和 RetinaNet)中起着至关重要的作用。通过匹配锚框与实际目标,可以将检测问题转化为分类和回归问题,从而有效地训练和优化检测模型。这一过程确保了模型能够准确地定位和识别不同尺度和长宽比的目标。

2024-07-15 01:55:59 232

原创 检测精度评价指标召回率和精确率

检测精度评价指标为:1、召回率(Recall Rate ) 2、平均精度均值(mAP) 3、平均对数漏检率(MR-2)计算 TP 和 FP 的示例假设你有一个目标检测模型,并使用它检测图像中的目标。你需要计算 TP 和 FP 以评估模型的性能。

2024-07-15 00:38:25 370

原创 构建图像金字塔遍历不同的大小

总结:通过上述步骤和代码示例,你可以实现遍历图像金字塔的不同大小,并对每一层图像进行处理。这种方法可以用于多种图像处理任务,包括目标检测、图像分析和特征提取等。一旦构建了高斯金字塔,就可以遍历每一层,对每一层的图像进行处理。例如,你可以显示图像,进行图像分析或应用特定的图像处理算法。如果你有一个目标检测算法,可以在每一层图像中运行这个算法,以检测不同大小的目标。1、首先、构建金字塔,其中包括从原始图像到多层缩小后的图像。2、遍历金字塔不同的大小。

2024-07-14 22:50:26 352

原创 目标检测发展

2024-07-12 09:51:11 75

原创 量化技术介绍

量化是一个信息有损压缩的过程,如果训练过程中使用FP32,在模型推理时使用Post-training Quantization(PTQ)直接量化为INT8模型,模型精度会存在一定损失。而量化感知训练(Quantization-aware-training, QAT)在模型训练过程中就引入了。量化(quantization)是模型压缩的一种常用方法,通常情况下可以使用不同的量化策略,来模拟量化过程中带来的误差,通过这种方式能够进一步减少量化后模型的精度损失。介绍压缩方法之一:量化;

2024-07-12 09:50:57 204

原创 数据集进行增强

pruned_weights = torch.index_select(model.conv1.weight.data, 0, sorted_channels[num_prune:]) # 获取保留的权重。conv1_weights = model.conv1.weight.data.abs().sum(dim=[1, 2, 3]) # 计算每个通道的L1范数。self.conv1 = nn.Conv2d(1, 4, kernel_size=3, padding=1) # 4个输出通道。

2024-07-11 18:54:30 500

原创 模型剪枝介绍

因此,如何在保持模型准确率的同时,尽可能地减少模型的体积和计算复杂度,成为了一个重要的研究方向。由于深度学习模型中的神经元、卷积核、权重参数等结构单元和参数往往存在冗余和不必要的部分,因此可以通过剪枝技术来减少这些冗余部分,从而达到减小模型体积和计算复杂度的效果。,以减少模型的存储空间和计算复杂度,同时保持模型的准确率。常见的结构剪枝方法包括:通道剪枝、层剪枝、节点剪枝、过滤器剪枝等。对剪枝后的模型进行微调或增量学习,以进一步提高模型的准确率和性能。选择合适的剪枝策略和剪枝算法,以提高剪枝的效果和准确率。

2024-07-11 16:29:36 380

原创 L1和L2正则化

Ref:一篇文章详解深度学习正则化方法(L1、L2、Dropout正则化相关概念、定义、数学公式、Python代码实现)_线性回归用numpy和pandas实现l2正则化-CSDN博客

2024-07-10 16:11:43 171

原创 Transforemr的时间复杂度

2024-07-10 15:13:20 90

原创 Dropout正则化

Dropout的实现方法:Dropout正确的做法是在训练的过程中按照一定的比例(比例参数可设置)随即忽略一些或者屏蔽一些神经元。随着神经网络模型的不断学习,神经元的权值会与整个网络的上下文相 匹配。周围的神经元则会依赖于这种特殊化,但如果过于特殊化,模型会因为对训练数据的过拟合而变得脆弱不堪。神经元在训练过程中的这种依赖于上下文的现象 被称为复杂的协同适应;以后,输入的特征都是有可能会被随机清除的,所以该 神经元不会再特别依赖于任何一个输入特征,也就是说不会给任何一个输入 设置太大的权重。

2024-07-10 10:49:47 83

原创 BN的 作用

的出现,网络参数量大大减低,使得几十层的深层网络成为可能。然而,在残差网络出现之前,网络的加深使得网络训练变得非常不稳定,甚至出现网络长时间不更新或者不收敛的情形,同时网络对超参数比较敏感,超参数的微量扰动也会导致网络的训练轨迹完全改变。也就是说,通过上面的公式计算,可以将原本随机分布的输入数据x,转化成按正态分布分布的数据x ^ ,从而使得输入网络的数据分布较近,有利于网络的迭代优化。1)使得网络的超参数的设定更加自由,比如更大的学习率,更随意的网络初始化等,同时网络的收敛速度更快,性能也更好。

2024-07-09 20:39:24 440

原创 语义分割和实例分割区别?

具体来说:语义分割的目标是:将行人识别为行人,将车识别为车,将房屋识别为房屋;但是我不去区分每个行人、每辆车和每栋房屋,具体如下:所有行人的颜色是一样的,所有汽车的颜色是一样的,所有房屋的颜色是一样的;实例分割:实例分割同时利用目标检测和语义分割的结果,通过目标检测提供的目标最高置信度类别的索引,将语义分割中目标对应的Mask抽取出来。简而言之,就是把一个类别里具体的一个个对象(具体的一个个实例)分割出来。:语义分割的目的是为了从像素级别理解图像的内容,并为图像中的每个像素分配一个对象类。

2024-07-09 20:23:23 238

原创 Transformer中的编码器和解码器结构有什么不同?

Transformer背后的核心概念:注意力机制;编码器-解码器结构;多头注意力等;例如:The cat sat on the mat;1、嵌入:首先,模型将输入序列中的每个单词嵌入到一个高维向量中表示,这个嵌入过程允许模型捕捉单词之间的语义相似性。2、查询,键,和值向量;接下来,模型为序列中的每个单词计算向量:查询向量、键和值向量。在训练过程中,模型学习这些向量,每个向量都有不同的作用。查询向量表示单词的查询,即模型在序列中寻找的内容。键向量表示单词的键,即序列中其他单词应该注意的内容。

2024-07-09 18:45:27 1075

原创 自注意力机制和多头注意力机制区别

自注意力机制是一种计算输入序列中每个元素对其他元素的重要性的方法。在NLP任务中,输入通常是一个词序列,自注意力机制通过计算每个词与其他词之间的相似度来获取上下文信息。多头注意力机制是在自注意力机制的基础上,引入多个独立的注意力头(attention heads),每个头在不同的子空间中独立计算注意力。自注意力机制:通过计算输入序列中每个元素与其他元素之间的相似度,捕捉上下文信息。优点是能够捕捉长距离依赖关系,并且计算效率高。多头注意力机制。

2024-07-07 18:09:21 405

原创 扩散模型笔记2

在扩散模型中,每一步添加的噪声是从标准正态分布中重新采样的,因此每一步的噪声是不同的。系数 αt 控制了每一步中噪声的添加量,通常随着时间步的增加而变化。这种方法确保了噪声逐步增加,使得图像逐渐从原始状态变为完全噪声化的状态。

2024-07-07 17:42:45 279

原创 扩散模型笔记

设置步长参数T为1000看起来很大,但实际上通过使用马尔可夫链的性质,我们可以简化计算,只需要生成特定时间步的噪声图像,而不需要每一步都计算所有中间状态。这使得生成噪声图像的过程更加高效和简便。在扩散模型中,第499步的图像是通过前一步(第498步)的图像生成的,而第498步的图像是通过第497步的图像生成的,以此类推。这种逐步生成的方法依赖于马尔可夫链的性质,即每一步的状态只依赖于前一步的状态。不过,如果我们只关心第499步的图像,我们不需要依次生成每一步的图像。

2024-07-07 17:38:33 969

原创 new和malloc区别:

对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数,由于malloc/free函数是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。3、因此C++语言需要一个能完成内存分配和初始化工作的运算符new,以一个能够清理与释放工作的运算符delete。1、malloc和free是C++/C语言的标准库函数,new和delete是C++中的运算符。4、C++程序经常要调用C函数,而C程序只能用malloc/free管理动态内存。

2024-06-17 14:32:23 173

原创 通过公有成员函数访问私有成员

【代码】通过公有成员函数访问私有成员。

2024-05-30 11:11:45 89

原创 const修饰成员函数

【代码】const修饰成员函数。

2024-05-22 17:26:01 112

原创 this的使用

this指针:指向调用成员函数的对象本身。可以在类的成员函数中使用this指针来引用对象的成员变量和成员函数。避免命名冲突:在参数名称与成员变量名称相同时,通过this->可以明确地指示成员变量。返回对象本身:在需要返回对象本身以实现链式调用的场景中,返回*this。通过理解和使用this指针,可以编写更加清晰、简洁和功能强大的类和成员函数。

2024-05-22 15:14:47 177

原创 在 C++ 中,p->name 和 p.name 的效果并不相同。它们用于不同的情况,取决于你是否通过指针访问结构体成员。

使用->运算符用于通过指针访问结构体的成员。使用运算符用于通过结构体对象访问其成员。确保根据变量的类型(是指针还是对象)使用正确的运算符。

2024-05-22 14:32:15 370

原创 成员变量和成员函数分开存储

【代码】成员变量和成员函数分开存储。

2024-05-16 16:22:08 272

原创 静态成员

在C++中,静态成员变量是属于类的一部分,而不是属于任何单独的类实例。这意味着无论你创建了多少对象,类的所有实例都会共享同一个静态成员变量。静态成员变量有一些特定的特性和用法,这使得它们在某些特定场景下非常有用。

2024-05-16 12:24:42 406

原创 类对象作为成员

使用而不是直接使用m_Phone是因为我们需要访问Phone对象中的具体成员变量,以便获取和显示手机的名称。直接使用m_Phone是不合适的,因为它是一个对象,而不是一个具体的数据成员。通过访问对象中的成员变量,我们可以准确地获取和操作对象内部的数据。

2024-05-16 11:05:22 267

原创 类对象作为类成员

当类对象作为另一个类的成员时,嵌套对象会随着包含它的对象一起构造和析构。在包含类的构造函数中,可以通过初始化列表来初始化嵌套对象。这种设计方式可以用来创建更复杂的对象结构,促进代码的可重用性和模块化,增强代码的组织和管理能力。通过这种方式,我们可以有效地组织和管理复杂系统中的对象和数据,利用类之间的组合关系来实现更高效的代码设计。

2024-05-16 09:55:44 309

原创 深拷贝和浅拷贝--深拷贝

不仅复制对象的所有成员变量的值,还复制成员变量指针或引用所指向的实际数据。深拷贝是指在复制对象时,,因为它们有各自独立的。

2024-05-14 17:23:39 158

原创 浅拷贝与深拷贝---浅拷贝

如果对象包含指针或引用类型的成员变量,浅拷贝只复制指针或引用本身。这意味着原对象和拷贝对象共享相同的底层数据。浅拷贝(Shallow Copy)是指在。而不复制它们指向的实际数据。对象的所有成员变量的值。,因为它们共享相同的。

2024-05-14 17:19:51 112

原创 拷贝构造函数

在 main() 函数中,首先创建了一个名为 obj1 的对象,并将 value 成员变量设置为 10。接下来,通过使用拷贝构造函数将 obj1 对象复制到 obj2 中,创建了一个新的对象 obj2。通过在拷贝构造函数中访问 other 对象的属性,并将它们复制到当前对象中,可以实现对象的拷贝操作。拷贝构造函数(Copy Constructor)是一种特殊的构造函数,用于创建一个新对象,其内容与现有对象相同。这说明拷贝构造函数成功地将一个对象的内容复制到了另一个对象中,从而实现了对象的拷贝。

2024-05-14 11:04:02 138

原创 构造函数和析构函数

构造函数:主要用于创建对象时为对象的成员属性赋值,构造函数由编译器自动调用,无需手动调用。析构函数:主要用于在对象销毁前系统自动调用,执行一些清理工作;

2024-05-14 10:11:34 338

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除