文献速递:深度学习--深度学习方法用于帕金森病的脑电图诊断

本文主要是介绍文献速递:深度学习--深度学习方法用于帕金森病的脑电图诊断,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文献速递:深度学习–深度学习方法用于帕金森病的脑电图诊断

01

文献速递介绍

人类大脑在出生时含有最多的神经细胞,也称为神经元。这些神经细胞无法像我们身体的其他细胞那样自我修复。随着年龄的增长,神经元逐渐死亡,因此变得无法替代。PD(帕金森病)通常随着神经元的死亡而发生。神经元产生一种称为多巴胺的化学物质,其主要功能是控制身体的运动。因此,随着神经元的死亡,大脑中产生的多巴胺量减少。结果,这种神经系统状况开始非常缓慢地发生,并影响大脑中的各种通信方式。已观察到大约50岁或更老的人被诊断出患有PD。这种疾病的主要症状包括不稳定的姿势、肌肉僵硬、动作缓慢、震颤、平衡失调和精细运动技能受损。根据世界卫生组织提供的统计数据,这种疾病已经影响了近1000万人。在未观察到明显的运动或非运动症状时,诊断这种疾病存在困难。因此,计算机辅助诊断(CAD)系统可能有助于早期检测任何异常。CAD系统是一种自动化检测系统,可以使用脑电图(EEG)信号客观地诊断PD。借助EEG,可以轻松识别大脑皮层和皮层下部分的功能。神经系统疾病如癫痫、精神分裂症、阿尔茨海默症也可以使用EEG信号确定。因此,在这项研究中,我们使用EEG信号开发了用于检测PD的CAD系统。

根据先前的研究,EEG信号是复杂和非线性的,因此许多线性特征提取方法无法准确描述这些信号。当EEG信号显示复杂性时,观察到PD的加重。这是因为EEG信号中存在非线性成分。因此,可以注意到,使用非线性特征提取技术在正常和PD EEG信号的区分中将是有用的。

然而,近年来在模式识别和自然语言处理的多个领域成功实施了机器学习的一个分支——深度学习。卷积神经网络(CNN)是研究者采用的最流行的深度学习形式之一。它允许通过数据训练,无需人工干预即可学习高级特征,不同于大多数传统的机器学习算法。据我们所知,这是第一篇利用深度CNN实施PD CAD系统的论文。我们实现了一个新颖的十三层深CNN来表征两个类别(PD和正常)。图1展示了所提出网络的架构。网络及每一层的详细信息在后续章节中介绍。

Title

题目

A deep learning approach for Parkinson’s disease diagnosis from EEG signals

深度学习方法用于帕金森病的脑电图诊断

Abstract

摘要

An automated detection system for Parkinson’s disease (PD) employing the convolutional neural network (CNN) is proposed in this study. PD is characterized by the gradual degradation of motor function in the brain. Since it is related to the brain abnormality, electroencephalogram (EEG) signals are usually considered for the early diagnosis. In this work, we have used the EEG signals of twenty PD and twenty normal subjects in this study. A thirteen-layer CNN architecture which can overcome the need for the conventional feature representation stages is implemented. The developed model has achieved a promising performance of 88.25% accuracy, 84.71% sensitivity, and 91.77% specificity. The developed

classification model is ready to be used on large population before installation of clinical usage.

本研究提出了一种使用卷积神经网络(CNN)的帕金森病(PD)自动检测系统。PD的特点是大脑运动功能逐渐退化。由于它与大脑异常有关,因此通常考虑使用脑电图(EEG)信号进行早期诊断。在这项工作中,我们使用了二十名PD患者和二十名正常受试者的EEG信号进行研究。实现了一种十三层的CNN架构,它可以克服传统特征表示阶段的需求。开发的模型达到了88.25%的准确率、84.71%的敏感性和91.77%的特异性的有希望的性能。开发的分类模型已经准备好在临床使用前在大型人群中使用。

**Results
**
结果

All the EEG signals were subjected to the proposed CNNmodel. The CNN network was designed in Python lan guage using Keras and was executed on a computer with a system configuration of two Intel Xeon 2.40 GHz (E5620)processors with a 24 GB random access memory.

The evaluation parameters, namely the accuracy, sen**sitivity, and specificity, were used. The best diagnostic performance is achieved wit the learning rate of 0.0001. The proposed CNN model yielded an accuracy of 88.25%, sensitivity, and specificity of 84.71% and 91.77%, respectively. Figures 3 and 4 show the performance of the model with and without dropout layer, respectively. It can be noted that without the dropout layer, there is a possi bility of overfitting of data. In Fig. 3, the accuracy of the training set does not differ much from the accuracy of the validation set, whereas, in Fig. 4, the accuracy of the val idation set performs a lot worse as compared to the training data.

Figure 5 shows the confusion matrix of our results. It can be observed that 11.34% of normal subjects are mis classified as PD and 11.51% of the PD EEG signals are wrongly categorized into the normal class.

所有EEG信号都被应用到了所提出的CNN模型中。该CNN网络是用Python语言通过Keras设计的,并在一台配置有两个Intel Xeon 2.40 GHz(E5620)处理器和24 GB随机访问内存的计算机上执行。

评估参数,即准确率、敏感性和特异性被使用。最佳的诊断性能是在学习率为0.0001时达到的。所提出的CNN模型取得了88.25%的准确率,以及84.71%的敏感性和91.77%的特异性。图3和图4分别展示了模型带有和不带有dropout层的性能。可以注意到,没有dropout层时,数据过拟合的可能性存在。在图3中,训练集的准确率与验证集的准确率相差不大,而在图4中,验证集的准确率与训练数据相比表现得更差。

图5展示了我们结果的混淆矩阵。可以观察到,11.34%的正常受试者被误分类为PD,而11.51%的PD EEG信号被错误地归类为正常类。

Conclusion

结论

An automated thirteen-layer CNN model to diagnose PD using EEG signals is proposed. Furthermore, this is the first study which implemented the deep learning concept to diagnose the PD using EEG signals. We have obtained an accuracy of 88.25%, sensitivity of 84.71%, and specificity of 91.77% despite the limited number of subjects. Based on the positive performances achieved, the presented model may be able to serve as a trusted and long-term tool to assist clinicians in PD diagnoses. In the future, authors propose to test the developed model with a huge number of subjects and also aim to detect the early stage of PD.

提出了一种自动化的十三层CNN模型,用于利用EEG信号诊断PD。此外,这是第一项将深度学习概念应用于使用EEG信号诊断PD的研究。尽管受试者数量有限,我们仍获得了88.25%的准确率、84.71%的敏感性和91.77%的特异性。基于所取得的积极表现,所展示的模型可能能够作为一个可信赖的和长期的工具,以协助临床医生诊断PD。未来,作者提议使用大量受试者测试开发的模型,并且还旨在检测PD的早期阶段。

Figure

图片

Fig. 1 The proposed CNN architecture

图 1 所提出的CNN架构

图片

Fig. 2 A sample of a normal and b PD EEG signal

图 2 a 正常和 b PD EEG信号的样本

图片

Fig. 3 Accuracy versus different epoch plot

图 3 准确率与不同轮次的关系图

图片

Fig. 4 Accuracy versus different epoch without dropout layer plot

图 4 没有dropout层时准确率与不同轮次的关系图

图片

Fig. 5 Confusion matrix of the proposed method

图 5 所提出方法的混淆矩阵

图片

Fig. 6 Web-based CAD system to diagnose PD

图 6 基于网络的CAD系统用于诊断PD

Table

图片

Table 1 Details of parameters belonging to different layers of the developed CNN model

表 1 开发的CNN模型不同层的参数详情

图片

Table 2 The summary of CADsystem developed using EEG signals to diagnose PD

表 2 使用EEG信号开发的CAD系统诊断PD的总结

这篇关于文献速递:深度学习--深度学习方法用于帕金森病的脑电图诊断的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/752237

相关文章

Python判断for循环最后一次的6种方法

《Python判断for循环最后一次的6种方法》在Python中,通常我们不会直接判断for循环是否正在执行最后一次迭代,因为Python的for循环是基于可迭代对象的,它不知道也不关心迭代的内部状态... 目录1.使用enuhttp://www.chinasem.cnmerate()和len()来判断for

Java循环创建对象内存溢出的解决方法

《Java循环创建对象内存溢出的解决方法》在Java中,如果在循环中不当地创建大量对象而不及时释放内存,很容易导致内存溢出(OutOfMemoryError),所以本文给大家介绍了Java循环创建对象... 目录问题1. 解决方案2. 示例代码2.1 原始版本(可能导致内存溢出)2.2 修改后的版本问题在

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

Java中Object类的常用方法小结

《Java中Object类的常用方法小结》JavaObject类是所有类的父类,位于java.lang包中,本文为大家整理了一些Object类的常用方法,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. public boolean equals(Object obj)2. public int ha

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI