CN117390506A - 一种基于网格编码与TextRCNN的船舶路径分类方法 - Google Patents
一种基于网格编码与TextRCNN的船舶路径分类方法 Download PDFInfo
- Publication number
- CN117390506A CN117390506A CN202311234220.6A CN202311234220A CN117390506A CN 117390506 A CN117390506 A CN 117390506A CN 202311234220 A CN202311234220 A CN 202311234220A CN 117390506 A CN117390506 A CN 117390506A
- Authority
- CN
- China
- Prior art keywords
- word
- ship
- data
- path
- textrcnn
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000013598 vector Substances 0.000 claims abstract description 66
- 238000013528 artificial neural network Methods 0.000 claims abstract description 40
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 13
- 238000003058 natural language processing Methods 0.000 claims abstract description 7
- 238000012549 training Methods 0.000 claims description 42
- 230000006870 function Effects 0.000 claims description 18
- 238000005070 sampling Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000010354 integration Effects 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 8
- 230000004913 activation Effects 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 claims description 7
- 238000011176 pooling Methods 0.000 claims description 7
- 238000011160 research Methods 0.000 claims description 6
- 238000013145 classification model Methods 0.000 claims description 5
- 230000014509 gene expression Effects 0.000 claims description 5
- 230000003542 behavioural effect Effects 0.000 claims description 4
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 230000002457 bidirectional effect Effects 0.000 claims description 2
- 230000004069 differentiation Effects 0.000 claims description 2
- 230000000295 complement effect Effects 0.000 claims 1
- 238000010276 construction Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000003062 neural network model Methods 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000003068 static effect Effects 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 7
- 230000007787 long-term memory Effects 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000007418 data mining Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001469654 Lawsonia <weevil> Species 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 231100001263 laboratory chemical safety summary Toxicity 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Remote Sensing (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于网格编码与TextRCNN的船舶路径分类方法,采用基于Word2vec词嵌入技术与TextRCNN循环神经网络模型,利用船舶AIS数据、船舶劳氏档案数据,利用网格化编码使原本连续的船舶路径转变为离散的网格点,进而转换为自然语言语料。将船舶路径与自然语言处理领域相结合,将船舶路径从传统的范围与人工智能技术相结合,以监督学习的方法对路径进行分类任务。采用自然语言处理领域传统的Word2vec方法,将每个网格点当做一个单词来训练静态词向量。以船舶类型作为标签,使用基于循环神经网络的TextRCNN对词向量构成的语句进行分类任务,能够在较低的词嵌入维度下推断船舶路径所对应的船只类别,能够兼顾效率与质量。
Description
技术领域
本发明涉及船舶路径分类技术与循环神经网络技术,并提出了一种基于网格编码与TextRCNN的船舶路径分类方法。
背景技术
自从AIS技术引入海洋交通领域以来,它在学术界逐渐获得广泛认可,并展示了广阔的实际应用前景。AIS是一种安装在船舶上的自动追踪系统,能够与邻近船舶、AIS岸台和卫星等设备进行电子数据交换,为船舶交通管理系统提供定位和辨识服务。最初,AIS主要应用于数据挖掘和航海安全方面。随着时间的推移,AIS数据量呈指数增长趋势,目前,海事部门和民用航运数据中心已经积累了大量的AIS历史记录。随着AIS数据质量的提高,其应用领域也在不断扩展和升级。除了在导航安全方面的应用,AIS数据在海洋研究中也被广泛运用。由于AIS数据能够提供详细的船舶相关信息,如船舶唯一编号、船名、船长、船宽、吃水深度、航行方向、经纬度等,因此它被应用于统计学、信息技术、生物学和环境科学等领域。同时,AIS数据还可以与其他数据库结合,获得更多的信息。例如,结合时间戳和航行距离表,可以计算港到港的平均航速;结合吃水深度和船舶尺寸,可以计算货物重量。这些信息对于海洋研究具有重要意义。此外,AIS数据挖掘是其他研究的基础,因为它能将分散、无序的原始数据转化为有组织、可读的信息,为后续的分析和应用提供基础数据。
另一方面,计算机硬件的快速发展为深度学习的爆发性发展提供了基础。自从2012年提出AlexNet以来,新的深度神经网络架构、激活函数和优化算法不断涌现。深度神经网络由模拟人脑的人工神经网络组成,能够自动从数据中学习高级特征,在语音识别、图像处理和文本理解等方面取得比传统模型更好的结果。为了对输入数据集进行分析和分类,需要考虑数据集的特点,如单标签、多标签、无监督和不平衡的数据集。根据数据集的特征,输入的词向量将被送入神经网络进行训练,直到达到终止条件。训练模型的性能通过下游任务进行验证,例如情感分类、问题回答和事件预测。
然而在处理实际AIS数据时,我们发现近半AIS数据中的“类型”字段丢失,因此需要探究船舶路径与其船舶类别之间的关系。目前,针对AIS中路径的研究主要以原始AIS形成的经纬度路径为主。人们通常使用DTW或LCSS等方法来衡量路径之间的相似度,也有人提出使用无监督的聚类算法对船舶路径进行分类。大多数研究将船舶路径数据视作无监督训练问题进行处理。
因此,本发明提出了一种基于网格编码与TextRCNN的船舶路径分类方法。该方法采用监督学习对未知类别的船舶路径进行分类,通过在已知类别的数据上进行训练,在损失稳定后对未知类别路径的船舶种类进行推断,能够进一步获取船只的相关信息,满足深度学习数据驱动任务的需求。
发明内容
基于上述问题和现状,本发明采用基于Word2vec词嵌入技术与TextRCNN循环神经网络模型,利用船舶AIS数据、船舶劳氏档案数据,利用网格化编码使原本连续的船舶路径转变为离散的网格点,进而转换为自然语言语料。将船舶路径与自然语言处理领域相结合,将船舶路径从传统的范围与人工智能技术相结合,以监督学习的方法对路径进行分类任务。由于无法直接转换成单词,因此不能直接当下纯基于注意力机制的相关模型进行微调,如GPT系列模型等,所以采用自然语言处理领域传统的Word2vec方法,将每个网格点当做一个单词来训练静态词向量。以船舶类型作为标签,使用基于循环神经网络的TextRCNN对词向量构成的语句进行分类任务,能够在较低的词嵌入维度下推断船舶路径所对应的船只类别,能够兼顾效率与质量。
本发明所述的基于TextRCNN的船舶路径分类方法由四个模块组成。第一个模块为AIS数据预处理模型:针对AIS数据中存在的错误信息,如两条连续数据的经纬度差异过大,进行数据清洗与数据整合,同时使用网格化编码,使原始经纬度点转换为网格编号,转换为自然语言,为后续计算提供高质量的数据基础。第二个模块为词嵌入训练模块,将处理完的AIS数据送入词嵌入神经网络,得到每个网格的词嵌入向量。第三个模块为分类神经网络模块,将第二部得到的词嵌入按顺序送入到循环神经网络中进行计算,最终得到该路径所对应的类别。
为实现上述目的,本发明采用如下的技术方案:
步骤S1:船舶AIS数据预处理
本发明使用船舶AIS数据完成船舶路径的分类。在设备使用和数据传输采集过程中,AIS数据可能遭遇信息缺失、错误、重复和异常等问题,这些问题会对后续的数据挖掘分析造成干扰。因此,对AIS数据进行预处理是必要的。
步骤S11:AIS原始数据的数据清洗
异常数据主要包括数据异常、行为异常和位置异常。其中,数据异常包括数据项超出阈值或数据缺失;行为异常包括航行状态超出阈值或航迹不符合常理;位置异常包括船舶偏离航道或超出研究范围。针对这些异常数据,进行数据剔除或修正的操作。
步骤S12:AIS原始数据路径整合
由于AIS设备每隔3秒到几分钟发送一次信号,数据总条数非常多,所以需要先对同一条船发出的AIS信号进行合并处理。
步骤S13:AIS原始数据补全
结合船舶劳氏档案数据,通过船舶的MMSI编码,与AIS数据进行匹配,替换掉之前数据源中的“类型”字段。
步骤S14:网格化编码转换
结合预先设定好的网格,将数据中的经纬度坐标转换为网格点,再将船舶所经过的网格点连接,构成原始语料。
步骤S2:训练词嵌入神经网络
将步骤S1得到的原始路径预料作为特征输入到word2vec网络中进行训练,得到每个词对应的低维度向量。
步骤S3:训练TextRCNN
基于步骤S2中低纬度词向量,构建循环神经网络,通过合理调整参数,训练多轮得到合适的神经网络。
与已有技术相比,本发明有益效果在于:
本发明通过对船舶AIS数据进行数据清洗、路径整合和数据补全操作,确保了AIS数据的高质量,避免了数据质量问题对后续计算结果的影响。通过网格化编码,将连续的路径转换成离散的数据点,并将其组合成自然语言的形式。通过词嵌入神经网络,为每个网格点得到了低维度的嵌入表示。然后,利用循环神经网络对未知类别的路径进行推断,获取船舶的相关信息。这为相关部门制定针对性测试提供了科学的决策依据。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明实施方案作进一步的详细描述,其中:
图1为发明方法流程图
图2为本发明采用的TextRCNN模型结构图。
具体实施方式
针对使用经纬度表示的船舶路径数据,即使两条船航行路径所经过的多个港口顺序完全相同,但两条船之间的路径差距表达相差甚远,即便两条船始终只相隔几海里,海上的路线也无法进行统一表示,这与陆地上的交通网络不同。因此,我们提出了一种使用网格编码的方法来处理原始数据。该方法将处于同一矩形内的经纬度点合并成同一个网格点后再进行处理。
本发明提出的基于TextRCNN的船舶路径分类方法包括四个关键模块。首先是AIS数据预处理模块,用于解决AIS数据中存在的错误信息问题。通过数据清洗和整合操作,我们可以排除具有过大经纬度差异的连续数据,并将原始经纬度坐标转换为网格编号。然后,按照同一mmsi的时间顺序对网格编号进行排序,并将其转换为自然语言形式,以提供高质量的数据基础供后续计算使用。其次是词嵌入训练模块,该模块将经过预处理的语料送入word2vec词嵌入神经网络中。通过训练,我们可以得到每个网格的词嵌入向量,用于表示该网格在路径中的语义信息。第三个模块是分类神经网络模块,它接收经过词嵌入的网格向量,并将其按照顺序输入循环神经网络进行计算。通过多轮迭代,该模块逐渐学习并生成最终的分类模型,使得该模型能够对船舶路径进行准确分类。本发明的方法通过综合运用数据预处理、词嵌入和循环神经网络的技术,为船舶路径分类问题提供了一种高效可靠的解决方案。通过将原始AIS数据转化为可处理的形式,并将其融入到神经网络模型中,我们能够有效地实现船舶路径的准确分类和识别。
本发明中,如图1所示,一种基于网格编码与TextRCNN的船舶路径分类方法,包括以下步骤:
步骤S1:船舶AIS数据预处理
本发明使用船舶AIS数据完成船舶路径的分类。在设备使用和数据传输采集过程中,AIS数据可能遭遇信息缺失、错误、重复和异常等问题,这些问题会对后续的步骤分析造成干扰。因此,对AIS数据进行预处理是必要的。
步骤S11:AIS原始数据的数据清洗
异常数据主要包括数据异常、行为异常和位置异常。其中,数据异常包括数据项超出阈值或数据缺失;行为异常包括航行状态超出阈值或航迹不符合常理;位置异常包括船舶偏离航道或超出研究区域。针对这些异常数据,进行数据剔除或修正的操作。在实际过程中,剔除完错误数据后,仅保留原始数据中的时间、经纬度、mmsi以及船舶类别(如渔船、普通货船、集装箱船等)四个字段,如表1所示。
表1原始部分数据样式
步骤S12:AIS原始数据路径整合
由于AIS设备每隔3秒到几分钟发送一次信号,数据总条数非常多,所以需要先对同一条船发出的AIS信号进行合并处理。首先查询出所有条目的mmsi并去重,再根据mmsi查询所有匹配条目,之后根据时间戳排序,构成了一条船舶路径。船舶路径T由从AIS设备收集的时间戳点序列表示,即T={t1,t2,…tn,…tN},其中tn={latn,lonn,timen},n∈[1,2,…,N],n表示第n个时间戳点,N为船只路径T的长度。tn中的latn,lonn,timen分别代表经度、纬度和时间戳。
步骤S13:AIS原始数据补全
结合船舶劳氏档案数据,通过船舶的mmsi编码,与AIS数据进行匹配,替换掉之前AIS数据源中的“类型”字段,即舍弃伴随信息发出的“类型”(因为60%的源数据“类型”字段都是缺失的,而且进行匹配后,还有约30%的数据仍然是字段缺失)。
步骤S14:网格化编码转换与压缩
结合预先设定好的网格,将数据中的经纬度坐标转换为网格点,再将船舶所经过的网格点连接,构成原始语料。为了避免网格序列过长而导致无法处理,我们进行了数据压缩,将多个连续在同一个网格上的路径压缩成一个点进行处理。通过以上操作,生成的网格序列中相邻网格点不会重复。比如1|1|1|2|2|2|3|4|1|1会被压缩成1|2|3|4|1,处理完的数据如表2。在经过网格编码后,路径编码由P转化为E={e1,e2,…ei,…eN},ei∈{1,2,…,868},其中ei代表嵌入后的网格点对应的数字,假设共划定868个区域点。在进行神经网络分类训练时,考虑到序列长度过长的问题,将网格序列长度n超过50的数据重新处理。例如,长度为223的序列将被划分成4个长度为50的序列和一个长度为23的序列。此外,对于同一AllRoute列对应不同ShipType的数据,将其删除。最终,从所有数据中以Shiptype出现次数最多的类别为例,进行随机采样,采样数量与该类别出现次数相同。
表2处理后数据样式(方便展示“路径”列做了截断处理)
步骤S2:训练word2vec词嵌入神经网络
将步骤S1得到的原始路径语料作为特征输入到word2vec网络中进行训练,得到每个词对应的低维度向量。如果使用独热向量来标志词。假设词典中不同词的数量(字典大小)为N,每个词对应一个从0到N-1的不同整数。为了得到索引为i的任意词的独热向量表示,需要创建一个全为0长度为N的向量,并将位置i的元素设置为1。这样,每个次都能够被表示成一个长度为N的向量,可以输入到神经网络中。但是这样构建向量存在两个问题,第一是不能够准确表达不同词语之间的相似度,比如“余弦相似度”,对于两个不同的词嵌入d维实数向量它们的余弦相似度是他们之间角度的余弦。/>为实数空间,d为向量的维度。
由于任意两个不同词之间的独热向量之间的余弦相似度为0,所以独热向量不能够编码词之间的相似性。Word2vec工具解决了这一问题。它将每个词映射到一个固定长度的向量,这些向量能够更好地表达不同词之间的相似性和类别关系。该发明使用跳元模型。对于在意义上有意义的表示,他们的训练依赖于条件概率,条件概率可以被看作使用语料库中的一些词来预测另一些单词。由于不需要使用标签,因此跳元模型是子监督模型。
步骤S21:构建跳元模型输入
用跳元模型假设一个词可以用来在文本序列中生成其周围的单词。以文本序列“111”“231”“232”“213”“68”为例。假设中心词选择“232”,并将上下文窗口设置为2,给定中心词“232”,跳元模型考虑生成上下文词“111”“231”“213”“68”的条件概率P:
P(111,231,213,68|232) (2)
假设上下文词是在给定中心词的情况下独立生成的。在这种情况下,上述条件概率可以重写为:
P(111|232)×P(231|232)×P(213|232)×P(68|232) (3)
在跳元模型中,每个词都有两个d维向量表示,用于计算条件概率。更具体地说,对于词典中索引为i的任何词,分别用和/> 表示其用作中心词和上下文词两个向量。给定中心词wc(词典中的索引c),生成任何上下文词wo(词典中的索引o)的条件概率可以通过对向量点积的softmax操作来建模,exp()表示以自然对数的底数e为指数的幂运算:
其中此表索引集合V={0,1,…,|V|-1}。给定长度为L的文本序列,其中时间步t处的词表示为wt,假设上下文是在给定任何中心词的情况下独立生成。对于上下文窗口m,跳元模型的似然函数是在给定任何中心词的情况下生成所有上下文词的概率,wt+j代表t后第j个词:
其中可以省略小于1或大于T的时间步。
步骤S22:训练跳元模型
跳元模型参数是词表中每个词的中心词向量和上下文词向量。在训练中,我们通过最大化似然函数(即极大似然估计)来学习模型参数。这相当于最小化以下损失函数:
当使用随机梯度下降来最小化损失时,在每次迭代中可以随机抽样一个较短的子序列来计算该子序列的(随机)梯度,以更新模型参数。为了计算该(随机)梯度,需要获得对数条件概率关于中心词向量和上下文词向量的梯度。根据(4),涉及中心词wc和上下文词wo的对数条件概率为:
通过微分,我们可以获得其相对于中心词向量vc的梯度为
注意,(8)中的计算需要词典中以wc为中心词的所有词的条件概率。其他词向量的梯度可以以相同的方式获得。对词典中索引为i的词进行训练后,得到vi(作为中心词)和ui(作为上下文词)两个词向量。在自然语言处理应用中,跳元模型的中心词向量通常用作词表示。
步骤S23:word2vec词嵌入神经网络训练加速
在对数损失(7)中,由于softmax操作的性质,上下文词可以是词表V中的任意项,(7)包含与整个词表大小一样多的项的求和。因此,(8)中跳元模型的梯度计算都包含求和。但是在一个词典上(通常有几十万或数百万个单词)求和的梯度的计算成本是巨大的。为了降低上述计算复杂度,采用负采样的方法进行加速训练。
负采样方法修改了原目标函数。给定中心词wc的上下文窗口,任意上下文词wo来自该上下文窗口的被认为是由下式建模概率的事件:
其中σ使用了sigmoid激活函数的定义:
从最大化文本序列中所有这些事件的联合概率开始训练词嵌入。具体而言,给定长度为T的文本序列,以wt表示时间步t的词,并使上下文窗口为m,考虑最大化联合概率:
在(11)中,只考虑了正样本事件。只有当所有词向量都等于正无穷时,(11)中的联合概率才最大化为1。然而,这样的结果是没有意义的。为了使目标函数更有意义,引入了负采样,通过从预定义分布中采样负样本并添加到目标函数中。用S表示上下文词wo来自中心词wc的上下文窗口的事件。对于这个涉及wo的事件,从预定义分布P(w)中采样K个不是来自这个上下文窗口噪声词。用Nk(k=1,…,K)表示噪声词不是来自wc的上下文窗口的事件。假设正例和负例S,N1,…,NK的这些事件是相互独立的。负采样将(11)中的联合概率(仅涉及正例)重写为
通过事件S,N1,…,Nk近似条件概率:
分别用it和hk表示词wt和噪声词wk在文本序列的时间步t处的索引。(13)中关于条件概率的对数损失为:
可以看到此时现在每个训练步的梯度计算成本与词表大小无关,而是线性依赖于K。当将超参数K设置为较小的值时,在负采样的每个训练步处的梯度的计算成本较小。
经过word2vec词嵌入神经网络,先前的E={e1,e2,…,eN},ei∈{1,2,…,868}在经过词嵌入矩阵后,成为模型的输入 d代表嵌入的维度,Y={y1,…,yn}代表该路径对应的类别。
步骤S3:训练TextRCNN
RNN和CNN是文本分类问题中常用的模型架构,它们各自具有优点和局限性。RNN擅长处理序列结构,能够考虑到句子的上下文信息,但RNN属于“biased model”,一个句子中越往后的词重要性越高,这可能影响最终的分类结果,因为对句子分类影响最大的词可能处于任何位置。CNN属于无偏模型,能够通过最大池化获得最重要的特征,但是CNN的滑动窗口大小不容易确定,选的过小容易造成重要信息丢失,选的过大会造成巨大参数空间。为了解决这些问题,TextRCNN提出了一种新的网络架构,用双向循环结构获取上下文信息,这比传统的基于窗口的神经网络更能减少噪声,而且在学习文本表达时可以大范围地保留词序。其次,TextRCNN使用最大池化层获取文本的重要部分,并自动判断哪个特征在文本分类过程中起更重要的作用。TextRCNN结构图如图2。
步骤S31:网格点表示学习
LSTM(Long Short-Term Memory)是一种循环神经网络(RNN)中的特殊单元,用于处理和建模时间序列数据。LSTM单元的物理意义是在模拟和捕捉长期依赖关系,并处理输入序列中的长期记忆。
LSTM单元由多个门(gate)组成,包括输入门(input gate)、遗忘门(forget gate)和输出门(output gate),每个门控制着信息的流动。这些门通过可学习的权重来控制信息的输入、遗忘和输出。
LSTM单元的物理意义可以通过以下几个方面来解释:
1.长期记忆:LSTM单元通过遗忘门和输入门的控制,可以选择性地保留和遗忘输入序列中的信息。这使得LSTM能够在处理时间序列数据时具有长期记忆的能力,能够捕捉到跨越较长时间间隔的依赖关系。
2.输入控制:输入门决定了新的输入信息对当前状态的贡献程度。它可以通过对输入进行加权处理,选择性地将重要的信息输入到LSTM单元中,从而控制输入数据对模型的影响。这样可以在处理时间序列数据时,对不同时间步的输入进行灵活的调整和加权。
3.遗忘控制:遗忘门决定了过去状态中的信息对当前状态的保留程度。通过遗忘门的控制,LSTM单元可以选择性地忘记一些不重要的信息,从而避免过度依赖旧的状态。这对于处理长时间序列或保持长期依赖关系的连续性非常重要。
4.输出控制:输出门决定了当前状态对外部输出的影响程度。它可以通过对当前状态进行加权处理,选择性地输出有用的信息。这使得LSTM单元能够灵活地控制对下游模型的输出,根据当前状态和任务的需要提供合适的预测或输出。
总的来说,LSTM单元的物理意义是通过门控机制来模拟和捕捉时间序列数据中的长期依赖关系和长期记忆。它可以选择性地接收、遗忘和输出信息,从而适应不同的上下文和任务要求。LSTM在自然语言处理、语音识别、时间序列预测等领域中得到广泛应用,能够处理复杂的时间序列模式和长期依赖关系。
LSTM单元是TextRCNN的基础模型,在其内部维护一个单独的内存单元,仅在必要时更新和公开其内容。LSTM有许多变体,我们选择的是pytorch内置的nn.LSTM单元。我们将每个时间步t的LSTM单元定义为维度为的向量集合:输入门it,遗忘门ft,输出门ot,候选记忆gt,记忆单元ct和隐藏状态ht,其中it,ft,ot的范围都在[0,1]之间,LSTM的状态转换方程如下,如图2左上角图。
it=σ(Wiixt+bii+Whiht-1+bhi) (15)
ft=σ(Wifxt+bif+Whfht-1+bhf) (16)
gt=tanhWigxt+big+Whght-1+bhg) (17)
ot=σ(Wioxt+bio+Whoht-1+bho) (18)
ct=ft⊙ct-1+it⊙gt (19)
ht=ot⊙tanh(ct) (20)
其中xt代表t时刻的输入,σ代表sigmoid激活函数,将三个门控单元的值控制在[0,1]之间,⊙代表Hadamard乘积,tanh()激活函数作用为将输出控制在[-1,1]之间,Wii为输入门对xt的权重参数,bii为输入门对xt的偏差,Whi为输入门对上一时刻隐藏状态ht-1的权重参数,bhi为输入门对ht-1的偏差,其余3组参数意义相似。
在文本分类这种可以看到后续时刻状态的场景中,通常选择双向的biLSTM模型,不同于LSTM,biLSTM能够同时获取到上文和下文信息,将和/>拼接起来获得/>双向信息,需要注意的是,两个方向隐藏状态的维度不必相同。biLSTM是目前最常用的考虑上下文信息的模型之一。
而TextRCNN网络的输入是网络的输出包含船舶路径类型元素。使用P=(k|X,θ)来表示路径属于第k类的概率,其中θ是网络中的参数。TextRCNN首先将其转化为词向量表示,然后使用biLSTM处理输入,得到每个时间步的双向输出。具体而言,对于第i个词xi,其语义向量由该词的左语义向量cl(xi)、右语义向量cr(xi)和该词的词嵌入向量e(xi)拼接而成。
cl(xi)=f(Wlcl(xi-1)+Wsle(xi-1)) (21)
cr(xi)=f(Wrcr(xi+1)+Wsre(xi+1)) (22)
cl(xi-1)是前一个单词xi-1的左侧上下文,Wl是将隐藏层转换为下一个隐藏出的矩阵,Wsl是将当前单词的语义和下一个单词的左上下文结合起来,f是一个非线性激活函数,右侧上下文cr(xi)以类似的方式计算。
上下文向量捕获所有左侧和右侧上下文的语义,在(23)中定义e*(xi)的表示,它是左侧上下文向量cl(xi),右侧上下文向量e(xi)和当前词嵌入向量cr(xi)的串联。
之后对e*(xi)进行线性变化并结合tanh激活函数,将结果发送到下一层。
步骤S32:船舶路径表示学习
当计算出所有单词的表示时,应用最大池化层。
池化层将不同长度的文本转换为固定长度的向量。通过池化层,可以捕获整个文本中的信息。最大池层试图找到文档中最重要的潜在语义因素。池化层利用循环结构的输出作为输入。模型最后一层输出层与传统神经网络类似,定义为:
y(4)=W(4)y(3)+b(4) (26)
最后将softmax函数应用于y(4),就能够获得对应类别的概率:
步骤S33:网格点表示学习
将所有需要训练的参数集合定义为θ,网络的训练目标用于最大化相对于θ的对数似然:
是训练文档集,classD是文档D的正确类别。使用梯度下降法来优化训练目标:
步骤S34:网络训练结果评估
本发明研究船舶路径分类,使用三个指标来评价分类效果,即精确率(precision)、召回率(recall)和F1值。计算公式如下:
精确率用于评估分类模型将数据正确分类的比例,召回率则用于评估分类模型找到所有属于某个类别的数据的能力。F1值是准确率和召回率的加权调和平均值,通常用来评估分类模型的整体性能。选择这三个指标来评估船舶路径分类结果。
经过测试最佳超参数如下
Word2vec词嵌入神经网络部分:
·窗口大小10
·嵌入维度100,需要注意,嵌入维度只有5时,虽然表现效果不及100维度,但是表现仍然优秀
TextRCNN部分:
·Dropout率:0.5
·Batchsize:128
·学习率:1e-3
·LSTM隐藏层维度:256
·LSTM层数:2。
Claims (9)
1.一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,该方法包括如下步骤,
步骤S1:船舶AIS数据预处理;
使用船舶AIS数据完成船舶路径的分类,对AIS数据进行预处理;
步骤S11:AIS原始数据的数据清洗;
异常数据包括数据异常、行为异常和位置异常;其中,数据异常包括数据项超出阈值或数据缺失;行为异常包括航行状态超出阈值或航迹不符合常理;位置异常包括船舶偏离航道或超出研究范围;进行数据剔除或修正的操作;
步骤S12:AIS原始数据路径整合;
对同一条船发出的AIS信号进行合并处理;
步骤S13:AIS原始数据补全;
结合船舶劳氏档案数据,通过船舶的MMSI编码,与AIS数据进行匹配,替换掉之前数据源中的“类型”字段;
步骤S14:网格化编码转换;
结合预先设定好的网格,将数据中的经纬度坐标转换为网格点,再将船舶所经过的网格点连接,构成原始语料;
步骤S2:训练词嵌入神经网络;
将步骤S1得到的原始路径预料作为特征输入到word2vec网络中进行训练,得到每个词对应的低维度向量;
步骤S3:训练TextRCNN;
基于步骤S2中低纬度词向量,构建循环神经网络,通过合理调整参数,训练多轮得到合适的神经网络。
2.根据权利要求1所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,TextRCNN的船舶路径分类方法由四个模块组成;第一个模块为AIS数据预处理模型:第二个模块为词嵌入训练模块,将处理完的AIS数据送入词嵌入神经网络,得到每个网格的词嵌入向量;第三个模块为分类神经网络模块,将第二个模块得到的词嵌入按顺序送入到循环神经网络中进行计算,最终得到该路径所对应的类别。
3.根据权利要求2所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,AIS数据预处理模块通过数据清洗和整合操作,排除具有过大经纬度差异的连续数据,并将原始经纬度坐标转换为网格编号;按照同一mmsi的时间顺序对网格编号进行排序,并将其转换为自然语言形式,以提供高质量的数据基础供后续计算使用;词嵌入训练模块将经过预处理的语料送入word2vec词嵌入神经网络中;通过训练得到每个网格的词嵌入向量,用于表示该网格在路径中的语义信息;分类神经网络模块接收经过词嵌入的网格向量,并将其按照顺序输入循环神经网络进行计算;通过多轮迭代,该模块逐渐学习并生成最终的分类模型,使得该模型能够对船舶路径进行准确分类。
4.根据权利要求1所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,步骤S12:AIS原始数据路径整合中,查询出所有条目的mmsi并去重,根据mmsi查询所有匹配条目,之后根据时间戳排序,构成一条船舶路径;船舶路径T由从AIS设备收集的时间戳点序列表示,即T={t1,t2,...tn,...tN},其中tn={latn,lonn,timen},n∈[1,2,...,N],n表示第n个时间戳点,N为船只路径T的长度;tn中的latn,lonn,timen分别代表经度、纬度和时间戳。
5.根据权利要求1所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,步骤S2:训练word2vec词嵌入神经网络中,将步骤S1得到的原始路径语料作为特征输入到word2vec网络中进行训练,得到每个词对应的低维度向量;如果使用独热向量来标志词;词典中不同词的数量为N,每个词对应一个从0到N-1的不同整数;创建一个全为0长度为N的向量,并将位置i的元素设置为1;每个次都能够被表示成一个长度为N的向量,输入到神经网络中;对于两个不同的词嵌入d维实数向量它们的余弦相似度是他们之间角度的余弦;/>为实数空间,d为向量的维度;
采用Word2vec工具解决独热向量不能够编码词之间的相似性问题。
6.根据权利要求1所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,步骤S21:构建跳元模型输入中,用跳元模型假设一个词用来在文本序列中生成其周围的单词;在跳元模型中,每个词都有两个d维向量表示,用于计算条件概率;对于词典中索引为i的任何词,分别用和/>表示其用作中心词和上下文词两个向量;给定中心词wc,生成任何上下文词wo的条件概率通过对向量点积的softmax操作来建模,exp()表示以自然对数的底数e为指数的幂运算:
其中此表索引集合V={0,1,...,|V|-1};给定长度为L的文本序列,其中时间步t处的词表示为wt,假设上下文是在给定任何中心词的情况下独立生成;对于上下文窗口m,跳元模型的似然函数是在给定任何中心词的情况下生成所有上下文词的概率,wt+j代表t后第j个词:
7.根据权利要求6所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,步骤S22:训练跳元模型中,跳元模型参数是词表中每个词的中心词向量和上下文词向量;在训练中,通过最大化似然函数来学习模型参数;相当于最小化以下损失函数:
当使用随机梯度下降来最小化损失时,在每次迭代中随机抽样一个较短的子序列来计算该子序列的梯度更新模型参数;根据(4),涉及中心词wc和上下文词wo的对数条件概率为:
通过微分获得其相对于中心词向量vc的梯度为
(8)中的计算需要词典中以wc为中心词的所有词的条件概率;其他词向量的梯度以相同的方式获得;对词典中索引为i的词进行训练后,得到vi和ui两个词向量;在自然语言处理应用中,跳元模型的中心词向量用作词表示。
8.根据权利要求7所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,在对数损失(7)中,由于softmax操作的性质,上下文词可以是词表V中的任意项,(7)包含与整个词表大小一样多的项的求和;(8)中跳元模型的梯度计算都包含求和;采用负采样的方法进行加速训练;
负采样方法修改原目标函数;给定中心词wc的上下文窗口,任意上下文词wo来自该上下文窗口的被认为是由下式建模概率的事件:
其中σ使用了sigmoid激活函数的定义:
从最大化文本序列中所有这些事件的联合概率开始训练词嵌入;具体而言,给定长度为T的文本序列,以wt表示时间步t的词,并使上下文窗口为m,考虑最大化联合概率:
在(11)中,只考虑正样本事件;只有当所有词向量都等于正无穷时,(11)中的联合概率才最大化为1;用S表示上下文词wo来自中心词wc的上下文窗口的事件;对于这个涉及wo的事件,从预定义分布P(w)中采样K个不是来自这个上下文窗口噪声词;用Nk(k=1,...,K)表示噪声词不是来自wc的上下文窗口的事件;正例和负例S,N1,...,NK是相互独立;负采样将(11)中的联合概率重写为
通过事件s,N1,...,Nk近似条件概率:
分别用it和hk表示词wt和噪声词wk在文本序列的时间步t处的索引;(13)中关于条件概率的对数损失为:
经过word2vec词嵌入神经网络,先前的E={e1,e2,...,eN},ei∈{1,2,...,868}在经过词嵌入矩阵后,成为模型的输入d代表嵌入的维度,Y={y1,...,yn}代表该路径对应的类别。
9.根据权利要求1所述的一种基于网格编码与TextRCNN的船舶路径分类方法,其特征在于,步骤S3:训练TextRCNN中,TextRCNN用双向循环结构获取上下文信息;TextRCNN使用最大池化层获取文本的重要部分,并自动判断哪个特征在文本分类过程中起更重要的作用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311234220.6A CN117390506A (zh) | 2023-09-24 | 2023-09-24 | 一种基于网格编码与TextRCNN的船舶路径分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311234220.6A CN117390506A (zh) | 2023-09-24 | 2023-09-24 | 一种基于网格编码与TextRCNN的船舶路径分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117390506A true CN117390506A (zh) | 2024-01-12 |
Family
ID=89469264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311234220.6A Pending CN117390506A (zh) | 2023-09-24 | 2023-09-24 | 一种基于网格编码与TextRCNN的船舶路径分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117390506A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117933492A (zh) * | 2024-03-21 | 2024-04-26 | 中国人民解放军海军航空大学 | 基于时空特征融合的船舶航迹长期预测方法 |
-
2023
- 2023-09-24 CN CN202311234220.6A patent/CN117390506A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117933492A (zh) * | 2024-03-21 | 2024-04-26 | 中国人民解放军海军航空大学 | 基于时空特征融合的船舶航迹长期预测方法 |
CN117933492B (zh) * | 2024-03-21 | 2024-06-11 | 中国人民解放军海军航空大学 | 基于时空特征融合的船舶航迹长期预测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Luan et al. | Research on text classification based on CNN and LSTM | |
CN109142171B (zh) | 基于特征扩张的融合神经网络的城市pm10浓度预测方法 | |
CN113610173B (zh) | 一种基于知识蒸馏的多跨域少样本分类方法 | |
CN114743020B (zh) | 一种结合标签语义嵌入和注意力融合的食物识别方法 | |
CN109581339B (zh) | 一种基于头脑风暴自动调整自编码网络的声呐识别方法 | |
CN112001162B (zh) | 基于小样本学习的智能审判系统 | |
CN112508265A (zh) | 面向业务流程管理的时间与活动多任务预测方法及系统 | |
CN113204633B (zh) | 一种语义匹配蒸馏方法及装置 | |
CN113255366B (zh) | 一种基于异构图神经网络的方面级文本情感分析方法 | |
CN117390506A (zh) | 一种基于网格编码与TextRCNN的船舶路径分类方法 | |
Dai et al. | Hybrid deep model for human behavior understanding on industrial internet of video things | |
Ye et al. | A joint-training two-stage method for remote sensing image captioning | |
CN113239897A (zh) | 基于时空特征组合回归的人体动作评价方法 | |
CN112766339A (zh) | 一种轨迹识别模型训练方法及轨迹识别方法 | |
CN116307103A (zh) | 一种基于硬参数共享多任务学习的交通事故预测方法 | |
CN115393690A (zh) | 一种轻量化神经网络的空对地观测多目标识别方法 | |
CN114582448A (zh) | 基于预训练语言模型的疫情病例信息抽取框架构建方法 | |
CN114170657A (zh) | 融合注意力机制与高阶特征表示的面部情感识别方法 | |
Mete et al. | Predicting semantic building information (BIM) with Recurrent Neural Networks | |
CN117154256A (zh) | 锂电池的电化学修复方法 | |
CN115048873B (zh) | 一种用于飞机发动机的剩余使用寿命预测系统 | |
CN116167353A (zh) | 一种基于孪生长短期记忆网络的文本语义相似度度量方法 | |
CN115424275A (zh) | 一种基于深度学习技术的渔船船牌号识别方法及系统 | |
CN116431758A (zh) | 文本分类方法、装置、电子设备及计算机可读存储介质 | |
CN113935458A (zh) | 基于卷积自编码深度学习的空气污染多站点联合预测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |