探索半监督学习如何结合标注数据和未标注数据以提高模型准确性。学习使用Ultralytics YOLO26实现SSL工作流。
半监督学习(SSL)是机器学习(ML)中的一种战略范式,它在两种传统训练方法之间架起了一座桥梁。尽管监督学习完全依赖于完整标注的数据集,而无监督学习则试图在没有任何标签的数据中发现模式,但SSL的运作方式是将少量标注数据与大量未标注数据结合起来。这种方法在现实世界的计算机视觉(CV)场景中尤其有价值,例如,从安全摄像头或卫星收集原始图像相对便宜,但由人类专家进行数据标注的过程则成本高昂、耗时且劳动密集。通过有效利用未标注样本中隐藏的结构,SSL 可以在不耗尽标注预算的情况下显著提高模型准确性和泛化能力。
SSL 的主要目标是将少量标记样本中的信息传播到更大的未标记样本集。这使得神经网络能够学习穿过数据低密度区域的决策边界,从而实现更鲁棒的classify或detect。
两种流行技术推动了大多数半监督工作流程:
以下python示例演示了使用ultralytics包的简单伪标签工作流。在这里,我们在小型数据集上训练一个YOLO26模型,然后使用它为未标记图像目录生成标签。
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Train initially on a small available labeled dataset
model.train(data="coco8.yaml", epochs=10)
# Run inference on unlabeled data to generate pseudo-labels
# Setting save_txt=True saves the detections as text files for future training
results = model.predict(source="./unlabeled_images", save_txt=True, conf=0.85)
半监督学习正在改变数据丰富但专业知识稀缺的行业。
为有效部署AI解决方案,了解SSL与类似策略的区别至关重要:
随着深度学习(DL)模型规模的增长,数据使用效率变得至关重要。像PyTorch和TensorFlow这样的现代框架为这些高级训练循环提供了计算后端。此外,Ultralytics Platform等工具正在简化数据集管理的生命周期。通过利用自动标注等功能,团队可以更轻松地实施半监督工作流,将原始数据迅速转化为可用于生产的模型权重。MLOps的这一演进确保了创建高精度视觉系统的门槛持续降低。

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