CN115146788A - 分布式机器学习模型的训练方法、装置、电设备存储介质 - Google Patents

分布式机器学习模型的训练方法、装置、电设备存储介质 Download PDF

Info

Publication number
CN115146788A
CN115146788A CN202210770991.6A CN202210770991A CN115146788A CN 115146788 A CN115146788 A CN 115146788A CN 202210770991 A CN202210770991 A CN 202210770991A CN 115146788 A CN115146788 A CN 115146788A
Authority
CN
China
Prior art keywords
node
model
machine learning
learning model
user end
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.)
Pending
Application number
CN202210770991.6A
Other languages
English (en)
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.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
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 Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202210770991.6A priority Critical patent/CN115146788A/zh
Publication of CN115146788A publication Critical patent/CN115146788A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种分布式机器学习模型的训练方法、装置、电设备存储介质,其中,分布式机器学习模型的训练方法包括删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图;基于所述第二节点关系图得到一个或多个第三节点关系图;基于所述第三节点关系图训练第二机器学习模型等步骤。本申请能够在保护用户数据隐私的前提下,完成机器学习模型的训练,与此同时,本申请能够克服分散训练数据不满足独立同分布条件时,分布式机器学习模型难以收敛的问题。

Description

分布式机器学习模型的训练方法、装置、电设备存储介质
技术领域
本申请涉及人工智能领域,具体而言,涉及一种分布式机器学习模型的训练方法、装置、电设备存储介质。
背景技术
目前,随着人工智能技术的飞速发展,人工智能技术的应用越来越广泛,已经被应用于图像分析、语音识别、文字处理、智能推荐、安全检测等多个领域。以机器学习为代表的人工智能技术强烈依赖于训练模型的数据,当模型训练数据来自多个分散的数据源,且数据源提供的数据涉及用户隐私、商业秘密等不可公开的数据时,传统的机器学习模型训练方式将难以部署实施。同时,由于邮件样本数据涉及用户隐私,且邮件样本数据具有不可公开特性,模型训练前难以摸清邮件样本数据的特征分布情况,难以确认邮件样本数据是否满足独立同分布的假设前提,难以针对性的选择和设计合适的机器学习模型。
发明内容
本申请实施例的目的在于提供一种分布式机器学习模型的训练方法、装置、电设备存储介质,用以在保护用户数据隐私的前提下,完成机器学习模型的训练,与此同时,本申请能够克服分散训练数据不满足独立同分布条件时,分布式机器学习模型难以收敛的问题。
为此,本申请第一方面公开一种分布式机器学习模型的训练方法,所述方法应用于分布式系统中的服务器节点,所述方法包括:
获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到;
基于若干个所述模型精确度构建第一节点关系图,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值;
删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图;
基于所述第二节点关系图得到一个或多个第三节点关系图;
基于所述第三节点关系图训练第二机器学习模型,其中,每个所述第三节点关系图对应一个所述第二机器学习模型。
在本申请第一方面中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
在本申请第一方面中,作为一种可选的实施方式,所述基于所述第三节点关系图训练得到第二机器学习模型,包括:
将所述第二机器学习模型的第一模型参数发送给所述第三节点关系图中的每个所述用户端节点,以使所述第三节点关系图中的每个所述用户端节点基于所述第二机器学习模型的第一模型参数和本地样本数据训练所述第二机器学习模型,直至得到所述第二机器学习模型满足第一预设训练条件时的第二模型参数;
获取每个所述用户端节点发送的所述第二模型参数;
基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数;
判断所述第三模型参数是否满足第二预设训练条件,若不满足所述第二预设训练条件,则迭代训练所述第二机器学习模型,直至所述第三模型参数满足所述第二预设训练条件。
在本可选的实施方式,通过将第二机器学习模型的第一模型参数发送给第三节点关系图中的每个用户端节点,能够使第三节点关系图中的每个用户端节点基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数,同时,通过获取每个用户端节点发送的第二模型参数,能够基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,进而通过判断第三模型参数是否满足第二预设训练条件,迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件,即通过上述步骤,能够以分布式训练方式完成第二机器学习模型的训练。
在本申请第一方面中,作为一种可选的实施方式,所述基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数,包括:
确定所述第二模型参数的总数量;
基于所述第二模型参数的总数量和每个所述第二模型参数计算所有所述第二模型参数的平均值;
将所有所述第二模型参数的平均值作为所述第三模型参数。
在本可选的实施方式,通过确定所述第二模型参数的总数量,进而能够基于所述第二模型参数的总数量和每个所述第二模型参数计算所有所述第二模型参数的平均值,从而能够将所有所述第二模型参数的平均值作为所述第三模型参数。
在本申请第一方面中,作为一种可选的实施方式,在所述基于若干个所述模型精确度构建第一节点关系图之后,所述删除所述权重集合中不满足预设条件的权重元素之前,所述方法还包括:
对所述权重集合中的权重元素进行排序并确定值小于预设阈值的所述权重元素;
将值小于预设阈值的所述权重元素确定为不满足预设条件的所述权重元素。
在本可选的实施方式中,通过对所述权重集合中的权重元素进行排序,进而能够确定值小于预设阈值的所述权重元素,从而能够将值小于预设阈值的所述权重元素确定为不满足预设条件的所述权重元素。
在本申请第一方面中,作为一种可选的实施方式,所述基于所述第二节点关系图得到一个或多个第三节点关系图,包括:
判断所述第二节点关系图是否为连通图,若是则确定一个所述第三节点关系图;
当所述第二节点关系图不是所述连通图时,则将所述第二节点关系图分割为多个所述第三节点关系图,所述第三节点关系图为连通子图。
在本可选的实施方式,通过判断所述第二节点关系图是否为连通图,能够在当所述第二节点关系图不是所述连通图时,则将所述第二节点关系图分割为多个所述第三节点关系图,所述第三节点关系图为连通子图,从而能够分别对至少两个第二机器学习模型进行单独训练。
在本申请第一方面中,作为一种可选的实施方法,在所述获取针对第一机器学习模型的若干个模型精确度之前,所述方法还包括:
将所述对第一机器学习模型的初始化模型参数发送给每个所述用户端节点,以使每个所述用户端节点基于所述第一机器学习模型的初始化模型参数训练所述第一机器学习模型,直至所述第一机器学习模型满足第三预设训练条件,其中,所述第一机器学习模型在第三预设训练条件下所对应的参数为所述用户端节点的模型参数。
在本可选的实施方式中,通过将对第一机器学习模型的初始化模型参数发送给每个用户端节点,能够使每个用户端节点基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件。
本申请第二方面公开一种分布式机器学习模型的训练方法,所述方法应用于分布式系统中的若干个用户端节点,所述方法包括:
向服务器节点发送针对第一机器学习模型的模型精确度,以使得所述服务器节点基于若干个所述模型精确度构建第一节点关系图,和删除所述权重集合中不满足预设条件的权重元素,和从所述边集合中删除所述不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于所述第二节点关系图得到一个或多个第三节点关系图,和基于所述第三节点关系图训练第二机器学习模型,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值,每个所述第三节点关系图对应一个所述第二机器学习模型,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到。
在本申请第二方面中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
在本申请第二方面中,作为一种可选的实施方式,所述方法还包括:
接收所述服务器节点发送的所述第二机器学习模型的第一模型参数,其中,所述用户端节点为所述第三节点关系图中的所述用户端节点;
基于所述第二机器学习模型的第一模型参数和本地样本数据训练所述第二机器学习模型,直至得到所述第二机器学习模型满足第一预设训练条件时的第二模型参数;
向所述服务器节点发送所述第二模型参数,以使所述服务器节点基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数,和判断所述第三模型参数是否满足第二预设训练条件,和当不满足所述第二预设训练条件时迭代训练所述第二机器学习模型,直至所述第三模型参数满足所述第二预设训练条件。
通过将第二机器学习模型的第一模型参数发送给第三节点关系图中的每个用户端节点,能够使第三节点关系图中的每个用户端节点基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数,同时,通过获取每个用户端节点发送的第二模型参数,能够基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,进而通过判断第三模型参数是否满足第二预设训练条件,迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件,即通过上述步骤,能够以分布式训练方式完成第二机器学习模型的训练。
在本申请第二方面中,作为一种可选的实施方式,所述第三模型参数为所有所述第二模型参数的平均值,其中,所有所述第二模型参数的平均值由所述服务器节点在确定所述第二模型参数的总数量之后,基于所述第二模型参数的总数量和每个所述第二模型参数计算得到。
在本可选的实施方式,通过确定所述第二模型参数的总数量,进而能够基于所述第二模型参数的总数量和每个所述第二模型参数计算所有所述第二模型参数的平均值,从而能够将所有所述第二模型参数的平均值作为所述第三模型参数。
在本申请第二方面中,作为一种可选的实施方式,不满足预设条件的所述权重元素为值小于预设阈值的所述权重元素,其中,值小于预设阈值的所述权重元素由所述服务器节点对所述权重集合中的权重元素进行排序之后确定。
在本可选的实施方式中,通过对所述权重集合中的权重元素进行排序,进而能够确定值小于预设阈值的所述权重元素,从而能够将值小于预设阈值的所述权重元素确定为不满足预设条件的所述权重元素。
在本申请第二方面中,作为一种可选的实施方式,当所述第二节点关系图为连通图时,确定一个第三节点关系图,当所述第二节点关系图为连通图时,第二节点关系图分割为多个所述第三节点关系图,所述第三节点关系图为连通子图。
在本可选的实施方式,通过判断所述第二节点关系图是否为连通图,能够在当所述第二节点关系图不是所述连通图时,则将所述第二节点关系图分割为多个所述第三节点关系图,其中,第三节点关系图为连通子图,从而能够分别对至少两个第二机器学习模型进行单独训练。
在本申请第二方面中,作为一种可选的实施方式,在所述接收所述服务器节点发送的所述第二机器学习模型的第一模型参数之前,所述方法还包括:
接收所述服务器节点发送的所述第一机器学习模型的初始化模型参数;
基于所述第一机器学习模型的初始化模型参数训练所述第一机器学习模型,直至所述第一机器学习模型满足第三预设训练条件,其中,所述第一机器学习模型在第三预设训练条件下所对应的参数为所述用户端节点的模型参数。
在本可选的实施方式中,通过将对第一机器学习模型的初始化模型参数发送给每个用户端节点,能够使每个用户端节点基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件。
本申请第三方面公开一种分布式机器学习模型的训练装置,所述装置位于服务器节点中,所述装置包括:
获取模块,用于获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到;
构建模块,用于基于若干个所述模型精确度构建第一节点关系图,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值;
删除模块,用于删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图;
分割模块,用于基于所述第二节点关系图得到一个或多个第三节点关系图;
训练模块,用于基于所述第三节点关系图训练第二机器学习模型,其中,每个所述第三节点关系图对应一个所述第二机器学习模型。
在本申请中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
本申请第四方面公开一种分布式机器学习模型的训练装置,所述装置应用于分布式系统中的若干个用户端节点,所述装置包括:
发送模块,用于向服务器节点发送针对第一机器学习模型的模型精确度,以使得所述服务器节点基于若干个所述模型精确度构建第一节点关系图,和删除所述权重集合中不满足预设条件的权重元素,和从所述边集合中删除所述不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于所述第二节点关系图得到一个或多个第三节点关系图,和基于所述第三节点关系图训练第二机器学习模型,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值,每个所述第三节点关系图对应一个所述第二机器学习模型,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到。
在本申请中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
本申请第五方面公开一种电子设备,所述电子设备应用于服务器节点,所述设备包括:至少一个处理器、存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行本申请第一方面的方法。
本申请的电子设备通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
本申请第六方面公开一种电子设备,所述电子设备应用于用户端节点,所述设备包括:至少一个处理器、存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行本申请第二方面的方法。
本申请的电子设备通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
本申请第七方面公开一种存储介质,所述存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如本申请第一方面和第二方面的方法。
本申请的存储介质通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例一公开的一种分布式机器学习模型的训练方法的流程示意图;
图2是本申请实施例二公开的一种分布式机器学习模型的训练方法的流程示意图;
图3是本申请实施例三公开的一种分布式机器学习模型的训练装置的结构示意图;
图4是本申请实施例四公开的一种分布式机器学习模型的训练装置的结构示意图;
图5是本申请实施例四公开的一种电子设备的结构示意图;
图6是本申请实施例四公开的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一
请参阅图1,图1是本申请实施例公开的一种分布式机器学习模型的训练方法的流程示意图,其中,该方法应用于分布式系统中的服务器节点。如图1所示,本申请实施例的方法包括以下步骤:
101、获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,模型精确度由用户端节点对其他用户端节点的模型进行测试得到;
102、基于若干个模型精确度构建第一节点关系图,其中,第一节点关系图包括权重集合、顶点集合和边集合,顶点集合的顶点表征用户端节点、边集合的边表征用户端节点之间的模型测试关系,权重集合中的权重元素表征两个用户端节点之间的模型精确度平均值;
103、删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图;
104、基于第二节点关系图得到一个或多个第三节点关系图;
105、基于第三节点关系图训练第二机器学习模型,其中,每个第三节点关系图对应一个第二机器学习模型。
在本申请实施例中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请实施例基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请实施例基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
在本申请实施例中,针对步骤101,第一机器学习模型可以是神经网络模型。
在本申请实施例中,针对步骤101,模型精确度由用户端节点对其他用户端节点的模型进行测试得到,是指每个用户端节点对其他用户端节点的模型进行测试而得到模型精确度,例如,假设有M个用户端节点,则M个用户端节点针对第一机器学习模型进行训练能够得到M个模型参数,进而每个用户端节点对其他M-1个用户端节点的模型参数进行测试,得到M*(M-1)个模型精确度。
在本申请实施例中,针对步骤102,第一节点关系图为无向加权图,其中,无向加权图用G(V,E,W)表示,其中顶点集合V={Ci|1≤i≤M,i∈N},边集合E={(Ci,Cj)|Ci,Cj∈V,i∈N,1≤i≤M,j∈N,1≤j≤M},权重集合W={wij|wij=(Pij+Pji)/2},M表示用户端节点的总数。将图G(V,E,W)中所有边的权重wij进行大小排序,排序结果组成集合Wo
在本申请实施例中,针对步骤102,第二机器学习模型可以是神经网络模型。进一步地,每个第三节点关系图对应一个第二机器学习模型是指每个第三节点关系图对应一个第二机器学习模型,例如,基于第二节点关系图能够分割得到二个第三节点关系图,则有两个第二机器学习模型。
在本申请实施例中,针对步骤103,不满足预设条件的权重元素是指在值小于预设值的权重元素,例如,权重集合中值小于0.4的权重元素为不满足预设条件的权重元素。
在本申请实施例中,针对步骤104,通过删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,能够得到第二节点关系图,其中,如果第一节点关系图是一个连通图,则从第一节点关系图中删除不满足预设条件的权重元素对应的边之后而得到第二节点关系图只有一个连通子图,此时,基于第二节点关系图只能得到一个第三节点关系图,即基于第二节点关系图只能得到一个连通子图。另一方面,如果第一节点关系图不是一个连通图,则从第一节点关系图中删除不满足预设条件的权重元素对应的边之后而得到第二节点关系图可被分割为多个第三节点关系图,即将第二节点关系图分割可得到多个连通子图,需要说明的是,第三节点关系图是指连通子图,而多个第三节点关系图是指两个或两个以上的第三节点关系图。
在本申请实施例中,作为一种可选的实施方式,基于第三节点关系图训练得到第二机器学习模型,包括以下子步骤:
将第二机器学习模型的第一模型参数发送给第三节点关系图中的每个用户端节点,以使第三节点关系图中的每个用户端节点基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数;
获取每个用户端节点发送的第二模型参数;
基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数;
判断第三模型参数是否满足第二预设训练条件,若不满足第二预设训练条件,则迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件。
在本可选的实施方式,通过将第二机器学习模型的第一模型参数发送给第三节点关系图中的每个用户端节点,能够使第三节点关系图中的每个用户端节点基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数,同时,通过获取每个用户端节点发送的第二模型参数,能够基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,进而通过判断第三模型参数是否满足第二预设训练条件,迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件,即通过上述步骤,能够以分布式训练方式完成第二机器学习模型的训练。
在本可选的实施方式中,第一预设训练条件可以是第二机器学习模型收敛,也可以是指第二机器学习模型的训练次数到达预设次数,例如到达了5次。
在本可选的实施方式中,第二预设训练条件可以是第二机器学习模型收敛,也可以是指第二机器学习模型循环训练过程的迭代次数训练次数到达预设次数,例如到达了20次。
在本申请实施例中,作为一种可选的实施方式,基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,包括以下子步骤:
确定第二模型参数的总数量;
基于第二模型参数的总数量和每个第二模型参数计算所有第二模型参数的平均值;
将所有第二模型参数的平均值作为第三模型参数。
在本可选的实施方式,通过确定第二模型参数的总数量,进而能够基于第二模型参数的总数量和每个第二模型参数计算所有第二模型参数的平均值,从而能够将所有第二模型参数的平均值作为第三模型参数。
在本申请实施例中,作为一种可选的实施方式,在基于若干个模型精确度构建第一节点关系图之后,删除权重集合中不满足预设条件的权重元素之前,本申请实施例的方法还包括以下步骤:
对权重集合中的权重元素进行排序并确定值小于预设阈值的权重元素;
将值小于预设阈值的权重元素确定为不满足预设条件的权重元素。
在本可选的实施方式中,通过对权重集合中的权重元素进行排序,进而能够确定值小于预设阈值的权重元素,从而能够将值小于预设阈值的权重元素确定为不满足预设条件的权重元素。
在本申请实施例中,作为一种可选的实施方式,基于第二节点关系图得到一个或多个第三节点关系图,包括以下子步骤:
判断第二节点关系图是否为连通图,若是则确定一个第三节点关系图;
当第二节点关系图不是连通图时,则将第二节点关系图分割为多个第三节点关系图多个第三节点关系图,第三节点关系图为连通子图。
在本可选的实施方式,通过判断第二节点关系图是否为连通图,能够在当第二节点关系图不是连通图时,则将第二节点关系图分割为多个第三节点关系图多个第三节点关系图,第三节点关系图为连通子图,从而能够分别对至少两个第二机器学习模型进行单独训练。
在本申请实施例中,作为一种可选的实施方法,在获取针对第一机器学习模型的若干个模型精确度之前,方法还包括:
将对第一机器学习模型的初始化模型参数发送给每个用户端节点,以使每个用户端节点基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件,其中,第一机器学习模型在第三预设训练条件下所对应的参数为用户端节点的模型参数。
在本可选的实施方式中,服务器节点采用高斯随机初始化方法对第一机器学习模型的参数进行初始化,从得到第一机器学习模型的初始化模型参数。
在本可选的实施方式中,第三预设训练条件可以是指第一机器学习模型收敛,也可以是指第一机器学习模型的训练次数到达预设次数,例如到达了80次。
由此可知本可选的实施方式中,通过将对第一机器学习模型的初始化模型参数发送给每个用户端节点,能够使每个用户端节点基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件。
需要说明的是,本申请实施例的分布式机器学习模型的训练方法能够应用于邮件分析这一场景中,下面结合这一场景对本申请实施例的分布式机器学习模型的训练方法进行说明。
作为一种示例,服务器节点S采用高斯随机初始化方法对采用的机器学习模型(比如神经网络模型等)的参数进行初始化,将模型参数初始化值发送给所有分布式邮件样本数据分析用户端节点(即用户端节点)。
进一步地,每个分布式邮件样本数据分析用户端节点Ci将本地存储的邮件样本数据作为训练数据集,采用随机梯度下降算法迭代训练第一机器学习模型,当第一机器学习模型收敛或训练迭代次数达到I=80次时停止训练第一机器学习模型。
进一步地,每个分布式邮件样本数据分析用户端节点Ci将自己的模型参数θik(针对第一机器学习模型的模型参数)发送服务器节点S,由服务器节点S将θik转发给其他9个邮件样本数据分析用户端节点(M=10)。
进一步地,每个分布式邮件样本数据分析用户端节点Ci在本地训练数据上测试从服务器节点S接收到的第9个第一机器学习模型的精确度Pij,1≤j≤10且j≠i。
进一步地,每个分布式邮件样本数据分析用户端节点Ci将本地测试的9个精确度Pij上传至服务器节点S。
进一步地,服务器节点S汇总10个邮件样本数据分析用户端节点上传的90个精确度,以邮件样本数据分析用户端节点为顶点,以精确度为边,以两个顶点之间的两个精确度的平均值为两个顶点之间边的权重,构建无向加权图(即第一节点关系图)G(V,E,W)。其中顶点集合V={Ci|1≤i≤10,i∈N},边集合E={(Ci,Cj)|Ci,Cj∈V,i∈N,1≤i≤10,j∈N,1≤j≤10},权重集合W={wij|wij=(Pij+Pji)/2}。
进一步地,将图G(V,E,W)中所有边的权重wij进行大小排序,排序结果组成集合Wo,依次从Wo中选出最小权重值wmin,从G(V,E,W)中删除该权重值所对应的边,更新集合Wo=Wo-{wmin},循环重复上述过程,直到wmin≥TH=0.6,此时得到第二节点关系图。
进一步地。如果G(V,E,W)是一个连通图,则删除部分边后的G(V,E,W)只有一个子图,如果G(V,E,W)不是一个连通图,则删除部分边后的G(V,E,W)将被分割成多个子图,即分割为多个第三节点关系图多个第三节点关系图,第三节点关系图为连通子图。
进一步地,对于每个子图G′,服务器节点S将单独构建和维护一个分布式机器学习模型M′(即第二机器学习模型)。在第k个训练周期,服务器节点S将模型M′当前参数值发送给子图G′内的所有节点,所有节点以接收到的模型参数值完成各自本地机器学习模型参数的更新。每个节点Ci将本地存储的邮件样本数据作为训练数据集,采用随机梯度下降算法迭代训练当前的模型,当模型收敛或训练迭代次数达到I′=5次时停止训练。每个节点Ci将本地训练之后的模型参数θik回传给服务器节点S。对于每个子图G′,服务器节点S按照以下公式将模型M′的参数更新为θk
Figure BDA0003723981260000251
其中,如果模型M′的参数θk收敛或者k≥ETH=20,则终止训练过程,否则更新k的值为k=k+1,重复训练第二机器学习模型。
通过将本申请实施例的方法应用在邮件分析这一场景中,能够解决分散训练数据不满足独立同分布条件时分布式机器学习模型难以收敛的问题,同时,可在保护节点邮件数据隐私的条件下,对邮件数据特征高度相似的分布式节点进行聚类(即将第二节点图分割为若干个第三节点关系图,从而将相似的节点归类在同一个第三节点关系图中)。另一方面,可以在保护节点邮件数据隐私的条件下,通过训练得到的第二机器学习模型,评估多个节点的邮件数据之间的相似性和关联性。
实施例二
请参阅图2,图2是本申请实施例公开的一种分布式机器学习模型的训练方法的流程示意图,其中,该方法应用于分布式系统中的用户端节点。如图2所示,本申请实施例的方法包括以下步骤:
201、向服务器节点发送针对第一机器学习模型的模型精确度,以使得服务器节点基于若干个模型精确度构建第一节点关系图,和删除权重集合中不满足预设条件的权重元素,和从边集合中删除不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于第二节点关系图得到一个或多个第三节点关系图,和基于第三节点关系图训练第二机器学习模型,其中,第一节点关系图包括权重集合、顶点集合和边集合,顶点集合的顶点表征用户端节点、边集合的边表征用户端节点之间的模型测试关系,权重集合中的权重元素表征两个用户端节点之间的模型精确度平均值,每个第三节点关系图对应一个第二机器学习模型,模型精确度由用户端节点对其他用户端节点的模型进行测试得到。
在本申请实施例中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
在本申请实施例中,作为一种可选的实施方式,本申请实施例的方法还包括以下步骤:
接收服务器节点发送的第二机器学习模型的第一模型参数,其中,用户端节点为第三节点关系图中的用户端节点;
基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数;
向服务器节点发送第二模型参数,以使服务器节点基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,和判断第三模型参数是否满足第二预设训练条件,和当不满足第二预设训练条件时迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件。
通过将第二机器学习模型的第一模型参数发送给第三节点关系图中的每个用户端节点,能够使第三节点关系图中的每个用户端节点基于第二机器学习模型的第一模型参数和本地样本数据训练第二机器学习模型,直至得到第二机器学习模型满足第一预设训练条件时的第二模型参数,同时,通过获取每个用户端节点发送的第二模型参数,能够基于每个用户端节点的第二模型参数计算得到第二机器学习模型的第三模型参数,进而通过判断第三模型参数是否满足第二预设训练条件,迭代训练第二机器学习模型,直至第三模型参数满足第二预设训练条件,即通过上述步骤,能够以分布式训练方式完成第二机器学习模型的训练。
在本申请实施例中,作为一种可选的实施方式,第三模型参数为所有第二模型参数的平均值,其中,所有第二模型参数的平均值由服务器节点在确定第二模型参数的总数量之后,基于第二模型参数的总数量和每个第二模型参数计算得到。
在本可选的实施方式,通过确定第二模型参数的总数量,进而能够基于第二模型参数的总数量和每个第二模型参数计算所有第二模型参数的平均值,从而能够将所有第二模型参数的平均值作为第三模型参数。
在本申请实施例中,作为一种可选的实施方式,不满足预设条件的权重元素为值小于预设阈值的权重元素,其中,值小于预设阈值的权重元素由服务器节点对权重集合中的权重元素进行排序之后确定。
在本可选的实施方式中,通过对权重集合中的权重元素进行排序,进而能够确定值小于预设阈值的权重元素,从而能够将值小于预设阈值的权重元素确定为不满足预设条件的权重元素。
在本申请实施例中,作为一种可选的实施方式,当第二节点关系图为连通图时,确定一个第三节点关系图,当第二节点关系图为连通图时,第二节点关系图分割为多个第三节点关系图多个第三节点关系图,第三节点关系图为连通子图。
在本可选的实施方式,通过判断第二节点关系图是否为连通图,能够在当第二节点关系图不是连通图时,则将第二节点关系图分割为多个第三节点关系图多个第三节点关系图,第三节点关系图为连通子图,从而能够分别对至少两个第二机器学习模型进行单独训练。
在本申请实施例中,作为一种可选的实施方式,在接收服务器节点发送的第二机器学习模型的第一模型参数之前,本申请实施例的方法还包括以下步骤:
接收服务器节点发送的第一机器学习模型的初始化模型参数;
基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件,其中,第一机器学习模型在第三预设训练条件下所对应的参数为用户端节点的模型参数。
在本可选的实施方式中,通过将对第一机器学习模型的初始化模型参数发送给每个用户端节点,能够使每个用户端节点基于第一机器学习模型的初始化模型参数训练第一机器学习模型,直至第一机器学习模型满足第三预设训练条件。
实施例三
请参阅图3,图3是本申请实施例公开的一种分布式机器学习模型的训练装置的结构示意图,其中,该装置位于服务器节点中。如图3所示,装置包括:
获取模块301,用于获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,模型精确度由用户端节点对其他用户端节点的模型进行测试得到;
构建模块302,用于基于若干个模型精确度构建第一节点关系图,其中,第一节点关系图包括权重集合、顶点集合和边集合,顶点集合的顶点表征用户端节点、边集合的边表征用户端节点之间的模型测试关系,权重集合中的权重元素表征两个用户端节点之间的模型精确度平均值;
删除模块303,用于删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图;
分割模块304,用于基于第二节点关系图得到一个或多个第三节点关系图;
训练模块305,用于基于第三节点关系图训练第二机器学习模型,其中,每个第三节点关系图对应一个第二机器学习模型。
在本申请实施例中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请实施例基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请实施例基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
需要说明的是,关于本申请实施例的装置其他详细说明,请参阅本申请实施例一的相关说明,本申请实施例对此不作赘述。
实施例四
请参阅图4,图4是本申请实施例公开一种分布式机器学习模型的训练装置的结构示意图,其中,该装置应用于分布式系统中的若干个用户端节点。如图4所示,本申请实施例装置包括以下功能模块:
发送模块401,用于向服务器节点发送针对第一机器学习模型的模型精确度,以使得服务器节点基于若干个模型精确度构建第一节点关系图,和删除权重集合中不满足预设条件的权重元素,和从边集合中删除不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于第二节点关系图得到一个或多个第三节点关系图,和基于第三节点关系图训练第二机器学习模型,其中,第一节点关系图包括权重集合、顶点集合和边集合,顶点集合的顶点表征用户端节点、边集合的边表征用户端节点之间的模型测试关系,权重集合中的权重元素表征两个用户端节点之间的模型精确度平均值,每个第三节点关系图对应一个第二机器学习模型,模型精确度由用户端节点对其他用户端节点的模型进行测试得到。
在本申请实施例中,由于在机器学习模型的训练过程中,每个用户端节点是基于本地数据对第一机器学习模型进行训练并将针对第一机器学习模型的模型精确度发给服务器节点,这样一来,服务器节点无需获取每个用户端节点的本地数据,进而能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请实施例基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请实施例基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
需要说明的是,关于本申请实施例的装置其他详细说明,请参阅本申请实施例一的相关说明,本申请实施例对此不作赘述。
实施例五
请参阅图5,图5是本申请实施例公开一种电子设备的结构示意图,其中,电子设备应用于服务器节点。如图5所示,本申请实施例的设备包括:至少一个处理器501、存储器502;
存储器502存储计算机执行指令;
至少一个处理器501执行存储器502存储的计算机执行指令,使得至少一个处理器执行本申请实施例一的方法。
本申请实施例的电子设备通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请实施例基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请实施例基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
实施例六
请参阅图6,图6是本申请实施例公开一种电子设备的结构示意图,其中,电子设备应用于用户端节点。如图6所示,本申请实施例的设备包括:至少一个处理器601、存储器602;
存储器602存储计算机执行指令;
至少一个处理器601执行存储器602存储的计算机执行指令,使得至少一个处理器601执行本申请实施例二的方法。
本申请实施例的电子设备通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
实施例七
本申请实施例公开一种存储介质,存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如本申请实施例一和本申请实施例二的方法。
本申请实施例的存储介质通过执行分布式机器学习模型的训练方法,能够在完成机器学习模型的训练的同时,又能够确保每个用户端节点的本地数据的隐私性。另一方面,本申请基于第一节点关系图能够删除权重集合中不满足预设条件的权重元素,并从边集合中删除不满足预设条件的权重元素对应的边,以得到第二节点关系图,这样一来,就能够避免不满足预设条件的模型精确度对模型训练的影响,进而能够在训练模型所用的数据不满足独立同分布条件的前提下,提高模型精确度的收敛性,与此同时,本申请基于第二节点关系图能够得到第三节点关系图,进而能够基于第三节点关系图训练第二机器学习模型,这样一来,由于每个第三节点关系图对应一个第二机器学习模型,进而基于第三节点关系图对每个第二机器学习模型进行分别训练,使第二机器学习模型有更好的模型收敛性。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (17)

1.一种分布式机器学习模型的训练方法,其特征在于,所述方法应用于分布式系统中的服务器节点,所述方法包括:
获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到;
基于若干个所述模型精确度构建第一节点关系图,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值;
删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图;
基于所述第二节点关系图得到一个或多个第三节点关系图;
基于所述第三节点关系图训练第二机器学习模型,其中,每个所述第三节点关系图对应一个所述第二机器学习模型。
2.如权利要求1所述的方法,其特征在于,所述基于所述第三节点关系图训练得到第二机器学习模型,包括:
将所述第二机器学习模型的第一模型参数发送给所述第三节点关系图中的每个所述用户端节点,以使所述第三节点关系图中的每个所述用户端节点基于所述第二机器学习模型的第一模型参数和本地样本数据训练所述第二机器学习模型,直至得到所述第二机器学习模型满足第一预设训练条件时的第二模型参数;
获取每个所述用户端节点发送的所述第二模型参数;
基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数;
判断所述第三模型参数是否满足第二预设训练条件,若不满足所述第二预设训练条件,则迭代训练所述第二机器学习模型,直至所述第三模型参数满足所述第二预设训练条件。
3.如权利要求2所述的方法,其特征在于,所述基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数,包括:
确定所述第二模型参数的总数量;
基于所述第二模型参数的总数量和每个所述第二模型参数计算所有所述第二模型参数的平均值;
将所有所述第二模型参数的平均值作为所述第三模型参数。
4.如权利要求1所述的方法,其特征在于,在所述基于若干个所述模型精确度构建第一节点关系图之后,所述删除所述权重集合中不满足预设条件的权重元素之前,所述方法还包括:
对所述权重集合中的权重元素进行排序并确定值小于预设阈值的所述权重元素;
将所述值小于预设阈值的所述权重元素确定为不满足预设条件的所述权重元素。
5.如权利要求1所述的方法,其特征在于,所述基于所述第二节点关系图得到一个或多个第三节点关系图,包括:
判断所述第二节点关系图是否为连通图,若是则确定一个所述第三节点关系图;
当所述第二节点关系图不是所述连通图时,则将所述第二节点关系图分割为多个所述第三节点关系图,所述第三节点关系图为连通子图。
6.如权利要求1所述的方法,其特征在于,在所述获取针对第一机器学习模型的若干个模型精确度之前,所述方法还包括:
将所述对第一机器学习模型的初始化模型参数发送给每个所述用户端节点,以使每个所述用户端节点基于所述第一机器学习模型的初始化模型参数训练所述第一机器学习模型,直至所述第一机器学习模型满足第三预设训练条件,其中,所述第一机器学习模型在第三预设训练条件下所对应的参数为所述用户端节点的模型参数。
7.一种分布式机器学习模型的训练方法,其特征在于,所述方法应用于分布式系统中的若干个用户端节点,所述方法包括:
向服务器节点发送针对第一机器学习模型的模型精确度,以使得所述服务器节点基于若干个所述模型精确度构建第一节点关系图,和删除所述权重集合中不满足预设条件的权重元素,和从所述边集合中删除所述不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于所述第二节点关系图得到一个或多个第三节点关系图,和基于所述第三节点关系图训练第二机器学习模型,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值,每个所述第三节点关系图对应一个所述第二机器学习模型,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述服务器节点发送的所述第二机器学习模型的第一模型参数,其中,所述用户端节点为所述第三节点关系图中的所述用户端节点;
基于所述第二机器学习模型的第一模型参数和本地样本数据训练所述第二机器学习模型,直至得到所述第二机器学习模型满足第一预设训练条件时的第二模型参数;
向所述服务器节点发送所述第二模型参数,以使所述服务器节点基于每个所述用户端节点的所述第二模型参数计算得到所述第二机器学习模型的第三模型参数,和判断所述第三模型参数是否满足第二预设训练条件,和当不满足所述第二预设训练条件时迭代训练所述第二机器学习模型,直至所述第三模型参数满足所述第二预设训练条件。
9.如权利要求8所述的方法,其特征在于,所述第三模型参数为所有所述第二模型参数的平均值,其中,所有所述第二模型参数的平均值由所述服务器节点在确定所述第二模型参数的总数量之后,基于所述第二模型参数的总数量和每个所述第二模型参数计算得到。
10.如权利要求7所述的方法,其特征在于,不满足预设条件的所述权重元素为值小于预设阈值的所述权重元素,其中,值小于预设阈值的所述权重元素由所述服务器节点对所述权重集合中的权重元素进行排序之后确定。
11.如权利要求7所述的方法,其特征在于,当所述第二节点关系图为连通图时,第三节点关系图的数量为一个,当所述第二节点关系图不是连通图时,基于第二节点关系图得到多个所述第三节点关系图,所述第三节点关系图为连通子图。
12.如权利要求7所述的方法,其特征在于,在所述接收所述服务器节点发送的所述第二机器学习模型的第一模型参数之前,所述方法还包括:
接收所述服务器节点发送的所述第一机器学习模型的初始化模型参数;
基于所述第一机器学习模型的初始化模型参数训练所述第一机器学习模型,直至所述第一机器学习模型满足第三预设训练条件,其中,所述第一机器学习模型在第三预设训练条件下所对应的参数为所述用户端节点的模型参数。
13.一种分布式机器学习模型的训练装置,其特征在于,所述装置位于服务器节点中,所述装置包括:
获取模块,用于获取若干用户端节点发送的针对第一机器学习模型的若干个模型精确度,其中,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到;
构建模块,用于基于若干个所述模型精确度构建第一节点关系图,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值;
删除模块,用于删除所述权重集合中不满足预设条件的权重元素,并从所述边集合中删除所述不满足预设条件的权重元素对应的边,以得到第二节点关系图;
分割模块,用于基于所述第二节点关系图得到一个或多个第三节点关系图;
训练模块,用于基于所述第三节点关系图训练第二机器学习模型,其中,每个所述第三节点关系图对应一个所述第二机器学习模型。
14.一种分布式机器学习模型的训练装置,其特征在于,所述装置应用于分布式系统中的若干个用户端节点,所述装置包括:
发送模块,用于向服务器节点发送针对第一机器学习模型的模型精确度,以使得所述服务器节点基于若干个所述模型精确度构建第一节点关系图,和删除所述权重集合中不满足预设条件的权重元素,和从所述边集合中删除所述不满足预设条件的权重元素对应的边以得到第二节点关系图,和基于所述第二节点关系图得到一个或多个第三节点关系图,和基于所述第三节点关系图训练第二机器学习模型,其中,所述第一节点关系图包括权重集合、顶点集合和边集合,所述顶点集合的顶点表征所述用户端节点、所述边集合的边表征所述用户端节点之间的模型测试关系,所述权重集合中的权重元素表征两个所述用户端节点之间的模型精确度平均值,每个所述第三节点关系图对应一个所述第二机器学习模型,所述模型精确度由所述用户端节点对其他所述用户端节点的模型进行测试得到。
15.一种电子设备,其特征在于,所述电子设备应用于服务器节点,所述设备包括:至少一个处理器、存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-6任一项所述的方法。
16.一种电子设备,其特征在于,所述电子设备应用于用户端节点,所述设备包括:至少一个处理器、存储器及;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求7-12任一项所述的方法。
17.一种存储介质,其特征在于,所述存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-6任一项或7-12任一项所述的方法。
CN202210770991.6A 2022-06-30 2022-06-30 分布式机器学习模型的训练方法、装置、电设备存储介质 Pending CN115146788A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210770991.6A CN115146788A (zh) 2022-06-30 2022-06-30 分布式机器学习模型的训练方法、装置、电设备存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210770991.6A CN115146788A (zh) 2022-06-30 2022-06-30 分布式机器学习模型的训练方法、装置、电设备存储介质

Publications (1)

Publication Number Publication Date
CN115146788A true CN115146788A (zh) 2022-10-04

Family

ID=83410815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210770991.6A Pending CN115146788A (zh) 2022-06-30 2022-06-30 分布式机器学习模型的训练方法、装置、电设备存储介质

Country Status (1)

Country Link
CN (1) CN115146788A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117876156A (zh) * 2024-03-11 2024-04-12 国网江西省电力有限公司南昌供电分公司 基于多任务电力物联终端监测方法、电力物联终端及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117876156A (zh) * 2024-03-11 2024-04-12 国网江西省电力有限公司南昌供电分公司 基于多任务电力物联终端监测方法、电力物联终端及介质

Similar Documents

Publication Publication Date Title
Tuor et al. Overcoming noisy and irrelevant data in federated learning
CN111124840B (zh) 业务运维中告警的预测方法、装置与电子设备
CN111178542B (zh) 基于机器学习建模的系统和方法
US20200065673A1 (en) Pre-training system for self-learning agent in virtualized environment
CN110334742B (zh) 一种用于文档分类的基于强化学习的通过添加虚假节点的图对抗样本生成方法
US20190287022A1 (en) Data processing system and method
Deutsch et al. Zero shot learning via multi-scale manifold regularization
CN112396106B (zh) 内容识别方法、内容识别模型训练方法及存储介质
CN113095333B (zh) 无监督特征点检测方法及装置
CN109919252A (zh) 利用少数标注图像生成分类器的方法
CN110648289A (zh) 图像的加噪处理方法及装置
US20170337240A1 (en) Software function verification system and software function verification method
CN117061322A (zh) 物联网流量池管理方法及系统
CN113987236B (zh) 基于图卷积网络的视觉检索模型的无监督训练方法和装置
CN115146788A (zh) 分布式机器学习模型的训练方法、装置、电设备存储介质
Arnold et al. Uniform sampling over episode difficulty
CN112115996B (zh) 图像数据的处理方法、装置、设备及存储介质
CN113792892A (zh) 联邦学习建模优化方法、设备、可读存储介质及程序产品
CN113627433A (zh) 基于数据扰动的跨域自适应语义分割方法及装置
CN109934352B (zh) 智能模型的自动进化方法
CN114170484B (zh) 图片属性预测方法、装置、电子设备和存储介质
CN113627464B (zh) 图像处理方法、装置、设备和存储介质
Jamadandi et al. PredGAN: a deep multi-scale video prediction framework for detecting anomalies in videos
CN114330650A (zh) 基于进化元学习模型训练的小样本特征分析方法及装置
CN111695526B (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