CN115605922A - 自适应运行时高效图像分类的输入图像大小可切换网络 - Google Patents

自适应运行时高效图像分类的输入图像大小可切换网络 Download PDF

Info

Publication number
CN115605922A
CN115605922A CN202080100924.2A CN202080100924A CN115605922A CN 115605922 A CN115605922 A CN 115605922A CN 202080100924 A CN202080100924 A CN 202080100924A CN 115605922 A CN115605922 A CN 115605922A
Authority
CN
China
Prior art keywords
image
parameters
training
normalization
neural network
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
Application number
CN202080100924.2A
Other languages
English (en)
Inventor
姚安邦
王一凯
陆鸣
王山东
陈�峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN115605922A publication Critical patent/CN115605922A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/32Normalisation of the pattern dimensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing 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/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Image Analysis (AREA)

Abstract

论述了与实现和训练图像分类网络有关的技术。这种技术包括在不考虑分辨率的情况下向输入图像应用共享卷积层,并且基于输入图像分辨率选择性地应用正规化。这种技术还包括使用混合图像大小并行训练和混合图像大小集总提炼进行训练。

Description

自适应运行时高效图像分类的输入图像大小可切换网络
背景技术
深度卷积神经网络(Convolutional Neural Network,CNN)被用于各种图像分类应用中。虽然CNN体系结构在准确性改善方面取得了进展,但表现优异的CNN模型的密集存储器存储、计算和能量成本限制了它们在资源约束型设备上的部署,尤其是在实时应用中。通常,对于多图像大小实现,为每个目标图像大小训练个体CNN模型,要训练和保存的模型的总数与在运行时要考虑的目标图像大小的数目成比例。如果不为每个目标图像大小训练个体CNN模型,那么如果将用特定图像大小训练的模型应用到其他大小的图像,则模型的准确性会劣化。因此,需要为每个目标图像大小存储模型,这带来了高存储器存储成本。除了高存储器存储成本以外,每次图像大小调整都必须伴随着额外的延迟,以为不同CNN模型卸载和加载各自的模型参数,尤其是对于云计算应用场景。在这种多模型的场景中,当前的技术尝试通过调整网络的结构配置(例如,调整网络深度、宽度和构建块)、修剪预训练模型的冗余参数、过滤器和通道、使用量化的低精度CNN模型而不是全精度的对应物、转移大型强大模型的知识以改善目标更小型学生模型、以及将大型模型拆分成若干个更小型模型,来实现CNN模型的准确性-效率折衷。
对于图像分类应用,对存储器、计算和能量效率高的CNN模型存在着持续的需求。正是考虑到这些和其他考虑事项,所以需要本改进。随着CNN模型在各种情境尤其是资源约束型设备中的实现变得更普遍,这种改进可变得关键。
附图说明
在附图中以示例的方式而不是限制的方式图示了本文描述的素材。为了图示的简单和清晰,附图中图示的元素不一定是按比例绘制的。例如,为了清晰,一些元素的尺寸相对于其他元素可被夸大。另外,在认为适当时,在附图之间重复附图标记以指示出对应的或相似的元素。在附图中:
图1图示了示例可切换网络,来在网络训练阶段中为不同分辨率的输入图像提供对象标签;
图2是图示了用于训练可切换网络的示例过程的流程图;
图3图示了在实现阶段中为不同分辨率的输入图像提供对象标签的示例可切换网络;
图4是图示了用于使用可切换网络为不同分辨率的输入图像生成标签的示例过程的流程图;
图5是图示了用于执行图像分类的示例过程的流程图;
图6是用于执行图像分类的示例系统的说明图;
图7是示例系统的说明图;并且
图8图示了全都根据本公开的至少一些实现方式安排的示例小外形参数设备。
具体实施方式
现在参考附图来描述一个或多个实施例或实现方式。虽然论述了具体的配置和安排,但应当理解这么做只是为了说明。相关领域的技术人员将会认识到,在不脱离描述的精神和范围的情况下,可以采用其他配置和安排。相关领域的技术人员将会清楚,本文描述的技术和/或安排也可被用在与本文所述不同的各种其他系统和应用中。
虽然接下来的描述阐述了例如可在诸如片上系统(system-on-a-chip,SoC)体系结构之类的体系结构中显现的各种实现方式,但本文描述的技术和/或安排的实现方式不限于特定的体系结构和/或计算系统,而是可由任何体系结构和/或计算系统为类似的目的而实现。例如,采用例如多个集成电路(integrated circuit,IC)芯片和/或封装的各种体系结构和/或诸如多功能设备、平板设备、智能电话等等之类的各种计算设备和/或消费电子(consumer electronic,CE)设备可实现本文描述的技术和/或安排。另外,虽然接下来的描述可阐述许多具体细节,例如逻辑实现方式、系统组件的类型和相互关系、逻辑分区/集成选择等等,但可在没有这种具体细节的情况下实现要求保护的主题。在其他情况中,可能没有详细示出一些素材,例如控制结构和完整软件指令序列,以免模糊本文公开的素材。
可以用硬件、固件、软件或者其任意组合来实现本文公开的素材。本文公开的素材也可被实现为存储在机器可读介质上的指令,这些指令可被一个或多个处理器读取和执行。机器可读介质可包括用于以机器(例如,计算设备)可读的形式存储或传输信息的任何介质和/或机制。例如,机器可读介质可包括只读存储器(read only memory,ROM);随机访问存储器(random access memory,RAM);磁盘存储介质;光存储介质;闪存设备;电的、光的、声的或者其他形式的传播信号(例如,载波、红外信号、数字信号,等等),以及其他。
说明书中提及“一个实现方式”、“一实现方式”、“一示例实现方式”或者示例或者实施例等等指示的是描述的实现方式可包括特定的特征、结构或特性,但可能不一定每个实施例都包括该特定特征、结构或特性。此外,这种短语不一定指同一实现方式。另外,当联系一实施例来描述特定的特征、结构或特性时,认为联系其他实现方式(无论本文是否明确描述)来实现这种特征、结构或特性,是在本领域技术人员的知识范围内的。
本文描述了与用于自适应运行时高效图像分类的输入图像大小可切换网络有关的方法、设备、装置、计算平台和物品,以使得网络应用所有图像大小共享的卷积层和完全连接层参数,以及基于被自适应采用的输入图像大小的非共享正规化参数。
如上所述,希望在不同大小(例如,分辨率)的输入图像上执行图像分类或者其他图像处理任务。如本文所使用的,可互换使用的术语“分辨率”或“大小”指的是图像的以像素为单位的宽度乘高度,其中更大的分辨率在水平维度、垂直维度或者这两个维度上包括更大数目的像素。由此产生的图像分类标签或者其他图像处理输出可以被用于各种情境中。这种图像分类可包括对象识别、标识或者检测。虽然为了清晰起见,本文是针对图像分类进行论述的,但所论述的技术可被用于其他图像处理情境中,例如图像超分辨率、图像锐度增强、图像分割,等等。
在一些实施例中,可切换网络具有限定的体系结构,其包括任意数目的共享卷积层,其中一些或所有卷积层后面是非共享或互斥(exclusive)的正规化层。如本文所使用的,关于卷积层、完全连接层或者其他网络模块的术语“共享”指的是该层或模块应用相同的(即,共享的)参数,无论提供给网络的输入图像大小如何。针对正规化层(或者其变体,比如层正规化、群组正规化,等等)或者其他网络模块应用的可互换使用的术语“非共享”或“互斥”指的是该层或模块基于提供给网络的输入图像大小而应用不同的(即,非共享的)参数。例如,第一正规化参数被应用于第一输入图像分辨率,并且第二正规化参数被应用于第二输入图像分辨率,从而第一和第二参数是互斥(即,不同)的。
返回到对可切换网络的论述,在应用最后的正规化层(采用取决于输入图像分辨率的参数)之后,可以应用非共享的全局平均池化层和随后的共享完全连接层来为输入图像生成一个标签或者若干个标签(以及相应的概率)。例如,可以输出与最高概率标签相对应的单个标签(例如,杯子、狗,等等),或者可以提供每个可用标签的一些(例如,五个最可能的)或者所有的概率作为输出。可切换网络可包括任意数目的共享卷积层、非共享正规化层、以及其他层。在一些实施例中,可以不采用非共享的全局平均池化层和共享的完全连接层,并且可以从网络提供特征图谱或者输出图像。值得注意的是,全局平均池化操作在每个特征图谱(例如,通道,其中每个像素/分量对平均输出具有相同贡献)上输出单个平均值。从这个角度来看,由于来自最后一层的特征图谱的大小对于不同的输入图像发生变化,所以它是不共享的。
可切换网络可以被采用来处理任意数目的输入图像大小,其中共享层对于所有输入图像大小具有共享参数,并且为每个互斥层提供互斥参数。例如,给定对于五个图像大小(例如,224x224、192x192、160x160、128x128和96x96)的实现方式,每个共享层(例如,每个卷积层和完全连接层)具有一组参数,而每个非共享层(例如,每个正规化层和每个全局平均池化层)响应于输入图像的大小应用不同的参数集和/或不同的操作。这种技术节省了总存储要求(因为正规化参数通常占网络参数总数的1%以下)和针对输入图像大小进行切换的延时。
此外,可切换网络可具有任何体系结构或卷积神经网络(CNN)骨干,以使得所采用的元素或模块至少部分地对于卷积层和/或完全连接层利用共享参数并且对于正规化层、(一个或多个)全局平均池化层和/或其他层利用非共享参数。如本文所使用的,术语“CNN”包括采用一个或多个卷积层作为网络的一部分的任何网络。术语“卷积层”指的是采用若干个卷积过滤器并且可选地包括RELU层或池化层的层。给定所选择的可切换网络体系结构或者CNN骨干,单个模型被训练出来,它可以在运行时处置不同的输入图像大小,与单独训练的模型相比,准确性有所改善。此外,所论述的技术可以与其他用于减小CNN模型大小和/或改善CNN模型的技术结合使用,例如线性提升、量化技术和修剪技术。
图1图示了根据本公开的至少一些实现方式安排的示例可切换网络100,用于在网络训练阶段中为不同分辨率的输入图像提供对象标签。如图1所示,可切换网络100包括共享卷积层111、采用互斥批量正规化模块112、113、114的非共享批量正规化层、共享卷积层115、采用互斥批量正规化模块116、117、118的非共享批量正规化层、采用互斥全局平均池化模块119、120、121的非共享全局平均池化层、以及共享完全连接层122。在网络训练阶段中,这些层和模块被训练,以提供最终的参数,用于在网络实现阶段中部署,如关于图3所论述,来为不同分辨率的输入图像生成对象标签。这种训练至少部分是基于分对数(logit)123、124、125、分对数重要性得分126、127、128、集总分对数(ensemble logit)129、集总预测130和预测131、132、133来执行的,从而使得所产生的集总预测130和预测131、132、133被与地面实况标签134进行比较。在实现阶段期间,这样的训练组件被从可切换网络100中丢弃。
如图1所示,在共享卷积层115和可切换网络100的其余部分之前,可以提供任意数目的共享卷积层和采用互斥批量正规化模块的相应非共享批量正规化层。例如,在可切换网络100中可包括任意数目的共享卷积层和相应非共享批量正规化层的配对。此外,卷积层的卷积过滤器的数目、过滤器大小等等以及批量正规化技术可包括任何适当的特性。虽然在一些情境中针对批量正规化情况进行了论述和图示,但替代性地,可以使用非共享正规化参数来应用层正规化、群组正规化或者其他正规化处理。如本文所使用的,术语“正规化”指的是使用相应的非共享正规化参数执行的任何这种处理。采用互斥全局平均池化模块119、120、121的非共享全局平均池化层和共享完全连接层122可具有任何适当的特性。共享卷积层的输出以及所选择的批量正规化模块和全局平均池化模块(例如,基于图像输入大小)的输出被表征为特征图谱。在每一层,可以使用任何分辨率的任意数目的特征图谱(即,对应于卷积过滤器的数目)。类似地,共享完全连接层122的输出可以被表征为概率或得分之类的,并且取决于输出节点,指示出输入图像包括指派给该节点的标签的图像的概率或可能性。在一些实施例中,所有节点的概率或可能性的总和为一。
可切换网络100,无论是在训练中还是在实现中,可以经由任何适当的设备来实现,例如个人计算机、膝上型计算机、平板设备、平板手机、智能电话、数字相机、游戏机、可穿戴设备、显示设备、一体化设备、二合一设备,等等。例如,可切换网络100可以提供图像人工智能处理管线的至少一部分,该管线可以在硬件、软件或者其组合中实现。在一些实施例中,可切换网络100在实现阶段中被用硬件实现为片上系统(system-on-a-chip,SoC)。在一些实施例中,SoC被采用为单片集成电路(integrated circuit,IC)。如本文所使用的,术语“单片”指的是一器件与其他器件分立,虽然其可为了通信和电力供应而耦合到其他器件。
图2图示了根据本公开的至少一些实现方式安排的用于训练可切换网络的示例过程200的流程图。过程200可包括如图2中所示的一个或多个操作201-210。过程200或者其一些部分可以由本文论述的任何设备或系统执行来训练可切换网络100。
可切换网络100的训练提供了用于切换输入图像大小的运行时高效网络,其可被表征为输入大小可切换网络(IS-Net)。提供任何可切换网络100体系结构或CNN骨干,在一些实施例中,训练包括三个成分。首先,提供混合大小(即,混合图像大小)的并行训练框架,以使得具有不同大小的输入训练图像在单个模型中被训练。第二,由于不同的训练图像大小导致网络中的不同的激活统计,为了解决训练期间的混合大小交互效应(例如,不平衡的性能),卷积网络参数是共享的,但对于每个输入图像大小不共享按层正规化参数。第三,为了去除混合大小交互效应并且提升模型在不同图像大小上的性能,在训练期间,基于具有不同图像大小的相同图像实例(例如,不同分辨率的相同训练图像内容),即时执行混合大小集总提炼。如本文所使用的,术语“图像实例”指的是特定视图、对象等等的源图像,该图像被用来生成不同分辨率的多个训练图像。例如,多个训练图像包括图像实例的随机裁剪区域(或者图像实例的整体)的处于不同分辨率的相同影像。在训练之后,所产生的可切换网络100,在实现中,允许在不同的输入图像大小之间切换,并且与用相应图像大小训练的个体模型相比,显示出改善的性能。
过程200开始于操作201,在该操作中生成具有不同分辨率的训练图像的训练集。训练图像实例可包括任意数目(例如,数千)的图像实例(即,图像),其中包括将由网络检测的对象以及没有这种对象的图像实例。此外,每个训练图像实例具有相应的用于图像训练的地面实况对象标签。例如,第一训练图像实例可具有杯子的图像和相应的地面实况标签“杯子”,第二训练图像实例可具有勺子的图像和相应的地面实况标签“勺子”,等等依此类推。然后,每个训练图像实例被随机裁剪,并且裁剪的部分被调整大小到与训练图像实例相对应的任意数目的训练图像。例如,获得一组训练图像(即,图像实例),并且每个图像实例或模板之类的被裁剪并且被调整大小到与要采用可切换网络的图像大小相对应的若干个固定大小训练图像。例如,如果要在五种图像大小(例如,224x224、192x192、160x160、128x128和96x96)下采用网络,则训练图像实例的每个裁剪部分被调整大小到这五种图像大小,以提供五个训练图像和一个相应的地面实况标签。
参考图1,每个训练图像实例101可以被使用限界框141进行裁剪,并且被调整大小到具有不同分辨率的任意数目的训练图像102、103、104,以使得训练图像102比训练图像103具有更大的分辨率,训练图像103比任何居间的训练图像具有更大的分辨率,等等依此类推,直到最低分辨率训练图像104为止。例如,如图所示,可以实现S个图像分辨率,每个分辨率1,2,...,S随着索引值增大而减小。在一些实施例中,每个训练图像实例101被裁剪并且被调整大小到若干个(即,S个)固定大小的样本,xi。在一些实施例中,训练集被表示为{(xi,yi)|i∈{1,2,…,N}},其中yi是属于C个类别之一的标签,并且N是训练图像实例的数目。
这样的训练图像102、103、104被提供给可切换网络100。值得注意的是,训练图像102经由以下的层和模块的应用而穿越可切换网络100:共享卷积层111(即,共享卷积层111被应用到任何输入图像,而不考虑分辨率)、互斥批量正规化模块112(即,批量正规化模块112只被应用到具有批量正规化模块112的分辨率的输入图像)、任意数目的共享卷积层/互斥批量正规化模块对、共享卷积层115、互斥批量正规化模块116、互斥全局平均池化模块119、以及共享完全连接层122(其输出被用于生成分对数123)、以及最终的预测131。类似地,训练图像103经由以下的层和模块的应用而穿越可切换网络100:共享卷积层111、互斥批量正规化模块113、任意数目的共享卷积层/互斥批量正规化模块对、共享卷积层115、互斥批量正规化模块117、互斥全局平均池化模块120、以及共享完全连接层122(其输出被用于生成分对数124)、以及最终的预测132,等等依此类推,从而使得,如图所示,训练图像104经由以下的层和模块的应用而穿越可切换网络100:共享卷积层111、互斥批量正规化模块114、任意数目的共享卷积层/互斥批量正规化模块对、共享卷积层115、互斥批量正规化模块118、互斥全局平均池化模块121、以及共享完全连接层122(其输出被用于生成分对数125)、以及最终的预测133。
从而,在训练期间,可切换网络100被应用到处于多个分辨率的同一训练图像实例101,如经由训练图像102、103、104所示,以生成不同的所得结果。这种对于同一训练图像实例的不同分辨率的所得结果被利用来改善可切换网络100的训练。
返回到图2,处理在操作202处继续,在该操作中,给定网络配置(例如,网络体系结构或CNN骨干),例如具有参数θ的可切换网络100,网络被初始化以进行训练。可以使用任何一个或多个适当的技术来初始化网络参数,例如特定范围内的随机化之类的。
一般而言,给定网络参数θ,类别c的预测概率被表示为p(c|xi,θ)。在训练中,可以用交叉熵损失来优化网络(例如,网络模型),如公式(1)中所示:
Figure BDA0003944750440000091
其中δ(c,yi)在c=yi时等于1,否则等于0。
在一些实施例中,采用混合大小并行训练框架来训练可切换网络100。如前所述,每个训练图像实例被裁剪和调整大小(例如,随机裁剪和调整大小到可切换网络100要实现的分辨率)。假设S图像大小,其可以是任何适当的值,例如4、5或者更大(例如,S={224x224,192x192,160x160,128x128,和96x96}),则混合大小训练集可以被表征为如表达式(2)中所示:
Figure BDA0003944750440000092
其中,每个训练图像实例xi的大小为每个可用的图像大小(例如,1,2,…,S),并且不同分辨率的一组调整大小后的训练图像具有相应的地面实况标签,yi
处理在操作203处继续,在该操作中,网络(在第一个或随后的训练迭代)被应用到训练图像实例的至少一个子集。也就是说,基于当前网络参数,网络被应用到不同分辨率的训练图像集,从而使得每个集合对应于一个图像实例并且具有相应的地面实况标签。从而,执行可切换网络100的混合大小并行训练。例如,在操作203,对于任意数目的图像实例,网络被并行地应用到图像实例的每个图像分辨率,并且所产生的每个分辨率的输出被用于调整可切换网络100的参数。值得注意的是,在每个训练迭代中,网络被应用,损失项被定义,参数被调整,等等依此类推,直到训练完成为止。这样的训练迭代可以被应用到所有的训练图像,或者只是分批应用到它们中的一些,等等。例如,这种训练迭代可以在特定的迭代次数中使用相同的训练图像,改变训练图像或者其批次,等等依此类推,随着训练进展,返回到这种训练图像或者批次。在任何情况下,可切换网络100被并行地应用到多个分辨率的训练图像,损失项被定义和评估,参数被调整,损失项被评估,等等依此类推,直到收敛(例如,误差低于目标或者达到特定数目的训练迭代或轮次)为止。
在一些实施例中,参考图1,用于共享卷积层111、115(以及任何额外的卷积层)的共享卷积层参数、用于每个批量正规化模块112、113、114、116、117、118(以及任何额外的非共享批量正规化模块)的非共享批量正规化参数、用于每个全局平均池化模块119、120、121的非共享全局平均池参数以及用于共享完全连接层122的共享完全连接层参数,合起来就是预训练的卷积神经网络参数θ,如针对图2所论述的那样被训练。
处理在操作204处继续,在该操作中,基于使用不同分辨率的训练图像生成的预测的交叉熵损失之和的损失项被定义和评估。在一些实施例中,要优化(部分优化)的混合大小训练的损失项(或者函数)被定义为如下所示。例如,损失函数可包括一个或多个损失项,从而使得损失函数(例如,整体损失函数)在迭代中被最小化,以训练网络。这里,每个损失项可以被独立地用于训练网络,或者与其他损失项结合使用。在一些实施例中,分类损失项被定义为交叉熵损失的总和,如公式(3)中所示:
Figure BDA0003944750440000101
其中
Figure BDA0003944750440000102
是分类损失项,它对公式(1)中定义的交叉熵损失的每个图像大小(分辨率)的损失求和。如图所示,所有图像大小(即,1,2,…,S)对最小化最终单个模型的联合目标有同等的贡献。例如,如图1所示,与输入训练图像102相对应的预测131,p1,被与相应的地面实况标签进行比较(即,使用交叉熵损失技术),与输入训练图像103相对应的预测132,p2,被与相应的地面实况标签进行比较,等等依此类推,与输入训练图像104相对应的预测133,pS,被与相应的地面实况标签进行比较。这样的交叉熵损失在所有可用的分辨率上被求和,以提供混合大小的并行训练。
如下所述,网络参数在过程200中被更新和完善,并且最终被部署。值得注意的是,作为训练的一部分,对于公式(3)所示出的损失项或函数可以被最小化。如上所述,可切换网络100可具有任何适当的体系结构,包括卷积层(conv)层/块、批量正规化层、全局平均池化层、以及全连接(fully connected,FC)层。在一些实施例中,当输入图像具有不同的大小时,所有卷积层的相应特征图谱在空间大小上也会有所不同。由于全局平均池化层,特征被变换到统一的空间维度(例如,1x1),通道数目相等,使得其后有可能是共享完全连接层122。
在所论述的并行训练期间,共享卷积层111、115和共享完全连接层122的参数如上所述被共享和应用,无论输入图像大小如何。从而,在单个网络中实现了对于多种图像大小的训练。此外,调整图像大小会导致网络中不同的激活统计,包括在批量正规化(batchnormalization,BN)及其变体中使用的均值和方差(例如,参数)。在混合大小并行训练期间,这样的批量正规化参数对于每个图像大小而言都是非共享的或者互斥的(或者私有化的)。
因此,在可切换网络100的训练迭代中,预训练的卷积神经网络参数被并行调整(或者更新),在一些实施例中,这使用了整体损失(如下文进一步论述),其包括如公式(3)中定义的分类损失项
Figure BDA0003944750440000111
该损失项包括并行使用第一分辨率和第二分辨率的训练图像的交叉熵损失之和
Figure BDA0003944750440000112
在一些实施例中,可单独使用分类损失项
Figure BDA0003944750440000113
来训练可切换网络100。
此外,在可切换网络100的训练中,基于混合大小的变换(例如,参数的调整)可被视为数据增强。因此,首先,由于模型是基于更宽范围的图像大小来进行训练的(相对于只使用一种图像大小的训练而言),图像大小的设置是多样化的,因此混合大小并行训练倾向于为更大的图像大小(编码更丰富的信息)而不是更小的图像大小带来准确性增益。其次,基于大规模图像分类的特点,其中感兴趣的对象随机地占据了图像区域的不同部分,随机大小的裁剪增强策略在训练期间被使用,但不能被用于测试。这往往会使得最终的模型偏向于对较大的图像大小有更好的性能,而在小得多的图像大小上展现出更差的性能。
为了解决这样的问题,在训练期间采用了混合大小集总提炼(mixed-sizeensemble distillation,MED)技术。值得注意的是,对于经良好训练的模型,在较大的输入图像大小下测试的图像实例与对于同一图像实例的较小输入图像大小相比,并不总是对应于更好的预测。例如,测试表明,总是存在一定比例的样本,在小图像大小下被正确分类,但在另一个较大的图像大小下被错误地分类。这样的结果表明,不同图像大小下的模型预测是互补的,而较大的图像大小并不总是更好。因此,采用了一种即时教师(例如,在训练迭代时生成)来训练可切换网络100,以使得该教师是关于所有图像大小的预测的集总。此外,在训练中执行密集的集总知识提炼,以改善可切换网络100的整体性能。
处理在操作205处继续,在该操作,定义了集总预测,并且使用集总预测,定义了集总损失项。值得注意的是,参考图1,为了训练图像实例101,获得了多个预测,每个预测对应于训练图像102、103、104中的一个。作为多个预测的加权平均(例如,使用如下文论述的分对数重要性得分进行加权),集总预测被确定并且被用作多个预测中的每一者的即时教师。值得注意的是,加权平均集总预测是在训练期间经由可切换网络100即时生成的(而不是由另一个网络施加的)。然后,集总预测被用于使用多个预测中的每一者与集总预测的分歧来训练网络。如本文所使用的,术语“集总”指的是从群组确定实体,以使得该群组可以被视为整体而不是个体的。
在一些实施例中,在图像分类的训练过程期间,对于每个输入图像xi,使用softmax函数确定类别c的概率,如公式(4)中所示:
Figure BDA0003944750440000121
其中zi是分对数,是由网络输出的未正规化的对数概率,并且所有类别上的概率可以被表示为模型预测p。
如前所述,每个图像实例在训练期间被调整大小到S大小。然后,根据公式(4)生成S个相应的分对数(z1,z2,…,zS)。图1中图示了示范性分对数123、124、125。继续参考图1,经由实现softmax函数来学习一组重要性得分126、127、128,α=[α12,…αS],满足
Figure BDA0003944750440000131
然后,经由使用重要性得分加权的S分对数的加权和,生成集总分对数129,z0,如公式(5)中所示:
Figure BDA0003944750440000132
其中,z0是集总分对数129,它是与被应用到使用分对数重要性得分126、127、128来加权的每个训练图像102、103、104的预训练卷积神经网络参数相对应的分对数123、124、125的加权平均。在一些实施例中,当优化α时,分对数(z1,z2,…,zS)的梯度被暂时冻结。
使用集总分对数129,z0,如上所述使用公式(4)来确定被表征为集总预测130的相应预测,p0。值得注意的是,集总预测130,p0,是来自将可切换网络100(使用当前参数)应用到训练图像102、103、104的预测的组合。使用集总预测130,p0,和相对于训练集给出的标签之间的交叉熵损失,来优化重要性得分126、127、128、α。交叉熵损失被表征为集总损失项
Figure BDA0003944750440000133
并且如关于公式(6)所示被确定:
Figure BDA0003944750440000134
例如,损失函数可包括一个或多个损失项,从而使得损失函数(例如,整体损失函数)在迭代中被最小化,以训练网络。例如,集总损失项
Figure BDA0003944750440000135
可被用作损失函数的一部分,如下所述。如图所示,集总损失项
Figure BDA0003944750440000136
的最小化使得集总预测与训练中提供的地面实况的分歧最小化。
处理在操作206处继续,在该操作中,基于预测与在操作205生成的集总预测的分歧和/或预测与使用更大输入训练图像进行的预测的分歧来定义提炼损失项。参考图1,对于训练图像实例101,获得多个预测,每个预测对应于训练图像102、103、104之一。如前所述确定集总预测130,它是多个预测的加权平均(例如,如下所述,使用分对数重要性得分来加权)。如图所示,集总预测130被与由地面实况标签134提供的地面实况进行比较(例如,使用交叉熵技术),并且如关于公式(6)所示,其间的差异被最小化。
集总预测130也可被用作如图1所示的多个预测中的每一者的即时教师。例如,使用分对数123、124、125,生成相应的预测131、132、133,它们分别对应于输入训练图像102、103、104。如图所示,集总预测130与预测131、132、133中的每一者的分歧被用于可切换网络100的训练。值得注意的是,加权平均集总预测是在训练期间经由可切换网络100即时生成的(而不是由另一个网络施加的)。然后,集总预测130被用于使用多个预测131、132、133中的每一者与集总预测130的分歧来训练网络。如本文所使用的,术语“集总”指的是从群组确定实体,以使得该群组可以被视为整体而不是个体的。
额外地,或者作为替代,较高分辨率的训练图像的预测可被用作训练较低分辨率训练图像的参考,如关于级联141所示。例如,预测131(对应于最高分辨率的输入训练图像102)可被用于训练所有较低分辨率的预测132,…,133,预测132(对应于第二高分辨率的输入训练图像102)可被用于训练所有较低分辨率的预测,包括预测133,等等依此类推(这样,只有预测133不被用作参考)。这样的技术可以利用通常提供更好预测的更高分辨率输入训练图像。
例如,作为经由最小化(部分地)集总损失项(例如,集总预测与地面实况的分歧)进行训练的附加或替代,集总预测130可被用作为训练图像102、103、104(即,不同分辨率的训练图像)所作出的其他预测的即时教师。在一些实施例中,定义提炼损失项来寻求最小化每个预测与集总损失预测的分歧。
也就是说,在一些实施例中,在可切换网络100的训练中,不同图像大小的预测被强制模仿所学习的集总预测130。在一些实施例中,提炼损失
Figure BDA0003944750440000151
被确定为Kullback-Leibler(KL)分歧的总和,如公式(7)中所示:
Figure BDA0003944750440000152
在一些实施例中,为了定义提炼损失(例如,在知识提炼过程中),以量化教师预测pt和学生预测ps之间的一致性,使用公式(8):
Figure BDA0003944750440000153
这样,pt代表集总预测130,并且ps代表每个预测131、132、133。
额外地,或者作为替代,如前所述,在混合大小并行训练框架下,在大的输入训练图像大小下的预测的准确性往往比在更小的输入训练图像大小下的预测的准确性更好。在一些实施例中,通过提供从大图像大小的预测向小图像大小的预测的密集指导,可以进一步改善准确性。在一些实施例中,提炼损失
Figure BDA0003944750440000154
可被概括为如公式(9)中所示:
Figure BDA0003944750440000155
其中,索引t从0开始,指的是集总项。例如,公式(9)对集总预测130与每个预测131,132,…,133的分歧、预测131与每个预测132,…,133的分歧等等求和,这样,在一些实施例中,提炼损失
Figure BDA0003944750440000156
是集总预测与每个基于图像大小的预测的分歧以及每个基于图像大小的预测与具有较小分辨率的每个基于图像大小的预测的分歧的总和。术语“每个基于图像大小的预测”指的是通过将当前可切换网络参数应用到输入训练图像而生成的预测。
处理在操作206处继续,在该操作中,包括损失项之和的损失函数(即,整体损失函数)被最小化。整体损失函数可包括本文论述的任何损失项中的一个或多个。在一些实施例中,整体损失函数是分类损失项、集总损失项和提炼损失项的总和,没有任何额外的加权参数要调节,如公式(10)中所示。
Figure BDA0003944750440000161
其中,优化集总损失
Figure BDA0003944750440000162
只更新重要性得分126、127、128、α,所有网络权重都被冻结。值得注意的是,提炼损失项可以只包括预测131、132、133与集总预测130的分歧,或者它可以包括预测131、132、133与集总预测130的分歧以及预测131、132中的每一者与更高分辨率的那些预测的分歧。
处理在操作208处继续,在该操作中,基于关于可切换网络参数θ最小化所定义的整体损失函数,更新可切换网络参数θ和分对数重要性得分α。处理在判决操作209处继续,在该操作中,确定可切换网络的训练是否完成。这种确定可以使用任何一个或多个适当的技术来进行,例如将整体损失与阈值进行比较,执行特定数目的训练迭代,等等。
如果训练未完成,则处理在操作203处继续,如上所述,直到训练完成为止。当训练完成时,处理在操作210处继续,在该操作中,可切换网络参数θ被存储到存储器,以便在如本文所述的实现阶段中最终部署。此外,分对数重要性得分被丢弃,因为在实现中不需要。
图3图示了根据本公开的至少一些实现方式安排的在实现阶段中为不同分辨率的输入图像提供对象标签的可切换网络100。如图3所示,可切换网络100在第一时间实例300被实现,输入图像301处于第一分辨率,并且在第二时间实例330被实现,输入图像302处于大于第一分辨率的第二分辨率。如前所述,在实现阶段中,可切换网络100可经由任何适当的设备来实现,例如个人计算机、膝上型计算机、平板设备、平板手机、智能电话、数字相机、游戏机、可穿戴设备、显示设备、一体化设备、二合一设备,等等。例如,可交换网络100的网络参数可以被从存储器中取回并且经由一个或多个处理器来实现。
值得注意的是,在第一时间实例300和第二时间实例330之间,只有非共享参数341,例如用于批量正规化模块和全局平均池化的那些,需要更新,以便处理从处理输入图像301切换到输入图像302。例如,只有训练需要的参数可以被丢弃。此外,如图所示,在实现阶段中,也丢弃了训练所需要的组件,并且添加了选择器310。
在第一时间实例300,输入图像301被接收。输入图像301可包括3个图像通道,例如RGB通道、YUV通道或者类似的通道,或者单个亮度通道。输入图像301可具有任何适当的分辨率,例如224x224像素、192x192像素、160x160像素、128x128像素或者96x96像素之一。选择器310接收输入图像301或者其指示符,并且选择器310基于输入图像301的分辨率选择可切换网络100的路线或者部分来实现。在图示的示例中,输入图像301是192x192,并且为输入图像301选择的通过可切换网络100的路线如下:共享卷积层111,批量正规化模块113,任意数目的共享卷积层/非共享批量正规化模块对,共享卷积层115,批量正规化模块117,全局平均池化模块120,完全连接层122,其输出一个或多个标签324。
值得注意的是,这样的层或模块中的每一者应用可切换网络100的参数,其中共享层应用相同的参数,而无论输入图像的分辨率如何,而互斥或非共享模块基于输入图像的分辨率应用不同的参数。例如,批量正规化模块113应用与批量正规化模块112、114的参数互斥的参数。如本文所使用的,关于可切换网络参数的术语“互斥”指的是采用了不同的参数集,虽然一些参数是匹配的。例如,一个或多个不同的参数表明经由模块应用彼此互斥的可切换网络参数。在一些实施例中,批量正规化模块响应于输入图像的分辨率,应用彼此不同的均值和方差。
如图所示,选择器310为输入图像301提供通过可切换网络100的路线。输入图像301被共享卷积层111接收,该层将共享卷积层111的卷积层参数应用到输入图像301以生成特征图谱(feature map,FM)311。特征图谱311可包括任意数目的特征图谱,对应于在共享卷积层111应用的具有任何适当分辨率的卷积核的数目。共享卷积层111可以应用卷积核以及修正线性单元(ReLU)和/或任何其他适当的处理。卷积层参数可包括任何适合于实现共享卷积层111的参数,例如过滤器权重、ReLU参数,等等。
特征图谱311被批量正规化模块113选择性地接收,该模块应用批量正规化以生成特征图谱312。特征图谱312可包括任意数目的特征图谱,例如与特征图谱311相同数目的特征图谱和分辨率。如前所述,批量正规化模块113应用非共享或者互斥的批量正规化参数,例如均值和方差、均值参数、方差参数之类的。
特征图谱312被任意数目的共享卷积层和非共享批量正规化模块对处理,其方式与关于共享卷积层111和批量正规化模块113所论述的类似。这样的特征图谱(或者特征图谱312)被共享卷积层115接收,它应用共享卷积层115的卷积层参数,以生成具有任何适当数目的图谱和分辨率的特征图谱313。特征图谱313被批量正规化模块117选择性地接收,该模块应用批量正规化以生成特征图谱314,其同样具有任何适当数目的图谱和分辨率。
特征图谱314被全局平均池化模块120选择性地接收,该模块应用全局平均池化来生成特征向量(feature vector,FV)315,其中使用了任何一个或多个适当的技术,例如将特征图谱314变换为具有相同数目通道的统一空间维度(例如,1x1),以提供特征向量315。特征向量315被共享完全连接层122接收,该层应用共享完全连接层122的完全连接层参数以生成一个或多个标签324。在一些实施例中,可切换网络100输出与最高概率相对应的单个标签。在一些实施例中,输出包括若干个标签和它们相应的概率。在一些实施例中,输出包括所有可能标签的概率。输出的(一个或多个)标签可被用于广泛的人工智能、图像处理或者类似的应用中。虽然是关于标签的生成进行论述的,但在一些实施例中,可切换网络100可以输出包括输入图像301的超分辨率版本、输入图像301的分割、输入图像301的锐度增强版本或者任何其他影像的特征图谱。
如关于时间实例330所示,可切换网络100随后可被切换到处理具有与输入图像301不同的分辨率(在图示的示例中是更高的分辨率)的输入图像302。值得注意的是,为了在不同分辨率的处理之间切换,只需要更新非共享的参数341,这是总参数的一小部分(例如,<1%),例如用于批量正规化模块和全局平均池化的那些。从而,与为每个可用分辨率实现不同的网络相比,可切换网络100提供了大幅减小的存储器占用。任意数目的分辨率都可以由可切换网络100处置,例如3、4、5、6或者更多。在一些实施例中,可切换网络100可以处理5种分辨率:224x224像素,192x192像素,160x160像素,128x128像素,或者96x96像素。
在第二时间实例330,输入图像302被接收。与输入图像301一样,输入图像302可包括3个图像通道或者单个亮度通道。输入图像301可具有任何适当的分辨率,例如224x224像素、192x192像素、160x160像素、128x128像素或者96x96像素之一。在图示的示例中,输入图像的分辨率为224x224。选择器310基于输入图像301的分辨率选择可切换网络100的路线或者部分来实现,在图示的示例中,所选择的路线包括共享卷积层111、批量正规化模块112、任意数目的共享卷积层/非共享批量正规化模块对、共享卷积层115、批量正规化模块116、全局平均池化模块119、完全连接层122,其输出一个或多个标签323。值得注意的是,无论输入图像分辨率如何,所选路线都包括共享卷积层、任意数目的共享卷积层、共享卷积层115、以及完全连接层122。如前所述,所选择的层或模块中的每一者应用可切换网络100的参数,其中共享层应用相同的参数,无论输入图像的分辨率如何,而互斥或非共享模块基于输入图像的分辨率应用不同的参数。
如图所示,选择器310将输入图像302路由到共享卷积层111,该层将共享卷积层111的卷积层参数(即,与应用到包括输入图像301在内的任何输入图像的参数相同)应用到输入图像302以生成特征图谱316。特征图谱316被批量正规化模块112选择性地接收,该模块应用批量正规化(即,相对于其他批量正规化模块而言,不同的批量正规化)以生成特征图谱317。特征图谱317可包括任意数目的特征图谱,例如与特征图谱316相同数目的特征图谱和分辨率。批量正规化模块112应用非共享或者互斥的批量正规化参数,例如均值和方差、均值参数、方差参数之类的。值得注意的是,由批量正规化模块112应用的批量正规化参数与由批量正规化模块113应用的参数不同。
特征图谱317被任意数目的共享卷积层和非共享批量正规化模块对以类似方式处理,并且这样的特征图谱(或者特征图谱317)被共享卷积层115接收。共享卷积层115应用与关于输入图像301的论述相同的卷积层参数,以生成特征图谱318,其具有任何适当数目的图谱和分辨率。特征图谱318被批量正规化模块116选择性地接收,该模块应用批量正规化以生成特征图谱319,其同样具有任何适当数目的图谱和分辨率。批量正规化模块116相对于由批量正规化模块117应用的那些参数应用不同的批量正规化参数。
特征图谱319被全局平均池化模块119选择性地接收,该模块应用全局平均池化以生成特征向量320。例如,全局平均池化模块119可以将特征图谱319变换为具有相等数目的通道的统一空间维度,以提供特征向量320,该向量被共享完全连接层122接收。完全连接层122应用共享完全连接层122的完全连接层参数(即,应用到特征向量315的相同参数),以生成一个或多个标签323,这些标签可具有如关于一个或多个标签324论述的那些的任何特性。此外,如前所述,虽然是关于标签的生成来论述的,但在一些实施例中,可切换网络100可以输出特征图谱,例如超分辨率图像、分割图像、锐度增强图像301,等等。
图4图示了根据本公开的至少一些实现方式安排的用于使用可切换网络为不同分辨率的输入图像生成标签的示例过程400的流程图。过程400可包括如图4中所示的一个或多个操作401-409。过程400或其一些部分可由本文论述的任何设备或系统执行,例如可切换网络100。
过程400开始于操作401,在该操作中,经由可切换网络接收输入图像来进行处理,以便为输入图像提供一个或多个图像分类标签。输入图像可以以可切换网络能够处理的几种输入图像分辨率之一被接收,或者被裁剪和调整大小到这样的几种输入图像分辨率之一。例如,如果大于可切换网络能够处理的最大图像大小,则输入图像可以被下采样到可切换网络能够处理的最大图像大小。或者,输入图像可以被上采样到可切换网络能够处理的最小图像大小。此外,如果输入图像不是适当的形状(例如,方形),则输入图像可以被裁剪到适当的形状。
处理在操作402处继续,在该操作中,使用传入的输入图像分辨率来选择可切换网络路径。例如,可切换网络路径可能总是包括共享层、块或者模块,而在路径中选择的非共享或互斥的层、块或模块则取决于输入图像的分辨率。在一些实施例中,所有卷积层都是共享的,完全连接层是共享的,而批量正规化模块和全局平均池化模块是非共享的或者互斥的。通过可切换网络的可用路径的数目等于可切换网络能够处理的分辨率的数目,并且可以是任意数目,例如3、4、5、6或者更多。在一些实施例中,可切换网络具有五条路径,对于224x224、192x192、160x160、128x128和96x96分辨率输入图像各有一条。
处理在操作403处继续,在该操作中,第一共享卷积层被应用到输入图像。共享卷积层可具有本文论述的任何特性,以使得共享卷积层在不考虑输入图像分辨率的情况下,将相同的卷积层参数应用到输入图像,以生成任意数目的特征图谱。处理在操作404处继续,在该操作中,基于分辨率的批量正规化被应用到所产生的特征图谱。也就是说,批量正规化参数是基于输入图像的分辨率选择的,并且与其他分辨率的批量正规化参数是互斥的。这样的批量正规化生成的特征图谱相对于传入的特征图谱而言是更改了的。
处理在判决操作405处继续,在该操作中,确定在操作403处应用的共享卷积层是否是可切换网络中的最后一个共享卷积层。如果不是,则处理在操作403、404处继续,如上所述,从在操作404处执行的批量正规化输出的特征图谱为下一个共享卷积层提供输入(例如,由计数器变量i来计数)。该序列中的每个相关的共享卷积层被应用到输入图像(第一共享卷积层)或者特征图谱(每个后续的共享卷积层)。此外,在操作404,后续的分辨率自适应批量正规化被应用到所产生的特征图谱,其中批量正规化参数同样是基于输入图像的分辨率选择的,并且与其他分辨率的批量正规化参数互斥。
当在操作403处应用的共享卷积层是可切换网络中的最后一个共享卷积层(并且在操作404处应用的基于分辨率的批量正规化是可切换网络中的最后一个基于分辨率的批量正规化)时,处理在操作406处继续,在该操作中,向所产生的特征图谱应用基于分辨率的全局平均池化。例如,全局平均池化参数被基于输入图像的分辨率来选择,并且与其他分辨率的全局平均池化参数是互斥的。这样的全局平均池化处理提供了特征向量,用于经由完全连接层实现。
处理在操作407处继续,在该操作中,共享完全连接层被应用到输入图像。共享完全连接层可以具有本文论述的任何特性,以使得共享完全连接层在不考虑输入图像分辨率的情况下,将相同的共享完全连接层参数应用到输入向量,以生成与输入图像相对应的一个或多个图像分类标签。单个标签、若干个最高概率标签或者类似的标签可被提供作为输出。
处理在判决操作408处继续,在该操作中,确定是否已处理了最后一个图像。如果是,则处理在结束操作409处结束。如果否,则处理如上所述在操作401处继续。值得注意的是,如果下一个图像具有与先前处理的图像相同的分辨率,则在操作402处选择的网络路径是相同的,并且不需要参数的变化(例如,在缓存存储器等等中,供处理器实现)。然而,如果下一个图像相对于先前处理的图像具有不同的分辨率,则只需要丢弃非共享的或者互斥的参数并且将其重加载以处理下一个图像。例如,共享参数可以被维持在高级别缓存(例如,L1或L2缓存)中或者板载存储器中,而非共享参数则被从低级别缓存(例如,L3缓存)或者主存储器中取回。在一些实施例中,共享参数被维持在片上存储器(例如,L1缓存)中,而非共享参数则被从片外存储器中取回并且被加载到片上存储器,以用于下一个图像的处理。
这样的处理可以被重复任意次数,以在图像分辨率之间快速改变,以便进行图像分类。这样的技术提供了输入图像大小可切换网络,用于自适应运行时高效图像分类。
图5图示了根据本公开的至少一些实现方式安排的用于执行图像分类的示例过程500的流程图。过程500可包括如图5中所示的一个或多个操作501-507。过程500可以形成图像分类过程的至少一部分。作为非限制性示例,过程500可以形成如本文所述由可切换网络100在实现阶段中执行的图像分类过程的至少一部分。此外,本文将参考图6的系统600来描述过程500。
图6是根据本公开的至少一些实现方式安排的用于执行图像分类的示例系统600的说明图。如图6所示,系统600可包括中央处理器601、图像处理器602、存储器存储装置603、以及相机604。例如,相机604可以获取输入图像来进行处理。同样如图所示,中央处理器601可包括或者实现选择器310、共享卷积层611(代表共享卷积层111、115,等等)、正规化模块612(代表批量正规化模块112、113、114、116、117、118,等等)、全局平均池化模块613(代表全局平均池化模块119、120、121)、以及完全连接层122。系统600还可包括或者实现任何训练模块或者组件,如关于图1所论述的。这种组件或模块可被实现来执行如本文所述的操作。存储器存储装置603可以存储图像、图像实例、可切换网络参数、标签或者标签数据、或者本文论述的任何其他数据。
如图所示,在一些示例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个是经由中央处理器601来实现的。在其他示例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个或者一些部分是经由图像处理器602、视频处理器、图形处理器之类的来实现的。在另外一些示例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个或者一些部分是经由图像或视频处理管线或单元来实现的。
图像处理器602可包括任意数目和类型的可提供如本文所述的操作的图形、图像或视频处理单元。在一些示例中,图像处理器602可以是图像信号处理器。例如,图像处理器602可包括专用于操纵从存储器存储装置603获得的图像数据的电路。中央处理器601可包括任意数目和类型的可以为系统600提供控制和其他高级别功能和/或提供如本文所述的任何操作的处理单元或模块。存储器存储装置603可以是任何类型的存储器,例如易失性存储器(例如,静态随机访问存储器(Static Random Access Memory,SRAM)、动态随机访问存储器(Dynamic Random Access Memory,DRAM),等等)或者非易失性存储器(例如,闪存,等等),等等。在非限制性示例中,存储器存储装置603可由缓存存储器实现。
在一个实施例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个或者一些部分是经由图像处理器602的执行单元(execution unit,EU)来实现的。EU可包括例如可编程逻辑或电路,例如可提供多种多样的可编程逻辑功能的一个或多个逻辑核心。在一个实施例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个或者一些部分是经由诸如固定功能电路之类的专用硬件来实现的。固定功能电路可包括专用逻辑或电路,并且可提供一组固定功能入口点,这些固定功能入口点可映射到用于固定目的或功能的专用逻辑。在一些实施例中,选择器310、共享卷积层611、正规化模块612、全局平均池化模块613和完全连接层122中的一个或多个或者一些部分是经由专用集成电路(applicationspecific integrated circuit,ASIC)来实现的。ASIC可包括被定制来执行本文论述的操作的集成电路。相机604可包括具有任何适当的镜头和图像传感器和/或相关硬件来捕捉图像或视频的任何相机。
返回到对图5的论述,过程500开始于操作501,在该操作中,接收处于第一分辨率的第一图像和处于小于第一分辨率的第二分辨率的第二图像来进行处理。这样的图像可以被并行或者串行地接收。例如,这些图像可以同时或者不同时被存储在存储器中。虽然为了清晰起见,是针对两个图像分辨率来论述的,但可以采用任意数目的可用分辨率的任意数目的输入图像。在对过程500的论述中,操作可以由可切换网络执行,该网络是可基于输入图像分辨率切换的。
处理在操作502处继续,在该操作中,使用任意数目的卷积层参数将卷积神经网络层应用到第一图像或者与第一图像相对应的第一特征图谱,以生成与第一图像相对应的一个或多个第二特征图谱。例如,操作502的卷积神经网络层可以是被应用到输入图像本身的可切换网络中的第一卷积神经网络层,或者被应用到基于第一图像生成的特征图谱的后续卷积神经网络层。此外,虽然本文是针对所有卷积神经网络层被共享来进行论述的,但在一些实施例中,在一个或多个层可以采用非共享的卷积神经网络层。在一些实施例中,卷积神经网络层是修剪的卷积神经网络层或者量化的卷积神经网络层。
处理在操作503处继续,在该操作中,使用第一正规化参数对一个或多个第二特征图谱执行第一正规化,以生成一个或多个第三特征图谱。例如,对来自操作502的结果特征图谱执行第一正规化,以使得结果特征图谱是直接从第一图像或者从与第一图像相对应的特征图谱生成的。被应用到第一图像的第一正规化是基于第一图像的分辨率来选择的,以使得第一正规化参数仅被应用到具有第一图像的分辨率的输入图像。第一正规化和第二正规化(关于操作506的论述)可以是本文论述的任何适当的正规化,例如批量正规化。
处理在操作504处继续,在该操作中,使用一个或多个第三特征图谱为第一图像生成第一标签。可以利用任何一个或多个适当的技术来生成第一标签。在一些实施例中,生成第一标签包括应用一个或多个额外的共享卷积神经网络层并且应用完全连接层,一个或多个额外的共享卷积神经网络层中的每一者之后跟随着额外的第一正规化。在一些实施例中,在最终的正规化之后,在应用完全连接层之前,应用全局平均池化。在一些实施例中,无论输入图像分辨率如何,完全连接层都被共享和应用,而全局平均池化是基于输入图像分辨率来选择性应用的。在一些实施例中,第一正规化和额外的第一正规化是响应于第一图像处于第一分辨率而被选择的。
处理在操作505处继续,在该操作中,使用卷积层参数将卷积神经网络层应用到第二图像或者与第二图像相对应的第四特征图谱,以生成与第二图像相对应的一个或多个第五特征图谱。例如,操作505的卷积神经网络层可以是被应用到输入图像本身的可切换网络中的第一卷积神经网络层,或者被应用到基于第一图像生成的特征图谱的后续卷积神经网络层。如前所述,在操作505处应用的卷积神经网络层实现与在操作502处应用的那些相同的卷积层参数。
处理在操作506处继续,在该操作中,使用与第一正规化参数互斥的第二正规化参数对一个或多个第五特征图谱执行第二正规化,以生成一个或多个第六特征图谱。例如,对来自操作505的结果特征图谱执行第二正规化,以使得结果特征图谱是直接从第二图像或者从与第二图像相对应的特征图谱生成的。被应用到第二图像的第二正规化是基于第二图像的分辨率来选择的,以使得第二正规化参数仅被应用到具有第二图像的分辨率的输入图像。值得注意的是,在操作506处应用的第二正规化参数相对于在操作503处应用的第一正规化参数是互斥且不同的。
处理在操作507处继续,在该操作中,使用一个或多个第六特征图谱为第二图像生成第二标签。可以利用任何一个或多个适当的技术来生成第二标签。在一些实施例中,生成第一标签包括应用一个或多个额外的共享卷积神经网络层并且应用与在操作504处应用的相同的完全连接层,一个或多个额外的共享卷积神经网络层中的每一者后跟随着额外的第二正规化(基于第二图像的分辨率选择)。在一些实施例中,在最终的正规化之后,在应用完全连接层之前,应用全局平均池化。如前所述,在一些实施例中,无论输入图像分辨率如何,完全连接层都被共享和应用,而全局平均池化是基于输入图像分辨率来选择性应用的。
可以使用任何一个或多个适当的技术来生成对于操作501-507应用的可切换网络参数。例如,卷积层参数、第一正规化参数、第二正规化参数、其他共享卷积层参数、其他非共享正规化参数、共享完全连接层参数和非共享全局平均池化参数可以被统称为卷积神经网络参数或者预训练的卷积神经网络参数。在一些实施例中,预训练的卷积神经网络参数的训练是基于:生成训练集,该训练集包括分别处于第一和第二分辨率的第一和第二训练图像以及相应的地面实况标签,第一和第二训练图像对应于相同的图像实例;以及在训练迭代时,使用损失项对预训练的卷积神经网络参数进行并行的参数调整,该损失项包括基于向第一和第二训练图像应用预训练的卷积神经网络参数的交叉熵损失之和。在一些实施例中,该参数调整还包括对预训练的卷积神经网络参数的完全连接层参数的调整,卷积层参数和完全连接层参数在各输入图像大小之间是共享的,而第一和第二正规化参数在各输入图像大小之间是不共享的。
在一些实施例中,预训练的卷积神经网络参数的训练是基于:生成训练集,该训练集包括处于第一分辨率、第二分辨率和小于第二分辨率的第三分辨率的第一、第二和第三训练图像,以及相应的地面实况标签,第一、第二和第三训练图像对应于相同的图像实例;在训练迭代时,基于分别使用第一、第二和第三训练图像进行的第一、第二和第三预测生成集总预测;并且将集总预测与地面实况标签进行比较。在一些实施例中,集总预测包括与应用到第一、第二和第三训练图像中的每一者的预训练的卷积神经网络参数相对应的分对数的加权平均,分对数的加权平均是使用分对数重要性得分来加权的。在一些实施例中,在训练迭代中,参数更新是基于损失函数的最小化的,损失函数包括集总损失项和提炼损失项的总和,集总损失项基于使用集总预测的分类概率,提炼损失项基于第一、第二和第三预测的每一者与集总预测的分歧。在一些实施例中,提炼损失项还包括第二预测与第一预测的第一分歧,第二预测与第三预测的第二分歧,以及第三预测与第一预测的第三分歧。在一些实施例中,损失函数还包括基于向第一、第二和第三训练图像应用预训练的卷积神经网络参数的交叉熵损失之和。
可以用软件、固件和/或硬件和/或其任意组合来实现本文描述的系统的各种组件。例如,本文论述的系统的各种组件可至少部分由计算片上系统(SoC)的硬件提供,例如可存在于计算系统中,例如智能电话中。本领域技术人员可认识到,本文描述的系统可包括在相应附图中没有描绘的额外组件。例如,本文论述的系统可包括为了清晰而没有描绘的额外组件,例如通信模块等等。
虽然本文论述的示例过程的实现方式可包括按图示的顺序从事示出的所有操作,但本公开不限于此,并且在各种示例中,这里的示例过程的实现方式可只包括示出的操作的子集,包括按与图示不同的顺序执行的操作,或者包括额外的操作。
此外,可响应于由一个或多个计算机程序产品提供的指令来从事本文论述的操作中的任何一个或多个。这种程序产品可包括提供指令的信号承载介质,这些指令当被例如处理器执行时,可提供本文描述的功能。可在任何形式的一个或多个机器可读介质中提供计算机程序产品。从而,例如,包括一个或多个图形处理单元或处理器核心的处理器可响应于由一个或多个机器可读介质输送到处理器的程序代码和/或指令或指令集而从事这里的示例过程的一个或多个块。一般而言,机器可读介质可以以程序代码和/或指令或指令集的形式输送软件,所述程序代码和/或指令或指令集可使得本文描述的任何设备和/或系统实现本文论述的系统的至少一些部分,或者如本文所述的任何其他模块或组件。
按照在本文描述的任何实现方式中使用的,术语“模块”或“组件”指的是被配置为提供本文描述的功能的软件逻辑、固件逻辑、硬件逻辑和/或电路的任意组合。软件可体现为软件封装、代码和/或指令集或指令,并且如本文描述的任何实现方式中使用的“硬件”例如可单一地或者组合地包括硬连线电路、可编程电路、状态机电路、固定功能电路、执行单元电路、和/或存储被可编程电路执行的指令的固件。模块可集体地或者个体地体现为形成更大系统的一部分的电路,例如集成电路(IC)、片上系统(SoC),等等。
图7是根据本公开的至少一些实现方式安排的示例系统700的说明图。在各种实现方式中,系统700可以是移动系统,虽然系统700不限于此情境。系统700可实现和/或执行本文论述的任何模块或技术。例如,系统700可被包含到以下各项中:个人计算机(personalcomputer,PC)、服务器、膝上型计算机、超便携膝上型计算机、平板设备、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(personal digital assistant,PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如,智能电话、智能平板或智能电视)、移动互联网设备(mobile internet device,MID)、消息传递设备、数据通信设备、相机(例如,傻瓜相机、超级变焦相机、数码单反(digital single-lens reflex,DSLR)相机),等等。在一些示例中,系统700可经由云计算环境实现。
在各种实现方式中,系统700包括与显示器720耦合的平台702。平台702可从内容设备接收内容,其中内容设备例如是(一个或多个)内容服务设备730或者(一个或多个)内容递送设备740或者其他类似的内容源。包括一个或多个导航特征的导航控制器750可被用于与例如平台702和/或显示器720交互。在下文更详述描述这些组件的每一者。
在各种实现方式中,平台702可包括芯片组705、处理器710、存储器712、天线713、存储装置714、图形子系统715、应用716和/或无线电台718的任意组合。芯片组705可提供处理器710、存储器712、存储装置714、图形子系统715、应用716和/或无线电台718之间的相互通信。例如,芯片组705可包括能够提供与存储装置714的相互通信的存储适配器(未图示)。
处理器710可被实现为复杂指令集计算机(Complex Instruction Set Computer,CISC)或者精简指令集计算机(Reduced Instruction Set Computer,RISC)处理器、x86指令集兼容处理器、多核、或者任何其他微处理器或中央处理单元(central processingunit,CPU)。在各种实现方式中,处理器710可以是(一个或多个)双核处理器、(一个或多个)双核移动处理器,等等。
存储器712可被实现为易失性存储器设备,例如但不限于随机访问存储器(RandomAccess Memory,RAM)、动态随机访问存储器(Dynamic Random Access Memory,DRAM)、或者静态RAM(Static RAM,SRAM)。
存储装置714可被实现为非易失性存储设备,例如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附接存储设备、闪存、电池后备SDRAM(同步DRAM)、和/或网络可访问存储设备。在各种实现方式中,例如当包括多个硬盘驱动器时,存储装置714可包括技术来为有价值的数字媒体增加存储性能增强保护。
图像信号处理器717可实现为用于图像或视频帧处理的专用数字信号处理器之类的。在一些示例中,可基于单指令多数据或多指令多数据体系结构之类的来实现图像信号处理器717。在一些示例中,图像信号处理器717可以被表征为媒体处理器。如本文所论述的,可以基于片上系统体系结构和/或基于多核体系结构来实现图像信号处理器717。
图形子系统715可以执行诸如静态或视频之类的图像的处理以便显示。图形子系统715例如可以是图形处理单元(graphics processing unit,GPU)或者视觉处理单元(visual processing unit,VPU)。模拟或数字接口可被用于通信地耦合图形子系统715和显示器720。例如,该接口可以是高清晰度多媒体接口、DisplayPort、无线HDMI和/或无线HD遵从技术中的任何一者。图形子系统715可被集成到处理器710或芯片组705中。在一些实现方式中,图形子系统715可以是与芯片组705通信地耦合的独立设备。
本文描述的图形和/或视频处理技术可被实现在各种硬件体系结构中。例如,图形和/或视频功能可被集成在芯片组内。或者,可以使用分立的图形和/或视频处理器。作为另外一种实现方式,图形和/或视频功能可由包括多核处理器在内的通用处理器来提供。在另外的实施例中,这些功能可被实现在消费型电子设备中。
无线电台718可包括能够利用各种适当的无线通信技术来发送和接收信号的一个或多个无线电台。这种技术可涉及跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(wireless local area network,WLAN)、无线个人区域网(wirelesspersonal area network,WPAN)、无线城域网(wireless metropolitan area network,WMAN)、蜂窝网络、以及卫星网络。在跨这种网络进行通信时,无线电台718可根据任何版本的一个或多个适用的标准来进行操作。
在各种实现方式中,显示器720可包括任何电视型监视器或显示器。显示器720可包括例如计算机显示屏幕、触摸屏显示器、视频监视器、类似电视的设备、和/或电视机。显示器720可以是数字的和/或模拟的。在各种实现方式中,显示器720可以是全息显示器。另外,显示器720可以是可接收视觉投影的透明表面。这种投影可以传达各种形式的信息、图像和/或对象。例如,这种投影可以是移动增强现实(mobile augmented reality,MAR)应用的视觉覆盖。在一个或多个软件应用716的控制下,平台702可在显示器720上显示用户界面722。
在各种实现方式中,(一个或多个)内容服务设备730可由任何国家的、国际的和/或独立的服务所容宿并且从而例如是平台702经由互联网可访问的。(一个或多个)内容服务设备730可耦合到平台702和/或显示器720。平台702和/或(一个或多个)内容服务设备730可耦合到网络760以向和从网络760传输(例如,发送和/或接收)媒体信息。(一个或多个)内容递送设备740也可耦合到平台702和/或显示器720。
在各种实现方式中,(一个或多个)内容服务设备730可包括有线电视盒、个人计算机、网络、电话、能够递送数字信息和/或内容的具备互联网能力的设备或家电、以及能够经由网络760或者直接地在内容提供者与平台702和/或显示器720之间单向或双向地传输内容的任何其他类似设备。将会明白,可经由网络760单向地和/或双向地向和从系统700中的任何一个组件和内容提供者传达内容。内容的示例可包括任何媒体信息,例如包括视频、音乐、医疗和游戏信息,等等。
(一个或多个)内容服务设备730可接收内容,例如有线电视节目,包括媒体信息、数字信息和/或其他内容。内容提供者的示例可包括任何有线电视或卫星电视或者无线电或互联网内容提供者。提供的示例并不意图以任何方式限制根据本公开的实现方式。
在各种实现方式中,平台702可以从具有一个或多个导航特征的导航控制器750接收控制信号。导航控制器750的导航特征例如可用于与用户界面722进行交互。在各种实施例中,导航控制器750可以是指点设备,该指点设备可以是允许用户将空间(例如,连续的和多维的)数据输入到计算机中的计算机硬件组件(具体而言是人机接口设备)。诸如图形用户界面(graphical user interface,GUI)以及电视机和监视器之类的许多系统允许用户利用物理手势来控制计算机或电视机和向其提供数据。
导航控制器750的导航特征的移动可被显示器(例如,显示器720)上显示的指针、光标、聚焦环或其他视觉指示物的移动复制在显示器上。例如,在软件应用716的控制下,位于导航控制器750上的导航特征例如可被映射到在用户界面722上显示的虚拟导航特征。在各种实施例中,导航控制器750可以不是单独的组件,而是可被集成到平台702和/或显示器720中。然而,本公开并不限于本文示出或描述的元素或者情境。
在各种实现方式中,例如,当被使能时,驱动器(未示出)可包括使得用户能够在初始启动之后通过触摸按钮来像电视机那样即刻开启和关闭平台702的技术。程序逻辑可允许平台702即使在平台被“关闭”时也可将内容流传输到媒体适配器或者(一个或多个)其他内容服务设备730或(一个或多个)内容递送设备740。此外,芯片组705可包括对例如5.1环绕立体声音频和/或高清晰度7.1环绕立体声音频的硬件和/或软件支持。驱动器可包括用于集成图形平台的图形驱动器。在各种实施例中,图形驱动器可包括高速外围组件互连(peripheral component interconnect,PCI)图形卡。
在各种实现方式中,系统700中示出的组件中的任何一个或多个可被集成。例如,平台702和(一个或多个)内容服务设备730可被集成,或者平台702和(一个或多个)内容递送设备740可被集成,或者平台702、(一个或多个)内容服务设备730和(一个或多个)内容递送设备740可被集成。在各种实施例中,平台702和显示器720可以是集成的单元。例如,显示器720和(一个或多个)内容服务设备730可被集成,或者显示器720和(一个或多个)内容递送设备740可被集成。这些示例并不意欲限制本公开。
在各种实施例中,系统700可被实现为无线系统、有线系统或者两者的组合。当被实现为无线系统时,系统700可包括适合于通过无线共享介质进行通信的组件和接口,例如一个或多个天线、发送器、接收器、收发器、放大器、滤波器、控制逻辑,等等。无线共享介质的示例可包括无线频谱的一些部分,例如RF频谱等等。当被实现为有线系统时,系统700可包括适合于通过有线通信介质进行通信的组件和接口,例如输入/输出(I/O)适配器、将I/O适配器与相应的有线通信介质连接的物理连接器、网络接口卡(network interface card,NIC)、盘控制器、视频控制器、音频控制器,等等。有线通信介质的示例可包括导线、电缆、金属引线、印刷电路板(printed circuit board,PCB)、背板、交换结构、半导体材料、双绞线、同轴电缆、光纤,等等。
平台702可建立一个或多个逻辑或物理信道来传输信息。该信息可包括媒体信息和控制信息。媒体信息可以指表示打算给用户的内容的任何数据。内容的示例例如可包括来自语音交谈的数据、视频会议、流视频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本,等等。来自语音交谈的数据可例如是话音信息、静默时段、背景噪声、舒适噪声、音调,等等。控制信息可以指表示打算给自动化系统的命令、指令或控制字的任何数据。例如,控制信息可被用于将媒体信息路由过系统,或者指示节点以预定的方式处理媒体信息。然而,实施例并不限于图7中示出或描述的元素或情境。
如上所述,系统700可体现为不同的物理风格或外形参数。图8图示了根据本公开的至少一些实现方式安排的示例小外形参数设备800。在一些示例中,可经由设备800来实现系统700。在其他示例中,本文论述的其他系统或者其一些部分可经由设备800实现。在各种实施例中,例如,设备800可被实现为具有无线能力的移动计算设备。移动计算设备例如可以指具有处理系统和移动电源或电力供应(例如一个或多个电池)的任何设备。
移动计算设备的示例可包括个人计算机(PC)、膝上型计算机、超便携膝上型计算机、平板设备、触摸板、便携计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、智能设备(例如,智能电话、智能平板或智能移动电视)、移动互联网设备(MID)、消息传递设备、数据通信设备、相机(例如,傻瓜相机、超级变焦相机、数码单反(DSLR)相机),等等。
移动计算设备的示例还可包括被安排为被人穿戴的计算机,例如手腕计算机、手指计算机、戒指计算机、眼镜计算机、皮带扣计算机、臂环计算机、鞋子计算机、衣服计算机、以及其他可穿戴计算机。在各种实施例中,例如,移动计算设备可被实现为除了语音通信和/或数据通信以外还能够执行计算机应用的智能电话。虽然作为示例可利用被实现为智能电话的移动计算设备来描述一些实施例,但可明白也可利用其他无线移动计算设备来实现其他实施例。实施例不限于此情境中。
如图8所示,设备800可包括具有正面801和背面802的外壳。设备800包括显示器804、输入/输出(I/O)设备806、相机815、相机805、以及集成天线808。设备800还可包括导航特征812。I/O设备806可包括用于将信息输入到移动计算设备中的任何适当的I/O设备。I/O设备806的示例可包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、麦克风、扬声器、语音识别设备和软件,等等。信息也可通过麦克风(未示出)被输入到设备800中,或者可被语音识别设备来数字化。如图所示,设备800可包括集成到设备800的背面802(或者别处)中的相机805和闪光灯810以及集成到设备800的前面801中的相机815。在一些实施例中,相机815、805的任一者或两者相对于显示器804可以是可移动的。相机815和/或相机805可以是成像模块或管线的组件,用于创作被处理成流视频的彩色图像数据,该流视频例如被输出到显示器804和/或被从设备800经由天线808远程传达。例如,相机815可捕捉输入图像并且眼睛接触校正图像可被提供到显示器804和/或被从设备800经由天线808远程传达。
可以利用硬件元素、软件元素或者两者的组合来实现各种实施例。硬件元素的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器,等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(programmable logic device,PLD)、数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组,等等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(application program interface,API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号,或者这些的任意组合。确定一实施例是否利用硬件元素和/或软件元素来实现可根据任意数目的因素而变化,例如期望的计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度、以及其他设计或性能约束。
至少一个实施例的一个或多个方面可由被存储在机器可读介质上的表示处理器内的各种逻辑的代表性指令来实现,这些指令当被机器读取时,使得该机器制作逻辑来执行本文描述的技术。这种被称为IP核的表现形式可被存储在有形机器可读介质上,并且被提供到各种客户或制造设施以加载到实际制作该逻辑或处理器的制作机器中。
虽然已参考各种实现方式来描述了本文记载的某些特征,但此描述并不打算被从限制意义上来解释。因此,对本公开所属领域的技术人员来说显而易见的对本文描述的实现方式的各种修改以及其他实现方式,被认为属于本公开的精神和范围内。
在一个或多个第一实施例中,一种用于图像分类的方法,包括接收处于第一分辨率的第一图像和处于小于所述第一分辨率的第二分辨率的第二图像,使用多个卷积层参数将卷积神经网络层应用到所述第一图像或者与所述第一图像相对应的第一特征图谱,以生成与所述第一图像相对应的一个或多个第二特征图谱,使用多个第一正规化参数对所述一个或多个第二特征图谱执行第一正规化,以生成一个或多个第三特征图谱,使用所述一个或多个第三特征图谱为所述第一图像生成第一标签,使用所述多个卷积层参数将所述卷积神经网络层应用到所述第二图像或者与所述第二图像相对应的第四特征图谱,以生成与所述第二图像相对应的一个或多个第五特征图谱,使用与所述第一正规化参数互斥的多个第二正规化参数对所述一个或多个第五特征图谱执行第二正规化,以生成一个或多个第六特征图谱,并且使用所述一个或多个第六特征图谱为所述第二图像生成第二标签。
在一个或多个第二实施例中,关于所述第一实施例,又及,生成所述第一标签包括应用一个或多个额外的卷积神经网络层并且应用完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第一正规化,并且其中,生成所述第二标签包括应用所述一个或多个额外的卷积神经网络层并且应用所述完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第二正规化,所述额外的第二正规化使用与所述额外的第一正规化中使用的那些参数互斥的参数。
在一个或多个第三实施例中,关于所述第一或第二实施例,又及,所述第一正规化和额外的第一正规化是响应于所述第一图像处于所述第一分辨率而被选择的,并且所述第二正规化和额外的第二正规化是响应于所述第二图像处于所述第二分辨率而被选择的。
在一个或多个第四实施例中,关于所述第一至第三实施例中的任一者,又及,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:生成训练集,该训练集包括分别处于所述第一分辨率和第二分辨率的第一训练图像和第二训练图像,以及相应的地面实况标签,所述第一训练图像和第二训练图像对应于相同的图像实例;以及在训练迭代时,使用损失项对所述预训练的卷积神经网络参数进行并行的参数调整,所述损失项包括基于向所述第一训练图像和第二训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
在一个或多个第五实施例中,关于所述第一至第四实施例中的任一者,又及,所述参数调整还包括对所述预训练的卷积神经网络参数的完全连接层参数的调整,所述卷积层参数和完全连接层参数在各输入图像大小之间是共享的,并且所述第一正规化参数和第二正规化参数在各输入图像大小之间是不共享的。
在一个或多个第六实施例中,关于所述第一至第五实施例中的任一者,又及,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:生成训练集,该训练集包括处于所述第一分辨率、所述第二分辨率和小于所述第二分辨率的第三分辨率的第一训练图像、第二训练图像和第三训练图像,以及相应的地面实况标签,所述第一训练图像、第二训练图像和第三训练图像对应于相同的图像实例;在训练迭代时,基于分别使用所述第一训练图像、第二训练图像和第三训练图像进行的第一预测、第二预测和第三预测生成集总预测;以及将所述集总预测与所述地面实况标签进行比较。
在一个或多个第七实施例中,关于所述第一至第六实施例中的任一者,又及,所述集总预测包括与应用到所述第一训练图像、第二训练图像和第三训练图像中的每一者的所述预训练的卷积神经网络参数相对应的分对数的加权平均,所述分对数的加权平均是使用分对数重要性得分来加权的。
在一个或多个第八实施例中,关于所述第一至第七实施例中的任一者,又及,在所述训练迭代中,参数更新是基于损失函数的最小化的,所述损失函数包括集总损失项和提炼损失项的总和,所述集总损失项基于使用所述集总预测的分类概率,所述提炼损失项基于所述第一预测、第二预测和第三预测中的每一者与所述集总预测的分歧。
在一个或多个第九实施例中,关于所述第一至第八实施例中的任一者,又及,所述提炼损失项还包括所述第二预测与所述第一预测的第一分歧,所述第二预测与所述第三预测的第二分歧,以及所述第三预测与所述第一预测的第三分歧。
在一个或多个第十实施例中,关于所述第一至第九实施例中的任一者,又及,所述损失函数还包括基于向所述第一训练图像、第二训练图像和第三训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
在一个或多个第十一实施例中,关于所述第一至第十实施例的任何一者,又及,所述卷积神经网络层包括修剪的卷积神经网络层或者量化的卷积神经网络层之一。
在一个或多个第十二实施例中,一种设备或系统包括存储器和处理器来执行根据上述实施例中的任一者所述的方法。
在一个或多个第十三实施例中,至少一个机器可读介质包括多个指令,所述多个指令响应于在计算设备上被执行,使得所述计算设备执行根据上述实施例中的任一者所述的方法。
在一个或多个第十四实施例中,一种装置包括用于执行根据上述实施例中的任一者所述的方法的装置。
将会认识到,实施例不限于这样描述的实施例,而是可在带有修改和变更的情况下实现,而不脱离所附权利要求的范围。例如,上述实施例可包括特征的特定组合。然而,上述实施例不限于此,并且在各种实现方式中,上述实施例可包括仅从事这种特征的子集,从事这种特征的不同顺序,从事这种特征的不同组合,和/或从事除明确列出的那些特征以外的附加特征。因此,应当参考所附权利要求以及这种权利要求有权享有的等同物的完整范围来确定实施例的范围。

Claims (25)

1.一种用于图像分类的系统,包括:
存储器,用于存储处于第一分辨率的第一图像和处于小于所述第一分辨率的第二分辨率的第二图像;以及
与所述存储器耦合的一个或多个处理器,所述一个或多个处理器用于:
使用多个卷积层参数将卷积神经网络层应用到所述第一图像或者与所述第一图像相对应的第一特征图谱,以生成与所述第一图像相对应的一个或多个第二特征图谱;
使用多个第一正规化参数对所述一个或多个第二特征图谱执行第一正规化,以生成一个或多个第三特征图谱;
使用所述一个或多个第三特征图谱为所述第一图像生成第一标签;
使用所述多个卷积层参数将所述卷积神经网络层应用到所述第二图像或者与所述第二图像相对应的第四特征图谱,以生成与所述第二图像相对应的一个或多个第五特征图谱;
使用与所述第一正规化参数互斥的多个第二正规化参数对所述一个或多个第五特征图谱执行第二正规化,以生成一个或多个第六特征图谱;并且
使用所述一个或多个第六特征图谱为所述第二图像生成第二标签。
2.如权利要求1所述的系统,其中,所述一个或多个处理器生成所述第一标签包括所述一个或多个处理器应用一个或多个额外的卷积神经网络层并且应用完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第一正规化,并且其中,所述一个或多个处理器生成所述第二标签包括所述一个或多个处理器应用所述一个或多个额外的卷积神经网络层并且应用所述完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第二正规化,所述额外的第二正规化使用与所述额外的第一正规化中使用的那些参数互斥的参数。
3.如权利要求2所述的系统,其中,所述第一正规化和额外的第一正规化是响应于所述第一图像处于所述第一分辨率而被选择的,并且所述第二正规化和额外的第二正规化是响应于所述第二图像处于所述第二分辨率而被选择的。
4.如权利要求1至3中的任一项所述的系统,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括分别处于所述第一分辨率和第二分辨率的第一训练图像和第二训练图像,以及相应的地面实况标签,所述第一训练图像和第二训练图像对应于相同的图像实例;以及
在训练迭代时,使用损失项对所述预训练的卷积神经网络参数进行并行的参数调整,所述损失项包括基于向所述第一训练图像和第二训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
5.如权利要求4所述的系统,其中,所述参数调整还包括对所述预训练的卷积神经网络参数的完全连接层参数的调整,所述卷积层参数和完全连接层参数在各输入图像大小之间是共享的,并且所述第一正规化参数和第二正规化参数在各输入图像大小之间是不共享的。
6.如权利要求1至3中的任一项所述的系统,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括处于所述第一分辨率、所述第二分辨率和小于所述第二分辨率的第三分辨率的第一训练图像、第二训练图像和第三训练图像,以及相应的地面实况标签,所述第一训练图像、第二训练图像和第三训练图像对应于相同的图像实例;
在训练迭代时,基于分别使用所述第一训练图像、第二训练图像和第三训练图像进行的第一预测、第二预测和第三预测生成集总预测;以及
将所述集总预测与所述地面实况标签进行比较。
7.如权利要求6所述的系统,其中,所述集总预测包括与应用到所述第一训练图像、第二训练图像和第三训练图像中的每一者的所述预训练的卷积神经网络参数相对应的分对数的加权平均,所述分对数的加权平均是使用分对数重要性得分来加权的。
8.如权利要求6所述的系统,其中,在所述训练迭代时,参数更新是基于损失函数的最小化的,所述损失函数包括集总损失项和提炼损失项的总和,所述集总损失项基于使用所述集总预测的分类概率,所述提炼损失项基于所述第一预测、第二预测和第三预测中的每一者与所述集总预测的分歧。
9.如权利要求8所述的系统,其中,所述提炼损失项还包括所述第二预测与所述第一预测的第一分歧,所述第二预测与所述第三预测的第二分歧,以及所述第三预测与所述第一预测的第三分歧。
10.如权利要求8所述的系统,其中,所述损失函数还包括基于向所述第一训练图像、第二训练图像和第三训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
11.如权利要求1至3中的任一项所述的系统,其中,所述卷积神经网络层包括修剪的卷积神经网络层或者量化的卷积神经网络层之一。
12.一种用于图像分类的方法,包括:
接收处于第一分辨率的第一图像和处于小于所述第一分辨率的第二分辨率的第二图像;
使用多个卷积层参数将卷积神经网络层应用到所述第一图像或者与所述第一图像相对应的第一特征图谱,以生成与所述第一图像相对应的一个或多个第二特征图谱;
使用多个第一正规化参数对所述一个或多个第二特征图谱执行第一正规化,以生成一个或多个第三特征图谱;
使用所述一个或多个第三特征图谱为所述第一图像生成第一标签;
使用所述多个卷积层参数将所述卷积神经网络层应用到所述第二图像或者与所述第二图像相对应的第四特征图谱,以生成与所述第二图像相对应的一个或多个第五特征图谱;
使用与所述第一正规化参数互斥的多个第二正规化参数对所述一个或多个第五特征图谱执行第二正规化,以生成一个或多个第六特征图谱;并且
使用所述一个或多个第六特征图谱为所述第二图像生成第二标签。
13.如权利要求12所述的方法,其中,生成所述第一标签包括应用一个或多个额外的卷积神经网络层并且应用完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第一正规化,并且其中,生成所述第二标签包括应用所述一个或多个额外的卷积神经网络层并且应用所述完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第二正规化,所述额外的第二正规化使用与所述额外的第一正规化中使用的那些参数互斥的参数。
14.如权利要求12或13所述的方法,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括分别处于所述第一分辨率和第二分辨率的第一训练图像和第二训练图像,以及相应的地面实况标签,所述第一训练图像和第二训练图像对应于相同的图像实例;以及
在训练迭代时,使用损失项对所述预训练的卷积神经网络参数进行并行的参数调整,所述损失项包括基于向所述第一训练图像和第二训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
15.如权利要求12或13所述的方法,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括处于所述第一分辨率、所述第二分辨率和小于所述第二分辨率的第三分辨率的第一训练图像、第二训练图像和第三训练图像,以及相应的地面实况标签,所述第一训练图像、第二训练图像和第三训练图像对应于相同的图像实例;
在训练迭代时,基于分别使用所述第一训练图像、第二训练图像和第三训练图像进行的第一预测、第二预测和第三预测生成集总预测;以及
将所述集总预测与所述地面实况标签进行比较。
16.如权利要求15所述的方法,其中,在所述训练迭代时,参数更新是基于损失函数的最小化的,所述损失函数包括集总损失项和提炼损失项的总和,所述集总损失项基于使用所述集总预测的分类概率,所述提炼损失项基于所述第一预测、第二预测和第三预测中的每一者与所述集总预测的分歧。
17.至少一个机器可读介质,包括多个指令,所述多个指令响应于在设备上被执行,使得所述设备通过以下步骤来执行图像分类:
接收包括人类脸部的表示的多个顺序视频图像;
接收处于第一分辨率的第一图像和处于小于所述第一分辨率的第二分辨率的第二图像;
使用多个卷积层参数将卷积神经网络层应用到所述第一图像或者与所述第一图像相对应的第一特征图谱,以生成与所述第一图像相对应的一个或多个第二特征图谱;
使用多个第一正规化参数对所述一个或多个第二特征图谱执行第一正规化,以生成一个或多个第三特征图谱;
使用所述一个或多个第三特征图谱为所述第一图像生成第一标签;
使用所述多个卷积层参数将所述卷积神经网络层应用到所述第二图像或者与所述第二图像相对应的第四特征图谱,以生成与所述第二图像相对应的一个或多个第五特征图谱;
使用与所述第一正规化参数互斥的多个第二正规化参数对所述一个或多个第五特征图谱执行第二正规化,以生成一个或多个第六特征图谱;并且
使用所述一个或多个第六特征图谱为所述第二图像生成第二标签。
18.如权利要求17所述的机器可读介质,其中,生成所述第一标签包括应用一个或多个额外的卷积神经网络层并且应用完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第一正规化,并且其中,生成所述第二标签包括应用所述一个或多个额外的卷积神经网络层并且应用所述完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第二正规化,所述额外的第二正规化使用与所述额外的第一正规化中使用的那些参数互斥的参数。
19.如权利要求17或18所述的机器可读介质,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括分别处于所述第一分辨率和第二分辨率的第一训练图像和第二训练图像,以及相应的地面实况标签,所述第一训练图像和第二训练图像对应于相同的图像实例;以及
在训练迭代时,使用损失项对所述预训练的卷积神经网络参数进行并行的参数调整,所述损失项包括基于向所述第一训练图像和第二训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
20.如权利要求17或18所述的机器可读介质,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括处于所述第一分辨率、所述第二分辨率和小于所述第二分辨率的第三分辨率的第一训练图像、第二训练图像和第三训练图像,以及相应的地面实况标签,所述第一训练图像、第二训练图像和第三训练图像对应于相同的图像实例;
在训练迭代时,基于分别使用所述第一训练图像、第二训练图像和第三训练图像进行的第一预测、第二预测和第三预测生成集总预测;以及
将所述集总预测与所述地面实况标签进行比较。
21.如权利要求20所述的机器可读介质,其中,在所述训练迭代时,参数更新是基于损失函数的最小化的,所述损失函数包括集总损失项和提炼损失项的总和,所述集总损失项基于使用所述集总预测的分类概率,所述提炼损失项基于所述第一预测、第二预测和第三预测中的每一者与所述集总预测的分歧。
22.一种系统,包括:
用于接收处于第一分辨率的第一图像和处于小于所述第一分辨率的第二分辨率的第二图像的装置;
用于使用多个卷积层参数将卷积神经网络层应用到所述第一图像或者与所述第一图像相对应的第一特征图谱以生成与所述第一图像相对应的一个或多个第二特征图谱的装置;
用于使用多个第一正规化参数对所述一个或多个第二特征图谱执行第一正规化以生成一个或多个第三特征图谱的装置;
用于使用所述一个或多个第三特征图谱为所述第一图像生成第一标签的装置;
用于使用所述多个卷积层参数将所述卷积神经网络层应用到所述第二图像或者与所述第二图像相对应的第四特征图谱以生成与所述第二图像相对应的一个或多个第五特征图谱的装置;
用于使用与所述第一正规化参数互斥的多个第二正规化参数对所述一个或多个第五特征图谱执行第二正规化以生成一个或多个第六特征图谱的装置;以及
用于使用所述一个或多个第六特征图谱为所述第二图像生成第二标签的装置。
23.如权利要求22所述的系统,其中,用于生成所述第一标签的装置包括用于进行以下操作的装置:应用一个或多个额外的卷积神经网络层并且应用完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第一正规化,并且其中,用于生成所述第二标签的装置包括用于进行以下操作的装置:应用所述一个或多个额外的卷积神经网络层并且应用所述完全连接层,所述一个或多个额外的卷积神经网络层中的每一者之后跟随着额外的第二正规化,所述额外的第二正规化使用与所述额外的第一正规化中使用的那些参数互斥的参数。
24.如权利要求22或23所述的系统,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括分别处于所述第一分辨率和第二分辨率的第一训练图像和第二训练图像,以及相应的地面实况标签,所述第一训练图像和第二训练图像对应于相同的图像实例;以及
在训练迭代时,使用损失项对所述预训练的卷积神经网络参数进行并行的参数调整,所述损失项包括基于向所述第一训练图像和第二训练图像应用所述预训练的卷积神经网络参数的交叉熵损失之和。
25.如权利要求22或23所述的系统,其中,所述卷积层参数、所述第一正规化参数和所述第二正规化参数包括预训练的卷积神经网络参数,所述预训练的卷积神经网络参数的训练是基于:
生成训练集,该训练集包括处于所述第一分辨率、所述第二分辨率和小于所述第二分辨率的第三分辨率的第一训练图像、第二训练图像和第三训练图像,以及相应的地面实况标签,所述第一训练图像、第二训练图像和第三训练图像对应于相同的图像实例;
在训练迭代时,基于分别使用所述第一训练图像、第二训练图像和第三训练图像进行的第一预测、第二预测和第三预测生成集总预测;以及
将所述集总预测与所述地面实况标签进行比较。
CN202080100924.2A 2020-06-15 2020-06-15 自适应运行时高效图像分类的输入图像大小可切换网络 Pending CN115605922A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/096035 WO2021253148A1 (en) 2020-06-15 2020-06-15 Input image size switchable network for adaptive runtime efficient image classification

Publications (1)

Publication Number Publication Date
CN115605922A true CN115605922A (zh) 2023-01-13

Family

ID=79268863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080100924.2A Pending CN115605922A (zh) 2020-06-15 2020-06-15 自适应运行时高效图像分类的输入图像大小可切换网络

Country Status (6)

Country Link
US (1) US20230343068A1 (zh)
EP (1) EP4165555A4 (zh)
JP (1) JP7459425B2 (zh)
KR (1) KR20230022843A (zh)
CN (1) CN115605922A (zh)
WO (1) WO2021253148A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023220891A1 (en) * 2022-05-16 2023-11-23 Intel Corporation Resolution-switchable segmentation networks
CN114664290B (zh) * 2022-05-17 2022-08-19 深圳比特微电子科技有限公司 声音事件检测方法、装置及可读存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8478052B1 (en) * 2009-07-17 2013-07-02 Google Inc. Image classification
CN104537393B (zh) * 2015-01-04 2018-01-16 大连理工大学 一种基于多分辨率卷积神经网络的交通标志识别方法
CN105975931B (zh) * 2016-05-04 2019-06-14 浙江大学 一种基于多尺度池化的卷积神经网络人脸识别方法
CN110226172B (zh) 2016-12-15 2024-02-02 谷歌有限责任公司 将源域图像变换为目标域图像
CN107967484B (zh) * 2017-11-14 2021-03-16 中国计量大学 一种基于多分辨率的图像分类方法
CN110163215B (zh) * 2018-06-08 2022-08-23 腾讯科技(深圳)有限公司 图像处理方法、装置、计算机可读介质及电子设备
CN111179212B (zh) 2018-11-10 2023-05-23 杭州凝眸智能科技有限公司 集成蒸馏策略和反卷积的微小目标检测片上实现方法
CN110472681A (zh) 2019-08-09 2019-11-19 北京市商汤科技开发有限公司 基于知识蒸馏的神经网络训练方案和图像处理方案

Also Published As

Publication number Publication date
EP4165555A4 (en) 2024-03-27
US20230343068A1 (en) 2023-10-26
KR20230022843A (ko) 2023-02-16
WO2021253148A1 (en) 2021-12-23
JP7459425B2 (ja) 2024-04-02
EP4165555A1 (en) 2023-04-19
JP2023537446A (ja) 2023-09-01

Similar Documents

Publication Publication Date Title
US11538164B2 (en) Coupled multi-task fully convolutional networks using multi-scale contextual information and hierarchical hyper-features for semantic image segmentation
US11676278B2 (en) Deep learning for dense semantic segmentation in video with automated interactivity and improved temporal coherence
US10885384B2 (en) Local tone mapping to reduce bit depth of input images to high-level computer vision tasks
US11823033B2 (en) Condense-expansion-depth-wise convolutional neural network for face recognition
US10685262B2 (en) Object recognition based on boosting binary convolutional neural network features
US9826149B2 (en) Machine learning of real-time image capture parameters
US9940550B2 (en) Model compression in binary coded image based object detection
US10121090B2 (en) Object detection using binary coded images and multi-stage cascade classifiers
CN113177946A (zh) 用于提供视频中的分割的系统和方法
US11838676B2 (en) Key frame selection in burst imaging for optimized user experience
US11164317B2 (en) Real-time mask quality predictor
US11928860B2 (en) On the fly adaptive convolutional neural network for variable computational budget
US20240005628A1 (en) Bidirectional compact deep fusion networks for multimodality visual analysis applications
CN113628276A (zh) 经由深度学习的单图像超广角鱼眼相机校准
CN115605922A (zh) 自适应运行时高效图像分类的输入图像大小可切换网络
WO2023028908A1 (en) Dynamic temporal normalization for deep learning in video understanding applications
US20240005649A1 (en) Poly-scale kernel-wise convolution for high-performance visual recognition applications

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