CN114093377A - 分裂归一化方法、装置、音频特征提取器、芯片 - Google Patents

分裂归一化方法、装置、音频特征提取器、芯片 Download PDF

Info

Publication number
CN114093377A
CN114093377A CN202210051924.9A CN202210051924A CN114093377A CN 114093377 A CN114093377 A CN 114093377A CN 202210051924 A CN202210051924 A CN 202210051924A CN 114093377 A CN114093377 A CN 114093377A
Authority
CN
China
Prior art keywords
pulse
module
normalization
split
counting
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.)
Granted
Application number
CN202210051924.9A
Other languages
English (en)
Other versions
CN114093377B (zh
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.)
Shenzhen Shizhi Technology Co ltd
Chengdu Shizhi Technology Co ltd
Original Assignee
Shenzhen Shizhi Technology Co ltd
Chengdu Shizhi Technology Co ltd
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 Shenzhen Shizhi Technology Co ltd, Chengdu Shizhi Technology Co ltd filed Critical Shenzhen Shizhi Technology Co ltd
Priority to CN202210051924.9A priority Critical patent/CN114093377B/zh
Publication of CN114093377A publication Critical patent/CN114093377A/zh
Priority to PCT/CN2022/082719 priority patent/WO2023137861A1/en
Priority to US18/020,282 priority patent/US20230300529A1/en
Application granted granted Critical
Publication of CN114093377B publication Critical patent/CN114093377B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/04Circuits for transducers, loudspeakers or microphones for correcting frequency response
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • 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/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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
    • G06N3/065Analogue means
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • 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
    • 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/45Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of analysis window
    • 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/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/01Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Neurology (AREA)
  • Noise Elimination (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及一种分裂归一化方法、装置、音频特征提取器、芯片,为了提高音频前端对背景噪声的鲁棒性,对每个通道进行分裂归一化处理,包括:根据平均窗口内输入脉冲序列的平均脉冲数量产生阈值;在每个时钟周期,判断是否使能积分发放计数模块计数,若是,则积分发放计数模块开始计数,且当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。与现有技术相比,该技术方案将昂贵且复杂的分裂归一化方法进行了改进,结构更简单、更易实现、精度更高,运用这种分裂归一化处理的装置及芯片具有更好的统计性能、更低的成本和功耗。

Description

分裂归一化方法、装置、音频特征提取器、芯片
技术领域
本发明涉及一种分裂归一化方法、装置、音频特征提取器、芯片,具体涉及一种音频信号处理过程中对背景噪声进行分裂归一化的方法、装置、音频特征提取器、芯片。
背景技术
芯片中音频信号处理模块通常使用音频前端(Audio front end,AFE)处理原始音频信号,进行音频特征提取,将提取的音频特征经编码后由分类器(例如,脉冲神经网络SNN)中进行识别,如图1所示,可用于始终在线关键字发现(keyword spotting,KWS)、话音激活检测(voice activity detect, VAD)、振动异常检测(Vibration anomalydetection)、智慧农业、动物穿戴、环境音检测等。
使用模拟信号处理(Analog signal processing, ASP)的音频前端的实现原理如图2(a)或者2(b)所示,麦克风采集原始音频信号,经低噪声放大器LNA放大后,将其分解为16 个通道。每个通道包括滤波器、整流器、积分泄露发放(Leaky-Integrate-and fire,LIF)等,如图2(a)包括低噪声放大器LNA、16个通道的全波整流器FWR和16个通道的积分泄露发放LIF事件产生模块,图2(b)包括低噪声放大器LNA、16个通道的削波放大器(clippingamplifier,CLIPA)、16个通道的半波整流器HWR和16个通道的积分泄露发放LIF事件产生模块,Spikes 0至Spikes 15表示音频前端16个通道的输出脉冲序列。每个通道中的滤波器仅保留频率与该通道滤波器中心频率匹配的一小部分音频输入信号,进行滤波并检测不同频率随时间变化的信号活动。然后,整流器获取从滤波器出来的通带信号并提取其包络幅度,包络是一个正信号,可以测量每个滤波器随时间输出的瞬时能量或功率。
使用AFE滤波器组可以检测不同频率随时间变化的信号活动,频率和时间的信号活动模式包含音频分类任务的相关信息。例如,当在音频分类任务中说出关键字时,根据说出的关键字的频率模式,从相应的 AFE 滤波器出来的信号的包络会显示一个峰值。因此,通过观察和跟踪滤波器组输出的幅度/瞬时功率,可以及时跟踪输入音频的频率模式。
例如,在农场的背景噪音中检测猪咳嗽场景中,当猪未咳嗽时,观察AFE滤波器组的输出,可看出背景噪声在频、时域中几乎平稳。同样的农场背景下,猪开始咳嗽时,滤波器组输出的瞬时功率发生变化。比较发现,猪咳嗽时,滤波器组输出的频率-时间的活动模式发生了变化。每个滤波器的输出经处理后被转换为脉冲(spike),脉冲速率(单位时间产生的脉冲数)与滤波器输出随时间变化的瞬时功率成正比。然后,产生的脉冲用于音频前端之后的分类器(例如,脉冲神经网络SNN)中进行训练或/和分类。
虽然,在实际应用中,即使没有所需的信号活动(例如,上面的例子中的猪咳嗽),由于背景噪声的存在,音频特征提取器仍然会产生脉冲。这本身并不是一个大问题,因为只要背景噪声是静止的,就可以在下一层中由SNN正确处理和抑制,也就是说,它的功率在频/时域中几乎保持不变。但是,在街道的背景噪音中存在汽车时,例如在汽车接近然后离开时,接收的功率会波动。在这些情况下,AFE产生的脉冲速率也会随时间而变化,并且可能会被误认为是所需的信号本身。
图3为未进行分裂归一化(Divisive normalization, DN)时单个滤波器的输出瞬时功率。可以看出,汽车接近并离开时,背景噪声功率先增加,然后减少。此外,由于在特定时间间隔内存在变化的信号,因此可以观察到瞬时功率中的峰值。图4为同样情况下,单个滤波器的输出瞬时功率进行分裂归一化DN后的输出。其中,尖峰对应信号(如图3和图4中有3个峰值),两者之间的波动属于背景噪声。经对比可知,如果不对背景噪声进行适当的归一化,背景噪声瞬时功率的波动可能会被错误地归类为所需信号的存在;经分裂归一化后,图3中汽车噪声的时变瞬时功率被转换为几乎恒定的背景噪声水平。通过比较图3和图4,有人可能会认为DN确实很容易做到,至少从视觉上看,只需看看瞬时功率,所以经过适当的训练后,后续分类器(例如SNN)应该基本上是可以做到的,甚至可能不需要做任何分裂归一化DN。但是,通过SNN进行这种分裂归一化DN处理,需要在很长一段时间内观察并存储瞬时功率信息,这在实践中非常昂贵且难以做到。因此,我们需要将这样的分裂归一化模块添加到音频特征提取器中,提前对变化的噪声进行降噪处理,进而提高分类器的精度。
发明内容
为了解决或缓解上述部分或全部技术问题,本发明是通过如下技术方案实现的:
一种分裂归一化方法,包括如下步骤:步骤S1:接收输入脉冲序列;步骤S2:根据平均窗口内输入脉冲序列的平均脉冲数量产生阈值;步骤S3:在每个时钟周期,判断是否使能积分发放计数模块计数;若是,则积分发放计数模块开始计数,且当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
在某类实施例中,该分裂归一化方法的步骤S2中,在每个帧周期,计算输入脉冲序列的脉冲数量,利用低通滤波器获取平均窗口内所述脉冲数量的平均值,以产生阈值;其中,所述平均窗口包括至少一个所述帧周期,所述帧周期包括至少一个时钟周期,所述阈值为所述平均值与一个大于0的常数之和。
在某类实施例中,该分裂归一化方法的所述低通滤波器根据公式
N(t+1) = N(t) - N(t) >> b + E(t) 保存和跟踪N(t),并根据所述N(t)得到所述平均值M(t),E(t)、M(t)分别表示帧t上输入脉冲序列的脉冲数量、平均脉冲数量,且M(t)=N(t)>>b,其中,b为移位大小,t为帧标签,N(t)>>b表示N(t)向右移动b位。
在某类实施例中,所述平均窗口大小等于2b与帧周期的乘积。
在某类实施例中,该分裂归一化方法的所述步骤S3具体包括:在每个时钟周期,递减计数器获取输入脉冲序列在时钟周期内的脉冲数量,进行递减计数;比较递减计数器的计数值是否大于0;当所述递减计数器的计数值大于0时,积分发放计数模块计数本地时钟,当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
在某类实施例中,该分裂归一化方法的所述移位大小或本地时钟速率或帧周期能够调节。
在某类实施例中,该分裂归一化方法利用乘法器将所述时钟周期内的脉冲数量加倍。
在某类实施例中,该分裂归一化方法的所述输入脉冲为异步脉冲或同步脉冲。
一种分裂归一化装置包括:输入模块:接收输入脉冲序列;阈值计算模块:根据平均窗口内输入脉冲序列的平均脉冲数量产生阈值;归一化模块:在每个时钟周期,判断是否使能积分发放计数模块计数,当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
在某类实施例中,该分裂归一化装置的所述阈值计算模块包括第一计数模块和低通滤波器;第一计数模块,在每个帧周期,计算输入脉冲序列的脉冲数量;低通滤波器,获取平均窗口内所述脉冲数量的平均值,以产生阈值;其中,所述平均窗口包括至少一个所述帧周期,所述帧周期包括至少一个时钟周期,所述阈值为所述平均值与一个大于0的常数之和。
在某类实施例中,该分裂归一化装置的所述低通滤波器根据公式
N(t+1) = N(t) - N(t) >> b + E(t)保存和跟踪N(t),并根据所述N(t)得到所述平均值M(t),E(t)、M(t)分别表示帧t上输入脉冲序列的脉冲数量、平均脉冲数量,且M(t)=N(t)>>b,其中,b为移位大小,t为帧标签,N(t)>>b表示N(t)向右移动b位。
在某类实施例中,该分裂归一化装置的所述归一化模块包括第二计数模块、递减计数器、脉冲发生器和积分发放计数模块;第二计数模块,在每个时钟周期,获取输入脉冲序列在时钟周期内的脉冲数量;递减计数器,在每个时钟周期,其计数值随着获取的所述时钟周期内的脉冲数量增加并且减1;脉冲发生器,比较递减计数器的计数值是否大于0,当所述递减计数器的计数值大于0时,使能积分发放计数模块计数本地时钟;当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
在某类实施例中,该分裂归一化装置的所述归一化模块不包括线性反馈移位寄存器。
在某类实施例中,该分裂归一化装置的所述移位大小或本地时钟速率或帧周期能够调节。
在某类实施例中,该分裂归一化装置还包括乘法器,所述乘法器用于将所述时钟周期内的脉冲数量加倍;
在某类实施例中,该分裂归一化装置的所述乘法器利用移位寄存器实现,将所述时钟周期内的脉冲数量向左移动c位,其中c为非负整数。
在某类实施例中,该分裂归一化装置的所述输入脉冲为异步脉冲或同步脉冲。
在某类实施例中,该分裂归一化装置的入脉冲为异步脉冲时,第一计数模块与第二计数模块中的每一个都包括两个不带时钟的计数器进行交替计数;或者第一计数模块与第二计数模块中的每一个将输入的所述异步脉冲转换为同步脉冲后,使用带时钟的计数器对所述同步脉冲进行计数,并将所述带时钟的计数器的计数结果存于对应的寄存器中。
在某类实施例中,该分裂归一化装置的所述输入脉冲为同步脉冲时,第一计数模块与第二计数模块中的每一个都包括带时钟的计数器与寄存器,所述带时钟的计数器对所述输入脉冲进行计数,并将所述带时钟的计数器的计数结果存于对应的寄存器中。
在某类实施例中,该分裂归一化装置的当所述输入脉冲为异步脉冲时,所述不带时钟的计数器为纹波计数器;当所述输入脉冲为同步脉冲时,所述带时钟的计数器为数字计数器。
一种音频特征提取器,包括音频前端;所述音频前端,用于对麦克风采集的原始声音信号进行处理,得到多个通道的预归一化脉冲序列;每个通道包括如前所述的分裂归一化装置,或者每个通道使用如前所述的分裂归一化方法,用于对相应通道的预归一化脉冲序列进行归一化处理,得到归一化脉冲序列。
在某类实施例中,该音频特征提取器的所述音频前端包括:低噪声放大器,用于将麦克风采集的声音信号进行低噪声放大后进入多个通道;每个通道包括带通滤波器BPF、整流器和事件产生模块;带通滤波器的输入端耦接至LNA的输出端,带通滤波器的输出端耦接至整流器的输入端,整流器的输出端耦接至事件产生模块,事件产生模块用于产生预归一化脉冲序列。
在某类实施例中,该音频特征提取器还包括AER编码模块,用于对所述分裂归一化装置的输入脉冲或输出脉冲进行AER编码;其中,其中,所述AER编码模块集成于分裂归一化装置之内,或者,AER编码模块置于分裂归一化装置之外。
在某类实施例中,该音频特征提取器还包括选择模块,用于选择是否对的预归一化脉冲序列进行归一化处理。
一种芯片,包括如前所述的归一化音频特征提取器和分类器;所述分类器,根据音频特征提取器输出的脉冲执行分类任务。
在某类实施例中,该芯片的所述分类器为决策树或神经网络,其中,所述神经网络为BNN或DNN或SNN。
在某类实施例中,该芯片还包括AER to SAER模块,用于对所述音频特征提取器的输出脉冲进行处理后传入分类器。
本发明的部分或全部实施例,在现有技术的基础上进行了改进,采用全新架构,结构更简单,更易于实现,并且具有更好的统计性能和更低的功耗,具体来说具有如下有益技术效果:
(1)本发明改进了滤波器的实现,无延迟,且避免了量化和速率盲区等问题,精度更高。
(2)本发明不使用LFSR,实现更简单,面积和功耗更小,成本更低,并且不会在峰值通道之间创建跨通道统计相关性。
(3)现有技术使用LFSR产生的随机数来产生输出脉冲。因此,在没有输入脉冲时,DN模块可能产生随机输出。相比之下,本发明的DN模块在没有输入脉冲时,不会在输出端产生随机脉冲,保留了脉冲的位置。
(4)本发明的分裂归一化方案可配置,具有灵活性,能够适应不同的音频信号处理场景。
(5)本发明的分裂归一化方案不仅可以处理异步输入脉冲,也可处理同步输入脉冲。
(6)本发明保留了脉冲信息的完整性和不同通道间的独立性,具有更好的鲁棒性、更快的处理速度、更高的精度以及更低的功耗。
更多的有益效果将在优选实施例中作进一步的介绍。
以上披露的技术方案/特征,旨在对具体实施方式部分中所描述的技术方案、技术特征进行概括,因而记载的范围可能不完全相同。但是该部分披露的这些新的技术方案同样属于本发明文件所公开的众多技术方案的一部分,该部分披露的技术特征与后续具体实施方式部分公开的技术特征、未在说明书中明确描述的附图中的部分内容,以相互合理组合的方式披露更多的技术方案。
本发明任意位置所披露的所有技术特征所组合出的技术方案,用于支撑对技术方案的概括、专利文件的修改、技术方案的披露。
附图说明
图1为现有技术中音频特征提取器和分类器的原理图;
图2 (a)为现有技术中一种音频前端结构图;
图2 (b)为现有技术中另一种音频前端结构图;
图3为未进行分裂归一化DN时单个滤波器的输出瞬时功率;
图4为单个滤波器的输出瞬时功率进行分裂归一化DN后的输出;
图5为现有技术中归一化音频特征提取器的原理图;
图6为现有技术中单个通道进行分裂归一化DN的结构图;
图7为现有技术中分裂归一化DN模块中低通滤波器的结构图;
图8为本发明单个通道进行分裂归一化DN的原理图;
图9(a)为中心位于 t0的平均时间窗口;
图9(b)为中心位于 t1的平均时间窗口;
图10为处理异步输入脉冲的第一计数模块和第二计数模块的结构图;
图11为处理同步输入脉冲的第一计数模块和第二计数模块的结构图;
图12为本发明某实施例中分裂归一化DN模块的低通滤波器结构图;
图13为本发明某优选实施例中的音频前端;
图14为音频特征提取器包括AER编码器、AER to SAER的示意图;
图15为本发明另一实施例的音频特征提取器示意图;
图16为本发明某实施例中使用SNN分类器进行关键字识别的示意图;
图17为现有技术1与本发明某优选实施例分裂归一化DN后输出结果对比图。
具体实施方式
由于不能穷尽描述各种替代方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案中的要点内容进行清楚、完整地描述。对于下文未详细披露的其它的技术方案和细节,一般均属于本领域通过常规手段即可实现的技术目标或技术特征,限于篇幅,本发明不对其详细介绍。
除非是除法的含义,本发明中任意位置的“/”均表示逻辑“或”。本发明任意位置中的“第一”、“第二”等序号仅仅用于描述上的区分标记,并不暗示时间或空间上的绝对顺序,也不暗示冠以这种序号的术语与冠以其它定语的相同术语必然是不同的指代。
本发明会对各种用于组合成各种不同具体实施例的要点进行描述,这些要点将被组合至各种方法、产品中。在本发明中,即便仅在介绍方法/产品方案时所描述的要点,意味着对应的产品/方法方案也明确地包括该技术特征。
本发明中任意位置处描述存在或包括某步骤、模块、特征时,并不暗示这种存在是排它性地唯一存在,本领域技术人员完全可以根据本发明所披露的技术方案而辅以其它技术手段而获得其它实施例;基于本发明中具体实施例描述的要点,本领域技术人员完全可以对某些技术特征施加替换、删减、增加、组合、调换顺序等手段,获得一个仍遵循本发明构思的技术方案。这些未脱离本发明技术构思的方案也在本发明保护范围之内。
部分重要术语及符号解释:
音频前端(Audio front end,AFE):音频处理模块,用于在频域处理麦克风采集的语音信号。音频前端AFE具有多种实现方式,例如使用模拟电路、数字电路或数模混合电路实现。音频前端的每个脉冲通道都有一个独立的分裂归一化模块DN,例如,对于有16个滤波器的音频前端,总共有16个DN模块。
分裂归一化(Divisive normalization,DN):音频前端将麦克风采集的声音信号分裂为多个通道,分裂归一化模块对每个通道的背景噪声进行适当归一化,以便将变化的背景噪声降低到几乎恒定的水平(如白噪声),静止的噪声可以在下一层中由SNN正确处理和抑制。分裂归一化的主要目的之一是确保最小输出脉冲速率(也称之为背景脉冲触发率)不会因背景噪声的缓慢变化而变化。
脉冲发生器(spike generator,SG):用于将二进制数转换为脉冲序列,包括比较器。
积分发放计数模块(Integrate-and fire, IAF):又称为IAF 计数器/除法器,存储-触发-发放,计算和存储它收到的脉冲数量,当接收的脉冲数量达到阈值时,在输出端产生脉冲,充分利用了输入信号的稀疏性来降低功耗。
递减计数器(count-down counter,CDC):对时钟周期内的脉冲数量累加计数,并且对每个时钟周期还执行计数值减1操作。
平均窗口(Average window):用于对平均窗口持续时间内各帧周期的脉冲数量进行平均,得到平均值M(t)。音频特征提取器(Audio feature exactor):用于提取待识别语音的音频特征,将提取的音频特征编码后交由分类器中进行识别。
分类器:包括决策树(Decision Tree)、神经网络NN(Neural network)等。神经网络包括二进制神经网络BNN、深度神经网络DNN、脉冲神经网络SNN等。
音频信号处理任务中,背景噪声是最大的问题之一,例如在安静的办公室中训练和测试的音频分类设备可能无法在交通噪声很大的街道、笑声或者谈话声音很大的餐厅中正常工作。一种解决方案是使用存在各种背景噪声的训练数据集,然而,该方法在实践中不可行,需要在不同的噪声场景中收集大量数据,且背景噪声的统计数据从一个场景到另一个场景、甚至在同一场景中都不同,例如,人多或人少的餐厅。为了提高音频前端对背景噪声的鲁棒性,一些方法采用每通道能量归一化 (Per-Channel Energy Normalization,PCEN)作为梅尔频率谱图的对数变换的替代方案,进行音频特征提取。图5为一种归一化音频特征提取器(Normalized audio feature exactor,NAFE),包括音频前端和DN阵列,PreNF[0:15]表示音频前端输出16个通道的预归一化脉冲序列,对应地DN阵列包括16个分裂归一化DN模块,PostNF[0:15]表示16个通道的预归一化脉冲序列PreNF[0:15]经对应的DN模块处理后得到的归一化后的脉冲序列。由于音频前端输出端的脉冲速率(即单位时间内的脉冲数)与每个滤波器输出信号的瞬时功率成正比,因此,可以利用帧持续时间内的脉冲数量E(t)估计音频前端输出信号的瞬时功率,同时,利用低通滤波器估计窗口上的平均瞬时功率,将脉冲数量E(t)与估计的平均值相除进行归一化,公式如下:
Figure 477307DEST_PATH_IMAGE002
(1)
其中,E(t)表示特定通道上滤波器输出端的瞬时功率,M(t)表示平均窗口(average window size)内估计的E(t)的平均值,t为帧标签,EPS为一个大于0的常数,例如为1/24,以确保当M(t)接近零时(例如在一个安静的房间里,没有背景噪音时),归一化瞬时功率不会趋近于无穷。
图6为现有技术1(“A Background-Noise and Process-Variation-Tolerant109nW Acoustic Feature Extractor Based on Spike-Domain Divisive EnergyNormalization for an Always-On Keyword Spotting Device”,Dewei Wang等,《2021IEEE International Solid-State Circuits Conference》)中声学特征提取器的每个通道中分裂归一化DN模块的原理图,包括计数模块、低通滤波器LPF、本地时钟产生模块、线性反馈移位寄存器(Linear Feedback Shift Register,LFSR)、脉冲产生器、积分发放计数模块(Intergrate-and-Fire,IAF)、相关连接模块&AER(Address event expression)编码器,其中,PreNF表示该通道的预归一化脉冲序列,E(t)表示帧t上的脉冲数量,10表示E(t)为10位,M(t)表示E(t)在时间窗口内的平均值,16表示M(t)为16位,RN表示随机数,Spk表示脉冲产生器产生的脉冲,PostNF表示该通道归一化后的脉冲序列。每个 DN 模块对应音频前端一个脉冲通道中的滤波器,即对应于音频前端中滤波器组的 16 个滤波器,总共有16个DN模块。此外,一个LFSR模块在16个DN模块之间共享,其中,LFSR模块用于产生随机数RN。
图7为现有技术1中每个通道中分裂归一化DN模块中低通滤波器的结构图,分裂归一化模块接收的输入脉冲序列PreNF经计数器阵列计数后得到帧t上的脉冲数量E(t),例如E(t)为10位,其中t等于0、1……,表示帧编号或标签,>>b表示右移b位,b为移位寄存器的移位参数,M(t)表示第t帧脉冲数量E(t)在时间窗口内的平均值,M(t-1)表示第t-1帧脉冲数量的平均值,latch表示锁存器的时钟信号。一方面帧t上的脉冲数量E(t)被低通滤波器LPF平均为M(t),另一方面利用LFSR产生βE(t)脉冲作为本地脉冲发生器和 IAF 计数器的输入,其中β是缩放常数。积分发放计数模块IAF(作为脉冲域中的整数分频器执行除法,计算和存储它收到的脉冲数量βE(t),当这个数字达到阈值M(t)+EPS时,它会重置其计数器并在输出端产生单个脉冲,从而执行归一化。
具体地,每个通道进行分裂归一化处理包括以下步骤:
步骤S11:接收输入脉冲序列;
步骤S12:确定帧持续时间(也称为帧周期,frame duration或frame period,本发明中简称FD),利用计数器模块得到帧t上的脉冲数量E(t) ;利用低通滤波器实现在平均窗口上平均E(t)获得估算的平均值M(t),估算的平均值M(t)为缓慢变化的E(t),公式为:
M(t+1) = (1-a)M(t) + aE(t) (2)
其中,a=1/2b为整数b的平均参数,大小可根据语音信号和背景噪声的频率响应选择,M(t)表示第t帧脉冲数量E(t)在时间窗口内的平均值,M(t+1)表示第t+1帧脉冲数量的平均值。可以使用累加器和移位器来计算M(t),若移位器移位大小为b,则a=1/2b,上述公式(2)可转换为如下公式:
M(t+1) = M(t) - M(t) >>b + E(t) >>b (3)
其中,位移运算符≫b等价于除以2b,M(t)>>b表示帧t时刻的平均值M(t)向右移位了b位,E(t)>>b表示帧t时刻的脉冲数E(t)向右移位了b位。例如,b=5,它产生了2 b =32帧的平均时间窗口,若每帧的持续时间为50ms,则产生一个持续时间为32×50ms=1.6s的总平均时间窗口。
步骤S13:利用E(t) 产生积分发放(Intergrate-and-Fire,IAF)计数模块用于计数的输入脉冲βE(t),当IAF接收的脉冲数量达到阈值时,在输出端产生脉冲并将计数值清零从新开始计数,以执行归一化,其中β是缩放常数。
脉冲发生模块(spike generation)包括线性反馈移位寄存器LFSR和脉冲发生器SG,脉冲发生器用于将二进制数转换为脉冲序列。脉冲发生器SG的比较器在每个时钟周期内,将LFSR的输出随机数RN与E(t)进行比较,如果随机数RN小于E(t),则脉冲发生器SG产生脉冲。例如,时钟周期Tclk=0.1ms,则对于每一帧(50ms)包括500 个时钟周期Tclk。
然而,由于LFSR是一个确定性的数字电路,因此其输出序列不是真正随机的,实际上它是一个周期性序列。例如,对于10位LFSR,其生成一个介于0到210-1之间的数字,该输出是一个伪随机序列,即数字0-1023几乎是随机出现的,周期为1024。由于E(t)的值在帧内保持不变,而LFSR使用与DN模块相同的时钟,随机数RN在每个时钟周期(0.1ms)内都会变化,因此将E(t)与LFSR的500个输出进行比较。由于 LFSR 输出是伪随机序列,因此产生的脉冲的近似数量由以下公式给出:
β×E(t) = 比较次数×每次比较发放脉冲的概率=
Figure 522010DEST_PATH_IMAGE004
(4)
其中,β是缩放常数,E(t)表示帧t上输入脉冲的数量,β×E(t)表示帧t上输入脉冲的数量被缩放β倍,E(t)/1024表示E(t)与10位LFSR每次输出随机数进行比较后能够发放脉冲的概率。由此可知,对于10位LFSR,参数β=500/1024,即参数β与线性反馈移位寄存器、帧时间和DN模块的时钟周期有关。
本地脉冲发生器(Local clock generator,LCK),用于将βE(t)与本地脉冲发生器相乘来将输出脉冲速率增加一个因子plocal/2。该本地脉冲发生器具有比DN模块时钟周期高plocal倍时钟速率,将每个输入积分发放计数模块IAF的脉冲计数为plocal/2个输出脉冲。增加本地脉冲发生器后,帧持续时间(50ms)内IAF输出的脉冲序列由下式给出,即帧t内输出的脉冲数为:
Figure 927846DEST_PATH_IMAGE006
(5)
其中,E(t)表示帧t上输入脉冲的数量,M(t)表示第t帧脉冲数量E(t)在时间窗口内的平均值,EPS是大于0的常数,M(t)+EPS表示阈值,plocal是本地脉冲发生器与DN模块时钟速率的比值,因子plocal/2是由于本地脉冲发生器的具体实现。
虽然上述方法执行了有效的分裂归一化DN,然而,但存在如下几个缺点,会导致一些系统级和信号处理问题:
1)单通道失真
此方法不保留帧周期内脉冲的顺序。例如,假设在特定帧 t 处 E(t)=200,此方法无法区分这 200 个脉冲是主要来自帧 t 的开头,还是可能位于其末尾,因为对于给定的E(t),仅使用 LFSR 模块生成随机脉冲,脉冲发生器产生的脉冲信号在帧周期内几乎均匀分布。因此,这种方法无法考虑脉冲的小规模统计相关性,这是在下一层 SNN 中执行的分类任务中相当重要的因素,这种效应称之为单通道统计真。此外,使用LFSR 的伪随机数来产生输出脉冲,在没有输入脉冲的时隙中可能会有一些输出脉冲。
2)跨通道统计失真
实践证明,在音频前端的所有通道中(16个)仅使用单个LFSR,因此输出脉冲通道间具有正相关因子,即当一个通道触发时,其他通道也很可能触发,反之亦然。当LFSR输出的随机数RN小于通道中的脉冲计数值E(t)时,会产生脉冲,因此,当LFSR输出高时,没有一个通道可以触发,反之亦然,当LFSR输出低时,所有通道同时触发,因此,存在跨通道统计失真。
3)滤波器存在死区
利用低通滤波器对E(t)平均以产生 M(t)时,会受到数值量化的影响,需要很长时间才能收敛到其稳定状态。公式(4)中,通过运算符≫进行位移等价于除以,该方式只适用于浮点数表示形式,而对于整数表示形式中的位移版本精度不够。例如,假设b=5,当E(t)<2b时,E(t)右移b =5位后等于0,则滤波器看不到E(t)>>b后的值,为了避免这个现象,需要输入滤波器的脉冲速率高于32/FD=32/50ms=640spikes/s,其中FD表示帧周期。换句话说,该DN模块的滤波器存在死区,看不到低于 640 脉冲/秒的速率,而速率低于640 脉冲/秒是音频任务中相当合理的速率。
4)存在延迟
由于E(t)不仅参与M(t)的计算,还参与产生IAF用于计数的输入脉冲βE(t)。只有在收到脉冲数E(t)时,才会进行后续操作,因此在第一帧,需要等待一个帧的持续时间(50ms)才能得到E(0)值,会有延迟50ms。
5)功耗大
音频前端具有16个脉冲通道,每个脉冲通道由一个独立的DN模块处理。同时,每个DN模块中又包含一系列相关的连接,以产生16个输出脉冲序列至地址事件表达编码器。对于整个音频前端,连接当前帧的16个脉冲序列和过去15个帧各自的16个脉冲序列,以创建256D(16×16)特征向量,结构过于复杂,功耗大。
同时,一个LFSR用于产生随机数RN,在所有通道(16个DN及每个DN中的并行模块)中共享,当没有来自音频前端的脉冲时,共享的LFSR和脉冲发生器中的比较器仍会消耗功率,造成了额外的功耗损失。
为了改善这些问题,本发明对DN模块的实现进行了改进,不使用LFSR,实现更简单、功耗更低,不会在峰值通道之间产生跨通道失真;在单个帧上,如果没有输入脉冲,不会产生输出脉冲,避免了延迟和单通道统计失真;改进了滤波器的实现,避免了量化和速率盲区问题,且滤波器可配置,具有灵活性;E(t)仅用于计算平均值,利用第二计数模块和递减计数器将输入脉冲转换为同步脉冲,在时钟周期内使能IAF计数,避免了延迟。
为了简化篇幅,图8为本发明某优选实施例提出的单个通道进行分裂归一化DN的原理图,同时改进了现有技术1中的步骤S12和S13,同时,还可根据实际情况仅改进现有技术中的步骤S12或S13中的一个,本发明对此不作限定。图8包括第一计数模块、控制器、低通滤波器LPF、第二计数模块、递减计数器、脉冲产生器和积分发放计数模块IAF。其中,PreNF表示该通道的预归一化脉冲序列,E(t)表示帧t上的脉冲数量,E(t)的位数由第一计数模块决定,M(t)表示E(t)在时间窗口内的平均值,M(t) 的位数由LPF决定,且E(t)和M(t)的位数可调,设计人员可根据实际需求进行选择,例如图8中E(t)可为10位,M(t)可为16位,ctrl表示控制器输出的控制信号,EPS为大于0的常数,M(t)+EPS表示积分发放计数模块IAF的阈值,Spk表示脉冲产生器产生的脉冲,PostNF表示该通道归一化后的脉冲序列。分裂归一化的具体实施步骤如下:
步骤S21:接收输入脉冲序列。
步骤S22:根据平均窗口内输入脉冲序列的平均脉冲数量产生阈值。
某实施例中,在每个帧周期或帧持续时间,计算输入脉冲序列的脉冲数量,利用低通滤波器获取平均窗口内所述脉冲数量的平均值,以产生阈值。
首先,确定帧持续时间FD(frame duration或frame period),利用第一计数模块获取帧t上的输出脉冲数量E(t),其中t = 0, 1, …,表示帧编号或标签。
选择一定的帧持续时间,以使帧上的脉冲数量足够大,这样就能很好地平均帧上的输入速率,例如FD为50ms,对于0.1K-1K脉冲/秒的输入脉冲速率,在整个帧中会有大约50-500个脉冲。
其次,利用低通滤波器估计E(t)在平均窗口内的平均值M(t),以产生阈值。进一步地,所述低通滤波器可以是平滑滤波器(Smoothing filter)。平均值M(t)的计算公式如下:
Figure 369061DEST_PATH_IMAGE008
(6)
其中,E(t)表示帧t上输入脉冲的脉冲数量,t为帧标签,avg(E(t))表示E(t)的平均值,即M(t),rin(t)表示帧t内输入脉冲速率,FD表示帧周期。由于E(t)表示的帧t上的输入脉冲数量是一个随机数,为了避免E(t)在其平均值avg(E(t))=M(t)附近的巨大统计波动,std(E(t))/ avg(E(t))(其中std(E(t))表示E(t)的标准偏差)期望尽可能的小。
图9(a)和图9(b)中,弧形描绘了用于平均的平均窗口(本发明中也称为平均时间窗口),包括两个以t0和t1为中心的时间窗口,与图3、图4一样,尖峰对应信号,两者之间的波动属于背景噪声。估计的平均值M(t)是随时间变化的函数,例如,对于中心位于 t0 和t1 的窗口,其平均值分别为M(t0)和 M(t1)。图9(b)中的短斑点表示所需信号的预期活动,通过分析,如果平均窗口持续时间远大于所需信号的预期活动持续时间(短斑点的持续时间),经分裂归一化DN后,可以将时变背景噪声降低到恒定水平,但窗口过大会导致对平均瞬时功率的估计会变差。如果平均窗口非常短并且与所需信号持续时间相同,经分裂归一化DN后,会平均并消除(误杀)所需信号本身。
因此,在实践中,平均窗口AW(Average Window)大小的选择是一个难题,需要选择足够小的窗口长度以对平均瞬时功率进行良好的估计,并且足够大以不会误杀所需的信号。
不同的音频任务用于平均背景噪声能量的时间不同,基于特定的任务(音频信号和背景噪声的统计)选择平均窗口的大小,并利用如下公式,确定低通滤波器的移位参数b:
AW=2b×FD (7)
其中,AW表示平均窗口,b为移位参数,FD为帧周期或帧持续时间。例如,当FD为50ms,平均窗口大小为1.6s时,通过上述公式可以得到b=5。同时由上式可知,如果需要,可以缩短帧持续时间FD,但是为了获得相同的滤波器平均时间,需要适当增加。
为了避免量化和速率盲区问题,本发明提供的低通滤波器具有高精度实现,不是保存和跟踪M(t)的值,而是跟踪N(t)=M(t)≪b即2b M(t),所述低通滤波器根据公式如下公式保存和跟踪N(t),N(t)的计算公式如下:
N(t+1) = N(t) - N(t) >>b + E(t) (8)
利用N(t)得到E(t)平均值的估算值M(t):
M(t) = N(t) >> b (9)
其中,b为移位大小,t为帧标签,E(t)、M(t)分别表示帧t上的输入脉冲数量、输入脉冲平均数量,N(t)>>b表示N(t)向右移动b位,M(t)≪b表示M(t)向左移动b位。通过这种简单的修改,即使E(t)< 2 b ,滤波器也能识别,即滤波器能够处理整个E(t),并且不会由于在之前公式(3)中需要M(t)>>b(右移b位)的截断而遭受量化误差。由于在此实现中考虑了E(t)的所有值,因此滤波器能够处理的最小输入输脉冲速率rLPFmin为:
Figure 170051DEST_PATH_IMAGE010
(10)
其中,rLPFmin为低通滤波器能够处理的最小输入输脉冲速率,FD为帧周期,假设帧周期为50ms,则LPF能够处理的最小输入输脉冲速率为20脉冲每秒,即20spikes/s。由此可见,本发明估算平均值M(t)的方法,消除了现有技术中当输入速率小于 640 脉冲/秒的盲区,精度更高。
参数b是可重构、可编程的,由于DN模块的性能取决于背景噪声的统计数据随时间变化的速度,通过移位(或称为位移)参数b使得低通滤波器平均时间可配置,以适应不同的场景,具有很强的灵活性。例如,可以在芯片复位和初始化期间在1至7范围内选择位移参数b来使滤波器可配置。对于参数b的这些范围,DN模块的平均时间间隔在2×50ms至27×50ms范围内,即在100 ms至6.4秒内。
步骤S23:在每个时钟周期,判断是否使能IAF计数器计数,当IAF的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。包括如下具体步骤:
步骤S231:利用第二计数模块计算一个DN时钟周期(0.1ms)内的输入脉冲序列PreNF中的脉冲数量,递减计数器存储第二计数模块获得的脉冲数量进行递减计数。递减计数器存储一个时钟周期内输入脉冲数量X,其计数值随着获取的所述时钟周期内的脉冲数量增加,并且在每个时钟周期,递减计数器的计数值减1。
DN模块的输入脉冲流源自音频前端对应通道的输出,该输入脉冲流可以是异步的,即在时钟周期内可能会收到多个脉冲。但是,DN 模块使用同步时钟(例如,Tclk=0.1ms),则DN 模块每个时钟周期只能处理一个脉冲。因此,N模块输入脉冲与除法归一化模块的时钟不同步。可以理解为一个队列,脉冲客户们(spikes)随时可能出现,但每个时钟周期Tclk只能为一个客户(spike)提供服务。
步骤S232:在每个时钟周期内,比较递减计数器的计数值与0的大小,只要有新到达的脉冲或一些尚未处理的过去的脉冲,倒数计数器的输出是激活信号1,如果没有要处理的输入脉冲,则转换为0。当该激活信号为 1 时,本地时钟(local clock)被转发到 IAF 计数器,在IAF中这些本地时钟被计数,并与阈值M(t)+EPS比较以产生输出脉冲。
假设在一个时钟周期,DN模块接收到2个输入脉冲(spikes),第二计数模块计数并加载到倒数计数器中。假设递减计数器没有尚未处理的值,由于递减计数器的计数值2大于0,因此产生1信号,即允许脉冲发生器SG产生脉冲。然后,在第二个时钟周期,递减计数器计数值为1,并且由于1仍然大于0,因此产生1信号,并且在此期间允许DN模块接收新的输入脉冲(spikes),若DN模块在第二个时钟周期中无新的脉冲输入,则在第三个时钟周期中,递减计数器达到 0,并且将脉冲发生器SG的脉冲产生权限设置为 0,即脉冲发生器SG不产生脉冲,因此,在此期间,产生两个同步脉冲由下一个模块处理。若DN模块在第二个时钟周期中有1个新的输入脉冲,则在第二个时钟周期中,递减计数器的计数值为2,并且由于2仍然大于0,因此产生1信号,以此类推。
具体地,递减计数器的操作流程如下:
I)DN 模块的时钟周期为Tclk,假设帧持续时间FD内包括F个时钟周期,则FD=F×Tclk,帧t内第k个时钟周期被标记为tF+k,其中k=1……F,F为大于0的常数。
利用第二计数模块获取DN模块一个时钟周期k内的脉冲数量X(tF+k),其中,X(tF+k)表示帧t中第k个时钟周期内的脉冲数量。
II)在时钟周期k内,递减计数器的计数值随着接收到的脉冲数量增加,并且减1。
递减计数器(CDC)的计数值可以用如下公式表示:
Figure 602301DEST_PATH_IMAGE012
(11)
其中,cdc(tF+k)表示帧t中第k个时钟周期递减计数器的计数值,帧t内第k个时钟周期被标记为tF+k,F为大于0的常数,cdc(tF+k-1)表示帧t中第k-1个时钟周期递减计数器的计数值,X(tF+k) 表示递减计数器在帧t的第k个时钟周期新获取的脉冲数量。函数(x)+表示,如果括号内的变量x不为0则输出为其本身,如果变量x为0则输出0,即将递减计数器清0,定义如下:
Figure 587443DEST_PATH_IMAGE014
(12)
在每个时钟周期,如果递减计数器在前一个时钟周期的内容大于零,则会产生一个脉冲,并转发到本地时钟发生器。
因此,第二计数模块与递减计数器可确保所有输入脉冲都得到适当处理。在没有输入脉冲的时间瞬间不会产生一些随机脉冲,改善提到的单通道统计失真,且不使用LFSR,避免了跨通道统计失真。
积分发放计数模块IAF作为除法器,计算帧t内输出的脉冲数Nout(t)。本地时钟被转发到 IAF 计数器,帧上的每一个输入脉冲都乘以一个本地时钟的因子plocal,再除以IAF计数器中的阈值M(t)+EPS,最终帧t内输出的脉冲数Nout(t)为:
Figure 994198DEST_PATH_IMAGE016
(13)
其中,E(t) 和M(t)分别表示帧t内的脉冲数量和平均数量;plocal为时钟因子因子,是本地时钟频率与DN模块时钟频率的比值,EPS为一个大于0的常数,M(t)+EPS表示阈值。
对比现有技术中由公式(5)得到的帧t内的DN模块输出脉冲数可知,产生相同数量输出脉冲时,本发明本地时钟频率可降低4倍,额外节省了功耗。
由于帧t内的每一个输入脉冲都乘以一个本地时钟的因子plocal,所以,帧t内输出的脉冲速率rout(t)为:
Figure 476126DEST_PATH_IMAGE018
(14)
其中,rout(t)为帧t内DN模块输出的脉冲速率,Nout(t)为帧t内DN模块输出的脉冲数量,FD为帧周期,plocal为本地时钟频率与DN模块时钟频率的比值,E(t) 和M(t)分别表示帧t内的脉冲数量和平均数量,EPS为一个大于0的常数,M(t)+EPS表示阈值。由于 E(t)通过 M(t)进行归一化,因此输出脉冲速率几乎与帧持续时间无关,但利用本地时钟因子plocal可以调整分裂归一化的输出脉冲速率。因此经归一化后结果几乎保持不变,输出脉冲速率rout(t)将与plocal/FD成正比,即:
Figure 580742DEST_PATH_IMAGE020
(15)
其中, rout(t)为帧t内DN模块输出的脉冲速率,
FD为帧周期,plocal为本地时钟频率与DN模块时钟频率的比值。
因此,对于给定的目标输出脉冲速率,可以减少帧持续时间以降低本地时钟的频率,以产生一些额外的功耗节省,以及对于已选择的帧持续时间,可以通过本地时钟因子plocal以调整输出脉冲速率,其中因子plocal表示本地时钟具有比DN模块时钟高plocal倍的时钟速率/频率。分裂归一化的主要目的是之一确保最小输出脉冲速率rout(t)(也称之为背景脉冲触发率)不会因背景噪声的缓慢变化而变化。当然,在存在期望信号的情况下,输出脉冲速率有很大的跳跃,将有助于脉冲神经网络 SNN 检测信号并估计其参数。
帧t内输入脉冲速率rin(t)为:
Figure 164432DEST_PATH_IMAGE022
(16)
其中,rin(t)为帧t内输入脉冲速率,E(t)表示帧t内的脉冲数量,FD为帧周期,t为帧标签,等于0、1、2……。因此,输出脉冲速率与输入脉冲速率的关系为:
Figure 229340DEST_PATH_IMAGE024
(17)
其中,rout(t)表示帧t内输出脉冲速率,rin(t)表示帧t内输入脉冲速率,plocal为本地时钟频率与DN模块时钟频率的比值,avg(rin(t))表示帧t内输入脉冲速率的平均值,FD表示帧周期,EPS为一个大于0的常数,avg(rin(t))×FD+EPS表示速率阈值。由此可见,本发明不仅可通过帧t内的脉冲数量E(t)进行归一化,还可利用帧t内的脉冲速率rin(t)进行归一化,脉冲速率等于单位时间内的脉冲数量,二者可以相互转化,同时,技术人员还可根据实际需求选择其他关联的参数及该参数地的平均值进行类似的除法运算进行归一化,本发明并不以此为限。
综上可知,分裂归一化DN模块,包括输入模块、第一计数模块、第二计数模块、递减计数器、脉冲发生器、低通滤波模块、IAF计数器等。DN模块接收输入脉冲序列PreNF(预归一化特征),一方面,在每个帧周期,阈值计算模块计算帧t上PreNF的脉冲数量E(t),E(t)被低通滤波器LPF平均为M(t),以获得阈值。另一方面,归一化模块在每个时钟周期,计算PreNF在时钟周期内的脉冲数量X(tF+k),经递减计数器和脉冲发生器处理后使能IAF计数(即向IAF给local clock),如果计数达到阈值,IAF计数器产生一个输出脉冲并重新开始计数,从而执行归一化。
第一计数模块与第二计数模块具有相同的结构,区别在于,第一计数模块计算帧持续时间内输入脉冲PreNF的数量,第一计数模块输出为E(t),第二计数模块计算一个时钟周期(比帧持续时间短得多)内输入脉冲PreNF的数量,第二计数模块输出为X(tF+k)。
在某优选实施例中,输入脉冲PreNF可以为异步脉冲序列或同步脉冲。
当输入脉冲PreNF可为异步脉冲序列时,在某类实施例中,第一计数模块与第二计数模块的每一个均包括第一计数器与第二计数器,两个计数器进行交替计数,也称为乒乓计数。在某可选实施例中,第一计数器与第二计数器没有时钟,它们异步工作,独立于DN模块的时钟。在进一步地实施例中,第一计数器与第二计数器可以为波纹计数器(ripplecounter),如图10所示结构,其中,PreNF表示预归一化的输入脉冲,ctrl表示控制信号,ripple计数器为第一计数器和第二计数器的一个示例,MUX表示数据选择器Multiplexer,X(tF+k)表示帧t内第k个时钟周期内输入脉冲的脉冲数量,帧t内的时钟周期被标记为tF+k,其中k=1……F,F表示帧持续时间FD内包括的时钟周期个数。
当输入脉冲PreNF为异步脉冲序列时,在另一选实施例中,将异步输入脉冲转换为同步脉冲后,使用带时钟的计数器计数。进一步地,可以使用数字计数器(digitalcounter)计数器进行计数,并将一定时间内的计数结果存于对应的寄存器中。
当输入脉冲PreNF为同步脉冲序列时,在某优选实施例中,第一计数模块与第二计数模块的结构如图11所示。每个计数模块包括一个第三计数器与寄存器,第三计数器计数并将一定时间内的计数结果存于寄存器中。进一步地,第三计数器有时钟,例如可以为数字计数器,图11中PreNF表示预归一化的输入脉冲,Dig counter表示数字计数器,X(tF+k)表示帧t内第k个时钟周期内输入脉冲的脉冲数量,帧t内的时钟周期被标记为tF+k,其中k=1……F,F表示帧持续时间FD内包括的时钟周期个数。
在另一优选实施例中,低通滤波器结构如图12所示,包括加法器、移位器、减法器和锁存器,其中,E(t)表示帧t上输入脉冲的脉冲数量,t等于0、1……,表示帧编号或标签,>>b表示右移b位,b为移位寄存器的移位参数,M(t)表示第t帧上E(t)在时间窗口内的平均值,且N(t)=M(t)≪b即2b M(t)、N(t-1)=M(t-1)≪b即2b M(t-1),M(t-1)表示第帧t-1帧的平均值,latch表示锁存器的时钟信号;图12中示例性地表示E(t)为10位,M(t)为16位,E(t)和M(t)的位数分别由第一计数模块、低通滤波器确定,设计人员可根据实际需求进行调整。该结构中,滤波器不是跟踪M(t)的值,而是保存和跟踪N(t)=M(t)≪b即2bM(t) ,进而获得E(t)在平均窗口内的平均值M(t),如公式(7)和(8)所示,其中 b为位移大小。进一步地,所述低通滤波器可以是平滑滤波器。
归一化模块包括第二计数器、递减计数器、脉冲发生器和积分发放计数模块。脉冲发生器不使用LFSR。第二计数模块、和脉冲发生器可确保所有输入脉冲都得到适当处理。
递减计数器,存储第二计数模块的一个时钟周期k内的脉冲数量X(tF+k),并在每个时钟周期Tclk内,递减计数器的计数值减1。
脉冲发生器,利用比较器将递减计数器的计数值与0比较,当计数值大于0时,脉冲发生器产生一个使能脉冲。
IAF计数器,存储-触发-发放,计算和存储它收到的脉冲数量,脉冲发生器产生脉冲时,本地时钟local clock进入IAF计数器,即有脉冲时,使能IAF计数,当这个计数达到阈值时,它会重置其计数器并在输出端产生单个脉冲。因此,IAF计数器是一个计数模块,且由于IAF计数器执行除法,因此也可称作除法器。
在另一实施例中,包括本地时钟产生模块,脉冲发生器产生的脉冲输入到IAF计数器,并同时作为门控使能本地时钟产生模块产生IAF工作需要的local clock。可利用本地时钟频率调整分裂归一化的输出脉冲速率。例如,脉冲频率为10kHz(一个时钟周期),频率为160kHz的本地时钟进入IAF去采样,相当于将输出脉冲速率提升了16倍。
在另一实施例中,可利用乘法器把新加入递减计数器的脉冲数X(tF+k)乘以倍数γ,最终帧t内输出的脉冲数Nout(t)为:
Figure 863977DEST_PATH_IMAGE026
(18)
其中,Nout(t)表示帧t内输出的脉冲数,plocal为本地时钟频率与DN模块时钟频率的比值,E(t)和M(t)分别表示帧t内输入脉冲的脉冲数量和平均数量,EPS为一个大于0的常数,M(t)+EPS表示阈值,参数γ为倍乘因子,进一步地,倍乘因子γ可利用移位寄存器实现,例如向左移动c位,则参数γ等于2c,c为移位寄存器参数,是一个非负整数。
在另一实施例中,还包括AER(Address event expression)编码模块对DN模块的输入或输出脉冲进行编码。AER编码模块相当于一个接口,可以用于任何地方,可以集成于DN模块之内,置于DN模块的前端或后端,也可以置于DN模块之外,位于音频前端与DN模块之间,或者位于DN模块之后。
DN模块作为“音频特征提取模块”的一部分,通过适当地设计其参数(如位移参数、Plcoal、帧持续时间等),以确保提取的特征(分裂归一化产生的输出脉冲)是非常高质量的特征,然后这些特征被转发到分类器来执行分类任务,以便分类器具有非常好的性能。对应于AER编码模块,存在AER解码模块,同样地,AER解码模块可以集成于分类器之内,或者置于分类器之外,如位于DN模块与网络模型之间。
本发明的音频特征提取器,包括音频前端和分裂归一化DN模块。音频前端对麦克风采集的原始声音信号进行处理,得到16个通道的预归一化脉冲序列PreNF[0:15],所述预归一化脉冲序列PreNF[0:15]经16个分裂归一化DN模块处理后得到16个通道的归一化脉冲序列PostNF[0:15]。本发明的音频前端有多种实现方式,例如使用模拟电路、数字电路或数模混合电路实现。
本发明某优选实施例中的音频前端包括麦克风采集的声音信号经低噪声放大器LNA方法后进入16个并行通道,每个通道包括带通滤波器BPF、整流器和事件产生模块。每个脉冲通道中,带通滤波器的输入端耦接至LNA的输出端,带通滤波器的输出端耦接至整流器的输入端,整流器的输出端耦接至事件产生模块,事件产生模块用于产生脉冲事件。
其中,整流器类型有全波整流器和半波整流器,技术人员可根据设计需求进行选择。事件产生模块可以为泄露-积分发放计数模块LIF事件产生模块,进一步地可以为积分发放计数IAF事件产生模块,IAF事件产生模块是 LIF事件产生模块的一种特殊情况,当模拟电路的时间常数非常大(例如,当前实现中的大电阻和电容)使得泄漏微不足道,即认为不存在泄露。注意,图2或/和图13中音频前端的LIF事件生成模块或 IAF事件生成模块在具有连续时间信号的模拟域中工作,这与DN模块中的IAF 计数器/除法器(如图8所示)不同,IAF 计数器在数字域中工作以累积本地时钟脉冲并与阈值进行比较以产生输出脉冲。
在另一实施例中,音频前端还包括削波放大器(clipping amplifier,CLIPA),耦接于带通滤波器与整流器之间,用于对带通滤波后的信号进行进一步放大,如图13所示,包括级联的低噪声放大器LNA、16个通道的带通滤波器BPF、16个通道的削波放大器CLIPA、16个通道的全波整流器FWR、16个通道的LIF事件产生模块,Spikes 0至Spikes 15表示音频前端16个通道的输出脉冲序列。
在另一实施例中,本发明的音频特征提取器还包括AER to SAER(Serial AER)模块,又称作AER转SAER模块,用于将并行数据转换为串行数据。PostNF为DN模块输出的归一化后的脉冲序列,经AER编码模块编码、AER to SAER模块并串转换处理以及SAER解码模块解码后,由网络模型执行分类任务,并最终输出分类结构,如图14所示。
在另一实施例中,本发明的音频特征提取器具有两条路径,如图15所示,其中,PreNF[0:15]表示音频前端输出16个通道的预归一化脉冲序列,对应地DN阵列包括16个分裂归一化DN模块,PostNF[0:15]表示16个通道的预归一化脉冲序列PreNF[0:15]经对应的DN模块处理后得到16个通道归一化后的脉冲序列,MUX表示数据选择器Multiplexer。图15中,一条路径对预归一化脉冲序列PreNF进行分裂归一化,另一条路径不进行分裂归一化处理,通过选择是否对音频前端产生的预归一化脉冲序列PreNF进行分裂归一化处理,增加了灵活性。
本发明实施例还提供一种芯片,包括如前所述的带有DN模块的音频特征提取器和分类器。其中,分类器,根据音频特征提取器输出的脉冲执行分类任务。分类器可以使用软件、硬件或者软硬件结合的方式实现,具体地可以为决策树、神经网络等,神经网络可以为二进制神经网络(Binary neural network,BNN)、深度神经网络(Deep neural network,DNN)、脉冲神经网络(Spiking neural network,SNN)等,SNN可以为wave sense。进一步地,芯片为拟神态芯片或者类脑芯片。图16为使用脉冲神经网络SNN的分类器进行关键字识别,图16中分类器包括AER/SAER解码器与SNN网络,其中AER解码器对AER编码后的信息进行解码,或/和SAER解码器对归一化后的脉冲PostNF经AER编码和AER转SAER模块处理后的信息进行解码,解码后的信息传输至脉冲神经网络SNN执行关键字识别任务,并由脉冲神经网络SNN输出层的神经元输出识别的关键字1至关键字n。其中,AER/SAER解码器可以集成至分类器内或者置于分类器外,本发明不以此为限。
图17为现有技术1与本发明某优选实施例DN模块输出结果对比,纵轴从下往上依次为音频前端某通道的预归一化脉冲序列PreNF、本发明音频前端对应通道不带LFSR的分裂归一化DN模块的输出结果、现有技术1音频前端对应通道带LFSR的分裂归一化DN模块的输出结果。
从中可以看出,本发明不带LFSR的DN模块输出脉冲与现有技术1的DN模块输出脉冲均实现了很好的归一化,现有技术1的DN模块输出脉冲在没有输入脉冲的时间瞬间产生一些随机脉冲,即前面提到的单通道统计失真。本发明不带LFSR的DN模块输出效果更佳,更好的跟踪了输入脉冲流的分布,即使在非常小的时间尺度内,也能保留有关脉冲的统计信息,具有更好的小规模统计性能。
综上可知,本发明的DN模块结构更简单,更易于实现,并且具有更好的统计性能和更低的功耗。不使用LFSR,面积和功耗更小,实现更简单,更易于实现,并且具有更好的统计性能。
本发明改进了滤波器的实现,无延迟,且避免了量化和速率盲区等问题,精度更高。本发明不使用LFSR,实现更简单,面积和功耗更小,成本更低,并且不会在峰值通道之间创建跨通道统计相关性。
现有技术使用LFSR产生的随机数来产生输出脉冲。因此,在没有输入脉冲时,DN模块可能产生随机输出。相比之下,本发明的DN模块在没有输入脉冲时,不会在输出端产生随机脉冲,保留了脉冲的位置。递减计数器保留帧周期内脉冲的顺序,使得能够区分DN模块的这些输入脉冲来自于帧周期的何处,究竟来自于帧的开头还是末尾。
本发明的分裂归一化方案可配置,具有灵活性,能够适应不同的音频信号处理场景。本发明的分裂归一化方案不仅可以处理异步输入脉冲,也可处理同步输入脉冲。本发明保留了脉冲信息的完整性和不同通道间的独立性,具有更好的鲁棒性、更快的处理速度、更高的精度以及更低的功耗。
尽管已经参考本发明的具体特征和实施例描述了本发明,但是在不脱离本发明的情况下仍可以对其进行各种修改、组合、替换。本发明的保护范围旨在不限于说明书中描述的过程、机器、制造、物质组成、装置、方法和步骤的特定实施例,并且这些方法、模块可能还被实施在相关联、相互依赖、相互配合、前/后级的一个或多个产品、方法当中。
因此,说明书和附图应简单地视为由所附权利要求限定的技术方案的部分实施例的介绍,因而应根据最大合理解释原则对所附权利要求解读,并旨在尽可能涵盖本发明公开范围内的所有修改、变化、组合或等同物,同时还应避免不合常理的解读方式。
为了实现更好的技术效果或出于某些应用的需求,本领域技术人员可能在本发明的基础之上,对技术方案做出进一步的改进。然而,即便该部分改进/设计具有创造性或/和进步性,只要依赖本发明的技术构思,覆盖了权利要求所限定的技术特征,该技术方案同样应落入本发明的保护范围之内。
所附的权利要求中所提及的若干技术特征可能存在替代的技术特征,或者对某些技术流程的顺序、物质组织顺序可以重组。本领域普通技术人员知晓本发明后,容易想到该些替换手段,或者改变技术流程的顺序、物质组织顺序,然后采用了基本相同的手段,解决基本相同的技术问题,达到基本相同的技术效果,因此即便权利要求中明确限定了上述手段或/和顺序,然而该些修饰、改变、替换,均应依据等同原则而落入权利要求的保护范围。
结合本文中所公开的实施例中描述的各方法步骤或模块,能够以硬件、软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用或设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为在本发明所要求保护的范围之外。
术语中英文对照表:
分裂归一化(Divisive normalization, DN)
音频前端(Audio front end,AFE)
脉冲神经网络(Spiking neural network,SNN)
神经网络(Neural network,NN)
每通道能量归一化(Per-Channel Energy Normalization,PCEN)
始终在线关键字发现(always-on keyword spotting,KWS)
话音激活检测(voice activity detection, VAD)
振动异常检测(Vibration anomaly detection)
模拟信号处理(Analog signal processing,ASP)
积分泄露发放(Leaky-Integrate-and fire,LIF)
积分发放(Integrate-and fire, IAF)
音频特征提取器(audio feature exactor)
归一化音频特征提取器(Normalized audio feature exactor,NAFE)
二进制神经网络(Binary neural network,BNN)
深度神经网络(Deep neural network,DNN)
脉冲发生器(spike generator,SG)
本地脉冲发生器(Local clock generator,LCK)
线性反馈移位寄存器(Linear Feedback Shift Register,LFSR)
随机数(Random number,NR)
纹波计数器(ripple counter)
帧持续时间或帧周期(frame duration或frame period,FD)
平均窗口(Average Window,AW)
平滑滤波器(Smoothing filter)
递减计数器(count-down counter,CDC)
预归一化脉冲(Pre-normalized spikes, PreNF)
归一化后脉冲(Post-normalized spikes, PostNF)。

Claims (27)

1.一种分裂归一化方法,其特征在于:包括如下步骤:
步骤S1:接收输入脉冲序列;
步骤S2:根据平均窗口内输入脉冲序列的平均脉冲数量或平均脉冲速率产生阈值;
步骤S3:在每个时钟周期,判断是否使能积分发放计数模块计数;
若是,则积分发放计数模块开始计数,且当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
2.根据权利要求1所述的分裂归一化方法,其特征在于:
步骤S2中,在每个帧周期,计算输入脉冲序列的脉冲数量或输入脉冲速率,利用低通滤波器获取平均窗口内所述脉冲数量的平均值或平均脉冲速率,以产生阈值;
其中,所述平均窗口包括至少一个所述帧周期,所述帧周期包括至少一个时钟周期,所述阈值为所述平均值或平均脉冲速率与一个大于0的常数之和。
3.根据权利要求2所述的分裂归一化方法,其特征在于:
所述低通滤波器根据公式N(t+1) = N(t) - N(t) >> b + E(t) 保存和跟踪N(t),并将所述N(t)向右移动b位得到平均值M(t),其中,E(t)、M(t)分别表示帧t上输入脉冲序列的脉冲数量、平均脉冲数量,N(t)为2b M(t),b为移位大小,t为帧标签。
4.根据权利要求3所述的分裂归一化方法,其特征在于:
平均窗口大小等于2b与帧周期的乘积。
5.根据权利要求1至4任一项所述的分裂归一化方法,其特征在于:所述步骤S3具体包括:
在每个时钟周期,递减计数器获取输入脉冲序列在时钟周期内的脉冲数量,进行递减计数;
比较所述递减计数器的计数值是否大于0;
当所述递减计数器的计数值大于0时,积分发放计数模块计数本地时钟;
当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
6.根据权利要求5所述的分裂归一化方法,其特征在于:
移位大小或本地时钟的频率或帧周期能够调节。
7.根据权利要求5所述的分裂归一化方法,其特征在于:
利用乘法器将所述时钟周期内的脉冲数量加倍。
8.根据权利要求1至4任一项所述的分裂归一化方法,其特征在于:
所述输入脉冲为异步脉冲或同步脉冲;
脉冲速率为单位时间内的脉冲数量,平均脉冲速率为单位时间内的平均脉冲数量。
9.一种分裂归一化装置,其特征在于:所述分裂归一化装置包括:
输入模块:接收输入脉冲序列;
阈值计算模块:根据平均窗口内输入脉冲序列的平均脉冲数量或平均脉冲速率产生阈值;
归一化模块:在每个时钟周期,判断是否使能积分发放计数模块计数;
若是,则积分发放计数模块开始计数,且当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
10.根据权利要求9所述的分裂归一化装置,其特征在于:
所述阈值计算模块包括第一计数模块和低通滤波器;
第一计数模块,在每个帧周期,计算输入脉冲序列的脉冲数量或平均脉冲速率;
低通滤波器,获取平均窗口内所述脉冲数量的平均值或平均脉冲速率,以产生阈值;
其中,所述平均窗口包括至少一个所述帧周期,所述帧周期包括至少一个时钟周期,所述阈值为所述平均值或平均脉冲速率与一个大于0的常数之和。
11.根据权利要求10所述的分裂归一化装置,其特征在于:
所述低通滤波器根据公式N(t+1) = N(t) - N(t) >> b + E(t)保存和跟踪N(t),并将所述N(t)向右移动b位得到平均值M(t),其中,E(t)、M(t)分别表示帧t上输入脉冲序列的脉冲数量、平均脉冲数量,N(t)为2b M(t),b为移位大小,t为帧标签。
12.根据权利要求9至11任一项所述的分裂归一化装置,其特征在于:
所述归一化模块包括第二计数模块、递减计数器、脉冲产生模块和积分发放计数模块;
第二计数模块,在每个时钟周期,获取输入脉冲序列在时钟周期内的脉冲数量;
递减计数器,在每个时钟周期,其计数值随着获取的所述时钟周期内的脉冲数量增加并且减1;
脉冲发生器,比较递减计数器的计数值是否大于0,当所述递减计数器的计数值大于0时,使能积分发放计数模块计数本地时钟;
当所述积分发放计数模块的计数值达到所述阈值,则产生一个输出脉冲并重新开始计数。
13.根据权利要求9至11任一项所述的分裂归一化装置,其特征在于:
所述归一化模块不包括线性反馈移位寄存器。
14.根据权利要求12所述的分裂归一化装置,其特征在于:
移位大小或本地时钟的频率或帧周期能够调节。
15.根据权利要求12所述的分裂归一化装置,其特征在于:
所述分裂归一化装置还包括乘法器,所述乘法器用于将所述时钟周期内的脉冲数量加倍。
16.根据权利要求15所述的分裂归一化装置,其特征在于:
所述乘法器利用移位寄存器实现,将所述时钟周期内的脉冲数量向左移动c位,其中c为移位参数。
17.根据权利要求9至11任一项所述的分裂归一化装置,其特征在于:
所述输入脉冲为异步脉冲或同步脉冲;
脉冲速率为单位时间内的脉冲数量,平均脉冲速率为单位时间内的平均脉冲数量。
18.根据权利要求17所述的分裂归一化装置,当所述输入脉冲为异步脉冲时,其特征在于:
第一计数模块与第二计数模块中的每一个都包括两个不带时钟的计数器进行交替计数;或者,
第一计数模块与第二计数模块中的每一个将输入异步脉冲转换为同步脉冲后,使用带时钟的计数器对所述同步脉冲进行计数,并将所述带时钟的计数器的计数结果存于对应的寄存器中。
19.根据权利要求17所述的分裂归一化装置,当所述输入脉冲为同步脉冲时,其特征在于:
第一计数模块与第二计数模块中的每一个都包括带时钟的计数器与寄存器,所述带时钟的计数器对所述输入脉冲进行计数,并将所述带时钟的计数器的计数结果存于对应的寄存器中。
20.根据权利要求18所述的分裂归一化装置,其特征在于:
所述不带时钟的计数器为纹波计数器或/和所述带时钟的计数器为数字计数器。
21.一种音频特征提取器,包括音频前端;
所述音频前端,用于对麦克风采集的原始声音信号进行处理,得到多个通道的预归一化脉冲序列;其特征在于:
每个通道包括权利要求9-20任一项所述的分裂归一化装置,或者每个通道使用权利要求1-8任一项所述的分裂归一化方法,用于对相应通道的预归一化脉冲序列进行归一化处理,得到归一化脉冲序列。
22.根据权利要求21所述的音频特征提取器,其特征在于:所述音频前端包括:
低噪声放大器,用于将麦克风采集的声音信号进行低噪声放大后进入多个通道;
每个通道包括带通滤波器、整流器和事件产生模块;带通滤波器的输入端耦接至低噪声放大器的输出端,带通滤波器的输出端耦接至整流器的输入端,整流器的输出端耦接至事件产生模块,事件产生模块用于产生预归一化脉冲序列。
23.根据权利要求21所述的音频特征提取器,其特征在于:还包括AER编码模块,用于对所述分裂归一化装置的输入脉冲或输出脉冲进行地址事件表达编码;
其中,所述AER编码模块集成于分裂归一化装置之内,或者,AER编码模块置于分裂归一化装置之外。
24.根据权利要求21所述的音频特征提取器,其特征在于:还包括选择模块,用于选择是否对预归一化脉冲序列进行归一化处理。
25.一种芯片,其特征在于,包括如权利要求21至24任一项所述的音频特征提取器和分类器;
所述分类器,根据音频特征提取器的输出脉冲执行分类任务。
26.根据权利要求25所述的芯片,其特征在于:所述分类器为决策树或神经网络。
27.根据权利要求25所述的芯片,其特征在于:所述芯片还包括AER to SAER模块,用于对所述音频特征提取器的输出脉冲进行处理后传入分类器。
CN202210051924.9A 2022-01-18 2022-01-18 分裂归一化方法、装置、音频特征提取器、芯片 Active CN114093377B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210051924.9A CN114093377B (zh) 2022-01-18 2022-01-18 分裂归一化方法、装置、音频特征提取器、芯片
PCT/CN2022/082719 WO2023137861A1 (en) 2022-01-18 2022-03-24 Divisive normalization method, device, audio feature extractor and a chip
US18/020,282 US20230300529A1 (en) 2022-01-18 2022-03-24 Divisive normalization method, device, audio feature extractor and a chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210051924.9A CN114093377B (zh) 2022-01-18 2022-01-18 分裂归一化方法、装置、音频特征提取器、芯片

Publications (2)

Publication Number Publication Date
CN114093377A true CN114093377A (zh) 2022-02-25
CN114093377B CN114093377B (zh) 2022-05-03

Family

ID=80308445

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210051924.9A Active CN114093377B (zh) 2022-01-18 2022-01-18 分裂归一化方法、装置、音频特征提取器、芯片

Country Status (3)

Country Link
US (1) US20230300529A1 (zh)
CN (1) CN114093377B (zh)
WO (1) WO2023137861A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114372019A (zh) * 2022-03-21 2022-04-19 深圳时识科技有限公司 对脉冲事件进行传输的方法、装置及芯片
CN116051429A (zh) * 2023-03-31 2023-05-02 深圳时识科技有限公司 数据增强方法、脉冲神经网络训练方法、存储介质和芯片
WO2023137861A1 (en) * 2022-01-18 2023-07-27 Shenzhen SynSense Technology Co., Ltd. Divisive normalization method, device, audio feature extractor and a chip

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021231036A1 (en) * 2020-05-12 2021-11-18 Tencent America LLC Substitutional end-to-end video coding
CN113822147A (zh) * 2021-08-04 2021-12-21 北京交通大学 一种协同机器语义任务的深度压缩方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104133851B (zh) * 2014-07-07 2018-09-04 小米科技有限责任公司 音频相似度的检测方法和检测装置、电子设备
CN110139206B (zh) * 2019-04-28 2020-11-27 北京雷石天地电子技术有限公司 一种立体声音频的处理方法及系统
US11070932B1 (en) * 2020-03-27 2021-07-20 Spatialx Inc. Adaptive audio normalization
CN114093377B (zh) * 2022-01-18 2022-05-03 成都时识科技有限公司 分裂归一化方法、装置、音频特征提取器、芯片

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021231036A1 (en) * 2020-05-12 2021-11-18 Tencent America LLC Substitutional end-to-end video coding
CN113822147A (zh) * 2021-08-04 2021-12-21 北京交通大学 一种协同机器语义任务的深度压缩方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
DEWEI WANG等: ""A Background-Noise and Process-Variation-Tolerant 109nW Acoustic Feature Extractor Based on Spike-Domain Divisive-Energy Normalization for an Always-On Keyword Spotting Device"", 《2021 IEEE INTERNATIONAL SOLID- STATE CIRCUITS CONFERENCE (ISSCC)》 *
MINHAO YANG等: ""Nanowatt Acoustic Inference Sensing Exploiting Nonlinear Analog Feature Extraction"", 《IEEE JOURNAL OF SOLID-STATE CIRCUITS》 *
袁媛: ""基于深度卷积网络的图像质量评价方法研究"", 《中国博士学位论文全文数据库》 *
陈勇 等: ""基于空间分布分析的混合失真无参考图像质量评价"", 《电子与信息学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023137861A1 (en) * 2022-01-18 2023-07-27 Shenzhen SynSense Technology Co., Ltd. Divisive normalization method, device, audio feature extractor and a chip
CN114372019A (zh) * 2022-03-21 2022-04-19 深圳时识科技有限公司 对脉冲事件进行传输的方法、装置及芯片
CN114372019B (zh) * 2022-03-21 2022-07-15 深圳时识科技有限公司 对脉冲事件进行传输的方法、装置及芯片
CN116051429A (zh) * 2023-03-31 2023-05-02 深圳时识科技有限公司 数据增强方法、脉冲神经网络训练方法、存储介质和芯片

Also Published As

Publication number Publication date
US20230300529A1 (en) 2023-09-21
CN114093377B (zh) 2022-05-03
WO2023137861A1 (en) 2023-07-27

Similar Documents

Publication Publication Date Title
CN114093377B (zh) 分裂归一化方法、装置、音频特征提取器、芯片
Böck et al. Enhanced beat tracking with context-aware neural networks
Shin et al. Speech/non-speech classification using multiple features for robust endpoint detection
US11482235B2 (en) Speech enhancement method and system
CN103959376A (zh) 低功率语音检测
GB1435779A (en) Word recognition
CN106611596A (zh) 模拟信息特征提取的基于时间的频率调谐
CN111583898B (zh) 一种空间环境多方位选择性降噪系统及方法
US4719649A (en) Autoregressive peek-through comjammer and method
US8108164B2 (en) Determination of a common fundamental frequency of harmonic signals
Oprea et al. Hardware evaluation of spike detection algorithms towards wireless brain machine interfaces
KR100714721B1 (ko) 음성 구간 검출 방법 및 장치
US5845092A (en) Endpoint detection in a stand-alone real-time voice recognition system
CN110136741B (zh) 一种基于多尺度上下文的单通道语音增强方法
CN112562727A (zh) 应用于音频监控的音频场景分类方法、装置以及设备
CN113421595B (zh) 一种利用神经网络的语音活性检测方法
Giannakopoulos et al. A novel efficient approach for audio segmentation
Jeong et al. Dlr: Toward a deep learned rhythmic representation for music content analysis
CN101937675A (zh) 语音检测方法及其设备
Bora et al. Power efficient speaker verification using linear predictive coding on FPGA
Zhang et al. Robust voice activity detection feature design based on spectral kurtosis
Alias et al. A novel acoustic fingerprint method for audio signal pattern detection
TWI749547B (zh) 應用深度學習的語音增強系統
Carroll Using Unstable Periodic Orbits to Approximate Noisy Chaotic Time Series
CN115798514B (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
GR01 Patent grant
GR01 Patent grant