今天是18天,学习了基于MobileNetv2的垃圾分类。
MobileNet 是谷歌提出的一种轻量级卷积神经网络,主要专注于在移动设备和嵌入式设备上的应用。它具有更小的体积、更少的计算量和较高的精度等优势,能够在保持一定准确率的前提下,在资源受限的设备上实现快速运行,适用于多种应用场景,如目标检测、目标分类、人脸属性识别和人脸识别等。
MobileNet 的主要特点包括使用深度可分离卷积(Depthwise Separable Convolution),这种卷积可以分解为深度卷积(Depthwise Convolution)和逐点卷积(Pointwise Convolution)两个步骤。
深度卷积不同于常规卷积操作,在深度卷积中,一个卷积核只有一维,负责一个通道,输入层的一个通道只被一个卷积核卷积。它对输入层的每个通道独立进行卷积运算,完成后的输出特征图通道数与输入层的通道数相同,无法扩展通道数,且没有有效利用不同通道在相同空间位置上的特征信息。
逐点卷积则是使用 1×1 的卷积核进行卷积,其作用是对深度卷积后的特征进行组合生成新的特征图,能够起到升维或者降维的作用,还可以很好地整合深度卷积分离开的通道间信息。
此外,MobileNet 还引入了一些超参数来控制模型的大小和性能,例如宽度因子(Width Multiplier)用于控制特征图的维数(即通道数),分辨率因子(Resolution Multiplier)用于控制特征图的宽/高(即分辨率)。
MobileNet 不断发展和演进,目前有多个版本,如 MobileNetV1、MobileNetV2、MobileNetV3 等。每个版本都在网络结构和特性上进行了改进和优化,以进一步提高性能和效率。例如,MobileNetV2 中引入了线性瓶颈结构(Linear Bottleneck)和反向残差结构(Inverted Residuals);MobileNetV3 则引入了 5×5 大小的深度卷积代替部分 3×3 的深度卷积,还采用了 squeeze-and-excitation(SE)模块和 h-swish(HS)激活函数以提高模型精度等。
不同版本的 MobileNet 在具体的网络结构和特性上会有所差异,但总体上都致力于在保证模型性能的同时,减少模型的参数量和计算量,以适应移动和嵌入式设备的需求。