system: [SYSTEM]

user: 4. 船舶异常行为检测的方法 基于AIS数据的检测方法是随着海事领域数据大量积累而发展起来的一类方法，这类方法采用机器学习理论和数据挖掘技术，直接从数据中学习船舶行为知识，并根据学到的知识对船舶未来的航迹进行预测和监控。基于数据的方法包括航迹分割、正常行为建模和异常行为检测三个基本环节。 4.1. 航迹分割及相似性度量 由上面的讨论可知，船舶行为异常可能是由于它出现的位置不合适，也可能是由于它的运动不符合常规。但是不论那种异常，都是与船舶的航行轨迹相关的，因此，检测船舶的异常行为必须从其航迹入手。理论上，船舶的航迹是一个连续的过程，这种连续的数据不适合与计算机处理，因此航迹必须被离散化。事实上，船舶的AIS系统不是连续地发送数据，而是每隔一段时间发送一次数据，我们能够处理的AIS数据是离散的时间序列，即是由一个个的点构成。研究船舶运动轨迹有两种思路：1) 以航迹点的观点来分析 [ 9 ] - [ 11 ] ；2) 以航迹片段的观点来分析 [ 12 ] [ 13 ] 。 第一种方法以船舶出现的位置以及在该位置的速度、航向等为特征来刻画船舶的行为，首先用网格化的方法将海区分片 [ 6 ] ，然后用相应的方法对每片海区的船舶运动规律进行建模 [ 10 ] ，对于一艘进入相应海区的船舶，利用已建好的模型来判断船舶的行为是否合适。Laxhammar [ 14 ] 将研究的海域分成1200块，对于每一块海域，如果其中出现的船舶数量小于100，则认为进入该区域的船舶是异常的，没有必要进一步对该区域的船舶行为进行建模，否则，则对该块的船舶行为进行建模，然后用奇异点检测技术来监控船舶的异常行为 [ 9 ] 。朱飞祥 [ 15 ] 基于AIS数据将大连港水域划分成大小为0.02˚ × 0.02˚的多个网络，然后用关联规则挖掘船舶的行为模式。这类方法有两个缺点：一是没有考虑船舶的运动过程，即没有考虑相邻点之间的关系，也没有考虑时间与位置之间的关系 [ 14 ] 。二是将网格内的所有航迹看作一个整体来分析，只能得到概括性的信息，丢失了航迹的局部信息，不利于检测局部航迹的异常情况。 为了更好的刻画船舶运动行为，大量的研究集中在对航迹分片的方法上。在众多的移动物体轨迹分割技术中，分片线性分割(Piecewise Linear Segmentation， PLS) [ 13 ] 是应用最广的一种，Vries [ 12 ] 等人利用分片线性分割技术对航迹进行分割，取得较好的效果。Guillarme [ 1 ] 是用滑动窗口技术对航迹进行分割，这种滑动窗口的机制能够处理在线数据，更加适合于随时间而变化的船舶航迹。华裔科学家韩家炜教授的研究团队根据最小描述长度原理分割航迹 [ 16 ] [ 17 ] ，先找出特征点，然后根据特征点依次对路径进行分割，在确定特征点时，他们遵循两个标准：1) 简单性：所用的特征点越少越好2) 一致性：与原来的路径尽可能地接近。为了提高系统的性能，文献 [ 1 ] 和 [ 12 ] 在航迹的划分过程中采取了分步的策略，首先将航迹分为静止和移动两部分，静止部分包含所有瞬时速度小于给定阈值的点，不需要仅有一步分割，而移动部分包含瞬时速度大于给定阈值的点，对移动部分的航迹，进一步分割。 由于船舶运动是一个复杂的过程，分割后的航迹片段存在多种类型，比如直航、弱偏航、大偏航、刹车、加速和停止等 [ 14 ] ，为了将不同类型的航迹片段区分开来，以便后面对正常航迹进行建模，需要对分割后的航迹片段进行聚类，将相似的航迹片段分到同一个类中，使得同一类航迹相似度高，而不同类的航迹相似度低。目前用于船舶航迹聚类的方法有模糊c-均值聚类 [ 18 ] ，层次聚类 [ 19 ] ，谱聚类 [ 20 ] [ 21 ] ，在线自适应聚类 [ 22 ] ，自组织映射 [ 23 ] 和基于密度的聚类方法 [ 17 ] 。在聚类过程中需要计算样本点之间的距离(或者相似度)，用来表示航迹片段之间距离的度量有基于序列比对的相似度 [ 1 ] [ 12 ] 、hausdorff距离 [ 7 ] [ 24 ] 和最小描述长度 [ 17 ] 。其中基于比对方法的相似度有最长公共子序列、动态时间缠绕(DTW) [ 1 ] [ 12 ] 和基于序列之间编辑距离的方法 [ 25 ] 。另外，Lee等人 [ 16 ] [ 17 ] 在他们的分析框架中提出了三种航迹相似性度量：垂直距离、平行距离和角度距离。 4.2. 正常行为建模 在船舶异常行为检测中，为了判断一个行为是否异常，我们首先必须知道什么是正常的行为。在基于AIS数据的异常行为检测中，我们通常拥有船舶正常航行的航迹数据，经过前面所讲的分割过程之后，船舶的航行轨迹被进一步划分成不同的片区或者片段，如何从这些航迹数据中得到船舶正常航行的行为规律，是船舶异常行为检测的核心问题，大量的研究工作都是围绕这个问题展开的。一般来说，船舶正常行为的建模包括如下几类：1) 基于统计的方法；2) 基于贝叶斯网络的方法；3) 基于神经网络的方法。 1) 基于统计的方法： 基于统计的方法假设船舶的局部航行规律服从某种概率分布，最基本的建模方法是高斯模型和核密度估计方法。高斯模型假设船舶的运动特征服从高斯分布，利用数据学习出高斯分布的参数，从而得到船舶运动的规律；核密度估计方法是一种无参估计技术，一般采用Parzen窗 [ 26 ] [ 27 ] 技术来估计船舶运动的分布规律。由于船舶运动是一个受多种因素的复杂过程，用一个分布函数很难有效刻画船舶的运动规律，一些学者提出用多个概率分布来对船舶航迹数据进行建模，最常见的是高斯混合模型(GMM) [ 14 ] [ 28 ] ，这种模型用 表示第 个高斯分布的参数，其中 表示第 个高斯分量的均值向量， 表示相应的协方差矩阵，则高斯混合模型可以表示为 ， 表示第 个高斯分量 的权重。求解高斯混合模型的基本方法是EM算法，在EM算法中，必须事先给定高斯分量的个数，然而，确定高斯分量的个数是一个困难的问题，数量太少则难以有效刻画样本的分布，数量太大则容易出现过拟合现象，而且增加计算的复杂度。Laxhammar [ 14 ] [ 26 ] 提出了一种分量个数可变的高斯混合模型，并greedy算法来求解该模型；为了适应航迹数据动态变化的情况，一些学者提出了基于高斯过程的建模方法(GPs) [ 2 ] [ 29 ] [ 30 ] ，高斯过程为我们提供了一种灵活的、鲁棒的船舶航迹建模方法，然而，高斯过程的时间复杂性为 ，面对海量的航迹数据，高斯过程的可行性是研究人员面临的难题。为此，一些研究团队提出了相应的解决方案，Will等人 [ 30 ] 提出了一种基于高斯过程的模型，并用Kd-树的启发式近似算法来提高模型的训练速度和降低预测时间。Smith [ 2 ] 则是用cholesky分解方法对协方差矩阵进行分解以将算法的复杂度降低为 。Kowalska [ 29 ] 采用增量学习方法来适应航迹数据不断变化的情况，这种方法同时也可以降低算法的复杂度。最近Laxhammar在他的博士论文中 [ 31 ] 提出了一种基于一致性预测技术的船舶运动规律建模方法，该方法采用增量学习策略，不仅能够适合不断变化的船舶航迹数据，而且能够解决航迹数据缺失的问题。 从统计学角度来看，发生异常行为的船舶航迹数据经常是一些处于边缘状态的数据，这些边缘数据往往落在正常分布(比如高斯分布)的尾部，因此有的学者利用极值理论 [ 32 ] 来研究船舶的异常行为。Smith [ 2 ] 提出了一种将高斯过程和极值理论相结合的框架，而Lee [ 33 ] 则提出了将卡尔曼滤波器和极值理论相结合的方法，他们Gumbel分布对船舶航迹参数的最大值分布进行建模，这两种方法根据航迹数据的变化不断调整样本集，能够较好地适应航迹的时变性质。 2) 基于贝叶斯网络的方法： 贝叶斯网络 [ 34 ] 是一种概率图模型，以有向无环图的形式来表示研究对象之间的关系，图中的节点表示研究对象，连接节点之间的边表示研究对象之间的关系，边的权重表示父子节点之间的概率依赖关系。贝叶斯网络是一种推理模型，它通过条件概率来度量事件发生的可能性，已经被广泛应用于异常行为检测 [ 35 ] - [ 38 ] 。在船舶异常行为检测方面，Johansson和Falkman [ 39 ] 采用约束的PC算法从模拟数据中学习贝叶斯网络的结构，并用这种模型成功地检测出部分异常航迹。随后，Helldin [ 40 ] 用贝叶斯网络从AIS数据中检测船舶的异常行为，然而，他们仅利用了贝叶斯网络的推理机制，而没有从AIS数据中学习网络的结构。Steven等人 [ 41 ] [ 42 ] 在这方面做了较为深入的研究，分别从航迹点和整个航迹的角度来分析船舶的航行规律 [ 41 ] ，他们基于AIS数据构造静态和动态贝叶斯网络 [ 42 ] 。贝叶斯网络的优点在于它容易被非专业人员理解，能够处理数据缺失的问题，也可以将专家的知识嵌入到模型中。尽管如此，由于这类方法需要确定网络中所有节点和边的先验概率，如何在海量数据的基础上有效地构建贝叶斯网络模型，仍然是一个需要深入研究的问题。 3) 基于神经网络的方法： 人工神经网络是一种重要的机器学习方法，它是一种应用类似于大脑神经突触联接结构进行信息处理的数学模型。由于神经网络具有良好的非线性学习能力，在很多方面得到成功的应用。Rhodes [ 43 ] 基于Grossberg的自适应共振理论构建模糊神经网络研究位置与航速之间的关系，并将学习的结果用于检测船舶的异常行为。Bomberger等人 [ 43 ] 提出了一种基于关联神经网络的非监督增量学习算法，利用船舶当前的位置、速度和航行信息预测它未来的位置，一旦船舶实际出现的位置与预测的位置不一致，就认为是异常的。由于这种算法中的位置信息是用分割好的网格来刻画的，其预测效果受到网格分辨率的影响。Rhodes [ 44 ] 采用多尺度的方法来提高分析和预测效果。 除此之外，其他一些机器学习方法也逐渐被用到船舶异常行为检测的研究中，如邱洪生 [ 45 ] 将卡尔曼滤波技术用于预测船舶的未来行为。朱飞祥 [ 15 ] 运用关联规则算法挖掘包含时空维度的船舶多属性行为模式，并将获取的知识运用到船舶航行位置预测、船舶异常行为检测及海上交通流模拟等研究领域。 4.3. 异常行为检测 船舶航迹数据经过分割和建模之后，正常的航行行为以聚类、概率分布、贝叶斯网络等形式表示。根据这些知识，我们就可以对一个给定的航迹数据进行评估和判断，并确定船舶行为是否异常。目前采用的方法主要有三类：基于样本密度的方法 [ 14 ] 、基于概率的方法 [ 2 ] [ 29 ] [ 30 ] 和基于距离的方法 [ 46 ] 。 基于密度的方法是根据航迹数据所在海区中以往时候船舶出现的密度来判断，如果该区域的通航密度大于给定的阈值，则表示该船舶进入该区域是正常的、合法的，否则认为船舶的行为是异常的。这类方法建立在对海区进行网格划分的基础上，Laxhammar [ 14 ] 在早期的研究工作中就使用过这种方法，他将每个网格中船舶数量临界值设定为100。基于密度的方法简单、方便，能够快速地检测非法进入行为。 基于概率的方法是以航迹出现的概率来对船舶航迹数据进行检测，其基本思想是船舶航迹出现的概率越大表示该船的行为与大多数船舶的行为相同，越可能是正常的，否则，概率越小表示船舶行为越可能是异常的。这类方法根据已经学习到的船舶运动概率模型，计算给定航迹数据出现的概率，如果概率值大于给定阈值，表明当时船舶的行为符合正常船舶的行为，否则认为是异常的。这类方法主要用于对船舶行为已经建立统计模型的情况，目前在船舶异常行为检测领域得到广泛应用。一般认为落在3~5倍标准差之外的样本是异常的 [ 47 ] 。 基于距离的方法建立在样本之间的距离度量的基础上 [ 7 ] [ 18 ] [ 19 ] [ 24 ] [ 48 ] ，主要用于对样本进行聚类的场合，通过计算某个航迹数据到正常样本所代表的聚类之间的距离，如果这个距离小于给定阈值，则认为该航迹是正常航迹，否则认为是异常航迹。