CN109034381B - 训练任务优化系统、方法及其非暂态电脑可读媒体 - Google Patents

训练任务优化系统、方法及其非暂态电脑可读媒体 Download PDF

Info

Publication number
CN109034381B
CN109034381B CN201810597426.8A CN201810597426A CN109034381B CN 109034381 B CN109034381 B CN 109034381B CN 201810597426 A CN201810597426 A CN 201810597426A CN 109034381 B CN109034381 B CN 109034381B
Authority
CN
China
Prior art keywords
training
space
processor
training task
task
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
CN201810597426.8A
Other languages
English (en)
Other versions
CN109034381A (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.)
HTC Corp
Original Assignee
HTC Corp
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 HTC Corp filed Critical HTC Corp
Publication of CN109034381A publication Critical patent/CN109034381A/zh
Application granted granted Critical
Publication of CN109034381B publication Critical patent/CN109034381B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Abstract

一训练任务优化系统,包含一处理器。该处理器用以接收一训练任务的一训练环境信息。该训练环境信息包含对应于该训练任务中的多个训练样本的信息。该处理器用以依据多个存储器影响因子、所述多个训练样本以及一神经网络计算该训练任务的一存储器分配,并判断配适于该存储器分配的一小批次尺寸。响应于该训练环境信息,该处理器用以输出该小批次尺寸,使该训练任务被执行。本公开可为该训练任务选择合适的小批次尺寸,借此实现更佳的训练效率。

Description

训练任务优化系统、方法及其非暂态电脑可读媒体
技术领域
本公开涉及一种计算系统、计算方法以及用以计算的非暂态电脑可读媒体。详细而言,本公开涉及一种用以优化训练任务的系统、方法以及非暂态电脑可读媒体。
背景技术
近期以来,神经网络以及深度学习被有效地应用于不同的技术领域,例如,其可应用于机器视觉、语音辨识以及机器翻译等领域当中。然而,在以巨量的训练数据进行训练时,需同时考量计算速度以及系统限制,否则系统执行训练任务的效率将降低。
发明内容
本公开的一方面涉及一种训练任务优化系统。该训练任务优化系统包含一处理器。该处理器用以接收一训练任务的一训练环境信息。该训练环境信息至少包含对应于该训练任务中的多个训练样本的信息。该处理器用以依据多个存储器影响因子、所述多个训练样本以及一神经网络计算该训练任务的一存储器分配。该处理器用以判断配适于该存储器分配的一小批次尺寸。响应于该训练环境信息,该处理器用以输出该小批次尺寸。
在一实施例中,该训练任务优化系统还包含一存储器。该存储器用以存储多个小批次尺寸以及多个运算效率之间对应关系的一信息,其中该小批次尺寸是依据所述多个运算效率自所述多个小批次尺寸当中选择的。
在另一实施例中,该训练任务优化系统还包含一互动接口。该互动接口用以输入该训练环境信息,其中该训练环境信息还包含对应于所述多个存储器影响因子以及该神经网络的信息。
在又一实施例中,该神经网络包含多个层,该处理器用以计算一第一需求空间,该第一需求空间包含指派予所述多个训练样本的空间以及指派予所述多个层对应的输出信息的空间。
在再一实施例中,该处理器用以自该神经网络获取多个模型参数,该处理器并计算一第二需求空间,该第二需求空间包含指派予所述多个模型参数的空间以及指派予多个梯度值的空间。
在一实施例中,所述多个层分别对应多个候选演算法,该处理器用以自所述多个候选演算法中为所述多个层中的每一者选择一演算法,该处理器并计算一第三需求空间,该第三需求空间包含指派予被选择的该演算法的运算缓冲空间。
在另一实施例中,该处理器用以依据所述多个存储器影响因子、该第一需求空间、该第二需求空间以及该第三需求空间计算该存储器分配。
在又一实施例中,该训练环境信息还包含该训练任务中的多个图形处理器的信息以及一预期效率的信息,该处理器用以依据该预期效率于所述多个图形处理器当中判断出一数量,并输出所述多个图形处理器的该数量。
在再一实施例中,该训练环境信息还包含该训练任务中的多个图形处理器的一数量的信息、多个参数服务器的信息以及一网络频宽的信息,该处理器用以依据所述多个图形处理器的该数量以及该网络频宽于所述多个参数服务器当中判断出一数量,并输出所述多个参数服务器的该数量。
本公开的另一方面涉及一种训练任务优化方法。该训练任务优化方法由一处理器所执行。该训练任务优化方法包含下列步骤:接收一训练任务的一训练环境信息,其中该训练环境信息至少包含对应于该训练任务中的多个训练样本的信息;依据多个存储器影响因子、所述多个训练样本以及一神经网络计算该训练任务的一存储器分配;判断配适于该存储器分配的一小批次尺寸;以及响应于该训练环境信息,输出该小批次尺寸。
在一实施例中,该训练任务优化方法还包含:获取多个小批次尺寸以及多个运算效率之间对应关系的一信息,其中该小批次尺寸是依据所述多个运算效率自所述多个小批次尺寸当中选择的。
在另一实施例中,该神经网络包含多个层,且该训练任务优化方法还包含:计算一第一需求空间,该第一需求空间包含指派予所述多个训练样本的空间以及指派予所述多个层对应的输出信息的空间。
在又一实施例中,该训练任务优化方法还包含:自该神经网络获取多个模型参数;以及计算一第二需求空间,该第二需求空间包含指派予所述多个模型参数的空间以及指派予多个梯度值的空间。
在再一实施例中,所述多个层分别对应多个候选演算法,且该训练任务优化方法还包含:自所述多个候选演算法中为所述多个层中的每一者选择一演算法;以及计算一第三需求空间,该第三需求空间包含指派予被选择的该演算法的运算缓冲空间。
在一实施例中,该训练任务优化方法还包含:依据所述多个存储器影响因子、该第一需求空间、该第二需求空间以及该第三需求空间计算该存储器分配。
在另一实施例中,该训练环境信息还包含该训练任务中的多个图形处理器的信息以及一预期效率的信息,且该训练任务优化方法还包含:依据该预期效率于所述多个图形处理器当中判断出一数量;以及输出所述多个图形处理器的该数量,使该训练任务被执行。
在又一实施例中,该训练环境信息还包含该训练任务中的多个图形处理器的一数量的信息、多个参数服务器的信息以及一网络频宽的信息,且该训练任务优化方法还包含:依据所述多个图形处理器的该数量以及该网络频宽于所述多个参数服务器当中判断出一数量;以及输出所述多个参数服务器的该数量,使该训练任务被执行。
本公开的又一方面涉及一种用以训练任务优化的非暂态电脑可读媒体。该非暂态电脑可读媒体包含多个电脑指令以执行下列程序:接收一训练任务的一训练环境信息,其中该训练环境信息至少包含对应于该训练任务中的多个训练样本的信息;依据多个存储器影响因子、所述多个训练样本以及一神经网络计算该训练任务的一存储器分配;判断配适于该存储器分配的一小批次尺寸;以及响应于该训练环境信息,输出该小批次尺寸。
应注意的是,前述的发明内容以及后述的实施方式皆仅是举例说明而已,其主要目的为详细地解释本公开权利要求当中的内容。
附图说明
参照后续段落中的实施方式以及下列附图,当可更佳地理解本公开的内容:
图1为根据本公开一实施例示出的训练任务优化系统的示意图;
图2为根据本公开一实施例示出的不同小批次尺寸所对应的系统收敛性的示意图;
图3为根据本公开一实施例示出的不同小批次尺寸所对应的系统通量的示意图;
图4为根据本公开一实施例示出的训练任务优化系统的示意图;
图5为根据本公开一实施例示出的训练任务优化方法的步骤流程图;
图6为根据本公开一实施例示出的训练任务优化系统的示意图;以及
图7为根据本公开一实施例示出的训练任务优化系统的示意图。
附图标记说明:
10:训练任务优化系统
100:设置模块
110:存储器
120:处理器
200:训练端
200a~200d:训练端
210:存储装置
220:主存储器
230:中央处理器
240:图形处理器
241~244:图形处理器
300:互动接口
400:训练端
410;存储装置
420:主存储器
430:中央处理器
440:图形处理器
500:训练任务优化方法
S510~S540:步骤流程
610~640:参数服务器
具体实施方式
以下将以附图及详细叙述清楚说明本公开的构思,任何所属技术领域中技术人员在了解本公开的实施例后,当可由本公开所教示的技术,加以改变及修饰,其并不脱离本公开的构思与范围。
本文的用语只为描述特定实施例,而无意为本公开的限制。单数形式如“一”、“这”、“此”、“本”以及“该”,如本文所用,同样也包含多个形式。
关于本文中所使用的“耦接”或“连接”,均可指两个或多个元件或装置相互直接作实体接触,或是相互间接作实体接触,亦可指两个或多个元件或装置相互操作或动作。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
关于本文中所使用的“及/或”,是包括所述事物的任一或全部组合。
关于本文中所使用的用词(terms),除有特别注明外,通常具有每个用词使用在此领域中、在本公开的内容中与特殊内容中的平常意义。某些用以描述本公开的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本公开的描述上额外的引导。
图1为根据本公开一实施例示出的训练任务优化系统的示意图。如图1所示,在本实施例中,一设置模块100,举例而言,可以是云端服务器或独立电脑,其至少包括存储器110以及处理器120。设置模块100通信耦接于训练端200。应注意的是,此处所述的“通信耦接”可为实体或非实体的耦接。例如,在一实施例中,设置模块100以及训练端200可以通过无线通信(例如,Wi-Fi)技术耦接至一网络,借此两者可进行双向的信息交换。在另一实施例中,设置模块100以及训练端200可以通过实体线路耦接至一网络,借此两者可进行双向的信息交换。如图1所示,设置模块100以及训练端200共同构成一训练任务优化系统10。
在一些实施例中,训练端200可为一电脑或多个电脑(或多个处理器)的集成,这些电脑设置以执行一训练任务,例如,关于电脑视觉、语音辨识或机器翻译等等的深度学习程序。如图1所示,在本实施例中,训练端200可为独立电脑,其包括存储装置210、主存储器220、中央处理器(CPU)230和图形处理器(GPU)240。举例而言,存储装置210可为快闪存储器、硬盘(HDD)或固态硬盘(SSD)。主存储器220,例如,可为动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)。当该训练任务的一训练批次开始时,主存储器220可自共享存储器中(图中未示)存取最新的多个模型参数(权重)。主存储器220可自存储装置210存取该训练样本的一子集。中央处理器230可对该训练样本的该子集执行一准备程序以进行格式转换或格式扩增。该训练样本将被传输至该图形处理器240以执行梯度下降运算。通过该梯度下降运算,可产生更新的所述多个模型参数,所述多个模型参数可被传输至该主存储器220。更新后的所述多个模型参数将被传输至该共享存储器,以替代原先的所述多个模型参数。当所述多个模型参数被更新后,该训练任务的该训练批次即完成。而当该训练任务的所有训练批次完成时,该训练任务即完成。
应注意的是,在一些实施例中,尤为在具有多个训练端的实施例中,所述多个模型参数可以存储于一个或多个参数服务器中(例如,图7当中的所述多个参数服务器610~640),所述多个参数服务器可为多个分散式的云端数据库。在此实施例中,当该训练任务的一训练批次开始时,主存储器220可自所述多个参数服务器存取最新的所述多个模型参数。相似地,系统可更新所述多个参数服务器当中的所述多个模型参数,从而完成该训练任务的该训练批次。
需注意的是,在本实施例中,为了实现更高的训练精度,该训练任务需要巨量的输入数据作为样本。一般而言,在执行该训练任务之前,训练端200可将一训练环境信息传输至训练任务优化系统10的设置模块100。该训练环境信息关联于该训练任务当中的各种影响因子(例如,系统限制等等)。例如,该训练任务中使用的一神经网络的复杂性可能影响该训练任务的效率,因此,前述影响因子可包含该训练任务中使用的该神经网络。同样地,前述影响因子也包含该训练任务当中使用的一训练模型,以及该训练任务当中可运用的图形处理器的多寡。前述影响因子还包含了一存储器影响因子,该存储器影响因子是指该训练任务当中可运用的图形处理器或中央处理器的存储器容量。如前所述,在具有多个训练端的实施例中,训练任务当中可运用的参数服务器的多寡,以及用于网络传输的网络频宽,其皆可为该训练任务当中的影响因子。此外,所述多个训练样本的数量(及尺寸)亦为该训练任务中的重要影响因子。该训练环境信息可包含前述的各种影响因子,该设置模块100可获取该训练环境信息,进而估算该训练任务的存储器使用状态。应当理解,本公开的设置模块100可执行一训练任务优化方法以实现该存储器容量与其他影响因子之间的平衡。
在一些实施例中,存储器110可为挥发性存储器(例如,DRAM)或非易失性存储器(例如,快闪存储器),其中存储有多个信息。应注意的是,存储于存储器110当中的数据记录了多个小批次尺寸(mini-batch size)以及多个运算效率之间的对应关系。一般而言,该训练任务当中的所述多个训练样本可被分为多个子集,系统每次存取的一个子集则称作一个小批次。此处所述的所述多个小批次尺寸是指系统在一个小批次中存取多少数量的所述多个训练样本。应注意的是,该小批次尺寸对该训练任务的收敛性以及系统通量(throughput)至关重要。
为了更佳地理解所述多个小批次尺寸与该训练任务的收敛性之间的关系,请参考本公开的图2。图2为根据本公开一实施例示出的不同小批次尺寸所对应的系统收敛性的示意图。图2当中的横轴(x轴)标示了多个训练程序的遍历次数(epochs),而图2中的纵轴(y轴)标示了所述多个训练程序的前五类别错误率(top-5validation error rate)。如图2所示,一曲线C1示出了小批次尺寸设置为32时的学习收敛性,一曲线C2示出了小批次尺寸设置为64时的学习收敛性,一曲线C3示出了小批次尺寸设置为128时的学习收敛性,一曲线C4示出了小批次尺寸设置为256时的学习收敛性,一曲线C5示出了小批次尺寸设置为512时的学习收敛性,以及,一曲线C6示出了小批次尺寸设置为1024时的学习收敛性。如图所示,大约于遍历次数为30时,曲线C4、曲线C5以及曲线C6的前五类别错误率收敛至25%。显然地,依据图2,较大的小批次尺寸对应至较佳的系统收敛性。
为了更佳地理解所述多个小批次尺寸与运算效率之间的关系,请一并参考图3。图3为根据本公开一实施例示出的不同小批次尺寸所对应的系统通量的示意图。图3当中的横轴(x轴)标示了该训练程序所使用的多个小批次尺寸,图3当中的纵轴(y轴)标示了该训练程序的系统通量。如图3所示,一曲线C7示出了在深度学习框架MXNet下执行该训练程序时的系统通量,而一曲线C8示出了在深度学习框架TensorFlow下执行该训练程序时的系统通量。显然地,根据图3,较大的小次量尺寸的系统通量并不一定较佳。应当理解,当小批次尺寸超过一阈值时,系统通量可能下降。在本实施例中,在MXNet框架下的该阈值可为256,而在TensorFlow框架下的该阈值可为512。然而,应注意的是,前述阈值仅是举例以说明本公开,在其他实施例中,可应用其他数值作为该阈值。
依据图2以及图3,可以理解,较大的小批次尺寸不一定是最佳解。需同时考虑图2以及图3当中所示出的小批次尺寸与运算效率/收敛性之间的对应关系,方可找出一个较佳的小批次尺寸。应注意的是,前述存储于存储器110当中的信息可包含前述图2以及图3中所示的所述多个对应关系。
在一些实施例中,处理器120包含,例如但不限于,单一处理器以及多个微处理器的集成,所述多个(微)处理器电性耦接于内部存储器或外部存储器。该内部存储器或该外部存储器包含挥发性存储器以及非挥发存储器。该处理器120是用为所述多个内部存储器或该外部存储器获取多个程序指令,进而执行所述多个程序指令,以依据所述多个程序指令执行前述的该训练任务优化方法。为了更佳地理解该训练任务优化方法,将于以下段落中详细解释该训练任务优化方法。
图4为根据本公开一实施例示出的训练任务优化系统的示意图。如图4所示,在本实施例中,训练任务优化系统10包含互动接口300与训练端400(甚至可包含一外部服务器),其中互动接口300及训练端400可为一独立电脑。该互动接口300可为,例如,一触控显示器、一键盘、一鼠标或前述装置的集成,互动接口300用以与训练端400协同运行。如图4所示,举例而言,在该实施例中,训练端400可为一任务处理核心,其包括存储装置410、主存储器420、中央处理器430以及图形处理器440。应注意的是,训练端400的前述各构件的实施方式相似于图1的实施例中所示的训练端200。此外,训练端400执行该训练任务中的各训练批次的方式亦相似于图1的实施例所述。因此,可一并参考本公开图1的实施例。
应注意的是,在一些实施例中,一使用者可通过互动接口300存取训练端400。训练任务优化系统10可以执行一应用程序(或一网页服务)以估算存储器的使用状态。相似于图1的实施例,在本实施例中,使用者可通过互动接口300输入该训练环境信息,该训练环境信息接着被传输予该应用程序(或提供该网页服务的外部服务器),该训练环境信息包含该训练任务(将由训练端400所执行)当中的各影响因子。关于该训练任务的该训练环境信息的内容,可参考图1的实施例。在一些实施例中,当该训练任务优化系统10(当中的训练端400)执行该应用程序(或该网页服务)时,该应用程序(或该网页服务)可自动检查训练端400的该图形处理器、该中央处理器以及/或该存储器影响因子。在此状况下,该使用者仅需通过该互动接口300输入尚未经检查的该训练环境信息(例如,使用的该神经网络、该模型或该参数服务器等等)即可。在一些实施例中,该应用程序(或该网页服务)可以提供一些选项至该训练任务优化系统10,所述多个选项涉及该训练任务中的多个候选神经网络或多个候选模型。互动接口300可显示所述多个选项,以供使用者从所述多个选项中选择欲于该训练任务当中使用的神经网络或模型。借此,该应用程序(或该网页服务)仍可完整地获取该训练端400的该训练环境信息,从而估算该训练任务的存储器使用状况。
图5为根据本公开一实施例示出的训练任务优化方法的步骤流程图。在一些实施例中,训练任务优化方法500可由图1中所示的设置模块100的处理器120所执行。在一些实施例中,训练任务优化方法500可由图4中所示的训练任务优化系统10整体所执行。在一些实施例中,于一非暂态电脑可读媒体(例如,存储器110)当中存储有多个电脑指令,执行所述多个电脑指令可实施训练任务优化方法500。在一些实施例中,训练任务优化方法500的详细步骤将于下面段落中叙述。
步骤S510:接收一训练任务的一训练环境信息,该训练环境信息中至少包含对应于该训练任务中的多个训练样本的信息。
在一些实施例中,训练端200可用以执行一训练任务,该训练任务涉及图像辨识。于执行该训练任务之前,训练端200可将该训练任务的该训练环境信息传输予该设置模块100。该训练环境信息中包含对应于训练端200的存储器影响因子、该训练任务的所述多个训练样本以及该训练任务中所使用的该神经网络的信息。依据图1的实施例,训练端200的存储器影响因子可为图形处理器240的存储器容量。在一些实施例中,该训练任务的所述多个训练样本可为多个彩色图像,其具有特定的尺寸。此外,用于该训练任务当中的该神经网络可为一卷积神经网络(Convolution neural network),其包含两个主要阶段,分别为一特征提取阶段以及一分类阶段。该特征提取阶段可包含多个卷积层(Convolution layer)以及多个池化层(Pooling layer),而该分类阶段则可包含多个全连结层(Fully-connected layer)。如上所述,训练端200可将收集到的该训练环境信息传输至训练任务优化系统10的设置模块100。借此,该训练环境信息可被存储于存储器110中,该处理器120可存取该训练环境信息。
在图4的实施例中,当训练任务优化系统10的该练端400执行该应用程序(或该网页服务)时,该应用程序(或该网页服务)可自动地检查训练端400的该图形处理器、该中央处理器以及/或该存储器影响因子。另外,该应用程序(或该网页服务)可提供关于候选神经网络或候选模型的选项至训练任务优化系统10。该使用者可通过互动接口300为该训练任务选择合适的神经网络或模型。然后,该使用者可将该训练任务的所述多个训练样本传输予该应用程序(或该网页服务)。在此状况下,由训练端400所执行的该应用程序(或网页服务)可获取所述多个训练样本的尺寸、训练器400的该处理器影响因子以及欲于该训练任务中使用的该神经网络(或该模型)。
步骤S520:依据多个存储器影响因子、所述多个训练样本以及一神经网络,计算该训练任务的一存储器分配。
在图1的实施例中,处理器120可自存储器110存取该训练环境信息,进而计算训练端200的可用存储器空间。承前所述,该训练任务的所述多个训练样本可为具有该特定尺寸的图像。处理器120可计算一第一需求空间,该第一需求空间包含了于不同小批次尺寸下存取所述多个训练样本所占据的空间,亦包含了该神经网络中每一层的输出值所占据的空间。详细而言,为了获取用于该训练任务的最佳小批次尺寸,该处理器120可设定一目标小批次尺寸,其初始数值可为一未知值。
在一些实施例中,处理器120可计算所述多个训练样本所需的存储器使用量,并计算分该特征提取阶段中的各层的输出值所需的存储器使用量。例如,通过计算所述多个图像的长宽的乘积,可获得所述多个训练样本的尺寸。按此逻辑,所述多个训练样本所需的存储器使用量则可表示为所述多个训练样本的尺寸、所述多个训练样本的颜色通道(RGB)数以及该目标小批次尺寸三者的乘积。应注意的是,针对该特征提取阶段的每一层,其皆可计算相应的存储器使用量。如前所述,由于该特征提取阶段中的所有层数皆为已知的,故该特征提取阶段的每一层中的相应存储器使用量可加总为该第一需求空间。一般而言,该第一需求空间同时考虑了该特征提取阶段的输入值以及输出值(即每一层的特征图featuremap)。
在一些实施例中,处理器120可计算该特征提取阶段中的所述多个模型参数以及多个梯度所需的存储器使用量。承前所述,由于该特征提取阶段中的所有层数皆为已知的,该处理器120可获取该特征提取阶段中的各滤波器(filter)的尺寸及其数量。借此,处理器120可计算所述多个模型参数(权重)所需的存储器使用量。此外,由于在梯度下降(gradient descend)运算中所需计算的梯度数量对应于所述多个模型参数的数量,因此,若欲计算该特征提取阶段中的梯度所需的存储器使用量,其值等同于所述多个模型参数所需的存储器使用量。此外,若该模型当中包含一偏差值(bias),则可通过相似于前述的方法计算该偏差所需的存储器使用量。
在一些实施例中,处理器120可计算该分类阶段所需的存储器使用量。承前所述,由于该分类阶段中的所述多个全连接层皆为已知的,处理器120可借此获取该分类阶段当中的神经元的数量以及模型参数的数量。依据该分类阶段当中各层中神经元的数量,可计算该分类阶段中的多个输出值所需的存储器使用量。依据所述多个全连接层当中的相互连接的神经元数量,可计算该分类阶段中的所述多个模型参数所需的存储器使用量。相似地,由于在梯度下降运算中所需计算的多个梯度数量对应于所述多个模型参数的数量,因此,可以计算该分类阶段中的所述多个梯度所需的存储器使用量。此外,若该模型当中包含一偏差值(bias),则可通过相似于前述的方法计算该偏差所需的存储器使用量。
依据上述,在一些实施例中,处理器120可加总该特征提取阶段以及该分类阶段当中的所述多个模型参数所需的存储器使用量、所述多个梯度所需的存储器使用量以及该偏差所需的存储器使用量,从而产生一第二需求空间。
应注意的是,该神经网络当中的每一层可对应于一种演算法。不同的演算法所需的运算时间皆不相同,且其各自所需的临时缓冲区(temporary buffer)空间亦不相同。例如,通过基于通用矩阵乘法(General Matrix Multiplication,GEMM)的演算法执行卷积计算时,其执行速度可能较慢,然而其所需的存储器使用量亦相对较少。另一方面,通过基于快速傅里叶转换(Fast Fourier Transform,FFT)的演算法执行卷积计算时,其执行速度相对较快,然而其所需的存储器使用量亦较多。在此状况下,为了提升整体训练系统的效率,需将运算速度和存储使用量一并纳入考虑。在本实施例中,该处理器120可列出该训练任务的所有层数对应于各种不同候选演算法的组合,并计算每种组合所需的临时缓冲区空间。在一些实施例中,处理器120可加总该神经网络当中的所有层数各自对应的演算法所需的临时缓冲区空间,其为一第三需求空间。
在一些实施例中,依据前述的该存储器影响因子、该特征提取阶段所需的存储器使用量以及该分类阶段所需的存储器使用量,处理器120可获取一存储器分配,处理器120可依据该存储器分配估算该训练任务被执行时系统的一可用存储器空间。该可用存储器空间所代表的是,在每种候选演算法组合下,可作为临时缓冲区使用的最大存储器容量。应注意的是,该可用存储器空间可表示为以该目标小批次尺寸为变量的一多项式。亦即,在上述实施例中,将该存储器影响因子(即为图形处理器的存储器限制)减去该第一需求空间以及该第二需求空间后,可得该可用存储器空间。由于该存储器影响因子为一固定数值,在此前提下,该可用存储器空间需大于该第三需求空间方为可行的系统配置。因此,处理器120需计算该可用存储器空间的容量,方可进一步估算不同演算法组合所需的该第三需求空间是否可行。
应注意的是,在图4的实施例中,步骤S520可由训练端400(与该应用程序协同)依据相似于前述的方式执行。依据使用者于该训练任务中所选择的该神经网络以及该模型的不同,针对该神经网络以及该模型所实施的存储器使用量的计算过程可能有所差异。然而,计算所述多个存储器使用量的方式大致上为相同的。
步骤S530:判断配适于估算的该存储器分配的一小批次尺寸。
在图1的实施例中,依据估算出的该可用存储器空间以及每种候选演算法的组合所需的临时缓冲区空间,处理器120可执行一启发式运算(heuristic computation)以获取该目标小批次尺寸。应注意的是,该启发式运算可依据前述所述多个小批次尺寸与所述多个运算效率之间的该对应关系来计算。处理器120可自存储器110存取关于所述多个小批次尺寸与所述多个运算效率之间的该对应关系的信息,借此,处理器120可于该启发式运算中以降序(或升序)方式搜索配适于该可用存储器空间的小批次尺寸。
如图2和图3所示,在一些实施例中,当小批次尺寸为512或256时,其系统通量较小批次尺寸为1024时的系统通量为佳。因此,在一些实施例中,依据小批次尺寸与所述多个运算效率之间的该对应关系,处理器120可先尝试设置该目标小批次尺寸为512以执行该启发式运算。若该目标小批次尺寸为512的设置于该可用存储器空间的限制下不可行,则处理器120可尝试设置该目标小批次尺寸为256以执行该启发式运算。以此类推,处理器120可重复地执行该启发式运算,直至找到适合的该目标小批次尺寸。
在一些实施例中,于该启发式运算中,处理器120可以升序方式来尝试所述多个小批次尺寸。于该启发式运算中,处理器120可尝试以升序方式设置该目标小批次尺寸为32、64、128、256、512以及1024。例如,若该目标小批次尺寸为32的设置于该可用存储器空间的限制下为可行的,则该处理器120将进一步地尝试以64作为该目标小批次尺寸执行该启发式运算。以此类推,处理器120可重复地执行该启发式运算,直至找到适合的该目标小批次尺寸。
此外,根据该目标小批次尺寸,处理器120可自该神经网络所述多个候选演算法中为该神经网络的每一层选择一个演算法,借此实现运算速度与存储器空间的较佳平衡。例如,于该启发式运算中,若选定一特定候选演算法的组合进行该启发式运算时,该目标小批次尺寸为512的设置于该可用存储器空间的限制下为可行的。该处理器120可选择该目标小批次尺寸为512,并选择该特定候选演算法组合作为该训练任务的一最优演算法组合。亦即,在该存储器影响因子的限制下,该处理器120可同时获取该训练任务的该最优演算法组合以及最佳的该目标小批次尺寸。
应注意的是,在图4的实施例中,步骤S530可通过训练端400(协同该应用程序)依据相似于前述的方式执行。该使用者可通过互动接口300操作训练端400,使训练端400执行基于不同小批次尺寸的该启发式运算,直至获得符合该存储器影响因子的小批次尺寸以及较佳的演算法组合。训练端400执行该启发式运算的方式以及选取演算法组合的方式大致相似于前述实施例。
步骤S540:响应于该训练环境信息,输出该小批次尺寸,使该训练任务被执行。
在图1的实施例中,响应于训练端200所传输的该训练环境信息,处理器120可向训练端200输出一优化结果,其中,该优化结果包含所选的该小批次尺寸以及该神经网络的该候选演算法组合。在本实施例中,训练端200可依据所选的该小批次尺寸以及针对每一层所选的所述多个演算法来执行该训练任务。
在图4的实施例中,当训练端400(协同该应用程序)选定符合该存储器影响因子的该小批次尺寸以及较佳的演算法组合后,训练端400可依据选定的该小批次尺寸以及针对每一层所选的所述多个演算法来执行该训练任务。抑或,互动接口300亦可显示对应于该优化结果的建议,例如,互动接口300(例如,显示器)可显示符合存储器影响因子的小批次尺寸以及配适于该神经网络的演算法组合,以作为执行该训练任务的参考。
图6为根据本公开一实施例示出的训练任务优化系统的示意图。如图6所示,相似于图1的实施例,训练任务优化系统10包括设置模块100及训练端200。设置模块100包括存储器110以及处理器120。
然而,在本实施例中,训练端200为一电脑,其包含了存储装置210、主存储器220、中央处理器230以及多个图形处理器241~244。在这种配置下,所述多个图形处理器241~244可协同运行以执行该训练任务,令所述多个训练样本可分布于所述多个图形处理器241~244当中,平行地实施梯度下降运算,借此,可加速该训练任务。应注意的是,在该实施例中,所述多个图形处理器241~244皆同于图1的实施例当中的该图形处理器240。
为了利用额外的图形处理器提升系统效率,在图6的实施例中,设置模块100接收的该训练环境信息进一步包括了所述多个图形处理器241~244的数量、所述多个图形处理器241~244的经常性时间(overhead time,用于信息传输的时间)、所述多个图形处理器241~244的效率以及该训练任务的一预期效率。在一些实施例中,可由训练端200的该使用者输入该训练任务的该预期效率。在本实施例中,处理器120可依据该训练环境信息产生一图形处理器启用建议予训练端200,使训练端200得以实现该预期效率。
举例而言,当该目标小批次尺寸被决定后,处理器120可依据所述多个图形处理器241~244的效率来估算所述多个图形处理器241~244所需的运算时间。给定该训练任务的该预期效率,处理器120可依据所述多个图形处理器241~244所需的运算时间以及所述多个图形处理器241~244的经常性时间来判断可于该训练任务当中使用多少个图形处理器。依据下列的算式可计算出一数量,该数量表示所述多个图形处理器241~244当中有该数量被使用以执行该训练任务。
α=(1+Ro)/(1+G*Ro)
应注意的是,前述算式是依据阿姆达尔定律(Amdahl’s Law)所推导而成的。其中,α表示该训练任务的该预期效率。假设将全部的所述多个图形处理器241~244皆使用以执行该训练任务时的速度为该训练端200的一最大运算速度。在此前提下,α值的范围为自0%至100%,100%的效率代表该训练端200的该最大运算速度。其中,Ro代表该图形处理器241的经常性时间除以该图形处理器241的运算时间所得出的商数。其中,G代表的是,若欲实现该预期效率,于该训练任务中需使用的最少图形处理器数量。
依据前述算式,处理器120可决定该数量,通过于训练任务中使用该数量的所述多个图形处理器241~244,可满足给定的该预期效率(即,在算式中给定α的值进行运算)。当该处理器120获取该训练任务中所使用的所述多个图形处理单元241~244的该数量后,处理器120可依据该数量产生对应训练端200的该图形处理器启用建议。当该图形处理器启用建议被传输至训练端200,训练端200可依据该图形处理器启用建议来执行该训练任务,如此,训练端200仅需利用最少量的图形处理器即可实现该预期效率。
相似于图4的实施例,在一些实施例中,训练端200可与一应用程序(或一网页服务)协同运行。依据前述算式,给定一期望效率后,训练端200可自行运算以产生该图形处理器启用建议。然后,训练端200可依据该图形处理器启用建议执行该训练任务,从而实现该预期效率。
图7为根据本公开一实施例示出的训练任务优化系统的示意图。如图7所示,相似于图1的实施例,训练任务优化系统10包含该设置模块100以及多个训练端200a~200d。设置模块100包含该存储器110以及处理器120。在本实施例中,设置模块100耦接于所述多个训练端200a~200d。
在本实施例中,训练端200a可为一电脑,其包含存储装置210、主存储器220、中央处理器230以及所述多个图形处理器241~244。应注意的是,所述多个训练端200a~200d的配置基本上为相同的,故其余训练端的配置将不再重复赘述。如图中所示,所述多个训练端200a~200d与多个参数服务器610~640协同运行。为了加速该训练任务,可将所提供的所述多个训练样本分配至所述多个训练端200a~200d当中,以通过所述多个图形处理器241~244平行地进行梯度下降运算,此外,可将所述多个模型参数分配至所述多个参数服务器610~640以存储。应注意的是,此处所述的“分配”所指的是将所述多个模型参数分散存储于所述多个参数服务器610~640当中,或是所述多个参数服务器610~640当中的每一者皆存储有所述多个模型参数的一份副本。在此配置下,当所述多个训练端200a~200d开始执行该训练任务的一训练批次时,所述多个训练端200a~200d可平行地自所述多个参数服务器610~640当中存取所述多个模型参数。相似地,当所述多个训练端200a~200d完成该训练任务的该训练批次时,所述多个训练端200a~200d可以将更新后的所述多个模型参数平行地分配至所述多个参数服务器610~640当中。借此,可以有效提升该训练任务的效率。
在本实施例中,传输至该设置模块100的该训练环境信息更进一步包含所述多个图形处理器241~244的数量、所述多个参数服务器610~640的总数量以及所述多个参数服务器610~640对应的网络频宽,通过这些信息,该设置模块100可决定所述多个参数服务器610~640当中该数量可用以执行该训练任务。在本实施例中,该处理器120可依据该训练环境信息分别产生针对所述多个训练端200a~200d的多个参数服务器启用建议,借此提升所述多个参数服务器610~640中的信息分配效率。依据下列算式,可决定所述多个参数服务器610~640当中的该数量可用以执行该训练任务。
Nps≧(2Sp*Nw)/(Bps*Tc),其中Nps为一整数。
应注意的是,在本实施例中,所述多个图形处理器241~244皆同于图1的实施例当中的图形处理器240。其中,Tc表示所述多个图形处理器241~244当中任一者的运算时间。Sp表示该训练任务当中所述多个模型参数的数量,其可以由该神经网络中获取。Nw表示用以执行该训练任务的所述多个训练端的数量(即,所述多个训练端200a~200d)。Bps表示所述多个参数服务器610~640对应的网络频宽。Nps表示该训练任务中所需的所述多个参数服务器(即,所述多个参数服务器610~640)的最少数量。
依据前述算式,处理器120可决定在该训练任务中所需使用的所述多个参数服务器610~640的数量。当该处理器120获取所需使用的所述多个参数服务器610~640的该数量后,该处理器120可依据该数量产生针对所述多个训练端200a~200d的多个参数服务器启用建议。所述多个参数服务器启用建议将被传输至所述多个训练端200a~200d,所述多个训练端200a~200d可依据所述多个参数服务器启用建议来执行该训练任务。举例而言,经该处理器120的运算,得出仅需通过平行的三个参数服务器即可实现系统需求。在此状况下,处理器120可选择三个参数服务器以执行该训练任务,例如,可为所述多个参数服务器610~630。在这种配置下,所述多个模型参数可被分配至所述多个参数服务器610~630当中。借此,训练端200可平行存取所述多个参数服务器610~630当中的所述多个模型参数,从而实现更佳的系统效率。
相似于图4的实施例,在一些实施例中,所述多个训练端200a~200d可与该应用程序(或该网页服务)协同运行。依据前述算式,所述多个训练端200a~200d可自行运算以产生所述多个参数服务器启用建议。然后,所述多个训练端200a~200d可依据所述多个参数服务器启用建议执行该训练任务,从而实现更佳的系统效率。
依据前述实施例,本公开提供了一种训练任务优化系统、一种训练任务优化方法以及一种用于训练任务优化的非暂态电脑可读媒体。给定系统影响因子(例如,存储器限制)或该训练任务的需求,该训练任务优化系统当中的该配置模块(或者,在某些实施例中可为该训练端本身)可为该训练任务选择合适的小批次尺寸。另外,该配置模块(或该训练端)可以为该训练任务中的该神经网络选择最佳的演算法。该配置模块(或该训练端)亦可决定于该训练任务中使用的图形处理器或参数服务器的数量,借此实现更佳的训练效率。
虽然本公开以详细的实施例公开如上,然而本公开并不排除其他可行的实施方式。因此,本公开的保护范围当视后附的权利要求所界定者为准,而非受于前述实施例的限制。
对本领域技术人员而言,在不脱离本公开的构思和范围内,当可对本公开作各种的变动与润饰。基于前述实施例,所有对本公开所作的变动与润饰,亦涵盖于本公开的保护范围内。

Claims (8)

1.一种训练任务优化系统,其特征在于,包含:
一处理器,用以接收一训练任务的一训练环境信息,其中该训练环境信息包含对应于该训练任务中的多个训练样本的信息,
其中一神经网络包含多个层,该处理器用以计算一第一需求空间,该第一需求空间包含指派予所述多个训练样本的空间以及指派予所述多个层对应的输出信息的空间,
该处理器用以自该神经网络获取多个模型参数,该处理器并计算一第二需求空间,该第二需求空间包含指派予所述多个模型参数的空间以及指派予多个梯度值的空间,
该处理器用以将多个存储器影响因子减去该第一需求空间以及该第二需求空间后,得一可用存储器空间,
所述多个层对应多个候选演算法,该处理器计算一第三需求空间,该第三需求空间包含该些演算法对应 的运算缓冲空间,使得该可用存储器空间大于该第三需求空间,藉此计算该训练任务的一存储器分配,
该处理器用以判断配适于该存储器分配的一小批次尺寸,其中所述小批次尺寸为在一个小批次中存取所述多个训练样本的数量,
响应于该训练环境信息,该处理器用以输出该小批次尺寸,
其中该训练环境信息还包含一预期效率,训练端包含多个图形处理器,该处理器用以依据以下算式计算所述多个图形处理器的一数量,
α=(1+Ro)/(1+G*Ro)
其中α表示该训练任务的该预期效率,Ro代表所述多个图形处理器的经常性时间除以所述多个图形处理器的运算时间所得出的商数,G代表所述多个图形处理器的该数量,
其中该处理器用以依据所述多个图形处理器的该数量产生该训练端的图形处理器启用建议,使得该训练端依据该图形处理器启用建议执行该训练任务。
2.如权利要求1所述的训练任务优化系统,其特征在于,还包含:
一存储器,用以存储多个小批次尺寸以及多个运算效率之间对应关系的一信息,其中该小批次尺寸是依据所述多个运算效率自所述多个小批次尺寸当中选择的。
3.如权利要求1所述的训练任务优化系统,其特征在于,还包含:
一互动接口,用以输入该训练环境信息,其中该训练环境信息还包含对应于所述多个存储器影响因子以及该神经网络的信息。
4.如权利要求1所述的训练任务优化系统,其特征在于,该训练环境信息还包含多个参数服务器的信息以及一网络频宽的信息,
该处理器用以依据下列算式决定所述多个参数服务器的数量以将所述多个模型参数分配至所述多个参数服务器以存储,
Nps≧(2Sp*Nw)/(Bps*Tc)
其中Nps为所述多个参数服务器的该数量,Sp表示该训练任务中所述多个模型参数的数量,Nw表示所述训练端的数量,Bps表示所述多个参数服务器对应的该网络频宽,Tc表示所述多个图形处理器当中任一者的运算时间。
5.一种训练任务优化方法,由一处理器所执行,其特征在于,该训练任务优化方法包含:
接收一训练任务的一训练环境信息,其中该训练环境信息包含预期效率与对应于该训练任务中的多个训练样本的信息,一神经网络包含多个层,所述多个层对应多个候选演算法,并且训练端包含多个图形处理器;
计算一第一需求空间,该第一需求空间包含指派予所述多个训练样本的空间以及指派予所述多个层对应的输出信息的空间;
自该神经网络获取多个模型参数并计算一第二需求空间,该第二需求空间包含指派予所述多个模型参数的空间以及指派予多个梯度值的空间;
将多个存储器影响因子减去该第一需求空间以及该第二需求空间后,得一可用存储器空间;
计算一第三需求空间,该第三需求空间包含该些演算法对应 的运算缓冲空间,使得该可用存储器空间大于该第三需求空间,藉此计算该训练任务的一存储器分配;
判断配适于该存储器分配的一小批次尺寸,其中所述小批次尺寸为在一个小批次中存取所述多个训练样本的数量;
响应于该训练环境信息,输出该小批次尺寸;
依据以下算式计算所述多个图形处理器的一数量,
α=(1+Ro)/(1+G*Ro)
其中α表示该训练任务的该预期效率,Ro代表所述多个图形处理器的经常性时间除以所述多个图形处理器的运算时间所得出的商数,G代表所述多个图形处理器的该数量;以及
依据所述多个图形处理器的该数量产生该训练端的图形处理器启用建议,使得该训练端依据该图形处理器启用建议执行该训练任务。
6.如权利要求5所述的训练任务优化方法,其特征在于,还包含:
获取多个小批次尺寸以及多个运算效率之间对应关系的一信息,其中该小批次尺寸是依据所述多个运算效率自所述多个小批次尺寸当中选择的。
7.如权利要求5所述的训练任务优化方法,其特征在于,该训练环境信息还包含多个参数服务器的信息以及一网络频宽的信息,且该训练任务优化方法还包含:
依据下列算式决定所述多个参数服务器的数量以将所述多个模型参数分配至所述多个参数服务器以存储,
Nps≧(2Sp*Nw)/(Bps*Tc)
其中Nps为所述多个参数服务器的该数量,Sp表示该训练任务中所述多个模型参数的数量,Nw表示所述训练端的数量,Bps表示所述多个参数服务器对应的该网络频宽,Tc表示所述多个图形处理器当中任一者的运算时间。
8.一种用以训练任务优化的非暂态电脑可读媒体,其特征在于,该非暂态电脑可读媒体包含多个电脑指令以执行下列程序:
接收一训练任务的一训练环境信息,其中该训练环境信息包含预期效率与对应于该训练任务中的多个训练样本的信息,一神经网络包含多个层,所述多个层对应多个候选演算法,并且训练端包含多个图形处理器;
计算一第一需求空间,该第一需求空间包含指派予所述多个训练样本的空间以及指派予所述多个层对应的输出信息的空间;
自该神经网络获取多个模型参数并计算一第二需求空间,该第二需求空间包含指派予所述多个模型参数的空间以及指派予多个梯度值的空间;
将多个存储器影响因子减去该第一需求空间以及该第二需求空间后,得一可用存储器空间;
计算一第三需求空间,该第三需求空间包含该些演算法对应 的运算缓冲空间,使得该可用存储器空间大于该第三需求空间,藉此计算该训练任务的一存储器分配;
判断配适于该存储器分配的一小批次尺寸,其中所述小批次尺寸为在一个小批次中存取所述多个训练样本的数量;
响应于该训练环境信息,输出该小批次尺寸以使该训练任务被执行;
依据以下算式计算所述多个图形处理器的一数量,
α=(1+Ro)/(1+G*Ro)
其中α表示该训练任务的该预期效率,Ro代表所述多个图形处理器的经常性时间除以所述多个图形处理器的运算时间所得出的商数,G代表所述多个图形处理器的该数量;以及
依据所述多个图形处理器的该数量产生该训练端的图形处理器启用建议,使得该训练端依据该图形处理器启用建议执行该训练任务。
CN201810597426.8A 2017-06-09 2018-06-11 训练任务优化系统、方法及其非暂态电脑可读媒体 Active CN109034381B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762517189P 2017-06-09 2017-06-09
US62/517,189 2017-06-09

Publications (2)

Publication Number Publication Date
CN109034381A CN109034381A (zh) 2018-12-18
CN109034381B true CN109034381B (zh) 2022-01-28

Family

ID=64564141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810597426.8A Active CN109034381B (zh) 2017-06-09 2018-06-11 训练任务优化系统、方法及其非暂态电脑可读媒体

Country Status (3)

Country Link
US (1) US11144828B2 (zh)
CN (1) CN109034381B (zh)
TW (1) TWI675335B (zh)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11762684B2 (en) * 2012-01-30 2023-09-19 Workfusion, Inc. Distributed task execution
US11037330B2 (en) 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
CN109034381B (zh) * 2017-06-09 2022-01-28 宏达国际电子股份有限公司 训练任务优化系统、方法及其非暂态电脑可读媒体
US11269974B1 (en) * 2017-09-08 2022-03-08 Amazon Technologies, Inc. Learning ordinal regression model via divide-and-conquer technique
US11437032B2 (en) 2017-09-29 2022-09-06 Shanghai Cambricon Information Technology Co., Ltd Image processing apparatus and method
US11630666B2 (en) 2018-02-13 2023-04-18 Shanghai Cambricon Information Technology Co., Ltd Computing device and method
US11704125B2 (en) 2018-02-13 2023-07-18 Cambricon (Xi'an) Semiconductor Co., Ltd. Computing device and method
EP3640863B1 (en) 2018-02-13 2021-10-27 Shanghai Cambricon Information Technology Co., Ltd Computation device and method
CN116991225A (zh) 2018-02-14 2023-11-03 上海寒武纪信息科技有限公司 处理器的控制装置、方法及设备
EP3624020A4 (en) 2018-05-18 2021-05-05 Shanghai Cambricon Information Technology Co., Ltd CALCULATION PROCEDURES AND RELATED PRODUCTS
EP3798850A4 (en) 2018-06-27 2022-03-23 Shanghai Cambricon Information Technology Co., Ltd ON-CHIP CODE BREAKPOINT DEBUG METHOD, ON-CHIP PROCESSOR AND CHIP BREAKPOINT DEBUG SYSTEM
WO2020062392A1 (zh) 2018-09-28 2020-04-02 上海寒武纪信息科技有限公司 信号处理装置、信号处理方法及相关产品
US11544630B2 (en) * 2018-10-15 2023-01-03 Oracle International Corporation Automatic feature subset selection using feature ranking and scalable automatic search
US11061902B2 (en) 2018-10-18 2021-07-13 Oracle International Corporation Automated configuration parameter tuning for database performance
US20200125926A1 (en) * 2018-10-23 2020-04-23 International Business Machines Corporation Dynamic Batch Sizing for Inferencing of Deep Neural Networks in Resource-Constrained Environments
CN111383638A (zh) 2018-12-28 2020-07-07 上海寒武纪信息科技有限公司 信号处理装置、信号处理方法及相关产品
US10789510B2 (en) * 2019-01-11 2020-09-29 Google Llc Dynamic minibatch sizes
WO2020158217A1 (ja) * 2019-02-01 2020-08-06 ソニー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
CN109947940B (zh) * 2019-02-15 2023-09-05 平安科技(深圳)有限公司 文本分类方法、装置、终端及存储介质
US11586929B2 (en) * 2019-02-15 2023-02-21 Wipro Limited Method and system for optimizing memory requirement for training an artificial neural network model
CN109976903B (zh) * 2019-02-22 2021-06-29 华中科技大学 一种基于层宽内存分配的深度学习异构计算方法和系统
CN111723147B (zh) * 2019-03-21 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链的数据训练方法、装置及设备、存储介质
CN110147901B (zh) * 2019-04-08 2023-04-07 合肥工业大学 车辆路径规划方法、系统及存储介质
US11429895B2 (en) 2019-04-15 2022-08-30 Oracle International Corporation Predicting machine learning or deep learning model training time
US20200334522A1 (en) 2019-04-18 2020-10-22 Cambricon Technologies Corporation Limited Data processing method and related products
CN111832738B (zh) 2019-04-18 2024-01-09 中科寒武纪科技股份有限公司 一种数据处理方法及相关产品
US11676029B2 (en) 2019-06-12 2023-06-13 Shanghai Cambricon Information Technology Co., Ltd Neural network quantization parameter determination method and related products
CN112085184B (zh) 2019-06-12 2024-03-29 上海寒武纪信息科技有限公司 量化参数调整方法、装置及相关产品
CN110543944B (zh) * 2019-09-11 2022-08-02 北京百度网讯科技有限公司 神经网络结构搜索方法、装置、电子设备和介质
CN110929623A (zh) * 2019-11-15 2020-03-27 北京达佳互联信息技术有限公司 多媒体文件的识别方法、装置、服务器和存储介质
US11244198B2 (en) 2019-11-21 2022-02-08 International Business Machines Corporation Input partitioning for deep learning of large image data
US11727284B2 (en) * 2019-12-12 2023-08-15 Business Objects Software Ltd Interpretation of machine learning results using feature analysis
CN111126604B (zh) * 2019-12-31 2024-02-02 北京奇艺世纪科技有限公司 模型训练方法、装置、服务器及存储介质
KR102494945B1 (ko) * 2020-05-15 2023-02-01 한국항공대학교산학협력단 멀티 gpu를 이용한 딥러닝 모델 학습 시의 최적 스플릿 크기 결정 장치 및 방법과 이를 이용한 딥러닝 모델 학습 방법
CN111917579A (zh) * 2020-07-30 2020-11-10 云知声智能科技股份有限公司 分布式训练方法、装置、设备和存储介质
CN112561079A (zh) * 2020-12-18 2021-03-26 北京百度网讯科技有限公司 分布式的模型训练装置、方法及计算机程序产品
CN113345422B (zh) * 2021-04-23 2024-02-20 北京巅峰科技有限公司 语音数据处理方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753364A (zh) * 2008-12-11 2010-06-23 财团法人工业技术研究院 设备状态分析预测以及资源分配方法与系统
CN103699440A (zh) * 2012-09-27 2014-04-02 北京搜狐新媒体信息技术有限公司 一种云计算平台系统为任务分配资源的方法和装置
CN104714852A (zh) * 2015-03-17 2015-06-17 华中科技大学 一种适用于分布式机器学习的参数同步优化方法及其系统
CN105981055A (zh) * 2014-03-03 2016-09-28 高通股份有限公司 神经网络对当前计算资源的自适应
CN106506594A (zh) * 2016-09-30 2017-03-15 科大讯飞股份有限公司 一种并行计算资源分配方法及装置
CN107341761A (zh) * 2017-07-12 2017-11-10 成都品果科技有限公司 一种深度神经网络的计算执行方法和系统
CN107909142A (zh) * 2017-11-14 2018-04-13 深圳先进技术研究院 一种神经网络的参数优化方法、系统及电子设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
HUP0301368A3 (en) 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
US8725658B2 (en) * 2011-09-21 2014-05-13 Brain Corporation Elementary network description for efficient memory management in neuromorphic systems
TWI474673B (zh) * 2012-12-06 2015-02-21 Inst Information Industry 工作負載分配裝置及其工作負載分配方法
US9852006B2 (en) * 2014-03-28 2017-12-26 International Business Machines Corporation Consolidating multiple neurosynaptic core circuits into one reconfigurable memory block maintaining neuronal information for the core circuits
US9627532B2 (en) * 2014-06-18 2017-04-18 Nuance Communications, Inc. Methods and apparatus for training an artificial neural network for use in speech recognition
US11049006B2 (en) * 2014-09-12 2021-06-29 Microsoft Technology Licensing, Llc Computing system for training neural networks
CN105808339B (zh) 2014-12-29 2019-05-17 华为技术有限公司 大数据并行计算方法及装置
CN105894087A (zh) * 2015-01-26 2016-08-24 华为技术有限公司 用于神经网络中训练参数集的系统和方法
US10083395B2 (en) * 2015-05-21 2018-09-25 Google Llc Batch processing in a neural network processor
US10140572B2 (en) * 2015-06-25 2018-11-27 Microsoft Technology Licensing, Llc Memory bandwidth management for deep learning applications
CN106445676B (zh) * 2015-08-05 2019-10-22 杭州海康威视系统技术有限公司 一种分布式数据计算的任务分配方法和任务分配装置
US10628740B2 (en) * 2015-10-02 2020-04-21 International Business Machines Corporation Asynchronous stochastic gradient descent
CN105516242A (zh) 2015-11-23 2016-04-20 华为技术有限公司 一种存储资源分配方法及存储资源分配系统
US10740596B2 (en) * 2016-11-08 2020-08-11 Nec Corporation Video security system using a Siamese reconstruction convolutional neural network for pose-invariant face recognition
US11216722B2 (en) * 2016-12-31 2022-01-04 Intel Corporation Hardware accelerator template and design framework for implementing recurrent neural networks
US10262390B1 (en) * 2017-04-14 2019-04-16 EMC IP Holding Company LLC Managing access to a resource pool of graphics processing units under fine grain control
CN109034381B (zh) * 2017-06-09 2022-01-28 宏达国际电子股份有限公司 训练任务优化系统、方法及其非暂态电脑可读媒体
US20210141355A1 (en) * 2019-11-07 2021-05-13 Global Energy Interconnection Research Institute Co. Ltd Systems and methods of autonomous line flow control in electric power systems

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753364A (zh) * 2008-12-11 2010-06-23 财团法人工业技术研究院 设备状态分析预测以及资源分配方法与系统
CN103699440A (zh) * 2012-09-27 2014-04-02 北京搜狐新媒体信息技术有限公司 一种云计算平台系统为任务分配资源的方法和装置
CN105981055A (zh) * 2014-03-03 2016-09-28 高通股份有限公司 神经网络对当前计算资源的自适应
CN104714852A (zh) * 2015-03-17 2015-06-17 华中科技大学 一种适用于分布式机器学习的参数同步优化方法及其系统
CN106506594A (zh) * 2016-09-30 2017-03-15 科大讯飞股份有限公司 一种并行计算资源分配方法及装置
CN107341761A (zh) * 2017-07-12 2017-11-10 成都品果科技有限公司 一种深度神经网络的计算执行方法和系统
CN107909142A (zh) * 2017-11-14 2018-04-13 深圳先进技术研究院 一种神经网络的参数优化方法、系统及电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
【干货】腾讯云FPGA的深度学习算法;jackzhang;《http://xilinx.eetop.cn/viewnews-2825》;20170418;第1-3页 *
Resource Management with Deep Reinforcement Learning;Hongzi Mao 等;《HotNets-XV》;20161110;第50-56页 *
深度学习加速技术研究;杨旭瑜;《计算机系统应用》;20161231;第1-9页 *

Also Published As

Publication number Publication date
CN109034381A (zh) 2018-12-18
TW201903624A (zh) 2019-01-16
US11144828B2 (en) 2021-10-12
TWI675335B (zh) 2019-10-21
US20180357541A1 (en) 2018-12-13

Similar Documents

Publication Publication Date Title
CN109034381B (zh) 训练任务优化系统、方法及其非暂态电脑可读媒体
US20220391771A1 (en) Method, apparatus, and computer device and storage medium for distributed training of machine learning model
KR102170105B1 (ko) 신경 네트워크 구조의 생성 방법 및 장치, 전자 기기, 저장 매체
JP7087079B2 (ja) 深層学習アプリケーションのための堅牢な勾配重み圧縮方式
KR102076257B1 (ko) 계산 그래프들 프로세싱
CN107038064B (zh) 虚拟机管理方法及装置、存储介质
CN109657793B (zh) 模型训练方法及装置、存储介质及电子设备
US9916283B2 (en) Method and system for solving a problem involving a hypergraph partitioning
CN112052958A (zh) 模型训练的方法、装置、设备及计算机可读存储介质
Gergel et al. Globalizer: A novel supercomputer software system for solving time-consuming global optimization problems
CN114902273A (zh) 使用gpu优化资源分配的系统和方法
CN111984400A (zh) 神经网络的内存分配方法及装置
US20210209270A1 (en) Distributed tensor network contraction scheme with splitting based on dynamic ordering
Zhou et al. Tools to support mesh adaptation on massively parallel computers
CN115481729A (zh) 一种混合算子模型并行训练方法、装置、设备及存储介质
CN114816711A (zh) 批量任务处理方法、装置、计算机设备和存储介质
US20210019570A1 (en) Dynamic minibatch sizes
CN109359542A (zh) 基于神经网络的车辆损伤级别的确定方法及终端设备
WO2021062219A1 (en) Clustering data using neural networks based on normalized cuts
Loring et al. Improving performance of m-to-n processing and data redistribution in in transit analysis and visualization
CN111886605A (zh) 针对多个输入数据集的处理
CA2915760C (en) Method and system for solving a problem involving a hypergraph partitioning
JP2022165395A (ja) ニューラルネットワークモデルの最適化方法及びニューラルネットワークモデルに関するグラフィックユーザインターフェースを提供する方法
Gunarathne et al. Distributing deep learning inference on edge devices
US20220414452A1 (en) Mechanistic model parameter inference through artificial intelligence

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