CN110956202B - 基于分布式学习的图像训练方法、***、介质及智能设备 - Google Patents
基于分布式学习的图像训练方法、***、介质及智能设备 Download PDFInfo
- Publication number
- CN110956202B CN110956202B CN201911108461.XA CN201911108461A CN110956202B CN 110956202 B CN110956202 B CN 110956202B CN 201911108461 A CN201911108461 A CN 201911108461A CN 110956202 B CN110956202 B CN 110956202B
- Authority
- CN
- China
- Prior art keywords
- image
- neural network
- server
- training
- client
- 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
- 238000000034 method Methods 0.000 title claims abstract description 182
- 238000012549 training Methods 0.000 title claims abstract description 105
- 230000008569 process Effects 0.000 claims abstract description 135
- 238000003062 neural network model Methods 0.000 claims abstract description 123
- 230000010354 integration Effects 0.000 claims abstract description 20
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000011478 gradient descent method Methods 0.000 claims abstract description 16
- 230000015654 memory Effects 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 12
- 238000013528 artificial neural network Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 239000006185 dispersion Substances 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 238000010801 machine learning Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000994 depressogenic effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于分布式学***衡图片数据集的情况下使训练得到的神经网络模型具有较高的图片识别精度,减少达到指定图片识别精度所需的网络传输开销。
Description
技术领域
本发明涉及机器学习技术领域,特别是涉及一种基于分布式学习的图像训练方法、***、存储介质及智能设备。
背景技术
学习是人类智能的主要标志和获得智慧的基本手段,为了加速人工智能的发展,机器学习应用而生。机器学习是使计算机能够模拟人的学习行为,自动的通过学习获取知识和技能,重新组织抑郁的知识结构,不断改善自身性能,实现自我完善的过程。
图像识别作为人工智能的重要组成部分,在实际的生活中也起着极为重要的作用。为提高图片识别的精度,分布式机器学习***应用而生,该***,由存储有训练数据的客户端承担模型训练任务,服务端收集模型并进行整合,并将整合后的模型再部署至客户端上,以取得比本地的模型更好的图像识别精度。
然而,现有的分布式机器学***衡的,数据的不平衡会增加机器学习模型的偏差,导致模型性能下降。例如客户端上存储的各个类别的图片数量是不同的,使得训练得到的本地的模型对图片数量少的类别的识别精度较低,云服务器收集这些精度较低的模型整合为全局的模型,整合后的模型性能下降。
发明内容
为了解决上述问题,本发明的目的是提供一种能够在不平衡图片数据集的情况下使训练得到的神经网络模型具有较高的图片识别精度,减少达到指定图片识别精度所需的网络传输开销的基于分布式学习的图像训练方法、***、存储介质及智能设备。
一种基于分布式学习的图像训练方法,所述方法包括:
接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端;
所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型;
所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端;
所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
根据本发明提供的基于分布式学***衡性得到缓解,降低机器学***衡图像数据集的情况下训练得到的神经网络模型具有较高的图像识别精度;服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型,从而使该神经网络模型具有较高的图片识别精度,并且减少了达到指定图片识别精度所需的网络传输开销,满足了实际应用需求。
另外,根据本发明上述的基于分布式学习的图像训练方法,还可以具有如下附加的技术特征:
进一步地,接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端的方法包括:
接收各客户端进行图像操作时所产生的图像分布数据,并将所述图像分布数据发送至服务端;
根据所述图像分布数据中各客户端图像的类别分布概率,得到全局图像的概率分布;
通过所述全局图像的概率分布对客户端图像的各类别图像进行图像增强,并将进行图像增强后的图像分布数据传送至服务端。
进一步地,所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型的方法包括:
所述服务端根据增强图像分布数据创建多个用于重新调度客户端训练的中间进程;
计算各中间进程的图像数据平衡度,并根据该图像数据平衡度对各中间进程的客户端进行调整;
通过服务端向进行客户端调整后的各中间进程下发对应的初始神经网络模型。
进一步地,计算各中间进程的图像数据平衡度,并根据该图像数据平衡度对各中间进程的客户端进行调整的方法包括:
根据各中间进程的类别分布概率与均匀类别分布概率的离散度,计算各中间进程的图像数据平衡度;
根据各中间进程的图像数据平衡度,搜索所有未分配中间进程的客户端,根据未分配中间进程的客户端的类别分布概率对中间进程的图像数据平衡度进行调整。
进一步地,所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新的更新模型为:
其中,为客户端k在第t轮训练的神经网络模型参数,b为当前轮训练选取的批量数据,η为训练神经网络使用的学习率,l为损失函数,/>为微分符号,表示损失函数l对权重求导数,/>为模型更新后的模型参数。
进一步地,所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型的方法包括:
接收各中间进程进行模型更新后的所得到的中间层神经网络模型;
将各中间层神经网络模型作为输入,通过联邦平均算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
进一步地,所述全局神经网络模型为:
其中K表示参与训练的客户端个数,n表示总训练集大小,例如所有存储器中的训练图片数量,nk表示客户端k的训练集大小,例如其中一台客户端设备的训练图片数量,t表示当前训练的轮数,表示客户端k在t轮的模型参数,wt表示服务端在t轮的整合后的模型参数,即全局神经网络模型。
本发明的另一实施例提出一种基于分布式学***衡的,数据的不平衡会增加机器学习模型的偏差,导致模型性能下降,图像识别精度低、网络传输开销大的问题。
根据本发明实施例的基于分布式学习的图像训练***,包括:
接收模块,用于接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端;
创建模块,用于所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型;
更新模块,用于所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端;
整合模块,用于所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
本发明的另一个实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明的另一个实施例还提出一种智能设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。
附图说明
图1是本发明第一实施例提出的基于分布式学习的图像训练方法的流程图;
图2是本发明第一实施例提出的基于分布式学习的图像训练方法工作示意图;
图3是本发明第一实施例提出的基于分布式学习的图像训练方法的具体示例图;
图4是图1中步骤S101的具体流程图;
图5是图1中步骤S101的增强图像的工作流程图;
图6是图1中步骤S102的具体流程图;
图7是图1中步骤S101的中间进程的工作流程图;
图8是本发明第二实施例提出的基于分布式学习的图像训练***的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1至图2,本发明第一实施例提出的一种基于分布式学习的图像训练方法,其中,包括步骤S101~S104:
步骤S101,接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端。
其中,分布式机器学***衡的,数据的不平衡会增加机器学***衡的数据集进行调整。具体的,在现有技术中,由于客户端上存储的各个类别的图像数量是不同的,使得训练得到的本地的模型对图像数量少的类别的识别精度较低,云服务器收集这些精度较低的模型整合为全局的模型,整合后的模型性能下降,因此图像识别精度低、网络传输开销大。
本发明实施例中,为了解决这一问题,在本实施例中,利用各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端,使数据分布的不平衡性得到缓解,降低机器学***衡图像数据集的情况下训练得到的神经网络模型具有较高的图像识别精度;通过整合算法对各中间层神经网络模型进行整合,从而使得到的该神经网络模型具有较高的图片识别精度,并且减少了达到指定图片识别精度所需的网络传输开销,满足了实际应用需求。
具体的,请参阅图3,本发明提出的自平衡的训练模型方法执行针对图像分类任务的卷积神经网络模型训练任务,以取得分类精度的提升。本方法设计的框架总共分为三层,客户端层,中间层,服务层。
其中,客户端层具有多个客户端,由多种具有通讯能力和存储能力的客户端设备10组成,包含便携个人计算机,智能手机,传感器,智能摄像头等。各客户端自行维护一个本地图片数据集11,此数据集存储在设备的存储器上,存储器包含闪存,固态硬盘,硬盘驱动器等。数据集11中的数据可以是通过网络12下载的或由设备的图像采集设备收集的,如智能手机从社交软件下载的图片和智能摄像头拍摄的图片,这部分数据将作为训练集,参与神经网络模型训练。此外,客户端具备无线通讯能力,该通信可以通过蜂窝网络、无线局域网(Wi-Fi)建立。客户端能够向中间层计算设备20和云端服务器30发送并接收数据。
其中,中间层具有多个中间层计算设备,各中间层计算设备20是具有计算、存储、通信能力的数字计算机,如个人电脑、工作站、服务器。中间层计算设备20可以通过互联网与客户端设备10和云端服务器30发送和接收数据,可以读取和写入存储器21。中间层计算设备20运行计算机操作***,使用操作***提供的应用程序编程接口,***能够创建并运行中间进程22。中间进程22对客户端设备10的模型训练任务的调度,包括接收网络12传输的神经网络模型,将模型保存至存储器21,通过网络12发送神经网络模型到准备训练的客户端设备。具体的,一种用于图片识别任务的卷积神经网络模型由3个卷积层和2个全连接层组成,第1层为卷积层,采用5×5、12通道、跨度为2的卷积核;第2层为卷积层,以dropout方式与上层连接,采用3×3、18通道、跨度为2的卷积核;第3层为卷积层,以dropout方式与上层连接,采用2×2、24通道、跨度为1的卷积核,卷积结果执行flatten操作;第4层与第5层为全连接层,具有150个神经单元,采用ReLU激活函数,输出值执行softmax函数。此神经网络基于手写体字母数据集EMNIST训练20轮能取得87.85%的测试精度。
其中,服务层具有服务端,该服务端为云端服务器30,是具有计算、存储、通信能力的数字计算机,如工作站、服务器、刀片服务器。云端服务器30可以通过互联网与中间层计算设备20和客户端设备10通信,可以读取和写入存储器31。云端服务器30运行计算机操作***,使用操作***提供的应用程序编程接口,创建有模型收集进程32和模型整合进程33。
可以理解的,单个客户端完成模型训练后,发送模型权重至中间进程,中间进程将训练任务下发至下一个未执行训练任务的客户端,是一种异步的模型更新方式。所有中间进程完成训练任务后,上传模型至服务端,服务端统一进行模型整合,是一种同步的模型更新方式。
在本实施例中,通过接收服务端根据各客户端的图像分布数据下发的图像增强信息,以对便于根据图像增强信息对客户端的图像进行图像增强,通过将进行图像增强后的图像分布数据传送至服务端,以便于服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型。
请参阅图4,接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端的方法包括如下步骤:
步骤S1011,接收各客户端进行图像操作时所产生的图像分布数据,并将所述图像分布数据发送至服务端。
步骤S1012,接收各客户端进行图像操作时所产生的图像分布数据,并将所述图像分布数据发送至服务端。
步骤S1013,根据所述图像分布数据中各客户端图像的类别分布概率,得到全局图像的概率分布。
步骤S1014,通过所述全局图像的概率分布对客户端图像的各类别图像进行图像增强,并将进行图像增强后的图像分布数据传送至服务端。
请参阅图5,具体实施时,统计每个客户端图像的类别分布概率,由于表示每个类别的图像数据的分布情况较为复杂,这里可以用频率来近似表示概率。例如,对于图片数据,类别为图片的标签,标签通常是人工标注的或者计算机辅助标注的用于描述图片中的对象的名词,如飞机、汽车、自行车的图片的数量,各个类别的图片的数量除以总的数据集大小得到每个类别的分布频率,用每个类别的频率来近似表示每个类别的分布概率。
全局图像的概率分布,通过累加各客户端图像的类别分布概率得到,然后根据全局图像的概率分布进行图像增强。首先选择需要增强的图像的类别,可以选取概率小于中位数的类别,然后计算这些类别的增强倍数,计算公式如下:
其中,表示增强类别阈值,可以为全局图像的概率分布的中位数或者平均值。Pi表示全局图像的概率分布中类别i的概率,α表示数据增强系数,该值越大数据增强程度越大,建议设置在0.67至1.25之间。
计算得到每个类别的增强倍数Bi后,服务端发送Bi至客户端,客户端对训练集中的每个数据样本分别生成Bi份增强数据。客户端完成图像增强后,重新统计其增强图像分布数据的概率分布,将新的概率分布发送至服务端。至此,图像增强完成,由于各个类别的图像按照不同的程度增强,例如出现频率较少的数据将生成更多的增强图像样本,因此全局图像的分布更平衡,为进一步减小模型偏差提供基础。增强方法是图片随机翻转,图片随机旋转,图片随机缩放,图片随机移位的一种或多种。
步骤S102,所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型。
如上所述,为降低全局图像的不平衡度,需对客户端数据中的部分数据执行增强,但由于客户端的数量较多,因此需建立中间进程,以对客户端的模型训练过程进行重新调度从而取得每个中间进程的局部平衡,降低模型的偏差并提升模型的准确度。其中,本步骤创建多个中间进程用于重新调度客户端的训练,创建的中间进程个数取决于客户端的数量,和中间进程的设置,通常每个中间进程负责固定个数的客户端。新创建的中间进程负责0个客户端,然后依次添加客户端的训练任务至中间进程。可以理解的,通过各中间进程向对应的用户终端下发初始神经网络模型,为下一步进行初始神经网络模型更新提供必要条件。
请参阅图6,所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型的方法包括如下步骤:
步骤S1021,所述服务端根据增强图像分布数据创建多个用于重新调度客户端训练的中间进程。
步骤S1022,计算各中间进程的图像数据平衡度,并根据该图像数据平衡度对各中间进程的客户端进行调整。
步骤S1023,通过服务端向进行客户端调整后的各中间进程下发对应的初始神经网络模型。
如上所述,根据各中间进程的类别分布概率与均匀类别分布概率的离散度,计算各中间进程的图像数据平衡度;根据各中间进程的图像数据平衡度,搜索所有未分配中间进程的客户端,根据未分配中间进程的客户端的类别分布概率对中间进程的图像数据平衡度进行调整,从而取得每个中间进程的局部平衡,降低模型的偏差并提升模型的准确度。
请参阅图7,具体实施时,数据平衡度的计算方法为中间进程的类别概率分布与均匀类别分布概率的Kullback–Leibler散度,如下:
dm=DKL(Pm||Pu)
其中:DKL表示Kullback–Leibler散度,Pm表示中间进程的类别概率分布,Pu表示均匀分布的均匀类别分布概率,dm越小表示数据越平衡。
计算得到中间进程平衡程度,然后搜索所有未分配中间进程的客户端,使得中间进程在分配此客户端后平衡程度最小,算法如下:
其中,Pk'表示未分配中间进程的客户端k'的类别概率分布,k表示搜索得到的客户端,m表示k被分配的中间进程。
通常限制每个中间进程可分配的客户端个数,达到分配上限的中间进程不再参与客户端的分配,如果所有中间进程达到分配上限,则创建新的中间进程。
步骤S103,所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端。
具体的,所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新的更新模型为:
其中,为客户端k在第t轮训练的神经网络模型参数,b为当前轮训练选取的批量数据,η为训练神经网络使用的学习率,l为损失函数,/>为微分符号,表示损失函数l对权重求导数,/>为模型更新后的模型参数。每次训练得到新的模型参数称为完成了一次模型更新,训练轮数t增加1,神经网络模型的训练过程通常由多轮模型更新构成。
步骤S104,所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
具体的,接收各中间进程进行模型更新后的所得到的中间层神经网络模型;将各中间层神经网络模型作为输入,通过联邦平均算法对各中间层神经网络模型进行整合,以得到全局神经网络模型:
其中K表示参与训练的客户端个数,n表示总训练集大小,例如所有存储器中的训练图片数量,nk表示客户端k的训练集大小,例如其中一台客户端设备的训练图片数量,t表示当前训练的轮数,表示客户端k在t轮的模型参数,wt表示服务端在t轮的整合后的模型参数,即全局神经网络模型。/>和wt具有相同的神经网络结构即相同数量的模型参数,模型参数通常包括卷积核的值和偏置和全连接神经单元的值和偏置。
请参阅图2,作为一个具体的实施例,云端服务器30通过互联网收集客户端设备10的图片数据集11的类别概率分布,以得到的图片数据集11的概率分布计算全局图像的类别概率分布;云端服务器30选择增强图片的类别,例如选取出现频率小于0.5的类别,然后对这些类别分别计算增强倍数,将增强倍数发送至客户端设备10,客户端设备10根据每个类别的增强倍数对其存储器21中的图片样本执行数据增强,增强方法是图片随机翻转,图片随机旋转,图片随机缩放,图片随机移位的组合,增强后的数据写入存储器21。
云端服务器30通过互联网再次收集客户端设备10的图片数据集11的类别概率分布。然后,云端服务器30通过互联网发送创建中间进程指令到中间层计算设备20,中间层计算设备20收到指令后调用操作***应用程序编程接口创建中间进程22。最后,云端服务器30计算中间进程的数据平衡程度,并且为每个中间进程22分配客户端设备10的训练模型任务。
训练时,云端服务器30读取存储器31,如果存储器31没有保存的神经网络模型,则云端服务器30创建新的神经网络模型并初始化,写入存储器31。云端服务器30读取存储器31保存的神经网络模型,通过互联网发送该模型到客户端设备10,客户端设备10保存该模型作为神经网络训练的初始模型。第一个客户端设备根据其图片数据集11训练卷积神经网络模型,训练时通常采用梯度下降法更新模型的权重,训练一般在固定轮数后结束。训练结束后,客户端设备通过网络12发送神经网络模型到中间层计算设备20上运行的中间进程22。中间进程22将该模型写入存储器21,然后通过网络12发送模型到第二个客户端设备,第二个客户端设备将开始新的训练模型任务,反复执行这个步骤直到中间进程22负责的客户端设备都完成了一次训练模型任务。
之后,中间进程22通过互联网发送存储器21中保存的中间层神经网络模型到云端服务器30的模型收集进程32。模型收集进程32将这些中间层神经网络模型作为输入参数传递给模型整合进程33,模型整合进程22执行模型整合算法如联邦平均,将所有中间层神经网络模型整合为一个全局神经网络模型,然后将模型写入存储器31。将写入全局神经网络模型称作完成了一个全局训练过程,模型训练通常执行固定多个全局训练过程。
根据本发明提供的基于分布式学***衡性得到缓解,降低机器学***衡图像数据集的情况下训练得到的神经网络模型具有较高的图像识别精度;服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型,从而使该神经网络模型具有较高的图片识别精度,并且减少了达到指定图片识别精度所需的网络传输开销,满足了实际应用需求。
请参阅图8,基于同一发明构思,本发明第二实施例提供的基于分布式学习的图像训练***,包括:
接收模块100,用于接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端。
具体的,接收各客户端进行图像操作时所产生的图像分布数据,并将所述图像分布数据发送至服务端;根据所述图像分布数据中各客户端图像的类别分布概率,得到全局图像的概率分布;通过所述全局图像的概率分布对客户端图像的各类别图像进行图像增强,并将进行图像增强后的图像分布数据传送至服务端。
创建模块200,用于所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型。
具体的,所述服务端根据增强图像分布数据创建多个用于重新调度客户端训练的中间进程;根据各中间进程的类别分布概率与均匀类别分布概率的离散度,计算各中间进程的图像数据平衡度,根据各中间进程的图像数据平衡度,搜索所有未分配中间进程的客户端,根据未分配中间进程的客户端的类别分布概率对中间进程的图像数据平衡度进行调整;通过服务端向进行客户端调整后的各中间进程下发对应的初始神经网络模型。
更新模块300,用于所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端。
具体的,所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新的更新模型为:
其中,为客户端k在第t轮训练的神经网络模型参数,b为当前轮训练选取的批量数据,η为训练神经网络使用的学习率,l为损失函数,/>为微分符号,表示损失函数l对权重求导数,/>为模型更新后的模型参数。
整合模块400,用于所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
具体的,接收各中间进程进行模型更新后的所得到的中间层神经网络模型;将各中间层神经网络模型作为输入,通过联邦平均算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
所述全局神经网络模型为:
其中K表示参与训练的客户端个数,n表示总训练集大小,例如所有存储器中的训练图片数量,nk表示客户端k的训练集大小,例如其中一台客户端设备的训练图片数量,t表示当前训练的轮数,表示客户端k在t轮的模型参数,wt表示服务端在t轮的整合后的模型参数,即全局神经网络模型。
根据本发明提供的基于分布式学***衡性得到缓解,降低机器学***衡图像数据集的情况下训练得到的神经网络模型具有较高的图像识别精度;服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型,从而使该神经网络模型具有较高的图片识别精度,并且减少了达到指定图片识别精度所需的网络传输开销,满足了实际应用需求。
本发明实施例提出的基于分布式学习的图像训练***的技术特征和技术效果与本发明实施例提出的方法相同,在此不予赘述。
此外,本发明的实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
此外,本发明的实施例还提出一种智能设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述方法的步骤。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种基于分布式学习的图像训练方法,其特征在于,所述方法包括如下步骤:
接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端;
所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型;
所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端;
所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型;
其中,所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型的方法包括:
所述服务端根据增强后的图像分布数据创建多个用于重新调度客户端训练的中间进程;
计算各中间进程的图像数据平衡度,并根据该图像数据平衡度对各中间进程的客户端进行调整;
通过服务端向进行客户端调整后的各中间进程下发对应的初始神经网络模型;
所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新的更新模型为:
其中,为客户端k在第t轮训练的神经网络模型参数,b为当前轮训练选取的批量数据,η为训练神经网络使用的学习率,l为损失函数,/>为微分符号,表示损失函数l对权重/>求导数,/>为模型更新后的模型参数。
2.根据权利要求1所述的基于分布式学习的图像训练方法,其特征在于,接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端的方法包括:
接收各客户端进行图像操作时所产生的图像分布数据,并将所述图像分布数据发送至服务端;
根据所述图像分布数据中各客户端图像的类别分布概率,得到全局图像的概率分布;
通过所述全局图像的概率分布对客户端图像的各类别图像进行图像增强,并将进行图像增强后的图像分布数据传送至服务端。
3.根据权利要求1所述的基于分布式学***衡度,并根据该图像数据平衡度对各中间进程的客户端进行调整的方法包括:
根据各中间进程的类别分布概率与均匀类别分布概率的离散度,计算各中间进程的图像数据平衡度;
根据各中间进程的图像数据平衡度,搜索所有未分配中间进程的客户端,根据未分配中间进程的客户端的类别分布概率对中间进程的图像数据平衡度进行调整。
4.根据权利要求1所述的基于分布式学习的图像训练方法,其特征在于,所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型的方法包括:
接收各中间进程进行模型更新后所得到的中间层神经网络模型;
将各中间层神经网络模型作为输入,通过联邦平均算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
5.根据权利要求4所述的基于分布式学习的图像训练方法,其特征在,所述全局神经网络模型为:
其中K表示参与训练的客户端个数,n表示总训练集大小,nk表示客户端k的训练集大小,t表示当前训练的轮数,表示客户端k在t轮的模型参数,wt表示服务端在t轮的整合后的模型参数,即全局神经网络模型。
6.一种基于分布式学习的图像训练***,其特征在于,能够执行如权利要求1所述的基于分布式学习的图像训练方法,所述***包括:
接收模块,用于接收服务端根据各客户端的图像分布数据下发的图像增强信息,并将进行图像增强后的图像分布数据传送至服务端;
创建模块,用于所述服务端根据增强后的图像分布数据创建中间进程,并通过各中间进程向对应的用户终端下发初始神经网络模型;
更新模块,用于所述各中间进程通过梯度下降法对各自的初始神经网络模型进行更新,并将更新后的中间层神经网络模型传送至服务端;
整合模块,用于所述服务端通过整合算法对各中间层神经网络模型进行整合,以得到全局神经网络模型。
7.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5任意一项所述的方法。
8.一种智能设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911108461.XA CN110956202B (zh) | 2019-11-13 | 2019-11-13 | 基于分布式学习的图像训练方法、***、介质及智能设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911108461.XA CN110956202B (zh) | 2019-11-13 | 2019-11-13 | 基于分布式学习的图像训练方法、***、介质及智能设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110956202A CN110956202A (zh) | 2020-04-03 |
CN110956202B true CN110956202B (zh) | 2023-08-01 |
Family
ID=69977521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911108461.XA Active CN110956202B (zh) | 2019-11-13 | 2019-11-13 | 基于分布式学习的图像训练方法、***、介质及智能设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110956202B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111523165A (zh) * | 2020-04-16 | 2020-08-11 | 刘小刚 | 一种基于深度学习的建筑辅助设计方法及*** |
CN112001321B (zh) * | 2020-08-25 | 2024-06-14 | 商汤国际私人有限公司 | 网络训练、行人重识别方法及装置、电子设备和存储介质 |
CN112070744B (zh) * | 2020-09-08 | 2022-11-22 | 济南博观智能科技有限公司 | 一种人脸识别的方法、***、设备及可读存储介质 |
CN112183587B (zh) * | 2020-09-10 | 2022-04-08 | 国家***南海调查技术中心(国家***南海浮标中心) | 一种海上风电场生物监测方法、***、计算机设备和存储介质 |
CN112329820B (zh) * | 2020-10-21 | 2022-12-27 | 北京邮电大学 | 联邦学习下不均衡数据的采样方法与装置 |
CN114667523A (zh) * | 2020-10-23 | 2022-06-24 | 北京小米移动软件有限公司 | 模型训练方法、装置、服务器、终端和存储介质 |
CN112988382B (zh) * | 2021-03-12 | 2023-09-19 | 中国科学院自动化研究所 | 基于分布式深度学习的医学影像智能分析*** |
CN115115064B (zh) * | 2022-07-11 | 2023-09-05 | 山东大学 | 一种半异步联邦学习方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06309455A (ja) * | 1993-04-21 | 1994-11-04 | Olympus Optical Co Ltd | 画像2値化処理装置 |
CN103279521A (zh) * | 2013-05-28 | 2013-09-04 | 重庆大学 | 一种基于Hadoop的视频大数据分布式解码方法 |
CN107679525A (zh) * | 2017-11-01 | 2018-02-09 | 腾讯科技(深圳)有限公司 | 图像分类方法、装置及计算机可读存储介质 |
CN109032671A (zh) * | 2018-06-25 | 2018-12-18 | 电子科技大学 | 一种基于数据并行策略的分布式深度学习方法及*** |
CN110070116A (zh) * | 2019-04-08 | 2019-07-30 | 云南大学 | 基于深度树状训练策略的分段式选择集成图像分类方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7961960B2 (en) * | 2006-08-24 | 2011-06-14 | Dell Products L.P. | Methods and apparatus for reducing storage size |
US8972315B2 (en) * | 2012-10-25 | 2015-03-03 | Brain Corporation | Apparatus and methods for activity-based plasticity in a spiking neuron network |
CN105160400B (zh) * | 2015-09-08 | 2018-03-02 | 西安交通大学 | 基于l21范数的提升卷积神经网络泛化能力的方法 |
CN106096531B (zh) * | 2016-05-31 | 2019-06-14 | 安徽省云力信息技术有限公司 | 一种基于深度学习的交通图像多类型车辆检测方法 |
US11205103B2 (en) * | 2016-12-09 | 2021-12-21 | The Research Foundation for the State University | Semisupervised autoencoder for sentiment analysis |
CN107508866B (zh) * | 2017-08-08 | 2020-10-02 | 重庆大学 | 减小移动设备端神经网络模型更新的传输消耗的方法 |
CN108986050B (zh) * | 2018-07-20 | 2020-11-10 | 北京航空航天大学 | 一种基于多分支卷积神经网络的图像和视频增强方法 |
CN109102014A (zh) * | 2018-08-01 | 2018-12-28 | 中国海洋大学 | 基于深度卷积神经网络的类别不平衡的图像分类方法 |
CN109117953B (zh) * | 2018-09-11 | 2021-11-09 | 北京迈格威科技有限公司 | 网络参数训练方法和***、服务器、客户端及存储介质 |
CN110163235B (zh) * | 2018-10-11 | 2023-07-11 | 腾讯科技(深圳)有限公司 | 图像增强模型的训练、图像增强方法、装置和存储介质 |
CN109948642B (zh) * | 2019-01-18 | 2023-03-28 | 中山大学 | 基于图像输入的多智能体跨模态深度确定性策略梯度训练方法 |
CN110163246B (zh) * | 2019-04-08 | 2021-03-30 | 杭州电子科技大学 | 基于卷积神经网络的单目光场图像无监督深度估计方法 |
CN110309856A (zh) * | 2019-05-30 | 2019-10-08 | 华为技术有限公司 | 图像分类方法、神经网络的训练方法及装置 |
CN110298163B (zh) * | 2019-06-06 | 2021-04-02 | 重庆大学 | 一种图像验证方法、装置及计算机可读存储介质 |
CN110288030B (zh) * | 2019-06-27 | 2023-04-07 | 重庆大学 | 基于轻量化网络模型的图像识别方法、装置及设备 |
-
2019
- 2019-11-13 CN CN201911108461.XA patent/CN110956202B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06309455A (ja) * | 1993-04-21 | 1994-11-04 | Olympus Optical Co Ltd | 画像2値化処理装置 |
CN103279521A (zh) * | 2013-05-28 | 2013-09-04 | 重庆大学 | 一种基于Hadoop的视频大数据分布式解码方法 |
CN107679525A (zh) * | 2017-11-01 | 2018-02-09 | 腾讯科技(深圳)有限公司 | 图像分类方法、装置及计算机可读存储介质 |
CN109032671A (zh) * | 2018-06-25 | 2018-12-18 | 电子科技大学 | 一种基于数据并行策略的分布式深度学习方法及*** |
CN110070116A (zh) * | 2019-04-08 | 2019-07-30 | 云南大学 | 基于深度树状训练策略的分段式选择集成图像分类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110956202A (zh) | 2020-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110956202B (zh) | 基于分布式学习的图像训练方法、***、介质及智能设备 | |
US11783227B2 (en) | Method, apparatus, device and readable medium for transfer learning in machine learning | |
US11295208B2 (en) | Robust gradient weight compression schemes for deep learning applications | |
US20190279088A1 (en) | Training method, apparatus, chip, and system for neural network model | |
CN107578453A (zh) | 压缩图像处理方法、装置、电子设备及计算机可读介质 | |
US11341415B2 (en) | Method and apparatus for compressing neural network | |
CN113033537A (zh) | 用于训练模型的方法、装置、设备、介质和程序产品 | |
CN107038064A (zh) | 虚拟机管理方法及装置、存储介质 | |
CN111523640A (zh) | 神经网络模型的训练方法和装置 | |
CN113128419B (zh) | 一种障碍物识别方法和装置、电子设备及存储介质 | |
CN112561082A (zh) | 生成模型的方法、装置、设备以及存储介质 | |
CN113379059B (zh) | 用于量子数据分类的模型训练方法以及量子数据分类方法 | |
CN113408570A (zh) | 一种基于模型蒸馏的图像类别识别方法、装置、存储介质及终端 | |
CN113128478A (zh) | 模型训练方法、行人分析方法、装置、设备及存储介质 | |
CN111199540A (zh) | 图像质量评价方法、装置、电子设备及存储介质 | |
CN116362325A (zh) | 一种基于模型压缩的电力图像识别模型轻量化应用方法 | |
CN114065864A (zh) | 联邦学习方法、联邦学习装置、电子设备以及存储介质 | |
CN110069997B (zh) | 场景分类方法、装置及电子设备 | |
CN114492742A (zh) | 神经网络结构搜索、模型发布方法、电子设备和存储介质 | |
US20220114479A1 (en) | Systems and methods for automatic mixed-precision quantization search | |
CN111062914B (zh) | 用于采集脸部图像的方法、装置、电子设备和计算机可读介质 | |
CN113961765B (zh) | 基于神经网络模型的搜索方法、装置、设备和介质 | |
CN116128044A (zh) | 一种模型剪枝方法、图像处理方法及相关装置 | |
CN110782017B (zh) | 用于自适应调整学习率的方法和装置 | |
CN114120416A (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 |