获取影响因子 API
编辑获取影响因子 API
编辑检索一个或多个影响因子的异常检测作业结果。
请求
编辑GET _ml/anomaly_detectors/<job_id>/results/influencers
先决条件
编辑需要 monitor_ml
集群权限。 此权限包含在 machine_learning_user
内置角色中。
描述
编辑影响因子是导致异常或应为此负责的实体。 只有在作业配置中指定了 influencer_field_name
时,影响因子结果才可用。
路径参数
编辑-
<job_id>
- (必需,字符串)异常检测作业的标识符。
查询参数
编辑-
desc
- (可选,布尔值)如果为 true,则结果按降序排序。
-
end
- (可选,字符串)返回时间戳早于此时间的影响因子。默认为
-1
,表示未设置,结果不限于特定时间戳。 -
exclude_interim
- (可选,布尔值)如果为
true
,则输出排除临时结果。默认为false
,表示包括临时结果。 -
from
- (可选,整数)跳过指定数量的影响因子。默认为
0
。 -
influencer_score
- (可选,双精度浮点数)返回异常分数大于或等于此值的影响因子。默认为
0.0
。 -
size
- (可选,整数)指定要获取的最大影响因子数。默认为
100
。 -
sort
- (可选,字符串)指定请求的影响因子的排序字段。默认情况下,影响因子按
influencer_score
值排序。 -
start
- (可选,字符串)返回时间戳晚于此时间的影响因子。默认为
-1
,表示未设置,结果不限于特定时间戳。
请求正文
编辑您还可以在请求正文中指定查询参数;例外情况是 from
和 size
,请改用 page
-
page
-
page
的属性-
from
- (可选,整数)跳过指定数量的影响因子。默认为
0
。 -
size
- (可选,整数)指定要获取的最大影响因子数。默认为
100
。
-
响应正文
编辑API 返回一个影响因子对象数组,这些对象具有以下属性
-
bucket_span
- (数字)桶的长度(以秒为单位)。此值与作业中指定的
bucket_span
匹配。 -
influencer_score
- (数字)一个介于 0-100 之间的标准化分数,该分数基于此桶中跨检测器的影响因子的概率聚合。与
initial_influencer_score
不同,此值将在分析新数据时通过重新规范化过程进行更新。 -
influencer_field_name
- (字符串)影响因子的字段名称。
-
influencer_field_value
- (字符串)影响、促成或应为此异常负责的实体。
-
initial_influencer_score
- (数字)一个介于 0-100 之间的标准化分数,该分数基于跨检测器聚合的影响因子的概率。这是在处理桶时计算的初始值。
-
is_interim
- (布尔值)如果为
true
,则这是一个临时结果。换句话说,结果是基于部分输入数据计算的。 -
job_id
- (字符串)异常检测作业的标识符。
-
probability
- (数字)影响因子具有此行为的概率,范围为 0 到 1。例如,0.0000109783。此值可以保持超过 300 位小数的高精度,因此
influencer_score
被提供为人类可读且友好的解释。 -
result_type
- (字符串)内部。此值始终设置为
influencer
。 -
timestamp
- (日期)计算这些结果的桶的开始时间。
根据正在分析的字段,会添加其他影响因子属性。例如,如果将 user_name
作为影响因子进行分析,则会在结果文档中添加 user_name
字段。此信息使您可以更轻松地筛选异常结果。
示例
编辑resp = client.ml.get_influencers( job_id="high_sum_total_sales", sort="influencer_score", desc=True, ) print(resp)
response = client.ml.get_influencers( job_id: 'high_sum_total_sales', body: { sort: 'influencer_score', desc: true } ) puts response
const response = await client.ml.getInfluencers({ job_id: "high_sum_total_sales", sort: "influencer_score", desc: true, }); console.log(response);
GET _ml/anomaly_detectors/high_sum_total_sales/results/influencers { "sort": "influencer_score", "desc": true }
在此示例中,API 返回以下信息,并基于影响因子分数按降序排序
{ "count": 189, "influencers": [ { "job_id": "high_sum_total_sales", "result_type": "influencer", "influencer_field_name": "customer_full_name.keyword", "influencer_field_value": "Wagdi Shaw", "customer_full_name.keyword" : "Wagdi Shaw", "influencer_score": 99.02493, "initial_influencer_score" : 94.67233079580171, "probability" : 1.4784807245686567E-10, "bucket_span" : 3600, "is_interim" : false, "timestamp" : 1574661600000 }, ... ] }