毕设学习记录 | 知识点大整理篇 Pytorch语义分割项目(2)

重载:函数名相同参数不同

多态:子类可以被当做父类对待,可重用性

关系模式是型,关系是它的值。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操作在不断地更新着

关系模式要满足的条件称为规范化形式,简称范式,只有满足一定条件的关系模式,才能避免操作异常。

在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。一般的微指令格式由操作控制和顺序控制两部分构成。操作控制部分用来发出管理和指挥全机工作的控制信号。其顺序控制部分用来决定产生下一个微指令的地址。事实上一条机器指令的功能是由许多条微指令组成的序列来实现的。这个微指令序列通常叫做微程序。

微命令->微指令 ->微程序

信号量的种类?

整型信号量(integer semaphore):信号量是整数

记录型信号量(record semaphore):每个信号量s除一个整数值s.value(计数)外,还有一个进程等待队列s.L,其中是阻塞在该信号量的各个进程的标识

二进制信号量(binary semaphore):只允许信号量取0或1

拓扑排序:有向无环图  上课先后

堆 大顶堆,小顶堆  建 调整 拿顶点 补 再调整

什么是神经网络?

神经网络是一种计算模型,由大量的节点(或神经元)直接相互关联而构成;

每个节点(除输入节点外)代表一种特定的输出函数(或者认为是运算),称为激活函数

每两个节点的连接都代表该信号在传输中所占的比重(即认为该节点的“记忆值”被传递下去的比重),称为权重

网络的输出由于激活函数和权重的不同而不同,是对于某种函数的逼近或是对映射关系的近似描述;

类别不平衡  加权损失函数        特定某个类别效果不好

1.注意力机制

在主干网络提取到的特征后面加注意力机制,在卷积后加,

关注不同尺度特征并提高适应性,在ASPP模块中添加注意力机制;

提高模型整体的分割性能和精度,可以尝试在Deeplab模块中添加注意力机制

通道注意力机制SENet:对通道分配不同权重

卷积注意力机制CBAM:通道注意力和空间注意力串联或并联

空间注意力机制SAM:

adam优化器                自适应调整学习率,稳定

sgd优化器               容易陷入局部最优解,慢

调参:batch_size、优化器、学习率、损失函数(交叉熵,dice loss),正则化方法(L1,L2正则化,Dropout)

在冻结阶段,模型的主干被冻结了,特征提取网络不发生改变。占用的显存较小,仅对网络进行微调
在解冻阶段,模型的主干不被冻结了,特征提取网络会发生改变。占用的显存较大,网络所有的参数都会发生改变

.机器学习模型

1.1  常见模型

  1. 线性回归模型:用于建立线性关系并预测连续数值
  2. 逻辑回归模型:用于二分类问题,将输入映射到概率
  3. 决策树模型:基于树状结构进行决策和分类。
  4. 随机森林模型:由多个决策树组合而成,通常用于分类和回归问题。
  5. 神经网络模型:基于人工神经元和层级结构的模型,具有强大的表示能力和学习能力。
  6. 卷积神经网络模型:用于处理具有网格结构数据(如图像)的深度学习模型。

1.2  问题

  1. 神经网络模型和传统机器学习模型有什么不同?
    答:神经网络模型是一种深度学习模型,其结构由多个神经元和层组成,具有强大的学习能力和表示能力。传统机器学习模型通常使用手动设计的特征和模型,而神经网络模型可以从原始数据中自动学习特征表示。    就比如传统机器学习模型,你需要告诉它,有这样的耳朵的是猫,神经网络模型会从给的数据集和标注里自己提取出来,有这样的耳朵的是猫

  2. 卷积神经网络适用于处理什么样的数据?
    答:卷积神经网络主要用于处理具有网格结构的数据,最常见的是图像数据。卷积层可以有效地捕捉图像中的局部模式和空间关系,并进行特征提取和分类。      网格结构数据,就是二维、三维的、可以用坐标系等划分的数据

2.卷积神经网络的架构

卷积神经网络(Convolutional Neural Network, CNN)是一种常用于处理具有网格结构数据(如图像、音频)的深度学习模型

2.1  卷积神经网络架构

  1. LeNet-5:LeNet-5 是最早的卷积神经网络之一。主要用于手写数字识别、文本识别,包含多个卷积层和池化层。

  2. VGGNet:它的特点是具有统一的结构,包含多个卷积层和池化层,以及几个全连接层。 图像识别、目标检测

  3. ResNet深度残差网络。它通过引入跳跃连接(skip connection)来解决深层网络中的梯度消失问题,使得网络可以更容易地训练和优化。

  4. MobileNet:MobileNet 是一种轻量级的卷积神经网络,设计用于在资源受限的设备上进行高效的图像识别。它使用深度可分离卷积来减少参数量和计算量。

  5. Xception:通过深度可分离卷积的优化,提高了模型的效率和性能。

2.1.1 MobileNet  特征提取网络

MobileNet  轻量级的卷积神经网络架构,用于移动设备和嵌入式设备上的计算资源受限场景

侧重于模型轻量化和高效运行,通过深度可分离卷积等技术,在减少参数数量和计算复杂度的同时保持良好的性能。

2.2  基本结构

  • 卷积层(Convolutional Layer):卷积层是CNN的核心组件,通过应用一系列卷积核(滤波器)对输入图像进行卷积操作,提取出图像的特征
  • 池化层(Pooling Layer):池化层用于减少特征图的大小并保留关键信息,降低复杂度,防止过拟合。
  • 全连接层(Fully Connected Layer):全连接层在卷积和池化层的输出上进行扁平化操作,并通过权重连接每个神经元,用于最终的分类或回归任务。

2.3 工作原理

  • 卷积操作:卷积操作通过滑动卷积核在输入图像上进行局部区域的乘积累加,来提取特定的图像特征。卷积核的权重共享机制使得CNN具有平移不变性,可以有效地捕捉图像的局部信息。
  • 激活函数:激活函数引入非线性变换,使得网络可以学习更复杂的函数映射关系。常见的激活函数包括ReLU(Rectified Linear Unit)、Sigmoid和Tanh等

2.4 常用组件

  • 常用卷积层:常见的卷积层包括普通卷积层、扩张卷积层和转置卷积层。普通卷积层应用固定大小的卷积核进行局部感受野的卷积操作。扩张卷积层通过引入一个空洞参数,可以增大卷积核的感受野。转置卷积层用于上采样图像,可以增加图像的分辨率。
  • 池化层:常用的池化操作包括最大池化和平均池化。最大池化选取局部区域中的最大值作为池化结果,平均池化计算局部区域内的平均值。
  • 激活函数:ReLU是最常用的激活函数,对于正的输入值返回它本身,对于负的输入值返回0。其他常见的激活函数还包括Sigmoid、Tanh和Leaky ReLU等。

3.损失函数

  1. 什么是损失函数,它在机器学习中有什么作用?
    答:损失函数是衡量模型预测结果真实标签之间差异或误差的指标。它用于优化算法中,通过最小化损失函数来调整模型参数,使模型更好地拟合数据。

  2. 请介绍一些常见的损失函数及其适用的问题类型。
    答:常见的损失函数包括均方误差(MSE)交叉熵损失对数损失 Hinge 损失等。均方误差常用于回归问题,交叉熵损失适用于分类问题,对数损失适用于二分类问题,Hinge 损失适用于支持向量机等算法的二分类问题。

  3. 损失函数是否与模型的优化算法有关?请解释其关系。
    答:是的,损失函数与模型的优化算法是相关的。优化算法的目标是通过最小化损失函数来调整模型参数,以使损失函数的值达到最小点。不同的优化算法使用不同的策略来更新模型参数,以逐步降低损失函数的值。

  4. 如何选择合适的损失函数?
    答:选择合适的损失函数取决于问题类型数据特点模型目标。需要考虑输出类型、问题的标签形式、数据分布等因素。根据问题的特点,选择使得模型能够更好地拟合数据并达到预期目标的损失函数。

  5. 损失函数的计算过程是怎样的?
    答:损失函数的计算过程根据具体的损失函数而定。通常,它涉及将模型的预测结果与真实标签进行比较,并根据所选的损失函数计算它们之间的差异。计算结果表示模型的预测误差,较小的值意味着模型的预测与真实标签更接近

在语义分割任务中,损失函数被用来度量模型的预测结果与真实标签之间的差异。同时,评估指标被用来衡量模型在语义分割任务上的性能。

常用的损失函数包括:

  1. 交叉熵损失(Cross-Entropy Loss):交叉熵损失是一种常用的分类损失函数,用于度量模型的预测结果与真实标签之间的差异。它基于预测结果和真实标签的概率分布,通过最小化预测结果与真实标签之间的交叉熵来优化模型。交叉熵损失在语义分割任务中广泛应用。

  2. Dice损失(Dice Loss):Dice损失是一种衡量预测结果与真实标签之间重叠程度的损失函数。它基于Dice系数,计算预测结果和真实标签的重叠面积与它们的总面积的比值。最小化Dice损失可以促使模型产生更准确且精细的语义分割结果。

除了损失函数,评估指标也是评估语义分割模型性能的重要指标之一。以下是常用的评估指标:

  1. Intersection over Union(IoU):Intersection over Union是衡量预测结果和真实标签之间重叠程度的指标。它计算预测结果和真实标签的交集区域与它们的并集区域之间的比值。较高的IoU值表示模型的预测结果与真实标签之间有较好的重合度。

  2. Mean Intersection over Union(mIoU):Mean Intersection over Union是对多个类别的IoU进行平均得到的指标。它平衡了类别之间的不平衡性,并提供了一个综合评估模型性能的指标。

这些损失函数和评估指标直接反映了模型在语义分割任务中分割准确性的度量。在训练过程中,我们希望最小化损失函数来优化模型参数,并且在测试和评估阶段使用评估指标来评估模型的性能,以选择最佳的模型和参数配置。

4.深度学习框架

  1. TensorFlow:提供了灵活的构建和训练深度神经网络模型的工具和接口。

  2. PyTorch: 使得模型构建和调试更加直观和便捷。它在学术界和研究领域具有广泛的应用。

  3. Keras: Keras是一个高级的深度学习框架,可以作为TensorFlow、PyTorch等框架的前端库来使用。它提供了简洁易用的API,方便构建和训练深度神经网络模型。

4.1  PyTorch

  1. PyTorch是一个基于Python的开源机器学习框架,特点包括:动态图机制,允许在模型构建过程中进行实时调整和调试;易于学习和使用,具有简洁的API和清晰的文档;可扩展性强,可以方便地进行模型扩展、自定义和调试。

  2. PyTorch在学术界和研究领域的受欢迎程度,以及其提供的灵活性和易用性。PyTorch以其动态图机制和直观的代码风格而闻名,这使得构建和调试街景语义分割模型更加直观和便捷。此外,PyTorch还拥有强大的社区支持和丰富的第三方库,使得在街景语义分割项目中能够更好地应用相关技术和工具。

  3. PyTorch在动态图机制上的优势和未来的发展趋势,以及对分布式训练、模型优化和推理性能的持续改进。此外,你还可以关注PyTorch与其他领域的结合和拓展,如自然语言处理(NLP)、计算机视觉(CV)等领域的深度学习应用,以及PyTorch在产业界的普及程度和应用场景。

5.DeepLabV3Plus 网络结构

是 DeepLab 系列模型的升级版本,它采用了以下关键技术:

·  采用了空洞卷积膨胀卷积)以增加感受,帮助模型更好地理解图像中的上下文信息。

·  使用多尺度处理来捕获不同尺度的特征,有助于更准确地识别图像中的对象和边界

·  双线性插值上采样(bilinear upsampling),用于将模型输出调整为输入图像的原始尺寸,以便进行像素级别的分割

5.1  Deeplab v3

  • 网络架构:Deeplab v3采用了一种多尺度上下文聚合的结构,称为空洞空间金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)。ASPP模块通过多个并行的空洞卷积分支来捕捉不同尺度的上下文信息,并使用全局池化层对整个图像进行池化,以获取更广泛的背景信息。这有助于提高语义分割的精度。
  • 特点:Deeplab v3引入了扩张卷积和ASPP模块,从而增强了模型对上下文信息的建模能力。它在多个尺度上进行特征提取,并通过跳跃连接(Skip Connection)将浅层和深层特征进行融合,以获得更准确的语义分割结果。

5.2  Deeplab v3+

  • 网络架构:Deeplab v3+是Deeplab v3的改进版本,进一步增强了分割性能。它在Deeplab v3的基础上添加了一个特征金字塔网络(Feature Pyramid Network,FPN)模块,用于更好地融合不同尺度的特征。FPN模块使用了类似于残差连接的结构,将不同层级的特征图进行上采样和融合,以获取更丰富的上下文信息。
  • 特点:Deeplab v3+通过FPN模块进一步增强了多尺度特征融合能力,使得模型可以同时捕捉到局部和全局的语义信息。这有助于提高语义分割的精度和边界细节的准确性

Deeplab v3和Deeplab v3+在网络结构上都采用了深度残差网络(Deep Residual Network,ResNet)作为骨干网络。这是因为ResNet具有很好的特征提取能力,并且能够减轻深度网络的梯度消失问题。

如果你需要更精细的分割结果和边界准确性,可以考虑使用Deeplab v3+。但需要注意的是,Deeplab v3+相对于Deeplab v3来说计算量更大,需要更大的存储和计算资源。

5.3  空洞卷积(膨胀卷积)

空洞卷积,也称为膨胀卷积或扩张卷积,是一种卷积操作,用于增加卷积核的感受野(接收域)而不增加参数量和计算量。在Deeplab模型中,空洞卷积被广泛应用,以便更好地理解像素周围的上下文信息。

传统的卷积操作在每个卷积核的感受野内对输入进行局部卷积,可以捕捉到有限的上下文信息。而空洞卷积通过在卷积核元素之间引入固定的间隔(空洞值),在感受野内增加了额外的上下文信息,从而扩大了感受野的范围。

具体来说,空洞卷积在输入特征图上应用卷积操作时,会使用较大的卷积核,其中间隔(空洞值)的数量决定了感受野的大小。较大的间隔会导致更广阔的感受野,从而具有更大范围的上下文信息。通过这种方式,空洞卷积能够在尽可能减少参数量和计算量的同时,增加感受野,提高模型对上下文信息的理解能力。

在Deeplab模型中,空洞卷积被用于ASPP模块中的多个并行卷积分支,用于多尺度的上下文信息提取。每个分支具有不同的空洞值,以捕捉不同范围的上下文信息。通过在不同空洞值下进行卷积操作,并将多个分支的结果进行组合,Deeplab模型能够有效地利用丰富的上下文信息,提高语义分割的准确性。

总结而言,空洞卷积在Deeplab模型中起到了增大感受野、扩展上下文信息的作用,帮助模型更好地理解像素周围的语义信息,从而提高语义分割的性能。

1.2野

1.3多尺度

3.感受野

提升感受野就是让神经网络更好地理解整张图片的信息,而不仅仅是局部内容

在深度学习领域,感受野(Receptive Field)指的是神经网络中某一层输出的特征图中的一个像素(或神经元),其对输入图像的局部区域的响应范围。通过堆叠多层神经网络,每一层的感受野会随着网络深度增加而扩大。

提升感受野指的是扩大神经网络某一层的感受野,使其能够捕捉到更广阔区域的特征信息。这样做有助于网络更好地理解输入图像的全局结构和上下文信息,从而提高模型对图像中复杂模式的识别能力。

常见的提升感受野的方法包括:

  1. 增加卷积核的大小:通过增加卷积核的大小,可以扩大每一层的感受野。
  2. 增加网络层数:通过增加网络的深度,信息可以在更多层次传递和整合,使得最终的感受野范围更广。
  3. 使用池化层:池化操作可以减小特征图的尺寸,但同时也会降低特征的精度。一些技术,如空洞卷积(dilated convolution),可以在不降低特征图尺寸的前提下扩大感受野。

4.数据增强

数据增强是一种常用的技术,可以通过对原始数据进行变换和扭曲来生成更多的训练样本,从而扩大数据集,提高模型的泛化能力。以下是一些常用的数据增强方法:

  1. 镜像翻转:对图片进行水平或垂直翻转,使得模型能够识别不同方向的物体。

  2. 随机裁剪:随机裁剪图像的一部分,可以让模型更好地适应不同大小和位置的物体。

  3. 旋转:对图像进行随机旋转,增加数据在不同角度下的变化。

  4. 缩放:对图像进行缩放,模拟不同距离下的物体大小。

  5. 色彩变化:改变图像的亮度、对比度、色调等,使模型更鲁棒于不同光照条件。

  6. 添加噪声:向图像中添加随机噪声,使得模型更具鲁棒性。

  7. 平移:对图像进行平移,模拟不同位置的物体。

  8. 变形:对图像进行弯曲、拉伸等形变操作,增加数据的多样性。

以下是实施数据增强的一般步骤:

在加载数据集之后,训练模型之前,应用数据增强技术。通常,数据增强是在每个训练迭代期间动态应用的。

5.鲁棒性

具体来说,一个机器学习模型具有良好的鲁棒性,意味着它能够在以下情况下表现良好:

  1. 对噪声的鲁棒性:即使输入数据中存在随机噪声,模型也能够正确地进行预测或分类。

  2. 对输入数据扰动的鲁棒性:当输入数据在一定范围内发生变化时,模型仍能够保持准确性。

  3. 对对抗样本的鲁棒性:模型在面对有意设计出来的对抗样本(即微小扰动后的输入,能够误导模型)时能够保持泛化能力。

  4. 在不同环境下的鲁棒性:模型在不同的数据分布或环境中都能够保持一定的性能,而不是只在特定情况下表现良好。

提高模型的鲁棒性是非常重要的,特别是在现实场景中,数据可能因各种因素而变化,模型如果具有较强的鲁棒性,就能更好地适应这些

  1. MobileNet:MobileNet 是一种轻量级的卷积神经网络,设计用于在资源受限的设备上进行高效的图像识别。它使用深度可分离卷积(depthwise separable convolution)来减少参数量和计算量。

6.深度学习框架(如PyTorch)搭建和训练Deeplab模型步骤

使用可以遵循以下步骤:

  1. 数据准备:首先,准备用于训练的大规模语义分割数据集。该数据集应包含带有对应标签的图像和相应的语义分割标签。确保图像和标签的对应关系正确,并将数据集分为训练集和验证集以进行模型评估。

  2. 模型搭建:使用PyTorch等深度学习框架来构建Deeplab模型。按照Deeplab的网络结构,可以使用卷积层、池化层、空洞卷积、ASPP模块等组件来构建模型。确保模型的输出层与语义分割任务相匹配。

  3. 损失函数和优化器:选择适当的损失函数(如交叉熵损失或Dice损失)作为模型的优化目标。同时选择适当的优化器(如随机梯度下降(SGD)或Adam)来更新模型的参数。

  4. 数据加载和增强:使用PyTorch提供的数据加载器来加载训练和验证数据集。可以应用一些数据增强技术,如随机裁剪、水平翻转和颜色增强等,来扩充数据集和提高模型的鲁棒性。

  5. 模型训练:使用训练数据集对模型进行训练。在每个训练迭代中,将图像批量输入模型,计算损失函数并进行反向传播。使用优化器更新模型参数,不断迭代直到达到指定的训练步数或损失收敛为止。

  6. 模型验证和调优:使用验证数据集对训练过程中的模型进行评估。计算评估指标(如IoU或mIoU)来衡量模型的性能。如果模型性能不令人满意,可以进行调优和参数调整,例如调整学习率、增加训练迭代次数或调整网络结构等。

完成模型训练后,可以利用训练好的模型进行推理和预测。

  1. 7.推理和预测:对于新图像的语义分割预测,将图像输入训练好的模型中,通过前向传播获取模型的预测结果。根据预测结果生成语义分割图,可以使用颜色编码或分割边界框来可视化结果。

在推理和预测过程中,可以使用批处理方法对多个图像进行并行处理,以提高推理速度。此外,还可以使用图像金字塔或滑动窗口技术来处理不同尺度和大小的图像。

总结:通过搭建合适的Deeplab模型、选择适当的损失函数和优化器、准备数据集、进行模型训练和调优,然后利用训练好的模型进行推理和预测,你可以完成基于Deeplab的街景语义分割任务。使用深度学习框架(如PyTorch)可以极大地简化模型构建、训练和推理的过程,提高效率和灵活性。

7.评价指标

像素准确率(Pixel Accuracy)、平均准确率(Mean Accuracy)、平均交并比(Mean Intersection over Union,mIoU)

8.深度学习模型

  • FCN: 将全连接层替换为全卷积层,通过卷积操作实现端到端的像素级别预测。
  • U-Net: 结合了编码器和解码器结构,通过跳跃连接(skip connections)帮助信息传递,适用于小样本训练。
  • SegNet: 基于编码-解码结构,使用最大池化索引进行上采样,适用于资源受限的场景。
  • DeepLab: 使用空洞卷积(dilated convolution)来扩大感受野,结合多尺度空间金字塔池化(ASPP)模块,有利于捕捉多尺度信息。
  • FCN: 适用于端到端的像素级别预测,但可能在处理细节和边界信息时表现一般。
  • U-Net: 在医学图像分割等小样本场景下表现优异,但可能在处理大规模数据集时效果略逊。
  • SegNet: 适用于资源受限的场景,但在捕捉上下文信息和细节方面可能稍显不足。
  • DeepLab: 在处理细节和边界信息、多尺度信息融合方面表现出色,适用于需要高精度语义分割的场景。
  • 在街景图像分割任务中,需要准确捕捉物体边界和细节,而DeepLab通过空洞卷积和ASPP模块能够有效地解决这些问题。

9.评估分类模型性能的指标

  1. 准确率(Accuracy):准确率是最常用的分类模型评估指标之一,它衡量模型正确分类的样本占总样本数的比例。准确率越高,模型的性能越好。

  2. 精确率(Precision):精确率衡量模型在所有被预测为正样本的样本中,真正为正样本的比例。它关注的是模型的预测结果中有多少是真正的正样本。精确率较高表示模型在预测正样本时较少出现误判。

  3. 召回率(Recall):召回率衡量模型识别出的正样本在实际正样本中的比例。它关注的是模型能够找到多少真正的正样本。召回率较高表示模型较少漏掉真正的正样本。

  4. F1分数(F1 Score):F1分数是精确率召回率调和平均值,它综合考虑了模型的精确率和召回率。F1分数越高,表示模型在平衡精确率和召回率方面表现较好。

  5. ROC曲线与AUC:ROC曲线是以不同阈值下的真正例率(TPR)和假正例率(FPR)为横纵坐标绘制的曲线。ROC曲线能够展示模型在不同阈值下的性能表现。AUC(Area Under the Curve)是ROC曲线下的面积,用于综合评估模型的分类性能。AUC越接近1,表示模型的性能越好。

  6. mIoU:用于评估语义分割任务的指标。它衡量模型预测的分割结果与真实分割标注之间的相似度。具体而言,对于每个类别,mIoU计算预测分割结果与真实分割标注的交集区域与并集区域之间的重叠度,然后对所有类别的重叠度取平均值。

  7. mAP:用于评估目标检测任务的指标。它结合了检测结果的准确性和召回率,用于衡量模型在不同类别上的性能。mAP的计算过程包括计算每个类别的平均精确度(AP)以及对所有类别的AP取平均值。在计算AP时,根据预测框与真实框之间的重叠度(通常使用IoU)进行排序,然后根据不同的置信度阈值计算精确度和召回率,最后通过计算精确度-召回率曲线下的面积来得到AP值。mAP的取值范围是0到1,值越高表示模型在目标检测任务上的性能越好。

在不平衡数据集中,准确率可能不是一个很好的指标,而应更关注精确率、召回率或F1分数。

10.易混淆的

1.分类聚类

分类问题是一种监督学习任务,旨在将输入数据分为预定义的类别。它依赖于有标签的训练数据来学习模型。

聚类是一种无监督学习任务,旨在将输入数据分为相似的组或簇,但没有预定义的类别。聚类算法根据数据之间的相似性来进行分组,而不需要标签信息

2.实例分割和语义分割:

实例分割是计算机视觉中的任务,旨在识别和定位图像中的每个个体实例,并为它们分配唯一的标识。实例分割要求同时进行目标检测和像素级别的分割

语义分割是将图像分割为不同的语义区域,每个区域都被赋予一个语义类别标签,但不区分不同的实例。

3.过拟合和欠拟合:

过拟合是指模型在训练数据上表现良好,但在新数据上表现较差的现象。过拟合通常发生在模型过于复杂训练数据过少的情况下。

欠拟合是指模型无法捕捉到数据中的关键模式或趋势,导致在训练数据和新数据上都表现不佳

4.神经网络和深度学习:

神经网络是一种受到生物神经元启发的计算模型,由多个连接的人工神经元组成。

深度学习是一种机器学习方法,利用深层神经网络来学习和表示复杂的模式和关系。深度学习利用多层次的非线性变换来提取高级特征,并通过反向传播算法进行训练

5.正则化和归一化:

正则化是通过在损失函数中引入惩罚项防止过拟合。它可以限制模型的复杂度,使其更具泛化能力。

归一化是将数据缩放到特定范围或分布,以便更好地进行模型训练。常见的归一化方法包括将数据缩放到0和1之间或标准化为均值为0、方差为1的分布。

6.误差和损失:

误差是指模型在预测或估计过程中的实际输出与真实值之间的差异

损失是用于衡量模型预测与真实值之间差异的函数。通过最小化损失函数,可以使模型更准确地逼近真实值。

7.网格搜索和随机搜索:

网格搜索和随机搜索是用于超参数调优的常用方法。超参数是在模型训练之前需要手动设置的参数。

网格搜索通过指定超参数的候选值列表,遍历所有可能的组合,并根据交叉验证性能选择最佳的超参数组合。

随机搜索则从超参数的分布中随机采样一组超参数组合,并根据性能评估选择最佳的组合。相比于网格搜索,随机搜索可以在更大的超参数空间中进行搜索,并且更适合于高维超参数空间

8.梯度下降和随机梯度下降:

梯度下降和随机梯度下降是优化算法,用于训练模型的参数。

梯度下降通过计算模型参数损失函数的梯度,并沿着负梯度方向更新参数,以最小化损失

随机梯度下降是梯度下降的一种变体,它在每次更新时仅使用一个样本或一小批样本的梯度估计,而不是使用整个训练集的梯度。随机梯度下降通常更,但对于非凸优化问题可能更不稳定

  1. 为什么选择Deeplab模型作为你的研究对象?

    DeepLab模型利用深度卷积神经网络实现语义分割,通过空洞卷积和多尺度信息融合来提高分割精度。在项目中,我使用了街景图像数据集进行训练,采用数据增强、学习率调整等方法进行模型训练和优化。

    4.在模型训练过程中遇到收敛速度慢、训练时间长的情况时:

  1. 使用更快的优化算法:替换标准的随机梯度下降(SGD)优化算法,可以尝试使用一些收敛速度更快的算法,如Adam、Adagrad、RMSprop等。这些算法通常能够更快地收敛到局部最优解。

  2. 调整批量大小:增大批量大小可以提高训练速度,因为每个参数更新计算的平均梯度更准确。但是要注意,过大的批量大小可能会导致内存不足或训练不稳定,需要在速度和稳定性之间做权衡。

  3. 减少模型复杂度:如果模型过于复杂,可以考虑简化模型结构,减少参数数量,以降低训练的计算成本和时间消耗。

  4. 预训练模型:使用预训练模型可以加快训练速度,因为预训练模型已经学习到了大量的特征,在目标任务上进行微调时通常需要更少的训练时间。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东部欧安时

祝你今天也顺利~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值