CN111325343B - 神经网络的确定、目标检测、智能行驶控制方法及装置 - Google Patents
神经网络的确定、目标检测、智能行驶控制方法及装置 Download PDFInfo
- Publication number
- CN111325343B CN111325343B CN202010105397.6A CN202010105397A CN111325343B CN 111325343 B CN111325343 B CN 111325343B CN 202010105397 A CN202010105397 A CN 202010105397A CN 111325343 B CN111325343 B CN 111325343B
- Authority
- CN
- China
- Prior art keywords
- node
- directed acyclic
- acyclic graph
- operation method
- sampling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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
-
- 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/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
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)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了一种神经网络的确定、目标检测、智能行驶控制方法及装置,包括获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;基于训练数据、以及选择的目标操作方法,确定有向无环图的输出节点的取值;基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整有向无环图中的各个模型参数的取值;各个模型参数包括采样参数和操作方法中的操作参数;重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
Description
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种神经网络的确定、目标检测、智能行驶控制方法及装置。
背景技术
神经网络的确定一般需要两个阶段,一个阶段是网络结构搜索阶段,一个阶段是网络性能评估阶段,在网络结构搜索阶段,需要确定神经网络的网络结构,然后在网络性能评估阶段对确定的神经网络进行训练,并基于训练结果确定神经网络的性能。这种方法就可能出现在网络性能评估阶段所确定出的神经网络的性能无法满足用户需求的情况,这就需要再返回网络结构搜索阶段去重新确定神经网络的网络结构,从而导致计算资源的浪费。
发明内容
本公开实施例至少提供一种神经网络的确定、目标检测、智能行驶控制方法及装置。
第一方面,本公开实施例提供了一种神经网络的确定方法,包括:
获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率;
基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
上述方法基于有向无环图来训练神经网络,这里,有向无环图的边所对应的目标操作方法决定了神经网络的结构,有向无环图的边所对应的最终的操作方法是在训练完成之后确定的,因此,本公开在训练的过程中同时进行着神经网络的结构的调整;另外,目标操作方法的操作参数在训练过程中也是不断调整的,因此在训练完成后,由最终的操作方法所构成的神经网络的网络参数也是经过训练的。可见,基于这种方法,可以在调整神经网络的结构的同时,调整神经网络的模型参数,提高了神经网络训练的效率,节省了计算资源。
一种可能的实施方式中,所述从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法,包括:
基于所述采样模型中每条边对应的采样参数,确定所述有向无环图中每条边所对应的采样向量;所述采样向量中对应一个操作方法的元素的值不为0,对应其它操作方法的元素的值为0;
将所述有向无环图中的每条边对应的采样向量,与所述有向无环图的边对应的操作方法向量的对应元素相乘,将乘积不为0的元素对应的操作方法确定为所述目标操作方法;所述操作方法向量中的每一个元素对应一种操作方法。
针对每条边,从该条边对应的多种操作方法中选择一种操作方法作为目标操作方法,由此,在确定输出节点的取值时,可以减少计算量,提高神经网络的训练效率。
一种可能的实施方式中,根据以下步骤构建所述有向无环图:
根据每一级对应的预设个数的节点,构建所述有向无环图,其中,第一级节点为输入节点,最后一级节点为输出节点。
一种可能的实施方式中,所述基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值,包括:
将所述训练数据作为输入节点的取值,并针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值。
一种可能的实施方式中,针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值,包括:
将除所述输入节点外的每一个节点分别作为当前节点,若所述当前节点存在对应的多个上一级节点,针对每一个上一级节点,根据该上一级节点的取值,以及当前节点与该上一级节点之间的边对应的所述目标操作方法,确定该上一级节点的输出数据;
将所述当前节点的多个上一级节点的输出数据进行求和运算,得到所述当前节点的取值。
一种可能的实施方式中,获取训练数据之后,还包括:将所述训练数据划分为多组数据;
所述基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法,包括:
针对划分的每一组数据,基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法。
对于不同组数据,有向无环图的每条边所对应的目标操作方法可以根据采样方法重新确定,从而可以使得不同操作方法中的操作参数均得到训练,进而在为每条边选择最终的操作方法时,准确度更高。
一种可能的实施方式中,所述基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值,包括:
在所述有向无环图中的一条边对应的所述采样参数的取值满足预设条件的情况下,基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的除该条边外的其他边的所述采样参数。
若所述有向无环图中的一条边对应的训练的采样参数的取值满足预设条件,则说明该条边对应的采样参数已训练完成,则在之后的训练过程中,可以不对该条边对应的采样参数进行调整,从而减少了训练过程中所需调整的模型参数的数量,提高神经网络模型的训练效率。
一种可能的实施方式中,所述预设条件包括以下条件中的任意一个:
所述采样参数对应的最大概率值大于第一预设值;
所述采样参数对应的最大概率值和次大概率值之间的差值大于第二预设值。
一种可能的实施方式中,所述基于训练好的每条边对应的所述采样参数,确定该条边对应的最终的操作方法,包括:
基于训练好的每条边对应的所述采样参数,确定被选择的概率最大的操作方法,为该条边对应的最终的操作方法。
这里,被选择的概率最大的操作方法,为训练过程中在调整模型参数时,使得模型性能最优的操作方法,因此,将每条边对应的被选择概率最大的操作方法作为该条边对应的最终的操作方法,可以使得训练出的神经网络的性能更优。
一种可能的实施方式中,所述基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值,包括:
基于所述有向无环图的输出节点的取值、所述训练数据对应的监督数据、以及确定的神经网络部署的平台的性能信息,调整所述有向无环图中的各个模型参数的取值。
第二方面,本公开实施例提供了一种目标检测方法,包括:
获取待检测图像;
通过基于如第一方面或第一方面的任一种可能的实施方式所述的神经网络的确定方法所确定的神经网络,检测所述待检测图像中的目标对象。
第三方面,本公开实施还提供了一种智能行驶控制方法,包括:
获取行驶装置在行驶过程中采集的图像;
通过基于如第一方面或第一方面的任一种可能的实施方式所述的神经网络的确定方法所确定的神经网络,检测所述图像中的目标对象;
基于所述图像中的目标对象,控制所述行驶装置。
第四方面,本公开实施例还提供一种神经网络的确定装置,包括:
获取模块,用于获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率;
第一确定模块,用于基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
调整模块,用于基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
第二确定模块,用于重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
一种可能的实施方式中,所述获取模块,在从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,用于:
基于所述采样模型中每条边对应的采样参数,确定所述有向无环图中每条边所对应的采样向量;所述采样向量中对应一个操作方法的元素的值不为0,对应其它操作方法的元素的值为0;
将所述有向无环图中的每条边对应的采样向量,与所述有向无环图的边对应的操作方法向量的对应元素相乘,将乘积不为0的元素对应的操作方法确定为所述目标操作方法;所述操作方法向量中的每一个元素对应一种操作方法。
一种可能的实施方式中,所述获取模块,还用于根据以下步骤构建所述有向无环图:
根据每一级对应的预设个数的节点,构建所述有向无环图,其中,第一级节点为输入节点,最后一级节点为输出节点。
一种可能的实施方式中,所述第一确定模块,在基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值时,用于:
将所述训练数据作为输入节点的取值,并针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值。
一种可能的实施方式中,针对除所述输入节点外的每一个节点,所述第一确定模块,在根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值时,用于:
将除所述输入节点外的每一个节点分别作为当前节点,若所述当前节点存在对应的多个上一级节点,针对每一个上一级节点,根据该上一级节点的取值,以及当前节点与该上一级节点之间的边对应的所述目标操作方法,确定该上一级节点的输出数据;
将所述当前节点的多个上一级节点的输出数据进行求和运算,得到所述当前节点的取值。
一种可能的实施方式中,获取训练数据之后,所述获取模块,还用于:将所述训练数据划分为多组数据;
所述获取模块,在基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,用于:
针对划分的每一组数据,基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法。
一种可能的实施方式中,所述调整模块,在基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值时,用于:
在所述有向无环图中的一条边对应的所述采样参数的取值满足预设条件的情况下,基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的除该条边外的其他边的所述采样参数。
一种可能的实施方式中,所述预设条件包括以下条件中的任意一个:
所述采样参数对应的最大概率值大于第一预设值;
所述采样参数对应的最大概率值和次大概率值之间的差值大于第二预设值。
一种可能的实施方式中,所述第二确定模块,在基于训练好的每条边对应的所述采样参数,确定该条边对应的最终的操作方法时,用于:
基于训练好的每条边对应的所述采样参数,确定被选择的概率最大的操作方法,为该条边对应的最终的操作方法。
一种可能的实施方式中,所述调整模块,在基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值时,用于:
基于所述有向无环图的输出节点的取值、所述训练数据对应的监督数据、以及确定的神经网络部署的平台的性能信息,调整所述有向无环图中的各个模型参数的取值。
第五方面,本公开实施例还提供了一种目标检测装置,包括:
图像获取模块,用于获取待检测图像;
第一检测模块,用于通过基于如第一方面或第一方面的任意实施方式所述的神经网络的确定方法所确定的神经网络,检测所述待检测图像中的目标对象。
第六方面,本公开实施例还提供了一种智能行驶控制装置,包括:
图像获取模块,用于获取行驶装置在行驶过程中采集的图像;
第二检测模块,用于通过基于如第一方面或第一方面任一种可能的实施方式所述的神经网络的确定方法所确定的神经网络,检测所述图像中的目标对象;
基于所述图像中的目标对象,控制所述行驶装置。
第七方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或执行如上述第二方面的步骤,或执行如上述第三方面的步骤。
第八方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或执行如上述第二方面的步骤,或执行如上述第三方面的步骤。
关于上述神经网络的确定装置、电子设备、及计算机可读存储介质的效果描述参见上述神经网络的确定方法的说明,这里不再赘述。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种神经网络的确定方法的流程图;
图2示出了本公开实施例所提供的一种有向无环图的示意图;
图3示出了本公开实施例所提供的一种边与操作方法的对应关系示意图;
图4示出了本公开实施例所提供的一种目标操作方法确定的流程示意图;
图5示出了本公开实施例所提供的一种目标检测方法的流程示意图;
图6示出了本公开实施例所提供的一种智能行驶控制方法的流程示意图;
图7示出了本公开实施例所提供的一种神经网络的确定装置的架构示意图;
图8示出了本公开实施例所提供的一种目标检测装置的架构示意图;
图9示出了本公开实施例所提供的一种智能行驶控制装置的架构示意图;
图10示出了本公开实施例所提供的电子设备1000的结构示意图;
图11示出了本公开实施例所提供的电子设备1100的结构示意图;
图12示出了本公开实施例所提供的电子设备1200的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
相关技术中,在确定神经网络时,需要先确定神经网络的结构,然后再对确定结构的神经网络进行训练,并确定训练好的神经网络的网络性能。其中,神经网络的结构例如可以为神经网络中卷积层的个数、池化层的个数等。若训练好的神经网络的网络性能无法满足用户需求,则需要重新确定神经网络的结构,并重新训练,在这个过程中,一方面神经网络的确定过程所耗费的时间较长,另一方便浪费了计算资源。
基于此,本公开提供了一种神经网络的确定方法,可以基于有向无环图来训练神经网络,这里,有向无环图的边所对应的目标操作方法决定了神经网络的结构,有向无环图的边所对应的目标操作方法是在训练完成之后确定的,因此,本公开在训练的过程中同时进行着神经网络的结构的调整;另外,目标操作方法的操作参数是待调整的模型参数,因此在得到训练好的这些操作参数后可以得到神经网络的模型参数。可见,基于这种方法,可以在调整神经网络的结构的同时,调整神经网络的模型参数,提高了神经网络训练的效率,节省了计算资源。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种神经网络的确定方法进行详细介绍,本公开实施例所提供的神经网络的确定方法的执行主体一般为服务器,其他具有计算能力的终端设备也可作为本方案的执行主体,对此,本申请并不限定。
参见图1所示,为本公开实施例提供的一种神经网络的确定方法的流程图,该方法包括以下几个步骤:
步骤101、获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率。
步骤102、基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值。
步骤103、基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数。
步骤104、判断是否满足训练截止条件。
若满足训练截止条件,则顺序执行步骤105;
若不满足训练截止条件,则返回执行步骤101。
步骤105、基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
上述方法基于有向无环图来训练神经网络,这里,有向无环图的边所对应的目标操作方法决定了神经网络的结构,有向无环图的边所对应的最终的操作方法是在训练完成之后确定的,因此,本公开在训练的过程中同时进行着神经网络的结构的调整;另外,目标操作方法的操作参数在训练过程中也是不断调整的,因此在训练完成后,由最终的操作方法所构成的神经网络的网络参数也是经过训练的。可见,基于这种方法,可以在调整神经网络的结构的同时,调整神经网络的模型参数,提高了神经网络训练的效率,节省了计算资源。
下面是对步骤101~步骤105的详细介绍。
针对步骤101、
训练数据是用于训练神经网络的数据,可以根据所需要确定的神经网络的功能不同,而获取不同的训练数据。示例性的,若需要确定的神经网络的功能是图像分割,则训练数据为包含不同待分割对象的样本图像;若需要确定的神经网络的功能是语音识别,则训练数据为不同的样本音频。
有向无环图由节点和节点之间有方向的边构成,有向无环图中的节点表示神经网络中各个层的输出。在一种可能的实施方式中,在构建有向无环图时,可以根据预先确定好个数的节点,构建有向无环图。
在另一种可能的实施方式中,在构建有向无环图时,可以根据每一级对应的预设个数的节点,构建有向无环图,其中,第一级节点为输入节点,最后一级节点为输出节点。
示例性的,构建的有向无环图可以如图2所示,图2中,X_0、X_1、X_2、X_3、X_4为有向无环图中的节点,edge0、edge1、edge2、edge3、edge4为有向无环图的边,X_0、X_1为输入节点,X_4为输出节点,X_2为第二级节点,X_3为第三级节点。
有向无环图的每条边对应的操作方法可以为对输入数据进行处理的处理方法,例如可以为卷积操作、池化操作、全连接操作等,对于其他可以对数据进行处理的操作方法,本公开并不限定。
在另外一种可能的实施方式中,还可以直接连接输入节点与输出节点,此时,连接输入节点与输出节点的边所对应的操作方法为处理方法集合,每个处理方法集合中包括多个对于输入数据的处理方法,示例性的,如图3所示,图3中,从节点1与节点2连接的边对应有三个操作方法,分别为操作方法1、操作方法2、操作方法3,可以从这三个操作方法中选择一个操作方法作为目标操作方法;每个操作方法中可以包括多个对于输入数据的处理方法,以操作方法1为例,操作方法1中所包含的处理方法有:先经过卷积核尺寸为1的卷积,在经过卷积核为3的深度卷积,最后经过卷积核尺寸为1的卷积。
需要说明的是,在直接连接输入节点和输出节点时,去除了输入节点与输出节点之间的中间节点,直接从连接输入节点和输出节点之间的边所对应的多个操作方法中,选择一个目标操作方法,此时,由于每个操作方法中包含多个处理方法,因此,从选择对输入数据进行处理的处理方法到确定输出节点的取值,所耗费的时间更少,进而提高了神经网络的训练效率。
在从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,可以参照图4所示的目标操作方法确定的流程示意图,包括以下几个步骤:
步骤401、基于所述采样模型中每条边对应的采样参数,确定所述有向无环图中每条边所对应的采样向量;所述采样向量中对应一个操作方法的元素的值不为0,对应其它操作方法的元素的值为0。
在一种可能的实施方式中,采样模型可以是Gumbel-Softmax模型,当采样模型中的温度系数参数趋近于0时,Gumbel-Softmax模型可以输出采样向量,该采样向量为独热编码one-hot的形式。
其中,需要说明的是,采样模型与有向无环图所表征的神经网络是同时训练的,采样模型中的采样参数是训练过程中所需要调整的模型参数之一。
步骤402、将所述有向无环图中的每条边对应的采样向量,与所述有向无环图的边对应的操作方法向量的对应元素相乘,将乘积不为0的元素对应的操作方法确定为所述目标操作方法;所述操作方法向量中的每一个元素对应一种操作方法。
在一种可能的实施方式中,同一个有向无环图中的不同的边所对应的待选择的操作方法相同,此时,有向无环图中每个边所对应的待选择的操作方法可以包括所有对训练数据进行处理的处理方法,且有向无环图中每个边所对应的操作方法向量也是相同的。
在另外一种可能的实施方式中,同一个有向无环图中不同的边所对应的待选择的操作方法也可以是不同的,此时,有向无环图中每个边所对应的待选择的操作方法可以根据节点的不同进行设计。
需要说明的是,以上两种实施方式中,无论哪一种实施方式,有向无环图中的每条边所对应的操作方法向量中元素的个数与该条边所对应的操作方法的个数相同。
示例性的,若有向无环图包括三条边:边a、边b、边c,每条边对应相同的操作方法,即为操作方法1、操作方法2;则可以用向量[1,2]表示操作方法向量,操作方法向量中的“1”表示操作方法1,操作方法向量中的“2”表示操作方法2,因此,边a、边b和边c所对应的操作方法均可以用操作方法向量[1,2]来表示。
每条边对应的采样参数表示该条边上每个操作方法被确定为目标操作方法的概率,示例性的,若边a对应的采样参数为[90%,10%],则说明边a上,操作方法1被确定为目标操作方法的概率是90%,操作方法2被确定为目标操作方法的概率是10%,采样向量为采样模型的输出的向量,用于为每条边选择目标操作方法,其受采样参数的控制。
若采样模型向量对边a、边b、边c输出的采样向量分别是[1,0]、[1,0]、[0,1],则边a和边b对应的目标操作方法为操作方法1,边c对应的目标操作方法为操作方法2。
由于采样向量中仅有一个值不为0,因此在将有向无环图中的每条边对应的采样向量,与有向无环图的边对应的操作方法向量中对应元素的值相乘之后,仅有一个元素对应的乘积不为0,从而可以从有向无环图的边对应的多个操作方法中选出一种操作方法作为目标操作方法。
针对每条边,从该条边对应的多种操作方法中选择一种操作方法作为目标操作方法,由此,在确定输出节点的取值时,可以减少计算量,提高神经网络的训练效率。
实际应用中,考虑到计算资源是有限的,在获取训练数据之后,可以将训练数据划分成多组数据;在基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,针对划分的每一组数据,可以基于包含待训练的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法。
示例性的,若训练数据包含10000张图片,则可以将训练数据划分成100组,每组包括100张图片,针对每一组图片,可以确定有向无环图的每条边对应的多种操作方法中选择一种目标操作方法。因此,在训练过程中,有向无环图中的每个边都需要进行100次目标操作方法的选择。
对于不同组数据,可以根据采样参数重新确定采样向量,而采样参数在模型训练的过程中可以根据每一组数据对应的输出节点的取值、以及对应的监督数据进行调整,因此采样向量在模型训练的过程中也根据采样参数中各个操作方法对应的概率值的变化而不断变化的,有向无环图的每条边所对应的目标操作方法可以根据重新确定的采样向量而确定,从而可以使得不同操作方法中的操作参数均得到训练,进而在为每条边选择最终的操作方法时,准确度更高。
针对步骤102、
具体的,在基于训练数据、以及选择的目标操作方法,确定有向无环图的输出节点的取值时,可以将训练数据作为输入节点的取值,并针对除输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的目标操作方法,确定该节点的取值。
其中,该节点的上一级节点是指指向该节点的节点。延续图2,图2中节点X_3的上一级节为指向节点X_3的节点,即X_3的上一级节点为X_0、X_1和X_2。
需要说明的是,此处的上一级节点并非是节点的级数比当前节点小1的节点,而是指指向当前节点的其他节点。
针对除输入节点外的每一个节点,在根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的目标操作方法,确定该节点的取值时,考虑到可能有多个上一级节点指向该节点,因此可以将除输入节点外的每一个节点分别作为当前节点,若当前节点存在多个上一级节点,针对每一个上一级节点,可以根据该上一级节点的取值,以及当前节点与该上一级节点之间的边对应的目标操作方法,确定该上一级节点的输出数据,然后将当前节点的多个上一级节点的输出数据进行求和运算,得到当前节点的取值。
示例性的,以图2所示的有向无环图为例,在计算节点X_3的取值时,可以利用edge3的目标操作方法对节点X_1的取值进行处理,得到节点X_1的输出数据,利用edge2的目标操作方法对节点X_0的取值进行处理,得到节点X_0的输出数据,以及利用edge4的目标操作方法对节点X_2的取值进行处理,得到节点X_2的输出数据,然后将节点X_1的输出数据、X_0的输出数据、节点X_2的输出数据进行求和运算,得到节点X_3的取值。
在另一种可能的实施方式中,若当前节点仅存在一个上一级节点,则可以根据连接当前节点与上一级节点的边对应的目标操作方法对上一级节点的取值进行处理,得到当前节点的取值。
针对步骤103、
其中,训练数据对应的监督数据可以是训练数据在理想化条件下经过处理得到的数据,例如,若本次训练过程中神经网络的功能是图像分割,则训练数据为样本图像,训练数据对应的监督数据为样本图像对应的分割图像,同时,输出节点的取值为本次训练过程中模型预测的分割图像;若本次训练过程中神经网络的功能是语音识别,则训练数据为样本音频,训练数据对应的监督数据为样本音频对应的语音识别结果,同时,输出节点的取值为本次训练过程中模型预测的语音识别结果。
在基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整有向无环图的各个模型参数的取值时,可以包括对于两部分的调整:采样模型中的采样参数、以及当前次训练过程中各个边对应的目标操作方法中的操作参数。
在一种可能的实施方式中,在基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整采样模型中的采样参数时,可以先基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,计算本次训练过程中的损失值,然后计算损失值梯度,并将计算的损失值梯度转换为策略梯度policy gradient,再基于策略梯度和本次训练过程中各个边对应的采样向量,对采样模型中的采样参数进行调整。
另外,在基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整当前次训练过程中各个边对应的目标操作方法中的操作参数时,可以先基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,计算损失值梯度,然后基于计算的损失值梯度,调整当前次训练过程中各个边对应的目标操作方法中的操作参数。
在一种可能的实施方式中,在基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整有向无环图中的各个模型参数的取值时,在有向无环图中的一条边对应的采样参数的取值满足预设条件的情况下,则可以基于有向无环图的输出节点的取值、以及训练数据对应的监督数据,调整有向无环图中的除了该条边以外的其他边的采样参数。
其中,所述预设条件包括以下条件中的任意一个:
所述采样参数对应的最大概率值大于第一预设值;
所述采样参数对应的最大概率值和次大概率值之间的差值大于第二预设值。
若检测到任一条边对应的训练的采样参数的取值满足预设条件,则说明该条边对应的采样参数已训练完成,则在之后的训练过程中,可以不对该条边对应的采样参数进行调整,从而减少了训练过程中所需调整的模型参数的数量,提高神经网络模型的训练效率。
针对步骤104、
步骤104中所述训练截止条件可以是以下条件中的至少一种:
返回执行获取训练数据的步骤的循环次数满足预设循环次数;
基于有向无环图的输出节点的取值、以及训练数据对应的监督数据所计算出的损失值小于预设损失值;
有向无环图中的每一条边对应的采样参数均满足预设条件。
针对步骤105、
在基于训练好的每条边对应的采样参数,确定该条边对应的最终的操作方法时,可以基于训练好的每条边对应的采样参数,确定被选择的概率最大的操作方法为该条边对应的最终的操作方法。
这里,被选择的概率最大的操作方法,为训练过程中在调整模型参数时,使得神经网络性能最优的操作方法,因此,将每条边对应的被选择的概率最大的操作方法作为该条边对应的最终的操作方法,可以使得训练出的神经网络的性能更优。
在某些应用场景中,可能会对神经网络的部署的平台的性能有限制,例如神经网络的大小、神经网络的计算速度等,以上均可以通过测量得到。对于这些应用场景中,在对神经网络进行训练,计算本次训练过程中的损失值时,可以基于有向无环图的输出节点的取值、训练数据对应的监督数据、以及确定的神经网络部署的平台的性能信息,确定本次训练过程中的损失值,然后基于损失值调整有向无环图中的各个模型参数的取值,其中,神经网络部署的平台的性能信息包括神经网络的大小、神经网络的计算速度中的至少一种。
另外,一些相关技术中,在确定神经网络时,由于需要先在网络结构搜索阶段确定网络结构,再在网络性能评估阶段对网络结构进行训练以及性能评估,而在网络结构搜索阶段确定网络结构时,需要将构建的有向无环图中的每个边所对应的多个操作都需要通过GPU显存来进行处理,因此,所需要的GPU显存较多。
与之对比,本公开所提供的神经网络的确定方法,一方面,由于本公开所提供的方法中,有向无环图每两个节点之间仅选择一种目标操作方法,另一方面,在本公开所提供的方法中,神经网络结构的确定和训练过程同步完成,因此,所需要的GPU显示较少。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
另外,本公开实施例还提供了一种目标检测方法,参见图5所示,为本公开实施例所提供的目标检测方法的流程示意图,包括以下几个步骤:
步骤501、获取待检测图像;
步骤502、通过预先确定的神经网络,检测所述待检测图像中的目标对象。
其中,步骤502中所述的神经网络是基于图1中所示的神经网络的确定方法所确定的。
另外,本公开实施例还提供了一种智能行驶控制方法,参见图6所示,为本公开实施例所提供的智能行驶控制方法的流程示意图,包括以下几个步骤:
步骤601、获取行驶装置在行驶过程中采集的图像。
其中,行驶装置包括但不仅限于自动驾驶车辆、装有高级驾驶辅助系统(AdvancedDriving Assistance System,ADAS)的车辆、或者机器人等。
步骤602、通过预先确定的神经网络,检测所述图像中的目标对象。
其中,步骤602中所述的神经网络是基于图1中所示的神经网络的确定方法所确定的。
步骤603、基于所述图像中的目标对象,控制所述行驶装置。
其中,在控制行驶装置时,可以控制行驶装置加速、减速、转向、制动等,或者可以播放语音提示信息,以提示驾驶员控制行驶装置加速、减速、转向、制动等。
基于同一发明构思,本公开实施例中还提供了与神经网络的确定方法对应的神经网络的确定装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述神经网络的确定方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图7所示,为本公开实施例提供的一种神经网络的确定装置的架构示意图,所述装置包括:获取模块701、第一确定模块702、调整模块703、以及第二确定模块704;其中,
获取模块701,用于获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,每条边对应的所述采样参数用于控制该条边对应的每种操作方法被选择的概率;
第一确定模块702,用于基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
调整模块703,用于基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
第二确定模块704,用于重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
一种可能的实施方式中,所述获取模块701,在从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,用于:
基于所述采样模型中每条边对应的采样参数,确定所述有向无环图中每条边所对应的采样向量;所述采样向量中对应一个操作方法的元素的值不为0,对应其它操作方法的元素的值为0;
将所述有向无环图中的每条边对应的采样向量,与所述有向无环图的边对应的操作方法向量的对应元素相乘,将乘积不为0的元素对应的操作方法确定为所述目标操作方法;所述操作方法向量中的每一个元素对应一种操作方法。
一种可能的实施方式中,所述获取模块701,还用于根据以下步骤构建所述有向无环图:
根据每一级对应的预设个数的节点,构建所述有向无环图,其中,第一级节点为输入节点,最后一级节点为输出节点。
一种可能的实施方式中,所述第一确定模块702,在基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值时,用于:
将所述训练数据作为输入节点的取值,并针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值。
一种可能的实施方式中,针对除所述输入节点外的每一个节点,所述第一确定模块702,在根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值时,用于:
将除所述输入节点外的每一个节点分别作为当前节点,若所述当前节点存在对应的多个上一级节点,针对每一个上一级节点,根据该上一级节点的取值,以及当前节点与该上一级节点之间的边对应的所述目标操作方法,确定该上一级节点的输出数据;
将所述当前节点的多个上一级节点的输出数据进行求和运算,得到所述当前节点的取值。
一种可能的实施方式中,获取训练数据之后,所述获取模块701,还用于:将所述训练数据划分为多组数据;
所述获取模块701,在基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法时,用于:
针对划分的每一组数据,基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法。
一种可能的实施方式中,所述调整模块703,在基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值时,用于:
在所述有向无环图中的一条边对应的所述采样参数的取值满足预设条件的情况下,基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的除该条边外的其他边的所述采样参数。
一种可能的实施方式中,所述预设条件包括以下条件中的任意一个:
所述采样参数对应的最大概率值大于第一预设值;
所述采样参数对应的最大概率值和次大概率值之间的差值大于第二预设值。
一种可能的实施方式中,所述第二确定模块704,在基于训练好的每条边对应的所述采样参数,确定该条边对应的最终的操作方法时,用于:
基于训练好的每条边对应的所述采样参数,确定被选择的概率最大的操作方法,为该条边对应的最终的操作方法。
一种可能的实施方式中,所述调整模块703,在基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值时,用于:
基于所述有向无环图的输出节点的取值、所述训练数据对应的监督数据、以及确定的神经网络部署的平台的性能信息,调整所述有向无环图中的各个模型参数的取值。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
基于同一构思,本公开实施例还提供了一种目标检测装置,参见图8所示,为本公开实施例所提供的一种目标检测装置的架构示意图,包括图像获取模块801、第一检测模块802,具体的:
图像获取模块801,用于获取待检测图像;
第一检测模块802,用于通过基于本公开实施例提供的任一神经网络的确定方法所确定的神经网络,检测所述待检测图像中的目标对象。
基于同一构思,本公开实施例还提供了一种智能行驶控制装置,参见图9所示,为本公开实施例所提供的一种智能行驶控制装置的架构示意图,包括图像获取模块901、第二检测模块902、控制模块903,具体的:
图像获取模块901,用于获取行驶装置在行驶过程中采集的图像;
第二检测模块902,用于通过基于本公开实施例提供的任一神经网络的确定方法所确定的神经网络,检测所述图像中的目标对象;
控制模块903,用于基于所述图像中的目标对象,控制所述行驶装置。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图10所示,为本申请实施例提供的电子设备1000的结构示意图,包括处理器1001、存储器1002、和总线1003。其中,存储器1002用于存储执行指令,包括内存10021和外部存储器10022;这里的内存10021也称内存储器,用于暂时存放处理器1001中的运算数据,以及与硬盘等外部存储器10022交换的数据,处理器1001通过内存10021与外部存储器10022进行数据交换,当电子设备1000运行时,处理器1001与存储器1002之间通过总线1003通信,使得处理器1001在执行以下指令:
获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率;
基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图11所示,为本申请实施例提供的电子设备1100的结构示意图,包括处理器1101、存储器1102、和总线1103。其中,存储器1102用于存储执行指令,包括内存11021和外部存储器11022;这里的内存11021也称内存储器,用于暂时存放处理器1101中的运算数据,以及与硬盘等外部存储器11022交换的数据,处理器1101通过内存11021与外部存储器11022进行数据交换,当电子设备1100运行时,处理器1101与存储器1102之间通过总线1103通信,使得处理器1101在执行以下指令:
获取待检测图像;
通过基于上述任一的神经网络的确定方法所确定的神经网络,检测所述待检测图像中的目标对象。
基于同一技术构思,本公开实施例还提供了一种电子设备。参照图12所示,为本申请实施例提供的电子设备1200的结构示意图,包括处理器1201、存储器1202、和总线1203。其中,存储器1202用于存储执行指令,包括内存12021和外部存储器12022;这里的内存12021也称内存储器,用于暂时存放处理器1201中的运算数据,以及与硬盘等外部存储器12022交换的数据,处理器1201通过内存12021与外部存储器12022进行数据交换,当电子设备1200运行时,处理器1201与存储器1202之间通过总线1203通信,使得处理器1201在执行以下指令:
获取行驶装置在行驶过程中采集的图像;
通过基于上述任一神经网络的确定方法所确定的神经网络,检测所述图像中的目标对象;
基于所述图像中的目标对象,控制所述行驶装置。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的神经网络的确定方法的步骤,或者执行上述方法实施例中所述的目标检测方法的步骤,或者执行上述方法实施例中所述智能行驶控制方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例所提供的神经网络的确定方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的神经网络的确定方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种智能行驶控制方法,其特征在于,包括:
获取行驶装置在行驶过程中采集的图像;
基于预先确定的神经网络检测所述图像中的目标对象;
基于所述图像中的目标对象,控制所述行驶装置;
其中,所述神经网络通过以下方法确定:
获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率;
基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
返回执行获取训练数据的步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
2.根据权利要求1所述的方法,其特征在于,所述从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法,包括:
基于所述采样模型中每条边对应的采样参数,确定所述有向无环图中每条边所对应的采样向量;所述采样向量中对应一个操作方法的元素的值不为0,对应其它操作方法的元素的值为0;
将所述有向无环图中的每条边对应的采样向量,与所述有向无环图的边对应的操作方法向量的对应元素相乘,将乘积不为0的元素对应的操作方法确定为所述目标操作方法;所述操作方法向量中的每一个元素对应一种操作方法。
3.根据权利要求1所述的方法,其特征在于,根据以下步骤构建所述有向无环图:
根据每一级对应的预设个数的节点,构建所述有向无环图,其中,第一级节点为输入节点,最后一级节点为输出节点。
4.根据权利要求1所述的方法,其特征在于,所述基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值,包括:
将所述训练数据作为输入节点的取值,并针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值。
5.根据权利要求4所述的方法,其特征在于,针对除所述输入节点外的每一个节点,根据该节点的上一级节点的取值、以及该节点与上一级节点之间的边对应的所述目标操作方法,确定该节点的取值,包括:
将除所述输入节点外的每一个节点分别作为当前节点,若所述当前节点存在对应的多个上一级节点,针对每一个上一级节点,根据该上一级节点的取值,以及当前节点与该上一级节点之间的边对应的所述目标操作方法,确定该上一级节点的输出数据;
将所述当前节点的多个上一级节点的输出数据进行求和运算,得到所述当前节点的取值。
6.根据权利要求3所述的方法,其特征在于,所述基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值,包括:
在所述有向无环图中的一条边对应的所述采样参数的取值满足预设条件的情况下,基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的除该条边外的其他边的所述采样参数。
7.根据权利要求6所述的方法,其特征在于,所述预设条件包括以下条件中的任意一个:
所述采样参数对应的最大概率值大于第一预设值;
所述采样参数对应的最大概率值和次大概率值之间的差值大于第二预设值。
8.根据权利要求1所述的方法,其特征在于,所述基于训练好的每条边对应的所述采样参数,确定该条边对应的最终的操作方法,包括:
基于训练好的每条边对应的所述采样参数,确定被选择的概率最大的操作方法,为该条边对应的最终的操作方法。
9.根据权利要求1所述的方法,其特征在于,所述基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值,包括:
基于所述有向无环图的输出节点的取值、所述训练数据对应的监督数据、以及确定的神经网络部署的平台的性能信息,调整所述有向无环图中的各个模型参数的取值。
10.一种智能行驶控制装置,其特征在于,包括:
图像获取模块,用于获取行驶装置在行驶过程中采集的图像;
第二检测模块,用于通过预先确定的神经网络,检测所述图像中的目标对象;
控制模块,用于基于所述图像中的目标对象,控制所述行驶装置;
其中,所述神经网络通过以下模块确定:
获取模块,用于获取训练数据,并基于包含待训练的采样参数的采样模型,从构建的有向无环图的每条边对应的多种操作方法中选择一种目标操作方法;其中,所述采样模型中的所述采样参数用于表示所述有向无环图中,与所述采样参数对应的边所对应的每种操作方法被选择的概率;
第一确定模块,用于基于所述训练数据、以及选择的所述目标操作方法,确定所述有向无环图的输出节点的取值;
调整模块,用于基于所述有向无环图的输出节点的取值、以及所述训练数据对应的监督数据,调整所述有向无环图中的各个模型参数的取值;所述各个模型参数包括所述采样参数和所述目标操作方法中的操作参数;
第二确定模块,用于重复执行上述步骤,直至满足训练截止条件,基于训练好的所述采样参数,确定与所述采样参数对应的边所对应的最终的操作方法,得到包含所述最终的操作方法的神经网络。
11.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至9任一所述的智能行驶控制方法的步骤。
12.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至9任意一项所述智能行驶控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105397.6A CN111325343B (zh) | 2020-02-20 | 2020-02-20 | 神经网络的确定、目标检测、智能行驶控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010105397.6A CN111325343B (zh) | 2020-02-20 | 2020-02-20 | 神经网络的确定、目标检测、智能行驶控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111325343A CN111325343A (zh) | 2020-06-23 |
CN111325343B true CN111325343B (zh) | 2022-09-09 |
Family
ID=71168832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010105397.6A Active CN111325343B (zh) | 2020-02-20 | 2020-02-20 | 神经网络的确定、目标检测、智能行驶控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111325343B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111898676B (zh) * | 2020-07-30 | 2022-09-20 | 深圳市商汤科技有限公司 | 目标检测方法及装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
CN108875931A (zh) * | 2017-12-06 | 2018-11-23 | 北京旷视科技有限公司 | 神经网络训练及图像处理方法、装置、系统 |
CN109165562A (zh) * | 2018-07-27 | 2019-01-08 | 深圳市商汤科技有限公司 | 神经网络的训练方法、横向控制方法、装置、设备及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180027887A (ko) * | 2016-09-07 | 2018-03-15 | 삼성전자주식회사 | 뉴럴 네트워크에 기초한 인식 장치 및 뉴럴 네트워크의 트레이닝 방법 |
CN108229647A (zh) * | 2017-08-18 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络结构的生成方法和装置、电子设备、存储介质 |
-
2020
- 2020-02-20 CN CN202010105397.6A patent/CN111325343B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875931A (zh) * | 2017-12-06 | 2018-11-23 | 北京旷视科技有限公司 | 神经网络训练及图像处理方法、装置、系统 |
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
CN109165562A (zh) * | 2018-07-27 | 2019-01-08 | 深圳市商汤科技有限公司 | 神经网络的训练方法、横向控制方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111325343A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3380939B1 (en) | Adaptive artificial neural network selection techniques | |
WO2017116924A1 (en) | Neural network training performance optimization framework | |
CN111797983A (zh) | 一种神经网络构建方法以及装置 | |
CN108876024B (zh) | 路径规划、路径实时优化方法及装置、存储介质 | |
CN112055863A (zh) | 用于确定神经网络的网络配置的方法和设备 | |
CN110543838A (zh) | 车辆信息检测的方法及装置 | |
CN112381227B (zh) | 神经网络生成方法、装置、电子设备及存储介质 | |
CN111008631A (zh) | 图像的关联方法及装置、存储介质和电子装置 | |
US20230289572A1 (en) | Neural network structure determining method and apparatus | |
CN111325343B (zh) | 神经网络的确定、目标检测、智能行驶控制方法及装置 | |
CN114140758A (zh) | 一种目标检测方法、装置及计算机设备 | |
CN112001491A (zh) | 针对处理器确定神经网络架构的搜索方法和装置 | |
CN114694005A (zh) | 目标检测模型训练方法和装置、目标检测方法和装置 | |
CN111523548B (zh) | 一种图像语义分割、智能行驶控制方法及装置 | |
CN110728359B (zh) | 搜索模型结构的方法、装置、设备和存储介质 | |
CN110097188B (zh) | 一种模型训练方法、工作节点及参数更新服务器 | |
CN111340950A (zh) | 数字高程模型重建方法及装置 | |
CN113158970B (zh) | 一种基于快慢双流图卷积神经网络的动作识别方法与系统 | |
CN112801045B (zh) | 一种文本区域检测方法、电子设备及计算机存储介质 | |
CN115294361A (zh) | 一种特征提取的方法及装置 | |
CN112101538B (zh) | 基于内存计算的图神经网络硬件计算系统及方法 | |
CN113536960A (zh) | 训练图像生成、定位检测网络训练、定位检测方法及装置 | |
CN113569878B (zh) | 一种基于分数图的目标检测模型训练方法及目标检测方法 | |
CN113642627B (zh) | 一种基于深度学习的图像与决策多源异类信息融合识别方法和装置 | |
JP7276437B2 (ja) | 3次元点群ラベル学習推定装置、3次元点群ラベル学習推定方法、及び3次元点群ラベル学習推定プログラム |
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 |