探索集成学习如何提升准确率并减少过拟合。学习如何组合多种模型(Ultralytics ),以获得卓越的计算机视觉效果。
集成学习是机器学习(ML)中一种稳健的策略,通过将多个独立模型(通常称为"弱学习器")组合起来生成单一预测输出。其基本前提在于:模型集合往往能实现比任何单一模型更高的准确率和更强的泛化能力。 通过整合不同算法的预测结果,集成方法能有效降低对训练数据的 过拟合风险,平滑随机误差,并提升整体系统稳定性。这种方法类似于在重大决策时咨询专家小组而非依赖单一意见。
集成方法的有效性在于其能够调节偏差-方差权衡。单个模型可能存在高方差(对噪声敏感)或高偏差(过度简化)的问题。集成方法通过特定技术缓解这些问题:
在计算机视觉(CV)领域,集成方法常被用于在竞赛和关键安全应用中实现性能最大化。对于目标检测任务,这通常涉及在同一图像上运行多个模型——例如不同版本的YOLO26。 随后通过非最大抑制(NMS) 或加权边界框融合(WBF)等技术 合并生成的边界框,从而推导出最可能的物体位置。
在预测可靠性至关重要的行业中,集成方法无处不在。
您可以通过加载多个训练好的模型并为相同的输入生成预测结果,来模拟基本推断集成。Ultralytics 可让您轻松训练这些变体模型。以下示例演示了加载两个不同 Ultralytics YOLO 模型(YOLO26n和YOLO26s)来验证图像检测结果。
from ultralytics import YOLO
# Load two distinct YOLO26 model variants
# 'n' (nano) is faster, 's' (small) is more accurate
model_nano = YOLO("yolo26n.pt")
model_small = YOLO("yolo26s.pt")
# Define the image source
source = "https://ultralytics.com/images/bus.jpg"
# Run inference with both models
results_n = model_nano(source)
results_s = model_small(source)
# Compare the number of objects detected by each model
print(f"Nano Model Found: {len(results_n[0].boxes)} objects")
print(f"Small Model Found: {len(results_s[0].boxes)} objects")
区分集合学习与数据增强至关重要。
数据增强有助于单一模型更高效地学习,而集成学习则能让多个模型相互验证输出结果。这两种策略常被结合使用,在实例分割和 姿势估计 任务中取得最先进成果。