术语表

模型组合

利用模型集合提高模型的准确性和鲁棒性。探索袋化、提升、堆叠等技术和实际应用。

模型集合是一种机器学习(ML)技术,它将两个或更多单个模型的预测结果结合在一起,产生一个单一的、通常更优越的最终预测结果。其核心原理是基于 "群众智慧 "的理念:通过汇总多个不同模型的 "意见",模型集合可以弥补任何单个模型的个别错误或偏差,从而提高准确性、改善鲁棒性并降低过拟合风险。这种方法是高性能 ML 的基石,经常被用来赢得数据科学竞赛

模型组合的工作原理

模型组合的有效性取决于其组成模型的多样性。如果所有模型都犯同样的错误,那么将它们组合在一起就不会有任何好处。因此,可以通过在不同的训练数据子集上训练模型、使用不同的算法或以不同的参数初始化模型来鼓励多样性。

创建和组合合奏曲的常用技巧包括

  • 套袋(Bootstrap Aggregating):包括在训练数据的不同随机子集上训练同一模型的多个实例。最终预测结果通常是所有模型预测结果的平均值或多数票。随机森林(Random Forest)就是基于袋集的集合的典型例子。
  • 提升:模型按顺序进行训练,每个新模型都侧重于纠正前一个模型所犯的错误。这样就形成了一个功能强大、高度准确的复合模型。流行的提升算法包括AdaBoost和梯度提升,实现方法有XGBoostLightGBM
  • 堆叠:这种方法包括训练多个不同的模型(如神经网络支持向量机和 决策树),然后使用另一个模型(称为元学习器)来组合它们的预测结果并生成最终输出。

相关概念

将模型集合与相关术语区分开来是很有用的:

  • 集合方法这是机器学习中使用的更广泛的理论技术类别(如bagging和boosting)。模型集合 "是应用集合方法创建的具体成果--训练有素的模型的特定集合。
  • 专家混合模型(MoE)与将所有模型的输出结果合并在一起的典型集合不同,混合专家模型使用一个门控网络,为给定输入动态选择最合适的 "专家 "模型。混合专家模型只选择一位专家,而集合模型则会咨询所有专家。

实际应用

模型集合被广泛应用于各个领域,以实现最先进的性能。

  1. 计算机视觉中的物体检测:自动驾驶汽车等安全关键型系统或安全监控等高价值任务中,集合可提高可靠性。例如,集合可以结合不同的物体检测模型,如不同版本的 Ultralytics YOLO(如YOLOv8YOLOv10),或使用不同数据增强策略训练的模型。YOLOv5 模型组装指南》展示了如何提高检测准确性。甚至像测试时间增强 (TTA)这样的技术也可以被视为一种集合形式,因为它们可以对图像的多个增强版本进行平均预测。
  2. 医学诊断:集合在医学图像分析中至关重要,例如从 X 光片、核磁共振成像或病理切片中诊断疾病。一种CNN可能擅长检测某些异常,而另一种CNN则更擅长检测不同的异常。通过组合它们的预测结果,诊断工具可以获得更高的准确性和可靠性,这对于肿瘤检测等应用至关重要。

集合模型虽然功能强大,但却增加了模型训练部署的复杂性和计算需求。管理多个模型需要更多的资源、精心的工程设计和强大的MLOps实践。然而,在关键应用中,显著的性能提升往往能证明这些成本的合理性。Ultralytics HUB等平台可以简化使用PyTorchTensorFlow 等框架构建的多个模型的管理。

加入 Ultralytics 社区

加入人工智能的未来。与全球创新者联系、合作和成长

立即加入
链接复制到剪贴板