水域注释数据的异常点检测算法的评估与比较外文翻译资料

 2022-11-03 10:34:57

英语原文共 10 页,剩余内容已隐藏,支付完成后下载完整资料


水域注释数据的异常点检测算法的评估与比较

Mathias Annekenlowast;, Yvonne Fischerlowast;, Juuml;rgen Beyererlowast;dagger;

lowast;Fraunhofer Institute of Optronics, System Technologies and Image Exploitation (IOSB) Karlsruhe, Germany

dagger;Vision and Fusion Laboratory, Karlsruhe Institute of Technology (KIT) Karlsruhe, Germany

Email: {mathias.anneken, yvonne.fischer, juergen.beyerer}@iosb.fraunhofer.de

摘要:异常点检测能协助决策者确保监控任务的安全。为了获取操作者的信任,开发一个能提供足够洞察力以合理选择接下来的步骤的强大系统是很重要的。在这项工作中,对海域进行了调查。这之中,轨迹数据中出现异常点。因此,必须建立轨迹的正常模型。尽管目前在现实生活中,异常检测的目的大多以模拟异常来评估测量不同算法的性能。所以,注释工具的开发提供了一个地面真理的非模拟数据集。带注释的数据用于比较不同算法。对于给定的数据集,首先用高斯混合模型(GMM)和核密度估计(KDE)进行实验。对于算法的评估,比较精度,召回率和f1分数。

关键词:异常检测;高斯混合模型; 核密度估计; 海域

  1. 简介

在监视任务中,异常行为的检测非常重要。通过将注意力集中在重要事件上,可以帮助操作者获得更好的情景意识,同时为下一步的决定提供足够的信息。如Fischer和Beyerer所言,高级监控系统面临的最大挑战不是尽可能多地收集数据,而是通过只提供重要信息来帮助支持决策者。由于记录数据庞大,操作人员可以放松对相关事件的关注甚至忽略。如果操作者足够信赖系统,它便会提供这样的好处。对于操作人员而言,系统验收至关重要,监控系统对异常行为进行判断的过程必须是透明的。否则,操作人员甚至可能不考虑异常检测,而完全放弃整个系统。

为了实现透明可靠的主张,设计一个监控系统时必须考虑到现实生活中的数据。 仅通过使用模拟数据,系统可能无法以合适的方式发现实际数据中的异常,因为它只能用系统设计人员看到的异常点进行测试,而不能测试真实异常点。

本文的重点是海事领域的异常检测。例如,与正常航线偏离的情况相比,与航线上的正常行驶、错误行驶方向相比,或者与运动过快的情况相比。 因此,研究异常点检测算法能够以轨迹形式检测数据在时空上的异常。

本文的结构如下。 第二节概述了相关工作。 第三节描述了使用的数据和注释过程。 第四节解释了设计,并简要说明了使用的算法。 在第五节中,通过使用先前描述的数据集的两个子集来进行算法的优劣评估。 第六节和第七节作出结论并提出未来可能的工作思路。

  1. 相关工作

在不同的应用和研究领域,异常点检测都是重要的。这里给出关于不同任务和算法的泛概述,例如,Chandola等人的或Morris和Trivedi的基于视觉的算法。其程序应用范围从网络安全欺诈检测到图像处理和传感器网络,各有千秋。根据具体用处,选择合适算法。这些算法基于不同的概念,如基于分类,基于聚类或基于最近邻。每一种算法都有优缺点。 因此,没有可以解决任意问题的万能算法。

另一种类型的分类是基于算法学习监督,无监督或加强的模型的能力。 第一种,通过使用注释数据来学习模型,由专家决定测试数据中的异常点。 对于无监督学习,没有可用的注释数据,因此,算法必须自己找出模式。 对于最后一种类型,算法通过遵循先规定的策略来最大化特定应用领域的预期收益。

在水上监控领域,引入了几种不同的方法来识别船舶的异常行为,例如[4],[5],[6],[7],[8],[9]。

Laxhammar等 [4]比较了内核密度估计(KDE)和高斯混合模型(GMM)。 他们用现实生活中的数据测试模型,并用人为异常点来评估算法的性能。 为了评估模型的表现以便再现正常行为,使用中值对数似然和第一百分位数的方法来计算对数似然性并进行比较。 在异常点检测表现上,比较了检测异常点所需的观测数量。

Brax和Niklasson [5]引入了一种基于状态的异常点检测,其具有离散状态,用于航向,速度,位置和相对于下一艘船舶的相对位置。 利用这些状态计算不同角色的概率(这里称为代理,例如,特务代理,走私者或友好代理)。 为了评估产生仿真情况的不同场景以获得准确的地面实况。 这些算法只能使用这种模拟地面实况的方式进行测试。

Andersson和Johansson [6]使用隐马尔可夫模型(HMM)来检测异常行为。 其目的是检测海盗袭击。 他们用模拟数据来描述船舶在某一地区的正常行为。 数据被分为类似于特定值变化的离散状态,即与其他对象的距离,船舶尺寸,识别号码,速度和航向。 然后,用模拟的海盗攻击来评估模型。

Laxhammer和Falkman [7]引入顺序保形异常检测,该算法基于保形预测框架(例如由Schafer和Vovk [10]进行了解释)。 主要思想是为预测正确的概率提供可靠的下限。 因此,将预测不正确的概率作为一个参数给出。 为了计算两个轨迹之间的相似度,使用Hausdorff距离。 对于评估,使用非模拟数据集进行测试,模拟异常点。

Fischer等 [9]提出了一种基于动态贝叶斯网络的方法。 他们依赖网络中情境之间的关系模拟情境。 通过这种方法,可以估计先前确定的情况的可能性,例如可疑进入的走私船。 因此,可以检测到船只的异常行为。 该算法用模拟数据进行测试。

以前在海事方面的工作和本文的主要区别是使用的数据集不同。 以前的尝试完全在模拟数据([6]和[9])上进行中继,或者至少是异常点产生([4]和[7]),而这里使用了基于真实数据的注释数据集。 对于注释,开发了一种识别数据集中异常点并注释异常点的工具。 下面将介绍这种工具和已使用的数据集。

数据注释

如前所述,使用来自水域的数据集。 使用自动识别系统(AIS)记录。 AIS提供不同类型的数据,如导航状态,预计到达时间,目的地等等。 在分析过程中,仅使用整个可用数据的一个子集,即位置,速度,航向,海上移动业务标识(MMSI),时间戳和船舶类型。 总共记录了240多万个独特测量值。

图1表示数据集中区所有船舶位置的热力图。 该地图对交通密度进行编码,低密度为绿色高密度为红色。 具有高交通密度的区域可以被识别为航线或港口。记录地区包括波罗的海的西部地区,Kattegat和Skagerrak的部分地区。从2011年5月16日起,整整一周时间,暂时共检测到3702个不同船只(独特的MMSI)分为30种不同类型的船只。在第一步中,清除了错误的测量数据以及由水上设施产生的测量数据(例如灯)。清除之后,仍有3550艘独特的船只。为了做进一步处理,由每艘船创建的数据点按其对应的MMSI进行分组并连接到轨道。 如果在同一MMSI的两次测量之间的时间太大(此处取值30分钟),那么船舶的轨迹就会分裂。 因此,每艘船舶可以生成多个轨道,共检测到25 918个不同的轨迹。

为进一步调查,只使用货船和油轮。 在准备的数据集中,有1087艘货船和386艘油轮。 由于这两种类型的运动相似; 它们被检测为同一个。 这意味着,对于两种类型,一个复合模型总会替代单独模型。

为了检测非模拟异常,需要数据集的基本真值。因此,需要对数据集进行注释。为了实现这一点,在Python中运行注释工具,具有用于图形用户界面(GUI)的QT。 GUI如图1所示。窗口的左部显示了被认定区域的地图。浅灰色的多边形代表大陆,白色背景相当于海洋,这个例子是海岛Fehmarn和Lolland附近的一个地区。灰色线条表示所选区域的所有相关轨迹(此处仅显示油轮),黑色和红色点表示当前正在注释的轨迹。在窗口的右上角,可以用箭头或下拉菜单选择需要注释的曲目。在这下面,总体图显示与主图中相同的颜色。该地图始终显示整个区域,而主地图可用于获取特定区域的缩放视图。在右下角,可以看到具体时间依赖特征的图。在这里,显示所选轨道的秒速。

特征图中的黑色垂直线与主图中的蓝色三角形相连。 蓝色三角形在黑线指定的时间显示船只的位置和航向。 这样可以更好地了解船舶情况。 因此,它有助于注释器决定异常数据是否在手。 为了将点注释为异常,可以在主图中绘制矩形选择器,并将选择器内的所有点注释为异常点。

此外,矩形选择器可以在主地图上或总览图上使用,以获得主地图中指定区域的缩放视图。 为了仅显示整个轨道的一部分,可以使用主图上的滑块; 或者,可以在特征图中选择轨道的一部分。

由于数据量巨大以及注释整个数据集所需的成本,第一个实验的数据量被缩小。 因此,选择两个区域来反映具体的标准。 所选区域的正常行为的轨迹如图1所示。在图3中,描绘了Kattegat区域(实际上只是Kattegat的一部分)。 在这方面,数据集中没有任何油船或货船所要求的港口。 由于两个更大的岛屿(北部Laelig;soslash;和南部Anholt)周围有许多浅滩,大部分船舶都只有几条主要道路。 这些航线从北向南,反之亦然。 从西向东行驶的船舶被认为是异常的。 总共有516辆不同的油轮和货船在这个地区制造了30 531个数据点。

图4显示了情况更复杂的费马恩地区。 在菲马恩岛和洛兰岛之间有一条航线。 此外,从西向东的每个方向都有一条航线。 在西部,这些航线分为两条,一条向北,一条向西走。 尽管其中一些船舶可能正常运往罗斯托克或德国其他城市的港口,但来自南方的所有船舶都被标记为异常点。 由于少量船舶采用这种方式,正常和异常的交通不能得到有效区分。 因此,轨道注释为异常。 此外,在该区域中由选择的船只调用几个端口。 图中标有红点。 因此,该地区的异常点百分比较高。 两个地区共有602艘独特的油轮和货船产生的36 069个数据点。

通过上述工具,可以注释两个区域的油轮和货船。 对于费马恩地区,货船数据点的14.5%和油轮数据的8.7%被标记为异常数据。因为港口行为超出了工作范围,从数据集中移除了停泊在港口的船舶。 在Kattegat地区,油船的数据点中的5.4%和货船数据点中的6.6%被注释为异常点。

测试设置

本节对两种算法GMM和KDE进行了评估。 并介绍算法,可能的参数设置,度量以及这些算法的异常点检测。 之后,估计数据集给定区域的最优参数。 模型的观测特征是纬度和经度以及速度向量分解为纬度和经度部分的位置。 这导致对每个数据点i的特征向量xi = {xlat, xlon, vlat, vlon }。 对于每个区域,必须对不同的模型进行测试。 为了生成一个更好的特定区域的模型,需进行网格划分,每个网格单元被分配自己的模型。 必须估算网格大小以及模型的参数。 为了实现这些,使用Python包scikit-learn [11]。

    1. 算法
      1. 高斯混合模型:GMM由n个组件组成。 每个分量是具有平均矢量mu;和协方差矩阵Sigma;的多变量正态分布。 一起形成参数集theta;i ={mu;i, Sigma;i f},对于每个i,mu;和Sigma;的维数取决于观测特征k的数量。 概率密度函数在下式给出:

具有给定的每个分量的密度函数:

为了估计参数集theta;i,使用期望最大化(EM)算法。 在此估计之前,组件n的数量必须是可用的。 有关GMM和EM算法的更多细节,由Barber [12]给出。

      1. 核密度估计:用KDE或Parzen窗密度估算法来估算具有n个数据点的数据集的概率密度函数(PDF)。 为数据集中的每个数据点分配带宽为h的内核K(x)。 此算法中,对取决于数据集的密度的所有点,选择相同的带宽。 内核本身必须是一个有效的PDF。 通过将点x中的所有内核的总和,估计导出的PDF函数

高斯内核

将协方差矩阵内核函数设置为单位矩阵Sigma;= Ik。 带宽值对最终的PDF产生了巨大的影响。 如果选择太小,所得的估计将超出这个问题的限定; 如果所选择的带宽太大,则会不足。 有关KDE的更多信息,由Murphy提供

    1. 异常检测

对于这两种算法,异常行为的检测定义如下。 首先,使用正常行为的数据建立正常模型。 对于每个模型,计算测试数据的最小对数似然。 对数似然性是似然函数的自然对数,定义是由特定参数集产生的条件概率。 最小值是正常点与异常点之间的界限。 通过测试普通数据,让这种数据足够多样化,至少能够与最常见的正常行为相似,估计异常数据将会产生较低的对数似然。

通过用新数据评估正常模型来决定每个新的数据点。 结果将是新数据点的对数似然。 如果这个值小于临界值,则新点将被认为是一个异常点。

    1. 指标

如前文所述,精度,召回率和f1分数被用作衡量不同算法的性能的指标。 精度定义为:

精度=真阳性/(假阳性 真阳性)

而回归则定义为:

回归=真阳性/(假阴性 真阳性)

f1分数是精度和召回的谐波平均值。它被定义为:

f1分数=2*[精度*回归/(精度 回归)]

回归函数描述了实际分类的

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[141240],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。