方法文章

基于XGBoost的病理性嗓音识别研究

DOI:

10.3791/68784

2026年5月29日

本文内容

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本文介绍了一种利用萨尔布吕肯数据库建立基于XGBoost的无创人工智能模型以诊断声带息肉的实验方案。

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

随着人类社会交往的持续发展,患有嗓音障碍的人数也在不断增加。由于声学检测方法在病理性嗓音诊断中具有客观性和非侵入性等优势,利用语音信号分析进行病理性嗓音识别已成为研究热点。本文首先从德国SVD数据库中选取101段连续的元音/a/作为研究对象;其次,采用小波包技术进行时频分析,从子信号中提取近似熵、样本熵、模糊熵和排列熵这四个非线性动力学参数,作为病理性嗓音分类器的特征参数集;最后,选择机器学习算法XGBoost作为模式识别方法,建立病理性嗓音分类器,并通过五折交叉验证和ROC曲线验证分类性能。实验结果表明,XGBoost病理性嗓音分类器的准确率为0.857,F1分数为0.875,AUC值为0.944,均高于支持向量机(SVM)构建的分类器,说明XGBoost在病理性嗓音识别中具有更优的性能。

引言

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

患有嗓音障碍的人数持续增加。据统计,一生中约有三分之一的人会出现嗓音问题1。对于歌手、教师等职业用声者而言,由于频繁过度或不当使用嗓音,其咽喉疾病的发病率更高。针对天津和乌鲁木齐教师群体的两项调查显示,嗓音障碍的发生率分别为33.81%和28.23%2,3。因此,临床上对病理性嗓音的检测与诊断日益受到重视。目前,临床主要采用主观评估、喉镜检查以及声学检测方法来诊断嗓音疾病4,5。声学检测方法将嗓音信号转化为数字信号进行分析,具有客观性强、检查过程中无创无痛的优点6。因此,声学检测已成为临床诊断中医生有效的辅助工具,相关研究也日益增多。

利用声学分析方法诊断病理性嗓音最重要的技术是特征提取和模式识别。自20世纪60年代以来,研究人员已开始提取一些传统声学参数用于病理性嗓音的研究,并发现了许多有效且稳健的声学特征参数,如基频扰动、振幅扰动以及梅尔频率倒谱系数(MFCC)7。近年来,研究人员不再局限于研究传统声学特征参数,非线性动力学参数也开始被应用于病理性嗓音识别领域8,并取得了良好的效果。随着机器学习的快速发展,涌现出更多运行速度快、分类性能优异的模式识别方法。目前应用于病理性嗓音识别的模式识别方法也越来越多,例如支持向量机(SVM)、随机森林、神经网络和深度学习9,10。XGBoost是近年来受到关注的一种模式识别方法11,它无需特征归一化,可自行进行特征选择,能够适应多种损失函数,并通过正则化项防止过拟合,具有速度快、可移植性强和容错性好的特点。因此,本文尝试将XGBoost方法应用于病理性嗓音识别,以期获得更优的识别效果。

访问受限。请登录或开始试用以查看此内容。

方案

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究的技术流程如图1所示。

1. 声音样本的采集

  1. 从德国SVD数据库获取实验数据12
  2. 获取101例元音/a/语音数据,包括45例声带息肉患者(19名男性和26名女性)以及56例正常个体(28名男性和28名女性)。

2. 语音数据的小波包分解13

  1. 使用软件 MATLAB R2023a,对三种 Daubechies 小波(db1、3、5)和三种分解深度(4、6、8 层)进行 exhaustive search。
  2. 采用 16 kHz 的采样率,利用四层 db3 小波包分解(WPD)将语音信号划分为 16 个子频带(每个子频带分辨率为 500 Hz)(图 2)。

3. 特征参数提取

  1. 通过4层小波包分解(WPD)得到的16个子频带中提取离散系数序列 Python 3.10,作为下述所有熵计算方程的输入值。
    注意:本研究中使用的所有方程均源自先前已发表的算法(如 r参考文献)且并非独立推导得出。
  2. 使用以下公式计算16个WPD子带序列的近似熵14:
    Approximate entropy formula ApEn=Φ^m(r)-Φ^(m+1)(r), mathematical concept for data analysis.    (1)
    Equation of statistical thermodynamics in formulas; mathematical representation; research analysis.    (2)
    Cim (r) = {d[X(i), X(j)] < r} / (N - m + 1) (3)
    参数:模式维度 m 选取为 2,相似性容差 r 选取为标准差的 0.1 至 0.25 倍14.
  3. 使用以下公式计算16个WPD子带序列的样本熵15:
    Sample entropy formula: \( \text{SampEn} = \lim_{N \to \infty} \{-\ln[\frac{B^{m+1}(r)}{B^m(r)}]\} \).     (4)
    Mathematical equation for statistical analysis process, displaying formula for calculating Bm(r).    (5)
    Bim (r) = {d[X(i), X(j)]<r} / (N-m)    (6)
    参数:模式维度 m 选取为 1 或 2,相似性容差 r 选取为标准差的 0.1 至 0.25 倍15.
  4. 使用以下公式计算模糊隶属度函数16:
    Mathematical function: piecewise equation, illustrating exponential decay for X>0 in graph analysis.     (7)
  5. 使用以下公式计算模糊熵17:
    Fuzzy entropy formula, FuzzyEn, for complexity analysis; mathematical equation on image.    (8)
    Equation for weighted average function, Φ^m(r), image involving summation and coefficients.    (9)
    Static equilibrium equation: C<sub>i</sub><sup>m</sup>(r)=1/(N-m)Σ<sub>j=1,j≠i</sub><sup>N-m+1</sup>A<sub>ij</sub><sup>m</sup>.    (10)
    参数:模式维度 m 选取为 2,相似性容差 r 选取为标准差的 0.15 倍。
  6. 使用以下公式计算排列熵18:
    Entropy formula, \( H(m) = -\sum_{j=1}^{K} P_j \ln P_j \), entropy calculation equation.     (11)
    参数:排列熵提取的模式维度 m 选定为 6,时间延迟 L 最终确定为 2。

4. 模型建立

  1. 将来自正常人和声带息肉患者的语音样本按8:2的比例划分为训练数据集和测试数据集。
  2. 使用训练数据集进行参数调优和模型训练,然后将所得分类器应用于测试数据集进行疾病分类。
  3. 使用 Python 3.10 执行 SVM 建模过程。
    1. 通过比较 SVM 核函数的性能来确认数据的非线性特性。初始使用线性核函数时准确率较低,而径向基函数(RBF)核函数显著提升了分类效果,表明特征空间需要非线性决策边界。
    2. 采用16维熵特征向量(通过WPD提取)作为SVM分类器的输入,使用RBF核函数将非线性语音特征映射到高维空间。
    3. 利用 Python(scikit-learn)进行网格搜索,在训练阶段确定惩罚系数 C 和核宽度 γ 的最优组合,通过最大化交叉验证识别率来评估每组参数。
    4. 使用来自正常个体和声带息肉患者的语音样本训练SVM模型,并结合网格搜索得到的最优超参数构建最终训练模型。
    5. 将训练好的模型应用于未见过的测试样本。每个测试样本需经历与训练数据相同的WPD分解和熵特征提取过程。SVM根据测试特征向量相对于优化后决策边界的空間位置,预测其二分类标签(正常 vs. 声带息肉)。
  4. 使用 Python 3.10 执行 XGBoost 建模过程。
    1. 采用基于 Python 的网格搜索方法,在训练阶段优化关键超参数(包括学习率和树深度),通过交叉验证评估多种参数组合,以确定可最大化分类准确率的配置。
    2. 利用从语音样本中提取的十六个熵特征训练二分类 XGBoost 分类器,并应用网格搜索获得的最优超参数构建最终模型。
    3. 在由未见样本组成的独立验证集上测试训练好的模型。该步骤通过评估分类器在训练过程中未使用数据上的表现,检验其泛化能力。

5. 模型性能评估

  1. 采用五折交叉验证方法。
    1. 将预处理后的语音数据集随机均分为五个子集。使用其中四个子集作为训练集构建模型,剩余一个子集作为验证集用于性能评估。
    2. 重复该过程五次,将五次迭代结果的平均值作为模型的最终性能指标。
  2. 获取混淆矩阵。
    1. 根据五折交叉验证结果,通过比较分类器对所有测试样本的预测标签与真实标签,生成混淆矩阵。使用 Python 的 scikit-learn 库将这些个体比较汇总为列联表,以量化正确与错误分类的数量,如表1所示。
  3. 计算准确率、精确率、敏感性及 F1 分数,以描述分类模型的有效性。相关计算公式如下。
    准确率 = (TP + TN)/(TP + TN + FP + FN)
    精确率 = TP/(TP + FP)
    敏感性 = 召回率 = TPR = TP/(TP + FN)
    F1 = (2 × 精确率 × 召回率) / (精确率 + 召回率)
    注:这些指标(TP、TN、FP、FN)来源于混淆矩阵中的元素。
  4. 通过 AUC 描述 ROC 曲线。
    1. 绘制 ROC 曲线,以可视化在所有分类阈值下真正例率(TPR)与假正例率(FPR)之间的权衡关系。计算曲线下面积(AUC)作为综合指标,以量化模型的整体判别能力。
      注:AUC 值越接近 1,表示分类器在不依赖特定决策阈值的情况下,正确区分健康个体与声带息肉患者的能力越高。

访问受限。请登录或开始试用以查看此内容。

结果

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究采用小波包分析对语音信号进行时频分解。通过整合非线性动力学参数——包括近似熵、样本熵、模糊熵和排列熵——系统表征了与声带息肉相关的病理性语音的复杂性与不规则性特征。随后,分别基于支持向量机(SVM)算法和XGBoost算法构建了两种病理性语音分类器。通过采用网格搜索方法,确定了每种模型的最优参数配置,详见表2

图3中的五折交叉验证结果所示,基于支持向量机(SVM)的分类器的评估指标表现出显著波动,而基于XGBoost的分类器的指标则相对稳定,表明基于XGBoost算法的病理性语音分类器具有更稳定的识别性能。

表3所示,验证结果表明,基于XGBoost的病理性语音分类器的准确率为0.857,F1分数为0.875,AUC值为0.944。相比之下,基于SVM的病理性语音分类器的准确率为0.800,F1分数为0.786,AUC值为0.875。图4

访问受限。请登录或开始试用以查看此内容。

讨论

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

利用语音信号分析进行病理性嗓音诊断是一种无创且客观的方法19。因此,病理性嗓音分类已成为语音信号处理与识别领域的重要研究方向,展现出显著的临床应用价值和发展前景20。本研究采用从SVD中收集的语音样本作为实验语料库,通过语音信号处理与机器学习技术,构建了一种病理性嗓音分类器。

为确保局部信号特征的保留,采用小波包变换进行时频分析,从而实现对不同频率范围内特征参数的精确提取。此外,系统评估了小波基函数,并选用db3小波进行四级小波包分解(WPD)。本研究突破传统声学参数的局限,引入四种非线性动力学参数——近似熵、样本熵、模糊熵和排列熵,用于量化发声信号时间序列的复杂性,进而捕捉其内在的非线性成分15。采用XGBoost作为模式分类框架,并与支持向量机(SVM)进行比较,结果表明XGBoost具有更优的分类性能与有效性。

然而,由于主观因素和客观限制(例如时间限制)带来的局限性表明,该领域...

访问受限。请登录或开始试用以查看此内容。

披露

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者声明不存在任何竞争利益。

致谢

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本工作得到了江苏省 医院能力提升项目(JSPH-MC-2023-12)的支持。 作者谨此感谢南京航空航天大学经济与管理学院的李珊副教授,以及南京航空航天大学脑机智能技术教育部重点实验室的工作人员在方法学、数据分析和图表生成方面提供的指导。这些贡献保障了本研究的顺利推进。

访问受限。请登录或开始试用以查看此内容。

材料

本文使用的材料清单
姓名公司目录编号评论
MATLAB The MathWorksR2023a用于数值计算和算法原型设计的主要软件平台。
Python 软件Python 软件基金会Python 3.10本研究中全程使用的核心编程语言。
Saarbruecken 语音数据库,SVD萨尔兰大学语音学研究所Saarbrücken 语音数据库(SVD)一个公开可用的病理性与正常语音录音数据库,包含声带息肉等疾病患者以及健康对照者的元音持续发音和连续语音数据。根据其规定的访问条款,用于学术研究。

参考文献

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Byeon, H. The risk factors related to voice disorder in teachers: a systematic review and meta-analysis. Int J Environ Res Public Health. 16 (19), 3675(2019).
  2. Fu, D. H., et al. The prevalence and risk factors for 47796 teachers of Tianjin middle school elementary school and kindergartens. J Audiol Speech Pathol. 24 (6), 559-564 (2016).
  3. Han, Y., et al. Urumqi 11689 secondary school teachers of throat disease investigation. Lin Chuang Er Bi Yan Hou Tou Jing Wai Ke Za Zhi. 26 (7), 302-305 (2012).
  4. Xu, W. The pathway to standardization in the diagnosis and treatment of voice disorders. Zhonghua Er Bi Yan Hou Tou Jing Wai Ke Za Zhi. 58 (Z1), 92-98 (2023).
  5. Reghunathan, S., et al. Components of voice evaluation. Otolaryngol Clin North Am. 52 (4), 589-595 (2019).
  6. Ulozaite-Staniene, N., et al. Exploring the feasibility of the combination of acoustic voice quality index and glottal function index for voice pathology screening. Eur Arch Otorhinolaryngol. 276 (6), 1737-1745 (2019).
  7. Liu, B., et al. Acoustic character governing variation in normal, benign, and malignant voices. Folia Phoniatr Logop. 77 (2), 137-146 (2025).
  8. Zhang, F., et al. Nonlinear dynamic analysis and perturbation measurement used for discriminating pathological voices and their correlations with perceptual evaluation. J Voice. , (2024).
  9. Peng, X., et al. Voice disorder classification using convolutional neural network based on deep transfer learning. Sci Rep. 13 (1), 7264(2023).
  10. Syed, S. A., et al. Inter classifier comparison to detect voice pathologies. Math Biosci Eng. 18 (3), 2258-2273 (2021).
  11. Yuan, Z. N., et al. A predictive model for hospital death in cancer patients with acute pulmonary embolism using XGBoost machine learning and SHAP interpretation. Sci Rep. 15 (1), 18268(2025).
  12. Barry, W. J., Pütze, M. Saarbrucken voice database. , Available from: http://www.stimmdatenbank.coli.uni-saarland.de/ (2025).
  13. Yang, S. M., et al. Research on multi-source signal recognition algorithm based on wavelet packet analysis. Comput Simul. 41 (12), 418-423 (2024).
  14. Pincus, S. M. Approximate entropy as a measure of system complexity. Proc Natl Acad Sci U S A. 88 (6), 2297-2301 (1991).
  15. Richman, J. S., Moorman, J. R. Physiological time-series analysis using approximate entropy and sample entropy. Am J Physiol Heart Circ Physiol. 278 (6), H2039-H2049 (2000).
  16. Zadeh, L. A. Fuzzy sets. Inf Control. 8 (3), 338-353 (1965).
  17. Chen, W., et al. Characterization of surface EMG signal based on fuzzy entropy. IEEE Trans Neural Syst Rehabil Eng. 15 (2), 266-272 (2007).
  18. Bandt, C., Pompe, B. Permutation entropy: a natural complexity measure for time series. Phys Rev Lett. 88 (17), 174102(2002).
  19. Lopes, L. W., et al. Accuracy of acoustic analysis measurements in the evaluation of patients with different laryngeal diagnoses. J Voice. 31 (3), 382.e15-382.e26 (2017).
  20. Pham, T. D., et al. Diagnosis of pathological speech with streamlined features for long short-term memory learning. Comput Biol Med. 170, 107976(2024).

访问受限。请登录或开始试用以查看此内容。

重印与许可

申请许可以重复使用本 JoVE 文章的文本或图表

申请许可

标签

XGBoost ROC

相关文章