掌桥专利:专业的专利平台
掌桥专利
首页

异常链路检测方法、装置、设备及存储介质

文献发布时间:2023-06-19 16:08:01



技术领域

本申请涉及视频通信技术领域,尤其涉及一种异常链路检测方法、装置、设备及存储介质。

背景技术

当前音视频通信(如视频会议)异常链路检测主要有对异常样本标记训练监督模型,和对单个指标进行异常阈值检测判断的方式,其中,训练监督模型需要手动标记样本耗费大量人力,且异常样本覆盖不全造成模型不准确,而单个异常阈值判断只能检测简单场景,对复杂场景难以适应而检测不准确,因此,目前的音视频通信异常链路检测存在准确性低的问题。

发明内容

本申请的主要目的在于提供一种异常链路检测方法、装置、设备及存储介质,旨在解决现有技术中音视频通信异常链路检测存在准确性低的技术问题。

为实现上述目的,本申请提供一种异常链路检测方法,所述异常链路检测方法包括:

基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;

对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;

若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。

可选地,所述基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定的步骤之前,包括:

获取历史样本集合和初始检测模型;

基于所述历史样本集合对所述初始检测模型进行训练,当训练结果满足结束条件时,停止训练,得到第一模型参数;

将所述第一模型参数输入至所述初始检测模型中,得到第一检测模型。

可选地,所述基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,得到第一异常值和第二异常值的步骤之前,包括:

获取当前会议之前的预设时间段内在线样本,形成在线样本集合;

将所述在线样本集合输入至所述初始检测模型中进行训练,当训练结果满足结束条件时,停止训练,得到第二模型参数;

将所述第二模型参数输入至所述初始检测模型中,得到第二检测模型。

可选地,所述对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值的步骤,包括:

获取预设的加权参数;

基于加权参数对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值。

可选地,所述若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知的步骤,包括;

获取异常阈值;

比对所述目标异常值和所述异常阈值;

若所述目标异常值大于所述异常阈值,则确定所述实时链路样本为异常样本,数据链路存在异常,发出异常通知。

可选地,所述若所述目标异常值大于所述异常阈值,则确定所述实时链路样本为异常样本,数据链路存在异常,发出异常通知的步骤之后,所述方法包括:

获取通信链路中的链路特征信息;

基于所述链路特征信息的异常状态,输出所述异常状态对应的异常处理结果。

可选地,所述第一检测模型是离线孤立森林模型,第二检测模型是在线孤立森林模型。

本申请还提供一种异常链路检测装置,所述异常链路检测装置包括:

检测模块,用于基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;

计算模块,用于对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;

判断模块,用于若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。

本申请还提供一种异常链路检测设备,所述异常链路检测设备包括:存储器、处理器以及存储在存储器上的用于实现所述异常链路检测方法的程序,

所述存储器用于存储实现所述异常链路检测方法的程序;

所述处理器用于执行实现所述异常链路检测方法的程序,以实现上述所述异常链路检测方法的步骤。

本申请实施例提供了一种存储介质,且所述存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的异常链路检测方法的步骤。

本申请提供的一种异常链路检测方法、装置、设备及存储介质,与现有技术中音视频通信异常链路检测准确性低相比,在本申请中,基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。采用历史数据训练相对普适化的离线孤立森林模型,采用会议中单个用户的流量数据训练对应于该用户的个性化在线孤立森林模型,进而得到双孤立森林模型。在用户参与会议的过程中,使用前述训练好的双孤立森林模型共同参与异常识别,进而保证异常识别的准确性。

附图说明

图1是本申请实施例方案涉及的硬件运行环境的设备结构示意图;

图2为为本申请异常链路检测方法第一实施例的流程示意图;

图3为本申请异常链路检测方法第一实施例的视频会议架构示意图;

图4为本申请异常链路检测装置中较佳实施例的功能模块示意图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

如图1所示,图1是本申请实施例方案涉及的硬件运行环境的终端结构示意图。

本申请实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、便携计算机等具有显示功能的可移动式终端设备。

如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及网络操作控制应用程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的网络操作控制应用程序。

参照图2,本申请实施例提供一种异常链路检测方法,所述异常链路检测方法包括:

步骤S100,基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;

步骤S200,对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;

步骤S300,若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。

具体步骤如下:

步骤S100,基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;

在本实施例中,需要说明的是,异常链路检测方法属于异常链路检测系统,该异常链路检测系统从属于异常链路检测设备。

在本实施例中,具体的应用场景可以是:

当前音视频通信(如视频会议)异常链路检测主要有对异常样本标记训练监督模型,和对单个指标进行异常阈值检测判断的方式,其中,训练监督模型需要手动标记样本耗费大量人力,且异常样本覆盖不全造成模型不准确,而单个异常阈值判断只能检测简单场景,对复杂场景难以适应而检测不准确,因此,目前的音视频通信异常链路检测存在准确性低的问题。

而在本申请中,对于异常链路检测系统而言,基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知,也即,通过两个预测模型从不同角度对实时链路中的异常流量进行识别,得到第一异常值和第二异常值,通过两个异常值的加权,实现实时链路样本中异常样本的检测,提高异常链路检测的准确性。

也即,在本申请中,通过双模型从不同角度实现对异常流量的识别,解决音视频通信异常链路检测存在准确性低的问题。

在本实施例中,需要说明的是,第一检测模型和第二检测模型是对通信链路中异常流量进行检测和识别的模型,第一检测模型是对样本数据进行普适性分布的检测,第二检测模型是对单个会议样本的个性分布或单个发送用户接收端样本强相关性的检测,可以理解,第一检测模型可以是离线孤立森林模型,第二检测模型可以是在线孤立森林模型,其中,孤立森林(Isolation Forest,简称为iForest),孤立森林模型是由N个树构成的,其用于挖掘异常(Anomaly)数据,或者说离群点挖掘,可以理解,是在一大堆数据中,找出与其它数据的规律不太符合的数据,通常用于网络安全中的攻击检测和流量异常等分析。通过两个孤立森林模型能够从不同角度实现对异常流量的检测和识别。以下以第一检测模型可以是离线孤立森林模型,第二检测模型可以是在线孤立森林模型为例进行描述,其他检测模型实施方式基本相同,在此不再赘述。

参照图3,基于SFU(Selective Forward Unit)的视频会议架构图,用户A将音频和视频流推送给其直接链接的SFU服务端,服务端通过SFU服务端级联将用户A的音频与视频流转发给同一会议内的用户链接的SFU服务端,然后再推送其他用户。周期T(一般为10s、20s或者1min)内获取发送或者接收数据流的比特数、比特率、包数据、丢包数、nack请求数、pli请求数、fir请求数、帧率、分辨率等指标作为链路质量的指标特征,其中

s(i)表示用户i发送流的链路特征信息(发送端客户端埋点采集);

fs(i)表示用户i直接链接的sfu服务收到流链路特征信息(SFU服务端采集);

fr(i,j)表示用户j直接链接的sfu服务收到用户i发送流的链路特征信息(SFU服务端采集);

r(i,j)表示用户j收到用户i发送流的链路特征信息(接收端客户端埋点采集);

根据特征向量的含义易知,s(i)、fs(i)、fr(i,j)、r(i,j)之间具有显著的相关性,则集合{fr

集合{s

进一步地,所述基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定的步骤之前,包括:

步骤A1,获取历史样本集合和初始检测模型;

步骤A2,基于所述历史样本集合对所述初始检测模型进行训练,当训练结果满足结束条件时,停止训练,得到第一模型参数;

步骤A3,将所述第一模型参数输入至所述初始检测模型中,得到第一检测模型。

在本实施例中,基于历史中的离线数据组成历史样本集合,通过历史样本集合创建孤立森林模型MODEL,其中,孤立森林模型是由一颗以上孤立树组成的树形集成模型,每颗孤立树所有节点都有2个子节点或者没有子节点;给定含有n个样本集合X={x1,x2,…,xn},根据样本的帧率fps、分辨率w和h分组,形成样本G组集合,对每组样通过随机选择数据集的特征q和随机选择特征的分裂值p来递归样本集X,从而建立孤立树。

通过历史样本集合对初始检测模型进行模型训练,当训练结果满足结束条件时,停止训练。其中,结束条件可以是孤立树的深度达到限定的最大值;再可以是某次递归后孤立树的节点只有一个样本;还可以是某次递归后孤立树的节点数据都有相同值,当训练结果满足上述结束条件之一时,递归建立孤立书的过程停止。因此,对每组历史样本集合进行t次抽样,每次抽样一部分数据建立一个孤立数iTree

模型训练结束后,得到第一模型参数如样本数据集特征q1和特征分裂值p1,通过样本数据集特征q1和特征分裂值p1递归历史样本集合X,从而建立孤立树,得到的离线孤立森林模型如下:

其中,fps为样本的帧率,w*h为分辨率,μ1、μ2为上述公式的加权系数。

需要说明的是,μ1、μ2为经验值,通过历史训练得到,若检测到基于μ1、μ2得到的目标异常值准确性较低时,对μ1、μ2进行优化调整。可以理解,通过目标异常值和实际异常值之间的差异,判断该差异是否超出误差范围,若是,则需要对μ1、μ2进行优化调整。

因此,在通过第一检测模型对实时链路样本进行检测,得到第一异常值的具体过程为:

孤立树中叶子节点x的路径长度h

其中,H(i)为调和数,该值可以是H(i)=ln(i)+0.577215664。

当样本量固定为n时,不同孤立树的平均路径长度c(n)是相同的,用来标准化样本x的路径长度h(x),样本x的异常得分计算公式如下:

基于上述公式(1)和公式(2),得到第一异常值score

进一步地,所述基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,得到第一异常值和第二异常值的步骤之前,包括:

步骤B1,获取当前会议之前的预设时间段内在线样本,形成在线样本集合;

步骤B2,将所述在线样本集合输入至所述初始检测模型中进行训练,当训练结果满足结束条件时,停止训练,得到第二模型参数;

步骤B3,将所述第二模型参数输入至所述初始检测模型中,得到第二检测模型。

在本实施例中,获取通信链路当前会议之前的一段时间内在线样本,形成在线样本集合,用在线样本集合对初始检测模型进行训练,以得到第二检测模型。在训练过程中,当训练结果满足结束条件时停止训练,该结束条件与上述对第一检测模型的训练中结束条件相同,也即,均为孤立森林模型的训练结束条件。在训练结束后,会得到第二模型参数,如样本数据集特征q2和特征分裂值p2,通过样本数据集特征q1和特征分裂值p1递归历史样本集合X,从而建立孤立树,得到的在线孤立森林模型。

因此,在通过第二检测模型对实时链路样本进行检测,得到第二异常值的具体过程为:

将实时链路样本输入至在线孤立森林模型中,得到在线孤立森林模型中的F(h(x)),通过下述样本异常得分公式计算出第二异常值:

score

其中,δ1、δ2为上述公式的加权系数,δ

需要说明的是,异常值score的取值在(0-1)之间,异常值越大的样本越异常。

步骤S200,对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;

在本实施例中,对第一异常值和第二异常值进行加权计算,得到目标异常值,加权公式如下:

其中,score(x)为目标异常值,φ1、φ2为上述公式的加权系数。

步骤S300,若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。

在本实施例中,获取异常阈值,该异常阈值由管理人员根据检测需求设置,当目标异常值大于异常阈值时,即可判断数据链路存在异常,则发出异常通知,发出异常通知的方式可以是声音、光、信号等。若目标异常值小于或等于异常阈值,则表示当前链路正常,继续对链路进行监测。

本申请提供的一种异常链路检测方法、装置、设备及存储介质,与现有技术中音视频通信异常链路检测准确性低相比,在本申请中,基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。采用历史数据训练相对普适化的离线孤立森林模型,采用会议中单个用户的流量数据训练对应于该用户的个性化在线孤立森林模型,进而得到双孤立森林模型。在用户参与会议的过程中,使用前述训练好的双孤立森林模型共同参与异常识别,进而保证异常识别的准确性。

本申请基于上述异常链路检测方法的第一实施例,还提供第二实施例,所述异常链路检测方法包括:

所述第二检测模型包括基于会议的第一检测子模型和基于用户的第二检测子模型,在线样本集合中包括发送样本和接收样本,基于发送样本对初始检测模型进行训练,得到第一检测子模型,基于接收样本对初始检测模型进行训练,得到第二检测子模型,通过第一检测子模型和第二检测子模型,分别得到基于单个会议样本个性分布的异常值,和基于发送用户接收端样本强相关性检测的异常值,该两个异常值与第一异常值加权计算得到目标异常值,具体过程如下:

对于发送样本s

score

其中∝

对于接收样本r

score

其中γ

则计算目标异常值的上述公式(4)变为:

score(x)=β

将目标异常值score(x)与异常阈值进行比对,若目标异常值大于异常阈值,则可判断数据链路存在异常,则发出异常通知。

在本实施例中,充分考虑样本数据之间的相关性,通过离线的孤立森林模型对样本数据普适性分布进行检测,又通过在线模型对单个会议样本个性分布和单个发送用户接收端样本强相关性进行检测,使用离线模型和在线模型加权进行异常检测,提高检测准确性。

本申请基于上述异常链路检测方法的第一实施例或第二实施例,还提供了第三实施例,所述异常链路检测方法包括:

所述若所述目标异常值大于所述异常阈值,则确定所述实时链路样本为异常样本,数据链路存在异常,发出异常通知的步骤之后,所述方法包括:

步骤S400,获取通信链路中的链路特征信息;

步骤S500,基于所述链路特征信息的异常状态,输出所述异常状态对应的异常处理结果。

在本实施例中,在收到检测异常的通知的同时,获取发送链路s

作为一种示例,若发送链路s

作为一种示例,若发送链路s

作为一种示例,若fr(i,j)推流链路正常,用户拉流r(i,j)链路异常且链路N个周期内持续异常,则说明接收端用户j连接的SFU Server不是最佳,通知调度系统对用户j连接的SFU Server进行跨机房切换;

在本实施例中,在发出异常通知的同时,将异常的数据链路中的具体数据传输问题发出,并给出相应的异常处理方法或结果,提高异常链路检测的效率。

在具体场景下,异常链路检测过程如下:

a.使用离线的历史数据训练孤立森林model

b.设M表示一个会议中的用户集合,样本

步骤b1.获取前y个周期内的非用户i1发送接收的样本集合

步骤b2.获取前y个周期内用户i1发送非用户j1接收的样本集合

c.计算样本

样本分别通过模型model

score(x)=γ

如果score大于异常阈值ε,则该样本就是异常样本。

本申请还提供一种异常链路检测设备,所述异常链路检测设备包括:存储器、处理器以及存储在存储器上的用于实现所述异常链路检测方法的程序,

所述存储器用于存储实现所述异常链路检测方法的程序;

所述处理器用于执行实现所述异常链路检测方法的程序,以实现上述所述异常链路检测方法的步骤。

本申请的异常链路检测设备具体实施方式与上述所述异常链路检测方法各实施例基本相同,在此不再赘述。

本申请还提供一种异常链路检测装置,参照图4,所述异常链路检测装置包括:

检测模块10,用于基于预设的第一检测模型和第二检测模型对实时链路样本进行检测,分别得到第一异常值和第二异常值,所述第一检测模型是基于历史数据训练确定,所述第二检测模型是基于当前会议之前的在线样本训练确定;

计算模块20,用于对所述第一异常值和所述第二异常值进行加权计算,得到目标异常值;

判断模块30,用于若所述目标异常值大于异常阈值,则确定数据链路存在异常,发出异常通知。

本申请异常链路检测装置具体实施方式与上述异常链路检测方法各实施例基本相同,在此不再赘述。

本申请实施例提供了一种存储介质,且所述存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的异常链路检测方法的步骤。

本申请存储介质具体实施方式与上述异常链路检测方法各实施例基本相同,在此不再赘述。

本申请实施例提供了一种存储介质,且所述存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述任一项所述的的异常链路检测方法的步骤。

本申请存储介质具体实施方式与上述的异常链路检测方法各实施例基本相同,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。

以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

技术分类

06120114709719