CN111858721B - 一种基于优先级编码的分布式计算方法 - Google Patents

一种基于优先级编码的分布式计算方法 Download PDF

Info

Publication number
CN111858721B
CN111858721B CN202010764428.9A CN202010764428A CN111858721B CN 111858721 B CN111858721 B CN 111858721B CN 202010764428 A CN202010764428 A CN 202010764428A CN 111858721 B CN111858721 B CN 111858721B
Authority
CN
China
Prior art keywords
node
working
stage
calculation
subtask
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.)
Active
Application number
CN202010764428.9A
Other languages
English (en)
Other versions
CN111858721A (zh
Inventor
叶保留
黎卫东
陆桑璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202010764428.9A priority Critical patent/CN111858721B/zh
Publication of CN111858721A publication Critical patent/CN111858721A/zh
Application granted granted Critical
Publication of CN111858721B publication Critical patent/CN111858721B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Fuzzy Systems (AREA)
  • Computational Linguistics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于优先级编码的分布式计算方法。所述方法包括:在主从计算框架下,通过对矩阵的奇异值分解的分片分解后进行两轮基于优先级的编码,主节点负责分发任务和汇总最终的计算结果,工作节点负责运算分配给自己的工作任务并返回给主节点。本发明可以缓解落后者的影响并实现随时返回一个近似计算结果,可以根据任务要求和当前处境灵活地选择结果的精确度。

Description

一种基于优先级编码的分布式计算方法
技术领域
本发明属于分布式系统技术领域,具体涉及一种基于优先级编码的分布式计算方法。
背景技术
矩阵-向量乘法是很多数值计算、机器学习算法中的核心计算,如求解偏微分方程、神经网络的前向后向推进、计算PageRank的图等。很多时候,我们获得的矩阵和向量都非常大,无法通过单机来处理,需要多台机器集群分布式地执行计算。例如,推荐系统是大数据时代的一种常见技术,底层通过基于内容的推荐、基于协同过滤的推荐等推荐算法生成推荐规则,基于用户提供的用户画像(个人信息),给用户推荐相关内容。为了提高推荐精度,推荐系统往往使用混合推荐。并且随着用户数据的增多,规则函数越来越复杂,涉及的维度越来越多。不同的推荐方法可通过集成学习的技术融合成的一个最终的推荐规则矩阵,而用户信息构成了一个用户向量,推荐过程其实就是求解矩阵向量乘法的过程。由于规则函数的复杂,维度过高,同时为了服务的时效性,通过集群分布式地运算非常有必要。
通过多台机器来分布式计算矩阵-向量乘法时,通常将任务均等地分配到系统中各个节点中去,每个工作节点在本地运算完自己的任务后交由中心节点整合出最终的计算结果。这种计算框架通常称为主从(Master-Worker)计算框架,中心节点也称为主节点。由于中心节点要等待所有的工作节点的返回结果才能完成最后的计算任务,失效节点或者计算极度缓慢的节点的出现就成为了整个计算过程的瓶颈,这些节点通常被称为“落后者”。
“落后者问题”无法避免,一方面,大规模分布式系统中的节点由不可靠的低端商用硬件构成,常会出现节点突然失效的现象;另一方面,由于共享资源竞争、网络环境变化、节点负载失衡、系统维护、功率受限等诸多原因,节点在执行计算任务的时候,任务完成时间难以预测且表现出较大的波动,从而存在部分节点计算任务完成时间远远大于平均完成时间,严重拖累整体计算。
为了对抗“落后者问题”,Hadoop、Spark这些大数据处理框架通常采用落后节点检查,计算任务备份的方式。但是系统中的“落后者”难以预测,这种方式会产生过高的计算成本。近期研究者发现,可以通过编码技术来克服分布式系统中的“落后者问题”,采用适当的编码方法生成冗余计算任务,并保证最终计算结果能够从任意足够数目节点上的计算结果获得。由于不需要等待最慢的节点完成计算,适当的编码能够以较小的计算代价保证在部分节点失效/计算落后的情况下,计算任务依然能快速完成。
编码可以缓解“落后者问题”,以常见的(n,k)MDS编码的方案为例,只要n个工作节点中前k个返回的内容就可以解码出最终结果。但是,当返回的结果少于k个时,无法解码出最终的结果,此时如果最终期限到来,那么意味着这次计算任务失败。根据当前署名发明人的研究发现,在很多情况下计算只需要一个近似结果,一方面,是因为数据矩阵A本身包含很多无用信息。现实系统中,尤其是无线环境下从客户端采集的数据,包含很多冗余甚至对主题无用的信息。这部分数据并不会对目标系统功能的训练实现提供助益。另一方面,一个近似结果可能比最终结果好。过拟合是机器学习中不可避免的一个问题,如果A是训练集,那么从A的完整数据训练得到的模型,未必会比A的部分数据中训练得到的模型有更好的泛化能力。
因此,有必要提出一种可以在计算过程获得近似结果,同时可以对抗“落后者”延迟的分布式计算方法。
发明内容
针对现有技术中提到的问题,本发明的目的是改进编码的分布式计算方法,使得计算能够在中途就获得近似结果,可以随时结束计算任务,并能够对抗“落后者”延迟,在保证精度的同时提高计算效率。
为了达到上述发明目的,本发明采用如下技术方案:
一种基于优先级编码的分布式计算方法,基于主从架构实现,工作集群由主节点和工作节点构成。主节点负责分发任务和汇总最终的计算结果,工作节点负责运算分配给自己的工作任务并返回给主节点。具体地,所述方法包括以下步骤:
主节点获得矩阵-向量相乘的计算任务Ax,对数据矩阵A进行奇异值分解,将计算任务变换为其中ui为A的左奇异向量,vi为A的右奇异向量,σi为奇异值,r为A的秩,x是向量;
主节点将计算任务分为第一阶段子任务/>和第二阶段子任务∑ziiui),对各子任务分组使用优先级编码并存储到工作节点;
各工作节点计算分配给自己的第一阶段子任务,并将计算结果返回给主节点;
主节点组合来自各工作节点的第一阶段子任务计算结果,解码得到第一阶段子任务近似结果zi并广播给所有的工作节点,工作节点开始进入第二阶段子任务的计算;
工作节点将第二阶段子任务的计算结果返回给主节点,主节点组合来自各工作节点的第二阶段子任务计算结果,解码得到第二阶段子任务近似结果
当主节点获得的第二阶段子任务近似结果的准确率符合预定目标时,停止计算任务,将当前的/>作为结果返回。
为了便于对上述技术方案有更清楚的了解,下面结合发明原理来阐述每一步的技术构思:
为了满足Anytime Automation,首先构思了一种近似的分布式计算的方案,对数据矩阵A进行奇异值分解(SVD),将分解得到的分片对应的计算结果的累加作为中间结果,主要的步骤包括:
对矩阵A进行奇异值分解;
将奇异值矩阵分片存储到工作节点上;
工作节点逐步计算自己的计算任务并返回给主节点;
主节点组合来自工作节点的内容得到近似结果。
其中,对矩阵A进行奇异值分解,具体形式如下:
U=(u1,u2,…,um)是的m×m正交矩阵,由A的左奇异向量组成;
Σ是m×n的矩阵,除了主对角线上的元素由A的奇异值构成,其余元素为0;
V=(v1,v2,…,vn)是n×n的正交矩阵,由A右奇异值向量构成;
r=Rank(A)是A的秩;
按照惯例,对于Σ,其中的奇异值σ1≥σ2≥…σr>0,σr+1=…=σmin(m,n)=0。
所述将奇异值矩阵分片存储到工作节点上,可以按照如下方式实现:
将r个分片作为子任务分配到工作节点上面去计算,每个分片以cjk:(uii,vi)元组的方式存储,cjk表示第j个工作节点的第k个分片。若有ω个工作节点,则每个节点存储/>个分片。
所述工作节点逐步计算自己的计算任务并返回给主节点,具体如下:
当主节点得到一个计算任务Ax,则每个工作节点逐步计算并将结果返回给主节点。因为每个σ对应的重要性不一样,所以工作节点总是优先计算存储分片中i对应更小的/>任务。
所述主节点组合来自工作节点的内容得到近似结果,具体如下:
主节点汇总所有工作节点返回的计算结果,任意时刻如果主节点得到工作节点返回的结果如果当前获得的近似结果为/>(初始为0),做求和/>因为主节点一直从工作节点获得更新,所以/>的准确率是越来越高的。并且,主节点可以随时停止计算任务,将当前的/>作为结果返回。当所有工作节点的计算结果都顺利返回是,主节点可以恢复出最终结果,此时,/>
可以看到,这种近似的分布式计算满足Anytime Automation的要求,可以随时返回一个近似结果,并且最终可以得到一个精确结果。
在此基础上,为了对抗“落后者”问题,本发明提出一种基于优先级编码的分布式计算方法,包括以下步骤:
S1、将计算任务拆解为两个阶段的子任务,并分组编码存储到工作节点;
S2、按近似计算的方式执行第一阶段子任务;
S3、按近似计算的方式执行第二阶段子任务;
S4、主节点返回近似结果。
步骤S1中,将计算任务拆解为两个阶段子任务,并分组编码存储到工作节点,具体过程如下:
为了引入编码对抗“落后者”问题,首先将计算任务拆分为两步,第一步是分布式计算/>第二步是计算∑ziiui)。又因为每个σ对应的计算结果重要性不一样,根据Eckart–Young–Mirsky定理,矩阵A前k个奇异值分解分片的求和可以对应秩k矩阵最佳近似。所以希望先获得σi排序在前对应的计算结果,这样能保证近似结果的准确率上升更快。为此,借鉴优先级编码传输(Priority Encoding Transmission,PET)的核心思想,对两个阶段子任务分别使用基于优先级的编码,来对抗落后者,同时,还可以保证优先级高的计算任务更早返回到主节点。
具体而言,对于第一阶段子任务使用优先级编码并存储到工作节点,方法如下:
首先根据优先级分组,将vi按序划分为p组,分组大小可以根据优先级自定义;其次将每个分组内的vi通过MDS编码编码成ω份,然后分别存储到ω个工作节点中去。这样每个分组的任务在所有ω个工作节点都有分配,也就是说每个工作节点都存有p份内容,并且只要部分节点的工作内容就可以恢复分组的内容。如果工作节点优先计算前面分组的内容并返回,就可以保证优先级高分组的内容总是优先被解码出来。通过这个特性,可以总是优先解码出vi,i对应更小的内容。
具体而言,对于第二阶段子任务∑ziiui)使用优先级编码并存储到工作节点,方法如下:
令hi=σiui,首先根据优先级分组,将hi划分为q组,同样,分组大小可以根据优先级可以自定义;其次,对于每个分组内的hi,它是一个列向量,可以按行划分,然后编码成ω份,然后分别存储到ω个工作节点中去。这样,所有的hi在所有工作节点上都有部分编码存储。
步骤S2中,对第一阶段子任务的近似计算,具体过程如下:
当主节点得到一个计算任务Ax,将x广播给所有的工作节点。每个节点依次计算并返回,/>表示在第j个工作节点上存储的第i个分组的v的编码部分。当主节点获得足够分片的内容时,就可以解码出第i个分组内对应的中间结果zi。这意味着假如第i组采用的是(k,ω)MDS编码,那么只要所有ω个工作节点中的k个工作节点返回内容,主节点就可以解码出对应的结果。此时主节点可以让所有落后的工作节点直接计算i+1分组对应的存储内容。因为主节点是按分组解码出zi,所以得到的zi是有序的,可以作为所有结果的近似部分。主节点可以随时停止第一阶段的计算,返回当前解码出来的zi,并进入第二阶段。
步骤S3中,对第二阶段子任务的近似计算,具体过程如下:
当主节点结束第一阶段子任务时,将所有得到zi广播给所有的工作节点,工作节点开始进入第二阶段的计算。
第j个工作节点计算第k个分组的并返回给主节点,/>为工作节点j上存储的分组k内的编码块,i代表着分组内的第i个分片。主节点可以根据部分节点返回的内容解码出分组k对应的近似结果yi并和已有的近似结果进行累加/>这和近似分布式矩阵乘法的过程类似。同样的,主节点在解码k分组的内容后,会发布计算k+1分组任务的命令,让计算落后的节点放弃当前的计算转而计算k+1组的任务。同样的,主节点可以随时中止第二阶段的计算过程,返回当前的计算结果作为近似结果。
所述主节点返回近似结果,具体说明如下:
当第二阶段子任务结束时,主节点主动结束任务或者解码出所有的计算结果,主节点当前解码出来的结果就是当前的近似结果。当所有分组的任务都返回时,主节点得到的是完全准确的结果。
相比于现有技术,本发明具有以下有益效果:在主从计算框架下,通过对矩阵的奇异值分解的分片分解后进行两轮基于优先级的编码,主节点负责分发任务和汇总最终的计算结果,工作节点负责运算分配给自己的工作任务并返回给主节点,可以缓解落后者的影响并实现随时返回一个近似计算结果,可以根据任务要求和当前处境灵活地选择结果的精确度,在满足计算精度的情况下提高了分布式计算任务的处理效率。
附图说明
图1是根据一实施例的的计算系统构成示意图;
图2是近似分布式矩阵向量乘法过程图;
图3是优先级编码示意图;
图4是基于优先级编码分布计算的第一阶段子任务的处理流程图;
图5是基于优先级编码分布计算的第二阶段子任务的处理流程图。
具体实施方式
下面结合附图和实施例对本发明的技术方案作进一步说明。
如图1所示,在一个实施例中,以影音图文网站的推荐为例,对本发明所提出的基于优先级编码的主从分布式计算方法进行描述。
推荐矩阵A是推荐系统根据多个推荐策略(算法)从影音用户数据中学习得到,这个矩阵的行向量或者子矩阵对应相关规则。例如A1是基于影音内容生成的子推荐矩阵,A2是基于协同过滤生成的子用户矩阵,则A通过聚合算法,可以包含两者的内容。
x是用户向量,包含了用户的性别、常住地、影音历史等信息,不同维度用相关的数字来代表相关信息。
当推荐系统要对用户x进行推荐时,其实是作运算y=Ax,A代表了从用户信息到推荐内容的映射,y是对应推荐内容的内容向量。因为A的体量太大,可以在主从结构下去求得推荐结果。每当主节点需要对一个用户去作推荐的时候,可以将推荐的计算任务派发给多个工作节点去完成。
用户对推荐结果y的满意程度并不总是需要所有规则的综合,有的时候近似的推荐结果反而可以消除过拟合的副作用,这也是本发明的一个初衷。
为了能够随时返回近似结果,利用矩阵奇异值分解的特性,如图2所示,本发明提出的近似分布式矩阵向量乘法方案,这样可以得到推荐结果的一个近似。将分解为r个子任务,并均等地分配到ω个工作节点上去运算。如图2(a)所示,预先将分片以cjk:(uii,vi)元组的方式存储在工作节点上,cjk表示第j个工作节点的第k个分片。若有ω个工作节点,则每个节点存储/>个分片。如图2(b)所示,当主节点得到一个计算任务Ax,则每个工作节点逐步计算/>并将结果返回给主节点,Ajk表示第j个工作节点的第k个分片上的计算任务。主节点汇总所有工作节点返回的计算结果(∑Ajkx),任意时刻如果主节点得到工作节点返回的结果/>如果当前获得的近似结果为/>(初始为0),做求和/>就是得到的近似推荐结果。因为主节点一直从工作节点获得更新,所以/>的准确率是越来越高的。并且,主节点可以随时停止计算任务,将当前的/>作为结果返回。当所有工作节点的计算结果都顺利返回时,主节点可以恢复出最终结果,此时,/>这是推荐系统最终得到推荐结果。但是,因为“落后者”一直存在,某些分片可能要花费很长的时间才能获得或者不能获得,这导致近似效果会受到影响。
为了对抗“落后者”问题,本发明利用优先级编码方案的特性,来保证可以缓解落后者问题并保证优先级高的分片能够更早被运算出来。如图3所示,优先级编码的核心思路是,先将任务(a1,a2,…,ak)根据优先级分组策略分成x组,然后分别对每组元素进行MDS编码,编码成ω份,分别分配到ω个工作节点上去运算,Wi表示第i个工作节点。这样,每个工作节点上面都有x个编码块。假如第一个分组大小为i,那么使用(ω,i)MDS编码后,只需要所有ω工作节点其中i个能返回计算结果,就可以恢复出第一个分组的计算结果。让工作节点按分组顺序依次运算任务,就可以保证优先级高的分片总能更早被运算出来。
结合上面给出的两种策略,本发明提出基于优先级编码的分布式计算方法,这就是推荐系统在本发明的计算方法下的完整应用。核心过程如下:
S1、将计算任务拆解为两个阶段子任务,并将计算任务分组编码存储到工作节点;
S2、以近似计算的方式完成第一阶段子任务;
S3、以近似计算的方式完成第二阶段子任务;
S4、主节点返回近似推荐结果。
图4和图5分别按两个阶段子任务,展示了基于优先级编码的分布式矩阵向量乘法的详细过程。
在步骤S1中,首先将近似矩阵向量乘法中的计算任务拆分为两步,第一步是分布式计算/>第二步是分布式计算∑ziiui)。两个阶段子任务都使用优先级编码来对抗“落后者”并保证奇异值大的结果更先运算返回。如图4所示,对于第一阶段子任务,根据优先级分组,将V中的vi按序划分为p组,各分组大小可以根据优先级自定义;其次将每个分组内的vi通过MDS编码成ω份/> 表示第j个工作节点上第i个分组的编码任务,然后分别存储到ω个工作节点中去。这样每个分组的任务在所有ω个工作节点都有分配,也就是说每个工作节点都存有p份内容,并且只要部分节点的工作内容就可以恢复分组的内容。如果工作节点优先计算前面分组的内容并返回,就可以保证优先级高分组的内容总是优先被解码出来。通过这个特性,可以总是优先解码出vi,i对应更小的内容。如图5所示,对于第二阶段子任务,令hi=σiui,首先根据优先级分组,将hi划分为q组,同样,分组大小可以根据优先级可以自定义;其次,对于每个分组内的hi,它是一个列向量,可以按行划分,然后编码成ω份/>表示hi在第j个工作节点上的编码部分,然后分别存储到ω个工作节点中去。这样,所有的hi在所有工作节点上都有部分编码存储。图中表示第j个工作节点上所有所有属于第k个分组里h的编码块。
步骤S2全过程如图4所示。
如图4(a)所示,当主节点得到一个计算任务Ax,将x广播给所有的工作节点。计算正式开始。
如图4(b)所示,当工作节点获得x后,每个节点依次计算并返回,/>表示在第j个工作节点上存储的第i个分组的v的编码部分。这个过程可以容忍落后者的存在,只要主节点获得足够分片的内容,就可以解码出第i个分组内对应的中间结果zi。部分节点的运算结果不返回不影响分组结果的解码。
如图4(c)所示,当主节点解码出i-1组的内容,可以让所有落后的工作节点直接计算i分组对应的存储内容。
如图4(d)所示,因为主节点是按分组解码出zi,所以得到的zi是有序的,可以作为所有结果的近似部分。主节点可以随时停止第一阶段的计算,返回当前解码出来的zi,并进入下一阶段。
步骤S3全过程如图5所示。
如图5(a)所示,当主节点结束第一阶段时,将所有得到Z(k)={zi,i=1,2,…,k}广播给所有的工作节点,工作节点开始进入第二阶段的计算。
如图5(b)所示,第j个工作节点计算第k个分组的并返回给主节点,/>为工作节点上存储的k分组内的编码块。主节点可以根据部分节点返回的内容解码出分组k对应的结果并和已有的近似结果进行累加得到当前的近似结果,这和近似分布式矩阵乘法的过程类似。这个过程可以容忍落后者的存在,只需要部分节点的返回的内容就可以解码出分组的结果。
如图5(c)所示,主节点在解码i-1分组的内容后,会发布计算i分组任务的命令,让计算落后的节点放弃当前的计算转而计算i组的任务。
如图5(d)所示,主节点可以随时中止第二阶段的计算过程,返回当前的计算结果作为近似结果。
对于步骤S4,当第二阶段结束时,主节点主动结束任务或者解码出所有的计算结果,主节点当前解码出来的结果就是近似结果。当所有分组的任务都返回时,主节点得到的是完全准确的结果。
由图4和图5阐述的基于优先级的主从计算方案下推荐系统的运用,可以对抗“落后者”带来的精确丢失或者延迟,同时可以随时返回一个近似结果。相较简单地去分布式地计算推荐任务,本发明提出的方案可以随时返回一个近似结果,可以在待推荐用户量大的时候节省计算时间,提高用户的服务质量。比如,类似网易云音乐的6点准时更新,可以使用近似推荐来减少那个节点的运算负载。同时,如果某个用户对当前推荐不满意,可以尝试使用近似结果,来尝试用户满意的推荐,针对每个用户作推荐优化。
最后需要说明的是,本发明提出的一种基于优先级编码的分布式主从计算方法,不仅仅可以使用在推荐系统任务上,也可以使用在各种分布式乘法计算任务上,可以对抗“落后者”带来的服务不足,也可以随时返回近似结果,灵活匹配应用的实际场景。

Claims (5)

1.一种基于优先级编码的分布式计算方法,其特征在于,所述方法包括以下步骤:
主节点获得矩阵-向量相乘的计算任务Ax,对数据矩阵A进行奇异值分解,将计算任务变换为其中ui为A的左奇异向量,vi为A的右奇异向量,σi为奇异值,r为A的秩,x是向量;
主节点将计算任务分为第一阶段子任务/>和第二阶段子任务∑ziiui),对各子任务分组使用优先级编码并存储到工作节点,其中对第一阶段子任务的处理包括:根据优先级分组,将vi按序划分为p组,分组大小根据优先级自定义;将每个分组内的vi通过MDS编码编码成ω份,分别存储到ω个工作节点中;对第二阶段子任务的处理包括:令hi=σiui,根据优先级分组,将hi划分为q组,分组大小根据优先级自定义;每个分组内的hi是一个列向量,将hi按行划分,然后编码成ω份,分别存储到ω个工作节点中去;
各工作节点计算分配给自己的第一阶段子任务,并将计算结果返回给主节点;
主节点组合来自各工作节点的第一阶段子任务计算结果,解码得到第一阶段子任务近似结果zi并广播给所有的工作节点,工作节点开始进入第二阶段子任务的计算;
工作节点将第二阶段子任务的计算结果返回给主节点,主节点组合来自各工作节点的第二阶段子任务计算结果,解码得到第二阶段子任务近似结果
当主节点获得的第二阶段子任务近似结果的准确率符合预定目标时,停止计算任务,将当前的/>作为结果返回。
2.根据权利要求1所述的基于优先级编码的分布式计算方法,其特征在于,所述主节点组合来自各工作节点的第一阶段子任务计算结果,解码得到第一阶段子任务近似结果zi包括:
主节点获得每个工作节点返回的计算结果其中/>表示在第j个工作节点上存储的第i个分组的v的编码部分,当主节点获得一定数量分组的内容时,按分组解码出zi
3.根据权利要求2所述的基于优先级编码的分布式计算方法,其特征在于,所述方法还包括:主节点解码得到第一阶段子任务近似结果zi时,令所有落后的工作节点直接计算i+1分组对应的存储内容。
4.根据权利要求1所述的基于优先级编码的分布式计算方法,其特征在于,所述主节点组合来自各工作节点的第二阶段子任务计算结果,解码得到第二阶段子任务近似结果包括:
主节点获得各工作节点的第二阶段子任务计算结果 为工作节点j上存储的分组k内的编码块,i表示分组内的第i个分片,主节点根据部分节点返回的内容解码出分组k对应的近似结果yi并和已有的近似结果进行累加,/>
5.根据权利要求4所述的基于优先级编码的分布式计算方法,其特征在于,所述方法还包括:主节点解码得到第二阶段子任务近似结果后,发布计算k+1分组任务的命令,并令计算落后的节点放弃当前的计算转而计算k+1组的任务。
CN202010764428.9A 2020-08-03 2020-08-03 一种基于优先级编码的分布式计算方法 Active CN111858721B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010764428.9A CN111858721B (zh) 2020-08-03 2020-08-03 一种基于优先级编码的分布式计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010764428.9A CN111858721B (zh) 2020-08-03 2020-08-03 一种基于优先级编码的分布式计算方法

Publications (2)

Publication Number Publication Date
CN111858721A CN111858721A (zh) 2020-10-30
CN111858721B true CN111858721B (zh) 2023-07-21

Family

ID=72954270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010764428.9A Active CN111858721B (zh) 2020-08-03 2020-08-03 一种基于优先级编码的分布式计算方法

Country Status (1)

Country Link
CN (1) CN111858721B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113505021B (zh) * 2021-05-26 2023-07-18 南京大学 基于多主节点主从分布式架构的容错方法及系统
CN115515181A (zh) * 2022-09-22 2022-12-23 河海大学 无线环境下基于网络编码的分布式计算方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078941A (zh) * 2012-12-31 2013-05-01 中金数据系统有限公司 一种分布式计算系统的任务调度方法及系统
CN111104215A (zh) * 2019-11-15 2020-05-05 河海大学 一种基于分布式编码的随机梯度下降优化方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239144A (zh) * 2014-09-22 2014-12-24 珠海许继芝电网自动化有限公司 一种多级分布式任务处理系统
US10346206B2 (en) * 2016-08-27 2019-07-09 International Business Machines Corporation System, method and computer program product for resource management in a distributed computation system
CN107070459B (zh) * 2017-03-13 2021-06-18 中国矿业大学 一种分布式过程监控信源低计算复杂度高可靠编解码方法
CN108921292B (zh) * 2018-05-02 2021-11-30 东南大学 面向深度神经网络加速器应用的近似计算系统
US11521067B2 (en) * 2018-11-30 2022-12-06 International Business Machines Corporation Decentralized distributed deep learning
CN109769032A (zh) * 2019-02-20 2019-05-17 西安电子科技大学 一种分布式计算方法、系统及计算机设备
CN111045843B (zh) * 2019-11-01 2021-09-28 河海大学 具有容错能力的分布式数据处理方法
CN111400026B (zh) * 2019-11-15 2023-02-28 河海大学 一种基于主从备份技术的分布式负载均衡方法
CN111325008A (zh) * 2020-01-08 2020-06-23 中联财联网科技有限公司 一种基于分布式的公式计算方法
CN111367876B (zh) * 2020-03-04 2023-09-19 中国科学院成都生物研究所 一种基于内存元数据的分布式文件管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078941A (zh) * 2012-12-31 2013-05-01 中金数据系统有限公司 一种分布式计算系统的任务调度方法及系统
CN111104215A (zh) * 2019-11-15 2020-05-05 河海大学 一种基于分布式编码的随机梯度下降优化方法

Also Published As

Publication number Publication date
CN111858721A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN111382844B (zh) 一种深度学习模型的训练方法及装置
CN111858721B (zh) 一种基于优先级编码的分布式计算方法
Li et al. Polynomially coded regression: Optimal straggler mitigation via data encoding
CN103701635A (zh) 一种在线配置Hadoop参数的方法和装置
CN105094970B (zh) 一种求解分布式系统下可分任务多趟调度模型的方法
CN114610474A (zh) 一种异构超算环境下多策略的作业调度方法及系统
CN108399105B (zh) 一种基于改进头脑风暴算法的软硬件划分方法
CN112799852B (zh) 逻辑节点的多维sbp分布式签名决策系统及其方法
Wijayanto et al. Implementation of multi-criteria collaborative filtering on cluster using Apache Spark
CN111104215A (zh) 一种基于分布式编码的随机梯度下降优化方法
CN113505021A (zh) 基于多主节点主从分布式架构的容错方法及系统
CN111400026B (zh) 一种基于主从备份技术的分布式负载均衡方法
CN112612601A (zh) 分布式图像识别的智能模型训练方法及系统
CN111415261A (zh) 银行系统的流控阈值动态更新的控制方法、系统和装置
Thomadakis et al. An efficient steepest-edge simplex algorithm for SIMD computers
CN111629216A (zh) 边缘网络环境下基于随机森林算法的vod业务缓存替换方法
CN114819127B (zh) 一种基于fpga的背压索引式组合计算单元
CN104933110A (zh) 一种基于MapReduce的数据预取方法
CN110175287B (zh) 一种基于Flink的矩阵分解隐式反馈推荐方法和系统
CN110427217B (zh) 基于内容的发布订阅系统匹配算法轻量级并行方法和系统
CN103050981A (zh) 一种电力系统无功优化的分布式并行求解方法
Yokoyama et al. Efficient distributed machine learning for large-scale models by reducing redundant communication
CN115355918B (zh) 火箭故障后的轨迹重构方法、装置、终端设备及存储介质
CN115495224B (zh) 基于优先级的超算节点使用方法、电子设备和存储介质
CN115473834B (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