深度学习/机器学习的相关知识概念
文章平均质量分 71
梦在黎明破晓时啊
这个作者很懒,什么都没留下…
展开
-
在图像识别中的“long-rang”理解
在传统的图像识别模型中,如卷积神经网络 (Convolutional Neural Network, CNN),由于它们的局部连接和池化操作,它们在处理图像时倾向于只关注局部区域,而对于图像中远距离的特征,它们的捕捉能力会有所下降。在图像识别中,“long-range” 通常指的是模型在处理图像时能够捕捉到图像中远距离相关性或模式的能力。总之,long-range在图像识别中的意思是指模型在处理图像时能够捕捉到图像中的长程依赖关系。原创 2024-05-06 23:02:14 · 271 阅读 · 0 评论 -
深度学习中图像标注框的作用是什么
在深度学习中,图像标注框(bounding box)是用来标识图像中目标对象位置的矩形框。总的来说,图像标注框在深度学习中扮演着关键的角色,帮助模型实现目标检测、定位和识别任务,同时也是训练数据准备和模型性能评估的重要工具。自己学习深度学习进行目标识别有一段时间了,但总觉得对很多东西的理解有偏差,现将自己的理解发不出来,让大家帮忙指正。原创 2024-04-16 13:54:42 · 435 阅读 · 0 评论 -
在根据卷积核大小计算padding时要遵循什么原则
总的来说,根据卷积核大小计算 padding 的原则是确保卷积操作能够正确应用在输入数据上,并且可以控制输出的尺寸。在实际应用中,根据具体的网络结构和需求来选择合适的 padding 大小,以获得期望的输出结果。其中,output size 是期望的输出尺寸,input size 是输入尺寸,filter size 是卷积核大小,stride 是步幅。:在某些情况下,可能需要根据具体需求调整 padding 大小,例如需要特定的输出尺寸或特征图形状。其中,filter size 是卷积核的大小。原创 2024-03-17 22:02:06 · 416 阅读 · 0 评论 -
论文中的SOTA model 和 SOTA result分别指代什么?
SOTA model:state-of-the-art model,并不是特指某个具体的模型,而是指在该项研究任务中,目前最好/最先进的模型。SOTA result:state-of-the-art result,指的是在该项研究任务中,目前最好的模型的结果/性能/表现。原创 2024-01-22 15:56:17 · 422 阅读 · 0 评论 -
什么是Feature map、filter、channel
在cnn的每个卷积层,数据都是以三维形式存在的。你可以把它看成许多个二维图片叠在一起(像豆腐皮一样),其中每一个称为一个feature map。原创 2023-10-24 23:05:50 · 110 阅读 · 0 评论 -
上采样(UnSampling) 和 下采样(DownSampling)
(upsampling)或图像插值(interpolating))的主要目的是:放大原图像,从而可以显示在更高分辨率的显示设备上。1、缩小图像(或称为。2、放大图像(或称为。原创 2023-10-24 15:12:16 · 240 阅读 · 0 评论 -
Pool池化下采样层详解(三)
output_size:指定输出固定尺寸。自适应平均池化,指定输出(H,W)原创 2023-10-22 12:09:46 · 431 阅读 · 0 评论 -
在pytorch中对于张量维度的理解
从左边开始数连续[的数量,最多有X个[说明是X维张量。上面的例子就是4维张量。shape属性中的元素大于等于3时,可以用3维空间来理解。shape=(3, 4, 2)时,表示3个4行2列的张量shape=(2, 3, 4, 2)时,表示有2个 3行4列深度为2的张量shape=(6, 2, 3, 4, 2)时,表示有6个四维张量,这个四维张量又可以表示为2个 3行4列深度为2的张量。原创 2023-10-22 10:32:58 · 972 阅读 · 6 评论 -
评价指标篇——IOU(交并比)
IoU是一个简单的测量标准,只要是在输出中得出一个预测范围(bounding boxex)的任务都可以用IoU来进行测量。集合论中,设A,B是两个集合,由所有属于集合A且属于集合B的元素所组成的集合,叫做集合A与集合B的交集,记作A∩B。给定两个集合A,B,把他们所有的元素合并在一起组成的集合,叫做集合A与集合B的并集,记作A∪B,读作A并B。IoU是两个区域重叠的部分除以两个区域的集合部分得出的结果,通过设定的阈值,与这个IoU计算结果比较。IoU是一种测量在特定数据集中检测相应物体准确度的一个标准。原创 2023-10-07 21:28:57 · 512 阅读 · 0 评论 -
图像数据通道格式:NCHW和NHWC的区别
*结论:**在训练模型时,使用GPU,适合NCHW格式;在CPU中做推理时,适合NHWC格式。采用什么格式排列,由计算硬件的特点决定。OpenCV在设计时是在CPU上运算的,所以默认HWC格式。TensorFlow的默认格式是NHWC,也支持cuDNN的NCHW。链接:https://www.jianshu.com/p/61de601bc90f。作者:LabVIEW_Python。原创 2023-09-17 14:41:59 · 1388 阅读 · 0 评论 -
构建模型三要素与权重初始化
nn.ModuleModuleconvpoolingLinearBatchNorm我们先看一个例子:先看__init__(self)函数第一行是初始化,往后定义了一系列组件。nn.Conv2d就是一般图片处理的卷积模块,然后池化层,全连接层等等。定义完这些,再定义forward函数x为模型的输入,第一行表示x经过conv1,然后经过激活函数relu,然后经过pool1操作第三行表示对x进行reshape,为后面的全连接层做准备至此,对一个模型的定义完毕,如何使用呢?其实,就是类似于使用了。原创 2023-09-17 00:11:13 · 161 阅读 · 0 评论 -
torch.nn.Parameter()函数
在很多经典网络结构中都有这个函数,故对其进行了解。torch.nn.Parameter 作用将一个不可训练的类型为Tensor的参数转化为可训练的类型为parameter的参数,并将这个参数绑定到module里面,成为module中可训练的参数。原创 2023-09-16 18:12:56 · 1652 阅读 · 0 评论 -
torch.cat((A,B),dim=*)解析
torch.cat((A,B),dim=*)解析原创 2023-08-19 12:54:27 · 321 阅读 · 0 评论 -
x.view(a,b)及x = x.view(x.size(0), -1) 的理解说明
x.view()原创 2023-08-18 20:54:30 · 985 阅读 · 0 评论 -
CNN卷积详解(三)
卷积层的计算 与 卷积层运算量的计算原创 2023-08-15 20:14:09 · 1488 阅读 · 1 评论 -
CNN卷积详解(一)
即:由于只有一个卷积核,因此卷积后只输出单通道的卷积结果(黄色的块状部分表示一个卷积核,黄色块状是由三个通道堆叠在一起表示的,每一个黄色通道与输入卷积通道分别进行卷积,也就是channel数量要保持一致,图片组这里只是堆叠放在一起表示而已)。卷积过程如下,每一个通道的像素值与对应的卷积核通道的数值进行卷积,因此每一个通道会对应一个输出卷积结果,三个卷积结果对应位置累加求和,得到最终的卷积结果(这里卷积输出结果通道只有1个,因为卷积核只有1个。h’),其中w’、h’表示卷积后的通道尺寸,原始输入大小为(n。原创 2023-07-28 11:46:00 · 1287 阅读 · 0 评论 -
CNN卷积详解(二)
盗用吴恩达老师的一张图片来说明1*1卷积是怎样计算的:从上图中可以看出当通道数目为1的卷积核相当于直接在原图像的像素上进行加权求和,这时候只能起到升维的作用,这样的操作是没有太大的意义的。原创 2023-07-28 10:04:54 · 215 阅读 · 0 评论 -
全连接层详解
全连接层:(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。如果说卷积层、池化层和激活函数层等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用。在实际使用中,全连接层可由卷积操作实现:对前层是全连接的全连接层可以转化为卷积核为1x1的卷积;而前层是卷积层的全连接层可以转化为卷积核为hxw的全局卷积,h和w分别为前层卷积结果的高和宽。全连接的核心操作就是矩阵向量乘积 y = W * x。原创 2023-07-26 23:13:38 · 9832 阅读 · 0 评论 -
感受野(Receptive Field)的理解与计算
在卷积神经网络中,感受野(Receptive Field)是指特征图上的某个点能看到的输入图像的区域,即特征图上的点是由输入图像中感受野大小区域的计算得到的。神经元感受野的值越大表示其能接触到的原始图像范围就越大,也以为这它可能蕴含更为全局,语义层次更高的特征;相反,值越小则表示其所包含的特征越趋向局部和细节。因此感受野的值可以用来大致判断每一层的抽象层次。原创 2023-07-26 22:02:22 · 230 阅读 · 0 评论 -
nn.Module类与前向传播函数forward的理解
定义自已的网络:需要继承nn.Module类,并实现forward方法。一般把网络中具有可学习参数的层放在构造函数__init__()中,不具有可学习参数的层(如ReLU)可放在构造函数中,也可不放在构造函数中(而在forward中使用nn.functional来代替)只要在nn.Module的子类中定义了forward函数,backward函数就会被自动实现(利用Autograd)。原创 2023-03-18 12:37:39 · 432 阅读 · 0 评论 -
torch中nn.relu和f.relu的区别
而 F.relu 是函数,可以直接在 forward 中调用,使用 relu(input) 进行参数传递,具体方式如下。注意,torch.nn 中的代码实现基本都会调用 torch.nn.functional 中的方法。当用print(net)输出时,会有nn.ReLU()层,而F.ReLU()是没有输出的。使用方式如下,定义时不接输入,定义好后,使用 Relu()(input) 进行参数传递。nn.ReLU()是模块调用,一般在定义网络层的时候使用。两种方法都是使用relu激活,只是使用的场景不一样。原创 2023-07-24 13:38:18 · 1379 阅读 · 0 评论 -
Class类
python的class(类)相当于一个多个函数组成的家族,如果在这个Myclass大家族里有一个人叫f,假如这个f具有print天气的作用,那么如果有一天我需要这个f来print一下今天的天气,那么我必须叫他的全名MyClass.f才可以让他给我print,即在调用他的时候需要带上他的家族名称+他的名称。属性:属性就是在这个类里的变量。如果变量是物品,那么不同的属性就是这个大家族里不同的物品方法:方法就是在这个类里的函数。如果函数是人,那么不同的方法就是这个大家族里不同的人。原创 2023-07-20 14:38:12 · 97 阅读 · 0 评论 -
Pool池化下采样层详解(二)
池化过程类似于卷积过程。上图表示的就是对一个图片邻域内的值,用一个 2x2 的池化kernel,步长为2进行扫描,选择最大值输出,称为最大池化。。还有一种叫平均池化,和最大池化类似,就是将取区域内最大值改为求这个区域的平均值。最大池化操作:将 n x n 尺寸内所有像素值取最大值作为输出通道的像素值。● kernel_size:最大的窗口大小,可以是单值也可以是tuple元组● stride:窗口的步幅(步长),,可以是单值也可以是tuple元组● padding:填充值,原创 2023-07-14 10:42:24 · 1321 阅读 · 0 评论 -
动态调整网络学习率
在之前看论文,其实也有很多点说到这个问题(学习率的选择)。如果我们学习率设置的过小,会极大的降低模型收敛速度,从而大大增加了训练时间;如果学习率太大,可能导致参数在最优解来回震荡。但是当我们选定了一个合适的学习率的时候,经过多轮的训练后,可能会出现准确率震荡或loss不再下降等情况,说明之前设置的这个学习率现在已经不能满足模型调优的需求了。此时我们就可以通过一个适当的学习率衰减策略来改善这种现象,提高我们的精度。这种设置方式在pytorch被称为scheduler。原创 2023-06-14 00:35:31 · 73 阅读 · 0 评论 -
Pool池化下采样层详解(一)
该文章包括MaxPool1d,MaxPool2d,MaxPool3d及Average Pool 相关内容介绍原创 2023-03-13 21:27:45 · 1836 阅读 · 1 评论 -
深度学习中Epoch、Batch以及Batch size的设定
当一个完整的数据集通过了神经网络一次并且返回了一次,这个过程称为一次>epoch。(也就是说,所有训练样本在神经网络中都 进行了一次正向传播 和一次反向传播 )。再通俗一点,一个Epoch就是将所有训练样本训练一次的过程。然而,当一个Epoch的样本(也就是所有的训练样本)数量可能太过庞大(对于计算机而言),就需要把它分成多个小块,也就是就是分成多个Batch 来进行训练。***Batch(批 / 一批样本):*将整个训练样本分成若干个Batch。原创 2023-06-12 22:49:04 · 2297 阅读 · 0 评论