早期研究
文献标题 | 记录 |
---|---|
EFFECT ON THE ELECTRO-ENCEPHALOGRAM OF CERTAIN DRUGS WHICH INFLUENCE NERVOUS ACTIVITY | 1937年,脑电早期研究的文章,记录使用纸带描记,测试了多种药物引起的脑电变化 |
Identification of EEG Patterns Occuring in Anesthesia by Means of Autoregressive Parameters | 1991年的麻醉脑电分类方法 |
Estimating Anesthetic Depth by Electroencephalography during Anesthetic Induction and Intubation in Patients Undergoing Cardiac Surgery | 1990年,主要使用SEF辅助麻醉,证明SEF可以帮助减少麻醉药用量 |
AN ELECTROENCEPHALOGRAPHIC PROCESSING ALGORITHM SPECIFICALLY INTENDED FOR ANALYSIS OF CEREBRAL ELECTRICAL ACTIVITY | 1986年,脑电的时域处理方法,非周期分析方法 |
-
EFFECT ON THE ELECTRO-ENCEPHALOGRAM OF CERTAIN DRUGS WHICH INFLUENCE NERVOUS ACTIVITY
- 测试了多种药物引起的脑电变化
- 其中麻醉与睡眠有着相似的脑电模式,酒精也是
- 还有一些中枢神经兴奋类药物的使用记录,注射homocamfin之后47s左右能观察到明显的脑电变化,而被试表现为情绪失常,无法回答问题,5分钟后脑电恢复,被试也恢复能回答问题。
- 还有一些药物没有引起脑电的变化,在它结论中特意提到了自主神经系统药物没有引起可比较的变化。
- 但有一点是本文的记录来自于左脑运动区,区别于当前常见麻醉深度记录的额叶。
NeuroSENSE
文献标题 | 记录 |
---|---|
Quantifying Cortical Activity During General Anesthesia Using Wavelet Analysis | NeuroSENSE算法说明文献 |
A WAVELET BASED DE-NOISING TECHNIQUE FOR OCULAR ARTIFACT CORRECTION OF THE ELECTROENCEPHALOG | 小波去噪方法 |
-
Quantifying Cortical Activity During General Anesthesia Using Wavelet Analysis
基于稳态小波(stationary wavelet transform (SWT))的麻醉值
过程是:预处理》小波分解》对db6一阶分解系数计算概率密度函数》通过函数h得到wavcns(该处函数h没有做具体说明)
其中预处理部分它提到了,清醒时用了小波去噪的预处理,参考下面的文献。但是麻醉开始时关掉该预处理,对开始的时间点确定与eeg无关,是开始注射药物(因为它设定是与注射泵构成闭环,所有认为注射药物是已知条件)时关闭小波去噪。
这个方法的点在于它很难根据机制去理解,小波基的选择,以及为什么用概率密度函数,还有函数h的选择都是通过结果来进行筛选的。
它的过程是先截取各个不同状态下(从清醒到麻醉到等电位)的一段脑电,几个状态具体为:- Ra(awake state)
- T1(light REM sleep)
- T2(general anesthesia)
- T3(deep hypnotic state)
- Rb(isoelectric EEG)
假设有一个方法能将这些段区分到0-1间的数值,清醒为1,等电位为0是固定的,然后不同状态下的脑电希望能算出值分别对应于0.75,0.5,0.25
然后规定线性和区分度的判断标准(计算公式),在进行筛选时尽量保证较好的线性和较大的区分度
在这些前提下,使用不同的小波基,不同的分解层数,至于函数h的选择没有看到。可能进行了选择?从中挑出了最好的db6一阶分解系数。
对这个尝试了复现。计算db6一阶分解系数然后画出系数的概率密度曲线确实能出现类似文献中的图,即麻醉深度越深,曲线越尖锐,即越趋向于在0附近取值,越清醒则越平缓。在实现时,采用了从bis数据库中,找到持续时间满足1min,分数稳定在85-95,65-75,45-55,25-35,5-15的段,然后对这些段计算db6一阶系数的概率密度曲线,由于5~15基本没有得到,所以最后只画了前4段。另外对清醒部分没有如文章所提的使用小波去噪。
最后结果是,虽然有区分度但并不是特别明显。
由于对它的函数h不了解,后面结合了信息熵的理解进行。
对db6小波一阶细节系数求一个分布,分布的bin固定为1,记录每个bin系数的出现次数除以总数得到概率,然后应用熵公式计算一个熵值。这个熵值在上面提及的4组数据中有一定区别,但不存在文章所提的不重叠的区分度,其中65-75与45-55之间地区分度最大。用这种方法计算了几例,为了更好地跟BIS吻合,参考GE的方式用三次样条方程校正,用[0 1 2.1 3]对应到[0 30 80 100]拟合了一个三次样条方程,计算得到的熵值带入这个方程得到一个0-100的数值。
-
A WAVELET BASED DE-NOISING TECHNIQUE FOR OCULAR ARTIFACT CORRECTION OF THE ELECTROENCEPHALOG
NeuroSENSE参考的小波去噪方法。
信号为128Hz采样率,使用stationary wavelet transform平稳小波变换将信号分解,使用的小波是Coiflet 3,5阶分解,对分解后的小波系数应用阈值去干扰。只有小于16Hz,也即3-5阶细节系数和近似系数,应用阈值,大于阈值的置为0,然后重构信号,即能去除眼电干扰(本文主要是眼电干扰),从文章来看去除效果很好。
阈值的选择是对60s的脑电信号计算分解后系数的平均值和标准差Tk = mean(Mk) + 2*std(Mk)得到。
文中提及的stationary wavelet transform在matlab有相应的小波工具箱可以参考,MATLAB关于SWT的说明,但是小波工具箱里SWT去干扰是去除白噪声干扰,将小于阈值的部分置为0?刚好跟文中相反。熵
文献标题 | 记录 |
---|---|
Entropy GE | GE的麻深监测说明书 |
A Mathematical Theory of Communication | Shannon信息熵,熵理论基础 |
Description of the EntropyTM algorithm as applied in the Datex-Ohmeda S/5TM Entropy Module | GE Entropy算法 |
EEG entropy measures in anesthesia | 系统比较了12项熵指标在麻醉深度监测和突发抑制检测中的应用。Renyi排列熵在跟踪不同麻醉状态下的脑电图变化方面表现最佳。近似熵和样本熵在检测爆发抑制中表现最好。 |
Quantification of EEG irregularity by use of the entropy of the power spectrum | 普通的谱熵算法用于eeg |
应用小波熵分析大鼠脑电信号的动态变化特性 | 计算大鼠清醒、慢波睡眠、快速眼动时期的小波熵 |
Kolmogorov 熵在大鼠脑电麻醉深度监测中的应用 | 虽然名字奇怪,但看起来跟近似熵差不多的算法 |
- Entropy GE
这里熵计算与eeg和femg(前额肌电)都有关系,它使用的电极是三电极片构成的,而不是BIS的四电极,电极间信号的处理是不是有所不同?
提供了两个麻醉相关熵参数,RE反应熵 Response Entropy取值范围在0-100,计算的频率范围是0.8~47Hz和SE状态熵 State Entropy取值范围在0-91,计算的频率范围是0.8~32Hz。根据说明书的指示,RE是快速响应参数,用来检测面部肌肉的激活程度,SE是一个更稳定的参数,用来评估麻醉药物于大脑的催眠作用。
- A Mathematical Theory of Communication
中文版
香农信息熵,熵理论基础,来源于通信领域
提出是为了提出通信领域高效的编码方式,指导了各种压缩算法。
描述一个信源的信息丰富程度可以通过其能给出的符号和符号概率描述,即信源的熵, H = − K ∑ i ( p i l o g ( p i ) ) H=-K\sum_{i}(p_{i}log(p_{i})) H=−K∑i(pilog(pi)),其中 p i p_i pi是符号i出现的概率。
一个足够复杂的马尔可夫系统可以用于描述自然语言产生的过程。马尔可夫过程是一个可以用概率描述的过程。
而对于马尔可夫过程有满足上述公式的最大信源熵表述。
- Description of the EntropyTM algorithm as applied in the Datex-Ohmeda S/5TM Entropy Module
谱熵,Spectral Entropy,GE的算法说明,包括谱熵的计算,以及应用在麻醉监测中所做的调整。
分为状态熵和反应熵- 调整状态熵的归一化方式,使状态熵和反应熵二者统一,在没有EMG的情况下,二者值相等。
- 谱熵的计算似乎是用了不同尺度的时间窗,这里的不同时间窗似乎是它特别提出的time-frequency balanced spectral entropy,具体怎么做不是很明白。
- 正常情况和爆发抑制状态下使用的熵算法似乎是不同的,爆发抑制状态的判断也不是简单的时间-阈值的方式,引入了一个NLEO,非线性算子,具体做了什么不清楚。
谱熵算法时间窗弄不明白,文章和专利里面都看不明白时间窗选择和频率范围和采样率的关系究竟是怎么定的,以及分割的时间窗和频率范围究竟是怎么集合成一个整体的熵值。
- EEG entropy measures in anesthesia
- 麻醉药物的作用方式可能会有很大的影响?文章说明了该文中熵计算的对比来自于gaba能作用的麻醉药物。此文中使用的是七氟醚和异氟醚
-
-
十二种计算方法包括:
- 响应熵——Response Entropy(RE)
- 状态熵——State entropy(SE)
- 小波熵——Wavelet entropy(WE):Shannon WE(SWE)、Tsallis WE(TWE)、Renyi WE(RWE)
- 希尔伯特-黄谱熵——Hilbert-Huang spectral entropy(HHSE)
- 近似熵——Approximate entropy(ApEn)
- 样本熵——Sample entropy(SampEn)
- 模糊熵——Fuzzy entropy(FuzzyEn)
- 排列熵——Permutation entropy:Shannon PE(SPE)、Tsallis PE(TPE)、Renyi PE(RPE)
- 分为两类
- 谱(时频域)相关的熵:RE SE SWE TWE TWE HHSE
- 时域相关的熵:ApEn SampEn FuzzyEn SPE TPE RPE
- 谱熵——Spectral Entropy:RE SE
频域下衡量信号能量谱的概率密度函数。这里给的说明来看,RE、SE的算法是一样的,指示统计的频率范围不一样,RE是0.8-47,SE是0.8-32。这个频率范围怎么确定的?32-47是肌电的频率? - 小波熵
先小波分解,然后求分解后的小波能量(wavelet energy)与总能量之比,最后通过不同的统计方式得出一个值。 - 希尔伯特-黄
先经验模态分解,再对分量希尔伯特变换,虽然是很熟的两个词,但依然不知道是啥。。 - 近似熵、样本熵、模糊熵
样本熵在近似熵基础上,模糊熵是在样本熵基础上改变 - 排列熵
取时间序列上的值,按大小排列,然后计算,算啥还没明白 - 还测了一个指标标识麻醉深度,MDFA,随着深度增加,这个值会增加,文章里的结论是这个算法的抗干扰能力弱于熵算法。这个算法没懂
- 这个实验同时用的一组数据来源用了GE的Entropy记录了熵值,每5s记录一次,为啥是5s这么长时间?是条件限制?记录电极位置是active = FpZ, earth = Fp1, and reference = F8
- 目前来看,预处理有点复杂,按他参考的那篇1来看,预处理过程就包括,1. 按统计特性(均值和标准差)去除超出点。2. 陷波滤波器去50Hz。3. 平稳小波变化去眼电。4. 经验贝叶斯去全频率白噪声。同时0-0.5Hz的小波系数置为0去除基线漂移。5. 卡尔曼滤波用于估计自适应自回归参数,逆滤波用于检测并去除肌电图等瞬态高幅伪影。但只列了方法,没看到具体的运算过程……
- 药代动力学pharmacokinetic(PK),药效动力学pharmacodynamic(PD)模型衡量EEG的指示作用,还有一个值叫最大判定系数R2,the maximum coefficient of determination。这里怎么用没看懂。。似乎是用PK/PD模型根据测量值和药物浓度拟合一条曲线,然后再计算实际测量值与拟合曲线之间R2,R2是一个统计值,用来判断曲线拟合的解释程度的。这个算的值参考意义有多大?
- 然后统计分析方法Pk依然没懂,还提到了两个检验Kolmogorov–Smirnov test和Kruskal-Wallis test,不懂?后面也没看到提到这俩检验。
- 变异系数CV在这用来衡量清醒和诱导过程中指数的稳定性,分阶段算CV,文章里分了四个阶段:清醒-诱导-深度麻醉-恢复,四个阶段怎么区分的没看到具体说明,应该是在麻醉领域有公认标准,包括LOC,lost of consciousness 和 ROC recover。清醒和深度麻醉阶段,认为CV值越小越好,越小表明抗干扰能力好,在诱导阶段,认为CV值越大越好,表明对药物、麻醉深度状态的变化更敏感。
- 计算分段,每段时长10s,重叠5s??
- Quantification of EEG irregularity by use of the entropy of the power spectrum
谱熵算法
并不是用在麻醉深度,而是用于分析平静状态和心算状态下脑电是否有变化。
这里对两个状态的谱分布除了计算熵值外,还计算了两者之间的一个关系——KL散度
KL散度的通常使用场景是评价一个概率描述的系统是否是另一个系统的好的表述,也就是一个生成的系统A多大程度地描述了实际系统B,参考知乎里的蠕虫说明
KL散度概念向下走提到了变分自编码器,一种无监督机器学习模型,不需要先验知识,尝试生成一个系统最大程度地描述实际信号,从系统中能还原实际信号,在实际应用中,变分自编码器用来做一个生成器,生成与原始信号相似但又不完全相同的信号,比如对一个手写数字0进行学习形成的变分自编码器可以生成多个类似的手写数字0,应用在图像生成例如生成人脸,机器写作等方面。这个系统过程有编码和解码两步,编码将原始信号生成一系列正态分布,解码从正态分布中恢复信号,为保证生成的信号不完全相同,中间引入干扰。大概如此,具体不是很明白……
这篇看的不细,但单就结果图简单来看,谱熵在这两个状态下的区别并不明显,而且他使用的是QEEG是脑图谱,只有在部分位置才有统计学差异,从这来看谱熵在这方面的应用肯定是不能依赖单个通道来完成的。不过这里的任务本来就跟麻醉不一样。
这篇倒是引申出来的变分自编码器(VAE)比较有意思,但是这个要怎么应用到麻醉深度鉴别?对不同麻醉深度的脑电进行编码,不同深度的脑电有不同的编码结果?然后描述这个编码结果的差异?这个跟neuroSENSE会不会有点关系?
- 应用小波熵分析大鼠脑电信号的动态变化特性
区分清醒、慢波睡眠、快速眼动三个时期,用小波熵。
我对小波熵的理解是对谱熵的改进,增加它在时频上的适应性,普通的短时傅里叶变换做时频分析存在必须使用三角函数分解,三角函数是时域无穷的,小波可以解决这个问题。
在这基础上,按GE的路子走,清醒和睡眠但看小波熵算出来的值就应该有区分,给的结果来看单算小波熵不像我对谱熵理解的那样,在小波熵数值上三个状态数值都差不多,然后这篇算了小波熵的CV值(变异系数),慢波睡眠和清醒下小波熵的CV值差别比较大,清醒和快速眼动其实CV值上区别也不太明显
熵指数来源于信息论,是对信号的不规则性的一种衡量。直观来看,大脑在清醒状态下,作为信息源它产生的信息最丰富,因而脑电信号的不规则性更强,根据脑电信号计算得到的熵指数较大;在麻醉状态下与之相反,大脑产生的信息减少,脑电信号熵指数较小。目前,熵指数在脑电分析上有一定的应用,在麻醉监测领域以外,有文献通过熵指数分析睡眠状态以及休息和任务状态的区别。麻醉监测方面,GE Entropy模块使用反应熵和状态熵来指示麻醉过程中的病人状态,通过计算和校正之后,两个指数能在0~100的范围内反映病人受麻醉的程度,其中状态熵较为稳定,反映脑皮层受麻醉药物的影响,反应熵较为灵敏,能快速反映额肌电的激活。
熵指数计算有多种算法,包括仅对时域进行分析得到的近似熵、样本熵、排列熵;以及从时频域进行分析得到的谱熵(即GE使用的反应熵、状态熵)、小波熵等等。
Li, D., Li, X., Liang, Z., Voss, L. J., and Sleigh, J. W. (2010). Multiscale permutation ↩︎