CN116186784A - 基于联邦学习隐私保护的心电图心率失常分类方法及装置 - Google Patents
基于联邦学习隐私保护的心电图心率失常分类方法及装置 Download PDFInfo
- Publication number
- CN116186784A CN116186784A CN202310467731.6A CN202310467731A CN116186784A CN 116186784 A CN116186784 A CN 116186784A CN 202310467731 A CN202310467731 A CN 202310467731A CN 116186784 A CN116186784 A CN 116186784A
- Authority
- CN
- China
- Prior art keywords
- model
- training
- participants
- data set
- aggregation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 206010003119 arrhythmia Diseases 0.000 title claims abstract description 39
- 230000006793 arrhythmia Effects 0.000 title claims abstract description 39
- 238000012549 training Methods 0.000 claims abstract description 81
- 230000002776 aggregation Effects 0.000 claims abstract description 62
- 238000004220 aggregation Methods 0.000 claims abstract description 62
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 20
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 19
- 238000013139 quantization Methods 0.000 claims abstract description 19
- 238000013145 classification model Methods 0.000 claims abstract description 18
- 238000001914 filtration Methods 0.000 claims abstract description 14
- 230000004931 aggregating effect Effects 0.000 claims abstract description 8
- 230000000295 complement effect Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 5
- 238000006116 polymerization reaction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 206010040741 Sinus bradycardia Diseases 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 206010003668 atrial tachycardia Diseases 0.000 description 2
- 230000000747 cardiac effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000003759 clinical diagnosis Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003902 lesion Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/24—Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
- A61B5/316—Modalities, i.e. specific diagnostic methods
- A61B5/318—Heart-related electrical modalities, e.g. electrocardiography [ECG]
- A61B5/346—Analysis of electrocardiograms
- A61B5/349—Detecting specific parameters of the electrocardiograph cycle
- A61B5/363—Detecting tachycardia or bradycardia
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7235—Details of waveform analysis
- A61B5/7264—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
- A61B5/7267—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Cardiology (AREA)
- Biophysics (AREA)
- Bioethics (AREA)
- Biomedical Technology (AREA)
- Animal Behavior & Ethology (AREA)
- Veterinary Medicine (AREA)
- Public Health (AREA)
- Evolutionary Computation (AREA)
- Computer Security & Cryptography (AREA)
- Surgery (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Pathology (AREA)
- Heart & Thoracic Surgery (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physiology (AREA)
- Psychiatry (AREA)
- Signal Processing (AREA)
- Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
Abstract
本发明公开了基于联邦学习隐私保护的心电图心率失常分类方法及装置,该方法包括:(1)对带标签的心电图信号数据集进行滤波,得到训练数据集,将训练数据集送入卷积神经网络中进行训练,其中标签为心电图信号对应的心率失常类别;(2)将训练后的模型进行参数量化,得到模型参数编码;(3)利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将训练数据集输入聚合模型进行训练;(4)返回步骤(2)直至训练次数达到预定轮次,得到训练完毕的分类模型;(5)获取待分类心电图信号,将待分类心电图信号滤波后输入分类模型,得到待分类心电图信号对应的类别。
Description
技术领域
本发明属于机器学习中的联邦学习隐私保护技术领域,尤其涉及基于联邦学习隐私保护的心电图心率失常分类方法及装置。
背景技术
心电图(Electrocardiogram,ECG)是一种通过心电采集设备将心脏起搏产生的电位变化以时间为函数记录下的信号图,是临床诊断心脏是否出现病变的重要依据,因此可以通过心电图来识别心率失常的种类并对其分类。大多伴有异常波形的心律失常信号,通常都会具体表现在单个心拍中,因此可以用机器学习或深度学习模型对ECG信号进行分析,挖掘存在心率失常的ECG图像的潜在特征,从而对心率失常种类分类。
由于深度学习方法训练模型需要足够的数据量来进行训练,因此通常需要跨医疗机构的数据共享。为了满足这一要求,谷歌在2016年提出了联邦学习,一种隐私保护的分布式深度学习框架,在联邦学习中,各个参与方不共享本地数据,仅通过上传模型参数更新(如梯度等)实现联合建模,可以一定程度保护训练数据的隐私和安全。然而,已有研究表明攻击者能通过模型权重和梯度更新来反推出参与方的本地原始数据,例如,聚合服务器有能力利用聚合结果去分析获取参与方上传数据的统计特征,仍会导致参与方的隐私泄漏。由于医疗数据包含了患者的个人隐私,因此如何完成对医疗数据共享的同时对联邦学习进行隐私保护是近年来研究的热点。
目前的联邦学习隐私保护方案中存在安全性问题和效率问题,总结如下:
(1)联邦学习聚合过程中聚合权重泄露。传统函数加密方案并不会保护聚合权重,服务器通过函数解密密钥即可获得所有用户的聚合权重。恶意的攻击者或服务器可能会通过篡改聚合权重来窃取用户的模型。
(2)服务器与密钥管理方共谋。在保护用户训练模型隐私时,研究者通常使用同态加密、函数加密等密码学方法来加密机器学习模型。但这些方案需要额外的密钥管理方来管理和分发密钥,如果密钥管理方与服务器共谋,服务器可以获得每个用户的密钥,可以解密任何用户的模型密文,导致用户的隐私泄露。
(3)中央服务器单点故障问题。在联邦学习中,依赖半诚实的中央服务器才能完成用户模型的安全聚合,中央服务器如果遇到单点故障或外部攻击,会导致联邦学习无法完成模型聚合,降低联邦学习系统的可靠性。而且如果参与联邦学习的用户规模较大,也会加重中央服务器的负担。
发明内容
本申请实施例的目的是针对现有技术存在的问题,提供一种基于联邦学习隐私保护的心电图心率失常分类方法及装置。
根据本申请实施例的第一方面,提供一种基于联邦学习隐私保护的心电图心率失常分类方法,应用于任一参与方,包括:
(1)对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
(2)将训练后的模型进行参数量化,得到模型参数编码;
(3)利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
(4)返回步骤(2)直至训练次数达到预定轮次,得到训练完毕的分类模型;
(5)获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
进一步地,各参与方所使用的训练数据集均包括相同的若干心率失常类型的数据,但每个参与方所持有的数据不同。
进一步地,将训练后的模型进行参数量化,具体为:
对参数截取范围中的数进行量化编码,映射到预定映射范围并采用补码形式表示,其中符号位位数与填充位位数根据参与方数量选择。
进一步地,将4个补码形式的编码拼接成一个128位的整型编码,以对所述128位的整形编码通过加减128位的随机数来进行秘密分享。
进一步地,利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,包括:
按预设顺序与另一参与方协商一个随机数种子;
进一步地,对聚合后的参数进行去量化,包括:
对于聚合后的参数中的每一个128位的整型编码,判断其符号位;
若符号位为0,则解码后的浮点数为正数,浮点数为当前数值与精度相乘的结果;
若符号位为1,则解码后的浮点数为负数,通过位操作进行还原,得到负数的浮点数。
根据本申请实施例的第二方面,提供一种基于联邦学习隐私保护的心电图心率失常分类装置,应用于任一参与方,包括:
训练模块,用于对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
量化模块,用于将训练后的模型进行参数量化,得到模型参数编码;
聚合模块,用于利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
重复模块,用于返回量化模块直至训练次数达到预定轮次,得到训练完毕的分类模型;
分类模块,用于获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
根据本申请实施例的第三方面,提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
1、通过对可医院、穿戴设备、便携设备及第三方医疗机构等可收集心电图的数据中心进行去中心化的联邦训练,可以将各种孤立的医疗机构及设备连接起来,使他们可以进行联合建模,有助于提升各个参与方在整体数据集上的预测水平。
2、在本发明中,采用去中心化的聚合方法,每个参与方直接在本地进行聚合,不需要将梯度或模型权重上传给聚合服务器,避免了恶意服务器通过篡改聚合权重导致的问题。同时,聚合服务器的存在含有诸多隐患,例如可以通过收集参与方的模型权重和梯度信息来反推参与方的数据,无法保证患者医疗数据的隐私安全;聚合服务器如果出现单点故障,那么整个联邦学习都无法进行,而在去中心化的联邦学习场景下单点故障只会影响该参与方的训练和聚合,而不会影响到所有参与方,因此本发明较传统聚合方法更为可靠。
3、在本发明中,采用秘密分享方式对聚合过程中发送的模型参数进行加密,没有任何类似同态加密、函数加密等密码学方法所产生的加密代价,同时由于不需要可信任的密钥管理方,避免了由于服务器和密钥管理方共谋所带来的安全隐患。
4、在本发明中,每个参与方都要发送和接收数据给其余的所有参与方,因此需要通信的数据量相对于传统中心化聚合方式较大。本发明进而采用了对模型参数量化编解码的方式,可在此基础上通过秘密分享对模型进行加密,可以极大地降低通信量,同时又不损失模型的精度。
由上述实施例可知,本申请通过训练卷积神经网络模型来对心电图心律失常种类进行分类,并通过去中心化的安全聚合方式对联邦学习进行隐私保护,可以解决现有联邦学习中存在的聚合权重泄露、服务器与密钥管理方共谋以及中央服务器故障等问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种基于联邦学习隐私保护的心电图心率失常分类方法的流程图。
图2是根据一示例性实施例示出的含有三层卷积层的卷积神经网络的示意图。
图3是根据一示例性实施例示出的一种基于联邦学习隐私保护的心电图心率失常分类装置的框图。
图4是根据一示例性实施例示出的一种电子设备的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
心电图(Electrocardiogram,ECG)是一种通过心电采集设备将心脏起搏产生的电位变化以时间为函数记录下的信号图,是临床诊断心脏是否出现病变的重要依据,因此可以通过心电图来识别心率失常的种类并对其分类。大多伴有异常波形的心律失常信号,通常都会具体表现在单个心拍中,因此可以用机器学习或深度学习模型对ECG信号进行分析,挖掘存在心率失常的ECG图像的潜在特征,从而对心率失常种类分类。
卷积神经网络(Convolutional Neural Networks,CNN)是一种非常有效的带有前向反馈的模型,是深度学习的代表算法之一,近年来被广泛地用于图像分类任务中,并且展现了很好的优越性。它通过对原始输入图像进行特征提取,并逐层组合抽象生成高层特征,进而从大量的训练样本中学习相应的特征表示。一个卷积神经网络一般包含输入层、卷积层、池化层、全连接层和分类层
联邦学习是一种带有隐私保护、安全加密技术的分布式机器学习框架。该框架允许两个或多个参与方合作构建一个共有的机器学习模型,在训练模型的过程中各参与方的训练数据会一直保留在本地,并不会离开该参与方。而且模型的相关信息可以以加密的形式在各参与方之间交换与传输,从而保证任意一个参与方均无法反推出其他方的原始数据。最终的联邦学习模型的性能可以足够接近理想模型(是指将所有训练数据集中在一起并训练获得的模型)。
图1是根据一示例性实施例示出的一种基于联邦学习隐私保护的心电图心率失常分类方法的流程图,如图1所示,该方法应用于任一参与方(本申请中参与方可以为医院、可穿戴设备、便携设备、第三方医疗机构等可收集心电图的数据中心),可以包括以下步骤:
(1)对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
(2)将训练后的模型进行参数量化,得到模型参数编码;
(3)利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
(4)返回步骤(2)直至训练次数达到预定轮次,得到训练完毕的分类模型;
(5)获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
由上述实施例可知,本申请通过对可医院、穿戴设备、便携设备及第三方医疗机构等可收集心电图的数据中心进行去中心化的联邦训练,可以将各种孤立的医疗机构及设备连接起来,使他们可以进行联合建模,有助于提升各个参与方在整体数据集上的预测水平;采用去中心化的聚合方法,每个参与方直接在本地进行聚合,不需要将梯度或模型权重上传给聚合服务器,避免了恶意服务器通过篡改聚合权重导致的问题。同时,聚合服务器的存在含有诸多隐患,例如可以通过收集参与方的模型权重和梯度信息来反推参与方的数据,无法保证患者医疗数据的隐私安全;聚合服务器如果出现单点故障,那么整个联邦学习都无法进行,而在去中心化的联邦学习场景下单点故障只会影响该参与方的训练和聚合,而不会影响到所有参与方,因此本申请较传统聚合方法更为可靠;在本申请中,每个参与方都要发送和接收数据给其余的所有参与方,因此需要通信的数据量相对于传统中心化聚合方式较大。本发明进而采用了对模型参数量化编解码的方式,可在此基础上通过秘密分享对模型进行加密,可以极大地降低通信量,同时又不损失模型的精度。
在步骤(1)的具体实施中,对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
在本实施例中,对带标签的心电图信号数据集进行SG(Savitzky-Golay)滤波,也可采用常用的降噪方法如小波变换、自适应滤波器等,本实施例中由于SG滤波计算速度快,且降噪效果比较好而选用SG滤波。
将去噪后的信号送入含有三层卷积层的卷积神经网络(CNN)中进行训练。如图2所示,CNN包含输入层、卷积层和全连接层。经过实验证明,采用三层的卷积神经网络训练,模型收敛时可以达到精度91.8%,说明三层卷积神经网络已经可以学习到去噪后ECG的大部分信息。
需要说明的是,对于各参与方,其所使用的训练数据集均包括了所有七种心率失常类型的数据,但每个参与方所持有的数据不同。并且由于七种心率失常种类的样本不均匀,例如窦性心律过缓(sinus bradycardia)在数据集中占比最大,一共有14864个样本,每个参与方分别持有2967、2979、3005、3011、2902个样本;房性心动过速(atrialtachycardia)的总样本数最小,一共有130个样本,每个参与方分别持有19、24、27、34、26个样本。
在步骤(2)的具体实施中,将训练后的模型进行参数量化,得到模型参数编码;
具体地,为了在有限域内展开安全多方计算,需要将需要传输的模型参数进行量化,采用以下方法:
将模型的参数由浮点数(float)映射成32位的整型(int),然后将整形编码为32位补码形式。由于模型参数遵循正态分布,因此对参数截取范围中的数进行量化编码,映射到/>,并采用补码形式表示。同时,符号位位数/>与填充位位数/>需要根据参与方数量选择。在具体实验中,n取20,s取3,p取3,截取范围为[-1,1],量化映射到,因此取扩大倍数为/>,故可表示的浮点数精度为1e-6。
为了达到批量加密,将4个补码拼接成一个128位的整型,其中每个补码32位(符号位占3位,数值位20位,其余位为填充位),然后对这个128位的整形通过加减128位的随机数来进行秘密分享。通过此量化方法,可以实现参数加密,同时批量加密可提高加密密文的传输效率。
在一实施例中,量化的具体算法可以如下所示,其中,sign_len为符号位位数,value_len为数值位位数,padding_len为填充位位数,gap为可表示的浮点数精度,array为一组输入的浮点数,en_array为量化后的数组。对输入的每一个浮点数,首先判断扩大后的num是否超出可表示范围[-max_int, max_int],如果向上溢出则取值为max_int,如果向下溢出则取值为-max_int。对于在可表示范围内的num,取其补码表示,最后得到编码后的大整数,并将四个大整数作为一组,得到量化后的数组。
def encode(array):
trunc = (1<<(bit_len))-1
en_array=[]
big_num=0
for i in range(len(array)):
num = array[i]
num = round(num/gap)
max_int = (1<<value_len)-1
if num <= -max_int:
num = (7<<value_len)+1
elif num >= max_int:
num = max_int
elif num >= 0:
num = num
else:
num = num & trunc
big_num = big_num | (num<<(total_len*(i%N)))
if ((i+1)%N)==0:
en_array.append(big_num)
big_num=0
if (len(array)%N)!=0:
en_array.append(big_num)
return en_array
在步骤(3)的具体实施中,利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
具体地,数据参与方的联邦学习的核心思想是每个参与方都在本地对模型参数初始化,执行预定轮次(round)。每轮结束本地训练后,每个参与方执行去中心化的安全聚合算法,将其余参与方的模型聚合到本地,使得所有参与方可共同参与训练。参与方根据本轮(t轮)聚合的模型/>用各自持有的数据来训练出本地模型/>,在步骤(2)中对其量化进行量化得到模型参数编码/>,本步骤执行去中心化的安全聚合算法,得到下一轮(t+1轮)模型的量化参数/>:
其中,K为参与方数量, 分别代表本地的批大小(mini batch size),本地的学习次数(epoch)以及学习率(learning rate),R为总学习轮数,/>为各参与方持有的训练数据集中的样本数量,/>为所有参与方持有的样本总数。
在本步骤中,参与方执行以下逻辑:
6.执行去中心化的安全聚合算法:
对于每个参与方,先初始化本地的模型参数为。在第/>轮,第/>参与方在本地执行参与方更新参数/>算法。具体来说,每个参与方先将自己持有的数据集分成大小为B的若干份,对于每一份都送入模型中训练,通过对损失函数求导可以得到梯度并反向传播更新模型参数,重复上述过程直到数据集中的样本全部参与完成训练,至此记为一次学习(1 epoch)。将上述过程重复E次,可以得到第/>轮迭代的结果/>。每轮结束本地训练后,每个参与方通过收集其余参与方的模型参数,执行去中心化的安全聚合算法,可以得到本轮的最终模型/>,再用此模型作为第/>轮的初始模型参数,继续训练直至模型收敛。
为了实现隐私保护的目标,本申请实现了基于安全多方计算(Secure Multi-Party Computation)的去中心化加密方案。所有参与方之间相互平等,都可以进行训练操作和聚合操作,以下具体描述参与方运行的安全聚合算法:
按预设顺序与另一参与方协商一个随机数种子;
以下结合一有5个参与方K=5的实施例进行说明,具体的安全聚合协议如下:
初始化:
第一阶段:
第二阶段:
第三阶段:
去量化的算法如下所示,具体地,对于输入的一组量化后的数组array中的每一个大整数,判断其符号位:若符号位为0,则解码后的浮点数为正数,浮点数为当前数值与精度相乘的结果;若为1,则解码后的浮点数为负数,通过位操作还原原先的数值,最后得到负数的浮点数。
def decode(array):
de_array=[]
trunc = (1<<bit_len)-1
for i in range(len(array)):
num = array[i]
for j in range(N):
tmp = num & trunc
if (tmp & (1<<(bit_len-1))) == 0:
de_array.append(tmp*gap)
else:
tmp = tmp ^ (1<<(bit_len-1))
tmp = tmp ^ ((1<<(bit_len-1))-1)
tmp = tmp + 1
de_array.append(-(tmp*gap))
num = num>>total_len
#print('num',hex(num))
return de_array
在步骤(4)的具体实施中,返回步骤(2)直至训练次数达到预定轮次,得到训练完毕的分类模型;
具体地,预定的训练轮次在训练前根据实际情况经验设置,将最后一次聚合并通过训练数据集训练所得到的模型作为参与方持有的分类模型。
在步骤(5)的具体实施中,获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
具体地,对每个参与方,当有心电图信号需均需分类时,将待分类心电图信号滤波后输入本地持有的分类模型即可进行分类。
与前述的基于联邦学习隐私保护的心电图心率失常分类方法的实施例相对应,本申请还提供了基于联邦学习隐私保护的心电图心率失常分类装置的实施例。
图3是根据一示例性实施例示出的一种基于联邦学习隐私保护的心电图心率失常分类装置框图。参照图3,该装置可以包括:
训练模块21,用于对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
量化模块22,用于将训练后的模型进行参数量化,得到模型参数编码;
聚合模块23,用于利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
重复模块24,用于返回量化模块直至训练次数达到预定轮次,得到训练完毕的分类模型;
分类模块25,用于获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本申请还提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于联邦学习隐私保护的心电图心率失常分类方法。如图4所示,为本发明实施例提供的一种基于联邦学习隐私保护的心电图心率失常分类方法所在任意具备数据处理能力的设备的一种硬件结构图,除了图4所示的处理器、内存以及网络接口之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
相应的,本申请还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述的基于联邦学习隐私保护的心电图心率失常分类方法。所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。
Claims (10)
1.一种基于联邦学习隐私保护的心电图心率失常分类方法,其特征在于,应用于任一参与方,包括:
(1)对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
(2)将训练后的模型进行参数量化,得到模型参数编码;
(3)利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
(4)返回步骤(2)直至训练次数达到预定轮次,得到训练完毕的分类模型;
(5)获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
2.根据权利要求1所述的方法,其特征在于,各参与方所使用的训练数据集均包括相同的若干心率失常类型的数据,但每个参与方所持有的数据不同。
3.根据权利要求1所述的方法,其特征在于,将训练后的模型进行参数量化,具体为:
对参数截取范围中的数进行量化编码,映射到预定映射范围并采用补码形式表示,其中符号位位数与填充位位数根据参与方数量选择。
4.根据权利要求3所述的方法,其特征在于,将4个补码形式的编码拼接成一个128位的整型编码,以对所述128位的整形编码通过加减128位的随机数来进行秘密分享。
6.根据权利要求1所述的方法,其特征在于,利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,包括:
按预设顺序与另一参与方协商一个随机数种子;
7.根据权利要求1所述的方法,其特征在于,对聚合后的参数进行去量化,包括:
对于聚合后的参数中的每一个128位的整型编码,判断其符号位;
若符号位为0,则解码后的浮点数为正数,浮点数为当前数值与精度相乘的结果;
若符号位为1,则解码后的浮点数为负数,通过位操作进行还原,得到负数的浮点数。
8.一种基于联邦学习隐私保护的心电图心率失常分类装置,其特征在于,应用于任一参与方,包括:
训练模块,用于对带标签的心电图信号数据集进行滤波,得到训练数据集,将所述训练数据集送入卷积神经网络中进行训练,其中所述标签为所述心电图信号对应的心率失常类别;
量化模块,用于将训练后的模型进行参数量化,得到模型参数编码;
聚合模块,用于利用去中心化的安全聚合算法将其他参与方的模型参数编码与本地的模型参数编码聚合,对聚合后的参数进行去量化,得到聚合模型,将所述训练数据集输入所述聚合模型进行训练;
重复模块,用于返回量化模块直至训练次数达到预定轮次,得到训练完毕的分类模型;
分类模块,用于获取待分类心电图信号,将所述待分类心电图信号滤波后输入所述分类模型,得到所述待分类心电图信号对应的类别。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310467731.6A CN116186784B (zh) | 2023-04-27 | 2023-04-27 | 基于联邦学习隐私保护的心电图心率失常分类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310467731.6A CN116186784B (zh) | 2023-04-27 | 2023-04-27 | 基于联邦学习隐私保护的心电图心率失常分类方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116186784A true CN116186784A (zh) | 2023-05-30 |
CN116186784B CN116186784B (zh) | 2023-07-21 |
Family
ID=86449350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310467731.6A Active CN116186784B (zh) | 2023-04-27 | 2023-04-27 | 基于联邦学习隐私保护的心电图心率失常分类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186784B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112862001A (zh) * | 2021-03-18 | 2021-05-28 | 中山大学 | 一种隐私保护下的去中心化数据建模方法 |
CN113014386A (zh) * | 2021-03-30 | 2021-06-22 | 宋煜 | 基于多方协同计算的密码系统 |
CN113283175A (zh) * | 2021-06-09 | 2021-08-20 | 上海交通大学 | 一种基于异步去中心化联邦学习的光伏电站联合故障诊断方法 |
WO2021220278A1 (en) * | 2020-04-27 | 2021-11-04 | B.G. Negev Technologies And Applications Ltd., At Ben-Gurion University | System and method for fast, post-quantum blockchain concensus generation and smart contracts execution |
CN113935469A (zh) * | 2021-10-26 | 2022-01-14 | 城云科技(中国)有限公司 | 基于去中心化联邦学习的模型训练方法 |
CN114051222A (zh) * | 2021-11-08 | 2022-02-15 | 北京工业大学 | 一种车联网环境下基于联邦学习的无线资源分配和通信优化方法 |
CN114154392A (zh) * | 2021-10-15 | 2022-03-08 | 海南火链科技有限公司 | 基于区块链和联邦学习的模型共建方法、装置及设备 |
CN114202077A (zh) * | 2021-12-27 | 2022-03-18 | 南京理工大学 | 基于联邦学习及均值迭代的机器学习模型压缩方法 |
CN115001672A (zh) * | 2022-05-27 | 2022-09-02 | 建信金融科技有限责任公司 | 一种安全多方计算方法、装置、系统、设备及存储介质 |
CN115277015A (zh) * | 2022-07-16 | 2022-11-01 | 西安邮电大学 | 异步联邦学习隐私保护方法、系统、介质、设备及终端 |
CN115392348A (zh) * | 2022-08-01 | 2022-11-25 | 清华大学深圳国际研究生院 | 联邦学习梯度量化方法、高效通信联邦学习方法及相关装置 |
CN115860150A (zh) * | 2022-11-28 | 2023-03-28 | 四川大学 | 一种去中心化的联邦学习模型训练方法 |
CN115883076A (zh) * | 2022-11-16 | 2023-03-31 | 西安邮电大学 | 一种联邦学习隐私保护方法、系统、介质、设备及终端 |
-
2023
- 2023-04-27 CN CN202310467731.6A patent/CN116186784B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021220278A1 (en) * | 2020-04-27 | 2021-11-04 | B.G. Negev Technologies And Applications Ltd., At Ben-Gurion University | System and method for fast, post-quantum blockchain concensus generation and smart contracts execution |
CN112862001A (zh) * | 2021-03-18 | 2021-05-28 | 中山大学 | 一种隐私保护下的去中心化数据建模方法 |
CN113014386A (zh) * | 2021-03-30 | 2021-06-22 | 宋煜 | 基于多方协同计算的密码系统 |
CN113283175A (zh) * | 2021-06-09 | 2021-08-20 | 上海交通大学 | 一种基于异步去中心化联邦学习的光伏电站联合故障诊断方法 |
CN114154392A (zh) * | 2021-10-15 | 2022-03-08 | 海南火链科技有限公司 | 基于区块链和联邦学习的模型共建方法、装置及设备 |
CN113935469A (zh) * | 2021-10-26 | 2022-01-14 | 城云科技(中国)有限公司 | 基于去中心化联邦学习的模型训练方法 |
CN114051222A (zh) * | 2021-11-08 | 2022-02-15 | 北京工业大学 | 一种车联网环境下基于联邦学习的无线资源分配和通信优化方法 |
CN114202077A (zh) * | 2021-12-27 | 2022-03-18 | 南京理工大学 | 基于联邦学习及均值迭代的机器学习模型压缩方法 |
CN115001672A (zh) * | 2022-05-27 | 2022-09-02 | 建信金融科技有限责任公司 | 一种安全多方计算方法、装置、系统、设备及存储介质 |
CN115277015A (zh) * | 2022-07-16 | 2022-11-01 | 西安邮电大学 | 异步联邦学习隐私保护方法、系统、介质、设备及终端 |
CN115392348A (zh) * | 2022-08-01 | 2022-11-25 | 清华大学深圳国际研究生院 | 联邦学习梯度量化方法、高效通信联邦学习方法及相关装置 |
CN115883076A (zh) * | 2022-11-16 | 2023-03-31 | 西安邮电大学 | 一种联邦学习隐私保护方法、系统、介质、设备及终端 |
CN115860150A (zh) * | 2022-11-28 | 2023-03-28 | 四川大学 | 一种去中心化的联邦学习模型训练方法 |
Non-Patent Citations (1)
Title |
---|
蒋瀚;徐秋亮;: "基于云计算服务的安全多方计算", 计算机研究与发展, no. 10 * |
Also Published As
Publication number | Publication date |
---|---|
CN116186784B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Hybrid privacy-preserving clinical decision support system in fog–cloud computing | |
CN108712260B (zh) | 云环境下保护隐私的多方深度学习计算代理方法 | |
Soni et al. | A pixel-based digital medical images protection using genetic algorithm with LSB watermark technique | |
Ibaida et al. | Wavelet-based ECG steganography for protecting patient confidential information in point-of-care systems | |
CN112383396A (zh) | 一种联邦学习模型训练方法及系统 | |
CN113065145B (zh) | 一种基于秘密共享和随机扰动的隐私保护线性回归方法 | |
CN113051586B (zh) | 联邦建模系统及方法、联邦模型预测方法、介质、设备 | |
CN113435592A (zh) | 一种隐私保护的神经网络多方协作无损训练方法及系统 | |
CN116168789B (zh) | 一种多中心医疗数据生成系统和方法 | |
CN111581648B (zh) | 在不规则用户中保留隐私的联邦学习的方法 | |
CN115310121A (zh) | 车联网中基于MePC-F模型的实时强化联邦学习数据隐私安全方法 | |
Blesswin et al. | Enhanced semantic visual secret sharing scheme for the secure image communication | |
US9984040B2 (en) | Evolved transform for processing data | |
Banerjee et al. | A robust bio-signal steganography with lost-data recovery architecture using deep learning | |
CN116186784B (zh) | 基于联邦学习隐私保护的心电图心率失常分类方法及装置 | |
CN112838922B (zh) | 基于混沌映射和选择性Signcryption的DICOM图像非对称加密方法 | |
CN117077192B (zh) | 一种隐私保护的联邦学习中搭便车攻击防御方法及装置 | |
Desai et al. | Deep neural network based medical image steganography | |
CN112101555A (zh) | 多方联合训练模型的方法和装置 | |
CN116861994A (zh) | 一种抗拜占庭攻击的隐私保护联邦学习方法 | |
JP7297131B2 (ja) | 分散型機械学習モデルのトレーニング方法、装置、機器および媒体 | |
CN115914488A (zh) | 医学图像身份混淆共享方法、系统、终端设备及存储介质 | |
CN113517065B (zh) | 医疗数据隐私保护的云辅助决策树模型诊断系统及方法 | |
Soni et al. | AFD and chaotic map‐based integrated approach for ECG compression, steganography and encryption in E‐healthcare paradigm | |
CN115758402A (zh) | 结合同态加密和模型水印的人工智能模型联邦学习方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |