CN110222824B - 智能算法模型自主生成及进化方法、***、装置 - Google Patents
智能算法模型自主生成及进化方法、***、装置 Download PDFInfo
- Publication number
- CN110222824B CN110222824B CN201910484484.4A CN201910484484A CN110222824B CN 110222824 B CN110222824 B CN 110222824B CN 201910484484 A CN201910484484 A CN 201910484484A CN 110222824 B CN110222824 B CN 110222824B
- Authority
- CN
- China
- Prior art keywords
- model
- substructure
- intelligent
- evaluation
- algorithm model
- 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 66
- 238000011156 evaluation Methods 0.000 claims abstract description 106
- 238000004458 analytical method Methods 0.000 claims abstract description 101
- 238000012549 training Methods 0.000 claims abstract description 37
- 238000005265 energy consumption Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 18
- 238000004806 packaging method and process Methods 0.000 claims description 12
- 238000005457 optimization Methods 0.000 claims description 10
- 238000011176 pooling Methods 0.000 claims description 9
- 238000011478 gradient descent method Methods 0.000 claims description 8
- 230000002787 reinforcement Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 238000000926 separation method Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 5
- 230000009466 transformation Effects 0.000 claims description 4
- 238000012856 packing Methods 0.000 claims description 3
- 230000009471 action Effects 0.000 abstract description 10
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 18
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Supply And Distribution Of Alternating Current (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于人工智能领域,具体涉及一种智能算法模型自主生成及进化方法、***、装置,旨在为了解决高效低功耗智能分析算法模型的便捷生成及进化问题。本发明通过LSTM网络模型和优化评测结果综合得分的方法,逐步生成智能算法模型的子结构信息以构建中间结构信息,每一个子结构信息完成后都会组合成一个当前状态的网络模型,通过对网络模型的训练与评测得到当前动作的评测得分用以指导下一个子结构信息的生成,直到在模型的评测结果达到预设条件得到自主进化的最优的智能算法模型。本发发明方法可以有效、简便的进行高速低功耗的智能算法模型的构建。
Description
技术领域
本发明属于人工智能领域,具体涉及一种智能算法模型自主生成及进化方法、***、装置。
背景技术
人工智能和支持智能计算的硬件在近些年都得到了迅猛发展,以神经网络为首的智能算法已普遍应用于互联网,自动驾驶,安防等行业,然而在实际部署时,许多移动***如智能手机、自动机器人在功耗、成本、散热性等方面都有额外的限制,导致无法大规模应用深度学习解决方案。另外,针对模型生成和优化的方法当前几乎都是凭借有经验的工程师去探索较好的模型结构和模型参数,这不仅有很大的不确定性而且明显降低了整个过程的效率,再加上移动设备上可执行的智能任务种类繁多,针对每一个任务都需要一个优化好的算法模型,这不仅会耗费巨大的人力成本,而且不能保证低功耗需求。为满足低功耗要求,使智能算法广泛应用于移动设备中,需要一种智能化的评测工具和***,可以从网络设计到功能实现的各个层次上整合功耗预算和性能权衡,并最大限度的优化算法模型。
神经网络虽然在图像分类、目标检测和语义分割等各种具有挑战性的任务中取得了巨大的成功,但由于对专家经验和大量试验的高度依赖,设计手工制作的神经网络仍然是一项艰巨的任务。目前自动设计网络架构的技术吸引了越来越多的研究学者。许多神经结构搜索(NAS)方法已经被提出并被证明能够产生高性能的模型。但是,这种神经网络结构搜索的方法在最开始就限定了模型结构信息,像模型的子模块限定为只有两个输入节点或者模型的层数限定为固定长度,这使得搜索空间变小,不利于找到最优的算法模型。而且还没有出现针对模型的识别准确度、运行时间以及能量消耗三个方面综合考虑的模型生成和优化方法。
发明内容
为了解决现有技术中的上述问题,即为了解决高效低功耗智能分析算法模型的便捷生成及进化问题,本发明的第一方面,提出了一种智能算法模型自主生成及进化方法,该方法包括以下步骤:
步骤S100,基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
步骤S200,通过LSTM网络进行第N个子结构的生成,并与步骤S100匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
步骤S300,基于步骤S100匹配得到的数据库,对步骤S200得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于步骤S100的算法评测方法获取该训练后模型的评测结果;
步骤S400,基于步骤S300中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行步骤S200、步骤S300直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
步骤S500,迭代执行步骤S200、步骤S300、步骤S400,获取含有第N+1个子结构的训练后的智能分析算法模型,直至步骤S400得到的智能分析算法模型对应的评测结果达到预设条件或迭代结束条件,输出最后一个迭代轮次中训练好的智能分析算法模型。
在一些优选实施方式中,所述特定分析任务为物体分类、物体检测、属性识别中任一种;所述评测方法池中的评测方法包括平均精度均值、平均精度、交并比、运行时间、能量消耗。
在一些优选实施方式中,所述子结构通过选择子结构输入节点、选择操作方式、选择组合方式、选择组合输入节点获取。
在一些优选实施方式中,所述选择子结构输入节点,其方法为:
从候选节点集中选择一个子结构的输出作为当前子结构HN的输入;所述候选节点集由前N-1个子结构{1,2,...,HN-1}的输出构成。
在一些优选实施方式中,所述选择操作方式,其方法为:
从预设的操作函数集中选择一种操作函数用于对所选择的输入节点的信息进行处理;所述操作函数集包含预设的多种卷积、预设的多种池化、预设的多种分离卷积。
在一些优选实施方式中,所述选择组合输入节点,其方法为:
从候选节点集中选择一个子结构的输出与当前子结构HN所选择的操作方式下的输出,按照所选择的组合方式进行组合后作为当前子结构HN的输出;所述候选节点集由前N-1个子结构{1,2,...,HN-1}的输出构成。
在一些优选实施方式中,所述选择组合方式,其方法为:
从预设的组合方式集合中选择一种组合方式,用于当前子结构HN所选择的操作方式下的输出和候选节点集中所选择的子结构的输出进行组合;所述预设的组合方式集合包括元素级相加、输出拼接、线性变换。
在一些优选实施方式中,步骤S400“基于步骤S300中的评测结果得到优化LSTM网络参数的奖励值”,其方法为通过下式计算获得评测结果对应的奖励值,
其中,Scorem为m在评测数据集上的奖励值;Acc(m)是模型m在评测数据集上运算的准确度衡量;esm是模型m在特定设备上运算的能量消耗;tm是模型m在评测数据集上的运算时间;T、ES分别是预设的模型运算时可接受的最长时间和最大能量消耗值,且满足tm≤T,esm≤ES;α、β分别是模型的运行时间与能量消耗在整个评测得分上的预设权重参数。
本发明的第二方面,提出了一种智能算法模型自主生成及进化***,该***包括模型包装单元、模型获取单元、模型训练单元、模型评测单元、模型优化迭代控制单元;
所述模型包装单元,配置为基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
所述模型获取单元,配置为通过LSTM网络进行第N个子结构的生成,并与所述模型包装单元匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
所述模型训练单元,配置为基于所述模型包装单元匹配得到的数据库,对所述模型获取单元得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于所述模型包装单元的算法评测方法获取该训练后模型的评测结果;
所述模型评测单元,配置为基于所述模型训练单元中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行所述模型获取单元、所述模型训练单元直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
所述模型优化迭代控制单元,配置为判断所述模型训练单元的评测结果是否达到预设条件或迭代终止条件,若未达到则通过所述模型获取单元、所述模型训练单元、所述模型评测单元,获取含有第N+1个子结构的训练后的智能分析算法模型,若达到则输出最后一个迭代轮次中训练好的智能分析算法模型。
本发明的第三方面,提出了一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的智能算法模型自主生成及进化方法。
本发明的第四方面,提出了一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的智能算法模型自主生成及进化方法。
本发明的有益效果:
本发明通过LSTM网络模型和利用奖励值期望优化网络参数(由评测结果计算的综合得分)的方法,逐步生成智能算法模型的中间结构信息(子结构信息),每一个子结构信息完成后都会组合成一个当前状态的网络模型,通过对网络模型的训练与评测得到当前动作的奖励值来指导下一个子结构信息的生成,直到在模型的评测结果(识别准确度、运行时间以及能量消耗三个方面)自主进化为最优的智能算法模型,从而获得一种高效低功耗智能分析算法模型,方法有效、简便,且获得的模型具有较优性能。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本发明一种实施例的智能算法模型自主生成及进化方法流程示意图;
图2是本发明一种实施例中通过LSTM网络生成子结构信息示意图;
图3是本发明一种实施例中子结构信息示例图;
图4是本发明一种实施例中通过子结构信息组成算法模型的过程示例图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明的核心思想是基于LSTM网络模型和利用奖励值期望优化网络参数的方法,逐步生成智能算法模型的中间结构信息,通过对当前状态的网络模型训练与评测得到当前动作的奖励值来指导下一个子结构信息的生成,直到在模型的识别准确度、运行时间以及能量消耗三个方面自主进化为最优的智能算法模型,从而获得一种高效低功耗智能分析算法。
本发明的一种高效低功耗智能算法模型自主生成及进化方法,如图1所示,包括以下步骤:
步骤S100,基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
步骤S200,通过LSTM网络进行第N个子结构的生成,并与步骤S100匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
步骤S300,基于步骤S100匹配得到的数据库,对步骤S200得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于步骤S100的算法评测方法获取该训练后模型的评测结果;
步骤S400,基于步骤S300中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行步骤S200、步骤S300直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
步骤S500,迭代执行步骤S200、步骤S300、步骤S400,获取含有第N+1个子结构的训练后的智能分析算法模型,直至步骤S400得到的智能分析算法模型对应的评测结果达到预设条件或迭代结束条件,输出最后一个迭代轮次中训练好的智能分析算法模型。本发明方法中存在两个关键的迭代过程:第一个迭代过程、第二个迭代过程,第一迭代过程包含在第二迭代过程中。
第一个迭代过程:含有第N个子结构的训练后的智能分析算法模型未达到设定的优化指标(即第一迭代结束条件),基于优化后的LSTM网络,迭代执行步骤S200、步骤S300、步骤S400,目的是为了确定当前子结构数量下的最优智能分析算法模型;该迭代过程中,第一次获取含有第N个子结构的训练后的智能分析算法模型时采用的LSTM网络参数为初始参数,后续迭代轮次中LSTM网络参数为上次轮次更新后的LSTM网络参数;
第二个迭代过程:经步骤S400输出的最终的含有第N个子结构的训练后的智能分析算法模型,若未达到设定性能指标(即第二迭代结束条件),则迭代执行步骤S200、步骤S300、步骤S400、步骤S500获取增加一个子结构后的训练后的智能分析算法模型,目的是为了在当前数量的子结构优化仍无法满足要求时,探索增加一个子结构后的训练后的智能分析算法模型是否能满足要求;该迭代过程中,每一次迭代轮次中采用的LSTM网络参数均为初始参数。
为了更清晰地对本发明智能算法模型自主生成及进化方法进行说明,下面结合附图对本方发明方法一种实施例中各步骤进行展开详述。
步骤S100,基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库。
本实施例中,智能分析任务可选的有物体分类、物体检测、属性识别等。评测方法池中算法评测方法可选的有平均精度均值MAP(Mean Average Precision)、平均精度AP(Average Precision)、交并比IOU(Intersection-over-Union)、运行时间、能量消耗等。数据库针对特定任务可选当前最具代表性的公开数据库作为候选,像物体分类中的ImageNet数据库、物体检测任务中的COCO数据库、属性识别中的PA-100K数据库等,输入输出模块也要根据特定任务和选定数据库确定,作为示例,选择物体分类任务和ImageNet数据库时,输入的大小将设置为224×224,输出由softmax函数做1000个类别分类。
步骤S200,通过LSTM网络进行第N个子结构的生成,并与步骤S100匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型。这里LSTM网络是一个两层结构,第二层每一个输出会连接一个softmax函数,并通过对应的softmax函数进行子结构信息获取过程中各信息类别的选择,并基于所选择类别确定所生成的子结构的信息。
在本实施例中,将智能分析算法模型的组成看作是若干个子结构拼接而成,子结构信息基于LSTM网络逐步生成,参考附图2,每个子结构信息具体包括:选择子结构输入节点、选择操作方式、选择组合方式、选择组合输入节点四个部分,各部分的选择动作通过LSTM网络中相应的softmax函数进行获取。基于子结构信息构建子结构,N个子结构构成中间结构。
(1)选择子结构输入节点
从候选节点集中选择一个子结构的输出作为当前子结构HN的输入;所述候选节点集由前N-1个子结构{1,2,...,HN-1}的输出构成。
(2)选择操作方式
从预设的操作函数集中选择一种操作函数用于对所选择的输入节点的信息进行处理。
所述操作函数集包含预设的多种卷积、预设的多种池化、预设的多种分离卷积。例如,本实施例中的操作函数集可以包括以下几种操作方式:1×7,7×1卷积(convolution)、1×3,3×1卷积、5×5卷积、3×3卷积、1×1卷积、3×3加宽卷积(dilated convolution)、3×3均值池化(average pooling)、7×7最大值池化(max pooling)、5×5最大值池化、3×3最大值池化、7×7深度分离卷积(depthwise-separable convolution)、5×5深度分离卷积、3×3深度分离卷积等。
(3)选择组合方式
从预设的组合方式集合中选择一种组合方式,用于当前子结构HN所选择的操作方式下的输出和候选节点集中所选择的子结构的输出进行组合;所述预设的组合方式集合包括元素级相加(add)、输出拼接(concat)、以及自身的线性变换(identity)。
(4)选择组合输入节点
从候选节点集中选择一个子结构的输出与当前子结构HN所选择的操作方式下的输出,按照所选择的组合方式进行组合后作为当前子结构HN的输出;所述候选节点集由前N-1个子结构的输出构成。特殊的,当组合方式为identity时,当前子结构输出之后不需要与其他子结构输出进行组合,当前子结构的选择组合输入节点就只有当前子结构HN所选择的操作方式下的输出。
下面举例说明利用LSTM网络逐步生成子结构,并组成智能模型的过程:
假设目前LSTM网络已完成第N个子结构信息的生成,那前面的子结构信息也已经确定,可选的结果如图3所示,第二个子结构的输入为第一个子结构的输出,经过3×3卷积后又与第一个子结构的输出做元素级相加操作,然后第二个子结构的输出作为第N个子结构的输入经过3×3最大值池化后与第N-1个子结构的输出做拼接操作,其中第N-1个子结构的输入是第N-2个子结构的输出经过1×1卷积操作后进行自身的线性变换,第N个子结构信息完成后,便完成了模型的全部子结构信息,并生成如图4所示的模型中间结构。将输入为224×224的图片、模型中间结构、softmax函数输出组合为最终的算法模型。其中,模型的第一个子结构信息都是输入图片。
这一步本质上是要摒弃带有不确定性并且效率不高的人工构建模型的方法,利用LSTM网络自动设计网络架构。
步骤S300,基于步骤S100匹配得到的数据库,对步骤S200得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于步骤S100的算法评测方法获取该训练后模型的评测结果。
在本实施例中,选定数据库包括三部分:训练数据集、评测数据集、测试数据集。其中,训练数据集是训练每一迭代轮次产生的算法模型直到收敛所用的数据集。评测数据集是为了获取当前迭代轮次收敛模型的识别准确度、运行时间以及能量消耗上的评测结果所用的数据集,测试数据集是对模型的最终测试,这里可与其他人工设计的性能领先的算法模型进行对比。
利用训练数据集对所生成的智能分析算法模型进行训练,训练收敛后在利用评测数据集对模型进行评测,获得模型在识别准确度、运行时间以及能量消耗上的评测结果。
在本实施例中,对智能分析算法模型的训练方法可采用通用的梯度下降法。
上述算法模型的评测结果是对收敛模型的功耗计算、运行时间计算以及准确度计算的综合评价。
通过公式(1)计算评测结果对应的奖励值,
其中,Scorem为智能分析算法模型m在评测数据集上的奖励值(即智能分析算法模型m的奖励值);Acc(m)是智能分析算法模型m在评测数据集上运算的准确度衡量;esm是智能分析算法模型m在特定设备上运算的能量消耗;tm是智能分析算法模型m在评测数据集上的运算时间;T、ES分别是预设的模型运算时可接受的最长时间和最大能量消耗值,且满足tm≤T,esm≤ES;α、β分别是模型的运行时间与能量消耗在整个评测得分上的预设权重参数。本实施例中可以令α=β=-0.07。
上述评测得分Scorem衡量收敛网络模型的实际性能,可以看出模型的准确度越高、运行时间越短、能量消耗越少时,评测得分越高。
这一步本质上是为了评测模型时可以综合考虑识别准确度、运行时间以及能量消耗三方面因素,从而实现多目标优化。
步骤S400,基于步骤S300中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行步骤S200、步骤S300直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型。
在本实施例中,更新LSTM网络的参数方法公式化形式如公式(2)所示,通过优化参数使得奖励值期望J(θ)最大:
其中,θ是为LSTM网络参数,Scorem是在LSTM网络预测一系列结果后对应的一系列动作(a1:N)的奖励值,即包含第1至第N个子结构的智能分析算法模型的评测结果。
具体地,上述优化方法可以采用强化学习,如公式(3)所示:
其中,表示梯度计算,M是LSTM在训练过程随机生成的参数网络模型参数的组数(M为预设值,LSTM网络的M组参数对应生成M个不同子结构的智能分析算法模型),是第i个网络模型在训练数据集训练收敛后利用评测数据集得到的奖励值,an和是第i个网络模型的当前动作和在此动作之前的一系列动作。
这一步本质上是通过最大化奖励值期望的方法,使得LSTM可以在识别准确度、运行时间以及能量消耗三个方面自主进化为最优的高效低功耗网络模型。
在一些实施例中,智能算法模型自主生成及进化方法还增加了人工干预环节。例如根据人机交互端口获取操作者的修改信息对当前迭代轮次的输出结果进行修改,还可以根据当前生成模型的评测结果确定下一迭代轮次的执行动作,即:放弃、停止和继续。
在本示例中,可随时抽取当前生成的模型,用上述评测方法进行对比。在发现较好的中间结构或者非常不好的中间结构时,都可以通过人机交互端口获取的命令更改LSTM当前的动作,使智能算法模型自主进化的过程更加高效。
步骤S500,迭代执行步骤S200、步骤S300、步骤S400,获取含有第N+1个子结构的训练后的智能分析算法模型,直至步骤S400得到的智能分析算法模型对应的评测结果达到预设条件或迭代结束条件,输出最后一个迭代轮次中训练好的智能分析算法模型。
判断步骤S400中得到的最终的含有第N个子结构的训练后的智能分析算法模型对应的评测结果是否达到预设条件或迭代终止条件(第二迭代结束条件),若未达到则迭代执行步骤S200、步骤S300、步骤S400,获取含有第N+1个子结构的训练后的智能分析算法模型,若达到则输出最后一个迭代轮次中训练好的智能分析算法模型,从而获取在识别准确度、运行时间以及能量消耗三个方面均能达到预设条件的高效低功耗智能分析算法模型。
本发明第二实施例的一种智能算法模型自主生成及进化***,该***包括模型包装单元、模型获取单元、模型训练单元、模型评测单元、模型优化迭代控制单元;
所述模型包装单元,配置为基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
所述模型获取单元,配置为通过LSTM网络进行第N个子结构的生成,并与所述模型包装单元匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
所述模型训练单元,配置为基于所述模型包装单元匹配得到的数据库,对所述模型获取单元得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于所述模型包装单元的算法评测方法获取该训练后模型的评测结果;
所述模型评测单元,配置为基于所述模型训练单元中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行所述模型获取单元、所述模型训练单元直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
所述模型优化迭代控制单元,配置为判断所述模型训练单元的评测结果是否达到预设条件或迭代终止条件,若未达到则通过所述模型获取单元、所述模型训练单元、所述模型评测单元,获取含有第N+1个子结构的训练后的智能分析算法模型,若达到则输出最后一个迭代轮次中训练好的智能分析算法模型。
所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
需要说明的是,上述实施例提供的智能算法模型自主生成及进化***,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块来完成,即将本发明实施例中的模块或者步骤再分解或者组合,例如,上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块,以完成以上描述的全部或者部分功能。对于本发明实施例中涉及的模块、步骤的名称,仅仅是为了区分各个模块或者步骤,不视为对本发明的不当限定。
本发明第三实施例的一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的智能算法模型自主生成及进化方法。
本发明第四实施例的一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的智能算法模型自主生成及进化方法。
所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。
术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (11)
1.一种智能算法模型自主生成及进化方法,其特征在于,该方法包括以下步骤:
步骤S100,基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
步骤S200,通过LSTM网络进行第N个子结构的生成,并与步骤S100匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
步骤S300,基于步骤S100匹配得到的数据库,对步骤S200得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于步骤S100的算法评测方法获取该训练后模型的评测结果;
步骤S400,基于步骤S300中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行步骤S200、步骤S300直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
步骤S500,迭代执行步骤S200、步骤S300、步骤S400,获取含有第N+1个子结构的训练后的智能分析算法模型,直至步骤S400得到的智能分析算法模型对应的评测结果达到预设条件或迭代结束条件,输出最后一个迭代轮次中训练好的智能分析算法模型。
2.根据权利要求1所述的智能算法模型自主生成及进化方法,其特征在于,所述特定分析任务为物体分类、物体检测、属性识别中任一种;所述评测方法池中的评测方法包括平均精度均值、平均精度、交并比、运行时间、能量消耗。
3.根据权利要求1所述的智能算法模型自主生成及进化方法,其特征在于,所述子结构通过选择子结构输入节点、选择操作方式、选择组合方式、选择组合输入节点获取。
4.根据权利要求3所述的智能算法模型自主生成及进化方法,其特征在于,所述选择子结构输入节点,其方法为:
从候选节点集中选择一个子结构的输出作为当前子结构HN的输入;所述候选节点集由前N-1个子结构{1,2,...,HN-1}的输出构成。
5.根据权利要求3所述的智能算法模型自主生成及进化方法,其特征在于,所述选择操作方式,其方法为:
从预设的操作函数集中选择一种操作函数用于对所选择的输入节点的信息进行处理;所述操作函数集包含预设的多种卷积、预设的多种池化、预设的多种分离卷积。
6.根据权利要求3所述的智能算法模型自主生成及进化方法,其特征在于,所述选择组合输入节点,其方法为:
从候选节点集中选择一个子结构的输出与当前子结构HN所选择的操作方式下的输出,按照所选择的组合方式进行组合后作为当前子结构HN的输出;所述候选节点集由前N-1个子结构{1,2,...,HN-1}的输出构成。
7.根据权利要求3所述的智能算法模型自主生成及进化方法,其特征在于,所述选择组合方式,其方法为:
从预设的组合方式集合中选择一种组合方式,用于当前子结构HN所选择的操作方式下的输出和候选节点集中所选择的子结构的输出进行组合;所述预设的组合方式集合包括元素级相加、输出拼接、线性变换。
9.一种智能算法模型自主生成及进化***,其特征在于,该***包括模型包装单元、模型获取单元、模型训练单元、模型评测单元、模型优化迭代控制单元;
所述模型包装单元,配置为基于特定分析任务的输入、输出设定,从预设的功能模块库中分别匹配输入模块、输出模块;基于所述特定分析任务的评测类型从预设的评测方法池中匹配对应的算法评测方法;基于所述特定分析任务的输入信息从预设的数据库池中匹配对应的数据库;
所述模型获取单元,通过LSTM网络进行第N个子结构的生成,并与所述模型包装单元匹配的所述输入模块、所述输出模块、前N-1个子结构进行组合,获取针对所述特定分析任务含有第N个子结构的智能分析算法模型;
所述模型训练单元,配置为基于所述模型包装单元匹配得到的数据库,对所述模型获取单元得到的智能分析算法模型,利用梯度下降法训练模型,直到收敛得到参数优化后的智能分析算法模型,并基于所述模型包装单元的算法评测方法获取该训练后模型的评测结果;
所述模型评测单元,配置为基于所述模型训练单元中的评测结果得到优化LSTM网络参数的奖励值,并利用强化学习更新LSTM网络的参数,迭代执行所述模型获取单元、所述模型训练单元直至收敛或评测结果达到预设条件,得到含有第N个子结构的训练后的智能分析算法模型;
所述模型优化迭代控制单元,配置为判断所述模型训练单元的评测结果是否达到预设条件或迭代终止条件,若未达到则通过所述模型获取单元、所述模型训练单元、所述模型评测单元,获取含有第N+1个子结构的训练后的智能分析算法模型,若达到则输出最后一个迭代轮次中训练好的智能分析算法模型。
10.一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现权利要求1-8任一项所述的智能算法模型自主生成及进化方法。
11.一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现权利要求1-8任一项所述的智能算法模型自主生成及进化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910484484.4A CN110222824B (zh) | 2019-06-05 | 2019-06-05 | 智能算法模型自主生成及进化方法、***、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910484484.4A CN110222824B (zh) | 2019-06-05 | 2019-06-05 | 智能算法模型自主生成及进化方法、***、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110222824A CN110222824A (zh) | 2019-09-10 |
CN110222824B true CN110222824B (zh) | 2020-11-17 |
Family
ID=67819674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910484484.4A Active CN110222824B (zh) | 2019-06-05 | 2019-06-05 | 智能算法模型自主生成及进化方法、***、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110222824B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110852438B (zh) * | 2019-11-11 | 2023-08-04 | 北京百度网讯科技有限公司 | 模型生成方法和装置 |
CN113379045B (zh) * | 2020-02-25 | 2022-08-09 | 华为技术有限公司 | 数据增强方法和装置 |
CN112101525A (zh) * | 2020-09-08 | 2020-12-18 | 南方科技大学 | 一种通过nas设计神经网络的方法、装置和*** |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10281885B1 (en) * | 2016-05-20 | 2019-05-07 | Google Llc | Recurrent neural networks for online sequence generation |
CN106970615B (zh) * | 2017-03-21 | 2019-10-22 | 西北工业大学 | 一种深度强化学习的实时在线路径规划方法 |
CN109034034A (zh) * | 2018-07-12 | 2018-12-18 | 广州麦仑信息科技有限公司 | 一种基于强化学习算法优化卷积神经网络的静脉识别方法 |
CN109733415B (zh) * | 2019-01-08 | 2020-08-14 | 同济大学 | 一种基于深度强化学习的拟人化自动驾驶跟驰模型 |
-
2019
- 2019-06-05 CN CN201910484484.4A patent/CN110222824B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110222824A (zh) | 2019-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110222824B (zh) | 智能算法模型自主生成及进化方法、***、装置 | |
CN110866528B (zh) | 一种模型训练方法、能耗使用效率预测方法、装置和介质 | |
CN111148118A (zh) | 基于时间序列的流量预测和载波关断方法和*** | |
CN109345027B (zh) | 基于独立成分分析与支持向量机的微电网短期负荷预测方法 | |
CN104239213A (zh) | 一种面向航天器自动化测试的并行测试任务两阶段调度方法 | |
CN110674965A (zh) | 基于动态特征选取的多时间步长风功率预测方法 | |
CN115860081B (zh) | 一种芯粒算法调度方法、***、电子设备及存储介质 | |
CN113032367A (zh) | 面向动态负载场景的大数据***跨层配置参数协同调优方法和*** | |
CN113722980A (zh) | 海洋浪高预测方法、***、计算机设备、存储介质、终端 | |
CN114880806A (zh) | 基于粒子群优化的新能源汽车销量预测模型参数优化方法 | |
CN113642652A (zh) | 生成融合模型的方法、装置和设备 | |
CN116245019A (zh) | 一种基于Bagging抽样及改进随机森林算法的负荷预测方法、***、装置及存储介质 | |
Martinez-de-Pison et al. | Searching parsimonious solutions with GA-PARSIMONY and XGBoost in high-dimensional databases | |
CN112200208B (zh) | 基于多维度特征融合的云工作流任务执行时间预测方法 | |
CN117150898A (zh) | 基于参数优化集成学习的输电断面极限传输容量评估方法 | |
CN116737334A (zh) | 任务调度及数据集标签更新方法、装置和电子设备 | |
CN115081856A (zh) | 一种企业知识管理绩效评价装置及方法 | |
CN115345303A (zh) | 卷积神经网络权重调优方法、装置、存储介质和电子设备 | |
CN113240181B (zh) | 一种水库调度运行滚动模拟方法及装置 | |
Wei et al. | Long-term autonomous mission planning of AUV in large-scale complex marine environment | |
CN112667591A (zh) | 一种基于海量日志的数据中心任务干扰预测方法 | |
CN112926611A (zh) | 特征提取方法、装置及计算机可读存储介质 | |
KR102497543B1 (ko) | 머신러닝을 사용한 군 수리부속 수요예측 모델과 실용화 시스템 | |
US20230351146A1 (en) | Device and computer-implemented method for a neural architecture search | |
CN111931416B (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 |