可观测性
了解可观测性如何增强Ultralytics YOLO 等 AI/ML 系统。在实际应用中获得洞察力、优化性能并确保可靠性。
可观察性允许工程团队根据外部输出,主动调试和了解复杂系统的内部状态。
外部输出。在快速发展的
人工智能(AI)和
机器学习 (ML) 领域中,这一概念对于超越 "黑箱"部署至关重要。
对于超越 "黑盒 "部署至关重要。传统的软件测试可以验证逻辑,而 ML 模型则
模型则是以概率方式运行的,因此有必要建立一个系统,让开发人员能够调查意外预测、性能下降和故障的根本原因。
因此,在模型部署后,开发人员必须有系统来调查意外预测、性能下降或故障的根本原因。
模型部署的根本原因。
可观测性 vs. 监控
虽然这些术语经常互换使用,但它们代表了不同的系统可靠性方法。
-
监控侧重于 "已知的未知因素"。它包括跟踪预定义的仪表板
和警报,如
推理延迟或错误率。监控
回答 "系统是否健康?
-
可观测性解决了 "未知的未知数"。它提供了必要的细粒度数据
它提供了必要的细粒度数据,以便就特定故障发生的原因提出意想不到的新问题。正如
Google SRE Book 中所述,可观察系统
使您能够理解新的行为,而无需编写新的代码。它能回答 "为什么
系统为什么会有这种行为?
可观测性的三大支柱
要深入了解情况,可观测性主要依靠三种类型的遥测数据:
-
日志:这些日志是时间戳、不可更改的离散事件记录。在
计算机视觉 (CV)管道中,日志可能会
捕捉输入图像尺寸或
超参数调整配置。
结构化日志通常采用JSON格式,便于
Splunk 等数据分析工具进行查询。
-
度量:随着时间推移而测量的汇总数字数据,例如
精度、内存消耗或
GPU利用率。像
Prometheus等系统被广泛用于存储这些时间序列数据,使团队能够
可视化趋势。
-
跟踪:当请求在各种微服务中传播时,跟踪器会跟踪请求的生命周期。
对于分布式人工智能应用,符合OpenTelemetry标准的工具可以映射请求的路径,突出显示系统中的瓶颈。
请求的路径,突出显示推理引擎的瓶颈或网络延迟。
推理引擎中的瓶颈或网络延迟。
人工智能中的可观测性为何重要
将模型部署到真实世界会带来一些挑战,而这些挑战在受控培训环境中是不存在的。
可观察性对于以下方面至关重要
-
检测数据漂移:随着时间的推移,实时数据可能会偏离训练数据。
这种现象被称为
数据漂移。可观察性工具可视化输入
分布,以便在需要重新训练时提醒工程师。
-
确保人工智能安全:对于高风险领域来说,理解模型的决策对人工智能的安全至关重要。
人工智能安全至关重要。细致入微的洞察力有助于审核决策,以
确保它们符合安全协议和
人工智能的公平性。
-
优化性能:通过分析详细的轨迹、
MLOps团队可以识别
冗余计算或资源限制,从而优化成本和速度。
-
调试 "黑盒":深度学习模型通常是不透明的。可观察性平台
像Honeycomb这样的可观察性平台可以让工程师对高维度数据进行切分,以
找出模型在特定边缘情况下失败的原因。
实际应用
可观察性在确保各行业现代人工智能解决方案的可靠性方面发挥着至关重要的作用。
-
自动驾驶汽车:在开发
在开发自动驾驶汽车的过程中,可观测性使
工程师在脱离事件中重建系统的准确状态。通过将
物体检测输出与传感器日志和
控制命令相关联,团队就能确定制动错误是由传感器噪声还是模型预测故障造成的。
-
医疗诊断:在
人工智能在医疗保健领域的应用
至关重要。可观察性可确保医学影像模型在不同医院的机器上表现一致。
机器上表现一致。如果模型的性能下降,跟踪可以发现问题是否源于图像分辨率的变化或
数据预处理管道中的延迟,从而在不影响患者护理的情况下快速补救。
利用Ultralytics实现可观察性
有效的可观测性始于适当的日志记录和实验跟踪。Ultralytics 模型无缝集成了
与MLflow 等工具无缝集成、
Weights & Biases和
TensorBoard等工具无缝集成,自动记录指标、参数和
自动记录指标、参数和工件。
下面的示例演示了如何训练
YOLO11模型,同时将日志组织成特定的项目
结构,这是基于文件的可观察性的基础:
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model, saving logs and results to a specific project directory
# This creates structured artifacts useful for post-training analysis
model.train(data="coco8.yaml", epochs=3, project="observability_logs", name="experiment_1")
对于生产环境,团队通常会将这些日志汇总到集中式平台,如
Datadog、New Relic 或
Elastic Stack等中央平台,以保持对整个人工智能
基础设施的统一视图。高级可视化还可以通过开源仪表盘来实现,如
Grafana。