用于动态地更新分类器复杂度的方法与流程

文档序号:11208794阅读:450来源:国知局
用于动态地更新分类器复杂度的方法与流程

背景

领域

本公开的某些方面一般涉及机器学习,且更具体地涉及用于动态地更新分类器复杂度的系统和方法。

背景

可包括一群互连的人工神经元(即,神经元模型)的人工神经网络是一种计算设备或者表示将由计算设备执行的方法。人工神经网络可具有生物学神经网络中的对应的结构和/或功能。

卷积神经网络是一种前馈人工神经网络。卷积神经网络可以包括可在瓦片化的感受野中配置的神经元层。卷积神经网络(cnn)具有众多应用。具体地,cnn已被广泛使用于模式识别和分类的领域。

深度学习架构(诸如,深度置信网络和深度卷积网络)已经被越来越多地用于对象识别应用中。类似于卷积神经网络,这些深度学习架构中的计算可在处理节点群体上分发,这些处理节点可被配置在一个或多个计算链中。这些多层架构提供更大灵活性,因为它们可以被一次一层地训练并可使用反向传播进行微调。

深度置信网络(dbn)是由多层隐藏节点构成的概率性模型。dbn可被用于提取训练数据集的阶层式表示。dbn可通过堆叠多层受限波尔兹曼机(rbm)来获得。rbm是一类可在输入集上学习概率分布的人工神经网络。dbn的底部rbm可充当特征提取器且顶部rbm可充当分类器。

尽管深度网络(诸如,深度置信网络和深度卷积网络)在数个分类基准上获得了出色的结果,但它们的计算复杂度可能会极高。当使用中央处理单元(cpu)或图形处理单元(gpu)的集群时,可以缓解该极高的计算复杂度。然而,当尝试在能力较弱的平台上(诸如单个cpu或数字信号处理器(dsp))支持这些网络时,计算复杂度可能会妨碍其使用。这些模型的用户可能被迫去分析该网络并进行简化,这可能会降低该网络的分类性能。

分析基于深度网络的分类器来确定哪些简化将允许在给定平台上实现该分类器的过程是困难的。此外,允许实现的这些简化可能对分类性能不利。

概述

在本公开的一方面,给出了一种配置分类器的方法。该方法包括操作分类器以对输入进行分类。该方法还包括基于输入的分类来确定置信度量。该方法进一步包括基于该置信度量来动态地更新该分类器的复杂度。

在本公开的另一方面,给出了一种用于配置分类器的装置。该装置包括存储器以及耦合至该存储器的至少一个处理器。该处理器被配置成操作分类器以对输入进行分类。该处理器还被配置成基于输入的分类来确定置信度量。该处理器被进一步配置成基于置信度量来动态地更新该分类器的复杂度。

在本公开的又一方面,给出了一种用于配置分类器的设备。该设备包括用于操作分类器以对输入进行分类的装置。该设备还包括基于输入的分类来确定置信度量的装置。该设备进一步包括基于该置信度量来动态地更新该分类器的复杂度的装置。

在本公开的又一方面,给出了一种用于配置分类器的计算机程序产品。该计算机程序产品包括其上编码有程序代码的非瞬态计算机可读介质。该程序代码包括用于操作分类器以对输入进行分类的程序代码。该程序代码还包括用于基于该输入的分类来确定置信度量的程序代码。该程序代码进一步包括基于该置信度量动态地更新该分类器的复杂度的程序代码。

这已较宽泛地勾勒出本公开的特征和技术优势以便下面的详细描述可以被更好地理解。本公开的附加特征和优点将在下文描述。本领域技术人员应该领会,本公开可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,这样的等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而,要清楚理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。

附图简述

在结合附图理解下面阐述的详细描述时,本公开的特征、本质和优点将变得更加明显,在附图中,相同附图标记始终作相应标识。

图1解说了根据本公开的某些方面的示例神经元网络。

图2解说了根据本公开的某些方面的计算网络(神经系统或神经网络)的处理单元(神经元)的示例。

图3a是解说根据本公开的一方面的示例分类器的高级框图。

图3b解说了根据本公开的某些方面的使用通用处理器的分类器的示例实现。

图4解说了根据本公开的某些方面的设计其中存储器可以与个体分布式处理单元对接的神经网络的示例实现。

图5解说了根据本公开的某些方面的基于分布式存储器和分布式处理单元来设计神经网络的示例实现。

图6解说了根据本公开的某些方面的神经网络的示例实现。

图7是解说根据本公开的一方面被配置为分类器的深度卷积网络的示例性架构的高级框图。

图8-9是解说根据本公开的各方面的用于动态地更新分类器的示例性过程的流程图。

图10是解说根据本公开的一方面的用于配置分类器的方法的流程图。

详细描述

以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文中所描述的概念的仅有的配置。本详细描述包括具体细节以便提供对各种概念的透彻理解。然而,对于本领域技术人员将显而易见的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出众所周知的结构和组件以避免湮没此类概念。

基于本教导,本领域技术人员应领会,本公开的范围旨在覆盖本公开的任何方面,不论其是与本公开的任何其他方面相独立地还是组合地实现的。例如,可以使用所阐述的任何数目的方面来实现装置或实践方法。另外,本公开的范围旨在覆盖使用作为所阐述的本公开的各个方面的补充或者与之不同的其他结构、功能性、或者结构及功能性来实践的此类装置或方法。应当理解,所披露的本公开的任何方面可由权利要求的一个或多个元素来实施。

措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何方面不必被解释为优于或胜过其他方面。

尽管本文描述了特定方面,但这些方面的众多变体和置换落在本公开的范围之内。虽然提到了优选方面的一些益处和优点,但本公开的范围并非旨在被限定于特定益处、用途或目标。相反,本公开的各方面旨在能宽泛地应用于不同的技术、系统配置、网络和协议,其中一些作为示例在附图以及以下对优选方面的描述中解说。详细描述和附图仅仅解说本公开而非限定本公开,本公开的范围由所附权利要求及其等效技术方案来定义。

示例神经系统、训练及操作

图1解说了根据本公开的某些方面的具有多级神经元的示例人工神经系统100。神经系统100可具有神经元级102,该神经元级102通过突触连接网络104(例如,前馈连接)来连接到另一神经元级106。为简单起见,图1中仅解说了两级神经元,尽管神经系统中可存在更少或更多级神经元。应注意,一些神经元可通过侧向连接来连接至同层中的其他神经元。此外,一些神经元可通过反馈连接来后向连接至先前层中的神经元。

如图1所解说的,级102中的每一个神经元可以接收可由前级的神经元(未在图1中示出)生成的输入信号108。信号108可表示级102的神经元的输入电流。该输入电流可在神经元膜上累积以对膜电位进行充电。当膜电位达到其阈值时,该神经元可激发并生成输出尖峰,该输出尖峰将被传递到下一级神经元(例如,级106)。在一些建模办法中,神经元可以连续地向下一级神经元传递信号。该信号通常是膜电位的函数。此类行为可在硬件和/或软件(包括模拟和数字实现,诸如以下所述那些实现)中进行仿真或模拟。

尖峰从一级神经元向另一级神经元的传递可通过突触连接(或简称“突触”)网络104来达成,如图1中所解说的。相对于突触104,级102的神经元可被视为突触前神经元,而级106的神经元可被视为突触后神经元。突触104可接收来自级102的神经元的输出信号(例如,尖峰),并根据可调节突触权重来按比例缩放那些信号,其中p是级102的神经元与级106的神经元之间的突触连接的总数,并且i是神经元级的指示符。在图1的示例中,i表示神经元级102并且i+1表示神经元级106。此外,经按比例缩放的信号可被组合以作为级106中每个神经元的输入信号。级106中的每个神经元可基于对应的组合输入信号来生成输出尖峰110。可使用另一突触连接网络(图1中未示出)将这些输出尖峰110传递到另一级神经元。

神经系统100可由通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件(pld)、分立的门或晶体管逻辑、分立的硬件组件、由处理器执行的软件模块、或其任何组合来仿真。神经系统100可用在大范围的应用中,诸如图像和模式识别、机器学习、电机控制、及类似应用等。神经系统100中的每一神经元可被实现为神经元电路。被充电至发起输出尖峰的阈值的神经元膜可被实现为,例如,对流经其的电流进行积分的电容器。

图2解说了根据本公开的某些方面的计算网络(例如,神经系统或神经网络)的处理单元(例如,神经元或神经元电路)202的示例性示图200。例如,神经元202可对应于来自图1的级102和106的任何神经元。神经元202可接收多个输入信号2041-204n,这些输入信号可以是神经系统外部的信号、或是由同一神经系统的其他神经元所生成的信号、或这两者。该输入信号可以是电流、电导、电压、实数值的和/或复数值的。该输入信号可包括具有定点或浮点表示的数值。可通过突触连接将这些输入信号递送到神经元202,突触连接根据可调节突触权重2061-206n(w1-wn)对这些信号进行按比例缩放,其中n可以是神经元202的输入连接总数。

神经元202可组合这些经按比例缩放的输入信号,并且使用组合的经按比例缩放的输入来生成输出信号208(例如,信号y)。输出信号208可以是电流、电导、电压、实数值的和/或复数值的。该输出信号可以是具有定点或浮点表示的数值。随后该输出信号208可作为输入信号传递至同一神经系统的其他神经元、或作为输入信号传递至同一神经元202、或作为该神经系统的输出来传递。

处理单元(神经元)202可由电路来仿真,并且其输入和输出连接可由具有突触电路的电连接来仿真。处理单元202及其输入和输出连接也可由软件代码来仿真。处理单元202还可由电路来仿真,而其输入和输出连接可由软件代码来仿真。在一方面,计算网络中的处理单元202可以是模拟电路。在另一方面,处理单元202可以是数字电路。在又一方面,处理单元202可以是具有模拟和数字组件两者的混合信号电路。计算网络可包括任何前述形式的处理单元。使用这样的处理单元的计算网络(神经系统或神经网络)可用在大范围的应用中,诸如图像和模式识别、机器学习、电机控制、及类似应用等。

在神经网络的训练过程期间,突触权重(例如,来自图1的权重和/或来自图2的权重2061-206n)可用随机值来初始化并根据学习规则而被增大或减小。本领域技术人员将领会,学习规则的示例包括但不限于尖峰定时依赖可塑性(stdp)学习规则、hebb规则、oja规则、bienenstock-copper-munro(bcm)规则等。在某些方面,这些权重可稳定或收敛至两个值(例如,权重的双峰分布)之一。该效应可被用于减少每个突触权重的位数、提高从/向存储突触权重的存储器读取和写入的速度、以及降低突触存储器的功率和/或处理器消耗。

动态地更新分类器复杂度

本公开涉及动态地更新分类器的计算复杂度。分类器是接收输入(例如,观察)并标识该输入所属的一个或多个类别(或特征)的设备或系统。在一些方面,该标识可基于数据的训练集,包括已知分类的观察。

分类器可采用各种形式,包括支持向量网络和神经网络。例如,在一些方面,分类器可采用深度神经网络的形式,诸如深度置信网络(dbn)或深度卷积网络。

图3a是解说了根据本公开的各方面的分类器3000的示例性架构的高级框图。可使用已知分类的示例的训练集对该分类器3000进行训练。

该示例分类器3000可接收输入数据3002.该输入数据3002可包含观察,诸如图像、声音或其他感官输入数据。可经由视听设备(诸如相机、录音机、话筒、智能电话或类似设备)来提供输入数据。

可向习得特征图3004提供输入数据。该习得特征图3004可包括已知数据分类的特征或其他特性。例如,在光学字符识别应用中,特征图可包含与字母表中的字母有关的形状阵列。该习得特征图可用于从输入数据(例如,图像)中提取一个或多个特征。随后可将从输入数据提取的特征提供给推断引擎3006,该推断引擎可基于所提取的特征来确定输入数据的一个或多个分类。该推断引擎3006可输出所确定的分类作为推断结果3008。

在一个示例中,该分类器3000可被配置为对图像数据进行分类。可使用已知动物的一组图像对该分类器3000进行训练。因此,可将新的图像(输入数据)提供给习得特征图,该习得特征图可包括来自已知动物的训练数据集的图像特性。例如,该特征图可包括牙、爪子、尾巴、面部特征或其他定义特性。可将输入图像数据与特征图进行比较,以标识输入图像数据中的一组特征。随后可将这组特征提供给推断引擎3006以确定该图像的分类。例如,在输入图像包括脸部周围有鬃毛并具有穗状尾巴的四肢动物的情况下,其可能被分类为狮子。

该分类器3000可被配置为根据鉴于计算、功率和/或其他考量的设计偏好作出更精确或更不精确的分类(例如,简单地确定该动物是猫科动物,或更具体地确定该狮子是亚洲狮或马赛狮)。

根据本公开的诸方面,系统可最初尝试用相对简单的深度网络进行分类,并可基于置信度量来更新分类器的复杂度。

图3b解说了根据本公开的某些方面的使用通用处理器302的前述分类器的示例实现300。与计算网络(神经网络)相关联的变量(神经信号)、突触权重、系统参数,延迟、频率槽信息、阈值、置信度量、分类器配置信息、和/或分类器参数可被存储在存储器块304中,而在通用处理器302处执行的指令可从程序存储器306中加载。在本公开的一方面,加载到通用处理器302中的指令可包括用于以下操作的代码:操作分类器来对输入进行分类,基于输入的分类来确定置信度量,和/或基于置信度量来动态地更新分类器的复杂度。

图4解说了根据本公开的某些方面的前述配置分类器的示例实现400,其中存储器402可以经由互连网络404与计算网络(神经网络)的个体(分布式)处理单元(神经处理器)406对接。与计算网络(神经网络)相关联的变量(神经信号)、突触权重、系统参数、延迟、频率槽信息、阈值、置信度量、分类器配置信息、和/或分类器参数可被存储在存储器402中,并且可从存储器402经由互连网络404的连接被加载到每个处理单元(神经处理器)406中。在本公开的一方面,处理单元406可被配置为操作分类器以对输入进行分类,基于输入的分类来确定置信度量,和/或基于该置信度量来动态地更新分类器的复杂度。

图5解说了前述对分类器进行配置的示例实现500。如图5中所解说的,一个存储器组502可与计算网络(神经网络)的一个处理单元504直接对接。每一个存储器组502可存储与对应的处理单元(神经处理器)504相关联的变量(神经信号)、突触权重、和/或系统参数,延迟、频率槽信息、阈值、置信度量、分类器配置信息、和/或分类器参数。在本公开的一方面,处理单元504可被配置为对输入进行分类,基于输入的分类来确定置信度量,和/或基于该置信度量来动态地更新分类器的复杂度。

图6解说了根据本公开的某些方面的神经网络600的示例实现。如图6中所解说的,神经网络600可具有多个局部处理单元602,它们可执行本文所描述的方法的各种操作。每个局部处理单元602可包括存储该神经网络的参数的局部状态存储器604和局部参数存储器606。另外,局部处理单元602可具有用于存储局部模型程序的局部(神经元)模型程序(lmp)存储器608、用于存储局部学习程序的局部学习程序(llp)存储器610、以及局部连接存储器612。此外,如图6中所解说的,每个局部处理单元602可与配置处理器单元614对接,该配置处理器单元用于提供针对该局部处理单元的各局部存储器的配置,并且与路由连接处理单元616对接,该路由连接处理单元提供各局部处理单元602之间的路由。

在一种配置中,处理器被配置成用于操作分类器以对输入进行分类,基于输入的分类来确定置信度量,基于该置信度量来动态地更新分类器的复杂度。该处理器包括操作装置、确定装置和更新装置。在一方面,操作装置、确定装置和/或更新装置可以是被配置成执行所叙述功能的通用处理器302、程序存储器306、存储器块304、存储器402、互连网络404、处理单元406、处理单元504、局部处理单元602、和或路由连接处理单元616。在另一配置中,前述装置可以是被配置成执行由前述装置所叙述功能的任何模块或任何装置。

根据本公开的某些方面,每个局部处理单元602可被配置成基于神经网络的一个或多个期望功能性特征来确定神经网络的参数,以及随着所确定的参数被进一步适配、调谐和更新来使这一个或多个功能性特征朝着期望的功能性特征发展。

置信度量

当执行分类时,可使用置信度量来确定当前分类器的复杂度是否足够或是否应当被更新。该置信度量可对应于分类结果的可接受性或准确性。当然,本公开并不限于此,并且在更新分类器的复杂度时可使用其他度量。

最高后验概率

一方面,置信度量可包括后验概率。给定分类的后验概率可在特定分类决定中提供对置信度的指示。换言之,如果输入属于特定类的后验概率高,则该决定中的置信度也高。在此类情形中,该置信度量可以简单地是最高后验概率,并且可通过下式给出:

c(p(c1|x),…,p(cm|x))=p1(c|x)∈[0,1],(1)

其中m是类的总数,p(ci|x)是类i∈{1,…,m}的后验概率,而p1(c|x)是给定的输入x的最高后验概率。

后验概率的对数比

在一些方面,最高分类后验概率和所有其他分类后验概率的总和之间的对数比可被用作置信度量。基于后验概率对数比的置信度量可通过下式给出:

其中m是类的总数,p(ci|x)是类i∈{1,…,m}的后验概率,而p1(c|x)是给定的输入x的最高后验概率。

后验概率的归一化差

在本公开的一些方面,最高分类后验概率和次高分类后验概率之间的归一化差可被用作置信度量。基于归一化后验概率差的置信度量可被表达为:

其中m是类的总数,p(ci|x)是类i∈{1,…,m}的后验概率,p1(c|x)是给定输入x的最高后验概率,以及p2(c|x)是给定输入x的次高后验概率。

置信度阈值

在所提出的方案中,使用置信度量来确定当前的复杂度是否足够,或者通过将该值与置信阈值cτ比较来确定是否应增加(或降低)复杂度。因此,增加该网络的复杂度的决定是基于下式是否为真:

c(p(c1|x),…,p(cm|x))≤cτ

换言之,如果该置信度量超过了阈值cτ,则该网络的复杂度是足够的并且不增加。

组合置信度量

上文描述的置信度量并不互斥。可采用两个或更多个置信度或其他度量的组合,使得当满足组合中的每个度量时,增加该网络的复杂度。在一个示例中,不增加该分类器的复杂度,除非最高后验概率和后验概率的归一化差都低于它们各自的阈值。

分类器的复杂度

基于深度卷积网络(dcn)的分类器复杂度可通过多种方式来增加。可改变dcn内的参数数目以增加复杂度,或可改变架构本身。

具有层次的示例性分类器(例如,图7的分类器)的复杂度可被更新。此处提供的修改不旨在成为穷尽性列表,而是要提供用于展示提议的解决方案的基础。

增加卷积层的数量

dcn的卷积层将其输入与一组卷积层执行空间卷积。该卷积操作生成由分类层最终使用的特征。增加卷积层的数量可增加在dcn中发生的特征提取的数量,并因此可增加可由分类层使用的信息量。然而,卷积数量的增加可能显著地增加在网络中执行的计算数量。

增加卷积滤波器的数量

在dcn的每个卷积层中,使用数个不同的滤波器来执行多个卷积。增大该参数(即卷积滤波器的数量)可能导致在卷积期间使用更多的滤波器,并且因此导致总体要计算更多的卷积。计算更多的卷积进而可增加可由dcn产生的特征的数量,并因此可增加分类期间可使用的信息量。然而,计算更多的卷积也可能显著地增加由网络执行的计算数量。

减小卷积层的步长

当在卷积层中执行空间卷积时,步长定义了在计算每个卷积时在输入的x和y维度上将跳过多少值。减小卷积滤波器的步长可能会导致跳过更少的值,并且计算更多的卷积。如此,可增加卷积滤波器对输入的覆盖。因此,可同样地增加传递到dcn中的下一层的信息量。然而,增加的传递信息量也可能显著地增加由网络执行的计算总数。

减少池化层的数量

在dcn中的另外两层之间包括池化层减少了从先前层传递到后续层的值的数量(例如,子采样)。减少池化层的数量可减少网络中出现的子采样量,并因此可保留更多的信息。然而,由于可将更多的值传递给后续层,因此可能执行更多的计算。

减小池化窗口的大小

在每个池化层内,池化窗口的大小确定了可被应用池化操作(例如,子采样)的值的数量。减小池化窗口的大小可导致更少的值被包含在操作中。随着执行较少的池化,较少的数据可被子采样,并且较多的信息可被保留并被传递到dcn中的下一层。池化层中丢失的信息量会减少,但执行的计算数量会增加。

增加全连通层的数量

dcn的全连通层组合由先前层生成的特征。增加全连通层的数量增加了特征组合的数量,并因此增加了可由分类层使用的信息量。然而,全连通层极大地增加了由dcn执行的计算数量。

增大全连通层的大小

dcn中每个全连通层的大小确定了可用于分类的特征的数量。增大全连通层的大小增加了特征的数量,并因此增加了可由分类层使用的信息量。然而,增大全连通层的大小极大地增加了由dcn执行的计算数量。

分类器的选择

一组具有渐增复杂度的分类器可预先用于系统。当每个分类发生时,可计算置信度量并将其与一阈值进行比较。如果不超过阈值,则选择下一最复杂的分类器。另一方面,如果该置信度量高于第二阈值,则可选择较不复杂的分类器(例如,默认分类器)。

分类器的修改

在一些方面,具有可配置复杂度的单个分类器(如上所述)可预先用于系统。当每个分类发生时,可计算置信度量并将其与一阈值进行比较。如果该置信度量不超过阈值,则可增加分类器的复杂度(例如,可修改分类器参数或架构)。

图7是解说了根据本公开的一些方面配置为分类器的示例性深度卷积网络(dcn)700的高级框图。dcn700可包括多层神经元,包括一个或多个卷积层、池化层、全连通层和分类层。在一些方面,可修改参数和/或架构(例如,数量、类型、层的大小、和/或层之间的互连)以调制dcn的计算复杂度。

图8是解说根据本公开的各方面的用于动态地更新分类器的示例性过程800的流程图。在框802,分类器可接收要分类的输入。进而,分类器可执行分类操作以将输入分类成一个或多个类别。在框804,计算置信度量。例如,如上所述,可基于后验概率来确定该置信度量。

如框806中所示,随后可将该置信度量与一阈值进行比较。当该置信度量低于阈值时,在框808,可选择较复杂的分类器并将其用于后续的分类操作。该较复杂的分类器可以是根据分类器复杂度而组织的一组预配置的分类器之一。在一些方面,可使用该较复杂的分类器来重复先前输入的分类。因此,针对先前的输入,可获得较准确的分类。

另一方面,如果该置信度量高于阈值,则可维持分类器的复杂度并且可将其用于执行后续的分类操作。此后,可重复该过程。

在一些方面,可将置信度量与附加的阈值进行比较。当置信度量高于附加阈值时,可选择较不复杂的分类器。例如,当置信度量在所执行的分类中指示99%置信度或更多时,可使用较不复杂的分类器(例如,默认分类器)来执行后续分类操作。如此,可以减少计算复杂度和功耗。

图9是解说根据本公开的各方面的用于动态地更新分类器的示例性过程900的流程图。在框902,分类器可接收要分类的输入。进而,该分类器可执行分类操作以将输入分类成一个或多个类别。在框904,计算置信度量。例如,如上所述,可基于后验概率来确定置信度量。

如框906所示,随后可将该置信度量与一阈值进行比较。如框908所示,当置信度量低于阈值时,分类器的复杂性可被更新,例如通过修改分类器的参数和/或分类器的架构。此后,所得到的经更新的分类器可用于执行后续的分类操作。在一些方面,可使用经更新的分类器来重复先前输入的分类。因此,针对先前的输入,可获得较准确的分类。

另一方面,如果该置信度量高于阈值,则可维持分类器的复杂度并且可将其用于执行后续的分类操作。此后,可重复该过程。

图10解说了用于配置分类器的方法1000。在框1002,该过程操作分类器以对输入进行分类。在框1004,该过程基于输入的分类来确定置信度量。在一些方面,可基于后验概率来确定置信度量。

此外,在框1006,该过程基于置信度量来动态地更新分类器的复杂度。在一些方面,当该置信度量低于阈值时,分类器的复杂度可被增加。增加复杂度可以例如包括增加分类器的参数的数量、改变分类器现有参数的值、改变分类器的架构或其组合。

在另一示例中,还可以通过改变分类器的架构来增加复杂度。例如,可通过增加分类器的卷积层的数量、减少一个或多个卷积滤波器的步长、通过添加池化层或全连通层,或者通过调整卷积层或池化层的大小来改变架构。

在一些方面,当置信度量高于第二阈值时,可通过降低分类器的复杂度来动态地更新分类器。例如,可为下一分类操作指定默认网络。

以上所描述的方法的各种操作可由能够执行相应功能的任何合适的装置来执行。这些装置可包括各种硬件和/或(诸)软件组件和/或(诸)模块,包括但不限于电路、专用集成电路(asic)、或处理器。一般而言,在附图中有解说的操作的场合,那些操作可具有带相似编号的相应配对装置加功能组件。

如本文所使用的,术语“确定”涵盖各种各样的动作。例如,“确定”可包括演算、计算、处理、推导、研究、查找(例如,在表、数据库或其他数据结构中查找)、探知及诸如此类。另外,“确定”可包括接收(例如接收信息)、访问(例如访问存储器中的数据)、及类似动作。而且,“确定”可包括解析、选择、选取、确立及类似动作。

如本文中所使用的,引述一列项目中的“至少一个”的短语是指这些项目的任何组合,包括单个成员。作为示例,“a、b或c中的至少一个”旨在涵盖:a、b、c、a-b、a-c、b-c、以及a-b-c。

结合本公开所描述的各种解说性逻辑框、模块、以及电路可用设计成执行本文所描述功能的通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列信号(fpga)或其他可编程逻辑器件(pld)、分立的门或晶体管逻辑、分立的硬件组件或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何市售的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如dsp与微处理器的组合、多个微处理器、与dsp核心协同的一个或多个微处理器、或任何其它此类配置。

结合本公开描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中实施。软件模块可驻留在本领域所知的任何形式的存储介质中。可使用的存储介质的一些示例包括随机存取存储器(ram)、只读存储器(rom)、闪存、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、寄存器、硬盘、可移动盘、cd-rom,等等。软件模块可包括单条指令、或许多条指令,且可分布在若干不同的代码段上,分布在不同的程序间以及跨多个存储介质分布。存储介质可被耦合到处理器以使得该处理器能从/向该存储介质读写信息。在替换方案中,存储介质可以被整合到处理器。

本文所公开的方法包括用于达成所描述的方法的一个或多个步骤或动作。这些方法步骤和/或动作可以彼此互换而不会脱离权利要求的范围。换言之,除非指定了步骤或动作的特定次序,否则具体步骤和/或动作的次序和/或使用可以改动而不会脱离权利要求的范围。

所描述的功能可在硬件、软件、固件或其任何组合中实现。如果以硬件实现,则示例硬件配置可包括设备中的处理系统。处理系统可以用总线架构来实现。取决于处理系统的具体应用和整体设计约束,总线可包括任何数目的互连总线和桥接器。总线可将包括处理器、机器可读介质、以及总线接口的各种电路链接在一起。总线接口可用于尤其将网络适配器等经由总线连接至处理系统。网络适配器可用于实现信号处理功能。对于某些方面,用户接口(例如,按键板、显示器、鼠标、操纵杆,等等)也可以被连接到总线。总线还可以链接各种其他电路,诸如定时源、外围设备、稳压器、功率管理电路以及类似电路,它们在本领域中是众所周知的,因此将不再进一步描述。

处理器可负责管理总线和一般处理,包括执行存储在机器可读介质上的软件。处理器可用一个或多个通用和/或专用处理器来实现。示例包括微处理器、微控制器、dsp处理器、以及其他能执行软件的电路系统。软件应当被宽泛地解释成意指指令、数据、或其任何组合,无论是被称作软件、固件、中间件、微代码、硬件描述语言、或其他。作为示例,机器可读介质可包括随机存取存储器(ram)、闪存、只读存储器(rom)、可编程只读存储器(prom)、可擦式可编程只读存储器(eprom)、电可擦式可编程只读存储器(eeprom)、寄存器、磁盘、光盘、硬驱动器、或者任何其他合适的存储介质、或其任何组合。机器可读介质可被实施在计算机程序产品中。该计算机程序产品可以包括包装材料。

在硬件实现中,机器可读介质可以是处理系统中与处理器分开的一部分。然而,如本领域技术人员将容易领会的,机器可读介质或其任何部分可在处理系统外部。作为示例,机器可读介质可包括传输线、由数据调制的载波、和/或与设备分开的计算机产品,所有这些都可由处理器通过总线接口来访问。替换地或补充地,机器可读介质或其任何部分可被集成到处理器中,诸如高速缓存和/或通用寄存器文件可能就是这种情形。虽然所讨论的各种组件可被描述为具有特定位置,诸如局部组件,但它们也可按各种方式来配置,诸如某些组件被配置成分布式计算系统的一部分。

处理系统可以被配置为通用处理系统,该通用处理系统具有一个或多个提供处理器功能性的微处理器、以及提供机器可读介质中的至少一部分的外部存储器,它们都通过外部总线架构与其他支持电路系统链接在一起。替换地,该处理系统可以包括一个或多个神经元形态处理器以用于实现本文所述的神经元模型和神经系统模型。作为另一替换方案,处理系统可以用带有集成在单块芯片中的处理器、总线接口、用户接口、支持电路系统、和至少一部分机器可读介质的专用集成电路(asic)来实现,或者用一个或多个现场可编程门阵列(fpga)、可编程逻辑器件(pld)、控制器、状态机、门控逻辑、分立硬件组件、或者任何其他合适的电路系统、或者能执行本公开通篇所描述的各种功能性的电路的任何组合来实现。取决于具体应用和加诸于整体系统上的总设计约束,本领域技术人员将认识到如何最佳地实现关于处理系统所描述的功能性。

机器可读介质可包括数个软件模块。这些软件模块包括当由处理器执行时使处理系统执行各种功能的指令。这些软件模块可包括传送模块和接收模块。每个软件模块可以驻留在单个存储设备中或者跨多个存储设备分布。作为示例,当触发事件发生时,可以从硬驱动器中将软件模块加载到ram中。在软件模块执行期间,处理器可以将一些指令加载到高速缓存中以提高访问速度。随后可将一个或多个高速缓存行加载到通用寄存器文件中以供处理器执行。在以下述及软件模块的功能性时,将理解此类功能性是在处理器执行来自该软件模块的指令时由该处理器来实现的。此外,应领会,本公开的各方面产生对处理器、计算机、机器或实现此类方面的其它系统的机能的改进。

如果以软件实现,则各功能可作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,这些介质包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括ram、rom、eeprom、cd-rom或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。另外,任何连接也被正当地称为计算机可读介质。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(cd)、激光碟、光碟、数字多用碟(dvd)、软盘、和蓝光碟,其中盘(disk)常常磁性地再现数据,而碟(disc)用激光来光学地再现数据。因此,在一些方面,计算机可读介质可包括非瞬态计算机可读介质(例如,有形介质)。另外,对于其他方面,计算机可读介质可包括瞬态计算机可读介质(例如,信号)。上述的组合应当也被包括在计算机可读介质的范围内。

因此,某些方面可包括用于执行本文中给出的操作的计算机程序产品。例如,此类计算机程序产品可包括其上存储(和/或编码)有指令的计算机可读介质,这些指令能由一个或多个处理器执行以执行本文中所描述的操作。对于某些方面,计算机程序产品可包括包装材料。

此外,应当领会,用于执行本文中所描述的方法和技术的模块和/或其它恰适装置能由用户终端和/或基站在适用的场合下载和/或以其他方式获得。例如,此类设备能被耦合至服务器以促成用于执行本文中所描述的方法的装置的转移。替换地,本文所述的各种方法能经由存储装置(例如,ram、rom、诸如压缩碟(cd)或软盘等物理存储介质等)来提供,以使得一旦将该存储装置耦合至或提供给用户终端和/或基站,该设备就能获得各种方法。此外,可利用适于向设备提供本文所描述的方法和技术的任何其他合适的技术。

将理解,权利要求并不被限定于以上所解说的精确配置和组件。可在以上所描述的方法和装置的布局、操作和细节上作出各种改动、更换和变形而不会脱离权利要求的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1