术语表

知识提炼

了解知识蒸馏如何通过压缩模型来优化人工智能,从而在边缘设备和实际应用中实现更快、更高效的性能。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

知识蒸馏(Knowledge Distillation)是一种机器学习技术,主要是将知识从大型复杂模型(通常称为 "教师")转移到小型简单模型(称为 "学生")。这种方法能使学生模型达到与教师模型相当的性能,同时更有效地利用计算资源,因此非常适合部署在移动设备、物联网设备或边缘计算系统等资源受限的环境中。

知识蒸馏的工作原理

知识蒸馏过程包括训练学生模型来复制教师模型的行为。学生模型并不完全依赖原始的标注数据,而是从教师模型的 "软标注 "或概率输出中学习,这些输出包含有关不同类别之间关系的更丰富信息。这些额外的知识有助于学生更好地进行泛化,即使使用较少的参数也是如此。

例如,在图像分类任务中,教师模型可能会输出 "猫 "的概率为 90%,"狗 "的概率为 8%,"兔子 "的概率为 2%。这些软概率提供了对类别相似性的洞察力,学生模型可利用这些洞察力完善其预测。

知识蒸馏的好处

  • 模型压缩:在保持高性能的同时减小模型大小,以便在内存和处理能力有限的设备上部署。
  • 推理速度更快:通过知识蒸馏法训练的小型模型通常延迟较低,因此适合视频分析或自动驾驶汽车等实时应用。
  • 增强泛化能力:通过从教师的软标签中学习,学生模型通常能比直接根据硬标签、单点标签训练的模型获得更好的泛化效果。

知识蒸馏的应用

知识蒸馏技术已在人工智能和机器学习的各个领域得到广泛应用:

1.医疗保健

在医学影像领域,为检测 X 射线或核磁共振成像中的异常而训练的大型模型,可以提炼成更小的模型,以进行更快的实时诊断。例如 Ultralytics YOLO模型以其在物体检测中的高效率而著称,可以从提炼中获益,从而提高其在医疗保健设备中的速度和可部署性。了解有关医疗保健领域人工智能的更多信息。

2.自动驾驶

自动驾驶汽车依靠物体检测和分类模型进行实时决策。精炼模型在这方面至关重要,因为它们可以在保持准确性的同时缩短推理时间。探索自动驾驶中的人工智能如何改变交通安全和效率。

3.自然语言处理(NLP)

在 NLP 中,BERT 等基于变换器的大型模型被提炼成 DistilBERT 等较小的版本,以便在边缘设备上实现更快的文本分类、翻译和问题解答任务。了解有关变换器和 NLP 的更多信息。

4.零售业和制造业

在零售业和制造业等行业,知识蒸馏被用来为库存管理和缺陷检测等任务部署轻量级模型。例如,Ultralytics ,通过蒸馏优化的计算机视觉模型可以提高人工智能驱动的制造业的效率。

与相关概念的主要区别

模型修剪

虽然知识蒸馏和模型剪枝都侧重于模型优化,但剪枝是通过删除不太重要的参数来降低模型的复杂性,而蒸馏则是训练一个单独的、较小的模型来模仿较大模型的行为。

模型量化

模型量化降低了模型参数的精度(例如,将 32 位浮点数转换为 8 位整数),而蒸馏则保持了精度,但将知识转移到了更小的架构中。

真实案例

实时视频分析

利用知识蒸馏技术,一个大型YOLO 模型可以训练出一个较小的版本,从而以更高的精度和更低的延迟检测视频流中的物体。这对于实时处理至关重要的安全监控等应用尤为重要。进一步了解YOLO 的实时推理功能

智能农业

在精准农业中,根据复杂数据集训练的大型人工智能模型可以精简为紧凑型版本,部署在无人机或田间传感器上,从而实现病虫害检测或作物健康监测等任务。了解人工智能如何改变农业

支持知识提炼的工具和框架

有几个框架支持知识蒸馏,使机器学习从业人员可以使用它:

  • PyTorch:用于实施自定义蒸馏管道的流行框架。了解有关人工智能PyTorch 的更多信息。
  • Hugging Face 转换器:为 NLP 任务提供 DistilBERT 等预训练模型。
  • Ultralytics HUB:简化模型训练和部署,使用户能够使用优化的YOLO 模型进行实验。探索Ultralytics HUB。

知识蒸馏(Knowledge Distillation)在推动人工智能系统发展方面继续发挥着举足轻重的作用,为现实世界的应用提供强大而高效的模型。通过弥合准确性和效率之间的差距,它使人工智能能够惠及全球更多设备、行业和用户。

阅读全部