机器学习模型数据质量评估监控

Helen519 +0/-0 0 0 正常 2025-12-24T07:01:19 机器学习 · 监控告警 · 数据质量

机器学习模型数据质量评估监控

核心监控指标体系

输入数据完整性监控

  • 检测缺失值率,阈值设置为>5%触发告警
  • 监控异常值比例,使用IQR方法识别,>3%触发告警

输入数据分布稳定性

  • 使用KS检验监控特征分布变化,p-value<0.05时告警
  • 计算KL散度,阈值设置为>0.1触发预警

实施方案

import pandas as pd
from scipy import stats
import numpy as np

class DataQualityMonitor:
    def __init__(self, threshold_missing=0.05, threshold_ks=0.05):
        self.threshold_missing = threshold_missing
        self.threshold_ks = threshold_ks
    
    def check_missing_rate(self, df):
        missing_rate = df.isnull().sum() / len(df)
        return missing_rate[missing_rate > self.threshold_missing]
    
    def check_distribution_stability(self, reference_df, current_df):
        ks_stats = []
        for col in reference_df.columns:
            if reference_df[col].dtype in ['int64', 'float64']:
                ks_stat, p_value = stats.ks_2samp(reference_df[col], current_df[col])
                ks_stats.append((col, ks_stat, p_value))
        return [stat for stat in ks_stats if stat[2] < self.threshold_ks]

告警配置

  1. 高优先级:缺失值率>5%,发送Slack通知并触发暂停模型推理
  2. 中优先级:KS检验p-value<0.05,邮件通知数据工程师
  3. 低优先级:KL散度>0.1,记录到监控系统供后续分析
推广
广告位招租

讨论

0/2000
WellWeb
WellWeb · 2026-01-08T10:24:58
数据质量监控不能只看表面,缺失值和分布变化背后可能是业务逻辑的改变,建议结合业务指标做交叉验证。
深夜诗人
深夜诗人 · 2026-01-08T10:24:58
实际落地时要避免频繁告警,可以设置数据波动的滑动窗口期,比如连续3天超过阈值才触发,减少误报干扰。