[Sequence Alignment Methods] Dynamic time warping (DTW)
本系列介绍几种序列对齐方法,包括Dynamic time warping (DTW),Smith–Waterman algorithm,Cross-recurrence plot
Dynamic time warping (DTW) is a well-known technique to find an optimal alignment between two given (time-dependent) sequences under certain restrictions.
——Meinard Muller的《Information Retrieval for Music and Motion》
DTW路径的定义:用p = (p1, p2, ..., pL),来表示,需要满足以下三个条件:
(i) 边界条件:p1 = (1,1) 和 pL = (N,M)
(ii) 单调条件:n1 ≤ n2 ≤ ... ≤ nL 以及 m1 ≤ m2 ≤ ... ≤ mL
(iii) 跨步大小:p(l+1) - pl属于{(1,0),(0,1),(1,1)} for l属于[1:L-1]
DTW的目标函数:将c(x,y)定义为对齐x, y两点的损失函数,总的损失函数则是从p1到pL每个点对的损失函数之和,DTW路径的目标就是使总的损失函数最小的路径。
DTW的动态规划:D(n,m) = min{D(n-1,m-1), D(n-1,m), D(n,m-1)} + c(xn,yn),对于传统DTW,可以看到时间复杂度为O(MN)
DTW的变种:
跨步变种1:原跨步大小导致每一步的斜率范围为0到正无穷,可能会引起路径退化,故修改为{(2,1),(1,2),(1,1)},这样斜率范围就变成0.5到2了。此时状态转移方程变为D(n,m) = min{D(n-1,m-1), D(n-2,m-1), D(n-1,m-2)} + c(xn,yn)
跨步变种2:变种1会引入新的问题,即会直接忽略两个序列的某些点,故可采用状态转移方程D(n,m) = min{D(n-1,m-1), D(n-2,m-1) + c(xn-1, ym), D(n-1,m-2) + c(xn, ym-1)} + c(xn,yn)
损失函数权值变种:(1,0),(0,1),(1,1)三个跨步对应不同的权值,如在状态转移时,损失函数分别乘以权值(1,1,2)
Global Constraints:全局限制,目的是使得最优路径在某个限制的区间内。两个著名的全局限制区域为Sakoe-Chiba band和Itakura parallelogram。这种方法使得时间复杂度也大幅度减小。问题在于会丢掉稍微超出限制的区间的最优路径。
近似估计:只是为了降低计算复杂度。通过降采样,低通滤波,分段平滑函数等,降低O(MN)中M和N的大小
Multiscale DTW:综合Global Constraints和近似估计的方法,先通过低分辨率下的最优路径;在得到的靠近最优路径范围内增大分辨率,找到较高分别率在的最优路径;循环迭代操作
DTW的问题:在于它是将整个序列进行warping,并不符合很多实际需求
Subsequence DTW:(a*, b*) = argmin(DTW(X, Y(a: b))), (a, b): 1 ≤ a ≤ b ≤ M.找到损失值最小的匹配对
结论:在实际大规模检索中,大多数方法采取的策略是首先提取粗粒度的数据表征时间序列,检索出候选文档,然后进行细粒度的rank
[Sequence Alignment Methods] Dynamic time warping (DTW)的更多相关文章
- 动态时间归整/规整/弯曲(Dynamic time warping,DTW)
动态时间规整DTW 在日常的生活中我们最经常使用的距离毫无疑问应该是欧式距离,但是对于一些特殊情况,欧氏距离存在着其很明显的缺陷,比如说时间序列,举个比较简单的例子,序列A:1,1,1,10,2, ...
- [Sequence Alignment Methods] Cross-Recurrent Plot (CRP)
A recurrence plot (RP) is a straightforward way to visualize characteristics of similar system state ...
- [Sequence Alignment Methods] Smith–Waterman algorithm
Smith–Waterman algorithm 首先需要澄清一个事实,Smith–Waterman algorithm是求两个序列的最佳subsequence匹配,与之对应的算法但是求两个序列整体匹 ...
- 动态时间规整DTW(Dynamic Time Warping )
动态时间规整DTW(Dynamic Time Warping ) 原文:https://blog.csdn.net/raym0ndkwan/article/details/45614813 算法笔记- ...
- Dynamic Time Warping 动态时间规整算法
转自:http://www.cnblogs.com/luxiaoxun/archive/2013/05/09/3069036.html Dynamic Time Warping(DTW)是一种衡量两个 ...
- Multiple sequence alignment Benchmark Data set
Multiple sequence alignment Benchmark Data set 1. 汇总: 序列比对标准数据集: http://www.drive5.com/bench/ This i ...
- 动态时间规整-DTW算法
作者:桂. 时间:2017-05-31 16:17:29 链接:http://www.cnblogs.com/xingshansi/p/6924911.html 前言 动态时间规整(Dynamic ...
- INTRODUCTION TO BIOINFORMATICS
INTRODUCTION TO BIOINFORMATICS 这套教程源自Youtube,算得上比较完整的生物信息学领域的视频教程,授课内容完整清晰,专题化的讲座形式,细节讲解比国内的京师大 ...
- Computer Vision_18_Image Stitching: Image Alignment and Stitching A Tutorial——2006(book)
此部分是计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面.对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献.有一些刚刚出版的 ...
随机推荐
- ab安装和使用
apache bench(专门用于 HTTP Server .单url).win8: 下载地址:http://httpd.apache.org/download.cgi#apache24 安装apac ...
- RecyclerView实例-实现可下拉刷新上拉加载更多并可切换线性流和瀑布流模式(1)
摘要 最近项目有个列表页需要实现线性列表和瀑布流展示的切换,首先我想到的就是上 [RecyclerView],他本身已经很好的提供了三种布局方式,只是简单做个切换应该是很简单的事情,如果要用Recyc ...
- godaddy_关于产品退款
You're chatting with Danny.Danny - Thank you for contacting live chat. My name is Danny. How can I a ...
- 使用cocoapods管理第三方类库
前言 在iOS项目中使用第三方类库可以说是非常常见的事,但是要正确地配置他们有时候是非常繁琐的事情,幸运的是CocoaPods是一个很好的解决方案. 什么是CocoaPods CocoaPods是OS ...
- iOS 事件处理机制与图像渲染过程(转)
iOS 事件处理机制与图像渲染过程 iOS RunLoop都干了什么 iOS 为什么必须在主线程中操作UI 事件响应 CALayer CADisplayLink 和 NSTimer iOS 渲染过程 ...
- C# 异步操作
在程序中,普通的方法是单线程的.但中途如果有大型的操作,比如读取大文件,大批量操作数据库,网络传输等,都会导致程序阻塞,表现在界面上就是程序卡或者死掉,界面元素不动了,不响应了.C#异步调用很好的解决 ...
- 【转】WF4.0 (基础篇)
转自:http://www.cnblogs.com/foundation/category/215023.html 作者:WXWinter —— 兰竹菊梅★春夏秋冬☆ —— wxwinter@16 ...
- 【vc】1_Windows程序内部运行机制
创建一个Win32应用程序步骤: 1.编写WinMain函数; 2.创建窗口(步骤如下): a.设计(一个)窗口类(WNDCLASS) b.注册(该)窗口类. c.创建窗口. d.显示并更新窗口. 3 ...
- Codeforces 193D Two Segments 解题报告
先是在蓝桥杯的网站上看到一道题: 给出1~n的一个排列,求出区间内所有数是连续自然数的区间的个数.n<=50000. 由于数据较弱,即使用O(N^2)的算法也能拿到满分. 于是在CF上发现了这一 ...
- CSS Hack技术详解,支持IE 6-11、Chrome、FireFox、Safari、Opera 6-11、Chrome、FireFox、Safari、Opera6-11、Chrome、FireFox、Safari、Opera6-11、Chrome、FireFox、Safari、Opera
转自: http://www.365mini.com/page/css-hack-ie-chrome-firefox-safari-opera.htm 当前网络时代,各种各样的网页向我们展示着丰富多彩 ...