Page 227 - 《应用声学》2023年第3期
P. 227
第 42 卷 第 3 期 张书文等: 呼吸声分类技术研究及检测系统设计 665
集作为验证集,其余所有样本作为训练集,进行模 表 1 中数据可看出,基于 K 折交叉验证和 KNN 识
型的训练和评估;最后把 k 次评估指标的平均值作 别模型的准确率对该 50 人测试样本的识别准确率
为最终的评估指标。在后续的KNN 分类测试中,K 为94%,与四分类 K 折交叉验证中模型时最佳准确
折交叉验证的k 值选择为经典值 10。为了使采集数 率(k = 5) 93.5% 基本保持一致,因此该识别方法表
据更方便的划分,将采集的声频样本数据随机剔除 现出了较好的泛化能力,可以作为识别和分类异常
12 个,剔除后的声频样本数据 620 个。最终样本声 呼吸声的方法。
频数据包含正常呼吸声 160 个,支气管声 160 个,干
100.0
罗声150个,湿罗声150个。 99.0
98.0
KNN 分类测试中选取 KNN 的 k 值为 5,选取 97.0
最近 5 个临近对象,并采用 KD 树作为最近临近的 96.0
算法,然后根据这 5 个临近对象标记的平均值作为 юᆸဋ/% 95.0
94.0
预测分类的结果。经过K 折交叉验证之后可以得到 93.0
92.0
10组分类模型的准确率(图10)。该四分类模型的平 91.0
均准确率为89.84%,且当 k 值为5时,模型的识别效 90.0 1 2 3 4 5 6 7 8 9 10
果最好,其准确率为93.5%。 ᰎ n
图 11 四分类 10 折交叉验证准确率图
96.0
94.0 Fig. 11 The 10-fold cross validation accuracy of
92.0 two categories
90.0
юᆸဋ/% 88.0 Table 1 Test results
测试结果
表 1
86.0
84.0
种类 测试样
82.0 呼吸声种类 准确识别个数 正确率/%
编号 本个数
80.0
1 2 3 4 5 6 7 8 9 10 1 正常呼吸声 13 13 100
ᰎ n
2 支气管声 12 11 91.67
图 10 四分类 10 折交叉验证准确率图 3 湿罗声 17 16 94.18
Fig. 10 The 10-fold cross validation accuracy of 4 干罗声 13 12 92.31
four categories
将基于 KNN 识别方法的准确率与双谱法 [16] 、
为探究 KNN 模型识别准确率是否会与分类的 SVM 、小波 +LDA [17] 、功率谱法及线性预测法 [3]
[4]
类型数量有关系,另取正常呼吸声和支气管声音进 进行呼吸声识别的结果进行比较,其结果如表 2 所
行对比实验,对以上相同的样本数据进行同样的处 示。通过对比几种识别方法的正确率可得,在这几
理,其测试结果如图11所示。 种方法中,KNN 识别正确率次于小波 +LDA 方法
从图 11 测试结果可以看出二分类模型的平均 的识别正确率,但高于其他呼吸声的识别方法。小
准确率为 96.56%,当 K 为 2 时,模型的识别效果最 波 +LDA 方法虽然准确率较高,但其时间复杂度
好,可以达到100%。通过对比测试结果图10和图 11 O(k × n) 却会随着其迭代次数而大幅增加,因此其
可以看出,当呼吸分类种类减少时,模型的分类准确 迭代收敛速度低于KNN的时间复杂度O(n)。综上,
率会大幅度上升,从四分类模型平均准确率 89.84% 虽然 KNN 识别正确率不如小波 +LDA 方法,但是
上升到二分类模型平均准确率96.56%。 其计算过程及处理速度却远远快于小波 +LDA 方
为了验证由 KNN 训练得到的模型是否具有优 法,同时KNN也能保持较高的识别率。
良的泛化能力,使用呼吸声检测装置采集了 50 名 综合来看,通过该方法检测与分类的正确率会
包含呼吸声异常病人 (非测试集和验证集中被采集 随着种类的细分程度而改变,但其正确率均在 85%
的人员) 的呼吸声,并由上述所得 k 为5 的四分类模 以上,且比功率谱法及线性预测方法识别分类的准
型进行呼吸声分类识别,测试结果如表 1 所示。从 确率高,因此具有较高的可行性和一致性。此外该