信号处理--卷积残差网络实现单通道脑电的睡眠分期监测

目录

背景

亮点

环境配置

数据

方法

结果

代码获取

参考文献


背景

人类大约花三分之一的时间睡觉,这使得监视睡眠成为幸福感的组成部分。 在本文中,提出了用于端到端睡眠阶段的34层深残留的Convnet架构

亮点

使用深度1D CNN残差架构,用于端到端分类, 可以解决训练更深的CNN模型引起的消失梯度问题。 

环境配置

python; tensorflow

数据

Sleep-EDF

方法

使用三十层卷积神经残差网络,实现睡眠分期检测。

主要代码:

 

def res_first(input_tensor, filters=(64,64), kernel_size=16, dropout_rate=0.2, bias=False, maxnorm=4., **kwargs):eps = 1.1e-5nb_filter1, nb_filter2 = filtersx = Conv1D(filters=nb_filter1, kernel_initializer=initializers.he_normal(seed=1), kernel_size=kernel_size,padding='same', use_bias=bias, kernel_constraint=max_norm(maxnorm))(input_tensor)  ##x = BatchNormalization(epsilon=eps, axis=-1)(x)x = Scale(axis=-1)(x)x = Activation('relu')(x)x = Dropout(rate=dropout_rate, seed=1)(x)x = Conv1D(filters=nb_filter2, kernel_initializer=initializers.he_normal(seed=1), kernel_size=kernel_size,padding='same', use_bias=bias, kernel_constraint=max_norm(maxnorm))(x)  ##x = add([x, input_tensor])return xdef MyModel(eeg_length=3000, kernel_size=16, bias=False, maxnorm=4., **kwargs):'''Top model for the CNNAdd details of module in docstring'''eps = 1.1e-5#inputs = K.placeholder(shape=(batch_size, eeg_length,1))#x = Input(dtype= 'float32', shape=(eeg_length,1))EEG_input = Input(shape=(eeg_length,1))x = Conv1D(filters=64, kernel_size=kernel_size, kernel_initializer=initializers.he_normal(seed=1), padding='same',use_bias=bias, kernel_constraint=max_norm(maxnorm))(EEG_input)  ##x = BatchNormalization(epsilon=eps, axis=-1)(x)x = Scale(axis=-1)(x)x = Activation('relu')(x)  #  x = res_first(x, filters=[64, 64], kernel_size=kernel_size)x = res_subsam(x, filters=[64, 64], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[64, 64], kernel_size=kernel_size)x = res_subsam(x, filters=[64, 128], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[128, 128], kernel_size=kernel_size)x = res_subsam(x, filters=[128, 128], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[128, 128], kernel_size=kernel_size)x = res_subsam(x, filters=[128, 192], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[192, 192], kernel_size=kernel_size)x = res_subsam(x, filters=[192, 192], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[192, 192], kernel_size=kernel_size)x = res_subsam(x, filters=[192, 256], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[256, 256], kernel_size=kernel_size)x = res_subsam(x, filters=[256, 256], kernel_size=kernel_size, subsam=2)x = res_nosub(x, filters=[256, 256], kernel_size=kernel_size)x = res_subsam(x, filters=[256, 512], kernel_size=kernel_size, subsam=2)x = BatchNormalization(epsilon=eps, axis=-1)(x)x = Scale(axis=-1)(x)x = Activation('relu')(x)x = Model(EEG_input,x)# tf.keras.backend.eval(x)return x

 

结果

所有被试数据按照7:3的比例划分为训练和测试集数据,在单个被试在5分类的任务上,准确率达到91.4%,在6分类任务上,准确率达到90.1%。

代码获取

私信后台 S2

参考文献

L. Cen, Z. L. Yu, Y. Tang, W. Shi, T. Kluge, and W. Ser, “Deep learning method for sleep stage classification,” inInt. Conf. Neural Information Processing, 2017, pp. 796–802

M. Mourtazaev, B. Kemp, A. Zwinderman, and H. Kamphuisen, “Age and gender affect different characteristics of slow waves in the sleep eeg,”Sleep, vol. 18, no. 7, pp. 557–564, 1995.

K. He, X. Zhang, S. Ren, and J. Sun, “Identity mappings in deep residual networks,” inProc. ECCV, 2016, pp. 630–645.

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序云开发教程——墨刀原型工具入门(素材面板)

引言 作为一个小白,小北要怎么在短时间内快速学会微信小程序原型设计? “时间紧,任务重”,这意味着学习时必须把握微信小程序原型设计中的重点、难点,而非面面俱到。 要在短时间内理解、掌握一个工具的使用&#xf…

微信小程序购物/超市/餐饮/酒店商城开发搭建过程和需求

1. 商城开发的基本框架 a. 用户界面(Frontend) 页面设计:包括首页、商品列表、商品详情、购物车、下单界面、用户中心等。交云设计:如何让用户操作更加流畅,包括搜索、筛选、排序等功能的实现。响应式设计&#xff1…

web项目的搭建

使用Webstorm并创建Next.js文件 1、配置nodejs环境、安装webstorm【配置node.js可以使用nvm去管理nodejs的版本】 2、需要破解webstorm,可能会导致原本的idea失效,注册码过期 3、taobao的npm过期,导致npm is sass执行不成功,需…

C++面试题和笔试题(四)

一、intx[6][4],(*p)[4];px;则*(p2)指向哪里? A X[0][1]B X[0][2]C X[1][0]D X[2][0] 官方解释: D int x[6][4], (*p)[4]; p x; 在这里,x 是一个二维数组,它有6行和4列。p 是一个指向具有4个整数的数组的指针。 当你执行…

Let’s Move Sui , 一起来学习吧

Let’s Move Sui是一个全新的交互式学习平台,通过SuiFrens的帮助教您如何在Sui上构建。设计供新手和经验丰富的开发者使用,Let’s Move Sui提供了一次非凡的Sui开发之旅,利用了Move在Sui上的独特之处,从基于对象的数据模型的基础知…

Acer宏碁非凡Swift SFG16-71工厂模式原厂Win11系统,预装OEM系统恢复开箱状态

宏基笔记本电脑SFG16-71原装出厂Windows11系统安装工厂包下载,带恢复重置功能 链接:https://pan.baidu.com/s/1JK02kBbwKG_cIBNlEOzrOw?pwdzdfm 提取码:zdfm 原装工厂包系统自带所有驱动、Office办公软件、出厂时自带主题壁纸图片、系统…

在【IntelliJ IDEA】中配置【Tomcat】【2023版】【中文】【图文详解】

作为一款功能强大的集成开发环境(IDE),IntelliJ IDEA为Web服务器提供了卓越的支持,从而极大地简化了程序员在Web开发过程中的工作流程。学习Java Web开发实质上就是掌握如何创造动态Web资源,这些资源在完成开发后&…

Linux - 安装 nacos(详细教程)

目录 一、简介二、安装前准备三、下载与安装四、基本配置五、单机模式 一、简介 官网:https://nacos.io/ GitHub:https://github.com/alibaba/nacos Nacos 是阿里巴巴推出的一个新开源项目,它主要是一个更易于构建云原生应用的动态服务发现…

离线数仓(六)【ODS 层开发】

前言 今天开始正式的数仓搭建,所谓 ODS 层的工作就是把我们各种数据源采集发送来的各种类型的数据(Json、tsv类型)映射到 Hive 表中,映射时可以进行一些简单的处理,比如简单的数据清洗,舍弃一些没有必要的字…

金三银四!一个年薪160W+的就业方向!

前言 随着越来越多的科技大厂加入鸿蒙生态建设,鸿蒙开发人才正在市场上被争抢。资深工程师开出的年薪高达近百万,架构师更是高至160万,真可谓“鸿蒙猿年薪超百万”。如何抓住新技术红利,尽早上车?你会成为下一个鸿蒙开…

C语言——详解字符函数和字符串函数(一)

Hi,铁子们好呀!今天博主来给大家更一篇C语言的字符函数和字符串函数~ 具体讲的内容如下: 文章目录 🎆1.字符分类函数💯💯⏩1.1 什么是字符分类函数的?💯💯⏩1.2 字符函数的类型有哪…

一文讲懂 C++ 类和对象(1)

0. 面向过程程序设计和面向对象程序设计的区别 面向对象程序设计往往关注的是怎么去做,是将解决问题的步骤分析出来,然后用函数把步骤一步一步实现,然后再依次调用就可以了。而面向对象是将构成问题的事物,分解成若干个对象&…

基于springboot+vue实现汽车改装方案网站系统项目【项目源码+论文说明】

基于springboot实现汽车改装方案网站系统演示 摘要 本文主要讲述了基于SpringBootMySql开发技术开发的汽车改装方案网站的设计与实现。这里的汽车改装方案网站是通过一个平台使所有的汽车爱好者们可以不用出门就可以体验到专业的汽车改装方案设计服务。现实生活中如果需要进行…

牛客-DP38 【模板】二维差分

【模板】二维差分_牛客题霸_牛客网 (nowcoder.com) b站有视频:讲解前缀和和差分 二维差分_哔哩哔哩_bilibili 注意:差分的过程叫差分,而不仅仅是d[]这个数组,其他数组经行了差分的操作,就也是差分啊!&…

springcloud第3季 consul服务发现注册,配置中心2

一 consul的作用 1.1 为何使用注册中心 为何要用注册中心? 1.A服务调用B服务,使用ip和端口,如果B服务的ip或者端口发生变化,服务A需要进行改动; 2.如果在分布式集群中,部署多个服务B,多个服…

JAVA基础—集合详细解析

1.JAVA中的4种集合类型 Set:无序、不可重复的集合List:有序、重复的集合Queue: 队列Map:映射关系 首先,JAVA的集合类主要有两个接口派生而出:Collection和Map。Collection和Map就是JAVA集合的根接口。所以后…

Kubernetes弃用Dockershim,转向Containerd:影响及如何应对

Kubernetes1.24版本发布时,正式宣布弃用Dockershim,转向Containerd作为默认的容器运行环境。Kubernetes以CRI(Container Runtime Interface)容器运行时接口制定接入准则,用户可以使用Containerd、CRI-O、CRI- Dockerd及其他容器运行时作为Kub…

在Docker上传我们自己的镜像(以springboot项目为例)

首先确定好在我们的centOS服务器上已经安装并配置好docker 配置自己的springboot镜像并运行 获取springboot的jar包 maven clean--》mavenue package --》复制target目录下生成的jar包 在服务器选择一个文件夹上传jar包,我这里选用的文件夹叫做/opt/dockertest…

【话题】2024年AI辅助研发趋势,有那些应用领域

大家好,我是全栈小5,欢迎阅读文章! 此篇是【话题达人】系列文章,这一次的话题是《2024年AI辅助研发趋势》 目录 背景概念实践医药领域汽车设计领域展望未来文章推荐 背景 随着人工智能技术的持续发展与突破,2024年AI辅…

使用电脑的时候最怕有英文?微信的这个功能一定要用起来!

相信各位小伙伴对微信都不陌生。我们平常使用微信的大部分时间都是聊天、朋友圈、视频号等。 如果有人给你发来一张全英文图片的截图,你会咋整? 请人翻译?这个显然不需要。 一个个字母手打上去?这字数少了还行,但多了…