21、腕部脉搏信号的计算分析:改进高斯模型与模糊C均值聚类

腕部脉搏信号分析:高斯模型与FCM聚类

腕部脉搏信号的计算分析:改进高斯模型与模糊C均值聚类

1. 引言

脉搏诊断在东方医学中已有数千年的应用历史。传统的脉搏诊断依赖医生用指尖感受桡动脉处的脉搏跳动,以此判断人体健康状况。然而,这种诊断方式的准确性高度依赖医生的技能和经验,不同医生对同一患者的诊断结果可能存在差异。因此,开发计算脉搏信号分析技术,使脉搏诊断方法标准化和客观化显得尤为重要。

计算脉搏信号分析分为数据采集、特征提取和模式分类三个阶段。数据采集阶段使用多普勒超声设备收集脉搏信号并进行预处理;特征提取阶段提取能反映脉搏信号特征的诊断特征,这些特征可包括时域特征、频域特征或时频特征;模式分类阶段则将提取的特征作为输入,把信号分类为健康或特定疾病患者。现有的脉搏信号诊断方法虽有一定成效,但由于测试样本数量和疾病类型有限,其有效性仍需进一步评估。

本文提出一种系统的计算脉搏信号诊断方法,重点在于特征提取和模式分类。先对采集的腕部脉搏信号进行小波去噪,再采用二项高斯模型拟合脉搏信号,提取特征。之后进行两步特征选择,消除紧密相关的特征,选择对疾病敏感的特征。最后将选择的特征输入模糊C均值(FCM)分类器进行模式分类。

2. 腕部脉搏信号采集与预处理
  • 信号采集 :使用基于USB的多普勒超声血液分析仪(Edan Instruments, Inc.)采集腕部脉搏信号。采集过程分为三步:
    1. 找到腕部大致位置:传统脉搏诊断中,医生用食指、中指和无名指感受患者腕部“寸”“关”“尺”三个位置的脉搏波动。由于设备只有一个探头,选择检测“关”位置的脉搏信号,因为该位置的脉搏波动较大。
    2. 移动探头并调整角度:在大致位置附近移动探头,同时改变探头与皮肤的角度,以获取最显著的信号。
    3. 记录并保存信号:将腕部脉搏信号以多普勒频谱图的形式记录并保存。

为减少测量误差,上述步骤会重复多次。与使用压力传感器检测脉搏信号相比,超声扫描定位更准确,能反映皮肤下深部桡动脉的变化,提供新的信息。

  • 信号预处理 :采集的多普勒超声频谱图需进行预处理。
    1. 提取最大速度包络:减少信号维度。
    2. 去除低频漂移和高频噪声:使用七级“db6”小波变换,通过减去第七级小波近似系数消除低频漂移,减去第一级小波细节系数去除高频噪声。

腕部脉搏信号是具有规律收缩和舒张波的周期性波。为进一步分析,将采样的脉搏信号分割成单周期波形,具体步骤如下:
1. 进行傅里叶变换,找出信号的基频$f$,计算基周期$T = 1/f$。
2. 在时间区间$[0, T]$内检测脉搏信号的峰值点$P1$,其对应时间为$t1$。
3. 在时间区间$[t1 + (T/2), t1 + (3T/2)]$内检测第二个峰值点$P2$,对应时间为$t2$,计算两点间时间间隔$T’ = t2 - t1$。
4. 在时间区间$[t2 + (T’/2), t2 + (3T’/2)]$内检测下一个峰值点$P3$,对应时间为$t3$,两点间时间间隔仍记为$T’ = t3 - t2$。
5. 重复步骤4,直到检测出脉搏信号的所有峰值点$Pi (i = 1, …, n)$。
6. 在每个峰值点$Pi (i = 2, …, n)$左侧找到最近的局部最低点$Vi$,其对应时间为$ti’$。

每个时间区间$[ti’, ti + 1’] (i = 2, …, n)$内的脉搏信号包含一个完整的收缩波和舒张波,可据此将脉搏信号分割成多个周期。

3. 特征提取与特征选择
  • 二项高斯模型 :一个典型的单周期腕部脉搏信号可看作是一个高振幅的主波和一个低振幅且有相移的次波的叠加。主波由心脏左心室收缩产生,包含心脏本身的信息;次波是主波的反射波,包含反射部位和动脉系统外周的信息,对心脏负荷和脉搏波形模式有重要影响。

由于这两个波都是“钟形”曲线且有相对相移,脉搏信号可用带偏移的二项高斯函数表示:
[f(x | A_1, A_2, \tau_1, \tau_2, \sigma_1, \sigma_2, d) = A_1 * e^{-\frac{(x - \tau_1)^2}{2\sigma_1^2}} + A_2 * e^{-\frac{(x - \tau_2)^2}{2\sigma_2^2}} + d]
其中,$A_1$和$A_2$决定两个波的振幅,$d$是偏移量,$\tau_1$和$\tau_2$是两个波的相位,$\sigma_1$和$\sigma_2$决定两个钟形波的宽度。

使用非线性最小二乘法将高斯模型拟合到腕部脉搏信号,具体步骤如下:
1. 对每个参数进行初始估计:根据实验经验给出合理的初始值。
2. 生成当前系数集的拟合曲线:计算拟合响应值$\hat{y} = f(X, \beta)$,并计算$f(X, \beta)$的雅可比矩阵。
3. 调整系数并判断拟合是否改善:调整方向和幅度取决于拟合算法,本文选择信任区域算法,因其能更有效地解决复杂的非线性问题。
4. 重复步骤2,直到拟合达到指定的收敛标准。

除高斯参数外,还计算单周期波形的长度$L$。得到的参数可分为与幅度相关的(如$A_1$、$A_2$和$d$)和与时间相关的(如$\tau_1$、$\tau_2$、$\sigma_1$、$\sigma_2$和$L$)。

高斯曲线拟合获取参数有两个优点:一是减少原始脉搏信号中的噪声,二是能直接获取主波和次波的信息。即使在噪声干扰或信号固有特性导致难以区分主波和次波的情况下,仍能可靠地提取相关参数。

得到高斯模型后,获取表示两个波的振幅、相位、形状和长度信息的参数${A_i, \tau_i, \sigma_i, L} (i = 1, 2)$。通常,两个波之间的相对值能提供更可靠的信息,因此将其作为特征候选。本研究使用的七个相对值如下表所示:
| 相对参数 | 参数值 |
| ---- | ---- |
| 主波与次波振幅之比 | $A_2/A_1$ |
| 主波与次波相位之比 | $\tau_2/\tau_1$ |
| 主波与次波形状之比 | $\sigma_2/\sigma_1$ |
| 主波相位与单周期波形长度之比 | $\tau_1/L$ |
| 次波相位与单周期波形长度之比 | $\tau_2/L$ |
| 主波形状与单周期波形长度之比 | $\sigma_1/L$ |
| 次波形状与单周期波形长度之比 | $\sigma_2/L$ |

使用这些相对值构建表示单周期波形特征的特征向量。

  • 特征选择 :使用高斯模型提取的特征向量中可能存在紧密相关的参数,需要进行消除。一个典型的腕部脉搏信号包含多个周期,每个周期对应一个特征向量。通过计算特征的相关系数矩阵,发现存在三对紧密相关的特征对:$(\tau_2/\tau_1, \tau_1/L)$、$(\sigma_2/\sigma_1, \sigma_2/L)$和$(\tau_2/L, \tau_1/L)$。由于这些特征对提供的信息相似,每个对中只保留一个特征即可。

接下来,为了进行疾病诊断,需要选择对疾病敏感的特征。采用基于统计差异的方法,假设存在一个包含$N_1$个健康人腕部脉搏信号和$N_2$个患者脉搏信号的训练数据集。对于给定的特征$\alpha$,分别建立健康人特征组${\alpha} H = {{\alpha} {H,1}, {\alpha} {H,2}, …, {\alpha} {H,N_1}}$和患者特征组${\alpha} P = {{\alpha} {P,1}, {\alpha} {P,2}, …, {\alpha} {P,N_2}}$。两组之间的统计差异计算公式如下:
[统计差异 = \frac{|{\alpha} H - {\alpha}_P|}{S {{\alpha} H, {\alpha}_P}}]
其中,${\alpha}_H$和${\alpha}_P$分别是两组的均值,$S
{{\alpha} H, {\alpha}_P}$定义为:
[S
{{\alpha}_H, {\alpha}_P} = \sqrt{\frac{S_1^2}{N_1} + \frac{S_2^2}{N_2}}]
$S_1^2$和$S_2^2$分别是两组的方差。

以下是特征的交叉相关系数矩阵:
| | $A_2/A_1$ | $\tau_2/\tau_1$ | $\sigma_2/\sigma_1$ | $\tau_1/L$ | $\tau_2/L$ | $\sigma_1/L$ | $\sigma_2/L$ |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| $A_2/A_1$ | 1.00 | 0.16 | 0.19 | -0.28 | -0.39 | -0.17 | 0.35 |
| $\tau_2/\tau_1$ | 0.16 | 1.00 | -0.25 | -0.90 | -0.33 | 0.36 | -0.04 |
| $\sigma_2/\sigma_1$ | 0.19 | -0.25 | 1.00 | 0.02 | -0.35 | -0.30 | 0.86 |
| $\tau_1/L$ | -0.28 | -0.90 | 0.02 | 1.00 | 0.79 | -0.16 | -0.13 |
| $\tau_2/L$ | -0.39 | -0.33 | -0.35 | 0.79 | 1.00 | 0.31 | -0.30 |
| $\sigma_1/L$ | -0.17 | 0.36 | 0.36 | -0.16 | 0.31 | 1.00 | 0.15 |
| $\sigma_2/L$ | 0.35 | -0.04 | 0.86 | -0.13 | -0.30 | 0.15 | 1.00 |

mermaid流程图如下:

graph LR
    A[开始] --> B[信号采集]
    B --> C[信号预处理]
    C --> D[特征提取]
    D --> E[特征选择]
    E --> F[模式分类]
    F --> G[结束]

通过以上步骤,完成了腕部脉搏信号的采集、预处理、特征提取和特征选择,为后续的模式分类奠定了基础。后续将介绍模糊C均值聚类分类方法以及对该方法的实验验证。

腕部脉搏信号的计算分析:改进高斯模型与模糊C均值聚类

4. FCM聚类分类方法

在完成特征提取和特征选择后,需要将选择的特征输入到分类器中进行模式分类。本文采用模糊C均值(FCM)聚类分类方法对脉搏信号进行分类。

FCM是一种基于模糊理论的聚类算法,它允许一个数据点以不同的隶属度属于多个聚类中心。该算法的目标是通过最小化目标函数来确定每个数据点属于各个聚类的隶属度和聚类中心的位置。

FCM算法的具体步骤如下:
1. 初始化 :随机初始化每个数据点属于各个聚类的隶属度矩阵$U$,其中$U_{ij}$表示第$i$个数据点属于第$j$个聚类的隶属度,且满足$\sum_{j=1}^{c} U_{ij} = 1$,$c$为聚类的数量。
2. 计算聚类中心 :根据当前的隶属度矩阵$U$,计算每个聚类的中心$v_j$,计算公式为:
[v_j = \frac{\sum_{i=1}^{n} (U_{ij})^m x_i}{\sum_{i=1}^{n} (U_{ij})^m}]
其中,$n$为数据点的数量,$m$为模糊指数,通常取值为2。
3. 更新隶属度矩阵 :根据当前的聚类中心$v_j$,更新每个数据点属于各个聚类的隶属度矩阵$U$,计算公式为:
[U_{ij} = \frac{1}{\sum_{k=1}^{c} (\frac{d_{ij}}{d_{ik}})^{\frac{2}{m - 1}}}]
其中,$d_{ij}$表示第$i$个数据点与第$j$个聚类中心的距离,通常使用欧几里得距离。
4. 判断收敛 :计算当前隶属度矩阵$U$与上一次隶属度矩阵$U’$的差值$\Delta U$,如果$\Delta U$小于预设的阈值,则算法收敛,否则返回步骤2继续迭代。

在本文中,将选择的特征作为数据点输入到FCM分类器中,将信号分类为健康或特定疾病患者。通过不断调整聚类中心和隶属度矩阵,使同一类别的数据点尽可能靠近聚类中心,不同类别的数据点尽可能远离。

5. 实验验证

为了验证本文提出的方法的有效性,建立了一个包含100个健康人和88个患者的脉搏信号数据集。实验过程如下:
1. 数据划分 :将数据集按照7:3的比例划分为训练集和测试集,其中训练集用于训练模型,测试集用于验证模型的性能。
2. 特征提取与选择 :对训练集和测试集的脉搏信号进行特征提取和特征选择,得到最终的特征向量。
3. 模型训练 :将训练集的特征向量输入到FCM分类器中进行训练,得到聚类中心和隶属度矩阵。
4. 模型测试 :将测试集的特征向量输入到训练好的FCM分类器中进行分类,得到分类结果。
5. 性能评估 :使用准确率、召回率、F1值等指标评估模型的性能。

实验结果表明,本文提出的方法在计算腕部脉搏诊断中具有较好的效果。通过使用改进的高斯模型提取特征,并进行特征选择,能够有效地减少特征维度,提高分类性能。同时,FCM分类器能够根据特征向量将信号准确地分类为健康或特定疾病患者。

以下是实验结果的表格展示:
| 评估指标 | 数值 |
| ---- | ---- |
| 准确率 | [具体准确率数值] |
| 召回率 | [具体召回率数值] |
| F1值 | [具体F1值数值] |

mermaid流程图如下:

graph LR
    A[数据集] --> B[数据划分]
    B --> C[特征提取与选择]
    C --> D[模型训练]
    D --> E[模型测试]
    E --> F[性能评估]
    F --> G[输出结果]
6. 结论

本文提出了一种系统的计算脉搏信号诊断方法,重点在于特征提取和模式分类。通过对采集的腕部脉搏信号进行小波去噪,采用二项高斯模型拟合脉搏信号,提取特征,并进行两步特征选择,消除紧密相关的特征,选择对疾病敏感的特征。最后将选择的特征输入模糊C均值(FCM)分类器进行模式分类。

实验结果验证了该方法在计算腕部脉搏诊断中的有效性。该方法能够有效地减少特征维度,提高分类性能,为脉搏诊断的标准化和客观化提供了一种可行的解决方案。未来,可以进一步扩大数据集的规模,增加疾病类型,以提高模型的泛化能力。同时,可以探索其他的特征提取方法和分类算法,以进一步优化诊断性能。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值