基于CNN和双向gru的心跳分类系统

CNN and Bidirectional GRU-Based Heartbeat Sound Classification Architecture for Elderly People是发布在2023 MDPI Mathematics上的论文,提出了基于卷积神经网络和双向门控循环单元(CNN + BiGRU)注意力的心跳声分类,论文不仅显示了模型还构建了完整的系统。

以前的研究

论文总结了以前的研究

数据集和预处理

应用层显示了应用区域,包括医院、政府办公室、救护车、养老院和体育馆。

数据层,处理实时数据采集,如数字或模拟听诊器,机电薄膜(EMFi)传感器,智能手机。

智能层是包含深度学习模型的层。

CirCor数据集

使用CirCor数据集,总共从942名患者中获得3007个录音,包含499个杂音和2508个正常录音。为了解决这个类不平衡问题,论文进行了欠采样。对于欠采样,杂音类使用489个录音,正常类使用489个随机选择的录音。然后将该数据集按70:30的比例分为训练数据和测试数据。

数据增强

时间拉伸:音高移动和音频移动使得总的训练数据变成了原来684个片段大小的3倍。

调高音高:在不改变节奏的情况下,调高或调低音高。半音在-4到+4的范围内随机选择。应用此转换的概率设为0.5。

音频移位:用于向前或向后移动音频样本,有或没有任何翻转。

预处理

数据预处理包括对给定音频信号进行滤波、归一化和下采样。

对给定的音频数据集进行滤波,可以去除录制过程中由于各种环境条件而产生的噪声。

归一化是通过归一化+1到-1范围内的每一类心跳声音来改进训练过程。

信号的下采样率为22050,频率范围为30至1200 Hz。

CNN + BiGRU

作者试图直接在原始时间序列数据上进行训练,但是这导致梯度消失问题和非常长的训练时间。另一种选择是使用色谱图[56],这也是一种与MFCC类似的特征提取方法,但会导致训练不稳定。所以作者最终决定使用MFCC。

CNN + BiGRU模型

由CNN + BiGRU组成的深度学习模型,并使用注意力模型对音频样本进行推理。

在通过GRU单元对时间序列数据进行处理之前,对二维卷积层进行批处理归一化和概率为0.3的Dropout,防止过拟合和泄漏

CNN层期望提取关键的MFCC系数,并以时间序列数据的形式提供给BiGRU层。

BiGRU学习重要的特征,并通过Dropout(防止过拟合)将它们传递给另一个BiGRU层,以提供从mfc中提取的最终特征给前馈神经网络(FFNN)进行预测。FFNN的第一层使用tanh激活,而第二层使用sigmoid激活,因为它是一个二元分类问题。

结果

方法性能对比

采用注意模型的CNN+BiGRU整体验证精度优于其他模型。

与其他模型相比,所提出的体系结构具有更少的训练计算时间复杂度。

消融研究

Adam优化器产生最佳结果。

用MFCC训练非常稳定,收敛速度很快。

数据增强在很大程度上提高了验证的准确性,并有助于对抗过拟合。

论文地址:https://avoid.overfit.cn/post/91ab2a0758e24fe98158f47cabff2468

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/277768.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

车联网的安全风险与应对措施

安全风险 1、恶意软件 攻击者可以通过入侵厂商或供应商网络,用恶意软件(如病毒、木马、勒索软件等)感染车联网系统组件,从而获得对车辆的控制权或窃取敏感信息。例如,一名安全研究人员成功入侵了特斯拉(T…

Vue使用Element table表格格式化GMT时间为Shanghai时间

Vue使用Element表格格式化GMT时间为Shanghai时间 说明 阿里巴巴java开发规范规定,数据库必备gmt_create、gmt_modified字段,使用的是GMT时间,在中国使用必然要转换我中国时间。 在阿里巴巴的Java开发规范中,要求每个表都必备三…

【C语言深度剖析——第一节(关键字1)】《C语言深度解剖》+蛋哥分析+个人理解

你未曾见过火光,难怪甘愿漂泊寒夜 本文由睡觉待开机原创,未经允许不得转载。 本内容在csdn网站首发 欢迎各位点赞—评论—收藏 如果存在不足之处请评论留言,共同进步! 首先简单介绍一下《C语言深度解剖》: 全书特点&am…

一起玩儿物联网人工智能小车(ESP32)——19. MicroPython集成开发环境Thonny的安装

摘要:本文主要介绍MicroPython集成开发环境Thonny的安装方法和基本的使用 Thonny是一个开源的、轻量级的MicroPython集成开发环境,它非常的小巧和精简。对于我们日常ESP32的开发来说,已经完全满足要求了。这个开发软件支持windows、Linux和Ma…

聚焦企业未来新发展,同花顺对话麒麟信安杨涛董事长

打好经济增长主动仗 聚焦企业未来新发展 同花顺“对话湖南上市公司高管系列活动” 本期走进麒麟信安 对话麒麟信安杨涛董事长 畅谈国产操作系统领军企业的创新发展之路 并就麒麟信安产品应用布局及 未来发展规划等方面进行深入交流 麒麟信安-成片1改20231218

统一入口,全面提升工作效率,WorkPlus超级APP引领数字化办公新潮流

在数字化办公的时代,企业往往面临着多个应用管理的挑战。员工需要在众多应用之间切换,记忆不同的登录凭证,这不仅分散了注意力,还降低了工作效率。为了应对这一问题,企业需要一站式的解决方案,通过整合繁杂…

盘点2023 | 校企合作结硕果,产教融合谱新篇

回首2023,电巢科技与众多高校建立了紧密的合作关系,以实习就业为导向,帮助学生打开技术和产业视野,提前做好职业发展规划,按照电子行业的企业用人标准,帮助高校进行“人才前置化”培养,并且持续…

4.Python数据序列

Python数据序列 一、作业回顾 1、面试题 有一物,不知其数,三三数之余二,五五数之余三,七七数之余二,问物几何? 白话文:有一个数字,不知道具体是多少,用3去除剩2,用5去除剩3,用7去除剩2个,问这个数是多少?1 ~ 100以内的整数 while循环: # 初始化计数器 i = …

阿里云PolarDB数据库费用价格表

阿里云数据库PolarDB租用价格表,云数据库PolarDB MySQL版2核4GB(通用)、2个节点、60 GB存储空间55元5天,云数据库 PolarDB 分布式版标准版2核16G(通用)57.6元3天,阿里云百科aliyunbaike.com分享…

人工智能的基础-深度学习

什么是深度学习? 深度学习是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近于人工智能。 深度学习是机器学习领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能。 深度学习是学习样本数据的内在规律和表示层次&…

uni-app tabbar组件

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…

Android移动端超分辨率调研(未完成 目前自用)

作用 图片加载是目前几乎所有的APP都具备的基础能力,在节省服务商的传输带宽之外,也可以降低用户消费端流量的消耗,提升用户的加载速度。帮助每一个产品用更低的成本达到更好的图片加载效果。 效果 另一方面 用TensorFlow实现的图像极度压…

【Python】pip下载源修改

运行 pip install 命令 会从网站上下载指定的python包,默认是从 https://files.pythonhosted.org/ 网站上下载。 https://files.pythonhosted.org 这是个国外的网站,遇到网络情况不好的时候,可能会下载失败,我们可以通过命令&am…

分布式系统架构设计之分布式系统架构演进和版本管理

在分布式系统的生命周期中,架构演进和版本管理是很重要的两个环节。本部分会介绍分布式系统架构演进的原则、策略以及版本管理的最佳实践,以帮助研发团队更好地应对需求变化、技术发展和系统升级。 架构演进 演进原则 渐进式演进 采用渐进式演进的原…

vue本地缓存搜索记录(最多4条)

核心代码 //保存到搜索历史,最多存四个 item.name和item.code格式为:塞力斯000001var history uni.getStorageSync(history) || [];console.log("history", history)var index history.findIndex((items) > {return item.name items.nam…

Goby 漏洞发布| QNAP NAS authLogin.cgi 命令执行漏洞(CVE-2017-6361)

漏洞名称:QNAP NAS authLogin.cgi 命令执行漏洞(CVE-2017-6361) English Name:QNAP NAS authLogin.cgi command execution vulnerability (CVE-2017-6361) CVSS core: 9.8 影响资产数: 2637547 漏洞描述&#xff1…

分享72个Python爬虫源码总有一个是你想要的

分享72个Python爬虫源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 链接:https://pan.baidu.com/s/1v2P4l5R6KT2Ul-oe2SF8cw?pwd6666 提取码:6666 项目名称 10 photo websites…

如何在Docker环境下安装火狐浏览器并结合内网穿透工具实现公网访问

文章目录 1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox Firefox是一款免费开源的网页浏览器,由Mozilla基金会开发和维护。它是第一个成功挑战微软Internet Explorer浏…

【C++入门(一)】:详解C++语言的发展及其重要性

🎥 屿小夏 : 个人主页 🔥个人专栏 : C入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 文章目录 🌤️什么是C🌤️C的发展史🌤️C的重要性☁️语言的广泛度☁️C的领域⭐…

机器学习之K-means聚类

概念 K-means是一种常用的机器学习算法,用于聚类分析。聚类是一种无监督学习方法,它试图将数据集中的样本划分为具有相似特征的组(簇)。K-means算法的目标是将数据集划分为K个簇,其中每个样本属于与其最近的簇中心。 以下是K-means算法的基本步骤: 选择簇的数量(K值)…