一个完整的深度学习图像分割例子(四):模型训练

本文详细介绍了深度学习中的图像分割,特别是BiSeNet模型的训练过程。从数据准备到模型构建,包括选择模型、预训练模型参数、优化器和损失函数的设定。最后讨论了模型验证和推理阶段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在前面的[项目简介][环境搭建][数据准备]中,我们已经完成了项目简介,环境搭建以及数据准备工作,接下来就要搭建网络和模型训练了。

现实生活中,我们往往把一些问题建模成数学问题,深度学习中的图像分割就是把分割建模成数学模型。

在进入实战之前,首先讲一下什么是模型,大家都听过AlexNet,ResNet,R-CNN,UNet等名词,这些我们都统称为卷积神经网络,也叫CNN,主要应用于计算机视觉领域,是深度学习的一个重要应用分支,另一个应用比较广泛的是循环神经网络,主要应用于自然语言处理,由于注意力机制在自然语言中太成功了,所以近两年基于自注意力机制的视觉模型在CV领域也非常火热,但我们主要以CNN为主。

图像分割问题实质是对图像每个像素进行分类,由于原图像中每个像素语义信息非常稀疏,没办法在原始图像上进行像素分类,所以需要从原始图像域转换到特征图像域,而这个转换过程需要CNN来提取特征,然后针对特征图像素进行分类,同一类物体被分配同一个分类标签,我们称为语义分割,同一类物体的不同实例被分配不同的标签,我们称为实例分割。

前面我们说过,要想提高分割的准确性,可以主要从两个方面下功夫,第一个是数据增广,另一个就是模型的设计上,一般而言,越靠近输入层,模型感受野也小,模型捕获的特征越抽象,网络捕获的是细节信息,例如,边缘,颜色等,越靠近输出端,感受野越大,特征越具体,包含的语义信息越丰富,这种信息对于分类起到很大作用,所以,层数多的模型要比层数少的模型效果要好,但并不是无限多。

上述模型都包括特征提取网络,我们也称为骨干网络,然后根据任务的不同,后面跟不同的操作,例如,对于分类网络,将特征图展开,输入到Softmax分类器输出属于不同类别的概率,对于回归任务,将特征图展开输入到线性回归网络,输出一个实数值,目标检测网络就是针对特征图的每一个点分配不同的Anchor,然后将Anchor的特征图分别输入到两个回归网络来输出类别的概率和Anchor的坐标。

回到我们的例子,那对于初学者而言,模型从哪里来?这些模型都是大牛们根据自己的经验设计出来的,从第一个CNN模型LeNet开始,后续很多模型都是要么看到前一任模型缺点,进行改进,要么提出具有创新性新模型,然后,如果模型被证实很有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值