DFA简介
DFA(Detrend Fluctuation Analysis)与scale-free
scale-free的本质特征是self-affine or self-similar。具体的,体现在几何上,那么图形中总能找到一个小的部分,它的形态与总的图形一致或相似,体现在统计上,则某一小段序列的标准差不依赖于尺度的选择,它能够通过rescale得到和总体标准差一样的值,或者说其标准差和尺度的关系满足幂律指数关系,这意味着在双对数坐标系下,二者的图线是一条直线。
scale-free的一种通用数学定义是
\]
L是长度系数,H被称为Hurst参数,它反映了scale-free对象的性质。
DFA的计算方法
将信号关于平均值作归一化后,求出profile,或称累积和。
窗长是DFA图像的自变量,选取幂律步长增长的窗长序列。最长的窗长为整个待分析序列的长度(但介于序列长度与长度一半的窗长会由于计算时丢弃太多数据而引入误差,应该尽量避免,这一点可以从DFA图中看出),最短的窗长,对于HRV来说,以一个呼吸周期为佳,大概为4-8s,(“以一个呼吸周期为佳”为个人未经实验证明的观点)。按照某一个窗长,将信号分割为non-overlapping的许多片段。
对每个计算窗内,作基于线性拟合的detrend。
除了线性拟合,还可以作二次、三次拟合,称为DFA2,DFA3。比如Penzel等人[1]在2003年使用DFA2来分析睡眠ECG。他们的一个实验现象是REM和wake时,\(\alpha\)更大。
对每个detrend后的序列求均方根值(RMS),得到F(n)。
对log[F(n)]和log(n)作线性拟合,拟合所得斜率为整个信号波动水平的衡量。比如清醒时的斜率就会大于睡眠时的斜率。当斜率为0时,信号退化为平稳信号。
思考:log[F(n)]和log(n)线性拟合的斜率总是大于等于0,从实验的角度证明了这样一个命题:对一个总体来说,其抽样的标准差的期望小于等于总体的标准差,当且仅当每个抽样的平均值与总体相等时,取等号。
WDFA
WDFA(Window DFA)的提出是为了克服DFA无时间信息的问题。Adnane等人于2012年[2]指出这一问题给DFA在应用上带来两个短板,一是无法对短于DFA点数要求的信号段进行分析,二是当一个信号段里既有清醒和睡眠时,必然会导致一部分的阶段被错判,因而进一步提出WDFA,并在文章中给出了WDFA的计算方法:
WDFA的前三步骤与DFA相同,稍有不同的是选择的窗宽只有n=30和n=90(序列已经降采样到1Hz)。
WDFA的实质为一个移动窗内信号的能量(不包含直流分量)。
\[\mu(t, \delta)=\frac{1}{2 \delta} \int_{t-\delta}^{t+\delta}(z(\tau)-\bar{z}(t))^{2} d \tau
\]应用中的表达式为:
\[\mu(t, \delta)=\frac{1}{2 \delta}\left(\mu_{2}(t+\delta)-\mu_{2}(t-\delta)\right)-\frac{1}{(2 \delta)^{2}}\left(\mu_{1}(t+\delta)-\mu_{1}(t-\delta)\right)^{2}
\]式中t表示时刻,\(\delta\)表示窗宽,z(t)为步骤1得到的detrend信号,\(\mu_1\)和\(\mu_2\)的定义如下:
\[\mu_{1}(t)=\int_{-\infty}^{t} z(\tau) d \tau
\]\[\mu_{2}(t)=\int_{-\infty}^{t} z(\tau)^{2} d \tau
\]文章中,\(\delta\)有两个取值,分别为30和90。
ECG与DFA
对于被公认为是非稳态信号ECG来讲,DFA尽可能小的受到噪声和非稳态信号的干扰实现相关的计算。
Penzel T , Kantelhardt J W , Grote L , et al. Comparison of detrended fluctuation analysis and spectral analysis for heart rate variability in sleep and sleep apnea[J]. IEEE Transactions on Biomedical Engineering, 2003, 50(10):1143-1151. ︎
Adnane, Mourad, Zhongwei Jiang, and Zhonghong Yan. "Sleep–wake stages classification and sleep efficiency estimation using single-lead electrocardiogram." Expert Systems with Applications 39.1 (2012): 1401-1413. ︎
DFA简介的更多相关文章
- 敏感词过滤的算法原理之DFA算法
参考文档 http://blog.csdn.net/chenssy/article/details/26961957 敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有 ...
- Java实现敏感词过滤
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- Java实现敏感词过滤(转)
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- Jsp敏感词过滤
Jsp敏感词过滤 大部分论坛.网站等,为了方便管理,都进行了关于敏感词的设定. 在多数网站,敏感词一般是指带有敏感政治倾向(或反执政党倾向).暴力倾向.不健康色彩的词或不文明语,也有一些网站根据自身实 ...
- 高效Java敏感词、关键词过滤工具包_过滤非法词句
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- java过滤关键词
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- 转:Java实现敏感词过滤
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- 基于DFA敏感词查询的算法简析
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中需要对敏感词做一个过滤,首先有几个方案可以选择: a.直 ...
- DFA算法的简单说明!
1.DFA算法简介 DFA全称为:Deterministic Finite Automaton,即确定有穷自动机.其特征为:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边上标记有一个符号 ...
随机推荐
- Boost 信号与槽,获取槽函数返回值,使用占位参数传递信号携带的参数
test1: 展示了, 1 信号与槽的基本使用, 2 要获取槽函数的返回值时的注意事项 #if 1 /* 参考blog https://www.cnblogs.com/jiayayao/p/62 ...
- 小伙伴问我:如何搭建Maven私服?我连夜肝了这篇实战文章!!
写在前面 十一假期期间,也有很多小伙伴不忘学习呀,看来有很多小伙伴想通过十一长假来提升自己的专业技能!这不,就有小伙伴在微信上问我:如何搭建Maven私服?让我专门推一篇搭建Maven私服的文章.安排 ...
- 《C++primerplus》第12章“队列模拟”程序
这个程序刚开始学有很多难点,个人认为主要有以下三项: 1.链表的概念 2.如何表示顾客随机到达的过程 3.程序执行时两类之间的关系,即执行逻辑 关于第一点,书上的图解释得比较清楚了,把"空指 ...
- Azure内容审查器之羞羞图审查
上一篇 Azure 内容审查器之文本审查我们已经介绍了如果使用Azure进行文字内容的审核.对于社区内容,上传的图片是否含有羞羞内容也是需要过虑的.但是最为一般开发者自己很难实现这种级别的智能识别.但 ...
- 在Linux下如何根据域名自签发OpenSSL证书与常用证书转换
在Linux下如何根据域名自签发各种SSL证书,这里我们以Apache.Tomcat.Nginx为例. openssl自签发泛域名(通配符)证书 首先要有openssl工具,如果没有那么使用如下命令安 ...
- javaagent+asm破解censum
内容介绍 最近在学习字节码相关知识,了解到通过ASM字节码改写技术来做破解一些软件破解,非常感兴趣,本文记录一下破解 Censum的过程(仅个人学习使用). 之前也写过一篇暴力破解Censum的文章, ...
- Socket编程,C语言版!
socket编程--send函数&recv函数详解 一.send函数 ✍ 函数原型: int send( SOCKET s,char *buf,int len,int flags ); ✍ 功 ...
- 洛谷 CF1012C Hills(动态规划)
题目大意: 有几座山,如果一座山左右两边的山比它矮,那么可以在这个山上建房子,你有一台挖掘机,每天可以挖一座山一米,问你需要花多少代价可以分别盖1.2.3--座房子.(给出山的数量,以及每座山的高度) ...
- firstBlog
第一篇博客 markdown语法的学习 基本语法 标题与段落 在文字前面加1-6个#号来表示来代表一级标题到六级标题 一级标题 五级标题 列表 对于无序列表,可以使用字符-,+和*作为列表的标记 - ...
- Ubuntu20.04 体验和美化
Ubuntu20.04美化和体验 windows用久了,换下系统也挺好的.ubuntu20.04优化后,用起来蛮舒服的. 系统配置 1.修改软件源 Ubuntu默认是国外的软件源, 我们可以手动切换为 ...