参考自SBD算法详解与相关python代码_ai小何的博客-CSDN博客本文为原创,转载请注明出处,谢谢!当涉及到延时情况,如kpi数据,在判断两两特征相关性的时候就不得不考虑SBD算法了。通过SBD算法,我们可以在不清楚延迟的情况下找到两组数据的相关性,以下来进行详细讲解。SBD算法 对于时间序列X(x1,x2,x3,…,xn)及时间序列Y(y1,y2,y3,…,yn),两序列间的存在时延为s的关系,计算两条曲线相似度的SBD距离算法如下: NCC(X,Y)=...https://blog.csdn.net/qq_22135585/article/details/108830390

1 SBD

继ED欧式算法与DTW算法之后,SBD是时间序列度量距离的方法之一。在网上看到的来源来自于此篇论文《k-Shape: Efficient and Accurate Clustering of Time Series》(如有错误,欢迎指正)。

获取形状的相似性需要能够处理振幅和相位畸变的距离测度。然而,能够满足这种要求的距离测度如DTW计算代价太大。互相关是一种对时滞信号相似度的度量,广泛应用于信号和图像处理。不正确地使用互相关,会使得它的实现像DTW一样慢,由于这些缺点,互相关没有被广泛采用作为时间序列的距离测度。

1.1 互相关

为了让更好理解什么叫互相关,可参考这个博客:基于Cross-Correlation互相关函数的信号同步方法 - 知乎

如果没时间看,我会稍微解释一下:

例如有2路信号,一个是从

MIC->链路线->3.5接口进入手机

一个是从

MIC->蓝牙DSP编码->蓝牙传输进入耳机

那么采集到的信号会由于开始采集时间的不同和处理时间的不同,得到如下个结果:

可以看到,2者信号存在一个时延误差的。那如何找到这个时延误差,让这个序列对齐?我们需要让序列移位多少个时间戳才能找到2个序列对齐的那个位置,让其完全对齐?

什么时候序列对齐呢?————B和T有相同变化趋势的时候。

可以用一个经典的方法:互相关分析(Cross-Correlation Analysis)

1.2 互相关分析

统计学中的互相关是2个随机变化X和Y的协方差。那信号处理中,都是离散信号,互相关函数定义为

m代表了滑动的量,将g(x)整体向左平移了m个时间后,通过求和,对整个时域内的f和平移之后的g球函数值。那么对应一个m就有一个和,我们就可以得到一个关于m的分布。只要找到m值最大的那一个分布,我们就能知道其信号滞后了多少,并且可以知道他们的相关系数。

互相关测度

互相关测度可以看做是2条序列的相似性,即使这两个序列没有对齐,为了实现平移不变性,计算互相关时保持y序列不变,并将x在y上滑动,计算x的每一个位移s的内积。

由我们上面介绍了m代表了滑动的量,我们要计算2个序列的相似度,那我们就要把y滑动次,如图所示(图比较简略)。

得到了个相关系数,取出最大的m作为2个序列的相关程度。

最后,公式如下SBD的公式如下:

2.总结:

由于SBD算法计算的是距离,因此在计算距离前我们需要进行Z-score归一化处理。

细心的朋友可以发现,当延迟为0时,归一化后该算法中的ncc值相当于在计算皮尔森相关系数。

SBD算法的缺点就是计算量大,在类似KPI场景数据量庞大的时候,SBD算法可能无法得到支撑。

但是,在涉及告警根因分析等问题时,SBD能自动的判断出延迟的位数。

我们可以通过对比延时的大小,从而准确地判断出故障根因。

 注意事项:使用算法时切记要在告警点附近使用!!注意避开周期性的数据,不然可能会出现关联偏差。

时间序列度量算法之SBD相关推荐

  1. 时间序列分类算法简介及其在能耗数据分类上的应用

    本文首先简要介绍最近几年来时间序列分类算法的最新研究成果,包括dynamic time warping的各种改进技术和相关研究,以及最新的聚合式算法(ensemble algorithm).其次以根据 ...

  2. 模型无关的时间序列度量方法及特征

    文章目录 模型无关的时间序列度量方法及特征 模型无关的方法(Model-free approaches) 常用方法介绍 闵可夫斯基距离(Minkowski distance) 弗雷歇距离(Fréche ...

  3. 论文学习——一种基于DTW的符号化时间序列聚类算法

    文章目录 1 摘要 2 引言 2.1 类似的工作 SAX 2.2 本文成果 3 相关知识 3.1 极值点EP 成为关键点KP 的条件 3.2 DTW距离 3.3 基于Normal矩阵的谱平分法 4 本 ...

  4. 时间序列常用算法总结

    时间序列预测算法总结 文章目录 时间序列预测算法总结 前言 一.基于统计的时序数据建模方法 1.1传统时序数据建模方法 1.1.1周期因子法 1.1.2移动平均法 1.1.3ARIMA模型 1.1.3 ...

  5. 时间序列分类算法_时间序列分类算法简介

    时间序列分类算法 A common task for time series machine learning is classification. Given a set of time serie ...

  6. 解读:一种来自Facebook团队的大规模时间序列预测算法(附github链接)

    写在前面 下面这篇文章的内容主要是来自Facebook团队的论文<Forecast at Scale>,这篇论文介绍了一种时间序列预测算法Prophet,该算法结合了时间序列分解以及机器学 ...

  7. Facebook时间序列预测算法模型-prophet

    Facebook时间序列预测算法模型-prophet prophet(先知)是Facebook开源的一个时间序列预测算法.其是基于时间序列分解和机器学习的拟合来做的,其中在拟合模型的时候使用了pySt ...

  8. 时间序列分类算法之时间序列森林(TSF)

    算法介绍 时间序列森林(Time Series Forest, TSF)模型将时间序列转化为子序列的均值.方差和斜率等统计特征,并使用随机森林进行分类.TSF通过使用随机森林方法(以每个间隔的统计信息 ...

  9. 网络应用qoe度量算法模型

    应用 论文(体验感知) 参数(细表) 模型 算法及优点(优势)说明 算法归类 应用场景 备注说明 视频 <网络传输中IPTV的QoE评估模型的研究>张大陆 2013: 通过分析各网络参数的 ...

  10. 样本数据相似性距离度量算法

    1. 闵可夫斯基距离 2. 欧氏距离 3. 标准化欧氏距离 4. 曼哈顿距离 5. 切比雪夫距离 6. 马氏距离 7. 夹角相似距离 8. 汉明距离 9. 杰卡德距离 & 杰卡德相似系数 10 ...

最新文章

  1. python中calendar怎么用_Python时间模块datetime、time、calendar的使用方法
  2. Android之Log工具类使用
  3. HDU3657Game(最大流)
  4. ios取两个数之间的随机小数_如果取到小数区间内的任一数字?
  5. 为何gpio_to_irq不能静态使用?【转】
  6. CommonLibrary——框架通用工具库
  7. Protocol(协议)(二十)
  8. 服务器双硬盘系统安装系统安装,固态机械混合安装教程!双硬盘安装系统的方法...
  9. 深入分析AIDL原理
  10. 获取每日 联想电脑 开机锁屏壁纸
  11. 关于HBuilderX背景颜色-粉色
  12. 挺有意思的文章。。。
  13. 使用Certbot为nginx配置免费的https证书
  14. javaSE探赜索隐之四<final与抽象类>
  15. 解决 VS 无法打开包括文件: “XXX.h”: No such file or directory问题
  16. C# 关于默认打印纸张的设置
  17. 刚开始学java ,java代码开头的几行都是什么意思?
  18. 改做人工智能之前,90%的人都没能给自己定位
  19. 基于GNSS的CGCS2000数据处理技术综述
  20. cesium 实战记录(六)地图通用工具方法的封装

热门文章

  1. SVN 文件夹图标不显示问题的解决办法
  2. win10完美运行红警
  3. Excel_一维二维表转换(行列转换)的几种方法
  4. matlab中dfft,语音识别的matlab程序
  5. BP,RNN 和 LSTM暨《Supervised Sequence Labelling with Recurrent Neural Networks-2012》阅读笔记
  6. WPF中的对话框 Dialog
  7. javascript——构造函数和原型对象
  8. 用低代码+BPM赋能知识文档管理系统
  9. OpenGL 编程指南 ( 原书第 9 版 ) --- 第二章
  10. python爬取豆瓣电影250_利用Python爬取豆瓣TOP250的电影