深圳Yolo 视觉
深圳
立即加入
词汇表

胶囊网络(CapsNet)

探索胶囊网络 (CapsNets) 及其如何解决 CNN 的局限性。了解动态路由、空间层次结构以及将 CapsNets 与 YOLO26 进行比较。

胶囊网络,通常缩写为CapsNets,代表了深度学习领域的一种先进架构,旨在克服传统神经网络中存在的特定局限性。由Geoffrey Hinton及其团队引入,CapsNets试图比标准模型更紧密地模仿人脑的生物神经组织。与典型的卷积神经网络 (CNN)不同,卷积神经网络擅长 detect 特征,但由于下采样通常会丢失空间关系,胶囊网络将神经元组织成称为“胶囊”的组。这些胶囊不仅编码了目标存在的概率,还编码了其特定属性,例如方向、大小和纹理,有效地保留了视觉数据中的分层空间关系。

传统 CNN 的局限性

为了理解 CapsNets 的创新之处,了解标准计算机视觉模型如何运作会很有帮助。传统的 CNN 使用 特征提取 层,然后是池化层——特别是 最大池化——以减少计算负载并实现平移不变性。这意味着 CNN 无论“猫”在图像中的位置如何,都能识别它。

然而,这个过程通常会丢弃精确的位置数据,导致“毕加索问题”:即使嘴巴在额头上,CNN 也可能正确 classify 一张脸,仅仅因为所有必要的特征都存在。CapsNets 通过移除池化层并用一种尊重物体 空间层次结构 的过程来取代它们,从而解决了这个问题。

胶囊网络如何工作

这种架构的核心构建块是胶囊,它是一个嵌套的神经元集合,输出的是向量而不是标量值。在向量数学中,向量既有大小也有方向。在CapsNet中:

  • 量级(长度):表示特定实体存在于当前输入中的概率。
  • 方向(朝向):编码实例化参数,例如物体的姿势估计、尺度和旋转。

低层胶囊(detect 边缘等简单形状)预测高层胶囊(detect 眼睛或轮胎等复杂物体)的输出。这种通信由一种称为“动态路由”或“一致性路由”的算法管理。如果低层胶囊的预测与高层胶囊的状态一致,它们之间的连接就会加强。这使得网络能够从不同的3D视角识别物体,而无需通常用于教导CNN旋转和尺度变化的大规模数据增强

关键差异:CapsNets 与卷积神经网络(CNNs)

虽然这两种架构都是计算机视觉(CV)的基础, 它们在处理和表示视觉数据的方式上存在差异:

  • 标量 vs. 向量: CNN 神经元使用标量输出表示特征存在。CapsNets 使用向量编码存在(长度)和姿势估计参数(方向)。
  • 路由 vs. 池化: CNN 使用池化对数据进行下采样,通常会丢失位置细节。CapsNets 使用动态路由来保留空间数据,使其在需要精确 object track 的任务中非常有效。
  • 数据效率: 由于胶囊网络(capsules)隐式理解3D视角和仿射变换,与可能需要大量样本来学习对象所有可能旋转的CNNs相比,它们通常可以从更少的训练数据中进行泛化。

实际应用

尽管CapsNets在计算成本上通常高于YOLO26等优化模型,但在特定领域中具有显著优势:

  1. 医学图像分析:在医疗领域,病变的精确方位与形态至关重要。研究人员已将胶囊网络应用于脑肿瘤分割,该模型需基于标准卷积神经网络可能忽略的细微空间层次结构,将肿瘤与周围组织区分开来。您可探索医学影像中胶囊网络的相关研究。
  2. 重叠数字识别: CapsNets 在 MNIST dataset 上取得了最先进的结果,特别是在数字重叠的场景中。因为网络 track 每个数字的“姿势估计”,它可以将两个重叠的数字(例如,一个“3”在一个“5”之上)解耦为不同的对象,而不是将它们合并成一个混淆的特征图。

实践背景与实施

Capsule Networks(胶囊网络)主要是一种分类架构。虽然它们在理论上具有鲁棒性,但现代工业应用往往更青睐高速卷积神经网络(CNNs)或Transformer模型以实现实时性能。然而,理解胶囊网络所使用的分类基准数据集(MNIST)仍具有重要价值。

以下示例演示了如何训练现代 YOLO 在MNIST 上使用 ultralytics 该任务与用于验证囊状网络的主要基准任务相类似。

from ultralytics import YOLO

# Load a YOLO26 classification model (optimized for speed and accuracy)
model = YOLO("yolo26n-cls.pt")

# Train the model on the MNIST dataset
# This dataset helps evaluate how well a model learns handwritten digit features
results = model.train(data="mnist", epochs=5, imgsz=32)

# Run inference on a sample image
# The model predicts the digit class (0-9)
predict = model("https://docs.ultralytics.com/datasets/classify/mnist/")

胶囊与视觉人工智能的未来

胶囊网络背后的原理持续影响着 人工智能安全与可解释性研究。通过显式建模 部分-整体关系,胶囊为深度神经网络的"黑箱"特性提供了"玻璃箱"替代方案, 使决策过程更具可解释性。未来发展将致力于融合胶囊的空间鲁棒性 与YOLO11等架构的推理速度, YOLO11 或更新的YOLO26等架构的推理速度,以提升三维物体检测与机器人系统的性能。研究人员还正探索采用EM路由的矩阵胶囊,进一步降低协议算法的计算成本。

对于希望高效管理数据集和训练模型的开发者,Ultralytics Platform提供了一个统一的环境来标注数据、在云端训练和部署模型,这些模型在平衡CNN的速度与复杂视觉任务所需的精度方面表现出色。

让我们一起共建AI的未来!

开启您的机器学习未来之旅