基于卷积神经网络的心电分类算法及高能效加速器架构研究
发布时间:2021-06-09 20:40
心脏疾病严重威胁着人类健康,由于多数心脏疾病具有间歇发作的特点且发作频率较低,临床上长时心电图(ECG,electrocardiogram)分析已经成为检测心脏疾病的重要手段。随着智能移动终端的普及以及人工智能的发展,利用移动终端对ECG进行实时自动分类成为可能。本文以智能移动终端为载体,分别针对病人间通用(inter-patient)和特定病人专用(patient-specific)的ECG实时分类场景,提出了基于卷积神经网络(CNN,Convolutional Neural Network)的高性能分类算法,重点解决数据预处理复杂度较高、异常心律检测率偏低等问题。考虑到CNN的计算量及计算能耗普遍偏大,本文进一步研究并提出了一种CNN加速器架构,有效地提升了算法运行性能并降低了功耗。为契合智能移动终端的多应用场景,提出的加速器架构同时支持对多种通用CNN模型进行加速。本文的主要研究内容及其特点如下。1.基于特征合成输入和多分辨率神经网络的ECG分类算法研究。针对interpatient心跳分类问题,提出了一种基于CNN的利用空洞卷积实现多重分辨率的分类算法。该方法将ECG形态特征、...
【文章来源】:浙江大学浙江省 211工程院校 985工程院校 教育部直属院校
【文章页数】:136 页
【学位级别】:博士
【部分图文】:
基于信号处理技术的心跳分类算法流程图
浙江大学博士学位论文绪论15图1-5各存储层次访问相对能耗[101]1.4.4专用指令集一些加速器架构通过设计特定的运算单元实现对卷积等运算的加速,这类加速器虽能对特定神经网络实现加速功能,但软件兼容性较低,无法应对网络规模和架构的变化或需要进行更复杂的软硬件适配工作。而通用指令集虽然有足够的灵活性,但在执行CNN运算时代码密度较低且能耗更高[119],因此一些研究者[119]-[121]通过设计专用指令集(DISA,DedicatedInstructionSetArchitecture)和基于指令集的加速器架构实现兼顾软件设计灵活性和硬件能效的目的。CNN加速器架构专用指令集按照指令特点可以分为基于层计算的指令集(LBISA,Layer-basedISA)和基于算子计算的指令集(OBISA,Operator-basedISA)。LBISA以CNN中层为计算单位,一条指令可以控制一个完整层的运算。LBISA通常以层的类型定义指令类型,如Chen[119]等人提出的CNN专用指令集包括卷积指令、激活指令、池化指令和其他通用指令等几种指令类型。OBISA则以CNN中涉及的运算为计算单位,一条指令可以完成张量、向量或标量间的乘或加运算。OBISA通常以运算类型定义指令类型,如Liu[120]等人提出的Cambricon指令集包括计算指令,逻辑指令,数据传输指令等指令类型,计算类指令又包括矩阵、向量和标量等几种指令。此外,Moons[121]等人提出的CNN定制指令集同样基于OBISA。1.4.5加速器计算平台目前卷积神经网络加速器主要基于现场可编程门阵列(FPGA,Field-ProgrammableGateArray)[122]-[124]和专用集成电路(ASIC,ApplicationSpecific
浙江大学博士学位论文基于特征合成输入和多分辨率神经网络的ECG分类算法研究222.3.1信号预处理与输入特征合成2.3.1.1信号预处理ECG信号的预处理主要是从原始心电信号中提取出心跳信号片段,并对此片段进行规范化。为获得规范化的心跳信号片段,ECG信号预处理共包含三个环节:信号截娶片段缩放和基线校准。截取心跳信号片段首先需确定心跳中R峰位置,由于目前已有许多R峰检测算法[128]-[132],且已能取得超过99%的检查准确率,因此本文不再进行专门的R峰检测,而是直接使用数据库中标注的R峰位置代替实际应用中的检测环节。目前常用的信号截取方法为从当前心律的R峰前T1时间固定截取到R峰后T2时间。这种固定截取方法能很好的满足CNN网络对固定输入长度的需求,但由于个体差异以及运动状态等的影响,不同样本心率变化区间较大[21],较长的心跳在采用此类固定截取方法时会不可避免丢失部分形态特征,而较短的心跳则会导致引入附近心跳的信息。不同类型形态特征会导致CNN网络学习和提取深度特征的困难,且一旦引入附近心跳的关键特征则极易造成对分类的干扰。图2-2展示了此问题的一个示例。SVEB的P波叠加在了N节律的T波上,这导致两个QRS复合波之间只存在一个波峰。由于N节律的P波到QRS复合波的信号区间与SVEB的叠加波(Superi)到QRS复合波信号区间的形态具有高度的相似性,所以使用固定长度的分割方法会导致一部分N和SVEB样本很难被神经网络区分。图2-2定长分割与动态分割
本文编号:3221279
【文章来源】:浙江大学浙江省 211工程院校 985工程院校 教育部直属院校
【文章页数】:136 页
【学位级别】:博士
【部分图文】:
基于信号处理技术的心跳分类算法流程图
浙江大学博士学位论文绪论15图1-5各存储层次访问相对能耗[101]1.4.4专用指令集一些加速器架构通过设计特定的运算单元实现对卷积等运算的加速,这类加速器虽能对特定神经网络实现加速功能,但软件兼容性较低,无法应对网络规模和架构的变化或需要进行更复杂的软硬件适配工作。而通用指令集虽然有足够的灵活性,但在执行CNN运算时代码密度较低且能耗更高[119],因此一些研究者[119]-[121]通过设计专用指令集(DISA,DedicatedInstructionSetArchitecture)和基于指令集的加速器架构实现兼顾软件设计灵活性和硬件能效的目的。CNN加速器架构专用指令集按照指令特点可以分为基于层计算的指令集(LBISA,Layer-basedISA)和基于算子计算的指令集(OBISA,Operator-basedISA)。LBISA以CNN中层为计算单位,一条指令可以控制一个完整层的运算。LBISA通常以层的类型定义指令类型,如Chen[119]等人提出的CNN专用指令集包括卷积指令、激活指令、池化指令和其他通用指令等几种指令类型。OBISA则以CNN中涉及的运算为计算单位,一条指令可以完成张量、向量或标量间的乘或加运算。OBISA通常以运算类型定义指令类型,如Liu[120]等人提出的Cambricon指令集包括计算指令,逻辑指令,数据传输指令等指令类型,计算类指令又包括矩阵、向量和标量等几种指令。此外,Moons[121]等人提出的CNN定制指令集同样基于OBISA。1.4.5加速器计算平台目前卷积神经网络加速器主要基于现场可编程门阵列(FPGA,Field-ProgrammableGateArray)[122]-[124]和专用集成电路(ASIC,ApplicationSpecific
浙江大学博士学位论文基于特征合成输入和多分辨率神经网络的ECG分类算法研究222.3.1信号预处理与输入特征合成2.3.1.1信号预处理ECG信号的预处理主要是从原始心电信号中提取出心跳信号片段,并对此片段进行规范化。为获得规范化的心跳信号片段,ECG信号预处理共包含三个环节:信号截娶片段缩放和基线校准。截取心跳信号片段首先需确定心跳中R峰位置,由于目前已有许多R峰检测算法[128]-[132],且已能取得超过99%的检查准确率,因此本文不再进行专门的R峰检测,而是直接使用数据库中标注的R峰位置代替实际应用中的检测环节。目前常用的信号截取方法为从当前心律的R峰前T1时间固定截取到R峰后T2时间。这种固定截取方法能很好的满足CNN网络对固定输入长度的需求,但由于个体差异以及运动状态等的影响,不同样本心率变化区间较大[21],较长的心跳在采用此类固定截取方法时会不可避免丢失部分形态特征,而较短的心跳则会导致引入附近心跳的信息。不同类型形态特征会导致CNN网络学习和提取深度特征的困难,且一旦引入附近心跳的关键特征则极易造成对分类的干扰。图2-2展示了此问题的一个示例。SVEB的P波叠加在了N节律的T波上,这导致两个QRS复合波之间只存在一个波峰。由于N节律的P波到QRS复合波的信号区间与SVEB的叠加波(Superi)到QRS复合波信号区间的形态具有高度的相似性,所以使用固定长度的分割方法会导致一部分N和SVEB样本很难被神经网络区分。图2-2定长分割与动态分割
本文编号:3221279
本文链接:https://www.wllwen.com/shoufeilunwen/yxlbs/3221279.html
教材专著