CN111656364A - 神经网络处理装置和方法以及程序 - Google Patents

神经网络处理装置和方法以及程序 Download PDF

Info

Publication number
CN111656364A
CN111656364A CN201980008794.7A CN201980008794A CN111656364A CN 111656364 A CN111656364 A CN 111656364A CN 201980008794 A CN201980008794 A CN 201980008794A CN 111656364 A CN111656364 A CN 111656364A
Authority
CN
China
Prior art keywords
processing
neural network
data
frame
input data
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.)
Withdrawn
Application number
CN201980008794.7A
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of CN111656364A publication Critical patent/CN111656364A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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
    • 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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/18Artificial neural networks; Connectionist approaches
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本特征涉及一种神经网络处理设备和方法以及程序,利用该设备和方法以及程序可以减小存储大小。神经网络处理装置设置有算术处理单元,用于针对输入数据的每个帧执行算术处理,在该算术处理中,输入数据的规定帧的算术处理的处理边界与输入数据的与规定帧不同的其它帧的算术处理的处理边界相匹配。本发明特征可以应用于神经网络处理设备。

Description

神经网络处理装置和方法以及程序
技术领域
本技术涉及一种神经网络处理设备、神经网络处理方法及程序,具体地,涉及一种可以减少存储量的神经网络处理设备、神经网络处理方法及程序。
背景技术
常规地,已知诸如对音频数据执行的鉴别处理(诸如话语辨别、说话者识别和环境声音识别)以及对图像数据执行的鉴别处理(诸如图像辨别)的自动鉴别技术。
已提出了使用线性鉴别、决策树、支持向量机或神经网络的方法作为用于执行这种鉴别处理的方法(例如,参考非专利的专利文献1和非专利的专利文献2)。
例如,在使用神经网络的鉴别处理中,数据输入到具有通过提前执行学习而获得的神经网络结构的鉴别器,并且由该鉴别器执行对数据执行的诸如卷积处理、池化(pooling,合并)处理以及残差(residual)处理的运算。然后,输出由鉴别器执行的运算的结果,作为对输入数据执行的鉴别的结果。
引文目录
非专利文献
非专利文献1:Kevin P.Murphy,《机器学习:概率观点》,The MIT Press,2012
非专利文献2:Ian Goodfellow,Yoshua Bengio和Aaron Courville,《深度学习》,The MIT Press,2016年。
发明内容
技术问题
近年来,需要对在便携式设备(诸如智能电话和耳机)中安装与自动鉴别相关的功能。为此,希望减少当使用例如神经网络执行鉴别处理时所必需的存储量。
本技术鉴于到上述情况而提出,并且其目的是使得可以减少存储量。
问题的解决方案
本技术的第一方面的神经网络处理设备包括:运算处理器,构成神经网络并对输入数据的每个帧执行运算处理,该运算处理是其中使输入数据的指定帧的运算处理的处理边界与用于运算处理的输入数据的其他帧的运算处理的处理边界重合的处理,其他帧不同于指定帧。
本技术的第一方面的神经网络处理方法和程序是与本技术的第一实施例的神经网络处理设备相对应的神经网络处理方法和程序。
在本技术的第一方面中,相对于输入数据的每个帧,运算处理通过构成神经网络的运算处理器来执行,该运算处理是使输入数据的指定帧的运算处理的处理边界与对于运算处理的输入数据的其他帧的处理边界重合的处理,其他帧不同于指定帧。
本技术的第二方面的神经网络处理设备包括:解码器,执行对滤波器的经压缩编码的滤波器系数进行解码的解码处理;以及运算处理器,构成神经网络并执行卷积处理,该卷积处理对通过执行解码处理而获得的滤波器系数与输入数据进行卷积。
本技术的第二方面的神经网络处理方法和程序是与本技术的第二实施例的神经网络处理设备相对应的神经网络处理方法和程序。
在本技术的第二方面中,由解码器执行对滤波器的经压缩编码的滤波器系数进行解码的解码处理;并且
由构成神经网络的运算处理器执行对通过执行解码处理而获得的滤波器系数与输入数据进行卷积的卷积处理。
本发明的效果
本技术的第一和第二方面使得可以减少存储量。
注意,这里描述的效果不一定是限制性的,而是可以提供本公开中描述的任何效果。
附图说明
[图1]是描述神经网络的图。
[图2]是描述卷积处理和池化处理的图。
[图3]是描述帧处理的图。
[图4]是描述具有应用了本技术的神经网络结构的鉴别器的图。
[图5]是描述具有应用了本技术的神经网络结构的鉴别器的图。
[图6]是描述滤波器系数的压缩编码的图。
[图7]示出神经网络处理设备的配置的示例。
[图8]是描述鉴别处理的流程图。
[图9]示出计算机的配置的示例。
具体实施方式
下面将参考附图描述应用了本技术的实施例。
<第一实施例>
<关于本技术>
当使用神经网络执行鉴别处理或回归处理时,本技术通过使当前帧和用于运算处理的前一帧的处理边界在对每个帧的输入数据执行诸如卷积处理的运算处理时重合,使得可以减少存储量。
首先,参考图1和图2,描述了一种鉴别器,该鉴别器使用神经网络在一定时间区间内对音频数据执行鉴别处理,其中音频数据为输入。注意,与彼此相对应的图1中的部分和图2中的部分将由相同的附图标记表示且在适当情况下省略其的描述。
图1示出具有对输入音频数据执行鉴别处理并输出鉴别的结果的神经网络结构的鉴别器的配置。
在图1中,每个矩形表示数据的形状。具体地,在每段数据的图示中,纵向表示时间方向,而横向表示维度。此外,图中在横向方向上延伸的箭头表示数据转换。这里,每段数据的数据形状由该数据段的维度数和每个维度中的数据段数(数据样本数)确定。
例如,图中最左侧的矩形输入数据DT11是输入到具有神经网络结构的鉴别器的音频数据。
这里,在输入数据DT11的图示中,纵向表示时间方向,而横向表示维度。具体地,在输入数据DT11的图示中,向下方向表示较新时间点的方向(向后方向)。
输入数据DT11是与对应于7910个样本的时间区间中的一个信道相对应的音频数据。换言之,输入数据DT11是与包括7910个样本(时间样本)的样本值的一个信道相对应的音频数据。
因此,这里,音频数据的信道与输入数据DT11的维度相对应,并且输入数据DT11的形状由一个维度×7910个样本表示。此外,位于输入数据DT11的图示中的上部位置的样本是更早的样本。
在图1所示的鉴别器中,利用输入数据DT11作为输入,在五个层中的每层中执行数据转换作为运算处理,并获得图中最右侧的鉴别结果数据DT16作为输出。换言之,通过从卷积层1到卷积层3总共执行五次数据转换,从输入数据DT11中计算鉴别结果数据DT16。
鉴别结果数据DT16是1×1(一个维度×一样本)的数据,该数据指示由鉴别器执行的鉴别的结果。具体地,例如,鉴别结果数据DT16是指示基于输入数据DT11的声音是提前确定的特定声音的概率的数据。
在图1所示的鉴别器中。首先,对于卷积层1中的四种类型的滤波器中的每种滤波器,对输入数据DT11执行滤波处理。换言之,对于四种类型的滤波器中的每种,执行对构成滤波器的滤波器系数与输入数据DT11进行卷积的处理。
用在卷积层1中执行的卷积处理中的每种滤波器是20×1抽头滤波器。换言之,每种滤波器的抽头数(即,滤波器系数的数目)为20×1。此外,在使用每种滤波器执行的卷积处理中,执行设置10个样本提前量(advance)的滤波处理。
通过在卷积层1中执行这种卷积处理,输入数据DT11转换为中间数据DT12。
中间数据DT12是四个维度×790个样本的数据。换言之,中间数据DT12包括在图中的横向方向上排列的四个相应维度的数据段,并且每个维度的数据段包括790个样本(即,在图中纵向上排列的790个数据)。
接下来,在作为第二层的池化层1中,10个样本宽度的数据区域被设定为目标,并且对在卷积层1中获得的中间数据DT12执行设置10个样本的提前量的处理,该处理包括从数据区域中挑选(提取)最大值。
换言之,在池化层1中,10个样本宽度的数据区域被设定为目标,并且对中间数据DT12执行设置10个样本的提前量的池化处理,该池化处理包括提取最大值。
通过执行这种池化处理,中间数据DT12转换成中间数据DT13。这里,中间数据DT13包括四个维度的数据段,并且每个维度的数据段包括79个样本(数据段)。
这里,参考图2,描述了卷积层1中的卷积处理和池化层1中的池化处理。
例如,如图2中的左侧所示,在使用一个滤波器的卷积层1中的卷积处理中,对包括输入数据DT11的样本SP11、样本SP12以及样本SP13的20个样本与滤波器系数进行卷积。
换言之,执行对数据区域W11中包括的并且在时间方向上连续排列的从样本SP11到样本SP13的20个样本中的每个与构成滤波器的滤波器系数进行卷积的卷积处理。然后,通过利用被设定为目标的数据区域W11执行卷积处理而获得的值是位于中间数据DT12的图示中左下方的样本SP21的样本值。
由于用于在卷积层1中执行卷积处理的滤波器是20×1抽头滤波器,所以数据区域W11被设置为一个维度×20样本的区域。
此外,由于卷积层1中的卷积处理的样本提前数是10(即,由于卷积层1中的卷积处理是设置10个样本的提前量的卷积处理),所以数据区域W12被设定为在利用数据区域W11被设定为目标而执行的卷积处理之后执行卷积处理的处理目标区域。
数据区域W12是包括20个连续排列的样本的区域,其中样本SP12位于数据区域W12的开始处,该样本SP12是位于数据区域W11的开始处的先于样本SP11的第十个样本。换言之,数据区域W12是通过将数据区域W11在过去方向上移位十个样本而获得的区域。这里,数据区域W12是包括样本SP12至样本SP14的区域。
与数据区域W11的情况相同,在以数据区域W12为目标执行的卷积处理中,对20个样本中的每个与滤波器系数进行卷积,该20个样本包括输入数据DT11的样本SP12至样本SP14。然后,通过执行利用被设定为目标的数据区域W12来执行卷积处理而获得的值是样本SP22的样本值,该样本SP22是中间数据DT12的图示中的从左下向上的方向上的第二个样本。
在卷积层1中,通过每次对四种滤波器中的每一个将处理对象数据区域移位十个样本而执行卷积处理来重复执行卷积处理,以生成中间数据DT12。中间数据DT12中的四个维度的每段数据与通过使用四种滤波器在卷积层1中执行卷积处理而获得的每段数据相对应。
此外,在池化层1中,包括第一个维度的从样本SP21到样本SP23的十个样本的数据区域W21被设定为处理目标,并且执行提取最大值的处理,样本SP21到样本SP13在纵向上连续排列。
换言之,包括在数据区域W21中的十个样本的样本值的最大值是样本SP31的样本值,样本SP31位于中间数据DT13的图示中的左下方。
当数据区域W21被设定为目标并且执行提取最大值的处理时,包括十个连续排列的样本的区域被设定为下一个数据区域,其中,作为位于数据区域W21的开始处的先于样本SP21的第十个样本的样本位于下一数据区域的开始处。换言之,由于池化层1中的池化处理的样本提前数是10,所以处理目标数据区域被移位10个样本。
然后,如上所述获得的新数据区域被设定为目标,并且执行提取最大值的处理。之后,执行类似的处理以将中间数据DT12转换为中间数据DT13。
返回到图1的描述,当通过在池化层1中执行池化处理来获得中间数据DT13时,使用八种类型的滤波器在作为第三层的卷积层2中执行与卷积层1中的卷积处理类似的卷积处理。
换言之,在卷积层2中,使用抽头数为10×4的八种不同的滤波器(即,八种不同的10×4抽头滤波器)对每种滤波器执行设置提前一个样本的卷积处理(滤波处理)。
这导致了中间数据DT13转换成八个维度×70个样本的中间数据DT14。换言之,中间数据DT14包括八个维度的数据段,并且每个维度的数据段包括70个样本(数据段)。
在作为第四层的池化层2中,10个样本宽度的数据区域被设定为目标,并且对中间数据DT14执行设置10个样本的提前量的池化处理,该池化处理包括提取最大值。这导致了中间数据DT14转换成八个维度×七个样本的中间数据DT15。
此外,在作为第五层的卷积层3中,使用一种类型的滤波器执行与卷积层1中的卷积处理类似的卷积处理。
换言之,在卷积层3中,使用7×8抽头滤波器来执行设置提前一个样本的卷积处理(滤波处理)。
这导致了中间数据DT15转换成一个维度×一个样本的鉴别结果数据DT16,该鉴别结果数据DT16输出到鉴别器,并且如上所述获得的鉴别结果数据DT16被输出作为对输入数据DT11执行的鉴别处理的结果(鉴别结果)。
从卷积层1到卷积层3的五个层中的运算处理由具有神经网络结构的鉴别器执行。
顺便说一下,在具有这种神经网络结构的鉴别器的每层中,需要将在最接近的先前层中执行的运算处理中获得的所有数据段设置为目标,以在当前层中执行运算处理。因此,运算处理的处理量和执行运算处理所需的存储器的存储量变大。
这里,讨论了帧处理应用于由具有图1所示的神经网络结构的鉴别器执行的处理。
帧处理是指对每个帧的输入数据执行处理(即,利用输入数据的帧的开始或结束的位置被设定为处理的开始位置来执行处理)。帧处理主要用于调整神经网络的计算输出的频率(诸如减少执行运算处理所需的存储量)或者例如对输入数据的1024个样本执行一次输出。
例如,如图3所示,假设帧处理应用于由具有与图1的神经网络配置类似的神经网络配置的鉴别器执行的处理。换言之,假设执行帧处理,该帧处理包括针对与输入数据DT11的一帧相对应的1024个样本计算一次鉴别结果数据DT16。注意,与图1中的部分相对应的图3中的部分将由相同的附图标记表示,并将适当省略其的描述。
在图3中,假设输入数据DT11中的时间上的最新的帧是当前帧。在输入数据DT11的图示中,当前帧是包括1024个连续排列最下侧的样本的区间,并且,在图3中,输入数据DT11中的当前帧的部分用阴影表示。
为了计算输入数据DT11的当前帧的一个鉴别结果数据DT16,利用被设定为处理目标的数据区域W41执行卷积层1中的卷积处理。
数据区域W41是包括总共1030个样本的区间,该1030个样本是当前帧中所包括的1024个样本,以及在时间上最接近当前帧之前的帧(下文中也称为最接近的前一帧)中的后六个样本。
在这种情况下,相对于对除了输入数据DT11的当前帧中的处理目标以外的数据(区间)执行卷积,如果可以在前一帧中执行卷积,则这将导致能够减少对虚线所示的数据区域W42执行的运算处理,以及执行运算处理所需的存储量。
然而,图3所示的神经网络配置不能执行这种运算处理和存储量的减少。原因是当前帧和前一帧的处理边界不重合。
这里,帧的处理边界是指例如数据中的样本的位置,在该位置(即,在帧的开始处或在帧的末尾处的位置、或者在对帧执行的运算处理结束后要开始接下来的运算处理的数据中的样本的位置处要开始对帧执行的运算处理。
例如,当前帧的处理边界位于输入数据DT11中的样本的位置处,在该位置处,在对当前帧执行的运算处理结束之后要开始接下来的运算处理。不可能减少运算量或存储量,除非要开始接下来的运算处理的输入数据DT11中的样本的位置与已开始对最接近与当前帧相邻的的前一帧执行的运算处理的输入数据DT11中的样本的位置(即,在最接近的前一帧(中的最后的样本的位置)的末尾处的样本的位置)重合,在最接近的前一帧的末尾处的样本的位置是最接近的前一帧的处理边界所在的位置)。
具体地,例如,假设(包括在输入数据DT11中的)从图3中最低样本开始的第n个样本是第n个样本,其中1≤n。因此,例如,输入数据DT11的图示中的最低样本(即,最新时间点的样本)是第一样本。
在这种情况下,在卷积层1中,首先,相对于输入数据DT11中包括的第1样本至第20样本,在当前帧中执行使用20×1抽头滤波器的卷积处理。
此外,由于卷积层1中的提前数(样本提前数)是十个样本,因此随后对第11个样本至第30个样本执行使用20×1抽头滤波器的卷积处理。
之后,重复执行类似的卷积处理,并且,在当前帧中,对在输入数据DT11末尾中包括的第1011个样本至第1030个样本执行使用20×1抽头滤波器的卷积处理。
输入数据DT11中的数据区域W41是到截止到此刻所描述的卷积处理的处理对象数据区域,并且在当前帧中,利用被设定为处理对象区域的数据区域W41来执行卷积处理。
此外,当对第1011个样本至第1030个样本执行卷积处理时,第1021个样本至第1040个样本是卷积处理的下一个目标。因此,用于卷积处理的当前帧的处理边界是第1021个样本。
在这种情况下,卷积处理被假定为对在最接近当前帧之前的最接近的前一帧中的第1021个样本至第1040个样本执行。
然而,实际上未执行这种卷积处理,并且当执行帧处理时(即,当针对每个帧执行处理时),从最接近的前一帧中的第1025个样本开始执行卷积处理,该第1025个样是当前帧的帧边界。
换言之,最接近的前一帧的处理边界是第1025个样本,而与当前帧的处理边界相对应的第1025个样本和第1021个样本并不相同。
因此,相对于针对当前帧中的处理目标数据以外的数据(区间)的上述卷积(即,从第1021个样本开始执行的卷积),不可能在最接近的前一帧中执行卷积,并且这导致不能减少处理量和存储量。
此外,由于帧处理的应用,图3的示例中的卷积层1中的卷积处理不同于图1所示的卷积层1的卷积处理。换言之,卷积处理相对于不同于参考图1所描述的示例中的数据区域来执行。
因此,为了执行与参考图1描述的示例中的卷积处理类似的卷积处理,对于与一帧相对应的1024个样本的每组,必须对所有输入数据DT11执行参考图1描述的处理,并且这导致了需要大量的处理量和大量的存储量。
因此,根据本技术,应用包括对每个帧的输入数据执行运算处理的帧处理,以获得其中用于帧处理的当前帧与前一帧的处理边界重合的神经网络结构。这使得可以至少减少存储量。
具体地,根据本技术,使用具有神经网络结构的鉴别器,在该结构中,在至少一个层中,用于对该层中的帧执行运算处理的处理单元是由输入数据的形状确定的大小,或者用于运算处理的样本提前数是由输入数据的形状确定的提前数。
换言之,在具有应用了本技术的神经网络结构的鉴别器中,每层中的处理单元和用于运算处理的样本提前数以及帧长度(帧中的样本数)被确定,使得相邻帧的处理边界重合。
此外,当在具有神经网络结构的鉴别器中执行帧处理并且当提前确定了一个帧的大小(帧长度)时,如果不仅考虑输入数据的形状而且还考虑输入数据的一个帧的大小(帧长度),就足够确定用于在层中执行的运算处理的处理单元和样本提前数就足。
这里,如上所述,数据的形状(数据形状)由数据的维度数和每个维度中的数据段数(数据样本数)确定。
例如,图1所示的输入数据DT11是在一个维度中包括7910个样本的数据,并且因此是具有一个维度×7910个样本的数据形状的数据。此外,例如,图1所示的中间数据DT12是具有四个维度×790个样本的数据形状的数据。
注意,用于在层中执行运算处理的处理单元的大小是指当在该层中执行针对一帧的运算处理时用于处理的最小单位。换言之,例如,处理单元的大小是指当通过每次在一层中移位数据区域时执行的处理,多次重复执行类似处理时处理目标数据区域的大小(即,包括在数据区域中的样本数)。
具体地,例如,在参考图1描述的卷积层1的情况下,处理单元是指包括20个样本的数据区域,对该20个样本进行一次卷积处理(滤波处理),并且该数据区域由滤波器的抽头数确定。
此外,例如,参考图1描述的池化层1,处理单元是指包括十个样本的数据区域并且是提取最大值的目标,该数据区域由样本宽度确定。
如上所述,通过使用具有神经网络结构(配置)的鉴别器执行鉴别处理,可以使用于运算处理的相邻帧的处理边界重合,在该神经网络结构(配置)中,使用根据输入数据的形状或帧长度确定的抽头数、样本宽度(数据区域的大小)以及样本提前数来执行层中的运算处理。这使得可以至少减少在执行运算处理时临时需要的存储器的存储量,并且因此可以更有效地执行鉴别。
例如,本技术使得可以当存在与几个帧相对应的输入数据DT11并且在时间上从当前帧至过去的方向针对每个帧依次执行对帧的处理时,或者当针对每个帧相继地输入输入数据DT11的帧并且在时间上从当前帧至向后的方向上针对每个帧依次执行对帧的处理时,使用于运算处理的相邻帧的处理边界重合。此外,对帧执行的运算处理可以在位于帧的开始处的样本处开始,或者在位于帧的末尾处的样本处开始。
注意,这里描述了其中根据输入数据的形状或帧长度来确定抽头数、样本宽度以及样本提前数的示例。然而,可以根据输入数据的形状来确定输入数据的长度(即,包括在帧中的样本数(数据段数)),使得用于运算处理的相邻帧的处理边界重合。在这种情况下,还可以使用于运算处理的相邻帧的处理边界重合,从而更有效地执行鉴别。
这里,描述了使用具有应用了本技术的神经网络结构的鉴别器执行的鉴别处理的具体示例。
在应用了本技术的具有神经网络结构的鉴别器中,如例如图4所示,在每一层中执行处理。
换言之,在图4所示的示例中,作为使用鉴别器的鉴别处理,依次执行五个相应层中的处理,并且根据作为音频数据的一个维度(一个信道)的输入数据DT11'计算作为最终鉴别结果的鉴别结果数据DT16'。
具体地,这里,针对每个帧执行帧处理,该帧处理包括针对每个帧在时间方向上从前一帧至后一帧依次执行五个相应层的处理,并且输出针对每个帧的鉴别结果数据DT16'。在本示例中,一个帧包括1024个样本。在对一个帧执行的处理中,输入数据DT11'输入到鉴别器并且一个鉴别结果数据DT16'输出。
注意,在图4中,每个矩形表示数据。此外,在每段数据的图示中,纵向表示时间方向,而横向表示维度。具体地,在每段数据的图示中,向下方向表示较新的时间点的方向(向后方向)。
此外,图中在横向方向上延伸的箭头表示数据转换。这里,第一层是卷积层1'、第二层是池化层1、并且第三层是卷积层2。此外,第四层是池化层2、第五层是卷积层3。
由于在五个层当中,在作为池化层1至卷积层3的第二至第五层中执行的处理分别与作为参考图1描述的池化层1至卷积层3的第二至第五层中的处理相似,对于其的说明将适当省略。
在本例中,输入数据DT11'是从图1所示的且包括7910个样本的输入数据DT11当中的从第1样本至第1036样本的数据,第一个样本是在最新时间点的样本。
这里,当一帧包括1024个样本时,输入数据DT11'中的从第1个样本到第1024个样本的区间与一帧相对应。该帧在下文中称为当前帧。
此外,输入数据DT11'中从第1025个样本到第1036个样本中的每个样本是包括在紧接在当前帧之前的最接近的前一帧中的样本。
在卷积层1'中,输入包括当前帧的这种数据(样本)和最接近的前一帧的部分数据的输入数据DT11'以执行卷积处理,并且输入数据DT11'转换成中间数据DT12'。注意,更具体地,通过在当前帧中执行卷积层1'中的卷积处理,仅获得作为四个维度×790个样本的中间数据DT12'的部分的数据PDT1,并且通过在前一帧中执行卷积处理,获得中间数据DT12'的其余部分(数据PDT2)。
在卷积层1'中的卷积处理中,使用抽头数为20×1的四种类型的滤波器(即,四种20×1抽头滤波器),对每种滤波器的输入数据DT11'执行设置提前8个样本的卷积处理(滤波处理)。
具体地,在卷积层1'中执行针对每个帧执行的帧处理。换言之,在卷积层1'中,设置提前8个样本并且使用四种类型的20×1抽头滤波器来执行的卷积处理(滤波处理)被执行为针对每个帧对帧执行的运算处理。
在这种情况下,相对于对当前帧执行的处理,包括当前帧的所有样本的数据区域被设定为目标区域,并且执行卷积处理。此外,在执行卷积处理的时刻之前的时刻,包括最接近的前一帧的所有样本的数据区域被设定为目标区域,并且执行卷积处理作为在卷积层1'中执行的运算处理。
此外,在作为第二层的池化层1中,10个样本宽度的数据区域被设定为目标,并且对中间数据DT12'执行设置10个样本的提前量的池化处理,该处理包括提取最大值。这导致了中间数据DT12'转换成四个维度×79个样本的中间数据DT13'。
在作为第三层的卷积层2中,使用抽头数为10×4的八种不同滤波器,针对每种滤波器执行设置提前一个样本的卷积处理(滤波处理)。这导致了中间数据DT13'转换成八个维度×70个样本的中间数据DT14'。
此外,在作为第四层的池化层2中,10个样本宽度的数据区域被设定为目标,并且对中间数据DT14'执行设置10个样本的提前量的池化处理,该池化处理包括提取最大值。这导致了中间数据DT14'转换成八个维度×七个样本的中间数据DT15'。
最后,在作为第五层的卷积层3中,使用抽头数为7×8的滤波器执行设置提前一个样本的卷积处理,并且中间数据DT15'转换成一个维度×一个样本的鉴别结果数据DT16'。输出如上所述获得的鉴别结果数据DT16',作为对输入数据DT11'(鉴别结果)执行的鉴别处理的结果。
这里,比较参考图1描述的卷积层1'中的卷积处理和卷积层1中的卷积处理。在卷积层1中的样本提前数是10,而在卷积层1'中的样本提前数是8。
如上所述,当样本提前数为8时,在当前帧中,利用被设定为目标的从第1样本到第20样本的数据区域来执行卷积处理,并且随后,利用被设定为目标的从第9样本到第28样本的数据区域来执行卷积处理。
之后,通过每次数据区域移位八个样本执行卷积处理来重复执行卷积处理,并且在结束时,利用被设定为目标的从第1017个样本到第1036个样本的数据区域来执行卷积处理。
在这种情况下,第1017个样本位于一数据区域的开始处,对该数据区域执行最后卷积处理。因此,在时间方向上作为在第1017个样本之前的8个样本的第1025样本是当前帧的处理边界。
这里,一个帧与1024个样本相对应,并且第2015个样本是位于最接近的前一帧(中的最后一个样本)的结尾处的样本。因此,第1025个样本是最接近的前一帧的处理边界。因此,在图4所示的示例中,当前帧与最接近的前一帧的处理边界重合,该当前帧与最接近的前一帧彼此相邻。具体地,在该示例中,帧的处理边界的位置是帧的边界的位置。这导致了对当前帧中的处理目标以外的数据(区间)执行的卷积在前一帧中执行。
更具体地,在该示例中执行帧处理,并因此,针对输入数据DT11的1024个样本的输入,计算出一个鉴别结果数据DT16'。
在这种情况下,输入数据DT11当中的输入数据DT11'被设定为处理目标数据区域,并且执行卷积层1'中的卷积处理。
因此,在当前帧中,不必对以虚线示出的输入数据DT11的数据区域W51执行卷积处理。因此,可以减少与数据区域W51相对应的量的卷积处理的处理量,并且减少保存例如输入数据DT11的数据区域W51的数据以执行不必要的卷积处理所需的存储器的存储量。
注意,在这种情况下,通过在当前帧中执行卷积层1'中的卷积处理,仅获得在图4中的中间数据DT12'的下部中的四个维度×128个样本的数据PDT1,而未获得中间数据DT12'的其余部分(即,数据PDT2)。
然而,数据PDT2已通过在多个帧中执行卷积层1'中的卷积处理而获得,该多个帧在时间上先于当前帧。因此,如果保存通过卷积处理而获得的数据PDT2就足够了,该卷积处理在多个时间上的前一帧中执行。这使得当在当前帧中的卷积层1'中执行的卷积处理结束时,可以获得中间数据DT12',从而随后立即开始在池化层1中执行处理。
此外,在图4中描述了使用具有神经网络结构的鉴别器的情况,在该结构中相邻帧的处理边界仅在卷积层1'中重合。然而,相邻帧的处理边界也可以在卷积层1'之后的层中重合。
在这种情况下,例如如图5所示,在具有应用了本技术的神经网络结构的鉴别器中的每层中执行处理。注意,与图4中的部分相对应图5中的部分将由相同的附图标记表示并将适当省略其的描述。
在图5所示的示例中,依次执行五个相应层中的处理作为使用鉴别器的鉴别处理,并且根据作为音频数据的一个维度(一个信道)的输入数据DT11'计算作为最终鉴别结果的鉴别结果数据DT25。
具体地,这里,对每个帧执行帧处理,该帧处理包括在依次从前一帧到后一帧的时间方向上针对每个帧依次执行五个相应层的处理,并且输出每个帧的鉴别结果数据DT25。
注意,在图5中,每个矩形表示数据。此外,在每段数据的图示中,纵向表示时间方向,而横向表示维度。具体地,在每段数据的图示中,向下方向表示较新的时间点方向(向后方向)。
此外,图中在横向方向上延伸的箭头表示数据转换。这里,第一层是卷积层1'、第二层是池化层1'、并且第三层是卷积层2'。此外,第四层是池化层2'、并且第五层是卷积层3'。
由于处理完全与参考图4描述的卷积层1'中的处理类似,该处理在作为五层当中的第一层的卷积层1'中执行,所以将适当地省略其描述。
图5所示的神经网络结构通过轻微改变图1所示的神经网络结构中的每层的样本提前数和抽头数而得到。使得相邻帧的处理边界在每层中重合。
如上所述,图5所示的神经网络结构通过轻微改变图1所示的神经网络结构而得到,因此这种神经网络结构中的改变几乎不影响鉴别性能。
在该示例中,利用用作输入的输入数据DT11',如在参考图4所述的情况中那样在卷积层1'中执行帧处理,。
换言之,在卷积层1'中,使用抽头数目为20×1的四种类型的滤波器,对每种滤波器的输入数据DT11'执行设置提前8个样本的卷积处理,作为在当前帧中执行的处理。这导致了输入数据DT11'转换成四个维度×128个样本的中间数据DT21。中间数据DT21是图4所示的数据PDT1本身。
如图4所示,卷积层1'中的这种卷积处理与未应用帧处理时相比,可以减少与数据区域W61相对应的量的处理量和存储量。
此外,在作为第二层的池化层1'中,八个样本宽度的数据区域被设定为目标,并且对中间数据DT21执行设置提前八个样本的池化处理,该处理包括提取最大值。这导致了中间数据DT21转换成四个维度×16个样本的中间数据PDT21。
这里,根据输入数据DT11'的数据形状或帧长度以及根据在卷积层1'中执行的处理(即,卷积层1'的配置(结构)),来确定池化层1'中的样本宽度和样本提前数。因此,池化层1'可以使中间数据DT21中的相邻帧的处理边界重合,并因此与未应用帧处理时相比,减少了与数据区域W62相对应的量的处理量和存储量。
在作为第三层的卷积层2'中,使用抽头数为10×4的八种不同滤波器,针对每种滤波器执行设置提前两个样本的卷积处理。
因此,在卷积层2'中,用作输入的数据的形状(即,目标处理数据区域)包括四个维度×24个样本。另一方面,通过在当前帧中的池化层1'中执行的处理而获得的中间数据PDT21是四个维度×16个样本的数据。
然而,如果保存四个维度×八个样本的中间数据PDT22,该中间数据PDT22是在紧接当前帧之前的最接近的前一帧中的池化层1'中获得的中间数据的一半,则可以根据中间数据PDT21和中间数据PDT22获得四各维度×24个样本的中间数据DT22。
在卷积层2'中,使用抽头数目为10×4的八种不同滤波器,对每种滤波器的这种中间数据DT22执行设置提前两个样本的卷积处理。这导致了中间数据DT22转换成八个维度×八个样本的中间数据DT23。
卷积层2'中的抽头数和样本提前数根据输入数据DT11'的数据形状或帧长度以及卷积层2'前面的每层的配置(结构)来确定。因此,卷积层2'可以使中间数据DT22中的相邻帧的处理边界重合,并因此,与未应用帧处理时相比,减少了与数据区域W63相对应的量的处理量和存储量减少。
此外,在作为第四层的池化层2'中,八个样本宽度的数据区域被设定为目标,并且对中间数据DT23执行设置提前8个样本的池化处理,该池化处理包括提取最大值。这导致了中间数据DT23转换成八个维度×一个样本的中间数据PDT31。
这里,根据输入数据DT11'的数据形状或帧长度以及根据池化层2'前面的每层的配置(结构)来确定池化层2'中的样本宽度和样本提前数。因此,池化层2'可以使中间数据DT23中的相邻帧的处理边界重合,并因此,与未应用帧处理时相比,减少了与数据区域W64相对应的量的处理量和存储量。
在作为第五层的卷积层3'中,使用抽头数目为8×8的滤波器来执行设置提前一个样本的卷积处理。
因此,在卷积层3'中,用作输入的数据的形状(即,目标处理数据区域)包括八个维度×八个样本。另一方面,通过在当前帧中的池化层2'中执行的处理而获得的中间数据PDT31是八个维度×一个样本的数据。
然而,如果保存八个维度×七个样本的中间数据PDT32,该中间数据是在当前帧之前的七个前一帧中的池化层2'中获得的中间数据,则可以根据中间数据PDT31和中间数据PDT32获得八各维度×八个样本的中间数据DT24。
在卷积层3'中,使用抽头数为8×8的滤波器,对这种中间数据DT24执行设置提前一个样本的卷积处理。这导致了中间数据DT24转换成一个维度×一个样本的鉴别结果数据DT25。输出如上所述获得的鉴别结果数据DT25,作为对输入数据DT11'执行的鉴别处理的结果(鉴别结果)。
卷积层3'中的抽头数和样本提前数根据输入数据DT11'的数据形状或帧长度以及卷积层3'前面的各层的配置(结构)来确定。因此,卷积层3'可以使中间数据DT24中的相邻帧的处理边界重合。
如上所述,当使用具有参考图5所述的神经网络结构的鉴别器来执行鉴别处理时。与图1的情况相比,可以减少高达约六分之一的处理量和存储量,同时提供等效的性能。
注意,真滴1024个样本(一帧)输出一个鉴别结果数据DT25的示例已经在图5中描述,但是由具有参考图5描述的神经网络结构的鉴别器执行的鉴别结果数据DT25的输出频率可以几帧一次。在这种情况下,也可以减少与数据区域W61到数据区域w64相对应的量的处理量和存储量。
此外,为了简单的描述,已在图4和图5中描述了使用相对简单且较小的神经网络的示例。然而,相对于神经网络的大小(即,层数等),可以采用任何大小。在本技术的情况下,如果神经网络更复杂和更大,则处理量和存储量的减少率会更高。
此外,这里已描述了卷积处理和池化处理作为在神经网络的层中执行的处理的示例。此外,可以执行诸如残差处理的任意运算处理。残差处理是包括将当前层前面的层的输出添加到输入到当前层的数据,并且获得当前层的输出的数据转换处理。
此外,本技术不仅适用于关于对音频数据执行的自动鉴别的技术(诸如话语辨别、说话者识别以及环境声音识别),而且也适用于使用神经网络的各种技术。
例如,上面已描述了本技术应用于使用具有神经网络结构的鉴别器执行的鉴别处理的示例,并且本技术还可应用于使用具有神经网络结构的预测器执行的预测处理(即,回归处理)。
在这种情况下,预测器的输出与指示通过执行回归处理而获得的预测结果的概率相对应,并且在预测器的每层中执行与在鉴别器的每层中执行的处理类似的处理。
具体地,例如,本技术适用于基于音频信号(音频数据)的低频带信号,使用神经网络生成音频信号的高频带信号的频带扩展技术。
例如,公开了WO2015/79946(以下称为参考专利文献)作为频带扩展技术,根据从音频信号中获得的多个低频子带(low-band sub band)的低频子带功率生成高频带信号,该高频带信号是音频信号的高频带分量。
换言之,在参考专利文献中,针对多个低频子带中的每个获得音频信号的低频子带功率,并且基于所获得的低频子带功率,获得位于音频信号的高频带侧的多个高频子带(high-band sub band)的高频子带功率的估计值,作为准高频子带功率。然后,基于准高频子带功率生成高频带信号。
这里,如参考专利文献中公开的公式(2)所示,在参考专利文献中使用通过回归分析而提前获得的系数来计算准高频子带功率,该回归分析使用最小二乘技术来被执行,在该最小二乘技术中,低频子带功率用作说明变量(explanatory variable)且高频子带功率用作解释变量(explained variable)。
另一方面,如果本技术应用于准高频子带功率的计算,则可以通过使用神经网络以更高的精度来计算准高频子带功率。
在这种情况下,例如,音频信号的每多个帧中的每个中的低频子带功率用作具有神经网络结构的预测器的输入。此外,例如,与一帧相对应的音频信号中的多个高频子带的高频子带功率(准高频子带功率)用作具有神经网络结构的预测器的输出。
更具体地,例如,均包括16帧的四个低频子带的低频子带功率用作具有神经网络结构的预测器的输入。此外,例如,均包括一个帧的八个高频子带的高频子带功率用作预测器的输出。
在这种情况下,到预测器的输入是16乘4矩阵的输入数据(即,四个维度×16个样本的输入数据),并且输入数据的每个样本表示一个低频子带的低频子带功率。此外,预测器的输出是1乘8矩阵的鉴别结果数据(即,八个维度×一个样本的鉴别结果数据),鉴别结果数据的每个样本表示一个高频子带的高频子带功率。
如上所述,本技术也适用于使用神经网络的频带扩展技术。同样,本技术也可应用于例如使用神经网络来辨别图像或视频的技术和提取对象的区域的技术。
<与滤波器系数有关的压缩编码>
顺便说一下,当执行具有神经网络结构的鉴别器的卷积层中的处理时,使用了提前确定的滤波器的滤波器系数。因此,存在对用于保存这些滤波器系数的存储器的需要。
具体地,在卷积层中,有必要保存与抽头数×滤波器类型数一样多的滤波器系数。换言之,有必要保存与用于执行卷积的每种滤波器或多种滤波器中的每种的抽头数一样多的滤波器系数。
因此,如果卷积层数或在卷积层中使用的滤波器数增加,则保存滤波器系数所需的存储量也因卷积层数的增加或滤波器数的增加而增加。
因此,本技术对滤波器系数进行压缩编码,以减少保存滤波器系数所需的存储器的存储量。
根据本技术,通过保存零系数位置表和非零系数表这两个表来压缩滤波器系数的数据量,零系数位置表指示具有零的值的滤波器系数的位置(即,零系数的位置),非零系数表指示除零系数之外的滤波器系数的值。
具体地,例如,假设存在包括4×4抽头的滤波器系数的系数矩阵,如图6中的箭头Q11所示。在本示例中,箭头Q11所示的系数矩阵中的矩形表示滤波器系数,而矩形中的值表示滤波器系数的值。
根据本技术,这种系数矩阵被压缩编码以转换成由箭头Q12指示的零系数位置表和由箭头Q13指示的非零系数表。
箭头Q12所示的零系数位置表是4×4的表,该表与原始系数矩阵的抽头数相同,而包括在零系数位置表中的矩形中的值指示系数矩阵中的滤波器系数的值是否为0(零),其中系数矩阵中的滤波器系数的位置关系与零系数位置表中的矩形的位置关系相同。
换言之,当零系数位置表中的矩形中的值为0时,这指示系数矩阵中的滤波器系数的值为0,其中系数矩阵中的滤波器系数在的位置关系与零系数位置表中的矩形的位置关系相同。因此,例如,零系数位置表的图示中左上侧的矩形中的值“0”指示系数矩阵的图示中左上侧的滤波器系数的值为“0”,其中系数矩阵中的滤波器系数的位置关系与零系数位置表中的矩形的位置关系相同。
另一方面,当零系数位置表中的矩形中的值为1时,这指示系数矩阵中的滤波器系数的值不为0,其中系数矩阵中的滤波器系数的位置关系与零系数位置表中的矩形的位置关系相同。因此,例如,在零系数位置表的图示中的最左侧从顶部开始的第二矩形中的值“1”指示在系数矩阵的图示中的最左侧从顶部开始的第二滤波器系数的值不为“0”,其中系数矩阵中的滤波器系数的位置关系与零系数位置表中的矩形的位置关系相同。
此外,箭头Q13所示的非零系数表是指示原始系数矩阵中的滤波器系数的值的表,并且该非零系数表中的矩形的值表示系数矩阵中的滤波器系数的值,该滤波器系数的值不是零系数。
在该示例中,在非零系数表中,非零系数的滤波器系数的值(即,在零系数位置表中具有值“1”的滤波器系数的值)通过在系数矩阵的图示中位于左上角的滤波器系数用作起始点,以栅格扫描(raster scanning)的顺序排列。
例如,在非零系数表的图示中的最左侧的矩形中的值“3”指示系数矩阵的第一行中从左侧开始的第三个滤波器系数的值为“3”。
如上所述,不保存系数矩阵本身,但保存通过对系数矩阵进行压缩编码而获得的零系数位置表和非零系数表。这导致了能够减少保存用于获得滤波器系数的信息所必需的存储器的存储量。
例如,在图6所示的示例中,当一个滤波器系数的值为8比特时,由于系数矩阵包括16个滤波器系数,所以系数矩阵的数据量为128(=16×8)比特。
另一方面,当指示一个滤波器系数是否为零系数的值为零系数位置表中的一比特时,零系数位置表的数据量为16(=16×1)比特。
此外,当一个滤波器系数的值在非零系数表中为8比特时,由于非零系数的滤波器系数的数目为5,所以非零系数表的数据量为40(=5×8)比特。
因此,零系数位置表的数据量与非零系数表的数据量之和为56(=40+16)比特。这显示了与作为原始系数矩阵的数据量的128比特相比,数据量(即,存储量)被压缩了大约一半。对包括滤波器系数的系数矩阵的压缩率随着零系数的数目的增加而增加。
此外,根据本技术,系数矩阵的压缩编码也可以减少在卷积层中执行处理时的处理量。
例如,在使用系数矩阵的卷积处理中,执行使用系数矩阵的矩阵运算。因此,无论滤波器系数是否为零系数,都相对于所有滤波器系数执行获得滤波器系数与卷积目标数据的乘积的运算(乘法处理)和获得所获得的乘积之和的运算(加法运算)。
另一方面,当系数矩阵被压缩编码时,首先,基于零系数位置表和非零系数表执行解码处理,并且使用作为解码处理的结果而获得的滤波器系数执行卷积处理。
这里,当执行解码处理时,只要从非零系数表中加载与零系数位置表中的具有不为零的值的位置相对应的滤波器系数就足够了。因此,例如,与诸如霍夫曼编码(Huffmancoding)的其它压缩方法相比,执行解码时的处理量更小。
此外,在解码处理之后执行的卷积处理中,仅相对于加载的滤波器系数执行获得滤波器系数与卷积目标数据的乘积的运算(乘法处理)和获得所获得乘积之和的运算(加法处理)。这使得可以减少卷积处理本身的处理量。
因此,如果零系数的数目变大,则在解码处理中和卷积处理中执行的运算的总处理量变得小于未改变地使用系数矩阵的卷积处理的处理量,并且随着零系数数目的增加,处理量的减少率增加。
注意,当在神经网络中执行系数学习时可以使用例如L1正则化、L2正则化或基于它们的正则化,来增加系数矩阵中的零系数的数目。因此,当在具有神经网络结构的鉴别器中执行学习时,如果使用正则化适当地调整零系数的数目,则可以通过对滤波器系数进行压缩编码来减少处理量和存储量。
注意,在例如“Ian Goodfellow,Yoshua Bengio和AaronCourville,《深度学习》,The MIT Press,2016”中,详细公开了在神经网络中执行系数学习时的正则化。
<神经网络处理设备的配置的示例>
接下来,描述应用了上述本技术的神经网络处理设备。
图7示出应用了本技术的神经网络处理设备的实施例的配置的示例。
图7所示的神经网络处理设备11是信息处理设备,该设备包括具有神经网络结构的鉴别器,在该结构中使用根据输入数据的形状或帧长度确定的抽头数、样本宽度以及样本提前数在层中执行运算处理。
神经网络处理设备11基于所供应的输入数据在神经网络的每层中执行运算处理,以对输入数据执行鉴别处理,并且输出指示鉴别的结果的鉴别结果数据。
注意,这里,描述了其中神经网络处理设备11是具有参考图5描述的神经网络结构的鉴别器的示例。
神经网络处理设备11包括卷积处理器21、池化处理器22、卷积处理器23、池化处理器24以及卷积处理器25。
在这种情况下,具有参考图5描述的神经网络结构的鉴别器包括卷积处理器21至卷积处理器25。换言之,神经网络包括卷积处理器21至卷积处理器25。
卷积处理器21在卷积层1'中对所供应的输入数据执行处理,并且将作为卷积层1'中的处理的结果而获得的中间数据供应至池化处理器22。
卷积处理器21包括解码器41、存储器42以及系数保存部43。
例如,系数保存部43包括非易失性存储器。零系数位置表和非零系数表被保存在系数保存部43中,相对于通过提前执行学习而获得的抽头数为20×1的四种不同类型的滤波器,零系数位置表和非零系数表通过对滤波器的滤波器系数进行压缩编码而获得。
解码器41基于每种滤波器的零系数位置表和非零系数表来执行对滤波器系数进行解码的处理,并且获得滤波器的非零系数的滤波器系数。存储器42包括例如易失性存储器,并且所供应的输入数据和被执行运算的数据临时保存在存储器42中。
池化处理器22对由卷积处理器21供应的中间数据执行池化层1'中的处理,并且将作为池化层1'中的处理的结果而获得的中间数据供应至卷积处理器23。池化处理器22包括存储器51。存储器51包括例如易失性存储器,并且由卷积处理器21供应的中间数据和被执行运算的数据临时保存在存储器51中。
卷积处理器23对由池化处理器22供应的中间数据执行卷积层2'中的处理,并且将作为卷积层2'中的处理的结果而获得的中间数据供应至池化处理器24。
卷积处理器23包括解码器61、存储器62以及系数保存部63。
例如,系数保存部63包括非易失性存储器。零系数位置表和非零系数表保存在系数保存部63中,相对于通过提前执行学习而获得的抽头数为10×4的八种不同类型的滤波器,零系数位置表和非零系数表通过对滤波器的滤波器系数进行压缩编码而获得。
解码器61基于每种滤波器的零系数位置表和非零系数表来执行对滤波器系数进行解码的处理,并且获得为非零系数的滤波器的滤波器系数。存储器62包括例如易失性存储器,并且由池化处理器22供应的中间数据和被执行运算的数据临时保存在存储器62中。
池化处理器24对由卷积处理器23供应的中间数据执行池化层2'中的处理,并且将作为池化层2'中的处理的结果而获得的中间数据供应至卷积处理器25。池化处理器24包括存储器71。存储器71包括例如易失性存储器,并且由卷积处理器23供应的中间数据和被执行运算的数据临时保存在存储器71中。
卷积处理器25对由池化处理器24供应的中间数据执行卷积层3'中的处理,并且输出作为卷积层3'中的处理的结果而获得的鉴别结果数据。
卷积处理器25包括解码器81、存储器82以及系数保存部83。
例如,系数保存部83包括非易失性存储器。零系数位置表和非零系数表保存在系数保存部83中,零系数位置表和非零系数表通过对滤波器的滤波器系数压缩解码而获得,通过提前执行学习而获得的该滤波器的滤波器系数的抽头数为8×8。
解码器81基于滤波器的零系数位置表和非零系数表执行对滤波器系数进行解码的处理,并且获得非零系数的滤波器的滤波器系数。存储器82包括例如易失性存储器,并且由池化处理器24供应的中间数据和被执行运算的数据临时保存在存储器82中。
注意,已在上面描述了其中神经网络处理设备11包括具有参考图5描述的神经网络结构的鉴别器的示例。然而,神经网络处理设备11可以包括具有参考图4描述的神经网络结构的鉴别器。
在这种情况下,卷积层1'中的处理由卷积处理器21执行、池化层1中的处理由池化处理器22执行、卷积层2中的处理由卷积处理器23执行、池化层2中的处理由池化处理器24执行、卷积层3中的处理由卷积处理器25执行。
<鉴别处理的描述>
接下来,描述神经网络处理设备11的运算。换言之,下面参考图8所示的流程图描述由神经网络处理设备11执行的鉴别处理。注意,针对输入数据的每个帧执行鉴别处理。
在步骤S11中,卷积处理器21的解码器41从系数保存部43读取零系数位置表和非零系数表,并且基于零系数位置表和非零系数表执行对滤波器系数进行解码的处理。此外,卷积处理器21的存储器42在其中临时存储所供应的输入数据。
在步骤S12中,基于通过执行步骤S11中的处理而获得的四种滤波器的滤波器系数,相对于存储在存储器42中的输入数据,卷积处理器21执行针对四种滤波器中的每种设置提前八个样本的卷积处理。例如,在步骤S12中,仅使用非零系数的滤波器系数来执行卷积处理。
卷积处理器21将通过执行卷积处理而获得的中间数据供应至池化处理器22的存储器51,并使中间数据临时存储在存储器51中。
这种卷积处理可以是卷积处理的处理量和存储器42的存储量减少与图5所示的数据区域W61相对应的量。此外,也可以使运算处理的处理量进一步减少与零系数相对应的量。
在步骤S13中,池化处理器22将八个样本宽度的数据区域设定为目标,并且相对于存储在存储器51中的中间数据,执行设置提前八个样本的池化处理,该池化处理包括提取最大值。池化处理器22将通过执行池化处理而获得的中间数据供应至卷积处理器23的存储器62,并使中间数据临时存储在存储器62中。
这种池化处理可以使池化处理的处理量和存储器51的存储量减少与图5所示的数据区域W62相对应的量。
在步骤S14中,卷积处理器23的解码器61从系数保存部63中读取零系数位置表和非零系数表,并且基于零系数位置表和非零系数表执行对滤波器系数进行解码的处理。
在步骤S15中,基于通过执行步骤S14中的处理而获得的八个滤波器的滤波器系数,相对于存储在存储器62中的中间数据,卷积处理器23针对八种滤波器中的每种执行设置提前两个样本的卷积处理。例如,在步骤S15中,仅使用非零系数的滤波器系数来执行卷积处理。
卷积处理器23将通过执行卷积处理而获得的中间数据供应至池化处理器24的存储器71,并使中间数据临时存储在存储器71中。
这种卷积处理可以使卷积处理的处理量和存储器62的存储量减少与图5所示的数据区域W63相对应的量。此外,也可以使运算处理的处理量进一步减少与零系数相对应的量。
在步骤S16中,池化处理器24将八个样本宽度的数据区域设定为目标,并且相对于存储在存储器71中的中间数据,执行设置提前八个样本的池化处理,该池化处理包括提取最大值。池化处理器24将通过执行池化处理而获得的中间数据供应至卷积处理器25的存储器82,并使中间数据临时存储在存储器82中。
这种池化处理使池化处理的处理量和存储器71的存储量减少与图5所示的数据区域W64相对应的量。
在步骤S17中,卷积处理器25的解码器81从系数保存部83中读取零系数位置表和非零系数表,并且基于零系数位置表和非零系数表执行对滤波器系数进行解码的处理。
在步骤S18中,基于通过执行步骤S17中的处理而获得的滤波器的滤波器系数,相对于存储在存储器82中的中间数据,卷积处理器25执行设置提前一个样本的卷积处理。例如,在步骤S18中,仅使用非零系数的滤波器系数来执行卷积处理。这种卷积处理使运算处理的处理量减少与零系数相对应的量。
卷积处理器25输出通过执行卷积处理而获得的鉴别结果数据,并且结束鉴别处理。
如上所述,神经网络处理设备11使用根据输入数据的形状或帧长度而确定的抽头数、样本宽度以及样本提前数在每层中执行运算处理,并生成鉴别结果数据。这导致了可以减少处理量和存储量,并且更有效地执行鉴别。
此外,神经网络处理设备11基于提前保存的零系数位置表和非零系数表来执行解码处理,并且使用作为解码处理的结果而获得的滤波器系数来执行卷积处理。这导致了可以减少用于保存滤波器系数的存储器的存储量,并且也通过省略对与零系数相对应的部分执行的积-和运算(product-sum operation)来减少卷积处理的处理量。
注意,神经网络处理设备11可以用作上述预测器,该预测器预测用于频带扩展的高频子频带功率(准高频子频带功率)。
在这种情况下,低频子带功率输入到卷积处理器21作为输入数据,并且卷积处理器25输出卷积处理的处理结果(运算结果)作为预测高频子带功率的结果。然而,在这种情况下,与参考图5描述的处理不同的处理在每一层中执行。
<计算机的配置的示例>
顺便说一下,上述一系列处理可以使用硬件或软件来执行。当使用软件执行该系列处理时,该软件所包括的程序安装在计算机上。这里,计算机的示例包括并入专用硬件的计算机,以及诸如通用个人计算机的计算机,该计算机能够通过安装在其上的各种程序执行各种功能。
图9是使用程序执行上述一系列处理的计算机的硬件的配置的示例的框图。
在计算机中,中央处理单元(CPU)501、只读存储器(ROM)502以及随机存取存储器(RAM)503通过总线504彼此连接。
此外,输入/输出接口505连接到总线504。输入部506、输出部507、记录部508、通信部509以及驱动器510连接到输入/输出接口505。
输入部506包括例如键盘、鼠标、麦克风以及成像元件。输出部507包括例如显示器和扬声器。记录部508包括例如硬盘和非易失性存储器。通信部509包括例如网络接口。驱动器510驱动诸如磁盘、光盘、磁光盘或半导体存储器的可移除记录介质511。
在具有上述配置的计算机中,例如,通过CPU 501经由输入/输出接口505和总线504将存储在记录部508中的程序加载到RAM 503中并执行该程序,来执行上述一系列处理。
例如,可以通过存储在用作例如包介质(package medium)的可移除记录介质511中来设置由计算机(CPU 501)执行的程序。此外,可以经由诸如局域网、互联网或数字卫星广播的有线或无线传输介质来设置程序。
在计算机中,程序可以通过安装在驱动器510上的可移除记录介质511经由输入/输出接口505安装在记录部508上。此外,程序可以经由输入/输出接口505被通信部509接收,以安装在记录部508上。此外,程序可以提前安装在ROM 502或记录部508上。
注意,由计算机执行的程序可以是其中以本文描述的顺序按时间顺序执行处理的程序,或者可以是其中并行执行处理或在必要时刻(诸如调用的时刻)执行处理的程序。
此外,本技术的实施例不限于上述示例,并且可以在不脱离本技术的范围的情况下对其进行各种修改。
例如,本技术也可以具有云计算的配置,在该云计算的配置中多个设备共享单个功能的任务并协同工作以经由网络执行单个功能。
此外,使用上述流程图描述的相应步骤除了由单个设备执行之外,还可以由多个待执行的设备共享。
此外,当单个步骤包括多个处理时,包括在单个步骤中的多个处理除了由单个设备执行之外,还可以由多个待执行的设备共享。
此外,本技术还可以采用以下配置。
(1)一种神经网络处理设备,包括:
运算处理器,构成神经网络并对输入数据的每个帧执行运算处理,该运算处理是其中所述输入数据的指定帧的运算处理的处理边界与对于所述输入数据的其他帧的运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
(2)根据(1)所述的神经网络处理设备,其中,
运算处理中的提前数、包括用于执行运算处理的滤波器系数的滤波器的抽头数、作为运算处理的目标的数据区域的大小、或输入数据的帧长度被确定,使得所述指定帧与所述其他帧的所述运算处理的处理边界重合。
(3)根据(2)所述的神经网络处理设备,其中,
根据输入数据的数据形状确定提前数、抽头数、数据区域的大小或帧长度。
(4)根据(3)所述的神经网络处理设备,其中,
输入数据的数据形状由输入数据的维度数和每个维度中的数据的段数确定。
(5)根据(1)至(4)中任一项所述的神经网络处理设备,其中,
运算处理为卷积处理、池化处理、或残差处理。
(6)根据(1)至(5)中任一项所述的神经网络处理设备,其中,
神经网络处理设备是具有神经网络结构的鉴别器。
(7)根据(1)至(6)中任一项所述的神经网络处理设备,其中,
输入数据是音频信号的低频子带的低频子带功率,并且
运算处理器输出音频信号的高频子带的高频子带功率。
(8)一种神经网络处理方法,包括:
由构成神经网络的运算处理器对输入数据的每个帧执行运算处理,所述运算处理器包含在神经网络处理设备中,所述运算处理是对于所述输入数据的指定帧的所述运算处理的处理边界与对于所述输入数据的其他帧的所述运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
(9)一种使计算机作为神经网络处理设备运算的程序,所述神经网络处理设备包括构成神经网络的运算处理器,所述运算处理器对输入数据的每个帧执行运算处理,所述运算处理是所述输入数据的指定帧的所述运算处理的处理边界与所述输入数据的其他帧的所述运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
(10)一种神经网络处理设备,包括:
解码器,执行对滤波器的经压缩编码的滤波器系数进行解码的解码处理;以及
运算处理器,所述运算处理器构成神经网络并执行对通过执行所述解码处理而获得的所述滤波器系数和输入数据进行卷积的卷积处理。
(11)根据(10)所述的神经网络处理设备,其中,
解码器基于通过对滤波器系数的压缩编码而获得的零系数位置表和非零系数表来执行解码处理,该零系数位置表指示具有零的值的滤波器系数,该非零系数表指示不为零的滤波器系数的值。
(12)根据(10)或(11)所述的神经网络处理设备,其中,
所述运算处理器仅使用通过所述解码处理而获得且具有不为零的值的所述滤波器系数来执行所述卷积处理。
(13)一种神经网络处理方法,包括:
所述神经网络处理设备包括:
解码器,执行滤波器的经压缩编码的滤波器系数的解码处理;以及
运算处理器,构成神经网络并执行通过执行所述解码处理而获得的所述滤波器系数和输入数据的卷积处理,
由所述解码器执行所述解码处理;并且
由所述运算处理器执行所述卷积处理。
(14)一种使计算机作为神经网络处理设备进行运算的程序,该神经网络处理设备包括解码器和构成神经网络的运算处理器,
解码器执行对滤波器的经压缩编码的滤波器系数进行解码的解码处理,并且
运算处理器执行卷积处理,该卷积处理对通过执行解码处理而获得的滤波器系数与输入数据进行卷积。
参考标志列表
11 神经网络处理设备
21 卷积处理器
22 池化处理器
23 卷积处理器
24 池化处理器
25 卷积处理器
41 解码器
61 解码器
81 解码器。

Claims (14)

1.一种神经网络处理设备,包括:
运算处理器,所述运算处理器构成神经网络并对输入数据的每个帧执行运算处理,所述运算处理是其中所述输入数据的指定帧的运算处理的处理边界与对于所述输入数据的其他帧的运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
2.根据权利要求1所述的神经网络处理设备,其中,
确定以下项使得所述指定帧与所述其他帧的所述运算处理的处理边界重合:所述运算处理中的提前数、包括用于执行所述运算处理的滤波器系数的滤波器的抽头数、作为所述运算处理的目标的数据区域的大小、或所述输入数据的帧长度。
3.根据权利要求2所述的神经网络处理设备,其中,
根据所述输入数据的数据形状确定所述提前数、所述抽头数、所述数据区域的大小和所述帧长度。
4.根据权利要求3所述的神经网络处理设备,其中,
所述输入数据的所述数据形状由所述输入数据的维度数和每个维度中的数据的段数确定。
5.根据权利要求1所述的神经网络处理设备,其中,
所述运算处理为卷积处理、池化处理、或残差处理。
6.根据权利要求1所述的神经网络处理设备,其中,
所述神经网络处理设备是具有神经网络结构的鉴别器。
7.根据权利要求1所述的神经网络处理设备,其中,
所述输入数据为音频信号的低频子带的低频子带功率,并且
所述运算处理器输出所述音频信号的高频子带的高频子带功率。
8.一种神经网络处理方法,包括:
由构成神经网络的运算处理器对输入数据的每个帧执行运算处理,所述运算处理器包含在神经网络处理设备中,所述运算处理是其中所述输入数据的指定帧的所述运算处理的处理边界与对于所述输入数据的其他帧的所述运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
9.一种使计算机作为神经网络处理设备进行运算的程序,所述神经网络处理设备包括构成神经网络的运算处理器,所述运算处理器对输入数据的每个帧执行运算处理,所述运算处理是其中所述输入数据的指定帧的所述运算处理的处理边界与所述输入数据的其他帧的所述运算处理的处理边界重合的处理,所述其他帧不同于所述指定帧。
10.一种神经网络处理设备,包括:
解码器,所述解码器执行对滤波器的经压缩编码的滤波器系数进行解码的解码处理;以及
运算处理器,所述运算处理器构成神经网络并执行对输入数据和通过执行所述解码处理而获得的所述滤波器系数进行卷积的卷积处理。
11.根据权利要求10所述的神经网络处理设备,其中,
所述解码器基于通过对所述滤波器系数的压缩编码而获得的零系数位置表和非零系数表来执行解码处理,所述零系数位置表指示具有为零的值的所述滤波器系数,所述非零系数表指示非零的所述滤波器系数的值。
12.根据权利要求10所述的神经网络处理设备,其中,
所述运算处理器仅使用通过所述解码处理而获得且具有不为零的值的所述滤波器系数来执行所述卷积处理。
13.一种神经网络处理方法,包括:
所述神经网络处理设备包括:
解码器,执行经压缩编码的滤波器的滤波器系数的解码处理;以及
运算处理器,构成神经网络并执行输入数据和通过执行所述解码处理而获得的所述滤波器系数的卷积处理,
由所述解码器执行所述解码处理;并且
由所述运算处理器执行所述卷积处理。
14.一种使计算机作为神经网络处理设备进行运算的程序,所述神经网络处理设备包括解码器和构成神经网络的运算处理器,
所述解码器执行滤波器的经压缩编码的滤波器系数的解码处理,并且
所述运算处理器执行对输入数据和通过执行所述解码处理而获得的所述滤波器系数进行卷积的卷积处理。
CN201980008794.7A 2018-01-23 2019-01-09 神经网络处理装置和方法以及程序 Withdrawn CN111656364A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018-008547 2018-01-23
JP2018008547 2018-01-23
PCT/JP2019/000280 WO2019146398A1 (ja) 2018-01-23 2019-01-09 ニューラルネットワーク処理装置および方法、並びにプログラム

Publications (1)

Publication Number Publication Date
CN111656364A true CN111656364A (zh) 2020-09-11

Family

ID=67396102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980008794.7A Withdrawn CN111656364A (zh) 2018-01-23 2019-01-09 神经网络处理装置和方法以及程序

Country Status (5)

Country Link
US (1) US20210150322A1 (zh)
EP (1) EP3745312A4 (zh)
JP (1) JP7200950B2 (zh)
CN (1) CN111656364A (zh)
WO (1) WO2019146398A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021172054A1 (ja) * 2020-02-25 2021-09-02 ソニーグループ株式会社 信号処理装置および方法、並びにプログラム
KR20230038509A (ko) * 2020-07-17 2023-03-20 소니그룹주식회사 뉴럴 네트워크 처리 장치, 정보 처리 장치, 정보 처리 시스템, 전자 기기, 뉴럴 네트워크 처리 방법 및 프로그램
WO2024154310A1 (ja) * 2023-01-19 2024-07-25 日本電信電話株式会社 事前処理装置、推論処理装置、事前処理方法、及び推論処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4308955B2 (ja) * 1999-01-20 2009-08-05 パナソニック株式会社 フィルタ装置およびそのフィルタ係数取得方法
JP5411807B2 (ja) * 2010-05-25 2014-02-12 日本電信電話株式会社 チャネル統合方法、チャネル統合装置、プログラム
CN105745706B (zh) 2013-11-29 2019-09-24 索尼公司 用于扩展频带的装置、方法和程序
JP2016146174A (ja) * 2015-02-06 2016-08-12 パナソニックIpマネジメント株式会社 決定方法およびプログラム
US10395141B2 (en) * 2017-03-20 2019-08-27 Sap Se Weight initialization for machine learning models

Also Published As

Publication number Publication date
WO2019146398A1 (ja) 2019-08-01
US20210150322A1 (en) 2021-05-20
JP7200950B2 (ja) 2023-01-10
EP3745312A1 (en) 2020-12-02
JPWO2019146398A1 (ja) 2021-01-28
EP3745312A4 (en) 2021-07-14

Similar Documents

Publication Publication Date Title
EP3276540B1 (en) Neural network method and apparatus
US10834425B2 (en) Image compression/decompression method and device, and image processing system
US10666944B2 (en) Image encoding/decoding apparatus, image processing system, image encoding/decoding method and training method
US20230070744A1 (en) Region-based image decompression
CN111656364A (zh) 神经网络处理装置和方法以及程序
CN111641832A (zh) 编码方法、解码方法、装置、电子设备及存储介质
US8762141B2 (en) Reduced-complexity vector indexing and de-indexing
EP3622509B1 (en) Processing of a multi-channel spatial audio format input signal
US11749295B2 (en) Pitch emphasis apparatus, method and program for the same
US20140211845A1 (en) Moving image encoding apparatus
CN115361559A (zh) 图像编码方法、图像解码方法、装置以及存储介质
KR20210003514A (ko) 오디오의 고대역 부호화 방법 및 고대역 복호화 방법, 그리고 상기 방법을 수하는 부호화기 및 복호화기
EP4131257A1 (en) Signal processing device and method, and program
US20230267310A1 (en) Neural network processing apparatus, information processing apparatus, information processing system, electronic device, neural network processing method, and program
CN116312502A (zh) 基于顺序采样分块机制的端到端流式语音识别方法及装置
EP4196981A1 (en) Trained generative model speech coding
WO2011000408A1 (en) Audio coding
Ahmed et al. Audio Compression Using Transform Coding with LZW and Double Shift Coding
US9911423B2 (en) Multi-channel audio signal classifier
US20240282328A1 (en) Program, information processing method, recording medium, and information processing device
Wernik et al. Audio lossless encoding with adaptive Context-Dependent Constant Component Removing
CN116248897A (zh) 图像处理方法、系统、电子设备及计算机可读存储介质
CN115052146A (zh) 一种基于分类的内容自适应下采样视频编码优化方法
CN116095333A (zh) 图像压缩方法、装置、设备及存储介质
CN114359418A (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20200911