CN111030861B - 一种边缘计算分布式模型训练方法、终端和网络侧设备 - Google Patents
一种边缘计算分布式模型训练方法、终端和网络侧设备 Download PDFInfo
- Publication number
- CN111030861B CN111030861B CN201911265164.6A CN201911265164A CN111030861B CN 111030861 B CN111030861 B CN 111030861B CN 201911265164 A CN201911265164 A CN 201911265164A CN 111030861 B CN111030861 B CN 111030861B
- Authority
- CN
- China
- Prior art keywords
- model
- cloud
- edge
- node
- coefficient
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Abstract
本发明实施例提供一种边缘计算分布式模型训练方法、终端和网络侧设备,其中,该方法包括:云端节点确定基础模型和云端模型系数的初始值,并将基础模型和初始值下发至N个边缘节点;基于基础模型和初始值所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将本地模型系数上报至云端节点;云端节点基于接收到的本地模型系数更新云端模型系数,并将更新后的云端模型系数下发至N个边缘节点;在更新后的云端模型系数符合第一目标边缘节点的需求时,确定第一目标边缘节点的本地模型系数的值为更新后的模型系数。本发明实施例可以减少边缘计算分布式模型训练过程中的交互数据量,从而减少资源消耗。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种边缘计算分布式模型训练方法、终端和网络侧设备。
背景技术
随着物联网和人工智能技术的发展,基于物联网领域基于人工智能的边缘计算应用也越来越多,随着终端和边缘平台技术的进步,终端和边缘平台会利用本地数据对云端下发的基础模型进行再训练。
人工智能(Artificial Intelligence,AI)模型的训练需要基于海量的样本数据。云端基础模型的产生,需要利用收集来自各种渠道的海量样本数据。但是在一些人工智能的边缘计算场景中,数据往往有保密性的要求,另外训练数据从边缘节点传到云端会产生大量的网络流量。基于上述因素,造成各边缘节点的模型训练过程存在交互数据量大的缺点。
发明内容
本发明实施例提供一种边缘计算分布式模型训练方法、终端和网络侧设备,以解决相关技术中的边缘分布模型训练存在的交互数据量大的问题。
为解决以上技术问题,本发明采用如下技术方案:
第一方面,本发明实施例提供了一种边缘计算分布式模型训练方法,应用于边缘分布场景,所述边缘分布场景包括一个云端节点和N个边缘节点,所述N为大于1的整数,所述方法包括:
所述云端节点确定基础模型和云端模型系数的初始值,并将所述基础模型和所述初始值下发至所述N个边缘节点;
基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点;
所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点;
在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值,其中,所述N个边缘节点包括所述第一目标边缘节点。
第二方面,本发明实施例还提供了一种边缘计算分布式模型训练系统,包括:存储器、第一处理器及存储在所述存储器上并可在所述第一处理器上运行的第一计算机程序,所述第一计算机程序被所述第一处理器执行时实现本发明实施例第一方面提供的所述边缘计算分布式模型训练方法的步骤。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有第二计算机程序,所述第二计算机程序被第二处理器执行时实现本发明实施例第一方面提供的所述边缘计算分布式模型训练方法的步骤。
在本发明实施例应用于包括一个云端节点和N个边缘节点的边缘分布场景,所述N为大于1的整数,边缘计算分布式模型训练方法包括:所述云端节点确定基础模型和云端模型系数的初始值,并将所述基础模型和所述初始值下发至所述N个边缘节点;基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点;所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点;在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值,其中,所述N个边缘节点包括所述第一目标边缘节点。这样,云端节点确定基础模型和云端模型系数的初始值后,无需从边缘节点获取数据样本,而是通过在各个边缘节点中利用本地数据对边缘分布模型的模型系数进行训练,以更新各个边缘节点的本地模型系数,并通过云端节点对多个边缘节点训练得到的本地模型系数进行综合处理,以更新所述云端模型系数,直至更新后的云端模型系数符合边缘节点的需求时,根据所述更新后的云端模型系数确定该边缘节点的本地模型系数的值,这样,云端节点无需从各个边缘节点中获取大量的样本数据,从而减少了边缘计算分布式模型训练过程中的交互数据量,达到减少资源消耗的效果。
附图说明
图1是本发明实施例提供的一种边缘计算分布式模型训练方法的流程图;
图2是本发明实施例提供的一种边缘计算分布式模型训练方法中云端节点与边缘节点之间的数据交互过程的示意图;
图3是本发明实施例提供的第一种边缘计算分布式模型训练系统的结构图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明实施例可以应用于物联网边缘分布场景中训练边缘计算分布式模型,其中,该物联网边缘分布场景中通过训练得到边缘计算分布模型,以根据该模型执行各项边缘计算,例如:物联网终端侧和边缘平台利用人工智能(Artificial Intelligence,AI)模型进行机器故障诊断、人脸识别等,其中,物联网边缘分布场景包括一个云端节点和多个边缘节点,在具体实施中,边缘节点可以是物联网终端设备,例如:手机终端、网关等,除此之外,边缘节点还可以是边缘平台等,在此不作具体限定。
在相关技术中,主要是通过云端节点下发或者产品开发时将AI模型放到边缘节点中,这样边缘节点可以自己将收集的数据输入到AI模型进行推断,并将处理结果上传到云端节点,但是为了使边缘计算模型与边缘节点中的数据与配置更加匹配,往往需要利用边缘节点中的数据样本对云端下发的基础模型进行再训练。
本发明实施例提供的边缘计算分布式模型训练方法可以满足在各个节点之间数据隔离的情况下,实现分布式的共同模型训练。且在模型训练过程中,各节点之间无需传递样本数据,且每个边缘节点分别训练各自的本地模型系数,使得本发明实施例提供的边缘计算分布式模型训练方法具有交互数据量小、支持异步训练以及保护边缘节点数据隐私性的优点。
请参见图1,图1是本发明实施例提供的一种边缘计算分布式模型训练方法的流程图,所述边缘计算分布式模型训练方法应用于边缘分布场景,所述边缘分布场景包括一个云端节点和N个边缘节点,所述N为大于1的整数,如图1所示,该方法包括以下步骤:
步骤101、所述云端节点确定基础模型和云端模型系数的初始值,并将所述基础模型和所述初始值下发至所述N个边缘节点。
其中,上述云端节点确定基础模型可以理解为:云端节点确定基础模型训练信息,例如:模型结构、输入信息、输出信息以及目标函数。在具体实施中,云端节点可以根据所述边缘分布计算模型的需求和数据特征等确定基础模型训练信息,或者还可以根据预设的数据样本训练得到上述基础模型训练信息,在此不作具体限定。
另外,上述云端模型系数的初始值也可以理解为在云端节点中确定出的所述基础模型中各参数的初始值。在后续边缘节点的训练过程中,所述基础模型的模型系数将根据训练结果发生改变以与边缘节点中的样本数据相匹配。
步骤102、基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点。
其中,所述本地模型系数可以理解为:边缘节点利用本地数据对云端节点下发的模型系数(即所述云端模型系数的初始值)进行训练后得出的模型系数,该模型训练过程中,模型系数的初始值为云端节点下发的模型系数,并利用本地数据进行迭代计算以更新所述模型系数。在训练过程中,所述N个边缘节点分别仅根据各自存储或者采集到的样本数据对所述基础模型及其模型系数进行训练,而不进行云端节点与边缘节点或者边缘节点之间的样本数据交互,从而使得出训练结果为本地模型系数,且所述N个边缘节点可以分别将各自的训练结果上报至云端节点。
作为一种可选的实施方式,所述基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点的步骤,包括:
基于所述初始值,所述N个边缘节点中的每个边缘节点分别利用本地数据对所述基础模型进行模型训练,以将本地模型系数的值由所述初始值变更为第一模型系数值,并向所述云端节点上报迭代信息,其中,所述迭代信息包括所述第一模型系数值、当前系数代和当前系数代的样本数据量;
所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点的步骤,包括:
所述云端节点根据所述迭代信息,更新当前系数代,并将更新后的当前系数代对应的云端模型系数的值变更为第二模型系数值,以及将所述更新后的当前系数代和所述第二模型系数值下发至所述N个边缘节点;
在所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点之后,所述方法还包括:
所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述第二模型系数值,将本地模型系数由所述第一模型系数值变更为第三模型系数值。
在具体实施中,当前系数代的初始值为1,在后续模型训练过程中,云端节点每向边缘节点下发一次更新后的云端模型系数,则更新一次当前系数代,即在当前系数代的基础上加1,作为更新后的当前系数代。实施过程中,云端节点可以以二元信息组(Y_NOW_new,Q)的方式,将更新后的云端模型系数Y_NOW_new和当前系数代Q一同下发至边缘节点。另外,边缘节点也可以以三元信息组(Y_now_i,k,M_i)的方式,将更新后的本地模型系数Y_now_i,迭代所基于的系数代k和当前系数代迭代的样本数据量M_i一同上报至云端节点。
这样,可以根据当前系数代,使云端节点和边缘节点区分各迭代次序中的数据,避免混淆。另外,鉴于边缘节点在上报本地模型系数之后,还可以继续利用本地数据中的其他样本数据进行样本训练,以多次更新并上报本地模型系数,这样,在边缘节点在同一次迭代次序中多次上报本地模型系数的情况下,可以根据当前系数代将在最靠近当前时间上报的本地模型系数替代之前上报的属于同一迭代次序的本地模型系数。
进一步的,所述当前系数代的样本数据量根据所述当前系数代的迭代次数和所述边缘节点预设的每次迭代批次中包含的样本数量确定。
具体的,可以通过计算公式:当前系数代的样本数据量=当前系数代的迭代次数×每次迭代批次中包含的样本数量,确定当前系数代的样本数据量。这样,可以通过计算公式简便的计算得到当前系数代的样本数据量。
进一步的,所述云端节点根据所述迭代信息,更新当前系数代,并将更新后的当前系数代对应的模型系数的值变更为第二模型系数值,包括:
获取与当前系数代匹配的迭代信息;
并根据所述与当前系数代匹配的迭代信息,确定的值Y1,以及确定的值M1,其中,所述i为第i个边缘节点,所述n为当前系数代中执行模型训练的边缘节点的总数,所述M_i为第i个边缘节点的样本数据量,所述Y_now_i为第i个边缘节点的本地模型系数;
在所述M1大于或者等于阈值的情况下,更新当前系数代,并基于更新后的当前系数代和计算公式Y_NOW_new=beta×(Y1/M1)+(1-beta)×Y_NOW_old,将更新后的当前系数代对应的模型系数的值Y_NOW_old变更为第二模型系数值Y_NOW_new,其中,所述beta为更新步长,更新后的当前系数代=更新前的当前系数代+1。
在具体实施中,鉴于训练得出符合需求的本地模型系数的边缘节点可以退出模型训练过程,则所述n的取值可以是小于N的整数。
另外,若M1小于所述阈值,则表示该模型训练过程中的数据量较少,将影响模型训练结果的准确性或者使模型训练不能够实施,在具体实施中,若所述M1小于所述阈值,则云端节点继续等待边缘节点上报迭代信息,直至所述M1大于或者等于阈值则按照上述实施方式更新后的当前系数代对应的模型系数的值Y_NOW_old变更为第二模型系数值Y_NOW_new。
本实施方式中,确保该模型训练过程中的数据量符合阈值,以提升模型训练过程的准确度。
进一步的,所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述第二模型系数值,将本地模型系数由所述第一模型系数值变更为第三模型系数值的步骤,包括:
所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述Y_NOW_new,采用计算公式:
alpha_i×Y_now_i+(1-alpha_i)×Y_NOW_new确定第i个边缘节点取第三模型系数值的本地模型系数,并将所述本地模型系数变更为所述第三模型系数值;
其中,所述alpha为预设本地数据偏好,所述Y_now_i为第i个边缘节点取第一模型系数值的本地模型系数。
在具体实施中,所述alpha的值可以取0至1之间的任一数值,且当本地数据较少或其他边缘节点数据统计差异不大时,建议所述alpha取值为0。当本地数据量很大且具有一定统计差异性时,所述alpha可取较大的数,但建议不超过0.5。
本实施方式中,可以在所述更新后的当前系数代和所述Y_NOW_new的基础上,结合本地数据的偏好对本地模型系数进行相应调整,以使得出的本地模型系数与本地数据量更加匹配,进而提升本地边缘计算模型的准确度。
步骤103、所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点。
本步骤中,云端节点接收到的本地模型系数进行统一处理,以据此变更云端模型系数的值,并下发至各边缘节点,使同一边缘计算场景中各边缘节点的模型系数根据该变更后的云端模型系数确定,从而具有一致性。
需要说明的是,在具体实施中,并不约束各个边缘节点上报本地模型系数的时间,例如:若边缘分布场景中包括10个边缘节点,某次再训练基础模型的迭代过程中,可以出现8个边缘节点先训练完成,从而上报其对应的8个本地模型系数,则云端节点可以仅根据该8个本地模型系数更新云端模型系数。这样,各边缘节点可以自由地选择参与训练和交互或者退出模型训练,而不需要一直在线与其他节点配合,使个边缘节点的工作不受云端节点的控制,提升了模型训练过程中边缘节点的灵活性。
作为一种可选的实施方式,在步骤102与步骤103之间,所述方法还包括:
第二目标边缘节点进行第M次模型训练,并向所述云端节点上报所述第M次模型训练的迭代信息,其中,所述M为大于1的整数,所述N个边缘节点包括所述第二目标边缘节点;
所述云端节点将所述第二目标边缘节点上报的迭代信息更新为所述第M次模型训练的迭代信息。
本实施方式中,在第二目标边缘节点进行第一次模型训练,并向所述云端节点上报模型训练结果之后,该第二目标边缘节点还可以继续进行训练,例如:第二目标边缘节点存储有10000个本地数据,每次模型训练过程仅采用其中100个作为样本数据,则该第二目标边缘节点可以在后续模型训练过程中,采用其他本地数据进行训练,并在每次得出模型训练结果时,将其上报至云端节点,这样,越靠近当前时间得出的模型训练结果执行的迭代次数最多,从而将该模型训练结果替代之前的模型训练结果可以提升模型训练的准确度。
当然,在模型训练过程中,边缘节点还可以进行数据采集,并利用采集的数据进行模型训练,在此不作具体限定。
步骤104、在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值,其中,所述N个边缘节点包括所述第一目标边缘节点。
在具体实施中,第一目标边缘节点可以根据该边缘节点配置的数据偏好等基于所述更新后的云端模型系数确定本地模型系数的值。
需要说明的是,在本步骤之后,若更新后的云端模型系数不符合所述N个边缘节点中至少部分边缘节点的需求时,可以迭代执行上述步骤102至104,且重复过程中,参与模型训练过程的边缘节点分别利用本地数据,且基于更新后的云端模型系数进行模型训练,直至所述N个边缘节点全部确定出符合其需求的模型系数时,终止迭代过程。
作为一种可选的实施方式,所述在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值的步骤,包括:
在所述本地模型系数的值符合第一目标边缘节点的需求的情况下,所述第一目标边缘节点退出模型训练,并根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值。
在具体实施中,上述本地模型系数的值符合第一目标边缘节点的需求可以表示为:第一目标边缘节点在本地数据测试集上,验证更新后的本地模型系数的模型性能,在其性能(例如:计算速度、准确性等)满足要求时,该边缘节点退出模型训练过程。
另外,未退出模型训练过程的其他边缘节点将继续利用本地数据,基于基础模型结构和Y_NOW_new进行训练,并更新模型系数代,直至无边缘节点参与模型训练过程。
本实施方式中,将以得出符合需求的本地模型的边缘节点退出模型训练过程,以减小参与后续模型训练过程的边缘节点的数量,从而减小模型训练过程的复杂程度。
对于云端节点来说,每次更新迭代计算中,边缘节点产生的本地模型系数:
Y_now_i=Y_NOW_old+sum(beta_ij×Sub(G_ij)),其中,G_ij为第i个边缘节点当前系数代中第j次迭代的样本批次,Sub(G_ij)为G_ij进行样本训练迭代时产生的子梯度,beta_ij为前进步长。
云端节点更新系数代时,更新系数代后的模型系数Y_NOW_new与前一系数代的Y_NOW_old的差值为:
Y_NOW_new-Y_NOW_old
=beta×(SUM(M_i×Y_now_i/M1)-Y_NOW_old)
=beta×SUM(M_i/M1×sum(beta_ij×Sub(G_ij))
由于各边缘节点样本均具有一致的任务目标,E(SUM(beta_i×M_i/M1×Sub(G_i)))仍然为该任务目标问题的子梯度。,其中,E(x)为期望函数。
这样,相比Y_NOW_old,Y_NOW_new前进方向的期望一直在子梯度方向上,所以最终能实现模型训练任务的收敛,从而验证了本发明实施例提供的边缘计算分布式模型训练方法是可行的。
为便于理解上述边缘计算分布式模型训练方法,下面以云端节点与边缘节点之间的数据交互过程为例进行具体说明:
请参阅图2,是本发明实施例提供的一种边缘计算分布式模型训练方法中云端节点与边缘节点之间的数据交互过程的示意图,在缘计算分布式模型训练中,云端节点与边缘节点之间的数据交互包括以下步骤:
步骤一、云端节点向边缘节点发送模型训练信息和模型初始系数;
步骤二、边缘节点进行本地模型训练,并将更新的模型系数和对应基础模型系数代发送至云端节点;
步骤三、云端节点根据边缘节点上报的更新后的模型系数和对应基础模型系数代,计算新模型系数,并将所述新模型系数和对应的新系数代发送至边缘节点;
步骤四、边缘节点对接收到的新模型系数进行本地模型验证,若不满足本地需求则重复本地模型训练过程,即重复步骤二至步骤四,直至训练出的模型系数满足本地需求。
在本发明实施例应用于包括一个云端节点和N个边缘节点的边缘分布场景,所述N为大于1的整数,边缘计算分布式模型训练方法包括:所述云端节点确定基础模型和云端模型系数的初始值,并将所述基础模型和所述初始值下发至所述N个边缘节点;基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点;所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点;在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值,其中,所述N个边缘节点包括所述第一目标边缘节点。这样,云端节点确定基础模型和云端模型系数的初始值后,无需从边缘节点获取数据样本,而是通过在各个边缘节点中利用本地数据对边缘分布模型的模型系数进行训练,以更新各个边缘节点的本地模型系数,并通过云端节点对多个边缘节点训练得到的本地模型系数进行综合处理,以更新所述云端模型系数,直至更新后的云端模型系数符合边缘节点的需求时,根据所述更新后的云端模型系数确定该边缘节点的本地模型系数的值,这样,云端节点无需从各个边缘节点中获取大量的样本数据,从而减少了边缘计算分布式模型训练过程中的交互数据量,达到减少资源消耗的效果。
请参阅图3,是本发明实施例提供的一种边缘计算分布式模型训练系统的结构图。如图3所示,边缘计算分布式模型训练系统300包括:存储器301、第一处理器302及存储在存储器301上并可在第一处理器302上运行的第一计算机程序。
需要说明的是,本实施例中上述边缘计算分布式模型训练系统可以执行本发明实施例提供边缘计算分布式模型训练方法中的各个过程,以及达到相同的有益效果,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,其上存储有第二计算机程序,其特征在于,该程序被第二处理器执行时实现本发明实施例提供的终端侧的边缘计算分布式模型训练方法中的步骤,或者该程序被第二处理器执行时实现本发明实施例提供的边缘计算分布式模型训练方法中的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述边缘计算分布式模型训练方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (9)
1.一种边缘计算分布式模型训练方法,应用于边缘分布场景,所述边缘分布场景包括一个云端节点和N个边缘节点,所述N为大于1的整数,其特征在于,所述方法包括:
所述云端节点确定基础模型和云端模型系数的初始值,并将所述基础模型和所述初始值下发至所述N个边缘节点;
基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点;
所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点;
在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值,其中,所述N个边缘节点包括所述第一目标边缘节点。
2.根据权利要求1所述的方法,其特征在于,所述基于所述基础模型和所述初始值,所述N个边缘节点分别利用本地数据进行模型训练,以得到本地模型系数,并将所述本地模型系数上报至所述云端节点的步骤,包括:
基于所述初始值,所述N个边缘节点中的每个边缘节点分别利用本地数据对所述基础模型进行模型训练,以将本地模型系数的值由所述初始值变更为第一模型系数值,并向所述云端节点上报迭代信息,其中,所述迭代信息包括所述第一模型系数值、当前系数代和当前系数代的样本数据量;
所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点的步骤,包括:
所述云端节点根据所述迭代信息,更新当前系数代,并将更新后的当前系数代对应的云端模型系数的值变更为第二模型系数值,以及将所述更新后的当前系数代和所述第二模型系数值下发至所述N个边缘节点;
在所述云端节点基于接收到的本地模型系数更新所述云端模型系数,并将更新后的云端模型系数下发至所述N个边缘节点之后,所述方法还包括:
所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述第二模型系数值,将本地模型系数由所述第一模型系数值变更为第三模型系数值。
3.根据权利要求1所述的方法,其特征在于,所述在所述更新后的云端模型系数符合第一目标边缘节点的需求时,根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值的步骤,包括:
在所述本地模型系数的值符合第一目标边缘节点的需求的情况下,所述第一目标边缘节点退出模型训练,并根据所述更新后的云端模型系数确定所述第一目标边缘节点的本地模型系数的值。
4.根据权利要求2所述的方法,其特征在于,所述当前系数代的样本数据量根据所述当前系数代的迭代次数和所述边缘节点预设的每次迭代批次中包含的样本数量确定。
5.根据权利要求2所述的方法,其特征在于,在所述基于所述初始值,所述N个边缘节点中的每个边缘节点分别利用本地数据对所述基础模型进行模型训练,以将本地模型系数的值由所述初始值变更为第一模型系数值,并向所述云端节点上报迭代信息之后,且在所述云端节点根据所述迭代信息,更新当前系数代,并将更新后的当前系数代对应的云端模型系数的值变更为第二模型系数值,以及将所述更新后的当前系数代和所述第二模型系数值下发至所述N个边缘节点之前,所述方法还包括:
第二目标边缘节点进行第M次模型训练,并向所述云端节点上报所述第M次模型训练的迭代信息,其中,所述M为大于1的整数,所述N个边缘节点包括所述第二目标边缘节点;
所述云端节点将所述第二目标边缘节点上报的迭代信息更新为所述第M次模型训练的迭代信息。
6.根据权利要求2所述的方法,其特征在于,所述云端节点根据所述迭代信息,更新当前系数代,并将更新后的当前系数代对应的模型系数的值变更为第二模型系数值,包括:
获取与当前系数代匹配的迭代信息;
并根据所述与当前系数代匹配的迭代信息,确定的值Y1,以及确定的值M1,其中,所述i为第i个边缘节点,所述n为当前系数代中执行模型训练的边缘节点的总数,所述M_i为第i个边缘节点的样本数据量,所述Y_now_i为第i个边缘节点的本地模型系数;
在所述M1大于或者等于阈值的情况下,更新当前系数代,并基于更新后的当前系数代和计算公式Y_NOW_new=beta×(Y1/M1)+(1-beta)×Y_NOW_old,将更新后的当前系数代对应的模型系数的值Y_NOW_old变更为第二模型系数值Y_NOW_new,其中,所述beta为更新步长,更新后的当前系数代=更新前的当前系数代+1。
7.根据权利要求6所述的方法,其特征在于,所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述第二模型系数值,将本地模型系数由所述第一模型系数值变更为第三模型系数值的步骤,包括:
所述N个边缘节点中的每个边缘节点分别根据所述更新后的当前系数代和所述Y_NOW_new,采用计算公式:
alpha_i×Y_now_i+(1-alpha_i)×Y_NOW_new确定第i个边缘节点取第三模型系数值的本地模型系数,并将所述本地模型系数变更为所述第三模型系数值;
其中,所述alpha为预设本地数据偏好,所述Y_now_i为第i个边缘节点取第一模型系数值的本地模型系数。
8.一种边缘计算分布式模型训练系统,其特征在于,包括:存储器、第一处理器及存储在所述存储器上并可在所述第一处理器上运行的第一计算机程序,所述第一计算机程序被所述第一处理器执行时实现如权利要求1至7中任一项所述的边缘计算分布式模型训练方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有第二计算机程序,所述第二计算机程序被第二处理器执行时实现如权利要求1至7中任一项所述的边缘计算分布式模型训练方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911265164.6A CN111030861B (zh) | 2019-12-11 | 2019-12-11 | 一种边缘计算分布式模型训练方法、终端和网络侧设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911265164.6A CN111030861B (zh) | 2019-12-11 | 2019-12-11 | 一种边缘计算分布式模型训练方法、终端和网络侧设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111030861A CN111030861A (zh) | 2020-04-17 |
CN111030861B true CN111030861B (zh) | 2022-05-31 |
Family
ID=70208795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911265164.6A Active CN111030861B (zh) | 2019-12-11 | 2019-12-11 | 一种边缘计算分布式模型训练方法、终端和网络侧设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111030861B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753997B (zh) * | 2020-06-28 | 2021-08-27 | 北京百度网讯科技有限公司 | 分布式训练方法、系统、设备及存储介质 |
CN111881865A (zh) * | 2020-08-03 | 2020-11-03 | 南京奥拓电子科技有限公司 | 一种自适应的危险行为监控方法与系统、智能设备 |
CN111897655B (zh) * | 2020-08-06 | 2022-10-11 | 泰安泰山高压开关有限公司 | 一种输变电云端智能控制器 |
CN111857015B (zh) * | 2020-08-06 | 2022-04-29 | 重庆正大华日软件有限公司 | 输变电云端智能控制器 |
CN112073239B (zh) * | 2020-09-04 | 2022-04-22 | 天津大学 | 一种云计算环境分布式应用性能预测方法 |
CN112565409B (zh) * | 2020-12-02 | 2022-08-16 | 杭州谐云科技有限公司 | 一种基于云边协同的工业设备监测的方法和系统 |
US11770305B2 (en) | 2021-08-09 | 2023-09-26 | International Business Machines Corporation | Distributed machine learning in edge computing |
CN113537400B (zh) * | 2021-09-14 | 2024-03-19 | 浙江捷瑞电力科技有限公司 | 一种基于分支神经网络的边缘计算节点的分配与退出方法 |
CN113762512B (zh) * | 2021-11-10 | 2022-03-18 | 北京航空航天大学杭州创新研究院 | 分布式模型训练方法、系统及相关装置 |
CN117689041B (zh) * | 2024-01-26 | 2024-04-19 | 西安电子科技大学 | 云端一体化的嵌入式大语言模型训练方法及语言问答方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766889A (zh) * | 2017-10-26 | 2018-03-06 | 济南浪潮高新科技投资发展有限公司 | 一种云端边缘计算融合的深度学习计算系统和方法 |
CN107797867A (zh) * | 2017-10-31 | 2018-03-13 | 济南浪潮高新科技投资发展有限公司 | 一种增强边缘侧智能计算能力的方法及装置 |
CN107871164A (zh) * | 2017-11-17 | 2018-04-03 | 济南浪潮高新科技投资发展有限公司 | 一种雾计算环境个性化深度学习方法 |
CN108255605A (zh) * | 2017-12-29 | 2018-07-06 | 北京邮电大学 | 一种基于神经网络的图像识别协同计算方法及系统 |
CN108427992A (zh) * | 2018-03-16 | 2018-08-21 | 济南飞象信息科技有限公司 | 一种基于边缘云计算的机器学习训练系统及方法 |
CN108491928A (zh) * | 2018-03-29 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 模型参数训练方法、装置、服务器及存储介质 |
CN108985461A (zh) * | 2018-06-29 | 2018-12-11 | 深圳昂云鼎科技有限公司 | 一种自主机器学习的方法、装置和终端设备 |
CN110197128A (zh) * | 2019-05-08 | 2019-09-03 | 华南理工大学 | 基于边缘计算与云端统筹的人脸识别架构设计方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190079898A1 (en) * | 2017-09-12 | 2019-03-14 | Actiontec Electronics, Inc. | Distributed machine learning platform using fog computing |
US11836576B2 (en) * | 2018-04-13 | 2023-12-05 | International Business Machines Corporation | Distributed machine learning at edge nodes |
US11599750B2 (en) * | 2018-09-28 | 2023-03-07 | Intel Corporation | Edge devices utilizing personalized machine learning and methods of operating the same |
-
2019
- 2019-12-11 CN CN201911265164.6A patent/CN111030861B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766889A (zh) * | 2017-10-26 | 2018-03-06 | 济南浪潮高新科技投资发展有限公司 | 一种云端边缘计算融合的深度学习计算系统和方法 |
CN107797867A (zh) * | 2017-10-31 | 2018-03-13 | 济南浪潮高新科技投资发展有限公司 | 一种增强边缘侧智能计算能力的方法及装置 |
CN107871164A (zh) * | 2017-11-17 | 2018-04-03 | 济南浪潮高新科技投资发展有限公司 | 一种雾计算环境个性化深度学习方法 |
CN108255605A (zh) * | 2017-12-29 | 2018-07-06 | 北京邮电大学 | 一种基于神经网络的图像识别协同计算方法及系统 |
CN108427992A (zh) * | 2018-03-16 | 2018-08-21 | 济南飞象信息科技有限公司 | 一种基于边缘云计算的机器学习训练系统及方法 |
CN108491928A (zh) * | 2018-03-29 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 模型参数训练方法、装置、服务器及存储介质 |
CN108985461A (zh) * | 2018-06-29 | 2018-12-11 | 深圳昂云鼎科技有限公司 | 一种自主机器学习的方法、装置和终端设备 |
CN110197128A (zh) * | 2019-05-08 | 2019-09-03 | 华南理工大学 | 基于边缘计算与云端统筹的人脸识别架构设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111030861A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111030861B (zh) | 一种边缘计算分布式模型训练方法、终端和网络侧设备 | |
CN111242282B (zh) | 基于端边云协同的深度学习模型训练加速方法 | |
CN112561078B (zh) | 分布式的模型训练方法及相关装置 | |
Zhang et al. | A multi-agent reinforcement learning approach for efficient client selection in federated learning | |
CN113469373B (zh) | 基于联邦学习的模型训练方法、系统、设备及存储介质 | |
EP4350572A1 (en) | Method, apparatus and system for generating neural network model, devices, medium and program product | |
CN114330125A (zh) | 基于知识蒸馏的联合学习训练方法、装置、设备及介质 | |
CN112529201A (zh) | 纠缠量子态转换方法、装置、设备、存储介质及产品 | |
CN112948885B (zh) | 实现隐私保护的多方协同更新模型的方法、装置及系统 | |
CN114580647A (zh) | 量子系统的模拟方法、计算设备、装置及存储介质 | |
CN114065863A (zh) | 联邦学习的方法、装置、系统、电子设备及存储介质 | |
CN114650227A (zh) | 一种分层联邦学习场景下的网络拓扑构建方法及系统 | |
CN115587633A (zh) | 一种基于参数分层的个性化联邦学习方法 | |
CN114116707A (zh) | 确定联合学习中参与方贡献度的方法及装置 | |
CN114116705A (zh) | 联合学习中确定参与方贡献值的方法及装置 | |
CN117061365B (zh) | 一种节点选择方法、装置、设备及可读存储介质 | |
CN111695689B (zh) | 一种自然语言处理方法、装置、设备及可读存储介质 | |
CN117236421A (zh) | 一种基于联邦知识蒸馏的大模型训练方法 | |
CN114298319A (zh) | 联合学习贡献值的确定方法、装置、电子设备及存储介质 | |
CN114116740A (zh) | 用于联合学习中确定参与方贡献度的方法及装置 | |
KR102425039B1 (ko) | 분산 딥러닝 환경에서 데이터 압축 장치 및 방법 | |
CN115334321B (zh) | 视频流的访问热度的获取方法、装置、电子设备及介质 | |
CN115730681B (zh) | 模型训练方法、装置、设备以及存储介质 | |
WO2022259481A1 (ja) | 学習方法 | |
CN114298320A (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 |