- 博客(19)
- 收藏
- 关注
原创 写论文应该怎么写呢?框架替换!
YOLO算法旨在通过全局特征来预测边界框和分类结果,而不是依赖于局部特征,传统cnn:VGG-16,Resnet-50,DenseNet等等。引入注意力机制也会增加模型参数量,可能会导致训练和推理过程变得更加。使主干网络在提取特征时能够获取更多的有用信息,尽量保持精度的。传统的CNN网络精度高但参数量巨大,计算慢,如果场景对精度。轻量级CNN参数量小,速度提升非常多,但是精度下降也很多。主干网络是模型的核心,影响着模型的速度和精度。1增加注意力机制不增反降问题。要求非常高且不用管速度可以。
2024-10-25 11:34:15
183
原创 pytorch 标准化和残差
init是为了初始化对象的架构,forward定义计算流程。forward 会在 __call__ 自动调用 和c++forward就是模型对象被当成函数调用时自动触发的方法。就是init一次,构建一个新对象,权重也是新的。是init就是创建模型对象时的初始化操作,
2024-09-28 18:37:33
248
1
原创 Transformer 里 Q K V 的解释
例如你和你自己的关系是 0.7, 你和小红的关系是0.2,你和小刚的关系是0.1. 分值大说明关系好。这三个严格来说都是矩阵向量,最开始的时候是随机生成的,通过不断迭代训练计算出来(涉及到正向传递,反向传递,损失函数,求w b ,这里不展开)。回到你的问题,v 是用来算分的,也就是你和其他人之间的关系到底是多少得分,就是通过v 算出来的。最开始Wq,Wk,Wv 是随机生成的, 后面通过训练 Wq,Wk,Wv 会不断调整,通过loss 函数进行。, V 的值是为了计算关系之后再考虑自己的在关系中的地位。
2024-09-28 18:29:02
669
原创 Transformer 的解码器
测试阶段:解码器也会有输入,但是此时,测试的时候是不知道目标语句是什么的,这个时候,你每生成一个词,就会有多一个词放入目标语句中,每次生成的时候,都是已经生成的词(测试阶段只会把已经生成的词告诉解码器)(做测试要是能知道后面的那不就相当于玩赖了吗)decoder将生成的词作为输入,而第一个词生成的过程是通过decoder初始化的Q来进行生成的,如果第一个词生成错了,后面生成的词会不会都有错误?当我们生成这个词的时候,通过已经生成的词和源语句做自注意力,就是确定源语句中哪些词对接下来的词的生成更有作用。
2024-09-27 17:54:43
321
原创 Transformer 的编码器
Feed Forward(前面每一步都在做线性变换,wx+b,线性变换的叠加永远都是线性变换,通过Feed Forward中的Relu做一次非线性变换,这样的空间变换可以无限拟合任何一种状态了),得到r1。输入到self-attention子层中,做注意力机制(x1,),得到z1(x1与x1,x2拼接起来的句子做了自注意力机制的词向量,表征的仍然是thinking),也就是说z1拥有了位置特征,句法特征,语义特征的词向量。得到了黄色的x1,拥有了位置属性的词向量。这个r1是thingking的新的表征。
2024-09-27 11:39:31
184
原创 Positional Encoding (为什么self-attention需要位置编码)
通过计算‘他’这个词的注意力得分发现,两个‘他’的得分是一致的,无法区分位置关系,举一个又重复词语的例子,比如他和他的她。因此需要位置编码区分两个‘他’的位置。
2024-09-26 17:45:38
144
原创 Multi-Head Self-Attention(从空间角度解释为什么做多头)
self-attention解决了刚才的两个问题,QKV来源与同一个X,其实可以看成是相等的,只不过做了3组不同的线性变换。这个图是,给出QKV,KV往往是相同的,通过Q这个查询变量,查询V这个里面比较关键的信息。但是这就有个问题,自注意力机制模型对当前位置的信息进行编码时,会过度的将注意力集中于自身的位置,有效信息抓取能力就差一些。多头的个数用h表示,h=8,一般使用的是8头自注意力。所谓的8块,其实是选了8个不同的W做8次不同的线性变换,得到8个Z。同样的X,乘不同的w的矩阵,得出8个不同的QKV。
2024-09-26 16:02:38
300
原创 Masked (掩码) self-attention 在自注意力模型上面做了改进
以前的自注意力机制是一句话你能计算每个单词之间的相似度,这个任务生成文本,一个个单词生成,你没法计算每个单词之间的相似度,因为当生成 I 时 还没有 have。也就是说第一个生成的I无法和后面的dream单词做注意力计算。当我们做生成任务的时候,我们也想对生成的这个单词做注意力计算,但是,生成的句子是一个一个单词生成的。后面的单词不应该反过来影响你前面的单词。掩码是为了掩盖掉当前词后面的词,减少后面词对当前词的影响。为什么要做这个改进:生成模型,生成单词,一个一个生成的。后面的还没生成,你也不知道是什么。
2024-09-26 10:36:32
275
原创 Transformer
Thinking--得到x1(词向量,可以通过one-hot,word2vec得到)+叠加位置编码给x1赋予位置属性,然后得到黄色的x1,-》输入到self-attention子层中, 做注意力机制(x1,x2拼接起来的一句话做),得到z1(x1与x1,x2拼接起来的句子做了自注意力机制的词向量,表征的仍然是thingking),也就是说z1拥有了位置特征,句法特征,语义特征的词向量。总结下(这是重点,上面听不懂没关系):做词向量,得到优秀的词向量,让这个词向量能够更加精准的表示这个单词,这句话。
2024-09-13 11:31:16
640
原创 Transformer之 注意力机制
当你使用Q查询结束了后,Q已经失去了它的使用价值。我们最终还是要拿到这张图片的, 只不过现在的这种图片,它多了一些信息,(多了于我而言,更重要的,更不重要的信息),通过点乘的方法计算Q和K里的每一个事物的相似度,就可以拿到Q和k1的相似值,我看这张图的第一眼,我就会去判断哪些东西对我而言更重要,哪些对我不重要。=V可不可以,可以的,做一层softmax(a1,a2,。我(查询对象 Q),这张图(被查询对象V),Q,K=k_1,,我们一般使用点乘的方式。进而就可以找出哪个Q而言,更重要了。
2024-09-10 17:34:14
262
原创 《计算机视觉》-YOLOV2
神经元的输出-均值除以标准差,为什么,因为很多sigmoid 在0附近是非饱和区,是最容易训练的,可以大大加快收敛。YOLOV1定位性差,精确调整差,recall 低,最多预测98个bbox,最多49个物体。13*13个grid cell,预测5种,只需要计算偏移量。天生预测矮胖的物体,汽车,天生预测高的,行人。不再野蛮生长,开始就知道天生的使命,模型更加稳定。每个girdcell,都有5种anchor。虽然速度快,但准确度低,密集目标能力差。先验的参考框,在自己原有的位置上,微调,第二个技巧 高分辨率。
2024-09-09 11:31:06
188
原创 《计算机视觉》---YOLO 系列
为什么是7*7*30呢,这是因为网络把图像化成s*s个网格,s=7,7行7列, 49个grid cell,每一个grid cell 也可以预测B个 bounding box,B=2,b个预测框,可能很大,可能很小,也可能覆盖,中心点都落在所在的grid cell里面,预测框包含了(x,y,h,w,c)。输入是一个448*448*3的图像,3通道RGB,最后变成7*7*1024维的feature map,拉平,喂到一个4096的全连接层中,得到4096维的向量,然后再喂到1470维的全连接层中,
2024-09-03 17:50:37
229
原创 计算机视觉--Fast RCNN
展评处理,也与RCNN不同,用的是SVM分类器。但fast结合再一个网络中。2000中采集64个,候选框与真实的iou大于0.5,第二步就开始不一样了,RCNN。输出N+1个类别的概率,ROi ,感兴趣区域。
2024-08-18 10:49:44
141
原创 计算机视觉--第二章 深度卷积神经网络
深度卷积神经网络的概念深度学习是机器学习的一个重要分支,源于人工神经网络的研究。深度学习的模型结构是一种含多个隐藏层的神经网络。而多层神经网络目前效果比较好的卷积神经网络,在图像处理和音频处理上效果较好。卷积神经网络是一类包含卷积算法且具有深度结构的前馈神经网络,是深度学习的代表算法之一。卷积神经网络通过卷积和池化操作自动学习图像在各个层次上的特征,这符合我们理解图像的常识。
2024-08-09 11:57:31
843
原创 《计算机视觉》----第一章 人工智能概述
1986年,BP算法,不断地调整神经元之间的权值和阈值,直到输出误差减小为允许的范围,或达到预先设定的训练次数为止。但计算机的硬件水平有限,运算能力跟不上算法的要求,这就导致当神经网络的规模增大时,使用BP算法会出现梯度消失问题。2006年,Hinton提出了深度学习概念,给出了梯度消失问题的解决方案,即通过无监督的学习方法逐层训练算法,再使用有监督的反向传播算法进行调优。10个类别,多达60000张的32*32像素彩色图像(5万张训练图像和1万张测试图像),平均每种类别拥有6000张图像。
2024-08-09 11:56:37
403
原创 《计算机视觉》第四章 图像分割(概述)
该方法的主要创新点就是条件随机场部分,为了能够取得类似于传统条件随机场的全局优化效果,利用循环的方式将上一层的输出作为下一层的输入,其中采用的条件随机场架构是基于全局连接模型,图像分割的条件随机场推理的关键因素就是将类别标号问题转变成概率推理问题。扩张路径由2*2的反卷积实现,反卷积的输出通道为原来通道数的一半,与原来的特征图串联,从而得到和原来一样多的通道数的特征图。目标检测是在图像分类的基础上,进一步判断图像中的目标具体在图像的什么位置,通常是以包围盒(bounding box)的形式。
2024-08-09 11:42:51
649
原创 《人工智能导论》这本书总结
它们主要用于确定数据集中某个维度(在这个例子中是第一个维度,即x坐标)的最小值和最大值,并在此基础上进行一些扩展,以便在可视化或计算时有更多的空间。例如回答一杯液体是红酒还是啤酒,首先要清楚这个问题是一个分类问题,泡沫数量,液体颜色,酒杯的形状等是重点,液体的多少,酒杯的容量等不是。聚类和分类的最大区别在于,聚类过程为无监督过程,即待处理数据对象没有任何先验知识,而分类过程为有监督过程,即存在有先验知识的训练。聚类的目标是识别数据点的内在属性,使他们属于相同的子组。循环神经网络 RNN。
2024-08-09 11:38:08
1045
原创 《计算机视觉》-RCNN-鼻祖
因为CNN实际上做的事情是特征提取,为了避免CNN过拟合,所以选择了IoU>0.5作为threshold来增加样本数量避免过拟合,而这样的IoU会导致框的位置不准确。而SVM适合小样本的训练,因此选择了IoU>0.7作为threshold,可以使得框位置更加精确。提出一个4096维的特征,然后用svm进行分类。输入图像,用某种方法,生成2000个候选框,统一强制缩放生成227*227的正方形。问题:为什么不直接用CNN最后一层的softmax来进行分类,而使用SVM?严重依赖上下游的,不是端到端。
2024-08-09 11:18:04
52
原创 计算机视觉 --第三章 目标检测(概述)
目标检测算法主要包括1基于候选区域的卷积神经网络算法2.基于回归方法的卷积神经网络算法基于候选区域的深度卷积神经网络是一种将深度卷积神经网络和区域推荐相结合的物体检测方法。也可以叫两阶段目标检测算法。第一阶段完成区域框的推荐,第二阶段是对区域框进行目标识别。区域框推荐算法提供了很好的区域选择方案,使用图像中的颜色、纹理、边缘等图像特征信息作为目标区域推荐的依据。预先在图像中找出可能会出现目标的位置。这种有针对性的选取目标区域。
2024-08-09 10:59:48
250
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人