如何启用数字特征漂移?

时间:2019-06-19 18:04:55

标签: tensorflow-data-validation

我想启用数字特征漂移而不设置域。举例:我是根据年龄给客户打分,在我的训练集中,我的变量分布均匀。现在,在我的投放数据中,所有客户的年龄都在50岁左右(域中不会出现这种班次变化)。是否有任何选项来标记这种行为,需要在tfdv中进行重新培训?

我尝试给tfdv提供了两个分布N(0,1)和N(10,1),但在检测到异常时没有发现异常。

编辑:漂移仅适用于分类特征。

2 个答案:

答案 0 :(得分:1)

Drift Comparator用于某种时间序列数据,以比较例如昨天和今天的数据。

在您的情况下,我认为您应该使用Skew Comparator,因为它将发现TrainingServing数据之间的Distribution / Skew差异。该功能的代码如下所示:

serving_stats = tfdv.generate_statistics_from_tfrecord(data_location=serving_data_path)

tfdv.get_feature(schema, 'payment_type').skew_comparator.infinity_norm.threshold = 0.01

skew_anomalies = tfdv.validate_statistics(
        statistics=train_stats, schema=schema, serving_statistics=serving_stats)

您可能需要使用阈值(以0.01表示)来标记Anamolies。

答案 1 :(得分:0)

用于数字功能的漂移目前正在开发中,并且将在tfdv的下一版本(0.24.1之后)中得到支持。为此,您将必须使用JSD而不是无穷大范数。