CN113592060A - 一种神经网络优化方法以及装置 - Google Patents
一种神经网络优化方法以及装置 Download PDFInfo
- Publication number
- CN113592060A CN113592060A CN202010367582.2A CN202010367582A CN113592060A CN 113592060 A CN113592060 A CN 113592060A CN 202010367582 A CN202010367582 A CN 202010367582A CN 113592060 A CN113592060 A CN 113592060A
- Authority
- CN
- China
- Prior art keywords
- hyper
- parameter
- parameter combination
- neural network
- combination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- 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/047—Probabilistic or stochastic 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/048—Activation functions
-
- 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
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural 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/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了人工智能领域的一种神经网络优化方法以及装置,用于高效、准确地确定出神经网络的超参数组合。该方法包括:对预设的超参数搜索空间进行采样得到多个超参数组合;对多个超参数组合进行多次迭代评估,以得到每个超参数组合的多个表现结果,其中,在任一次迭代评估中,获取每个超参数组合的至少一个表现结果,若存在满足第一预设条件的超参数组合,对该超参数组合进行再次评估得到其再次评估的表现结果;然后,确定出最优超参数组合;若最优超参数组合不满足第二预设条件,则通过每个超参数组合的多个表现结果更新用于下一次采样的预设模型;若最优超参数组合满足第二预设条件,则将最优超参数组合作为神经网络的超参数组合。
Description
技术领域
本申请涉及人工智能领域,尤其涉及一种神经网络优化方法以及装置。
背景技术
在目前的神经网络中,将不通过训练得到的参数称为超参数,通常是通过大量实践经验来调整超参数,使得神经网络的模型表现更优秀(例如:图片分类准确率更高)。例如,深度神经网络由许多神经元组成,输入的数据通过输入端的神经元经由中间层神经元传输到输出端的神经元。在神经网络训练时,每个神经元的权重会根据损失函数的值来优化,从而减小更新后的模型输出的损失函数的值。因此,可以通过算法来优化参数得到模型。而超参数是用来调节整个网络训练过程的,例如神经网络的隐藏层的数量,核函数的大小、数量等等。超参数并不直接参与到训练的过程中,在训练过程中,超参数往往是不变的,但是超参数又对神经网络最终的表现至关重要,因此,选择一组合适的超参数尤为重要。
现有技术中,采用例如Successive Halving法来评估有价值的超参数组合,在选择合适的超参数组合的过程中,每次对多个超参数进行评估的过程中,都丢弃表现结果差的一半超参数组合,从而使得有效的超参数组合少,且因超参数组合的评估次数较少,导致超参数组合的评估结果可能因部分评估出现误差而不准确,进而导致使用了不准确的评估结果最终确定的最优超参数组合也并不准确。
发明内容
本申请公开了人工智能领域的一种神经网络优化方法以及装置,用于高效、准确地确定出神经网络的超参数组合。
第一方面,本申请提供一种神经网络优化方法,包括:对超参数搜索空间进行采样,得到多个超参数组合,超参数搜索空间包括神经网络的超参数,超参数包括神经网络中不通过训练得到的参数;对多个超参数组合进行多次迭代评估,以得到多个超参数组合中的每个超参数组合的多个表现结果,多个表现结果为根据代入每个超参数组合后的神经网络输出的结果确定,其中,在多次迭代评估中的任一次迭代评估中,获取当前次评估之前评估得到的每个超参数组合的至少一个表现结果,每个超参数组合的至少一个表现结果包括于每个超参数组合的多个表现结果中,若多个超参数组合存在满足第一预设条件的超参数组合,对满足第一预设条件的超参数组合进行再次评估,得到满足第一预设条件的超参数组合的再次评估的表现结果,再次评估的表现结果包括于满足第一预设条件的超参数组合的多个表现结果中;根据每个超参数组合的多个表现结果从多个超参数组合中确定出最优超参数组合;若最优超参数组合不满足第二预设条件,则通过每个超参数组合的多个表现结果更新预设模型,预设模型用于拟合概率分布,概率分布用于对超参数搜索空间进行再次采样;若最优超参数组合满足第二预设条件,则将最优超参数组合作为神经网络的超参数组合。
因此,本申请实施方式中,在对多个超参数组合进行评估时,对满足第一预设条件的超参数组合即可进行再次评价,而并非仅关注多个超参数组合中表现最优的超参数的表现结果,可以得到表现不是最优的超参数组合的更多的表现结果,提高得到的多个超参数组合整体的表现结果的准确性。因此,根据整体更准确的多个超参数组合的表现结果更新的预设模型对应的概率分布也更可靠,从而根据该预设模型再次采样得到的超参数组合也更接近于最优组合,最终确定的最优超参数组合的表现也更优。并且,利用整体更准确的多个超参数组合的表现结果更新模型,可以使预设模型快速收敛,提高收敛效率,从而准确、高效地确定出表现更优的超参数组合。
在一种可能的实施方式中,上述的任意一次迭代还可以包括:根据每个超参数组合的至少一个表现结果从多个超参数组合中选取出第二超参数组合,第二超参数组合为多个超参数组合中表现最优的超参数组合,或者,第二超参数组合为多个超参数组合中评估次数最多的超参数组合,相应地,第一预设条件可以包括:第一超参数组合的评估次数不高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数;或者,第一超参数组合的评估次数高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数,且存在第二超参数组合的部分表现结果差于第一超参数组合的至少一个表现结果。可以理解为,在任意一次迭代评估中,在判断多个超参数组合中是否存在满足第一预设条件的第一超参数之前,还从多个超参数组合中选取第二超参数组合,并根据第二超参数的至少一个表现结果确定第一预设条件。
因此,本申请实施方式中,对于表现结果优于第二超参数组合的部分表现结果的超参数组合,也可以进行再次评估,或者,对于评估次数过低的超参数组合也可以进行再次评估,从而提高部分表现不是最优或者评估次数少的超参数组合的表现结果的数量,提高多个超参数整体的表现结果的准确性。
在一种可能的实施方式中,前述的多次迭代评估中的任一次评估,还可以包括:若多个超参数组合中不存在满足第一预设条件的第一超参数组合,则对第二超参数组合进行再次评估,得到第二超参数组合再次评估的表现结果,第二超参数组合的再次评估的表现结果包括于第二超参数组合的多个表现结果中。
本申请实施方式中,在对多个超参数组合进行迭代评估时,可以确定出多个超参数组合中表现最优或者被评估的次数最多的第二超参数组合,若存在满足第一预设条件的超参数组合,则对满足第一预设条件的超参数组合进行再次评估,若不存在满足第一预设条件的超参数组合,则对第二超参数组合进行评估。因此,本申请实施例不局限于关注多个超参数组合中表现最优的第二超参数组合,也对多个超参数组合中满足第一预设条件的其他超参数组合进行再次评估,从而使多个超参数组合的整体表现更准确,从而根据整体表现更准确的多个超参数的表现结果更新的预设模型也更可靠,再次采样得到的超参数组合也更倾向于最优组合。
在一种可能的实施方式中,从多个超参数组合中确定出第二超参数组合,可以包括:从多个超参数组合中确定出评估次数最多的超参数组合作为第二超参数组合;或者,若多个超参数组合中存在多个评估次数最多的超参数组合,则从多个评估次数最多的超参数组合中确定出表现结果最优的至少一个超参数组合作为第二超参数组合。
因此,本申请实施方式中,可以从多个超参数组合中选取评估次数最多的超参数组合或者表现最优的超参数组合作为最优的第二超参数组合,提供了多种选择方式。
在一种可能的实施方式中,本申请实施方式中,在每次迭代评估中,可以是对每个超参数组合进行评估,并获取当前次评估之前对每个超参数组合进行评估得到的一个或者多个表现结果,得到每个超参数组合的至少一个表现结果,也可以是直接获取本次迭代评估之前得到的所有评估结果,得到每个超参数组合的至少一个表现结果。因此,本申请提供了多种迭代评估方式,增加了超参数组合的表现结果的数据量,提高多个超参数组合的整体表现结果的准确性。
在一种可能的实施方式中,预设模型包括第一概率密度函数和第二概率密度函数,通过每个超参数组合的多个表现结果更新预设模型,可以包括:根据每个超参数组合的多个表现结果将多个超参数组合分为第一类超参数组合和第二类超参数组合,第一类超参数组合的表现优于第二类超参数组合的表现,第一类超参数组合的表现为根据第一类超参数组合的多个表现确定,第二类超参数组合的表现为根据第二类超参数的多个表现结果确定,通过第一类超参数组合更新第一概率密度函数,以及通过第二类超参数组合用于更新第二概率密度函数。
本申请实施方式中,本申请实施方式中,可以通过表现较优的第一类超参数组合更新第一概率密度函数,可以通过表现较差的第二类超参数组合更新第二概率密度函数。对超参数搜索空间进行再次采样的概率服从预设模型确定的概率分布,因此,通过表现优的超参数组合来更新第一概率密度函数,使第一概率密度函数对应的概率更精确,从而使再次采集到的超参数组合的表现结果也更好,提高模型的收敛速度,提高多个超参数组合的整体表现结果的准确性。
在一种可能的实施方式中,第一概率密度函数或第二概率密度函数的类型可以包括以下一种或多种:正态分布、离散分布、截断正态分布或者对数正态分布。本申请实施方式中,概率密度函数可以是多种模型,使得可以根据不同的场景选择概率密度函数。
在一种可能的实施方式中,神经网络为用于识别图片的卷积神经网络,超参数搜索空间中的超参数的种类包括以下一种或多种:卷积层数、卷积核数量、扩张大小、修正线性单元(rectified linear unit,ReLU)函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例,锚框用于标识图片中需要识别的对象。本申请实施方式中,可以确定卷积神经网络的最优超参数组合,从而可以得到精确度更高的卷积神经网络。
在一种可能的实施方式中,神经网络为通过一个或多个构建单元组合得到,超参数搜索空间中的超参数的种类包括以下一种或多种:一个构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元的操作算子。因此,通过本申请提供的神经网络优化方法,可以搜索到更优的构建单元,从而得到变现更优的神经网络。
在一种可能的实施方式中,多个表现结果包括分类精度或者损失值,分类精度用于表示神经网络识别图片的准确度,损失值为神经网络对应的损失函数的值;第二预设条件包括:多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,多个表现结果包括的分类精度的平均值大于第二阈值,或者,损失值不大于第三阈值等。
因此,本申请实施方式中,可以通过分类精度或者损失值等衡量超参数的表现结果,通过分类精度或者损失值等表现确定出最优的超参数组合。
在一种可能的实施方式中,对超参数搜索空间进行采样,得到多个超参数组合,可以包括:对超参数搜索空间进行随机采样,得到多个超参数组合;或者,基于更新前的预设模型确定的概率分布对超参数搜索空间进行采样,得到多个超参数组合。
本申请实施方式中,可以对超参数搜索空间进行随机采样,如第一次对超参数搜索空间进行采样,也可以基于预设模型确定的概率分布对超参数搜索空间进行采样,提供了多种方式得到多个超参数组合。
第二方面,本申请提供的一种神经网络优化装置的结构示意图。该神经网络优化装置包括:
采样模块,用于对超参数搜索空间进行采样,得到多个超参数组合,超参数搜索空间包括神经网络的超参数,超参数包括神经网络中不通过训练得到的参数;
评估模块,用于对多个超参数组合进行多次迭代评估,以得到多个超参数组合中的每个超参数组合的多个表现结果,多个表现结果为根据代入每个超参数组合后的神经网络输出的结果确定,其中,在多次迭代评估中的任一次迭代评估中,获取当前次评估之前评估得到的每个超参数组合的至少一个表现结果,若多个超参数组合存在满足第一预设条件的第一超参数组合,对第一超参数组合进行再次评估,得到第一超参数组合的再次评估的表现结果,再次评估的表现结果包括于第一超参数组合的多个表现结果中;
确定模块,用于根据每个超参数组合的多个表现结果从多个超参数组合中确定出最优超参数组合;
更新模块,用于若最优超参数组合不满足第二预设条件,则通过每个超参数组合的多个表现结果更新预设模型,预设模型用于拟合概率分布,概率分布用于对超参数搜索空间进行再次采样;
选择模块,用于若最优超参数组合满足第二预设条件,则将最优超参数组合作为神经网络的超参数组合。
第二方面及第二方面任一种可能的实施方式产生的有益效果可参照第一方面及第一方面任一种可能实施方式的描述。
在一种可能的实施方式中,第一预设条件包括:第一超参数组合的评估次数不高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数,第二超参数组合为在任意一次迭代中选取出的多个超参数组合中表现最优的超参数组合,或者,多个超参数组合中评估次数最多的超参数组合,即在任意一次迭代中,判断是否存在满足第一预设条件的第一超参数组合之前,还选取第二超参数组合;或者,第一超参数组合的评估次数高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数,且存在第二超参数组合的部分表现结果差于第一超参数组合的至少一个表现结果。
在一种可能的实施方式中,评估模块,还可以包括:若多个超参数组合中不存在满足第一预设条件的第一超参数组合,则对第二超参数组合进行再次评估,得到第二超参数组合再次评估的表现结果。
在一种可能的实施方式中,预设模型包括第一概率密度函数和第二概率密度函数,更新模块,具体用于:根据每个超参数组合的至少一个表现结果将多个超参数组合分为第一类超参数组合和第二类超参数组合,第一类超参数组合的表现优于第二类超参数组合的表现,第一类超参数组合的表现为根据第一类超参数组合的多个表现确定,第二类超参数组合的表现为根据第二类超参数的多个表现结果确定,通过第一类超参数组合更新第一概率密度函数,以及通过第二类超参数组合更新第二概率密度函数。
在一种可能的实施方式中,第一概率密度函数或第二概率密度函数的类型可以包括以下一种或多种:正态分布、离散分布、截断正态分布或者对数正态分布。
在一种可能的实施方式中,神经网络为用于识别图片的卷积神经网络,超参数搜索空间中的超参数的种类包括以下一种或多种:卷积层数、卷积核数量、扩张大小、ReLU函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例,锚框用于标识图片中需要识别的对象。
在一种可能的实施方式中,神经网络为通过一个或多个构建单元组合得到,超参数搜索空间中的超参数的种类包括以下一种或多种:一个构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元的操作算子。
在一种可能的实施方式中,多个表现结果包括分类精度或者损失值,分类精度为用于表示神经网络识别图片的准确度,损失值为神经网络对应的损失函数的值;第二预设条件包括:多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,多个表现结果包括的分类精度的平均值大于第二阈值,或者,损失值不大于第三阈值。
在一种可能的实施方式中,采样模块,具体用于:对超参数搜索空间进行随机采样,得到多个超参数组合;或者,基于预设模型确定的概率分布对超参数搜索空间进行采样,得到多个超参数组合。
第三方面,本申请提供一种神经网络优化装置,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码用于执行上述第一方面任一项所示的神经网络优化方法中与处理相关的功能。可选地,该神经网络优化装置可以是芯片。
第四方面,本申请实施例提供了一种神经网络优化装置,该神经网络优化装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行如上述第一方面或第一方面任一可选实施方式中与处理相关的功能。
第五方面,本申请实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一可选实施方式中的方法。
第六方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一可选实施方式中的方法。
附图说明
图1本申请应用的一种人工智能主体框架示意图;
图2为本申请实施例提供的一种卷积神经网络结构示意图;
图3为本申请实施例提供的另一种卷积神经网络结构示意图;
图4为本申请实施例提供的一种神经网络优化方法的流程示意图;
图5为本申请实施例提供的另一种神经网络优化方法的流程示意图;
图6为本申请实施例提供的一种应用场景示意图;
图7为本申请实施例提供的另一种应用场景示意图;
图8为本申请实施例提供的一种神经网络优化方法的准确率示意图;
图9为本申请实施例提供的一种神经网络优化装置的结构示意图;
图10为本申请实施例提供的一种神经网络优化装置的结构示意图;
图11为本申请实施例提供的一种芯片的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供的神经网络优化方法可以应用于人工智能(artificialintelligence,AI)场景中。AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。
图1示出一种人工智能主体框架示意图,该主体框架描述了人工智能系统总体工作流程,适用于通用的人工智能领域需求。
下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。
“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。
“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施:
基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片,如中央处理器(centralprocessing unit,CPU)、网络处理器(neural-network processing unit,NPU)、图形处理器(英语:graphics processing unit,GPU)、专用集成电路(application specificintegrated circuit,ASIC)或现场可编程逻辑门阵列(field programmable gate array,FPGA)等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
(2)数据
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用
智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,平安城市,智能终端等。
在上述的场景中,神经网络作为重要的节点,用于实现机器学习,深度学习,搜索,推理,决策等。本申请提及的神经网络可以包括多种类型,如深度神经网络(deep neuralnetworks,DNN)、卷积神经网络(convolutional neural networks,CNN)、循环神经网络(recurrent neural networks,RNN)、残差网络或其他神经网络等。下面对一些神经网络进行示例性介绍。
其中,s=1、2、……n,n为大于1的自然数,WS为xS的权重,b为神经单元的偏置。f为神经单元的激活函数(activation functions),用于将非线性特性引入神经网络中,来将神经单元中的输入信号转换为输出信号。该激活函数的输出信号可以作为下一层卷积层的输入。激活函数可以是sigmoid,修正线性单元(rectified linear unit,ReLU),tanh等等函数。神经网络是将许多个上述单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入。每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
卷积神经网络(convolutional neural networks,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。该特征抽取器可以看作是滤波器,卷积过程可以看作是使用一个可训练的滤波器与一个输入的图像或者卷积特征平面(feature map)做卷积。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。这其中隐含的原理是:图像的某一部分的统计信息与其他部分是一样的。即意味着在某一部分学习的图像信息也能用在另一部分上。所以对于图像上的所有位置,我们都能使用同样的学习得到的图像信息。在同一卷积层中,可以使用多个卷积核来提取不同的图像信息,一般地,卷积核数量越多,卷积操作反映的图像信息越丰富。
卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
卷积神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的超分辨率模型中参数的大小,使得超分辨率模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的超分辨率模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的超分辨率模型的参数,例如权重矩阵。
示例性地,下面以卷积神经网络(convolutional neural networks,CNN)为例。
CNN是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元对输入其中的图像中的重叠区域作出响应。
如图2所示,卷积神经网络(CNN)100可以包括输入层110,卷积层/池化层120,其中池化层为可选的,以及神经网络层130。
如图2所示卷积层/池化层120可以包括如示例121-126层,在一种实现中,121层为卷积层,122层为池化层,123层为卷积层,124层为池化层,125为卷积层,126为池化层;在另一种实现方式中,121、122为卷积层,123为池化层,124、125为卷积层,126为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
以卷积层121为例,卷积层121可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义。在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关。需要注意的是,权重矩阵的纵深维度(depthdimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用维度相同的多个权重矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化等。该多个权重矩阵维度相同,经过该多个维度相同的权重矩阵提取后的特征图维度也相同,再将提取到的多个维度相同的特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以从输入图像中提取信息,从而帮助卷积神经网络100进行正确的预测。
当卷积神经网络100有多个卷积层的时候,初始的卷积层(例如121)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络100深度的加深,越往后的卷积层(例如126)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,即如图2中120所示例的121-126各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像大小相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。
神经网络层130:
在经过卷积层/池化层120的处理后,卷积神经网络100还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层120只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或别的相关信息),卷积神经网络100需要利用神经网络层130来生成一个或者一组所需要的类的数量的输出。因此,在神经网络层130中可以包括多层隐含层(如图2所示的131、132至13n)以及输出层140。在本申请中,该卷积神经网络为:以延迟预测模型的输出作为约束条件对超级单元进行搜索得到至少一个第一构建单元,并对该至少一个第一构建单元进行堆叠得到。该卷积神经网络可以用于图像识别,图像分类,图像超分辨率重建等等。
在神经网络层130中的多层隐含层之后,也就是整个卷积神经网络100的最后层为输出层140,该输出层140具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络100的前向传播(如图2由110至140的传播为前向传播)完成,反向传播(如图2由140至110的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络100的损失及卷积神经网络100通过输出层输出的结果和理想结果之间的误差。
需要说明的是,如图2所示的卷积神经网络100仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在,例如,如图3所示的多个卷积层/池化层并行,将分别提取的特征均输入给全神经网络层130进行处理。
在神经网络中,部分参数需要通过训练来确定,而部分参数需要在训练之前来确定。下面对神经网络中所涉及到的一些参数进行说明。
超参数(hyper-parameter):是在开始学习过程之前设置值的参数,是不通过训练得到的参数。超参数用于调节神经网络的训练过程,例如卷积神经网络的隐藏层的数量,核函数的大小,数量等等。超参数并不直接参与到训练的过程,而只是配置变量。需要注意的是在训练过程中,超参数往往都是不变的。现在使用的各种神经网络,再经由数据,通过某种学习算法训练后,便得到了一个可以用来进行预测,估计的模型,如果这个模型表现的不好,有经验的工作者便会调整网络结构,算法中学习率或是每批处理的样本的个数等不通过训练得到的参数,一般称之为超参数。通常是通过大量的实践经验来调整超参数,使得神经网络的模型表现更为优秀,直到神经网络的输出满足需求。本申请所提及的一组超参数组合,即包括了神经网络的全部或者部分超参数的值。通常,神经网络由许多神经元组成,输入的数据通过这些神经元来传输到输出端。在神经网络训练时候,每个神经元的权重会随着损失函数的值来优化从而减小损失函数的值。这样便可以通过算法来优化参数得到模型。而超参数是用来调节整个网络训练过程的,如前述的卷积神经网络的隐藏层的数量,核函数的大小或数量等等。超参数并不直接参与到训练的过程中,而只作为配置变量。
优化器:用于优化机器学习算法的参数,比如网络权重。可以采用梯度下降、随机梯度下降或者动量梯度下降算法(adaptive moment estimation,Adam)等优化算法来进行参数优化。
学习率:是指在优化算法中每次迭代更新参数的幅度,也叫做步长。当步长过大会导致算法不收敛,模型的目标函数处于震荡的状态,而步长过小会导致模型的收敛速度过慢。
激活函数:指的是在每个神经元上添加的非线性函数,也就是神经网络具有非线性性质的关键,常用的激活函数可以包括有sigmoid,修正线性单元(rectified linearunit,ReLU),tanh等函数。
损失函数:也就是参数的优化过程中的目标函数。通常,损失函数的值越小,表示模型的是输出结果也就越准确,模型训练的过程即为最小化损失函数的过程。常用的损失函数可以包括对数损失函数,平方损失函数,指数损失函数等。
通常,可以采用贝叶斯优化来从多组超参数中选择适用于神经网络的最优的超参数。例如,贝叶斯优化的流程可以包括:首先设定初始模型,然后选取该模型下最有可能符合预设条件的超参组合,检测该超参数组合是否满足预设条件,如果满足预设条件则过程终止,输出满足预设条件的超参数组合;如果不满足,则利用该组新数据修正模型后,继续下一轮迭代。常用的贝叶斯流程例如,从超参数搜索空间中采样多个超参数组合,对每个超参数组合进行评估,然后丢弃表现结果差的一半,对表现结果好的一半继续进行评估,然后再次丢弃表现结果差的一半,直到计算资源耗尽,从多个超参数组合中确定出表现最优的超参数组合。若该超参数组合不满足要求,则利用多个超参数组合的评估结果继续修正模型,并根据该模型再次从超参数搜索空间中采样多个超参数组合,并再次进行评估等,直到选择出表现结果满足要求的超参数组合。需要说明的是,本申请以下实施方式中,将此方式称为贝叶斯优化和超参数(Bayesian optimization and hyperband,BOHB),以下不再赘述。然而,在选择合适的超参数组合的过程中,每次对多个超参数组合进行评估的过程中,都丢弃表现结果差的一半超参数组合,从而使得有效的超参数组合的数量少,且丢弃的部分的表现结果可能不准确,导致根据该不准确的表现结果更新得到的模型的可靠性也越低,导致不能找到最优超参数组合。
因此,本申请提供一种神经网络优化方法,用于高效、准确地确定出神经网络的超参数组合。
参阅图4,本申请提供的一种神经网络优化方法的流程示意图,如下所述。
401、对超参数搜索空间进行采样,得到多个超参数组合。
超参数搜索空间中包括神经网络的超参数,可以从该超参数搜索空间中采集超参数,得到多个超参数组合。其中,一组超参数组合中可以包括一个或多个超参数的值。
具体地,超参数搜索空间中可以包括多种超参数,每种超参数的值可以是连续分布的值,也可以是离散分布的值。例如,超参数搜索空间中可以包括超参数A的取值范围为[0,10],超参数B的取值可以包括:1、5、8、9等。因此,在超参数搜索空间中采样时,可以从连续分布的值中任意取一个值,或者在离散分布的值中任意取一个值,得到一组超参数组合。
可选地,对超参数搜索空间进行采样的方式也可以有多种。
在一种可能的实施方式中,可以通过初始的概率分布或者随机采集超参数组合。例如,若当前为第一次对超参数搜索空间进行采样,则可以根据初始的概率分布来对超参数搜索空间进行采样,得到多个超参数组合。
在一种另可能的实施方式中,也可以通过以下步骤405中更新后的预设模型确定的概率分布,来对超参数搜索空间进行采样。例如,若对预设模型进行了更新,则可以根据预设模型确定的概率分布对超参数进行采样,从而得到多个超参数组合。
例如,在步骤401之前,即可获取预设模型,具体的采集函数可以包括: 其中,x即为超参数组合,p(y|x)即为预设模型对应的概率分布,y为超参数组合的表现结果,α为预设的值。因此,可以根据该采集函数,对超参数搜索空间进行采集,得到符合预设模型对应的概率分布的多个超参数组合。
为便于理解,下面以一些具体的场景为例对本申请所涉及的超参数以及神经网络进行示例性说明。
在一种可能的场景中,若前述的神经网络是用于图片识别的卷积神经网络,该卷积神经网络可以参考前述图2和图3的相关描述。对应地,超参数搜索空间中包括的卷积神经网络的超参数可以包括以下一种或多种:卷积层数、卷积核数量、扩张大小、ReLU函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例等,其中,锚框用于标识图片中需要识别的对象。相应地,本申请提及的超参数组合可以包括前述的一种或者多种超参数。例如,在无人驾驶场景中,对道路物体检测功能需求很高,物体检测可以理解为在一张图片中,用一个或多个锚框去寻找物体所处的位置,通常可以提前定义多种锚框的类型,包括一张图中用多少锚框,每个锚框的长宽比等。
在一种可能的场景中,若前述的神经网络是通过结构搜索得到,即该神经网络由一个或多个构建单元组合或堆叠得到,则超参数搜索空间中包括的超参数可以包括:构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元上的操作算子等。相应地,本申请提及的超参数组合可以包括其中的一种或者多种超参数。例如,若需要搜索人脸识别神经网络的构建单元,则超参数搜索空间所包括的超参数可以包括人脸识别神经网络的构建单元的网络层数、构建单元中每层网络的神经元数量以及构建单元中每个神经元的操作算子等,该超参数组合用于构建人脸识别神经网络。
在一种可能的数据增广场景中,需要对已有的数据集所包括的数据进行变换操作,从而增加数据集所包括的数据量,得到增广后的数据集。在该场景下,需要确定对数据进行哪种变换,来达到数据增广的目的。超参数搜索空间中可以包括多种变换方式,该多种变换方式用于对数据进行变换,从而增加数据量。例如,在增广图片的场景中,该变换方式可以包括旋转、平移、或者对折等操作,增加图片的数量。
在一种可能的强化学习的场景中,需要确定出学习策略,该学习策略中所包括可调整变量即为神经网络的超参数,使神经网络可以根据该学习策略进行学习,从而调整神经网络的部分参数。例如,若神经网络中某个神经元的输入为x1和x2,x1的权重为w1,该神经元的输出为:w1*x1+w2*x2,则需要确定的学习策略为如何更新w1或w2,如确定调整步长、调整的计算方式等。
402、对多个超参数组合进行多次迭代评估,以得到每个超参数组合的多个表现结果。
在得到多个超参数组合之后,对该多个超参数组合进行多次迭代评估,得到每个超参数组合的多个表现结果。
其中,在任意一次迭代评估中,获取每个超参数组合的至少一个表现结果,若该多个超参数组合中存在满足第一预设条件的超参数组合,则对满足第一预设条件的超参数组合进行再次评估,得到该满足第一预设条件的超参数组合的再次评估的表现结果。该第一预设条件例如:评估次数最少或者表现结果优于一定表现结果等。因此,本申请实施方式中,对满足第一预设条件的超参数组合进行再次评估,而非仅关注表现最好的超参数组合,提高了多个超参数组合整体的表现结果的准确性,使得后续更新模型时,可以使模型快速收敛。
具体地,多次迭代评估中的任意一次迭代评估,可以包括:获取多个超参数中每个超参数组合的至少一个表现结果,根据每个超参数组合的至少一个表现结果从多个超参数组合中确定出第二超参数组合,该第二超参数组合为评估次数最多或者表现最好的超参数组合。然后可以根据该第二超参数组合的至少一个表现结果确定第一预设条件。然后判断该至少一个超参数组合中是否存在满足第一预设条件的超参数组合。若该多个超参数组合中存在满足第一预设条件的第一超参数组合,则对第一超参数组合进行再次评估,得到第一超参数组合的再次评估的表现结果,且第二超参数组合和第一超参数组合不相同。若多个超参数组合中不存在满足第一预设条件的第一超参数组合,则对第二超参数组合进行再次评估,得到第二超参数组合的再次评估的表现结果。
其中,获取每个超参数组合的至少一个表现结果的方式有多种,可以对该多个超参数组合进行评估,得到每个超参数组合的至少一个表现结果,或者,获取此次迭代评估之前,对所述每个超参数进行评估得到的至少一个表现结果。例如,在第一次评估时,对该多个超参数组合中的每个超参数组合进行评估,得到每个超参数组合的至少一个表现结果。在非第一次评估的任意第N次迭代评估时,获取前N-1次迭代评估得到的每个超参数的至少一个表现结果,然后基于该每个超参数组合的至少一个表现结果继续进行迭代评估,从而得到每个超参数组合的多个表现结果,N为大于1的正整数。
前述的第一预设条件和第二超参数组合的至少一个表现结果相关联,可以理解为第一预设条件为根据第二超参数组合的至少一个表现结果确定。具体地,根据第二超参数组合的至少一个表现结果确定的该第一预设条件可以包括以下其中一项:第一超参数组合的评估次数不高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数;或者,第一超参数组合的评估次数高于预设次数,但不高于第二超参数组合的评估次数,且第二超参数组合的至少一个表现结果中存在部分结果差于第一超参数组合的表现结果。可以理解为,当某一个超参数组合的评估次数较少时,得到的表现结果可能不准确,因此,可以对该超参数组合进行再次评估,得到再次评估的表现结果。或者,当某一个超参数组合的评估次数高于预设次数,但该超参数组合的评估结果优于第二超参数组合的部分表现结果,则可以对该超参数组合进行再次评估,通过再次评估得到的表现结果进一步确认该超参数组合的表现结果是否可以更优。因此,本申请实施方式可以通过对评估次数少或者部分表现结果好的超参数组合进行再次评估,若超参数组合的某一次的表现结果差,也可以再次进行评估,从而使该超参数组合的表现结果更准确。
例如,该第一预设条件具体可以表示为:
1、nk<nk′,且nk<cn,其中,nk为第一超参数组合的评估次数,nk′为第二超参数组合的评估次数,cn为预设次数;
其中,Y(k)为第k个超参数组合的表现结果,Y(k′)为第二超参数组合的表现结果。满足前述的其中一个条件,即可确定第一超参数组合满足第一预设条件。u为小于nk的正整数,l为不大于u的正整数。
例如,若第一超参数组合具有10个表现结果,第二超参数组合具有50个表现结果,则可以遍历第二超参数组合的50个表现结果,确定该50个表现结果中是否存在10个表现结果差于第一超参数组合的10个表现结果。如评估结果中包括损失值,则可以比较第二超参数组合的10个损失值的平均值和第一超参数组合的10个损失值的平均值,判断第二超参数组合的50个损失值中,是否存在10个损失值的平均值大于第一超参数组合的10个损失值的平均值。若存在,则确定第一超参数组合满足第一预设条件;若不存在,则确定第一超参数组合不满足第一预设条件。
通常,若存在多个超参数组合的评估次数小于阈值,且不高于第二超参数组合的评估次数,即存在多个满足条件1的超参数组合,则将评估次数最少的超参数组合作为第一超参数组合,或者,将评估次数小于阈值,且不高于第二超参数组合的评估次数的每个超参数组合都作为第一超参数组合,即可以对该多个评估次数小于阈值,且不高于第二超参数组合的评估次数的超参数组合进行再次评估。若存在多个超参数组合满足条件2,则从该多个超参数组合选择表现较优的超参数组合作为第一超参数组合,或者,将该多个满足条件2的超参数组合中的每个超参数组合作为第一超参数组合,即可以对该多个满足条件2的超参数组合进行再次评估。
因此,可以通过该第一预设条件,从多个超参数组合中选出再次评估的超参数组合,从而使评估次数少,或者表现结果优于第二超参数组合的部分结果的超参数组合进行再次评估,从而提高该超参数组合的表现结果的准确性,进而提高多个超参数组合的整体的表现结果的准确性。
可以理解为,在确定出最优的第二超参数组合之后,放宽了选择再次评估的超参数组合的条件,使得更多表现不是最优或者评估次数少的超参数组合也可以进行再次评估,从而使最终得到的多个超参数组合的整体的表现结果更准确,进而提高后续更新模型的收敛速度。
此外,对超参数组合进行评估,得到超参数组合的表现结果的具体方式可以包括:将超参数组合所包括的超参数代入神经网络中,然后根据该神经网络的输出确定超参数组合的表现结果。该表现结果可以是神经网络输出的结果的分类精度、损失值、精确率(precision)、召回率(recall)或者时期(epoch)数量等。其中,分类精度表示神经网络识别图片的准确度;损失值为神经网络的损失函数的值;精确率用于表示神经网络输出的结果中,判定为真的样本,占实际为真的样本与实际为假的样本的和的比例,即表示的是预测为正的样本中有多少是正确的;召回率用于表示神经网络输出的结果中,判定为真的样本,占实际为真的样本的比例,即表示预测的样本中有多少正样本被预测正确;一个epoch表示在强化学习的场景中,将训练集中的全部样本训练一次。
403、根据每个超参数组合的多个表现结果从多个超参数组合中确定出最优超参数组合。
在得到每个超参数组合的多个表现结果之后,根据该每个超参数组合的多个表现结果,从多个超参数组合中确定出最优超参数组合。
具体地,可以将该多个超参数组合中,评估次数最多的超参数组合作为最优超参数组合。当评估次数最多的超参数组合有多个时,可以从多个评估次数最多的超参数组合中确定出表现结果最优的超参数组合作为第二超参数组合。
其中,衡量表现结果是否最优的方式可以包括多种,具体可以包括表现结果所包括的参数进行确定,在不同的场景中,超参数组合的表现结果中所包括的参数不相同,衡量表现结果是否最优的方式可能不同。示例性地,表现结果最优的超参数组合可以是:分类精度最高、或者分类精度的平均值最高,或者损失值最低的超参数组合等。
404、判断最优超参数组合是否满足第二预设条件,若是,则执行步骤405,若否,则执行步骤406。
其中,在确定出最优超参数组合之后,判断该最优超参数组合是否满足第二预设条件。若该最优超参数组合满足第二预设条件,则将该最优超参数组合所包括的超参数作为神经网络的超参数,即执行步骤406。若该最优超参数组合不满足第二预设条件,则通过每个超参数组合的多个表现结果更新预设模型,即执行步骤405。
具体地,第二预设条件可以随着超参数组合的表现结果不同而变化,该第二预设条件在不同的场景中可能对应不同的条件,示例性地,下面以一些具体的场景为例进行示例性说明。当超参数组合的表现结果中包括分类精度时,第二预设条件可以包括:最优超参数组合的多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,最优超参数组合的多个表现结果包括的分类精度的平均值大于第二阈值。当超参数组合的表现结果中包括神经网络的损失值时,则第二预设条件可以包括该损失值不大于第三阈值。当超参数组合的表现结果中包括精确率或者召回率时,该第二预设条件可以包括:任一个精确率大于第四阈值,或者,多个精确率的平均值大于第五阈值,或者,召回率大于第六阈值等。当超参数组合的表现结果中包括epoch数量等,则第二预设条件可以包括该epoch数量不大于第七阈值。
405、通过每个超参数组合的多个表现结果更新预设模型。
其中,若确定出的最优超参数组合不满足第二预设条件,则可以使用多个超参数组合中的每个超参数组合的多个表现结果来更新预设模型。该模型用于拟合概率分布,该概率分布用于对超参数进行采样。因此,在更新该预设模型之后,即可继续执行步骤401。
具体地,第一预设模型包括第一概率密度函数和第二概率密度函数。为便于理解,以下将第一概率密度函数表示为l(x),将第二概率密度函数表示为g(x)。通常,概率密度函数是连续函数,用于表示随机变量的输出值在某个确定的取值点附近的可能性。而随机变量的取值落在某个区域之内的概率则为概率密度函数在这个区域上的积分。当概率密度函数存在的时候,累积分布函数是概率密度函数的积分。
可选地,第一概率密度函数和第二概率密度函数的类型可以包括但不限于以下一种或多种:正态分布、离散分布、截断正态分布、对数正态分布、指数分布,伽玛分布(Gammadistribution),贝塔分布(Beta distribution)或者伯努利分布等等。概率密度函数的具体类型可以根据实际应用场景进行调整,本申请对此不作限定。
在得到多个超参数组合中每个超参数组合的多个表现结果之后,将该多个超参数组合分为两类,包括第一类超参数组合和第二类超参数组合,其中,第一类超参数组合的表现优于第二类超参数组合的表现,第一类超参数的表现为根据第一类超参数的多个表现结果确定,第二类超参数组合的表现是根据第二类超参数组合的表现结果确定的,且通过第一类超参数组合更新l(x),通过第二类超参数组合更新g(x)。
可以理解为,第一类超参数组合的整体表现优于第二类超参数组合的整体表现,例如,第一类超参数的评估次数都高于第二类超参数组合,或者,第一类超参数组合的多个表现结果所包括的分类精度的平均值高于第二类超参数组合的多个表现结果所包括的分类精度的平均值,或者,第一类超参数组合的多个表现结果所包括的损失值的平均值低于第二类超参数组合的多个表现结果所包括的损失值的平均值等。在不同的场景中,评价第一类超参数组合优于第二类超参数组合的方式可能不同,具体可以根据实际应用场景进行调整,本申请实施例是示例性说明。
其中,通过表现结果更新概率密度函数的方式可以是通过核密度估计(kerneldensity estimation,KDE)、树参数估计(tree parzen estimator,TPE)、高斯过程(Gaussian process,GP)、基于序列模型的算法配置(sequential model-based algorithmconfiguration,SMAC)等方式更新概率密度参数。例如,以KDE为例,首先设定模型,如线性、可化线性或指数等模型,然后根据输入的每个超参数组合的多个表现结果,记录表现结果较优的超参数的分布范围,然后按照设定的模型以及该分布范围进行拟合,即可得到更新后的模型。更具体地,本申请按照表现结果将多个超参数组合分为了第一类超参数和第二类超参数,可以根据第一类超参数的表现结果,确定表现较优的超参数的分布范围,从而拟合得到第一概率密度函数;根据第二类超参数的表现结果,确定表现较差的超参数的分布范围,从而拟合得到第二概率密度函数。
此外,对多个超参数组合进行分类的方式有多种,下面示例性地对几种可行的分类方式进行介绍,具体可以根据实际应用场景进行调整,本申请对此不作限定。
方式一、与预设值比较后分类
确定每个超参数组合的表现结果的平均值,若该平均值优于预设值,则将对应的超参数组合分为第一类超参数组合,若该平均值不优于预设值,则将对应的超参数组合分为第二类超参数组合。其中,前述的平均值,也可以替换为多个表现结果中最优的值、分布最多的值等,具体可以根据实际应用场景进行调整,本申请仅以平均值为例进行示例性说明。
其中,确定平均值是否优于预设值,在不同的场景中有不同的确认方式。例如,若表现结果中包括分类精度,则通常精度越高,表示超参数组合的表现越好,因此,将平均分类精度值高于预设值的超参数组合分为第二类超参数组合,而将平均分类精度值不高于预设值的超参数组合分为第二类超参数组合。又例如,若超参数组合的表现结果中包括损失值,通常损失值越低,表示超参数组合的表现越好,因此,可以将平均损失值低于预设值的超参数组合分为第一类超参数组合,将平均损失值不低于预设值的超参数组合分为第二类超参数组合。
方式二、按比例分配
其中,可以将多个超参数组合,按照预设的比例分为两种。例如,可以预设设定3:7的比例,根据每个超参数组合的多个表现结果,将其中表现较优的3/10分为第一类超参数组合,将表现较差的7/10分为第二类超参数组合。其中,比较超参数组合的表现结果的方式可以包括:计算每个超参数组合的多个表现结果的平均值,对多个超参数组合的平均值进行排序,然后根据排序结果,按照预设的比例将表现较优的超参数组合作为第二超参数组合,将表现较差的超参数组合作为第一超参数组合。
此外,除了基于每个超参数组合的多个表现结果的平均值进行排序,也可以基于每个超参数组合的多个表现结果中最优的表现结果的值进行排序,或者基于每个超参数组合的多个表现结果中分布最多的值进行排序,具体可以根据实际场景进行调整。
并且,与前述方式一类似地,当超参数组合的表现结果包括损失值时,则损失值越低,表示该超参数组合的表现结果越好,当损失值越高,则表示超参数组合的表现结果越差。或者,当超参数组合的表现结果包括分类精度时,分类精度值越高,则表示超参数组合的表现越好,分类精度值越低,则表示超参数组合的表现越差。
在通过每个超参数组合的多个表现结果更新预设模型之后,可以根据预设模型所拟合的概率分布进行采样。例如,具体的采集函数可以包括:其中,x即为超参数组合,在更新了l(x)和g(x)之后,根据l(x)对应的概率分布再次采集超参数组合,然后基于l(x)/g(x)确定最终采集到的多个超参数组合,即采集到的多个超参数组合满足l(x)和g(x)所对应的概率分布。可以理解为,本申请实施方式中,需要最大化l(x)/g(x),从而增加采集到表现优的超参数组合的概率,使采集到的超参数组合更趋于表现最优的超参数组合,从而可以准确、高效地确定出表现更优的超参数组合。
406、将最优超参数组合作为神经网络的超参数组合。
其中,在确定出最优的超参数组合,且该超参数组合满足第二预设条件之后,即可将该最优超参数组合作为神经网络的超参数组合。
例如,若超参数搜索空间中包括的是卷积神经网络的超参数,则在确定出最优超参数组合之后,将该最优超参数组合中包括的超参数作为卷积神经网络的超参数。如最优超参数组合中包括卷积层数、核大小、扩张大小、ReLU的位置等参数,则将最优超参数组合中所包括的参数作为卷积神经网络的卷积层数、核大小、扩张大小、ReLU的位置等。
因此,本申请实施方式中,在对多个超参数组合进行评估时,除了对多个超参数组合中表现最优的超参数组合进行评估之外,还可以对表现不是最优或者评估次数少的超参数组合进行再次评估,从而可以避免因评估次数少或者因部分表现结果出现误差等原因导致的表现结果不准确,提高最终得到的超参数组合的表现结果的准确性。进一步地,可以利用该准确的表现结果更新模型,使得模型可以快速收敛,提高收敛效率。且根据该模型进一步对超参数搜索空间进行采样,从而可以准确、高效地确定出表现更优的超参数组合。
前述对本申请提供的神经网络优化方法的流程进行了介绍,下面以一个具体的应用场景为例,对本申请提供的神经网络优化方法进行示例性介绍。
参阅图5,本申请提供的另一种神经网络优化方法的流程示意图。
501、对超参数搜索空间进行采样,得到K个超参数组合。
其中,可以对超参数搜索空间进行随机采样,也可以根据预设模型确定的概率分布对超参数搜索空间进行采样,得到K个超参数组合,K为正整数,K的具体取值可以根据实际应用场景进行调整。
例如,以卷积神经网络为例,超参数搜索空间中可以包括卷积层数、卷积核数量、扩张大小、ReLU函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例等多种超参数组合的取值范围,若当前为首次对超参数搜索空间进行采样,则可以从超参数搜索空间中随机采集一批超参数组合,得到K个超参数组合,每个超参数组合中都包括卷积层数、卷积核数量、扩张大小、ReLU函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例等的值。
具体地,步骤501可以参阅前述步骤401的相关描述,此处不再赘述。
502、用b份计算资源进行评估,得到每个超参数组合的至少一个表现结果。
其中,b分资源在不同的场景中所包括的资源可能不相同,例如,该b份计算资源可以包括b次迭代,即迭代次数为b;或者,在蒙特卡洛计算中,该b份计算资源可以包括所使用的样本个数,如样本的数量为b;或者,在强化学习的场景中,该b份计算资源可以包括学习尝试的轮数。
例如,可以对每个超参数组合进行b次迭代评估,得到每个超参数组合的b个表现结果。
以用于图片识别的卷积神经网络为例,可以将每个超参数组合所包括的卷积层数、卷积核数量、扩张大小、ReLU函数在卷积神经网络中的位置、锚框的尺寸或者所述锚框的长和宽的比例等值代入卷积神经网络中,然后通过已有的训练数据作为该卷积神经网络的输入,得到卷积神经网络的输出结果,对卷积神经网络的输出与训练数据实际的值进行对比,得到超参数组合的一个表现结果,若进行b次迭代评估,则得到b个表现结果。如图6所示,将图6所示的图片作为卷积神经网络的输入,将超参数组合中所包括的卷积层数、卷积核数量、扩张大小、ReLU函数在卷积神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例等值代入卷积神经网络,通过锚框(即图6中所示的黑框)的尺寸或者锚框的长和宽的比例标记出图片中待识别或者识别出的动物。又例如,如图7所示,在无人驾驶场景中,可以将车辆传感器或者摄像机采集到的图片作为卷积神经网络的输入,根据超参数组合中所包括的锚框(即图7中所示的黑框)的尺寸或者锚框的长和宽的比例等,标记出图片中的车辆或者其他障碍物,从而为车辆自动驾驶控制系统提供决策输入信息,提高车辆行驶的安全性。
503、选出最优的第二超参数组合。
其中,在得到K个超参数组合中每个超参数组合的多个表现结果之后,根据每个超参数组合的多个表现结果筛选出表现最优的第二超参数组合。
在不同的场景中,超参数组合的表现结果中所包括的参数不相同,衡量表现结果是否最优的方式可能不同。示例性地,表现结果最优的超参数组合可以是:分类精度最高、或者分类精度的平均值最高,或者损失值最低的超参数组合等。
504、判断K-1个超参数组合中是否存在部分优于第二超参数组合的组合,若是,则执行步骤505,若否,则执行步骤506。
在确定出最优的第二超参数组合之后,判断K个超参数组合中除第二超参数组合之外的其余K-1个超参数组合是否存在部分条件下优于第二超参数组合的组合,若存在部分条件下优于第二超参数组合的组合,则可以对该部分条件下优于第二超参数组合的组合进行再次评估,若不存在优于部分条件下第二超参数组合的组合,则可以对第二超参数组合进行再次评估。可以理解为,本步骤中所提及的部分条件下优于第二超参数组合的超参数组合,是指满足第一预设条件的第一超参数组合。
其中,判断K-1个超参数组合中是否存在部分条件下优于第二超参数组合的组合的方式,具体可以包括:
1、nk<nk′,且nk<cn,nk为第一超参数组合的评估次数,nk′为第二超参数组合的评估次数,cn为预设次数;
若第一超参数组合满足其中之一的条件,即该第一超参数组合的评估次数过少,或者表现结果优于第二超参数组合的部分表现结果,则可以理解为该第一超参数组合在部分条件下优于第二超参数组合,即可对该第一超参数组合进行再次评估。
因此,本申请实施方式中,降低了选择再次评估的超参数组合的标准,使得更多表现不是最优或者评估次数少的超参数组合也可以进行再次评估,从而使最终得到的多个超参数组合的整体的表现结果更准确。
505、用2b份资源对优于第二超参数组合的超参数组合进行加强评估。
若确定存在优于第二超参数组合的组合,则表示K个超参数组合中存在评估次数不高于预设值,或者K个超参数组合中存在表现结果优于第二超参数组合的部分表现结果的组合,即可使用2b份资源对表现结果优于第二超参数组合的部分表现结果的第一超参数组合进行加强评估,得到第一超参数组合的多个表现结果。
因此,在本申请实施方式中,当存在优于第二超参数组合的组合时,可以对该表现结果优于第二超参数组合的组合进行再次评估。
506、用2b份资源对第二超参数组合进行加强评估。
若确定不存在表现结果优于第二超参数组合的部分表现结果的组合,则表示K个超参数组合的评估次数高于预设值,或者表现结果并未优于第二超参数组合,即可使用2b份资源对第二超参数组合进行加强评估,得到第二超参数组合的多个表现结果。
因此,本申请实施方式中,当确定不存在表现结果优于第二超参数组合的超参数组合之后,可以对第二超参数组合进行再次评估,得到再次评估的表现结果,从而使第二超参数组合的表现结果更准确。
此外,步骤505或506中的2b份资源也可以替换为b份计算资源,或者更多或更少的计算资源,此处仅仅以2b份资源进行加权评估为例进行示例性说明,具体可以根据实际应用场景进行调整,本申请对此不作限定。
507、判断计算资源是否耗尽,若是,则执行步骤508,若否,则执行步骤503。
在进行再次评估之后,判断计算资源是否耗尽,若计算资源并未耗尽,则可以继续执行步骤503,即重新选出最优的第二超参数组合。
该计算资源包括前述的b份资源和2b份资源。该计算资源可以是预先设定的可用于对超参数组合进行评估的资源。例如,该计算资源可以包括预设次数的迭代评估次数,步骤507即判断对K个超参数组合的评估次数是否达到该预设次数。若对K个超参数组合的评估次数已达到该预设次数,则可以输出该K个超参数组合的最终表现结果;若对K个超参数组合的评估次数未达到该预设次数,则可以继续执行步骤503,即继续对超参数组合进行评估,直到评估次数达到预设次数。
因此,本申请实施方式中,可以通过步骤501-507,快速对K个超参数组合进行评估,利用该K个超参数组合的表现结果拟合贝叶斯模型,并根据贝叶斯模型重复进行采样、评估,利用循环迭代得到的评估数据修正贝叶斯模型,可以根据贝叶斯模型拟合最优超参数组合所服从的概率分布,并根据最终拟合得到的概率分布采集超参数组合。本申请除了对多个超参数组合中的最优超参数组合进行再次评估之外,还可以对多个超参数组合中部分表现不是最优或者评估次数较少的超参数组合进行评估,从而提高部分表现不是最优或者评估次数较少的超参数组合的表现结果的准确性,提高多个超参数组合的整体表现的准确性,从而使得贝叶斯模型可以快速收敛,可以准确、高效地确定出表现更优的超参数组合。
508、从K个超参数组合中确定出最优超参数组合。
其中,在确定计算资源耗尽之后,可以获取到K个超参数组合的最终表现结果,该K个超参数组合的最终表现结果包括前述步骤503至步骤507中评估得到的每个超参数组合的多个表现结果。
509、判断最优超参数组合是否满足第二预设条件。
510、通过每个超参数组合的多个表现结果更新预设模型。
511、将最优超参数组合作为神经网络的超参数组合。
具体地,步骤508--511可以参阅前述步骤403-406中的相关描述,此处不再赘述。
因此,本申请实施方式中,不局限于关注多个超参数组合中表现最好的超参数组合,也增加了多个超参数组合中表现不是最优或者评估次数较少的超参数组合的评估次数,从而使使表现不是最优或者评估次数较少等具有潜力的超参数组合的表现结果更准确,避免因评估次数少或者部分评估出现误差而导致的数据不准确等问题,通过增加评估次数增加了具有潜力的超参数组合的表现结果的准确性,提高多个超参数组合的整体的表现结果的准确性。从而可以使预设模型快速收敛,且根据该预设模型可以准确、高效地确定出表现更优的超参数组合。
示例性地,下面以上下文信息通用物体检测数据集(common objects incontext,COCO)数据集作为神经网络的输入数据,对本申请提供的神经网络优化方法和常用的方案进行对比,对本申请提供的神经网络优化方法的有益效果进行示例性说明。该数据集拥有80个通用物体的检测标注,含有约1.1万训练数据集以及5千张测试集。该数据集中所包括的图像主要从复杂的日常场景中截取,图像中的目标通过精确的分割进行位置的标定。数据集中的图像包括91类目标,328000影像和2500000个标签。
参阅图8,其中包括了本申请提供的神经网络优化方法所确定的超参数,和常用的一些方式确定的超参数,代入神经网络后输出的结果的对比。其中,常用的一些方式包括人工、随机搜索和贝叶斯优化和超参数(Bayesian optimization and hyperband,BOHB)等。其中,人工的方式即由人工根据经验值来取超参数组合;随机搜索即采用均匀分布从超参数搜索空间中采集超参数组合;BOHB参阅前述的相关介绍;图8中所示的本申请即由本申请提供的神经网络优化方法来确定超参数组合。
APx或者ARx中的x为数值时,表示锚框和目标物体的重合的比例,例如,AP50表示图像中锚框和待检测的目标物体重合的比例为50%;S、M和L表示图像中待检测的物体的大小,分为小(small,S)、中(medium,M)和大(large,L),具体的分类标准可以根据实际应用场景进行调整。
可以理解为,在BOHB方案中,仅追求返回最优组合,而并不关注是否对贝叶斯模型的估计有所帮助。而本申请提供的神经网络优化方法中,除了关注多个超参数组合中表现最优的超参数组合,也对多个超参数组合中表现不是最优或者评估次数少的超参数组合进行再次评估,使对K个超参数组合的迭代过程中,得到的K个超参组合的总体表现达到渐近最优,即在评估次数趋于无穷大的时候,总体表现趋于最优表现。本申请实施例对于贝叶斯流程的整体给出保证,使能够更好的估计贝叶斯模型,已达到每次抽取的超参组合更接近最优组合的目的。
因此,由图8可知,本申请提供的神经网络优化方法,所确定的超参数组合,在应用到卷积神经网络中时,卷积神经网络识别图片所输出的AP和AR明显高于常用的一些方式。因此,本申请提供的神经网络优化方法,可以确定出表现结果更优的超参数组合。
前述对本申请提供的神经网络优化方法的流程进行了详细介绍,下面基于前述的神经网络优化方法,对本申请提供的神经网络优化装置进行阐述,该神经网络优化装置用于执行前述图4-8对应的方法的步骤。
参阅图9,本申请提供的一种神经网络优化装置的结构示意图。该神经网络优化装置包括:
采样模块901,用于对超参数搜索空间进行采样,得到多个超参数组合,超参数搜索空间包括神经网络的超参数,超参数包括神经网络中不通过训练得到的参数;
评估模块902,用于对多个超参数组合进行多次迭代评估,以得到多个超参数组合中的每个超参数组合的多个表现结果,多个表现结果为根据代入每个超参数组合后的神经网络输出的结果确定,其中,在多次迭代评估中的任一次迭代评估中,获取当前次评估之前评估得到的每个超参数组合的至少一个表现结果,若多个超参数组合存在满足第一预设条件的第一超参数组合,对第一超参数组合进行再次评估,得到第一超参数组合的再次评估的表现结果,该再次评估的表现结果包括于第一超参数组合的多个表现结果中;
确定模块903,用于根据每个超参数组合的多个表现结果从多个超参数组合中确定出最优超参数组合;
更新模块904,用于若最优超参数组合不满足第二预设条件,则通过每个超参数组合的多个表现结果更新预设模型,预设模型用于拟合概率分布,概率分布用于对超参数搜索空间进行再次采样;
选择模块905,用于若最优超参数组合满足第二预设条件,则将最优超参数组合作为神经网络的超参数组合。
在一种可能的实施方式中,第一预设条件包括:第一超参数组合的评估次数不高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数,第二超参数组合为在任意一次迭代中选取出的多个超参数组合中表现最优的超参数组合,或者,多个超参数组合中评估次数最多的超参数组合;或者,第一超参数组合的评估次数高于预设次数,且第一超参数组合的评估次数不高于第二超参数组合的评估次数,且存在第二超参数组合的部分表现结果差于第一超参数组合的至少一个表现结果。
在一种可能的实施方式中,评估模块902,还包括:然后判断多个超参数组合中是否存在满足第一预设条件的超参数组合,若多个超参数组合中不存在满足第一预设条件的第一超参数组合,则对第二超参数组合进行再次评估,得到第二超参数组合再次评估的表现结果,该第二超参数组合的再次评估的表现结果包括于第二超参数组合的多个表现结果中。
在一种可能的实施方式中,预设模型包括第一概率密度函数和第二概率密度函数,更新模块904,具体用于:根据每个超参数组合的至少一个表现结果将多个超参数组合分为第一类超参数组合和第二类超参数组合,第一类超参数组合的多个表现结果优于第二类超参数组合的多个表现结果,通过第一类超参数组合更新第一概率密度函数,以及通过第二类超参数组合更新第二概率密度函数。
在一种可能的实施方式中,第一概率密度函数或第二概率密度函数的类型可以包括:正态分布、离散分布、截断正态分布或者对数正态分布。
在一种可能的实施方式中,神经网络为用于识别图片的卷积神经网络,超参数搜索空间中的超参数的种类包括以下一种或多种:卷积层数、卷积核数量、扩张大小、ReLU函数在神经网络中的位置、锚框的尺寸或者锚框的长和宽的比例,锚框用于标识图片中需要识别的对象。
在一种可能的实施方式中,神经网络为通过一个或多个构建单元组合得到,超参数搜索空间中的超参数的种类包括以下一种或多种:一个构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元的操作算子。
在一种可能的实施方式中,多个表现结果包括分类精度或者损失值,分类精度用于表示神经网络识别图片的准确度,损失值为神经网络对应的损失函数的值;第二预设条件包括:多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,多个表现结果包括的分类精度的平均值大于第二阈值,或者,损失值不大于第三阈值。
在一种可能的实施方式中,采样模块901,具体用于:对超参数搜索空间进行随机采样,得到多个超参数组合;或者,基于更新前的预设模型确定的概率分布对超参数搜索空间进行采样,得到多个超参数组合。
请参阅图10,本申请提供的另一种神经网络优化装置的结构示意图,如下所述。
该神经网络优化装置可以包括处理器1001和存储器1002。该处理器1001和存储器1002通过线路互联。其中,存储器1002中存储有程序指令和数据。
存储器1002中存储了前述图4或图8中的步骤对应的程序指令以及数据。
处理器1001用于执行前述图4或图8中任一实施例所示的神经网络优化装置执行的方法步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于生成车辆行驶速度的程序,当其在计算机上行驶时,使得计算机执行如前述图4至图8所示实施例描述的方法中的步骤。
可选地,前述的图10中所示的神经网络优化装置为芯片。
本申请实施例还提供了一种神经网络优化装置,该神经网络优化装置也可以称为数字处理芯片或者芯片,芯片包括处理单元和通信接口,处理单元通过通信接口获取程序指令,程序指令被处理单元执行,处理单元用于执行前述图4或图8中任一实施例所示的神经网络优化装置执行的方法步骤。
本申请实施例还提供一种数字处理芯片。该数字处理芯片中集成了用于实现上述处理器1001,或者处理器1001的功能的电路和一个或者多个接口。当该数字处理芯片中集成了存储器时,该数字处理芯片可以完成前述实施例中的任一个或多个实施例的方法步骤。当该数字处理芯片中未集成存储器时,可以通过通信接口与外置的存储器连接。该数字处理芯片根据外置的存储器中存储的程序代码来实现上述实施例中神经网络优化装置执行的动作。
本申请实施例中还提供一种包括计算机程序产品,当其在计算机上行驶时,使得计算机执行如前述图4至图8所示实施例描述的方法中神经网络优化装置所执行的步骤。
本申请实施例提供的神经网络优化装置可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使服务器内的芯片执行上述图4至图8所示实施例描述的神经网络优化方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
具体地,前述的处理单元或者处理器可以是中央处理器(central processingunit,CPU)、网络处理器(neural-network processing unit,NPU)、图形处理器(graphicsprocessing unit,GPU)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)或现场可编程逻辑门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者也可以是任何常规的处理器等。
具体的,请参阅图11,图11为本申请实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器NPU 110,NPU 110作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路110,通过控制器1104控制运算电路1103提取存储器中的矩阵数据并进行乘法运算。
在一些实现中,运算电路1103内部包括多个处理单元(process engine,PE)。在一些实现中,运算电路1103是二维脉动阵列。运算电路1103还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1103是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器1102中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器1101中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1108中。
统一存储器1106用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(direct memory access controller,DMAC)1105,DMAC被搬运到权重存储器1102中。输入数据也通过DMAC被搬运到统一存储器1106中。
总线接口单元(bus interface unit,BIU)1110,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)1109的交互。
总线接口单元1110(bus interface unit,BIU),用于取指存储器1109从外部存储器获取指令,还用于存储单元访问控制器1105从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器1106或将权重数据搬运到权重存储器1102中或将输入数据数据搬运到输入存储器1101中。
向量计算单元1107包括多个运算处理单元,在需要的情况下,对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如批归一化(batch normalization),像素级求和,对特征平面进行上采样等。
在一些实现中,向量计算单元1107能将经处理的输出的向量存储到统一存储器1106。例如,向量计算单元1107可以将线性函数和/或非线性函数应用到运算电路1103的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1107生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1103的激活输入,例如用于在神经网络中的后续层中的使用。
控制器1104连接的取指存储器(instruction fetch buffer)1109,用于存储控制器1104使用的指令;
统一存储器1106,输入存储器1101,权重存储器1102以及取指存储器1109均为On-Chip存储器。外部存储器私有于该NPU硬件架构。
其中,循环神经网络中各层的运算可以由运算电路1103或向量计算单元1107执行。
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述图4-图8的方法的程序执行的集成电路。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
最后应说明的是:以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (21)
1.一种神经网络优化方法,其特征在于,包括:
对超参数搜索空间进行采样,得到多个超参数组合,所述超参数搜索空间包括神经网络的超参数,所述超参数代表所述神经网络中不通过训练得到的参数;
对所述多个超参数组合进行多次迭代评估,以得到所述多个超参数组合中的每个超参数组合的多个表现结果,所述多个表现结果为根据代入所述每个超参数组合后的所述神经网络输出的结果确定,其中,所述多次迭代评估中的任意一次迭代评估中,获取当前次评估之前评估得到的所述每个超参数组合的至少一个表现结果,若所述多个超参数组合存在满足第一预设条件的第一超参数组合,则对所述第一超参数组合进行再次评估,得到所述第一超参数组合的再次评估的表现结果,所述再次评估的表现结果包括于所述第一超参数组合的多个表现结果中;
根据所述每个超参数组合的所述多个表现结果从所述多个超参数组合中确定出最优超参数组合;
若所述最优超参数组合不满足第二预设条件,则通过所述每个超参数组合的所述多个表现结果更新预设模型,所述预设模型用于拟合概率分布,所述概率分布用于对所述超参数搜索空间进行再次采样;
若所述最优超参数组合满足所述第二预设条件,则将所述最优超参数组合作为所述神经网络的超参数组合。
2.根据权利要求1所述的方法,其特征在于,所述第一预设条件包括:
所述第一超参数组合的评估次数不高于预设次数,且所述第一超参数组合的评估次数不高于第二超参数组合的评估次数,所述第二超参数组合为在所述任意一次迭代中选取出的所述多个超参数组合中表现最优的超参数组合,或者,所述多个超参数组合中评估次数最多的超参数组合;
或者,
所述第一超参数组合的评估次数高于预设次数,且所述第一超参数组合的评估次数不高于所述第二超参数组合的评估次数,且所述第二超参数组合的至少一个表现结果中存在部分表现结果差于所述第一超参数组合的至少一个表现结果。
3.根据权利要求1或2所述的方法,其特征在于,所述多次迭代评估中的任意一次迭代评估,还包括:
若所述多个超参数组合中不存在满足所述第一预设条件的第一超参数组合,则对所述第二超参数组合进行再次评估,得到所述第二超参数组合的再次评估的表现结果,所述第二超参数的再次评估的表现结果包括于所述第二超参数组合的多个表现结果中。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述预设模型包括第一概率密度函数和第二概率密度函数,所述通过所述每个超参数组合的所述多个表现结果更新预设模型,包括:
根据所述每个超参数组合的多个表现结果将所述多个超参数组合分为第一类超参数组合和第二类超参数组合,所述第一类超参数组合的表现优于所述第二类超参数组合的表现,所述第一类超参数组合的表现为根据所述第一类超参数组合的多个表现确定,所述第二类超参数组合的表现为根据所述第二类超参数的多个表现结果确定;
通过所述第一类超参数组合更新所述第一概率密度函数,以及通过所述第二类超参数组合更新所述第二概率密度函数。
5.根据权利要求4所述的方法,其特征在于,所述第一概率密度函数或所述第二概率密度函数的类型包括以下一种或多种:正态分布、离散分布、截断正态分布或者对数正态分布。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述神经网络包括用于识别图片的卷积神经网络,所述超参数搜索空间中的超参数的种类包括以下一种或多种:卷积层数、卷积核数量、扩张大小、修正线性单元ReLU函数在所述神经网络中的位置、锚框的尺寸或者所述锚框的长和宽的比例,所述锚框用于标识图片中需要识别的对象。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述神经网络为通过一个或多个构建单元组合得到,所述超参数搜索空间中的超参数的种类包括以下一种或多种:一个构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元的操作算子。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述多个表现结果包括分类精度或者损失值,所述分类精度用于表示所述神经网络识别图片的准确度,所述损失值为所述神经网络对应的损失函数的值;
所述第二预设条件包括:多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,所述多个表现结果包括的分类精度的平均值大于第二阈值,或者,损失值不大于第三阈值。
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述对超参数搜索空间进行采样,得到多个超参数组合,包括:
对所述超参数搜索空间进行随机采样,得到所述多个超参数组合;
或者,基于预设模型确定的概率分布对所述超参数搜索空间进行采样,得到所述多个超参数组合。
10.一种神经网络优化装置,其特征在于,包括:
采样模块,用于对超参数搜索空间进行采样,得到多个超参数组合,所述超参数搜索空间包括神经网络的超参数,所述超参数包括所述神经网络中不通过训练得到的参数;
评估模块,用于对所述多个超参数组合进行多次迭代评估,以得到所述多个超参数组合中的每个超参数组合的多个表现结果,所述多个表现结果为根据代入所述每个超参数组合后的所述神经网络输出的结果确定,其中,在所述多次迭代评估中的任一次迭代评估中,获取当前次评估之前评估得到的所述每个超参数组合的至少一个表现结果,所述每个超参数组合的至少一个表现结果包括于所述每个超参数组合的多个表现结果中,若所述多个超参数组合存在满足第一预设条件的第一超参数组合,则对所述第一超参数组合进行再次评估,得到所述第一超参数组合的再次评估的表现结果,所述再次评估的表现结果包括于所述第一超参数组合的多个表现结果中;
确定模块,用于根据所述每个超参数组合的所述多个表现结果从所述多个超参数组合中确定出最优超参数组合;
更新模块,用于若所述最优超参数组合不满足第二预设条件,则通过所述每个超参数组合的所述多个表现结果更新预设模型,所述预设模型用于拟合概率分布,所述概率分布用于对所述超参数搜索空间进行再次采样;
选择模块,用于若所述最优超参数组合满足所述第二预设条件,则将所述最优超参数组合作为所述神经网络的超参数组合。
11.根据权利要求10所述的装置,其特征在于,所述第一预设条件包括:
所述第一超参数组合的评估次数不高于预设次数,且所述第一超参数组合的评估次数不高于所述第二超参数组合的评估次数,所述第二超参数组合为在所述任意一次迭代中选取出的所述多个超参数组合中表现最优的超参数组合,或者,所述多个超参数组合中评估次数最多的超参数组合;
或者,
所述第一超参数组合的评估次数高于预设次数,且所述第一超参数组合的评估次数不高于所述第二超参数组合的评估次数,且存在所述第二超参数组合的部分表现结果差于所述第一超参数组合的至少一个表现结果。
12.根据权利要求10或11所述的装置,其特征在于,所述评估模块还包括,
若所述多个超参数组合中不存在满足所述第一预设条件的第一超参数组合,则对所述第二超参数组合进行再次评估,得到所述第二超参数组合再次评估的表现结果,所述第二超参数的再次评估的表现结果包括于所述第二超参数组合的多个表现结果中。
13.根据权利要求10-12中任一项所述的装置,其特征在于,所述预设模型包括第一概率密度函数和第二概率密度函数,所述更新模块,具体用于:
根据所述每个超参数组合的至少一个表现结果将所述多个超参数组合分为第一类超参数组合和第二类超参数组合,所述第一类超参数组合的表现优于所述第二类超参数组合的表现,所述第一类超参数组合的表现为根据所述第一类超参数组合的多个表现确定,所述第二类超参数组合的表现为根据所述第二类超参数的多个表现结果确定,
通过所述第一类超参数组合更新所述第一概率密度函数,以及通过所述第二类超参数组合更新所述第二概率密度函数。
14.根据权利要求13所述的装置,其特征在于,所述第一概率密度函数或所述第二概率密度函数的类型可以包括以下一种或多种:正态分布、离散分布、截断正态分布或者对数正态分布。
15.根据权利要求10-14中任一项所述的装置,其特征在于,所述神经网络为用于识别图片的卷积神经网络,所述超参数搜索空间中的超参数的种类包括以下一种或多种:卷积层数、卷积核数量、扩张大小、修正线性单元ReLU函数在所述神经网络中的位置、锚框的尺寸或者所述锚框的长和宽的比例,所述锚框用于标识图片中需要识别的对象。
16.根据权利要求10-15中任一项所述的装置,其特征在于,所述神经网络为通过一个或多个构建单元组合得到,所述超参数搜索空间中的超参数的种类包括以下一种或多种:一个构建单元的网络层数、构建单元中每层网络的神经元数量或者构建单元中每个神经元的操作算子。
17.根据权利要求10-16中任一项所述的装置,其特征在于,所述多个表现结果包括分类精度或者损失值,所述分类精度用于表示所述神经网络识别图片的准确度,所述损失值为所述神经网络对应的损失函数的值;
所述第二预设条件包括:多个表现结果中的任一个表现结果中的分类精度大于第一阈值,或者,所述多个表现结果包括的分类精度的平均值大于第二阈值,或者,损失值不大于第三阈值。
18.根据权利要求10-17中任一项所述的装置,其特征在于,所述采样模块,具体用于:
对所述超参数搜索空间进行随机采样,得到所述多个超参数组合;
或者,基于预设模型确定的概率分布对所述超参数搜索空间进行采样,得到所述多个超参数组合。
19.一种神经网络优化装置,其特征在于,包括处理器,所述处理器和存储器耦合,所述存储器存储有程序,当所述存储器存储的程序指令被所述处理器执行时实现权利要求1至9中任一项所述的方法。
20.一种计算机可读存储介质,包括程序,当其被处理单元所执行时,执行如权利要求1至9中任一项所述的方法。
21.一种神经网络优化装置,其特征在于,包括处理单元和通信接口,所述处理单元通过所述通信接口获取程序指令,当所述程序指令被所述处理单元执行时实现权利要求1至9中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010367582.2A CN113592060A (zh) | 2020-04-30 | 2020-04-30 | 一种神经网络优化方法以及装置 |
EP21797025.0A EP4131077A4 (en) | 2020-04-30 | 2021-03-17 | METHOD AND DEVICE FOR NEURONAL NETWORK OPTIMIZATION |
PCT/CN2021/081234 WO2021218470A1 (zh) | 2020-04-30 | 2021-03-17 | 一种神经网络优化方法以及装置 |
US17/975,436 US20230048405A1 (en) | 2020-04-30 | 2022-10-27 | Neural network optimization method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010367582.2A CN113592060A (zh) | 2020-04-30 | 2020-04-30 | 一种神经网络优化方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113592060A true CN113592060A (zh) | 2021-11-02 |
Family
ID=78236997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010367582.2A Pending CN113592060A (zh) | 2020-04-30 | 2020-04-30 | 一种神经网络优化方法以及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230048405A1 (zh) |
EP (1) | EP4131077A4 (zh) |
CN (1) | CN113592060A (zh) |
WO (1) | WO2021218470A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114492767A (zh) * | 2022-03-28 | 2022-05-13 | 深圳比特微电子科技有限公司 | 用于搜索神经网络的方法、装置及存储介质 |
WO2023143128A1 (zh) * | 2022-01-30 | 2023-08-03 | 华为技术有限公司 | 一种数据处理方法以及相关设备 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114444727B (zh) * | 2021-12-31 | 2023-04-07 | 北京瑞莱智慧科技有限公司 | 活体检测的方法、装置、电子模型及存储介质 |
CN116992937A (zh) * | 2022-04-19 | 2023-11-03 | 华为技术有限公司 | 神经网络模型的修复方法和相关设备 |
CN115034368B (zh) * | 2022-06-10 | 2023-09-29 | 小米汽车科技有限公司 | 车载模型训练方法、装置、电子设备、存储介质及芯片 |
CN116992253A (zh) * | 2023-07-24 | 2023-11-03 | 中电金信软件有限公司 | 与目标业务关联的目标预测模型中超参数的取值确定方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783998A (zh) * | 2016-08-26 | 2018-03-09 | 华为技术有限公司 | 一种数据处理的方法以及装置 |
CN109657805A (zh) * | 2018-12-07 | 2019-04-19 | 泰康保险集团股份有限公司 | 超参数确定方法、装置、电子设备及计算机可读介质 |
CN110705641A (zh) * | 2019-09-30 | 2020-01-17 | 河北工业大学 | 基于贝叶斯优化和电子鼻的葡萄酒分类方法 |
US20200057944A1 (en) * | 2018-08-20 | 2020-02-20 | Samsung Sds Co., Ltd. | Hyperparameter optimization method and apparatus |
CN110889450A (zh) * | 2019-11-27 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 超参数调优、模型构建方法和装置 |
CN110956260A (zh) * | 2018-09-27 | 2020-04-03 | 瑞士电信公司 | 神经架构搜索的系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11397887B2 (en) * | 2017-09-26 | 2022-07-26 | Amazon Technologies, Inc. | Dynamic tuning of training parameters for machine learning algorithms |
-
2020
- 2020-04-30 CN CN202010367582.2A patent/CN113592060A/zh active Pending
-
2021
- 2021-03-17 EP EP21797025.0A patent/EP4131077A4/en active Pending
- 2021-03-17 WO PCT/CN2021/081234 patent/WO2021218470A1/zh unknown
-
2022
- 2022-10-27 US US17/975,436 patent/US20230048405A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107783998A (zh) * | 2016-08-26 | 2018-03-09 | 华为技术有限公司 | 一种数据处理的方法以及装置 |
US20200057944A1 (en) * | 2018-08-20 | 2020-02-20 | Samsung Sds Co., Ltd. | Hyperparameter optimization method and apparatus |
CN110956260A (zh) * | 2018-09-27 | 2020-04-03 | 瑞士电信公司 | 神经架构搜索的系统和方法 |
CN109657805A (zh) * | 2018-12-07 | 2019-04-19 | 泰康保险集团股份有限公司 | 超参数确定方法、装置、电子设备及计算机可读介质 |
CN110705641A (zh) * | 2019-09-30 | 2020-01-17 | 河北工业大学 | 基于贝叶斯优化和电子鼻的葡萄酒分类方法 |
CN110889450A (zh) * | 2019-11-27 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 超参数调优、模型构建方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023143128A1 (zh) * | 2022-01-30 | 2023-08-03 | 华为技术有限公司 | 一种数据处理方法以及相关设备 |
CN114492767A (zh) * | 2022-03-28 | 2022-05-13 | 深圳比特微电子科技有限公司 | 用于搜索神经网络的方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230048405A1 (en) | 2023-02-16 |
WO2021218470A1 (zh) | 2021-11-04 |
EP4131077A1 (en) | 2023-02-08 |
EP4131077A4 (en) | 2023-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110175671B (zh) | 神经网络的构建方法、图像处理方法及装置 | |
WO2022083536A1 (zh) | 一种神经网络构建方法以及装置 | |
CN111507378A (zh) | 训练图像处理模型的方法和装置 | |
CN112183718B (zh) | 一种用于计算设备的深度学习训练方法和装置 | |
CN111797895B (zh) | 一种分类器的训练方法、数据处理方法、系统以及设备 | |
CN113592060A (zh) | 一种神经网络优化方法以及装置 | |
CN113011575A (zh) | 神经网络模型更新方法、图像处理方法及装置 | |
CN113705769A (zh) | 一种神经网络训练方法以及装置 | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN111401516A (zh) | 一种神经网络通道参数的搜索方法及相关设备 | |
CN113570029A (zh) | 获取神经网络模型的方法、图像处理方法及装置 | |
CN114255361A (zh) | 神经网络模型的训练方法、图像处理方法及装置 | |
CN111882031A (zh) | 一种神经网络蒸馏方法及装置 | |
CN113807399A (zh) | 一种神经网络训练方法、检测方法以及装置 | |
CN114997412A (zh) | 一种推荐方法、训练方法以及装置 | |
CN111368656A (zh) | 一种视频内容描述方法和视频内容描述装置 | |
CN112215332A (zh) | 神经网络结构的搜索方法、图像处理方法和装置 | |
CN112529146A (zh) | 神经网络模型训练的方法和装置 | |
CN111340190A (zh) | 构建网络结构的方法与装置、及图像生成方法与装置 | |
CN111797992A (zh) | 一种机器学习优化方法以及装置 | |
US20240135174A1 (en) | Data processing method, and neural network model training method and apparatus | |
CN111428854A (zh) | 一种结构搜索方法及结构搜索装置 | |
CN115081588A (zh) | 一种神经网络参数量化方法和装置 | |
CN114091554A (zh) | 一种训练集处理方法和装置 | |
CN112464930A (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 |