JP7210830B2 - 音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体 - Google Patents

音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体 Download PDF

Info

Publication number
JP7210830B2
JP7210830B2 JP2021091224A JP2021091224A JP7210830B2 JP 7210830 B2 JP7210830 B2 JP 7210830B2 JP 2021091224 A JP2021091224 A JP 2021091224A JP 2021091224 A JP2021091224 A JP 2021091224A JP 7210830 B2 JP7210830 B2 JP 7210830B2
Authority
JP
Japan
Prior art keywords
command
npu
calculation
neural network
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.)
Active
Application number
JP2021091224A
Other languages
English (en)
Other versions
JP2022051669A (ja
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2022051669A publication Critical patent/JP2022051669A/ja
Application granted granted Critical
Publication of JP7210830B2 publication Critical patent/JP7210830B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • 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/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/10Interfaces, programming languages or software development kits, e.g. for simulating 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
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • 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/26Speech to text systems
    • 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/28Constructional details of speech recognition systems
    • 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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Neurology (AREA)
  • Machine Translation (AREA)
  • Image Analysis (AREA)

Description

本発明は、データ処理技術分野に関し、特に音声処理技術分野における音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体に関する。
音声処理、特にオフライン音声認識/オフライン音声合成/音声語義統合/語義信頼性/音声ウェイクアップなどを含むオフライン音声処理は、今後の発展傾向となる。従来技術におけるオフライン音声処理システムは、通常、ARM方式又はARM+ニューラルネットワークプロセッサ方式を採用している。しかし、前記のチップスキーム自体には、機能や計算力に制約があるため、前記両スキームに基づくオフライン音声処理システムでは、高性能なオフライン音声処理を実現することができない。
本出願に技術的課題を解決するために採用される技術案は、ニューラルネットワークプロセッサNPUとRISC-Vプロセッサとを含む音声処理システムを提供することにある。ここで、前記RISC-Vプロセッサは、予め定義されたNPUコマンドを含み、前記RISC-Vプロセッサは、前記NPUが対応するニューラルネットワークコンピューティングを実行するように、前記NPUに前記NPUコマンドを送信し、前記NPUは、メモリユニットと計算ユニットとを含み、前記メモリユニットは、複数のストレージグループを含み、前記計算ユニットは、受信されたNPUコマンドに従って、メイン計算、特殊計算、補助計算、複合コマンドセットCISC制御のうちの一つを実行する。
本出願に技術的課題を解決するために採用される技術案は、処理待ち音声データを取得し、 前記処理待ち音声データを音声処理システムへの入力データとし、前記音声処理システムにより前記入力データを処理して出力結果を得、前記出力結果を前記処理対象音声データの音声処理結果とする、ことを含む音声処理方法を提供することにある。
少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサと通信接続されたメモリと、前記音声処理システムとを備え、前記メモリに前記少なくとも一つのプロセッサにより実行可能なコマンドが記憶されており、前記コマンドが前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサに前記方法を実行させる電子デバイスを提供する。
コンピュータに前記方法を実行させるためのコンピュータコマンドが記憶された非一時的なコンピュータ可読記憶媒体を提供する。
前記出願の一実施形態は、音声処理タスクのオフライン処理効率を向上させることができる利点または有益な効果を有する。RISC-Vプロセッサにおける予め定義されたNPUコマンド及びNPUにおけるメモリユニットと計算ユニットとの間のアーキテクチャ設計に基づく技術的手段を採用したため、従来技術における技術的問題を克服し、音声処理タスクに対するオフライン処理効率を向上させる技術的効果を実現した。
前記の選択可能な方法が有する他の効果は、以下で具体的な実施形態と合わせて説明する。
図面は、本出願をより良く理解するためのものであり、本出願を限定しない。ここで、
本出願の第1の実施形態に係る模式図である。 本出願の第2の実施形態に係る模式図である。 本出願の第3の実施形態に係る模式図である。 本出願の第4の実施形態に係る模式図である。 本出願の実施形態を実現するための電子デバイスのブロック図である。
以下、図面に基づいて、本出願の例示的な実施例を説明する。理解を容易にするために、本出願の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本出願の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識するはずである。同様に、簡明のために、以下の説明では、よく知られた機能と構造の説明は省略される。
図1は、本出願の第1の実施形態に係る模式図である。図1に示されたように、本実施形態の音声処理システムは、ニューラルネットワークプロセッサNPUおよびRISC-Vプロセッサを備える。
ここで、前記RISC-Vプロセッサは、予め定義されたNPUコマンドを含み、前記RISC-Vプロセッサは、前記NPUが対応するニューラルネットワークコンピューティングを実行するように、前記NPUに前記NPUコマンドを送信する。
前記NPUは、メモリユニットと計算ユニットとを含み、前記メモリユニットは、複数のストレージグループを含み、前記計算ユニットは、受信されたNPUコマンドに従って、メイン計算、特殊計算、補助計算、複合コマンドセットCISC制御のうちの一つを実行する。
本実施形態の音声処理システムは、 ニューラルネットワークプロセッサ(NPU、Neural-network Processing Unit)に基づいて、RISC-Vプロセッサにおける予め定義されたNPUコマンドとNPUにおけるメモリユニットと計算ユニットの間のアーキテクチャ設計により、音声処理モデルにおけるニューラルネットワークコンピューティングをオフラインで高速かつ正確に実現することができ、オフライン音声処理タスクに対する処理効率を向上させることができる。
本実施形態におけるRISC-Vプロセッサは、特にニューラルネットワーク演算に対して予め定義されたNPUコマンドを含むRISC-V(縮小コマンドセット原理に基づくオープンソースコマンドセットアーキテクチャ)に基づくプロセッサである。
本実施形態のRISC-Vプロセッサに含まれる予め定義されたNPUコマンドは、基底ベクトル演算コマンドに加えて、ニューラルネットワークコンピューティングの高速化に特化したコマンドを含む。現在にNPUで使用されているコマンドはすべて共通であり、ニューラルネットワークコンピューティング、特に音声処理ネットワーク用に特別に設計されたコマンドが存在しないため、従来技術におけるNPUがニューラルネットワークコンピューティングを実行する際に非常に複雑な計算プロセスを必要とし、オフライン音声処理を行う際のNPUの計算力が低くなる。
ここで、本実施形態において予め定義されたNPUコマンドに関連する基底ベクトル演算コマンドは、ベクトル論理演算コマンド(例えばAND、OR、NOT、XOR)、ベクトル関係演算コマンド(例えばGE、GT、LE、LT、NE、EQ)、ベクトル算数演算コマンド(例えばADD、SUB、MUL)を含む。
本実施形態において予め定義されたNPUコマンドのうちニューラルネットワークコンピューティングの高速化に特化したコマンドは、ニューラルネットワークにおけるsoftmax層におけるベクトル加算計算のために用いられる、補助計算コマンドであるベクトル加算コマンド(SUM)と、ニューラルネットワークにおけるプール化操作のために用いられるプール化コマンド(POOLING)と、完全接続ネットワーク、RNNネットワークなどに関連する行列演算におけるベクトル間のドット積計算のために用いられる、メイン計算コマンドである第1ドット積計算コマンド(DOT_PORD)と、アテンションモデルに関連する行列演算におけるベクトルと行列との間のドット積計算のために用いられる、メイン計算コマンドである第2ドット積計算コマンド(ATTEN)と、アクティブ関数などの超越関数の計算を実現するために用いられる、特殊計算コマンドであるベクトル超越関数コマンド(ACT、SIN、COS、EXP、LOG、SQRT、RSQRT、RECIPROCAL)と、ベクトルのロードのために用いられるベクトルアクセスコマンド(VLOAD)と、ベクトルの記憶のために用いられるベクトル記憶コマンド(VSTORE)と、最大値、最小値、最大N個の値、およびそれらの位置を検索するために用いられるベクトル検索コマンド(MAX、MIN、TOPK)と、ネスティング可能であり、二重ループを実現するために用いられるフロー制御コマンド(LOOP_START、LOOP_END)と、NPUが特定の計算、例えばベクトルと行列との乗算又はsoftmaxの計算をハードウェアに引き継がせるために用いられ、CISC制御コマンドであるCISC(Complex Instruction Set Computing、複合コマンドセット)コマンドと、スカラーの浮動小数点の計算を実現するために用いられるスカラー浮動小数点コマンド(FPALU)と、 データフォーマット変換コマンド(IMG2COL、Matrix_TRANS)とを含む。ここで、TOPKはWaveRNNにおける特定のコマンドであり、IMG2COLコマンドは畳み込みのデータ変換、すなわち、畳み込みの入力データを行列に変換するために用いられ、Matrix_TRANSは入力行列またはパラメータ行列の転置操作に用いられる。
理解すべきなのは、超越関数にはRELU6、RELU、SIGMOIDとTANHなどの関数が含まれており、SIGMODとTANHについては、ベクトル超越関数コマンドACTは、ルックアップテーブル法を用いて多階微分多項式近似(テイラー式)を行って計算を実現し、RELU6とRELUについては、ベクトル超越関数コマンドACTは線形計算の方法を用いて計算を行い、SIN/COS/EXP/LOG/SQRT/RSQRT/RECIPROCALなどの超越関数については、CORDICアルゴリズムを用いて計算を行い、浮動小数点の形で計算過程を実現する。
すなわち、本実施形態は、ニューラルネットワーク、特に音声処理のニューラルネットワークに対して、ニューラルネットワークの計算のためにコマンドセットを特別に設計し、コマンドセットの冗長性を回避し、ニューラルネットワークの計算効率を向上させる。
本実施形態のRISC-Vプロセッサは、コマンドセットから予め定義されたNPUコマンドを取得した後に、取得されたNPUコマンドをNPUに送信してNPUに受信されたNPUコマンドに従って対応する計算操作を実行させる。
本実施形態のNPUは、RISC-Vプロセッサとの接続に加えて、DMA(Direct Memory Access、ダイレクトメモリアクセス)インタフェースを介して外部バスとインタラクションを行うことにより、外部DDRにおけるデータをロードすることが可能である。
本実施形態のNPUのメモリユニットにおける複数のストレージグループは、ニューラルネットワークのモデルパラメータデータと、ニューラルネットワークのモデル計算過程で生成される中間データとをそれぞれ記憶する。
本実施形態では、NPUのメモリユニットのメモリリソースをグループ化メカニズムにより複数のストレージグループに分割することにより、NPUがストレージグループの一つにアクセスしている間にDMAがストレージグループの他の一つにアクセスできるようにしたため、データロードとデータ計算の並列実行を実現し、NPUの処理効率を向上させる。
理解すべきなのは、本実施形態におけるNPUは、RISC-Vプロセッサが送信するVLOADコマンドに従ってデータロードを行ったり、VSTOREコマンドに従ってデータ記憶を行ったりすることができる。
異なる音声処理に対応するニューラルネットワークは計算を行う際に計算量が異なるため、本実施形態では、音声処理に使用するニューラルネットワークに応じてメモリユニットのメモリサイズを予め決定しておく必要があり、即ち本実施形態では、サポートされる異なる音声処理ネットワークを動作させる場合に、NPUにおける全てのメモリユニットに高い実行効率を確保するために、NPUのメモリユニットのメモリサイズがカスタマイズされる。ここで、本実施形態においてNPUがサポートするネットワークは、音声認識ネットワーク、音声合成ネットワーク、音声語義統合ネットワーク、語義信頼性ネットワーク、および音声ウェイクアップネットワークなどを含む。
本実施形態におけるメモリユニットは、メモリサイズを決定する際に、メモリユニットが異なるニューラルネットワークの動作をサポートできることを確保するために、サポートされるニューラルネットワークのコア層のサイズよりも大きいメモリユニットの初期メモリサイズを設定し、初期メモリサイズにおけるメモリユニットに対応する、読取頻度、読取速度等のような動作情報を決定し、決定された動作情報が予め設定された要件を満たしていない場合に初期メモリサイズを調整するというサイクルを、決定された動作情報が予め設定された要件を満たすまで行い、初期メモリサイズの調整結果をメモリユニットのメモリサイズとする、という選択可能な実現方式を採用することができる。
ここで、本実施形態におけるニューラルネットワークのコア層は、ニューラルネットワークの主要な計算を実行する層であり、例えばWaveRNNネットワークにおけるRNN層である。本実施形態では、前記の方法によりNPUにおけるメモリユニットのメモリサイズを決定することにより、NPUが異なるニューラルネットワークを実行する場合に、メモリユニットのいずれも高い実行効率を有し、NPUの実行効率をさらに向上させる。
本実施形態における計算ユニットは、受信されたNPUコマンドに従って、メイン計算、特殊計算、補助計算、およびCISC制御のうちの一つを実行する。
例えば、本実施形態の計算ユニットは、第1ドット積計算コマンドまたは第2ドット積計算コマンドに従ってメイン計算を行い、超越関数コマンドに従って特殊計算を行い、CISCコマンドに従ってCISC制御を行い、ベクトル加算コマンドに従って補助計算を行うことができる。
本実施形態におけるNPUの計算ユニットがメイン計算を行う際に、行列×行列または行列×ベクトルの操作によりニューラルネットワークコンピューティングを完成するという選択可能な実現方式を採用することができる。本実施形態におけるニューラルネットワークコンピューティングには複素数計算、畳み込み計算などが含まれる。本実施形態では、前記のメイン計算方式により、ニューラルネットワークに係る複素数計算や畳み込み計算などを実数のベクトルに変換して加減乗除を行うことができ、NPUにおけるハードウェア設計を簡略化することができる。
音声認識、語義信頼性などの音声処理に精度の要求があるため、直接に行列の乗算や行列とベクトルの乗算を用いて幾つかのニューラルネットワークコンピューティングを行うと、計算精度が低下する。そこで、本実施形態では、行列およびベクトルのデータフォーマットを変換することにより、計算精度を向上させる。
したがって、本実施形態のNPUがメイン計算を行う際に、入力データのデータフォーマットを半精度の浮動小数点形式に変換し、ニューラルネットワークのモデルパラメータデータのデータフォーマットをint8形式に変換し、半精度にint8を掛けた計算方式を用いて、入力データとモデルパラメータデータのメイン計算を行う、という選択可能な実現方式を採用することができる。ここで、intは整数型変数を定義する識別子であり、int8は8ビットの符号付き整数を示す。
アテンションモデルや複素数畳み込みモデルを用いたニューラルネットワークでは、より精度の高い計算方式を用いてアテンション計算や複素数畳み込み計算を実現する必要がある。このため、本実施形態におけるNPUの計算ユニットはメイン計算を行う際に、ニューラルネットワークで使用されるモデルがプリセットモデルであることに応じて、入力データとモデルパラメータデータとのデータフォーマットを半精度の浮動小数点形式に変換し、半精度と半精度とを乗算する計算方式を用いて入力データとモデルパラメータデータとのメイン計算を行うことを採用しても良い。
すなわち、本実施形態では、行列やベクトルのデータフォーマットをさらに変換し、データフォーマットが変換されたデータに応じて対応する行列操作を行うことにより、ニューラルネットワークコンピューティングの精度と効率を向上させることができる。
本実施形態の計算ユニットは、データフォーマット変換コマンド(例えば、IMG2COLまたはMatrix_TRANS)に従ってデータフォーマットの変換を行い、第1ドット積計算コマンド(DOT_PROD)または第2ドット積計算コマンド(ATTEN)に従ってメイン計算を行うことができる。
本実施形態におけるNPUの計算ユニットは、特殊計算を行う場合に、受信されたNPUコマンドがベクトル超越関数コマンド(例えば、ACT、SIN、COSなど)であることに応じて超越関数の関数タイプを決定し、決定された関数タイプに対応する計算方法を用いて超越関数の特殊計算を行う、という選択可能な実現方式を採用することができる。
なお、本実施形態における計算ユニットは、CORDIC(Coordinate Rotation Digital Compute、座標回転デジタル計算方式)アルゴリズムを用いて、SIN、COS、EXP、LOG、SQRT等の関数の計算を実現し、ルックアップテーブル法を使用してSIGMOID、TANHなどのアクティブ関数の計算を実現し、線形計算の方法を用いてRELU、RELU6などのアクティブ関数の計算を実現することができる。
本実施形態におけるNPUの計算ユニットは、補助計算を行う際に、畳み込みネットワークを完全接続ネットワークに変換することを行う。畳み込みネットワークの入力データを行列に変換し、変換された行列に基づいて完全接続計算を行って補助計算を完了する、という選択可能な実現方式を採用することができる。
ここで、本実施形態の計算ユニットは、データフォーマット変換コマンド(Matrix_TRANS)に従って行列変換を完了した後に、ベクトル加算コマンド(SUM)に従って行列の完全接続計算を完了することができる。
本実施形態におけるNPUの計算ユニットは、CISC制御を行う際に、受信されたNPUコマンドがCISCコマンドであることに応答して、入力データとモデルパラメータデータとを特別に設計されたハードウェアに入力し、ハードウェアから返信された出力データを取得し、CISC制御を完了する、という選択可能な実現方式を採用することができる。つまり、計算ユニットがCISC制御を行う際に、NPU自身が計算を行うことではなく、対応するハードウェアが計算を行う。
NPUは入力されるデータに一定の制限を有するため、NPUにおける計算ユニットの計算効率をさらに向上させるために、本実施形態は、NPUにデータを入力する前に、入力されたデータを整列処理し、整列されたデータをNPUに入力することをさらに含むことができる。
理解すべきなのは、本実施形態におけるNPUは、メモリユニットから読み出されたデータをキャッシュするためのレジスタユニットをさらに含むことができる。
前記の技術方案によれば、予め定義されたNPUコマンド及びNPUにおけるメモリユニット及び計算ユニットのアーキテクチャ設計により、NPUによるオフライン音声処理システムによりオフライン音声処理タスクを正確かつ高速に完了し、計算効率及び計算精度を向上させることができる。
図2は、本出願の第2の実施形態により提供される模式図である。
図2は、本出願により提供された電子デバイスの構成の模式図を示した。本実施形態の電子デバイスは、PC、クラウドデバイス、モバイルデバイス、スマートスピーカーなどであって良い。モバイルデバイスは、例えば、携帯電話、タブレット、PDA、ウェアラブルデバイス、車載デバイスなど様々なオペレーティングシステム、タッチパネルおよび/または表示パネルを有するハードウェアデバイスであってよい。
図2に示されたように、当該電子デバイスは、本出願に記載された実施形態で提案された音声処理システムを含むことができる。
図3は、本出願の第3の実施形態に係る模式図である。図3に示されたように、本実施形態における音声処理方法は、具体的には、以下のステップを含むことができる。
S301において、処理待ち音声データを取得する。
S302において、前記処理待ち音声データを音声処理システムの入力データとし、前記音声処理システムにより前記入力データに対してニューラルネットワークコンピューティングを行って出力結果を得る。
S303において、前記出力結果を前記処理待ち音声データの音声処理結果とする。
本実施形態で使用される音声処理システムは、例えば音声認識ネットワーク、音声合成ネットワーク、音声語義統合ネットワーク、音声信頼性ネットワーク、および音声ウェイクアップネットワークなどのような異なる音声処理に対するニューラルネットワークをサポートすることができる。このため、本実施形態では、処理待ち音声データに対して異なる種類の音声処理を行うことができ、得られる音声処理結果は、音声認識結果、音声合成結果、音声語義統合結果、音声信頼性結果、音声ウェイクアップ結果等であって良い。
音声処理システムは、RISC-Vプロセッサに予め定義されたNPUコマンドと、NPUにおけるメモリユニットと計算ユニットとの間のアーキテクチャ設計により、音声処理タスクに係わるニューラルネットワークコンピューティングを高速かつ正確に処理することが実現されたため、本実施形態により提供された音声処理方法によれば、オフライン音声処理の正確度と効率を向上させることができる。
具体的には、本実施形態のS302は、音声処理システムにより入力データに対してニューラルネットワークコンピューティングを実行して出力結果を得る場合に、音声処理システムにおけるニューラルネットワークプロセッサNPUがRISC-Vプロセッサから送信されたNPUコマンドに従って、入力データに対して受信されたNPUコマンドに対応するニューラルネットワークコンピューティングを実行し、得られた計算結果を出力結果とする、という選択可能な実現方式を採用することができる。ここで、本実施形態において入力データに対してニューラルネットワークコンピューティングを行って計算結果を得る過程は、ニューラルネットワークモデルにより入力データを処理して出力結果を得る過程である。
理解すべきなのは、本実施形態で使用される音声処理システムのRISC-Vプロセッサは、入力データのニューラルネットワークコンピューティングがすべて完了するまで、NPUコマンドをNPUに一度に一つ送信しても良く、RISC-VプロセッサからNPUに一度に全てのNPUコマンドを送信してもよい。
本実施形態に係るニューラルネットワークコンピューティングは、入力データに対するメイン計算、特殊計算、補助計算、および複合コマンドセットCISC制御のうちの少なくとも一つを含む。各ニューラルネットワークコンピューティングの具体的な方式は前記で説明されたため、ここでは詳しく説明しない。
図4は、本出願の第4の実施形態に係る模式図である。図4に示されたように、左側は、コントローラおよび予め定義されたNPUコマンドを含むRAMを備えるRISC-Vプロセッサである。コントローラは、RTOS(Real Time Operating System、リアルタイムオペレーティングシステム)オペレーティングシステムをサポートしており、RAMから取得されたNPUコマンドをデコードしてNPUに送信するために用いられる。右側はNPUである。NPUは、DMAインタフェースを介してシステムバスに接続され、外部からの入力データなどを取得し、受け取ったNPUコマンドに従ってニューラルネットワークコンピューティングを行うものであって、メモリユニットと、レジスタユニットと、計算ユニットとを備える。レジスタユニットは、メモリユニットから取得されたデータを保存することにより、計算ユニットが随時対応するデータを取得できるようにし、計算効率を向上させた。メモリユニットは、データロードとデータ計算を並行して実行できるように、複数のストレージグループに分割してモデルパラメータデータとモデル計算の中間データをそれぞれ保持する。計算ユニットは、受信されたNPUコマンドに従って、メイン計算、特殊計算、補助計算、CISC制御のいずれかを実現するために使用され、メイン計算および特殊計算は、レジスタユニットを介してデータを取得し、補助計算は、メモリユニットを介して直接にデータを取得することができる。
図5は、本出願の実施形態を実現するための例示的な電子デバイスのブロック図である。電子デバイスは、様々な形式のデジタルコンピュータ、例えば、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、PDA、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータであることが意図される。電子デバイスは、様々な形式のモバイル装置、例えば、PDA、携帯電話、スマートフォン、ウェアラブルデバイス、及び他の類似するコンピューティング装置を示してもよい。本文で示された構成要素、それらの接続及び関係、ならびにそれらの機能は例示にすぎなく、本明細書において説明及び/又は請求される本出願の実現を限定することが意図されない。
図5に示すように、この電子デバイスは、一つ又は複数のプロセッサ501、メモリ502、及び各構成要素に接続するための高速インタフェース及び低速インタフェースを含むインタフェースを備える。各構成要素は、異なるバスで相互接続され、そして、共通マザーボードに、又は必要に応じて、他の態様で実装されてもよい。プロセッサは、電子デバイス内で実行されるコマンドを処理してもよく、メモリに記憶される又はメモリ上で外部入力/出力装置(例えば、インタフェースに結合される表示装置)にグラフィカルユーザインターフェースのグラフィカル情報を表示するコマンドを含む。他の実施形態において、必要な場合に、複数のプロセッサ及び/又は複数のバスが、複数のメモリとともに用いられてもよい。同様に、複数の電子デバイスが接続されてもよく、それぞれのデバイスが必要な操作の一部を提供する(例えば、サーババンク、ブレードサーバの集まり、又はマルチプロセッサシステムとする)。図5において、一つのプロセッサ501を例とする。
メモリ502は、本出願で提供される非一時的コンピュータ可読記憶媒体である。なお、前記メモリには、少なくとも1つのプロセッサが本願の各実施形態の機能を実行するように、前記少なくとも1つのプロセッサに実行可能なコマンドが記憶されている。本出願の非一時的コンピュータ可読記憶媒体は、本願の実施形態の機能をコンピュータに実行させるためのコンピュータコマンドを記憶している。
メモリ502は、非一時的コンピュータ可読記憶媒体として、非一時的ソフトウェアプログラム、非一時的コンピュータ実行可能なプログラム、モジュール、例えば、本出願の実施形態の機能に対応するプログラムコマンド/ユニットを記憶するために用いられる。プロセッサ501は、メモリ502に記憶されている非一時的ソフトウェアプログラム、コマンド及びモジュールを実行することで、サーバの様々な機能アプリケーション及びデータ処理を実行し、即ち、本出願の実施形態の機能を実現する。
メモリ502は、プログラム記憶領域及びデータ記憶領域を含んでもよく、プログラム記憶領域はオペレーティングシステム、少なくとも一つの機能に必要なアプリケーションプログラムを記憶してもよく、データ記憶領域は当該電子デバイスの使用により作成されたデータなどを記憶してもよい。また、メモリ502は、高速ランダムアクセスメモリを含んでもよく、さらに非一時的メモリ、例えば、少なくとも一つの磁気ディスク記憶装置、フラッシュメモリ装置、又は他の非一時的固体記憶装置を含んでもよい。幾つかの実施例において、メモリ502は、プロセッサ501に対して遠隔設置されたメモリを選択的に含んでもよく、これらのリモートメモリは、ネットワークを介して電子デバイスに接続されてもよい。上記のネットワークの実例には、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びそれらの組み合わせが含まれるが、これらに限定されない。
電子デバイスは、更に、入力装置503と出力装置504とを備えても良い。プロセッサ501、メモリ502、入力装置503及び出力装置504は、バス又は他の手段により接続されても良く、図5においてバスによる接続を例とする。
入力装置503は、入力された数字又はキャラクタ情報を受信し、当該電子デバイスのユーザ設定及び機能制御に関連するキー信号入力を生成でき、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、ポインティングスティック、一つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置504は、表示装置、補助照明装置(例えば、LED)、触覚フィードバック装置(例えば、振動モータ)などを含むことができる。当該表示装置は、液晶ディスプレイ(LCD)、発光ダイオードディスプレイ(LED)、及びプラズマディスプレイを含み得るが、これらに限定されない。いくつかの実施形態では、表示装置はタッチパネルであってもよい。
本明細書に説明されるシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、専用ASIC(専用集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現することができる。これらの様々な実施形態は、記憶システム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及びコマンドを受信し、当該記憶システム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置にデータ及びコマンドを送信するようにつなげられた、特殊用途でもよく一般用途でもよい少なくとも一つのプログラマブルプロセッサを含む、プログラマブルシステム上で実行可能及び/又は解釈可能な一つ又は複数のコンピュータプログラムにおける実行を含んでもよい。
これらのコンピューティングプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又は、コードとも称される)は、プログラマブルプロセッサの機械命令を含み、高水準のプロセス及び/又はオブジェクト向けプログラミング言語、及び/又はアセンブリ/機械言語で実行されることができる。本明細書で用いられる「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械可読信号としての機械命令を受け取る機械可読媒体を含むプログラマブルプロセッサに機械命令及び/又はデータを提供するのに用いられる任意のコンピュータプログラム製品、機器、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、及びプログラマブル論理デバイス)を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令及び/又はデータを提供するために用いられる任意の信号を指す。
ユーザとのインタラクティブを提供するために、本明細書に説明されるシステムと技術は、ユーザに対して情報を表示するための表示装置(例えば、CRT(ブラウン管)又はLCD(液晶ディスプレイ)モニタ)、ユーザがコンピュータに入力を与えることができるキーボード及びポインティングデバイス(例えば、マウスや、トラックボール)を有するコンピュータ上に実施されることが可能である。その他の種類の装置は、さらに、ユーザとのインタラクションを提供するために使用されることが可能であり、例えば、ユーザに提供されるフィードバックは、任意の形態のセンシングフィードバック(例えば、視覚的なフィードバック、聴覚的なフィードバック、又は触覚的なフィードバック)であり得、ユーザからの入力は、任意の形態で(音響、音声又は触覚による入力を含む)受信され得る。
本明細書に説明されるシステムと技術は、バックエンド構成要素を含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェア構成要素を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド構成要素を含むコンピューティングシステム(例えば、グラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータであり、ユーザは、当該グラフィカルユーザインターフェースもしくは当該ウェブブラウザを通じて本明細書で説明されるシステムと技術の実施形態とインタラクションすることができる)、そのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムに実施されることが可能である。システムの構成要素は、任意の形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互に接続されることが可能である。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)、ワイド・エリア・ネットワーク(「WAN」)、インターネットワークを含む。
コンピュータシステムは、クライアントとサーバを含み得る。クライアントとサーバは、一般的に互いから遠く離れており、通常は、通信ネットワークを通じてインタラクトする。クライアントとサーバとの関係は、相応するコンピュータ上で実行され、互いにクライアント-サーバの関係を有するコンピュータプログラムによって生じる。サーバは、クラウドコンピューティングサーバまたはクラウドホストとも呼ばれるクラウドサーバであって良く、クラウドコンピューティングサービスシステムのホスト製品であり、従来の物理ホストとVPSサービス(「Virtual Private Server」、或いは「VPS」と略称する)において管理が難しく、ビジネスの拡張性が低いという欠点を解決した。
本出願の実施形態の技術案によれば、RISC-Vプロセッサに予め定義されたNPUコマンドと、NPUにおけるメモリユニットと計算ユニットとの間のアーキテクチャ設計により、音声処理モデルに関連するニューラルネットワークコンピューティングをオフラインで高速かつ正確に実現し、オフライン音声処理タスクの処理効率を向上させることができる。
以上で示された様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除できることを理解されたい。例えば、本出願に説明される各ステップは、並列の順序又は順次的な順序で実施されてもよいし、又は異なる順序で実行されてもよく、本出願で開示された技術案の望ましい結果が達成できる限り、ここで制限されない。
前記の具体的な実施形態は本出願の保護範囲に対する制限を構成しない。設計要件及び他の要因に従って、様々な修正、組み合わせ、部分的組み合わせ及び置換を行うことができることを当業者は理解するべきである。本出願の精神及び原則の範囲内で行われる修正、同等の置換、改善は、何れも本出願の保護範囲内に含まれるべきである。

Claims (16)

  1. ニューラルネットワークプロセッサ(NPU)およびRISC-Vプロセッサを備える音声処理システムであって、
    前記RISC-Vプロセッサは、予め定義されたNPUコマンドを含み、前記RISC-Vプロセッサは、前記NPUが対応するニューラルネットワークコンピューティングを実行するように、前記NPUに前記NPUコマンドを送信し、
    前記NPUコマンドは、行列演算におけるベクトル間のドット積計算を行う且つメイン計算である第1ドット積計算のコマンドと、行列演算におけるベクトルと行列との間のドット積計算を行う且つメイン計算である第2ドット積計算のコマンドと、超越関数計算を行う且つ特殊計算であるベクトル超越関数計算のコマンドと、ニューラルネットワークにおけるベクトル加算計算を行う且つ補助計算であるベクトル加算のコマンドと、NPUが特定の計算をハードウェアに引き継がせる複合コマンドセットCISC制御のコマンドと、を含み
    前記NPUは、メモリユニットと計算ユニットとを備え、前記メモリユニットは、複数のストレージグループを含み、前記計算ユニットは、受信されたNPUコマンドに従って、前記メイン計算、前記特殊計算、前記補助計算、前記複合コマンドセットCISC制御のうちの何れか一つを実行する、システム。
  2. 前記予め定義されたNPUコマンドは、基礎ベクトル演算コマンドをさらに含む、請求項1に記載のシステム。
  3. 前記メモリユニットに含まれる複数のストレージグループは、ニューラルネットワークのモデルパラメータデータと、ニューラルネットワークのモデル計算過程で生成される中間データとをそれぞれ記憶する、請求項1または2に記載のシステム。
  4. 前記メモリユニットのメモリサイズは、
    前記メモリユニットの初期メモリサイズを設定し、
    初期メモリサイズにおける前記メモリユニットに対応する動作情報を決定し、
    前記動作情報が予め設定された要件を満たしていない場合に、前記初期メモリサイズを調整する、というサイクルを、決定された動作情報が予め設定された要件を満たすまで行い、前記初期メモリサイズの調整結果を前記メモリユニットのメモリサイズとする、ことにより決定される、請求項1から3のいずれか一項に記載のシステム。
  5. 前記計算ユニットは、行列×行列または行列×ベクトルの操作により、ニューラルネットワークコンピューティングを完成する、請求項1から4のいずれか一項に記載のシステム。
  6. 前記計算ユニットは、
    受信されたNPUコマンドがメイン計算コマンドであることに応じて、入力データのデータフォーマットを半精度の浮動小数点形式に変換し、ニューラルネットワークのモデルパラメータデータのデータフォーマットを8ビットの符号付き整数int8形式に変換し、
    半精度とint8を乗算した計算方式により入力データのメイン計算を完成する、請求項1から5のいずれか一項に記載のシステム。
  7. 前記計算ユニットは、
    受信されたNPUコマンドがメイン計算コマンドであることに応じて、ニューラルネットワークで使用されるモデルが予め設定されたモデルである場合に、入力データとモデルパラメータデータとのデータフォーマットを半精度の浮動小数点形式に変換し、
    半精度と半精度を乗算した計算方式により入力データのメイン計算を完成する、請求項1から5のいずれか一項に記載のシステム。
  8. 前記計算ユニットは、
    受信されたNPUコマンドが特殊計算コマンドであることに応じて、超越関数の関数タイプを特定し、
    前記関数タイプに応じた計算方法により、入力データの特殊計算を完成する、請求項1から7のいずれか一項に記載のシステム。
  9. 前記計算ユニットは、
    受信されたNPUコマンドが補助計算コマンドであることに応じて、畳み込みネットワークの入力データを行列に変換し、
    変換された行列に基づいて完全接続計算を行い、入力データの補助計算を完成する、請求項1から8のいずれか一項に記載のシステム。
  10. 前記計算ユニットは、
    受信されたNPUコマンドがCISC制御コマンドであることに応じて、入力データおよびモデルパラメータデータを特別に設計されたハードウェアに入力し、
    ハードウェアから返信された出力データを取得し、入力データのCISC制御を完成する、請求項1から9のいずれか一項に記載のシステム。
  11. 音声処理方法であって、
    処理待ち音声データを取得し、
    前記処理待ち音声データを音声処理システムの入力データとし、前記音声処理システムにより前記入力データに対してニューラルネットワークコンピューティングを行って出力結果を得、
    前記出力結果を前記処理待ち音声データの音声処理結果とする、ことを含み、
    前記音声処理システムは、請求項1~10の何れか1項に記載の音声処理システムである、方法。
  12. 前記音声処理システムにより前記入力データに対してニューラルネットワークコンピューティングを行って出力結果を得ることは、
    前記音声処理システムにおけるニューラルネットワークプロセッサNPUは、RISC-Vプロセッサから送信されたNPUコマンドに従って、前記入力データに対して前記NPUコマンドに対応するニューラルネットワークコンピューティングを行い、
    得られた計算結果を前記出力結果とする、ことを含む請求項11に記載の方法。
  13. 前記入力データに対して前記NPUコマンドに対応する前記ニューラルネットワークコンピューティングを行うことは、
    前記入力データに対してメイン計算、特殊計算、補助計算、および複合コマンドセットCISC制御のうちの少なくとも一つを実行する、ことを含む請求項12に記載の方法。
  14. 少なくとも一つのプロセッサと、
    前記少なくとも一つのプロセッサと通信接続されたメモリと、
    請求項1~10のいずれか1項に記載の音声処理システムと、を備え、
    前記メモリに前記少なくとも一つのプロセッサにより実行可能なコマンドが記憶されており、前記コマンドが前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサに請求項11~13のいずれか1項に記載の方法を実行させる、電子デバイス。
  15. コンピュータに請求項11~13のいずれか1項に記載の方法を実行させるためのコンピュータコマンドが記憶される非一時的なコンピュータ可読記憶媒体。
  16. コンピュータに請求項11~13のいずれか1項に記載の方法を実行させるためのコンピュータプログラム。
JP2021091224A 2020-09-22 2021-05-31 音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体 Active JP7210830B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011001663.7 2020-09-22
CN202011001663.7A CN112259071A (zh) 2020-09-22 2020-09-22 语音处理系统、语音处理方法、电子设备和可读存储介质

Publications (2)

Publication Number Publication Date
JP2022051669A JP2022051669A (ja) 2022-04-01
JP7210830B2 true JP7210830B2 (ja) 2023-01-24

Family

ID=74232803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021091224A Active JP7210830B2 (ja) 2020-09-22 2021-05-31 音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体

Country Status (5)

Country Link
US (1) US20220093084A1 (ja)
EP (1) EP3971712A1 (ja)
JP (1) JP7210830B2 (ja)
KR (1) KR20220040378A (ja)
CN (1) CN112259071A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113674744A (zh) * 2021-08-20 2021-11-19 天津讯飞极智科技有限公司 语音转写方法、装置、拾音转写设备与存储介质
CN113986141A (zh) * 2021-11-08 2022-01-28 北京奇艺世纪科技有限公司 服务端模型更新方法、系统、电子设备及可读存储介质
CN114267337B (zh) * 2022-03-02 2022-07-19 合肥讯飞数码科技有限公司 一种语音识别系统及实现前向运算的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110490311A (zh) 2019-07-08 2019-11-22 华南理工大学 基于risc-v架构的卷积神经网络加速装置及其控制方法
CN110502278A (zh) 2019-07-24 2019-11-26 福州瑞芯微电子股份有限公司 基于RiscV扩展指令的神经网络协处理器及其协处理方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7065633B1 (en) * 1999-01-28 2006-06-20 Ati International Srl System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU
CN101594700A (zh) * 2008-05-29 2009-12-02 三星电子株式会社 划分无线终端的内存空间的方法和装置
CN103631561B (zh) * 2012-08-27 2017-02-08 长沙富力电子科技有限公司 一种基于超复杂指令集系统的微处理器架构
US10776690B2 (en) * 2015-10-08 2020-09-15 Via Alliance Semiconductor Co., Ltd. Neural network unit with plurality of selectable output functions
US11023351B2 (en) * 2017-02-28 2021-06-01 GM Global Technology Operations LLC System and method of selecting a computational platform
US10503427B2 (en) * 2017-03-10 2019-12-10 Pure Storage, Inc. Synchronously replicating datasets and other managed objects to cloud-based storage systems
CN109389209B (zh) * 2017-08-09 2022-03-15 上海寒武纪信息科技有限公司 处理装置及处理方法
CN109284822B (zh) * 2017-07-20 2021-09-21 上海寒武纪信息科技有限公司 一种神经网络运算装置及方法
KR102410820B1 (ko) * 2017-08-14 2022-06-20 삼성전자주식회사 뉴럴 네트워크를 이용한 인식 방법 및 장치 및 상기 뉴럴 네트워크를 트레이닝하는 방법 및 장치
CN107729998B (zh) * 2017-10-31 2020-06-05 中国科学院计算技术研究所 一种用于神经网络处理器的方法
CN108388446A (zh) * 2018-02-05 2018-08-10 上海寒武纪信息科技有限公司 运算模块以及方法
US10665222B2 (en) * 2018-06-28 2020-05-26 Intel Corporation Method and system of temporal-domain feature extraction for automatic speech recognition
CN109542830B (zh) * 2018-11-21 2022-03-01 北京灵汐科技有限公司 一种数据处理系统及数据处理方法
CN110007961B (zh) * 2019-02-01 2023-07-18 中山大学 一种基于risc-v的边缘计算硬件架构
CN111145736B (zh) * 2019-12-09 2022-10-04 华为技术有限公司 语音识别方法及相关设备
CN110991619A (zh) * 2019-12-09 2020-04-10 Oppo广东移动通信有限公司 神经网络处理器、芯片和电子设备
CN111126583B (zh) * 2019-12-23 2022-09-06 中国电子科技集团公司第五十八研究所 一种通用神经网络加速器
CN111292716A (zh) * 2020-02-13 2020-06-16 百度在线网络技术(北京)有限公司 语音芯片和电子设备
US11776562B2 (en) * 2020-05-29 2023-10-03 Qualcomm Incorporated Context-aware hardware-based voice activity detection
KR20220030106A (ko) * 2020-09-02 2022-03-10 삼성전자주식회사 저장 장치, 저장 장치의 동작 방법 및 이를 포함한 전자 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110490311A (zh) 2019-07-08 2019-11-22 华南理工大学 基于risc-v架构的卷积神经网络加速装置及其控制方法
CN110502278A (zh) 2019-07-24 2019-11-26 福州瑞芯微电子股份有限公司 基于RiscV扩展指令的神经网络协处理器及其协处理方法

Also Published As

Publication number Publication date
US20220093084A1 (en) 2022-03-24
CN112259071A (zh) 2021-01-22
KR20220040378A (ko) 2022-03-30
EP3971712A1 (en) 2022-03-23
JP2022051669A (ja) 2022-04-01

Similar Documents

Publication Publication Date Title
JP7210830B2 (ja) 音声処理システム、音声処理方法、電子デバイス及び可読記憶媒体
JP7166322B2 (ja) モデルを訓練するための方法、装置、電子機器、記憶媒体およびコンピュータプログラム
JP7318159B2 (ja) テキスト誤り訂正方法、装置、電子デバイス及び可読記憶媒体
WO2022000802A1 (zh) 深度学习模型的适配方法、装置及电子设备
JP2022018095A (ja) マルチモーダル事前訓練モデル取得方法、装置、電子デバイス及び記憶媒体
JP2021047392A (ja) 音声合成方法、装置、電子デバイス、及びプログラム
JP7083939B2 (ja) モデルの蒸留方法、装置、電子機器及び記憶媒体
EP3926512A1 (en) Method and apparatus for improving model based on pre-trained semantic model
EP3866166B1 (en) Method and apparatus for predicting mouth-shape feature, electronic device, storage medium and computer program product
JP7279138B2 (ja) 多言語モデルの訓練方法、装置、電子デバイス及び可読記憶媒体
JP2022177793A (ja) ディープラーニングフレームワークのオペレータ登録方法、装置、デバイス及び記憶媒体
EP3799036A1 (en) Speech control method, speech control device, electronic device, and readable storage medium
EP3866162A2 (en) Speech chip and electronic device
JP7488322B2 (ja) アクセス方法、装置、電子機器及びコンピュータ記憶媒体
WO2021068469A1 (zh) 神经网络的量化与定点化融合方法及装置
JP2022179307A (ja) ニューラルネットワークトレーニング方法、装置、電子機器、媒体及びプログラム製品
EP3992774A1 (en) Method and device for implementing dot product operation, electronic device, and storage medium
CN111325332A (zh) 卷积神经网络的处理方法和装置
JP2021177368A (ja) ニューラルネットワークモデルの処理方法及び装置
US20220309395A1 (en) Method and apparatus for adapting deep learning model, and electronic device
WO2022037422A1 (zh) 处理器及实现方法、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220907

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221215

R150 Certificate of patent or registration of utility model

Ref document number: 7210830

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150