现在可以在 Elastic Maps 中查看使用 geographical functions 的机器学习 (ML) 异常检测作业的结果。 Elastic Maps 8.1.0 版本可以按位置生成异常地图,帮助你探索数据中的新趋势。
Elastic Maps 在 Elastic Cloud 上可用。 你还可以下载 Elastic Stack 和我们的云编排产品 Elastic Cloud Enterprise (ECE) 和 Elastic Cloud for Kubernetes (ECK),以获得自我管理的体验。
在此示例中,我们将使用通用运输饲料规范 (GTFS) 数据。 GTFS 定义了公共交通时刻表和相关地理信息的通用格式。
在下面的展示中,我将使用 Elastic Stack 8.2 来进行展示。
Geographical functions
地理功能检测输入数据的地理位置异常。lat_long 函数检测输入数据的地理位置异常。
注意:你不能为包含地理函数的异常检测作业创建预测。 你也不能将带有条件的规则添加到使用地理函数的检测器中。
该函数支持以下属性:
field_name (required)
by_field_name (optional)
over_field_name (optional)
partition_field_name (optional)
比如,我们在如下的例子中,使用 lat_long 函数来分析信用卡交易的异常:
PUT _ml/anomaly_detectors/example1
{
"analysis_config": {
"detectors": [{
"function" : "lat_long",
"field_name" : "transaction_coordinates",
"by_field_name" : "credit_card_number"
}]
},
"data_description": {
"time_field":"timestamp",
"time_format": "epoch_ms"
}
}
我们知道,在通常的情况下,你的信用卡不可能在一个很小的时间范围里,在美国和中国同时耍卡,除非飞机飞的真的很快很快。如果你在异常检测作业的检测器中使用此 lat_long 函数,它会检测到信用卡交易的地理位置对于特定客户的信用卡而言的异常。 异常可能表明存在欺诈。
重要:你提供的 field_name 必须是一个字符串,其中包含两个逗号分隔的数字,格式为纬度、经度、geo_point 字段、包含点值的 geo_shape 字段或 geo_centroid 聚合。 纬度和经度必须在 -180 到 180 的范围内,并且代表地球表面上的一个点。
比如,JSON 数据可能包含以下交易坐标:
{
"time": 1460464275,
"transaction_coordinates": "40.7,-74.0",
"credit_card_number": "1234123412341234"
}
在 Elasticsearch 中,位置数据很可能存储在 geo_point 字段中。 有关详细信息,请参阅 geo_point 数据类型。 机器学习功能原生支持此数据类型。 具体来说,当从 geo_point 字段中提取数据时,datafeed 将在发送到异常检测作业之前将数据转换为适当的纬度、经度字符串格式。
Elasticsearch:Elastic Maps 现在支持机器学习异常层原文链接:
https://blog.csdn.net/UbuntuTo ... 58783