Convolutional Neural Network (CNN)
探索卷积神经网络 (CNN) 如何驱动现代计算机视觉。了解层级、应用,以及如何运行 Ultralytics YOLO26 进行实时 AI 应用。
卷积神经网络(CNN)是一种专门的深度学习架构,旨在处理具有网格状拓扑的数据,其中最显著的是数字图像。受视觉皮层生物结构的启发,CNN 具有独特的能力,能够保留输入数据中的空间关系。与将图像展平成一长串数字的传统神经网络不同,CNN 会分析图像中重叠的小区域,从而自动学习特征层级——从简单的边缘和纹理到复杂的形状和对象。这种能力使其成为现代计算机视觉(CV)系统的基础技术。
卷积神经网络的工作原理#
CNN 的强大之处在于它能够将复杂的图像简化为一种更易于处理的形式,同时不会丢失对获得良好预测至关重要的特征。这是通过一系列不同的层来实现的,这些层将输入数据量转换为输出类别或数值:
- 卷积层: 这是核心构建块。它使用一组可学习的滤波器(或内核),像手电筒一样在输入图像上滑动。在每个位置,滤波器都会执行一种名为卷积的数学运算,从而创建一个特征图,用以突出显示诸如水平线或颜色渐变等特定模式。
- 激活函数: 在卷积之后,会对输出应用非线性函数。最常见的选择是ReLU(修正线性单元),它会将负像素值变为零。这引入了非线性,使网络能够学习超越简单线性关系的复杂模式。
- 池化层: 也称为下采样,该层用于降低特征图的维度。最大池化等技术仅保留区域中最最重要的特征(最高值),这不仅降低了计算负载,还有助于防止过拟合。
- 全连接层: 在最后阶段,处理后的特征会被展平并输入到标准的神经网络(NN)中。该层利用前几层识别出的高级特征来进行最终的分类或预测,例如“猫”或“狗”。
实际应用#
CNN 通过以超人的准确率自动化视觉任务,彻底改变了各个行业。
- 医学诊断: 在医疗保健领域,CNN 能够比人眼更快地识别医学扫描中的异常,从而协助放射科医生。例如,深度学习模型会分析MRI 和 CT 扫描来检测肿瘤或骨折的早期迹象。涉及放射学人工智能的研究凸显了这些工具如何提高诊断的一致性和速度。
- 自主系统: 自动驾驶汽车严重依赖 CNN 来感知周围环境。YOLO26等模型利用高效的 CNN 主干网络来执行实时目标检测,识别行人、交通标志和其他车辆,从而做出极其迅速的驾驶决策。
CNN 与视觉 Transformer (ViT)#
尽管 CNN 长期以来一直是视觉任务的标准,但一种名为视觉 Transformer(ViT)的新架构已经出现。
- CNN 使用局部特征处理图像,并且由于具有“归纳偏置”(假设相邻像素相关),在较小的数据集上效率极高。它们在需要在边缘设备上进行实时推理的场景中表现出色。
- ViT 将图像分割成补丁,并使用全局自注意力机制对其进行处理。这使它们能够捕获图像中的长距离依赖关系,但通常需要海量数据集和更多的计算能力才能进行有效训练。
实现示例#
现代库使得使用基于 CNN 的模型变得十分简便。ultralytics 包提供了访问 YOLO26 等先进模型的途径,这些模型具有针对快速推理高度优化的 CNN 架构。
以下示例展示了如何加载预训练的 CNN 模型并运行预测:
from ultralytics import YOLO
# Load a YOLO26 model, which uses an advanced CNN architecture
model = YOLO("yolo26n.pt")
# Run inference on an image to identify objects
results = model("https://ultralytics.com/images/bus.jpg")
# Display the prediction results
results[0].show()开发工具#
CNN 的开发得到了强大的开源工具生态系统的支持。工程师通常使用PyTorch或TensorFlow等框架来构建自定义架构。这些库提供了卷积和反向传播所需的底层张量运算。
对于希望简化计算机视觉项目生命周期(从数据收集到部署)的团队而言,Ultralytics 平台提供了一个全面的解决方案。它简化了复杂的工作流程,让开发者能够专注于应用 CNN 解决业务问题,而不是管理基础设施。此外,模型可以导出为ONNX或TensorRT等格式,以便在边缘设备上进行高性能部署。






