首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于安全多方计算的神经网络推理加速方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:南京邮电大学

摘要:本发明涉及一种基于安全多方计算的神经网络推理加速方法,属于安全多方计算和人工智能安全领域,其将用户数据通过数据预处理模块向量化并秘密共享;数据预计算模块生成满足VOLE关系的相关随机向量,实现数据加密盲化;各参与方通过安全计算模块确保数据隐私,基于安全运算基础算子实现复杂任务的安全计算;GPU并行计算模块加速优化矩阵运算;计算结果通过安全通信模块在多方安全传输;结果重构模块重建完整推理结果并返回给用户。本发明在保障数据隐私的前提下显著提升神经网络推理的速度和效率,并有效减少通信开销,尤其是在处理矩阵乘法等密集计算任务时,减少明文与密文计算效率的差异。

主权项:1.一种基于安全多方计算的神经网络推理加速方法,其特征在于,采用安全神经网络推理加速系统,所述系统包括:数据预处理模块、数据预计算模块、安全计算模块、GPU并行计算模块、安全通信模块和结果重构模块,数据预处理模块负责对原始输入数据进行预处理,将数据转换为向量或矩阵形式,并进行秘密共享处理;数据预计算模块使用函数秘密共享FSS和VOLE的伪随机数生成器生成随机种子,根据随机种子生成秘密数据的相关随机数;安全计算模块包含安全加法、乘法和矩阵乘法运算模块,确保计算过程中的数据隐私保护;GPU并行计算模块利用GPU的并行计算能力,加速密集型矩阵运算;安全通信模块负责各参与方之间的安全通信,确保计算中间结果的安全传输;结果重构模块根据各参与方的计算结果,重构出最终的推理结果;所述安全推理加速系统的数据流动过程如下:1用户输入数据通过数据预处理模块处理,转换为向量形式并进行秘密共享,2数据预计算模块生成秘密数据共享份额的伪随机相关向量,实现数据的加密盲化处理,3预处理后的数据进入安全计算模块,各参与方根据秘密共享的份额进行加法、乘法和矩阵乘法运算,进一步完成复杂的计算任务,4计算过程中需要的密集型矩阵运算由GPU并行计算模块加速完成,5计算结果通过安全通信模块在各参与方之间安全传输,6最终结果通过结果重构模块重构,得到完整的推理结果并返回给用户;所述方法包括以下步骤:步骤S1、各参与方进行初始化设置,数据预处理及预计算;步骤S2、将数据输入安全计算模块进行多方安全计算,GPU加速计算模块加速矩阵运算,计算结果通过安全通信模块传输,结果重构模块返回完整推理结果;其中,所述步骤S1、各参与方进行初始化设置,数据预处理及预计算,具体实现步骤如下:S11、各参与方协商确定预设共享值,各参与方协商确定预设共享值,包括安全参数λ,有限域函数f,列向量维度k,列向量个数n,确定公开矩阵S12、获取参与方P0的原始输入数据,进行数据预处理:将输入数据转化为一系列向量,即输入数据转换为被模型处理的数值、向量、矩阵形式;并将输入数据将转化为秘密共享的形式,S13、将参与方P1的模型参数矩阵数据预处理,转化为加法秘密共享的形式,S14、各参与方合作,预计算生成随机种子,S15、各参与方从随机种子中提取参数,本地预计算生成秘密数据的相关随机数;其中,步骤S12中,参与方P0的原始输入数据通过词嵌入、位置嵌入方式转化为一系列向量,转换为被大模型处理的数值向量形式,接着,将所述输入数据转化为加法秘密共享的形式,记参与方P0的隐私数据为x,对于所述隐私数据x,将其秘密共享为x≡x0+x1,即将输入数据分成两份秘密共享份额shares,步骤S13中,预处理参与方P1的模型参数矩阵数据,将模型参数矩阵数据转化为加法秘密共享的形式,将所述数据分成两份矩阵份额,记参与方P1的隐私数据为y,对于所述隐私数据y,将其秘密共享为y≡y0+y1,即将输入数据分成两份秘密共享份额shares,其中,秘密共享份额xi、yi均服从均匀分布,i∈{0,1},所述步骤S14:各参与方合作,预计算生成随机种子,具体分为以下3个步骤:S141、可信第三方TTP生成两个随机向量a,b,随机生成错误向量α,使用生成的向量和输入的秘密数据S,计算得到c=a·s+b,其中,且满足特定的汉明重量条件,向量中非零元素的数量,HWα=r·n,r为噪声比率,S142、使用函数秘密共享FSS生成一对密钥K0、K1,并确保它们满足特定的计算条件,利用伪随机函数PRF和函数秘密共享FSS,生成一对密钥K0、K1,定义为:FSSPRF.GEN1λ,f→K0,K1,基于给定安全参数λ和函数f,FSSPRF·GEN函数生成一对λ比特长度的密钥K0、K1,且函数的输出满足以下条件:FSSPRF·Evaluate0,K0+FSSPRF·Evaluate1,K1=s·α其中,函数f为FSS允许两个参与方P0,P1合作计算函数f在某个点上的估值f·的函数,计算完成后,P0得到的一份秘密共享份额为f0·,P1得到的一份秘密共享份额为f1·,满足f·=f0·+f1·,S143、使用VOLE的伪随机数生成器PCGVOLE生成随机种子seedσ,发送给参与方Pi,σ,i∈{0,1},PCGVOLE.Setup1λ,s→seed0,seed1→K0,α,a,b,K1,s,c其中,种子seed0=K0,α,a,b,种子seed1=K1,s,c,seed1包含秘密数据s,所述步骤S15:各参与方从随机种子中提取参数,本地预计算生成秘密数据的相关随机数,参与方Pi使用FSSPRF·Evaluate0,Ki计算获得βi,进一步计算得到u=a·C+α,v=b·C-βi,参与方P1-i使用FSSPRF.Evaluate1,K1-i计算获得β1-i,进一步计算得到w=c·C+β1-i,其中,满足βi+β1-i=s·α,i∈{0,1},参与方Pi均需执行i∈{0,1}所述步骤S14、S15,为其本地秘密数据共享份额x≡x0+x1、y≡y0+y1生成相关随机数,实现对秘密数据的加密盲化:在多方计算环境下时,不直接传输原始秘密数据,只传输数据的秘密共享份额,后续进行安全推理时只需根据参与方本地持有的秘密数据份额及其相关随机数,即可重构获得计算结果,所述步骤S2的安全计算模块包括安全加法运算模块ΠAdd、安全乘法运算模块ΠMult、安全矩阵乘法运算模块ΠMatMul、GPU加速计算模块ΠGPU。

全文数据:

权利要求:

百度查询: 南京邮电大学 一种基于安全多方计算的神经网络推理加速方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。