【技术实现步骤摘要】
一种在分布式云服务器上进行可验证计算的方法
[0001]本专利技术涉及云计算
,主要是一种针对在n个云服务器上进行可验证性计算的方案,其中这n个服务器中有部分不值得信赖的服务器。
技术介绍
[0002]在云计算问题中,用户会把需要进行的计算委托给云服务器,但云服务器出于经济因素的考虑,可能不会认真计算结果,而是返回一个随机结果,因此用户需要对结果进行验证,通过验证的结果将被接纳,否则不再信任委托的服务器。而随着机器学习的发展,训练集越来越大,一个服务器无法处理这么多数据,因此需要将计算委托给n个云服务器,假定n个云服务器中有部分不值得被信任的服务器,一种比较直接的方案是每一个服务器都做一次验证,验证通过的则接纳,但如果不值得信赖的服务器数量远小于n,那么这n次验证大多数都是没用的,浪费了资源,因此针对这种情况,本专利技术提出了一种针对n个云服务器进行可验证计算的方案。
技术实现思路
[0003]技术问题:本专利技术所要解决的技术问题在于,提供一种针对n个云服务器,其中有部分不值得信赖的服务器进行可验证计 ...
【技术保护点】
【技术特征摘要】
1.一种在分布式云服务器上进行可验证计算的方法,其特征在于,包括如下步骤:步骤1:用户将需要进行计算的数据集编码后委托给n个云服务器;步骤2:各个服务器分别进行计算,并将计算结果返回给用户;步骤3:用户对返回的结果进行验证。2.根据权利要求1所述的一种在分布式云服务器上进行可验证计算的方法,其特征在于,步骤1的具体步骤包括:构建训练数据集,所述训练数据集包含K个特征和相应的标签y
i
∈F
q
,i=1,
…
,K;创建如下优化问题使经验风险最小化:其中,其中,为线性回归算法的回归函数的系数;使用梯度下降算法沿着梯度下降的方向迭代地更新权重向量w,更新如下等式:其中t表示迭代的次数;将训练集X平均地分成n个子矩阵,即X=[X
1 X2ꢀ…ꢀ
X
n
]
T
,此时定义将计算委托给n个服务器,其中不值得信任的服务器数量为m,使用(n+2m,n)
‑
系统性MDS码对数据集进行编码,(n+2m,n)
‑
系统性MDS码的生成矩阵是:矩阵G的列数N满足N=n+2m;每个服务器计算需要的数据是将A
i
的第(t,u)个元素表示为t,u=1,2,...,s,构造向量并且使用如上所示的MDS对所有的a
tu
进行编码得到:对于所有的i=1,2,
…
,N,使用构造出大小为s
×
s的矩阵对于i=1,2,
…
,n,对于i=n+1,
…
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。