多方协同向量内积计算方法、设备、介质及系统技术方案

技术编号:38620850 阅读:13 留言:0更新日期:2023-08-31 18:25
本发明专利技术提供一种多方协同向量内积计算方法、设备、介质及系统,涉及数据处理技术领域,用于解决现有向量内积计算方案面临较大制约的问题,所述方法包括:数据提供方设备A/B将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个第一向量分片X

【技术实现步骤摘要】
多方协同向量内积计算方法、设备、介质及系统


[0001]本专利技术涉及数据处理
,尤其涉及一种多方协同向量内积计算方法、数据提供方设备、计算方设备、计算机可读存储介质及多方协同向量内积计算系统。

技术介绍

[0002]随着数据产业的发展,许多业务需要借助多方的数据才能更好的开展,比如多方协同的AI建模、联合数据分析挖掘等。但基于隐私保护和数据安全考虑或受限于法律法规等对数据共享的限制,企业间无法直接共享数据。在这一背景下,需要借助技术手段来实现支持隐私保护的数据协同。向量内积计算是AI模型训练、数据挖掘、数据分析领域的一种基本运算。
[0003]目前实现多方协同向量内积计算的方案大多是基于通用的隐私计算技术,例如,基于传统加法秘密分享机制来实现的,加法秘密分享技术涉及到beaver三元组的生成和分发,需要的计算量较大,或者需要借助半可信的第三方节点,在实际场景中面临较大制约。

技术实现思路

[0004]本专利技术所要解决的技术问题是针对现有技术的上述不足,提供一种多方协同向量内积计算方法、数据提供方设备、计算方设备、计算机可读存储介质及多方协同向量内积计算系统,以解决现有技术多方协同向量内积计算的方案面临较大制约的问题。
[0005]第一方面,本专利技术提供一种多方协同向量内积计算方法,应用于数据提供方设备A/B,所述方法包括:
[0006]将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个第一向量分片X
i
/Y
ir/>以及第二向量分片X
i

/Y
i

,X
i
/Y
i
以及X
i

/Y
i

至少之一携带验证信息,i∈[1...p];
[0007]将p个X
i
/Y
i
以及X
i

/Y
i

分别发送给p个计算方设备C
i
,以使:
[0008]p个C
i
各自接收来自A和B的X
i
和Y
i
以及X
i

和Y
i

,并根据X
i
和Y
i
以及X
i

和Y
i

进行协同计算,获得第一向量内积O以及第二向量内积O

,且由某个C
i
将O以及O

发送给A和B;
[0009]接收来自某个C
i
的O以及O

,并根据O以及O

获得并验证x和y的内积。
[0010]可选地,所述方法中:
[0011]x=(x1...x
n
)/y=(y1...y
n
),x和y的内积
[0012]X
i
/Y
i
是与B/A协商,对x/y在相同随机位置插入随机验证数获得扩充向量X/Y后,根据乘法秘密分享模式将X/Y分解为p个分片而获得的扩充向量分片;
[0013]X
i

/Y
i

是与B/A协商,对x/y在相同随机位置插入随机验证数,并将随机验证数之外的每一元素x
j
/y
j
乘以随机系数获得扩充系数向量X

/Y

后,根据乘法秘密分享模式将X

/Y

分解为p个分片而获得的扩充系数向量分片;
[0014]O是由p个C
i
根据X
i
和Y
i
协同计算而获得的扩充向量内积,O

是由p个C
i
根据X
i

和Y
i

协同计算而获得的扩充系数向量内积。
[0015]可选地,根据O以及O

获得并验证x和y的内积,具体包括:
[0016]根据O和随机验证数计算Z,以及根据O

和随机验证数计算x和y的内积验证参数Z

,并根据Z

和随机系数验证Z,其中O以及O

由p个C
i
按照以下步骤获得:
[0017]p个C
i
各自根据自身接收到的X
i
和Y
i
计算扩充向量元素积分片S
i
,以及根据自身接收到的X
i

和Y
i

计算扩充系数向量元素积分片S
i


[0018]使某个C
i
获取到来自p个C
i
的S
i
以及S
i

,并根据p个S
i
计算O,以及根据p个S
i

计算O


[0019]可选地,将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个第一向量分片X
i
/Y
i
以及第二向量分片X
i

/Y
i

,具体包括:
[0020]获取与B/A相同的随机验证数r、随机位置数k、随机系数α;
[0021]将r按照k插入x/y以获得X=(x1...x
k
‑1...r...x
k+1
...x
n
)/Y=(y1...y
k
‑1...r...y
k+1
...y
n
);
[0022]将x
j
/y
j
乘以α以获得X

=(αx1...αxk
‑1...r...αx
k+1
...αx
n
)/Y

=(αy1...αy
k
‑1...r...αy
k+1
...αy
n
);
[0023]按照或,
[0024]将X/Y分解为X
i
=(x
1i
...r
ix
...x
ni
)/Y
i
=(y
1i
...r
iy
...y
ni
),以及将X

/Y

分解为X
i

=(αx
...

【技术保护点】

【技术特征摘要】
1.一种多方协同向量内积计算方法,其特征在于,应用于数据提供方设备A/B,所述方法包括:将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个第一向量分片X
i
/Y
i
以及第二向量分片X

i
/Y
i

,X
i
/Y
i
以及X

i
/Y
i

至少之一携带验证信息,i∈[1

p];将p个X
i
/Y
i
以及X

i
/Y
i

分别发送给p个计算方设备C
i
,以使:p个C
i
各自接收来自A和B的X
i
和Y
i
以及X

i
和Y
i

,并根据X
i
和Y
i
以及X

i
和Y
i

进行协同计算,获得第一向量内积O以及第二向量内积O

,且由某个C
i
将O以及O

发送给A和B;接收来自某个C
i
的O以及O

,并根据O以及O

获得并验证x和y的内积。2.根据权利要求1所述的方法,其特征在于,所述方法中:x=(x1...x
n
)/y=(y1…
y
n
),x和y的内积X
i
/Y
i
是与B/A协商,对x/y在相同随机位置插入随机验证数获得扩充向量X/Y后,根据乘法秘密分享模式将X/Y分解为p个分片而获得的扩充向量分片;X

i
/Y
i

是与B/A协商,对x/y在相同随机位置插入随机验证数,并将随机验证数之外的每一元素x
j
/y
j
乘以随机系数获得扩充系数向量X

/Y

后,根据乘法秘密分享模式将X

/Y

分解为p个分片而获得的扩充系数向量分片;O是由p个C
i
根据X
i
和Y
i
协同计算而获得的扩充向量内积,O

是由p个C
i
根据X

i
和Y
i

协同计算而获得的扩充系数向量内积。3.根据权利要求2所述的方法,其特征在于,根据O以及O

获得并验证x和y的内积,具体包括:根据O和随机验证数计算Z,以及根据O

和随机验证数计算x和y的内积验证参数Z

,并根据Z

和随机系数验证Z,其中O以及O

由p个C
i
按照以下步骤获得:p个C
i
各自根据自身接收到的X
i
和Y
i
计算扩充向量元素积分片S
i
,以及根据自身接收到的X

i
和Y
i

计算扩充系数向量元素积分片S

i
,使某个C
i
获取到来自p个C
i
的S
i
以及S

i
,并根据p个S
i
计算O,以及根据p个S

i
计算O

。4.根据权利要求3所述的方法,其特征在于,将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个第一向量分片X
i
/Y
i
以及第二向量分片X

i
/Y
i

,具体包括:获取与B/A相同的随机验证数r、随机位置数k、随机系数α;将r按照k插入x/y以获得X=(x1...x
k
‑1...r...x
k+1
...x
n
)/Y=(y1...y
k
‑1…
r

y
k+1

y
n
);将x
j
/y
j
乘以α以获得X

=(αx1...αx
k
‑1...r...αx
k+1
...αx
n
)/Y

=(αy1…
αy
k
‑1…
r

αy
k+1
...αy
n
);按照或,将X/Y分解为X
i
=(x
1i
...r
ix
...x
ni
)/Y
i
=(y
1i
...r
iy
...y
ni
),以及将X

/Y

分解为X

i
=(αx
1i
...r

ix

αx
ni
)/Y
i

=(αy
1i
...r

iy
...αy
ni
)。5.根据权利要求4所述的方法,其特征在于,获取与B/A相同的随机验证数r、随机位置数k、随机系数α,具体包括:
生成随机验证数r、随机位置数k、随机系数α,并将r、k、α发送给B/A;或者,接收来自B/A的随机验证数r、随机位置数k、随机系数α。6.根据权利要求4或5所述的方法,其特征在于,根据O和随机验证数计算Z,以及根据O

和随机验证数计算x和y的内积验证参数Z

,并根据Z

和随机系数验证Z,具体包括:根据O和r计算Z=O

rr,其中O由某个C
i
按照下式获得:其中S
i
由p个C
i
各自按照下式获得:S
i
=(x
1i
y
1i
,...,r
ix
r
iy
,...,x
ni
y
ni
);根据O

和r计算Z

=O
′‑
rr,其中O

由某个C
i
按照下式获得:其中S

i
由p个C
i
各自按照下式获得:S

i
=(αx
1i
αy
1i
,...,r

ix
r

iy
,...,αx
ni
αy
ni
);验证Z

与α
2p
Z是否相等,如果相等,则Z验证通过。7.一种多方协同向量内积计算方法,其特征在于,应用于计算方设备C
i
,i∈[1...p],所述方法包括:接收来自数据提供方设备A和B的第一向量分片X
i
和Y
i
以及第二向量分片X

i
和Y
i

,其中:由A/B分别将自身待与B/A的原始向量y/x进行内积计算的x/y,与B/A协商处理成p个X
i
/Y
i
以及X

i
/Y
i

,并分别发送给p个C
i
,X
i
/Y
i
以及X

i
/Y
i

至少之一携带验证信息,i∈[1

p];根据X
i
和Y
i
以及X

i
和Y
i

与其余(p

1)个C
i
进行协同计算,获得第一向量内积O以及第二向量内积O

,且由某个C
i
将O以及O

发送给A和B,以使:A和B接收来自某个C
i
的O以及O

,并根据O以及O

获得并验证x和y的内积。8.根据权利要求7所述的方法,其特征在于,所述方法中:x=(x1…
x
n
)/y=(y1…
y
n
),x和y的内积X
i
/Y
i
是由A/B与B/A协商,对x/y在相同随机位置插入随机验证数获得扩充向量X/Y后,根据乘法秘密分享模式将X/Y分解为p个分片而获得的扩充向量分片;X

i
/Y
i

是由A/B与B/A协商,对x/y在相同随机位置插入随机验证数,并将随机验证数之外的每一元素x
j
/y
j
乘以随机系数获得扩充系数向量X

/Y

后,根据乘法秘密分享模式将X

/Y

分解为p个分片而获得的扩充系数向量分片;O是由p个C
i
根据X
i
和Y
i
协同计算而获得的扩充向量内积,O

是由p个C
i
根据X

i
和Y
i
...

【专利技术属性】
技术研发人员:任思颖刘晶刘颖慧张作凤
申请(专利权)人:中国联合网络通信集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1