基于张量计算的智慧交通多维数据计算与小样本学习
2024-04-23司明悦齐斌张文胜张雷
司明悦,齐斌,张文胜*,张雷
(1.山东大学信息科学与工程学院山东省无线通信技术重点实验室,山东 青岛 266237;2.同济大学上海自主智能无人系统科学中心,上海 200092)
0 引言
近年来,随着大数据、大模型的兴起,多维异构数据的处理和分析成为热点问题。多维异构数据是指在数据集中存在多个不同类型的数据,这些数据具有不同的格式、结构和含义,而张量作为一种多维数组的数据结构,可以用来表示多维异构数据。在张量中,每个维度对应数据中的1个特征或者属性,而张量元素则对应数据中的具体数值。使用张量计算可以将多维异构数据转换成统一的数据结构,为后续的数据分析提供支持。
同时,深度学习在许多领域取得了巨大成功[1-3]。然而,深度学习网络需要大量的训练数据和多次迭代来训练模型参数,现实世界中的许多场景往往受限于标注成本,导致许多类别只有少数的标注数据。面对以上场景,传统的深度学习模型不能很好的应对,因此小样本学习[4]以及零样本学习[5]被提出。
小样本学习的概念最初源自计算机视觉领域[6],并在图像处理领域得到了广泛应用[7]。近年来,小样本学习也逐渐应用于自然语言处理[8]、生物医学[9]和工业零件故障检测[10]等领域,并发展出了许多优秀的算法。当前的小样本学习算法通常基于良好的初始化条件[11]、嵌入网络[7,12]和优化策略[13]进行训练,然后将学习后的模型应用于新的任务中,并通过微调得到良好的泛化结果。
在智慧交通系统中存在数据样本稀缺的场景,例如,由于车辆异常行为的发生不可预测性和数据稀疏性,车辆的异常行为检测难以实现或检测准确度不高,因此在实际应用中车辆异常行为检测面临着数据稀缺、异常定义的不确切性、遮挡和实时性较差等问题。针对此类场景,可以运用小样本学习提高模型计算的可靠性和鲁棒性。
本文提出一种张量计算与小样本学习相结合的综合模型,主要工作如下:1)提出基于智慧交通数据的多维综合计算通用模型,通用模型采用张量计算对智慧交通多维异构数据中存在的显著问题进行处理,基于数据的时空相关性获得融合数据张量,其中,利用张量分解将数据统一分解为低维数据,解决数据的多维异构问题,利用张量补全,补全因突发事件缺失的数据,解决数据缺失问题;2)利用融合数据张量,改进现有的小样本学习模型,提出基于张量计算的小样本学习模型,根据不同的张量融合策略,将融合数据张量输入小样本学习网络中进行训练,改变小样本学习网络结构,比较基于度量的训练网络和基于元学习的训练网络的性能优劣,根据消融实验的结果分析性能最优的基于张量计算的小样本学习模型;3)采用智慧交通的仿真数据集,通过大量模拟实验和对比实验验证多维综合计算模型的可行性以及张量小样本学习模型的可靠性和有效性。
1 预备知识
1.1 张量计算
张量计算可以划分为张量分解、张量补全和张量特征值。张量分解是一种将高阶张量映射为低阶张量的技术,主要用于提取数据中的潜在特征和结构。张量补全是通过已知的部分张量数据,推断和填补缺失的部分张量,恢复完整张量的技术,主要用于解决因传感器故障、数据采集错误、数据传输丢失等造成的数据缺失问题。张量特征值则是用来描述张量的内在特征和性质的数值,用来表征张量内在属性。
1.1.1 张量分解基础
张量分解的概念最早由HITCHCOCK在1927年提出[14],后被广泛地应用于信号处理[15-16]、推荐系统[17]、无线通信[18-19]、深度学习[20]等领域。张量分解有许多不同的类别,如高阶奇异值分解(HOSVD)[21]、张量链式分解[22]、张量环式分解[23]等,其中HOSVD基于不同的奇异值分解形式,定义还可以进一步细分,如平行因子分解(CPD)、Tucker分解等。
对于1个任意M阶N维张量 A∈N1×N2×…×NM,CPD的定义如下:
(1)
其中:“·”表示向量外积;因子向量xm,i∈Nm;因子矩阵Xm=[xm,1,xm,2,…,xm,R]∈Nm×R,而R被称为CP秩。Tucker分解的定义如下:
an1,n2,…,nM=
(2)
A=G×1X1×2X2×…×MXM
(3)
1.1.2 张量补全基础
张量补全的应用领域相比于张量分解更为广泛,需要使用张量数据的情景均存在张量补全的需求,如大数据处理[24]、视觉图像处理[25]、传感器系统[26]等。
张量补全可以依据不同的补全参考量划分成2大类:1)基于张量分解的补全[27],如基于CPD的张量补全、基于Tucker的张量补全等,这种补全方式也可以被称作秩约束张量补全;2)基于最小秩的补全[28],如最小Tucker秩张量补全[25]、最小张量链秩张量补全[29]等。前者以基于CPD的补全为例,对应的优化问题如下:
s.t.XΘ=AΘ
(4)
其中:X表示补全张量;Θ表示未缺失索引集,即A中非零元素的集合。约束条件保证未缺失元素在补全后保持不变。
基于张量分解的补全也可以称作固定张量秩的补全。因为这类补全方案在限制非零元素不变的基础上,对张量秩做出了隐性约束。由于优化问题非凸,因此利用块坐标下降法求解时受到局部最小值的影响,初始值对求解效果影响较大。不好的初始值会导致迭代次数增加,甚至不收敛,严重影响算法性能。为解决这一问题,本文提出基于最小秩的补全概念,并使用最小迹范数优化的凸问题取代最小秩优化的非凸问题,以获得稳定的求解方案。因此,第2类也可以称作最小迹范数张量补全。
以最小Tucker秩补全为例,原优化问题为:
(5)
利用最小迹范数,问题可以修改为:
(6)
张量补全是基于张量数据之间的时空相关性驱动的,其中时空相关性即张量数据之间存在潜在关联。不同的补全方案对于潜在关系的定义不同,如以基于CPD的补全,将这种潜在关系定义为CPD的因子矩阵唯一性,利用块坐标下降法对待补全张量进行CPD,利用分解产生的误差填补缺失数据,循环此操作直到因子矩阵稳定。而最小迹范数张量补全则是认为潜在关系为数据之间迹范数最小,利用交替方向乘子法,更新各阶展开矩阵,直到各阶展开矩阵的秩稳定。
1.2 小样本学习
小样本学习可以分为2类:1)基于数据增强的方式[30],这种方法借助辅助数据或辅助信息对现有的少量样本进行数据合成[31]或特征增强[32];2)基于迁移学习的方式[33],在新任务的数据相对较少或者难以获取的情况下,迁移学习将已学到的模型、特征或知识迁移到新的问题领域,旨在提高模型在新任务上的性能[34]。
基于迁移学习的小样本学习通常被分为基于度量[35]和基于元学习的方式[36]。度量也叫距离函数,用于衡量2个元素之间的距离关系。因此,基于度量小样本学习的主要思想是将目标样本和测试样本映射到向量空间中,根据计算出的相似度进行比较判断。采用此种分类思想的优秀算法有原型网络[7]和匹配网络[12],原型网络是依据本类别数据与原型中心的欧几里得距离来进行分类的,其网络结构如图1所示,其中cn代表原型中心。而匹配网络选取了余弦相似度作为距离函数。
图1 原型网络结构Fig.1 Structure of prototype network
元学习也称学会学习,旨在通过学习模型的初始化参数、网络架构等,指导模型更高效快速地适应新任务或新环境。模型无关的元学习(MAML)[11]是元学习领域十分出色的算法,通过微调神经网络中对每个任务较为敏感的参数,使模型的损失函数达到快速收敛。除此以外,基于记忆增强的神经网络[37]和元网络[38]等算法也基于元学习的思想,利用历史经验指导模型快速收敛。
本文主要研究基于迁移学习的小样本学习,并选取原型网络、匹配网络和MAML 3种网络进行可行性分析。
2 系统模型
2.1 模型的总体结构
基于张量计算和小样本学习的综合计算模型整体架构如图2所示。该模型主要包括基于张量计算的多维综合计算模块和基于通用模型参数的小样本学习模块。首先,针对智慧交通场景中的多维异构数据建立张量模型,对数据模型中的缺失数据进行数据补全,并将异构数据转换成相同结构、类型的数据形式,即进行数据同构化;然后,对多模态数据进行融合;最后,将融合数据作为小样本学习网络的输入样本集,对其进行特征提取,将样本映射到向量空间;最终,采用不同的小样本学习网络作为分类器进行训练,根据训练结果的准确率和F1值评估模型性能优劣。
图2 综合模型结构Fig.2 Structure of the comprehensive model
2.2 多维综合计算通用模型
针对智慧交通场景下产生的多维异构数据,从缺失数据补全、数据同构化、多模态数据融合3个维度搭建多维综合计算通用模型。
2.2.1 缺失数据补全
缺失数据补全是指利用已有的数据信息,对数据中的缺失值进行估计、预测。传统的数据补全方案由插值补全、基于模型的补全、矩阵分解补全、基于深度学习的补全,而对于多维数据可以建立张量模型,并直接借由张量补全完成,以完成缺失数据补全。
2.2.2 基于CPD的异构数据同构化
异构数据是因智慧交通中不同传感器产生的数据类型不同导致的,如音频、图像、视频等以时间、空间序列排列产生不同尺寸的张量数据。异构数据同构化在保持时空相关性的前提下,将异构数据转换成相同结构、类型的数据形式,而张量分解可以实现该目标,如CPD、TR等均满足该要求。然而,TR分解更适用于大尺寸高阶张量的分解,将大尺寸高阶张量分解为若干三阶张量的积,对于智慧交通中数据阶次相对较小、维度较大的场景,CPD是更为恰当的。
假设1个图像传感器,每秒拍摄1张J×K的灰度图像。在Is的时间内,会产生I×J×K的图像数据张量,记作P。以P为例说明数据同构化实现步骤,具体算法如下。
算法1基于CPD的数据同构算法
输入异构数据张量P∈I×J×K,匹配系数γ0和CP秩R
输出同构矩阵P1∈I×R,P2∈J×R,P3∈K×R
1)随机初始化P1,P2,P3。
6)如果γ<γ0,返回步骤2;否则,输出结果。
在算法中,“⊙”“*”“(·)+”分别表示哈达玛积(Hadamard Product)、KR积(Khatri-Rao Product)和MP逆(Moore-Penrose Pseudoinverse)。
2.2.3 多模态数据融合
为缓解智慧交通中样本数据较少的问题,本文对多模态数据进行融合,挖掘数据的时空信息,以提取更全面、准确的信息。多模态数据融合基于相似数据的潜在关系相似假设,将利用张量分解的逆过程对来自不同传感器的经过异构数据同构化的数据进行特征映射。
算法2多模态数据融合算法
输入同构矩阵P1,P2,P3,A1,A2,A3
输出融合数据张量F
2)计算融合数据张量F=I×1P1×2P2×3P3×4A1×5A2×6A3。
算法2中的单位张量I是1个6阶R维的,除对角线以外元素为零且对角元素为1的张量。将数据同构算法产生的同构因子矩阵,通过数据映射重新生成融合矩阵,实际上是完成了数据扩展,恢复多模态数据之间的结构关系。该融合方案可以借由CPD还原原始数据,在保证原始信息不丢失的前提下,扩展可用数据。
对于数据同构算法的输出,同构矩阵拥有相同的列数。基于传统的数据拼接进行数据融合,产生融合数据矩阵,本质上是仅对原始的多维异构数据进行数据补全后,将多模态数据进行简易组装来完成数据融合。为了区别2种基于张量计算的多模态数据融合方案,前者被称为“逆分解张量融合模型”,后者被称为“CPD数据融合模型”。
2.3 基于通用模型参数的小样本学习
针对张量计算模型处理后的融合数据张量,本文采用不同的小样本学习方法对此进行处理训练,包括基于度量的小样本学习网络和基于元学习的小样本学习网络,其中原型网络和匹配网络是度量学习中十分经典的网络模型。元学习的思想与度量学习存在着明显差异,本文选取MAML作为训练模型。
2.3.1N-wayK-shot问题
小样本学习致力于寻求能使模型从少数带有标签的样本中快速学习的方法,并要求对训练集中的新类具有较好的泛化能力。小样本学习的数据集可以分为训练集和测试集,训练集和测试集又各自包含支持集和查询集,用来支撑任务的训练和测试。本文中的小样本学习是一种N-wayK-shot的问题,N代表类别数量,K代表每一类别中的样本数量。
假定训练集中有N个类别,每个类别有K个样本。本文设置NS为每次迭代从支持集所取的类别数量,每一类别取KS个样本,其中NS 2.3.2 基于度量的小样本学习网络 给定含有M个样本的支持集S={(y1,l1),…,(yM,lM)},其中yi为支持集样本,li∈{1,2,…,N}为N类样本各自对应的标签,在公式中使用Sn表示第n类标签的样本集。 原型网络通过求和平均的方式生成每一类原型点,根据计算该原型点和目标样本映射在向量空间中的特征向量之间的欧氏距离进行比较分类。原型点通过式(7)得到: (7) 其中:θ为可学习参数;f(·)代表样本通过编码得到特征向量的过程函数,即嵌入函数。通过归一化指数函数计算查询集中目标样本属于各类的概率分布来计算损失函数。概率分布如下: (8) (9) 其中:d(·)是距离函数,这里使用余弦函数。在计算出注意力后,使用核密度估计函数输出预测标签: (10) 2.3.3 基于元学习的小样本学习网络 MAML通过指导基本学习器的初始化参数不断优化模型在新任务上的泛化能力。假设模型用初始化参数为φ的参数化函数fφ表示,当适用到任务Ti时,模型参数通过1次或几次梯度下降更新为φ′i,当更新次数为1时,表达式为: φ′i=φ-γ∇φLTi(fφ) (11) 更新步长γ可以是固定的超参数,也可以通过元学习获得。模型的损失函数为i个任务的损失函数之和,模型参数φ以最小化损失函数为目标进行更新。该目标可以写为: (12) 模型参数φ根据损失函数进行更新: (13) 其中:β是元更新步长。 本文采用准确率(A)和F1值(F1)评价模型性能。准确率为正确预测出来的样本数量占所有的样本的比例,如式(14)所示: (14) 其中:NTP代表被模型预测为正类的正样本;NTN代表被模型预测为负类的负样本;NFP代表被模型预测为正类的负样本;NFN代表被模型预测为负类的正样本。 F1值是精准度和召回率的调和平均数,认为召回率和精确度同等重要。精准度(P)、召回率(R)以及F1值的定义为: (15) (16) (17) 模型使用PyTorch框架来实现,计算机型号为 Intel®Xeon®Platinum 8255C CPU@2.50 GHz。仿真实验采用Omniglot 数据集来完成。Omniglot数据集是小样本学习领域常用的数据集,包含了1 623类字符图片,每类字符包含20张样本图片,共32 460张图片。 参数调优对模型的训练结果至关重要,本文针对学习率和迭代次数进行了调优尝试,下面给出3种小样本学习的调试结果,如图3~图5所示。 图3 原型网络的参数调优结果Fig.3 Parameter tuning results of the prototype network 图4 匹配网络的参数调优结果Fig.4 Parameter tuning results of the matching network 图5 MAML的参数调优结果Fig.5 Parameter tuning results of MAML 本实验围绕5-way 1-shot问题展开。从图3~图5可以看出,当迭代次数设置为40次时,3种小样本学习方法均可以达到较好的性能。根据调试结果选择最优的学习率,将原型网络的学习率设置为0.01,匹配网络的学习率设置为0.001,MAML的学习率设置为0.5,使模型训练效果达到最佳。 为评估3种小样本学习的性能,本文分别对3种方法进行比较分析。表1所示为基于无融合数据和采用不同张量融合策略输出的融合张量数据,原型网络、匹配网络和MAML作为训练网络,得到模型最终的训练结果。其中“√”表示对应的张量融合策略和训练网络的组合。从表1可以看到,3种小样本学习对非融合数据进行训练,原型网络和MAML的准确率分别达到了91.6%和91.0%,优于匹配网络达到的89.6%准确率。当采用逆分解张量融合模型时,MAML作为训练网络输出的准确率为95.5%,相较于基于无融合数据提升了4.5个百分点,而原型网络和匹配网络训练的准确率有不同程度的降低,分别降低了17和6.5个百分点。当采用CPD数据融合模型时,相较于基于无融合数据的MAML和匹配网络的准确率分别提高1.3和1.1个百分点,原型网络则降低了7.9个百分点。综合以上结果,基于张量融合策略的不同小样本学习方法中,MAML得到了不同程度的提升,而原型网络和匹配网络的训练结果并不理想。 表1 不同方法的实验结果对比Table 1 Comparison of experimental results among different methods 图6所示为不同方法的实验结果。从图6可以看出,实线代表原网络,虚线和点画线分别代表基于CPD数据融合模型和逆分解张量融合模型的小样本学习方法的训练结果。MAML的收敛速度优于原型网络和匹配网络,基于张量融合策略的MAML模型训练曲线较原MAML网络更加平滑,且准确率更优。而原型网络针对融合张量数据的训练结果不太理想,基于2种融合策略的准确率有不同程度的下降,且基于逆分解张量融合的训练曲线在收敛时变得震荡曲折。匹配网络的收敛速度较慢,在结合了张量融合策略后,收敛速度变慢,且在最优解附近的震荡幅度变大。 图6 不同方法的实验结果Fig.6 Experimental results among differnet methods 从第3.3节的结果可得出,在结合多维综合计算通用模型的小样本学习方法中,MAML的性能最优。因此,本节针对基于2种张量融合策略的元学习算法MAML展开分析。 图7和图8分别所示为采用2种张量融合方案的元学习模型和不采用融合策略的元学习模型在准确率和F1值的性能对比。散点图中的每个点对应1个任务,在图7和图8中,散点图大多位于坐标轴的右上方,这表明MAML在大多数现有的任务上表现优良。 图7 基于不同张量融合方案的MAML模型准确率Fig.7 Accuracy of MAML model based on different tensor fusion schemes 图8 基于不同张量融合方案的MAML模型F1值Fig.8 F1 values of MAML model based on different tensor fusion schemes 以实线为基准,在图7的45个任务中,基于逆分解的MAML模型在42个任务的准确率优于原模型,基于CPD的MAML模型在29个任务的准确率优于原模型。在图8中,基于逆分解的MAML模型在41个任务上的F1值优于原模型,基于CPD的MAML模型在29个任务上的F1值优于原模型。因此,在大多数任务上,基于逆分解张量融合方案比基于CPD融合方案的元学习模型的结合度更好。 针对现有智慧交通系统中在小样本场景下数据缺失的问题,本文设计一种基于张量计算和小样本学习的通用计算模型。采用张量计算对多维异构数据进行处理,基于数据的时空相关性获得融合数据张量。为应对因数据稀缺导致传统模型性能下降的现象,引入小样本学习,并分析了基于度量学习和元学习2类小样本学习方法与张量计算通用模型融合后的综合模型可信度的相关问题。实验结果表明,相较于2种基于度量的小样本学习模型:原型网络和匹配网络,基于元学习的小样本学习模型MAML和多维综合计算通用模型结合后的可信度更高,并且基于不同的张量融合方案,元学习模型性能会得到不同程度的提升。由于特征提取网络对模型的训练结果有很大的影响,因此后续将对特征提取网络进行改进,以进一步提高通用计算模型的性能。3 实验结果与分析
3.1 评价指标
3.2 数据集与参数调优
3.3 小样本学习的性能对比
3.4 基于张量计算的元学习模型
4 结束语