JP2019035862A - 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム - Google Patents

入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム Download PDF

Info

Publication number
JP2019035862A
JP2019035862A JP2017157322A JP2017157322A JP2019035862A JP 2019035862 A JP2019035862 A JP 2019035862A JP 2017157322 A JP2017157322 A JP 2017157322A JP 2017157322 A JP2017157322 A JP 2017157322A JP 2019035862 A JP2019035862 A JP 2019035862A
Authority
JP
Japan
Prior art keywords
input
mask
sound
processing function
dnn
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
JP2017157322A
Other languages
English (en)
Other versions
JP6721165B2 (ja
Inventor
悠馬 小泉
Yuma Koizumi
悠馬 小泉
健太 丹羽
Kenta Niwa
健太 丹羽
小林 和則
Kazunori Kobayashi
和則 小林
羽田 陽一
Yoichi Haneda
陽一 羽田
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.)
Nippon Telegraph and Telephone Corp
University of Electro Communications NUC
Original Assignee
Nippon Telegraph and Telephone Corp
University of Electro Communications NUC
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 Nippon Telegraph and Telephone Corp, University of Electro Communications NUC filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017157322A priority Critical patent/JP6721165B2/ja
Publication of JP2019035862A publication Critical patent/JP2019035862A/ja
Application granted granted Critical
Publication of JP6721165B2 publication Critical patent/JP6721165B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)

Abstract

【課題】微分不可能な評価値を含む多様な評価値を用いて入力音をマスク処理するためのマスクを生成する用途に適用できる学習技術を提供する。【解決手段】入力音に基づく入力ベクトルxτを入力とした場合にマスクGτが生成される生成確率をモデル化した事後確率分布に基づき、N個の入力音に基づく入力ベクトルxNからN個のマスクGNを生成するマスク生成部と、マスクGNを用いて、N個の入力音からN個の出力音を生成するマスク処理部と、N個の出力音に対するマスクGNの報酬係数を得る報酬係数取得部と、報酬係数と、事後確率分布に基づく入力ベクトルxNを入力とした場合にマスクGNが生成される生成確率q(GN|xN)とを用いて、事後確率分布を更新する更新部とを含み、報酬係数は、出力音の評価値と、入力音が入力された場合に生成したマスクGNの確からしさである確信度から定まる。【選択図】図13

Description

本発明は、入力音をマスク処理するためのマスクや入力データを処理するための処理関数の生成に用いることができる学習技術に関する。
音源強調技術は、雑音に埋もれた観測信号の中から所望の目的音を強調する技術であり、音声認識の前処理、高臨場音響向け集音、聴覚補助など、その応用範囲の広さから長年研究されている。その実現例の一つとして、ウィナーフィルタリングのような時間周波数マスクに基づく処理がある。
音源強調の定式化のために、まず観測信号をモデル化する。m番目のマイクロホンの観測信号を数十ms分の長さで切り出し、時間フレームごとに短時間フーリエ変換(STFT: short-time Fourier transform)した信号Xω,τ∈CΩ×Τを所望の源信号Sω,τ∈CΩ×Τと雑音Nω,τ∈CΩ×Τが重畳されたものとして以下のように記述する。
Figure 2019035862
ここで、ω∈{1,…,Ω}とτ∈{1,…,Τ}は、周波数と時間のインデックスを表す変数である。
非線形フィルタリングとは、時間周波数成分ごとにゲインを調整する時間周波数マスクに基づく処理である。時間周波数マスクに基づく音源強調では、0から1の値を持つ時間周波数マスクGω,τ∈[0,1]を観測信号Xω,τに掛け合わせることで、源信号Sω,τが強調された信号S^ω,τ∈CΩ×Τを得る(図1参照)。
Figure 2019035862
時間周波数マスクGω,τの代表的な計算法として、ウィナーマスクがある。ウィナーマスクは、源信号とすべての雑音が互いに無相関かつ定常であるときにSω,τとS^ω,τの平均二乗誤差(MSE:mean squared error)を最小化するマスクである。しかし、源信号や雑音は非定常であることが多いため、実用上は以下の時変ウィナーマスクGWF ω,τを用いることが多い。
Figure 2019035862
ウィナーマスクを計算するためには、源信号の振幅スペクトル|Sω,τ|と雑音の振幅スペクトル|Nω,τ|の両方を推定しなくてはならないが、実用上は計算量や推定する値の数を少なくするために、以下のように源信号と雑音の加法性がパワースペクトル領域でも成り立つと仮定し、
Figure 2019035862
源信号と雑音のどちらか片方を推定し近似的にウィナーマスクを計算することが多い。例えば、源信号の振幅スペクトル|Sω,τ|を推定した場合、ウィナーマスクは以下のように計算できる。
Figure 2019035862
近年、時間周波数マスク推定に、観測信号を時間周波数マスクのパラメータに非線形射影するための射影関数として深層ニューラルネットワーク(DNN:deep neural network)が適用されている(非特許文献1)。観測信号Xω,τの時間周波数要素を並べたベクトルをxτ、時間周波数マスクを計算するためのパラメータを並べたベクトルyτとして、以下の式でベクトルy^τを推定する(図2参照)。例えば、図2のベクトルxτはフレーム結合された振幅スペクトルやMFCC(Mel-Frequency Cepstrum Coefficients)であり、ベクトルy^τは源信号の振幅スペクトルである。
Figure 2019035862
ここで、Lはニューラルネットワークの層数であり、W(j)、b(j)はそれぞれj層目の重み行列とバイアスベクトルである。つまり、DNNのパラメータΘΜは、ΘΜ={W(j),b(j)|j=2,…,L}である。また、σθは活性化関数と呼ばれる非線形関数であり、シグモイド関数やランプ関数が用いられる。なお、zτ (1)=xτである。DNNの入力となるベクトルxτは、観測信号の周波数情報と時間情報の両方を考慮するために、例えば、以下のような観測信号Xω,τ∈CΩ×Τの時間周波数要素を並べたベクトルとする。
Figure 2019035862
ここで、式(9)の括弧の右肩のtは転置を表す。また、Pb, Pfは考慮する前後の時間フレーム数であり、コンテキスト窓と呼ばれる。
源信号の振幅スペクトル|Sω,τ|から時間周波数マスクを計算する場合、DNNの出力となるベクトルyτは、例えば、以下のようになる。
Figure 2019035862
DNNのパラメータΘΜは、観測信号とラベルデータ(時間周波数マスクのパラメータ)が対になったデータ(この例では、ベクトルxτとベクトルyτが対になったデータ)を大量に用意し、二乗誤差などの微分可能な評価値を最小化するように、誤差逆伝搬を用いて教師あり学習により生成される。
Figure 2019035862
ただし、入出力ベクトルの次元数を抑えるために、源信号Sω,τや雑音Nω,τは、64次元程度のメルフィルタバンクで圧縮することもできる。このような圧縮をした場合には、メルフィルタバンク圧縮を行列演算とみなし、その逆行列などを用いて、DNNの出力を元の周波数領域に戻し、時間周波数マスクを設計する。
Y. Xu, J. Du, L. R. Dai and C. H. Lee, "A regression approach to speech enhancement based on deep neural networks", IEEE/ACM Trans. Audio, Speech and Language Processing, Vol.23, No.1, pp.7-19, 2015.
従来、誤差逆伝搬のために用いることができる評価値は、二乗誤差のように微分可能なものに限られていた。しかし、音源強調の性能評価値には、音源強調の応用に応じて、二乗誤差のように微分可能なものだけでなく、PESQ(perceptual evaluation of speech quality)やSTOI(short-time objective intelligibility measure)のような微分不可能なものも用いられる(参考非特許文献1、参考非特許文献2)。
(参考非特許文献1:ITU-T Recommendation P.862,”Perceptual evaluation of speech quality (PESQ): An objective method for end-to-end speech quality assessment of narrow-band telephone networks and speech codecs”, 2001.)
(参考非特許文献2:C.H.Taal, R.C.Hendriks, R.Heusdens, and J.Jensen, “An Algorithm for Intelligibility Prediction of Time-Frequency Weighted Noisy Speech”, IEEE Transactions on Audio, Speech and Language Processing, Vol.19, pp.2125-2136, 2011.)
したがって、用途に応じてDNNを適切に学習するためには、PESQなどの微分不可能な評価値を用いてDNNパラメータを最適化するようなDNNの学習フレームワークが必要になる。
そこで本発明では、微分不可能な評価値を含む多様な評価値を用いて入力音をマスク処理するためのマスクや入力データを処理するための処理関数を生成する用途に適用できる学習技術を提供することを目的とする。
本発明の一態様は、入力音に基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合にマスクGτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力音(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個のマスクGNを生成するマスク生成部と、前記マスクGNを用いて、前記N個の入力音から、前記N個の入力音をマスク処理したN個の出力音を生成するマスク処理部と、前記N個の出力音に対する、前記マスクGNの報酬係数を得る報酬係数取得部と、前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合にマスクGNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新部とを含み、前記報酬係数は、前記出力音の評価値と、前記入力音が入力された場合に生成した前記マスクGNの確からしさである確信度から定まる。
本発明の一態様は、入力データに基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合に処理関数Gτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力データ(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個の処理関数GNを生成する処理関数生成部と、前記処理関数GNを用いて、前記N個の入力データから、前記N個の入力データを処理関数により処理したN個の出力データを生成する処理関数適用部と、前記N個の出力データに対する、前記処理関数GNの報酬係数を得る報酬係数取得部と、前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合に処理関数GNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新部とを含み、前記報酬係数は、前記出力データの評価値と、前記入力データが入力された場合に生成した前記処理関数GNの確からしさである確信度から定まる。
本発明によれば、微分不可能な評価値を含む多様な評価値を用いて事後確率分布を更新することにより、入力音をマスク処理するためのマスクや入力データを処理するための処理関数を生成するための事後確率分布を学習することが可能となる。
音源強調装置900の構成の一例を示すブロック図。 DNNを用いた時間周波数マスク生成部910の構成の一例を示すブロック図。 音源強調学習装置100の構成の一例を示すブロック図。 音源強調学習装置100の動作の一例を示すフローチャート。 DNNパラメータ初期値生成部110の構成の一例を示すブロック図。 DNNパラメータ初期値生成部110の動作の一例を示すフローチャート。 DNN-RLパラメータ生成部120の構成の一例を示すブロック図。 DNN-RLパラメータ生成部120の動作の一例を示すフローチャート。 DNN-RL時間領域出力信号生成部124の構成の一例を示すブロック図。 DNN-RL時間領域出力信号生成部124の動作の一例を示すフローチャート。 音源強調装置200の構成の一例を示すブロック図。 音源強調装置200の動作の一例を示すフローチャート。 入力音マスク処理学習装置300の構成の一例を示すブロック図。 入力音マスク処理学習装置300の動作の一例を示すフローチャート。 入力音マスク処理学習装置301の構成の一例を示すブロック図。 入力音マスク処理学習装置301の動作の一例を示すフローチャート。 入力データ処理関数学習装置400の構成の一例を示すブロック図。 入力データ処理関数学習装置400の動作の一例を示すフローチャート。
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
<技術的背景>
PESQやSTOIのような評価値は、時間周波数マスク(やそのパラメータ)の推定値とラベルデータとの誤差(式(12)参照)のように微分することはできない。そこで、ここでは、従来のように直接時間周波数マスク(またはそのパラメータ)を推定する非線形射影のアプローチではなく、観測信号を得た下で評価値を最大化する時間周波数マスクの事後確率分布(またはそのパラメータ)を推定する。この事後確率分布が満たすべき性質を目的関数として記述し、この目的関数を用いて、DNN(DNNパラメータΘΜ)を学習する。
従来は、時間周波数マスクそのものやそのパラメータをDNNで出力し、事前に用意したラベルデータとDNNの出力の二乗誤差などの微分可能な評価値を最小化するようにDNNを学習していた(図2、式(12)参照)。しかし、ここでは、観測信号を得た下での評価値を最大化する時間周波数マスクの確率密度関数(またはそのパラメータ)をDNNで出力する。そして、微分不可能な評価値を出力する評価関数Rを最大化するような新たな目的関数Tarを用いてDNNを学習する。つまり、従来は式(12)を用いてDNNを学習していたところ、ここでは、後述する式(26)を用いてDNNを学習する。
以下、詳細に説明する。
《目的関数Tarの導出》
本発明の実施の形態で最大化する対象となる評価値には、PESQやSTOIのような音声強調の出力信号S^ω,τから計算できる評価値がある。また、MOS値のように主観評価を行った結果やよい悪いを示す二値のように計算以外の方法で出力信号S^ω,τから得ることができる評価値であってもよい。さらに、例えば音声認識向けに音源強調を最適化したいのであれば、音声認識の結果が正解か否かの二値を評価値としてもよい。
また、本発明の実施の形態では、音源強調は時間周波数マスク処理により行われるため、評価値は時間周波数マスク系列Gの関数としてとらえることができる。すなわち、
Figure 2019035862
である。
ここで、評価値を出力する評価関数をR、最大化したい評価値をR(G)とおく。すると、問題は、評価値R(G)を最大化する時間周波数マスクを出力するDNNのパラメータΘΜを求めることに帰着する。
従来、DNNの出力は、式(6)のベクトルy^τのように時間周波数マスクそのものやそのパラメータを出力していた。ここでは、Μ(xτΜ)を次式のように時間周波数マスクGτが評価値を最大化する事後確率として定義する。
Figure 2019035862
そして、時間周波数マスクGτは以下の事後確率最大化推定で求める。
Figure 2019035862
ここで、事後確率p(Gτ|xτΜ)は時間周波数マスクGτに対する連続的な確率分布であるため、式(16)はp(Gτ|xτΜ)を最大化するGτを直接求めること、つまり時間周波数マスクGτの生成とみなすことができる。
評価値R(G)を最大化する音源強調を実現するために、目的関数Tarを評価値R(G)の期待値として以下のように設計する。
Figure 2019035862
ただし、
Figure 2019035862
であり、p(X)は観測信号系列Xを得る確率、p(G|X,ΘΜ)は観測信号系列Xを得たもとで時間周波数マスク系列Gが評価値を最大化する確率密度関数を表す。
さらに、音源強調においては、時間周波数マスキングが次の時刻の観測信号に影響を及ぼすことはなく、また時刻τにおける時間周波数マスクの設計は他の時刻とは独立に行われる。このことを考慮すると、音源強調における確率密度関数p(G|X,ΘΜ)は以下の簡潔な形で記述できる。
Figure 2019035862
よって、目的関数Tarは以下のように記述できる。
Figure 2019035862
この目的関数Tarの性質を調べるために、式(21)に出現する目的関数TarのΘΜに関する勾配を求める。目的関数TarのΘΜに関する勾配は以下のように計算できる。
Figure 2019035862
ここで、式(23)の期待値をI回(Iは1以上の整数)のエピソードに関する算術平均に置き換える。すると、式(23)は以下のように書き換えることができる。
Figure 2019035862
ここで、Rew(i)=R(G(i))p(G(i)|X(i)Μ)、上付き/下付きの文字iや(i)はi番目のエピソードの変数であることを示す。以下、Rewを報酬係数という。
報酬係数Rew(i)の意味を定性的に考える。第一項R(G(i))は評価値に関する項であり、生成した時間周波数マスクがよい評価であれば値が正、悪い評価であれば値が負となる、自身の生成した“時間周波数マスクの評価”を表す。また、第二項p(G(i)|X(i)Μ)は時間周波数マスクの生成確率に関する項であり、自身の生成した時間周波数マスクは現状のDNNパラメータΘΜにおいてどれだけ確信を持って生成したものであるかという“時間周波数マスクの確信度”を表す。報酬係数Rew(i)はこの2つの項の積であるため、確信をもって生成した時間周波数マスクが評価値を向上させたならば生成確率lnp(G(i) τ|X(i) τ, ΘΜ)を大きく増加させ、確信をもって生成した時間周波数マスクが評価値を低下させたならば生成確率lnp(G(i) τ|X(i) τ, ΘΜ)を大きく減少させる働きを持っている。また、確信をもたずに生成した時間周波数マスクによって評価値が向上または低下した場合、その結果は偶発的に生じたものである可能性があるため、生成確率lnp(G(i) τ|X(i) τ, ΘΜ)の増加または減少を小さく抑える働きを持っている。
以上まとめると、PESQ、STOI、MOS値のような微分不可能な評価値を最大化する時間周波数マスク生成のための目的関数Tarは、評価値R(G(i))と確信度p(G(i)|X(i), ΘΜ)で重み付けられた、生成した時間周波数マスクに対する対数尤度lnp(G(i) τ|X(i) τ, ΘΜ)の算術平均となる。
Figure 2019035862
なお、報酬係数Rew(i)の第二項p(G(i) τ|X(i) τ, ΘΜ)はΘΜで微分されていないことに注意されたい。
式(26)で定義される目的関数Tarの導出では、微分不可能な評価値を対象に議論を進めてきたが、この議論は微分不可能な評価値に限られるものではない。つまり、式(26)で定義される目的関数Tar及び式(26’)で定義される報酬係数Rew(i)は、微分可能な評価値についても適用することが可能である。
《DNNパラメータΘΜの学習アルゴリズム》
以下、式(26)の目的関数Tarを用いて、時間周波数マスクGτが評価値を最大化する事後確率p(Gτ|xτΜ)の分布パラメータを出力とするDNNのパラメータΘΜを学習するためのアルゴリズムについて説明する。
(DNNの出力p(Gτ|xτΜ)の分布パラメータの設計)
まず、p(Gτ|xτΜ)をDNNのパラメータΘΜで微分可能な分布として表現し、p(Gτ|xτΜ)の分布パラメータをニューラルネットワークで推定、出力する。
そこで、p(Gτ|xτΜ)をDNNのパラメータΘΜで微分が容易で、数値的に扱いやすい複素ガウス分布としてモデル化する。
Figure 2019035862
ここで、式(27)の右辺の小さい丸印はアダマール積を表し、式(29)の右辺のRとIはそれぞれ複素数の実部と虚部を表す。
そして、複素ガウス分布p(Gτ|xτΜ)の分布パラメータである平均ベクトルμ(xτ)と分散ベクトルσ(xτ)をDNNの出力とする。
Figure 2019035862
ここで、平均ベクトルμ(xτ)を時間周波数マスクGτ∈[0,1]の推定値とするために、活性化関数にシグモイド関数を利用している。
ここでは、事後確率p(Gτ|xτΜ)を複素ガウス分布によりモデル化することで、DNNの出力を平均ベクトルμ(xτ)と分散ベクトルσ(xτ)としたが、事後確率p(Gτ|xτΜ)そのものをDNNの出力としてもよい(図2参照)。
(評価関数Rの設計)
代表的な評価値であるPESQやSTOIは、音源強調の性能だけでなく観測信号のSNRや雑音の種類によっても値が変動してしまう。そこで、上述のDNN(式(26)の目的関数Tarを用いたDNN)により学習したパラメータΘΜから求めた時間周波数マスクを用いて音源強調した出力音の評価値と、従来のMMSE(minimum mean squared error)基準を用いたDNNにより学習したパラメータΘΜから求めた時間周波数マスクを用いて音源強調した出力音(非特許文献1)の評価値を比較することで得られる評価値(以下、比較報酬という)を計算する。
以下、簡単のために、式(26)の目的関数Tarを用いて学習したDNNをDNN-RLと呼ぶ。また、MMSE基準を用いて学習したDNNをDNN-MMSEという。同様に、簡単のため、DNN-RLで得られた時間周波数マスクを用いて音源強調された出力音のことをDNN-RLで得られた出力音、DNN-MMSEで得られた時間周波数マスクを用いて音源強調された出力音のことをDNN-MMSEで得られた出力音という。
なお、式(26)の目的関数Tarを用いたDNNの学習をDNN-RL学習、MMSE基準を用いたDNNの学習をDNN-MMSE学習という。
DNN-RLで得られた出力音の評価値をZRL、DNN-MMSEで得られた出力音の評価値をZMMSEとする。そして、この2つの評価値を比較した評価値である比較報酬R(G)を以下のように求める。
Figure 2019035862
ここで、α(>0)は比較報酬のスケーリング係数であり、tanhは比較報酬のクリッピングのための双曲線正接関数である。
この比較報酬R(G)は、ゲームの勝敗から着想を得た値である。ZRLがZMMSEより大きいということは、DNN-MMSEで得られた出力音の評価値よりもDNN-RLで得られた出力音の評価値が高いということであり、ZRLを求めるために行った音源強調は正しかったと判断することができる(このとき、R(G)>0となる)。一方、ZRLがZMMSEより小さいということは、DNN-MMSEで得られた出力音の評価値よりもDNN-RLで得られた出力音の評価値が低いということであり、ZRLを求めるために行った音源強調は誤っていたと判断することができる(このとき、R(G)<0となる)。このように、DNN-MMSEというDNN-RLと比較対象となる音源強調手段を設けることで、音源強調の性能以外からの評価値への影響を低減することが可能となる。また、MMSE基準に基づく音源強調よりも高い評価値となる音源強調のためのDNNのパラメータの学習が可能となる。
また、報酬係数Rewの第二項p(G|X,ΘΜ)は確率の積であるため非常に小さな値となる(式(20)参照)。アンダーフローを避けるために、報酬係数Rewを以下の式で求める。
Figure 2019035862
ここで、βとγはp(G|X)のアンダーフローを避けるための係数である。
DNN-MMSEで得られた出力音の評価値よりもDNN-RLで得られた出力音の評価値が低い場合(R(G)<0)、DNN-RLの時間周波数マスクよりもDNN-MMSEの時間周波数マスクの方が、評価値が高くなると考えられる。そこで、MMSEベースの時間周波数マスクの生成確率を高めるために以下の処理を行う。
Figure 2019035862
<第一実施形態>
ここでは、<技術的背景>で説明した内容に基づいて構成した音源強調学習装置について説明する。
以下、図3〜図4を参照して音源強調学習装置100を説明する。図3は、音源強調学習装置100の構成を示すブロック図である。図4は、音源強調学習装置100の動作を示すフローチャートである。図3に示すように音源強調学習装置100は、周波数領域信号生成部105と、DNNパラメータ初期値生成部110と、DNN-RLパラメータ生成部120と、記録部190を含む。記録部190は、音源強調学習装置100の処理に必要な情報を適宜記録する構成部である。
音源強調学習装置100は、目的音学習データ記録部910、雑音学習データ記録部920に接続している。目的音学習データ記録部910、雑音学習データ記録部920には、事前に収音した目的音と雑音が学習データとして記録されている。目的音学習データ、雑音学習データは、時間領域信号である。例えば、音声を目的音とする場合、目的音学習データは、無響室などで収録した発話データである。この発話データは、8秒間程度の発話を、5000発話程度以上集めることが望ましい。また、雑音学習データは、使用を想定する環境で収録した雑音である。
音源強調学習装置100の各構成部で用いる各種パラメータ(例えば、DNN-MMSE学習、DNN-RL学習などに用いるパラメータ)については、目的音学習データや雑音学習データと同様外部から入力するようにしてもよいし、事前に各構成部に設定されていてもよい。
図4に従い音源強調学習装置100の動作について説明する。周波数領域信号生成部105は、目的音学習データと雑音学習データから、周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ}、Ω、Τはそれぞれ目的音学習データ及び雑音学習データにより定まる1以上の整数)を生成する(S105)。具体的には、まず、目的音学習データ(先ほどの例でいうと、8秒間程度の発話データ)をランダムに1つ選択し、目的音学習データと同じ長さの雑音学習データをランダムに1つ選択する。さらに、目的音学習データと雑音学習データをランダムなSNR(signal-to-noise ratio)で重畳することにより時間領域観測信号を生成する。このSNRの範囲は、例えば、-6dB〜12dB程度に設定するとよい。次に、これらの目的音学習データ、雑音学習データ、時間領域観測信号から周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})を生成する。これらの周波数領域信号の生成には短時間フーリエ変換等を用いるとよい。
DNNパラメータ初期値生成部110は、S105で生成した周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-MMSEパラメータの初期値ΘMMSE iniとDNN-RLパラメータの初期値ΘRL iniを生成する(S110)。DNN-RLパラメータ生成部120は、S110で生成したDNN-MMSEパラメータ初期値ΘMMSE iniとDNN-RLパラメータ初期値ΘRL iniを用いて、S105で生成した周波数領域目的音信号Sω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})からDNN-RLパラメータΘRLを生成する(S120)。
なお、S105の処理は、S110やS120の処理(DNN-MMSE学習やDNN-RL学習)に必要な回数だけ適宜実行される。したがって、S120の処理に必要となるS105の処理は、図4におけるS110とS120の間で実行してもよい。
以下、図5〜図6を参照してDNNパラメータ初期値生成部110について説明する。図5は、DNNパラメータ初期値生成部110の構成を示すブロック図である。図6は、DNNパラメータ初期値生成部110の動作を示すフローチャートである。図5に示すようにDNNパラメータ初期値生成部110は、DNN-MMSEパラメータ初期値生成部111と、DNN-RLパラメータ初期値生成部112を含む。
図6に従いDNNパラメータ初期値生成部110の動作について説明する。DNN-MMSEパラメータ初期値生成部111は、S105で生成した周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-MMSEパラメータの初期値ΘMMSE iniを生成する(S111)。初期値ΘMMSE iniの生成には、例えば、非特許文献1を用いることができる。具体的には、まず、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、式(9)によりDNN-MMSEの入力ベクトルxτ(τ∈{1,…,Τ})を生成する。また、周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τから、次式により時間周波数マスクGIRM ω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})を生成する。
Figure 2019035862
この時間周波数マスクGIRM ω,τがラベルデータとなる。
次に、式(42)〜式(44)を用いてDNN-MMSEを学習する。
Figure 2019035862
具体的には、まず、DNN-MMSEの入力ベクトルxτに対して、DNN-MMSEの出力であるμ(xτ)(τ∈{1,…,Τ})を生成する。次に、Gτ=μ(xτ)として、ラベルデータGIRM ω,τとGω,τ(=μω,τ)の二乗誤差を最小化するように誤差逆伝搬法を用いて、DNN-MMSEパラメータΘMを学習する。このDNN-MMSEの構造を定める式(42)〜式(44)は、DNN-RLの構造を定める式(32)〜式(35)から式(33)の分散ベクトルの推定を除いたものに等しい。
なお、この学習にはdiscriminative pre-training(参考非特許文献3)などの初期化法を用いることができる。また、誤差逆伝搬法の実装には、Adam(参考非特許文献4)などのアルゴリズムを用いることができる。
(参考非特許文献3:F.Seide, G.Li, X.Chen and D.Yu, “Feature engineering in context-dependent deep neural networks for conversational speech transcription”, In Proc. IEEE Automatic Speech Recognition and Understanding Workshop(ASRU), pp. 24-29, 2011.)
(参考非特許文献4:D.Kingma and J.Ba, “Adam: A Method for Stochastic Optimization”, In Proc. of the 3rd International Conference for Learning Representations(ICLR), pp.1-15, 2015.)
学習が終了したときのDNN-MMSEパラメータΘMを、DNN-MMSEパラメータ初期値ΘMMSE iniとして出力する。DNN-MMSEパラメータ初期値ΘMMSE iniは、DNN-RLパラメータ生成部120の処理で用いるので、記録部190に記録しておく。
DNN-RLパラメータ初期値生成部112は、S105で生成した周波数領域目的音信号Sω,τ、周波数領域雑音信号Nω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-RLパラメータの初期値ΘRL iniを生成する(S112)。具体的には、まず、S105で生成した周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、式(9)によりDNN-RLの入力ベクトルxτ(τ∈{1,…,Τ})を生成する。
次に、式(32)〜式(35)を用いてDNN-RLを学習する。具体的には、まず、DNN-RLの入力ベクトルxτに対して、DNN-RLの出力である平均ベクトルμ(xτ)と分散ベクトルσ(xτ)(τ∈{1,…,Τ})を生成する。次に、式(45)のように尤度関数を最大化するように誤差逆伝搬法を用いて、DNN-RLパラメータΘMを学習する。
Figure 2019035862
ただし、
Figure 2019035862
である。
なお、誤差逆伝搬法の実装には、先ほど同様、Adamを用いることができる。
学習が終了したときのDNN-RLパラメータΘMを、DNN-RLパラメータ初期値ΘRL iniとして出力する。DNN-RLパラメータ初期値ΘRL iniは、DNN-RLパラメータ生成部120の処理で用いるので、記録部190に記録しておく。
以下、図7〜図8を参照してDNN-RLパラメータ生成部120について説明する。図7は、DNN-RLパラメータ生成部120の構成を示すブロック図である。図8は、DNN-RLパラメータ生成部120の動作を示すフローチャートである。図7に示すようにDNN-RLパラメータ生成部120は、DNN-RL時間領域出力信号生成部124と、DNN-MMSE時間領域出力信号生成部125と、報酬係数計算部126と、DNN-RLパラメータ最適化部127と、収束条件判定部128を含む。
図8に従いDNN-RLパラメータ生成部120の動作について説明する。DNN-RL時間領域出力信号生成部124は、S105で生成した周波数領域目的音信号Sω,τ、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-RL時間領域出力信号を生成する(S124)。
以下、図9〜図10を参照してDNN-RL時間領域出力信号生成部124について説明する。図9は、DNN-RL時間領域出力信号生成部124の構成を示すブロック図である。図10は、DNN-RL時間領域出力信号生成部124の動作を示すフローチャートである。図9に示すようにDNN-RL時間領域出力信号生成部124は、事後確率分布パラメータ生成部121と、時間周波数マスク生成部122と、時間周波数マスク処理部123を含む。
なお、事後確率分布パラメータ生成部121、時間周波数マスク生成部122、時間周波数マスク処理部123はそれぞれ従来技術における非線形写像部912、マスク計算部913、フィルタリング部920に対応する。
図10に従いDNN-RL時間領域出力信号生成部124の動作について説明する。事後確率分布パラメータ生成部121は、S105で生成した周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、事後確率分布パラメータである平均ベクトルμ(xτ)、分散ベクトルσ(xτ)(τ∈{1,…,Τ})を生成する(S121)。具体的には、まず、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、式(9)によりDNN-RLの入力ベクトルxτ(τ∈{1,…,Τ})を生成する。
次に、現時点のDNN-RLパラメータΘMを用いて、式(32)〜式(35)により、入力ベクトルxτ(τ∈{1,…,Τ})から事後確率分布パラメータである平均ベクトルμ(xτ)と分散ベクトルσ(xτ) (τ∈{1,…,Τ})を生成する。なお、事後確率分布パラメータ生成部121の1番目の処理で用いられるDNN-RLパラメータは、DNN-RLパラメータ初期値ΘRL iniである。
時間周波数マスク生成部122は、S121で生成した事後確率分布パラメータである平均ベクトルμ(xτ)、分散ベクトルσ(xτ)(τ∈{1,…,Τ})から、時間周波数マスクGτ(τ∈{1,…,Τ})を生成する(S122)。具体的には、以下のε-greedyアルゴリズムを用いて時間周波数マスクGτ(τ∈{1,…,Τ})を生成する。
Figure 2019035862
ここで、式(50)の〜は右辺の確率分布から乱数生成することを表す。確率ε(0<ε<1)は、例えば、0.05程度に設定するとよい。
もちろん、単にGτ=μ(xτ)(τ∈{1,…,Τ})としてもよい。
時間周波数マスク処理部123は、S122で生成した時間周波数マスクGτ(τ∈{1,…,Τ})を用いて、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-RL時間領域出力信号を生成する(S123)。具体的には、時間周波数マスクGτを用いて、式(2)により、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})からDNN-RL周波数領域出力信号S^τ=(G1,τX1,τ,…, GΩ,τXΩ,τ)(τ∈{1,…,Τ})を生成し、逆フーリエ変換などを用いて時間領域波形に変換することによりDNN-RL時間領域出力信号を生成する。
DNN-MMSE時間領域出力信号生成部125は、S105で生成した周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-MMSE時間領域出力信号を生成する(S125)。具体的には、まず、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、式(9)によりDNN-MMSEの入力ベクトルxτ(τ∈{1,…,Τ})を生成し、DNN-MMSEパラメータ初期値ΘMMSE iniを用いて、式(42)〜式(44)によりDNN-MMSEの出力である平均ベクトルμ(xτ)(τ∈{1,…,Τ})を生成する。次に、時間周波数マスクGτ=μ(xτ)として、時間周波数マスクGτを用いて、式(2)により、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})からDNN-MMSE周波波数領域出力信号S^τ=(G1,τX1,τ,…, GΩ,τXΩ,τ)を生成し、逆フーリエ変換などを用いて時間領域波形に変換することによりDNN-MMSE時間領域出力信号を生成する。
報酬係数計算部126は、S124で生成したDNN-RL時間領域出力信号とS125で生成したDNN-MMSE時間領域出力信号から、S122で生成した時間周波数マスクGτ(τ∈{1,…,Τ})の報酬係数を計算する(S126)。具体的には、DNN-RL時間領域出力信号の評価値ZRLとDNN-MMSE時間領域出力信号の評価値ZMMSEを算出、式(36)を用いて比較報酬を計算し、式(37)〜式(38)を用いて報酬係数を計算する。報酬係数の算出に用いる各パラメータは、比較報酬の計算に用いる評価値によってチューニングするのが好ましい。例えば、評価値としてPESQを用いる場合、α=1.0、β=10.0、γ=0.01程度に設定できる。
I個の目的音学習データと雑音学習データの組に対して、報酬係数を計算する。つまり、S124〜S126までの処理をI回繰り返す。ここで、Iは5程度に設定するとよい。
DNN-RLパラメータ最適化部127は、式(26)の目的関数Tarの値を最大化するようにDNN-RLパラメータΘMを更新する(S127)。式(26)の目的関数Tarの値は、式(27)〜式(31)を用いて、S121の処理過程で生成した入力ベクトルxτ、S121で生成した平均ベクトルμ(xτ)と分散ベクトルσ(xτ)、S126で計算した報酬係数から求めることができる。なお、式(26)の目的関数Tarに出現する(i)やiは繰り返し回数を表すインデックスである。また、DNN-RLパラメータ初期値生成部112と同様、誤差逆伝搬法によりDNN-RLパラメータΘMを最適化するよう更新する。なお、誤差逆伝搬法には、Adamを用いればよい。
収束条件判定部128は、学習の終了条件として事前に設定された収束条件を判定し、収束条件が満たされる場合は処理を終了し、収束条件が満たされない場合はS124〜S127の処理を繰り返す(S128)。学習が終了したときのDNN-RLパラメータΘMを、DNN-RLパラメータΘRLとして出力する。収束条件として、例えばS124〜S127の処理の実行回数が所定の回数に達するかという条件を採用することができる。この場合、所定の回数を10万回程度に設定することができる。
本実施形態の発明によれば、微分不可能な評価値を含む多様な評価値を用いてDNNパラメータを最適化することにより、入力音を音源強調するための時間周波数マスクを生成するためのDNNを学習することができる。例えば、音声認識向けに音源強調を最適化したい場合、音声認識の結果が正解か否かの二値を評価値として目的関数を構成することにより、音声認識向けの音源強調に適した形でDNNパラメータを最適化することができるようになる。
<第二実施形態>
ここでは、第一実施形態の音源強調学習装置が生成したDNNパラメータを用いた音源強調装置について説明する。
以下、図11〜図12を参照して音源強調装置200を説明する。図11は、音源強調装置200の構成を示すブロック図である。図12は、音源強調装置200の動作を示すフローチャートである。図11に示すように音源強調装置200は、周波数領域観測信号生成部210と、事後確率分布パラメータ生成部121と、時間周波数マスク生成部122と、時間周波数マスク処理部123と、記録部290を含む。記録部290は、音源強調装置200の処理に必要な情報を適宜記録する構成部である。例えば、音源強調学習装置100が生成したDNN-RLパラメータΘRLを記録しておく。
図12に従い音源強調装置200の動作について説明する。周波数領域観測信号生成部210は、時間領域観測信号から、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ}、Ω、Τはそれぞれ時間領域観測信号により定まる1以上の整数)を生成する(S210)。例えば、短時間フーリエ変換を用いて、マイクロホンで収音した時間領域観測信号を周波数領域に変換し、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})を生成する。事後確率分布パラメータ生成部121は、S210で生成した周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から、DNN-RLの出力として事後確率分布パラメータである平均ベクトルμ(xτ)、分散ベクトルσ(xτ)(τ∈{1,…,Τ})を生成する(S121)。その際、DNN-RLパラメータΘRLを用いる。時間周波数マスク生成部122は、S121で生成した事後確率分布パラメータである平均ベクトルμ(xτ)、分散ベクトルσ(xτ)(τ∈{1,…,Τ})から、時間周波数マスクGτ(τ∈{1,…,Τ})を生成する(S122)。時間周波数マスク処理部123は、S122で生成した時間周波数マスクGτ(τ∈{1,…,Τ})を用いて、周波数領域観測信号Xω,τ(ω∈{1,…,Ω},τ∈{1,…,Τ})から時間領域出力信号を生成する(S123)。
本実施形態の発明によれば、微分不可能な評価値を含む多様な評価値を用いて最適化したDNNパラメータを設定したDNNに基づいて生成した時間周波数マスクにより、音源強調が可能となる。例えば、音声認識向けの音源強調に適した形で最適化したDNNパラメータを用いた音源強調が可能となる。また、評価値として主観的な音質評価と相関が高いPESQを採用することにより、音質評価を目的とする音情報処理技術に適した基準(目的関数)にて生成したDNNパラメータを用いた音源強調が可能となる。
<第三実施形態>
第一実施形態では、音源強調のためのDNN-RL学習について説明したが、<技術的背景>で説明した枠組み、つまり、DNN-RLパラメータΘΜの学習(最適化)を式(15)のような事後確率分布p(Gτ|xτΜ)を出力とするDNN-RLにより定式化する枠組みは、一般に音のマスク処理(フィルタリング)に関しても適用することができる。
さらに、第一実施形態で扱った学習は、DNNに限定されるものではなく、より一般のニューラルネットワークにも適用することが可能である。
そこで、ここでは、音源強調に限定しない、一般のニューラルネットワークによる学習に関する実施形態について説明する。なお、以下では、ニューラルネットワークのことをNNと表すことにする。
以下、図13〜図14を参照して入力音マスク処理学習装置300を説明する。図13は、入力音マスク処理学習装置300の構成を示すブロック図である。図14は、入力音マスク処理学習装置300の動作を示すフローチャートである。図13に示すように入力音マスク処理学習装置300は、入力ベクトル生成部305と、事後確率分布生成部310と、マスク生成部320と、マスク処理部330と、報酬係数計算部360と、パラメータ最適化部370と、収束条件判定部380と、記録部390を含む。記録部390は、入力音マスク処理学習装置300の処理に必要な情報を適宜記録する構成部である。
入力音マスク処理学習装置300は、入力音学習データ記録部930に接続している。入力音学習データ記録部930には、事前に収音した、マスク処理の対象となる入力音が学習データとして記録されている。
入力音マスク処理学習装置300の各構成部で用いる各種パラメータ(例えば、NNの学習などに用いるパラメータ)については、入力音と同様外部から入力するようにしてもよいし、事前に各構成部に設定されていてもよい。
また、マスク処理は、各入力音について独立であり、他の入力音の処理に影響を及ぼすことはなく、各入力音に対するマスクの設計は他の入力音のそれとは独立に行われるものと仮定する。
図14に従い入力音マスク処理学習装置300の動作について説明する。入力ベクトル生成部305は、入力音からNNへの入力ベクトルxτ(τ∈{1,…,Τ}、Τは当該入力音により定まる1以上の整数)を生成する(S305)。事後確率分布生成部310は、NNのパラメータΘΜを用いて、S305で生成した入力ベクトルxτ(τ∈{1,…,Τ})から、NNの出力である、入力ベクトルxτが入力された場合にマスクGτが生成される確率である事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})を生成する(S310)。ここで、事後確率分布p(Gτ|xτΜ)は、式(15)のように表現される。
Figure 2019035862
なお、事後確率分布生成部310の1番目の処理で用いられるNNのパラメータΘΜは、例えば、記録部390に記録されているなど、事前に与えられているものとする。
マスク生成部320は、S310で生成した事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})から、入力ベクトルxτのマスク処理に用いるマスクGτ(τ∈{1,…,Τ})を生成する(S320)。具体的には、マスクGτは式(16)で求める。
Figure 2019035862
マスク処理部330は、S320で生成したマスクGτ(τ∈{1,…,Τ})を用いて、入力ベクトルxτ(τ∈{1,…,Τ})から出力音を生成する(S330)。具体的には、S320で生成したマスクGτの処理内容に応じた処理が入力ベクトルxτに対して行われ、出力音が生成されることになる。
なお、事後確率分布生成部310と、マスク生成部320と、マスク処理部330をまとめて、出力音生成部340という。出力音生成部340は、第一実施形態のDNN-RL時間領域出力信号生成部124に対応する構成部であり、入力ベクトルxτ(τ∈{1,…,Τ})から出力音を生成する。
報酬係数計算部360は、S330で生成した出力音から、マスクGτ(τ∈{1,…,Τ})の報酬係数を計算する(S360)。具体的には、マスク処理と入力音に関する仮定より、報酬係数Rewを次式により計算する(式(26’)、式(20)参照)。
Figure 2019035862
R(G)はS330で生成した出力音の評価値である。また、Πτp(Gτ|xτΜ)は入力ベクトルxτが入力された場合にマスクGτが生成される確率である生成確率p(Gτ|xτΜ)(τ∈{1,…,Τ})の積であるから、入力音が入力された場合に生成したマスクGτ(τ∈{1,…,Τ})の確からしさである確信度を示す。
なお、評価値R(G)は、NNのパラメータΘΜで微分することができないものであってもよい。
I個(Iは1以上の整数)の入力音に対して、報酬係数を計算する。つまり、S305〜S360までの処理をI回繰り返す。
パラメータ最適化部370は、式(26)の目的関数Tarの値を最大化するようにNNのパラメータΘMを更新する(S370)。
Figure 2019035862
ただし、文字iや(i)はi番目のエピソードを表す変数であり、繰り返し回数を表すインデックスとなる。
式(26)の目的関数Tarは、報酬係数と事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})を用いて定義されるパラメータΘΜの関数であり、具体的には、報酬係数と、事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})を用いて表現される式(ここでは、具体的には、Στlnp(Gτ|xτΜ))の積となっている。
事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})を用いて表現される式として、出力音の評価値R(G)が正の値であるときは、その値が大きくなるように変動し、出力音の評価値R(G)が負の値であるときは、その値が小さくなるように変動し、確信度が相対的に低いときの値の変動は、前記確信度が相対的に高いときの値の変動に比して小さくなるものを用いる。
収束条件判定部380は、学習の終了条件として事前に設定された収束条件を判定し、収束条件が満たされる場合は処理を終了し、収束条件が満たされない場合はS305〜S370の処理を繰り返す(S380)。学習が終了したときのNNのパラメータΘMを、NNのパラメータΘNNとして出力する。収束条件として、例えばS305〜S370の処理の実行回数が所定の回数に達するかという条件を採用することができる。
本実施形態の発明によれば、微分不可能な評価値を含む多様な評価値を用いてNNのパラメータを最適化することにより、入力音をマスク処理するためのマスクを生成するためのNNを学習することができる。
<第四実施形態>
第一実施形態における報酬係数の計算では、DNN-MMSEパラメータΘMMSE iniを用いて得られる時間周波数マスク処理によるDNN-MMSE時間領域出力信号の評価値も用いる比較報酬に基づいて計算した。
そこで、ここでは、比較報酬を用いて報酬係数を計算するような実施形態について説明する。
以下、図15〜図16を参照して入力音マスク処理学習装置301を説明する。図15は、入力音マスク処理学習装置301の構成を示すブロック図である。図16は、入力音マスク処理学習装置301の動作を示すフローチャートである。図15からわかるように、入力音マスク処理学習装置301は、比較出力音生成部350をさらに含む点と、報酬係数計算部360の代わりに報酬係数計算部361を含む点においてのみ、入力音マスク処理学習装置300と異なる。また、図16からわかるように、入力音マスク処理学習装置301の動作は、S360の代わりに、S350とS361が追加されている点においてのみ、入力音マスク処理学習装置300と異なる。
以下、S350とS361の処理について説明する。比較出力音生成部350は、S305で生成した入力ベクトルxτ(τ∈{1,…,Τ})から、比較出力音を生成する(S350)。具体的には、まず、入力ベクトルxτに対して、DNNの場合における式(6)〜式(8)に相当する式(つまり、当該ニューラルネットワークの出力を計算するための式)を用いて、NNの出力y^τとしてマスクGτを生成する。なお、比較出力音生成部350の1番目の処理で用いられるNNのパラメータは、例えば、記録部390に記録されているなど、事前に与えられているものとする。
次に、マスクGτ(τ∈{1,…,Τ})を用いて、入力ベクトルxτ(τ∈{1,…,Τ})から比較出力音を生成する。具体的には、生成したマスクGτの処理内容に応じた処理が入力ベクトルxτに対して行われ、比較出力音が生成される。
報酬係数計算部361は、S330で生成した出力音とS350で生成した比較出力音から、S320で生成したマスクGτ(τ∈{1,…,Τ})の報酬係数を計算する(S361)。具体的には、出力音の評価値と比較出力音の評価値を算出、式(36)を用いて比較報酬を計算し、式(26”)を用いて報酬係数を計算する。
本実施形態の発明によれば、微分不可能な評価値を含む多様な評価値を用いてNNのパラメータを最適化することにより、入力音をマスク処理するためのマスクを生成するためのNNを学習することができる。
(変形例)
第三実施形態や第四実施形態では、入力音に対するマスク(フィルタ)による処理を対象にしたNNの学習について説明したが、より一般に入力データに対する所定の処理関数による処理を対象としたNNの学習について、<技術的背景>で説明した枠組みを適用した例を説明する。
以下、図17〜図18を参照して入力データ処理関数学習装置400を説明する。図17は、入力データ処理関数学習装置400の構成を示すブロック図である。図18は、入力データ処理関数学習装置400の動作を示すフローチャートである。図17に示すように入力データ処理関数学習装置400は、入力ベクトル生成部405と、事後確率分布生成部410と、処理関数生成部420と、処理関数適用部430と、報酬係数計算部460と、パラメータ最適化部470と、収束条件判定部480と、記録部490を含む。
入力データ処理関数学習装置400は、入力データ記録部940に接続している。入力音データ記録部940には、所定の処理関数による処理対象となる入力データが記録されている。
入力データ処理関数学習装置400の各構成部で用いる各種パラメータ(例えば、NNの学習などに用いるパラメータ)については、入力データと同様外部から入力するようにしてもよいし、事前に各構成部に設定されていてもよい。
また、処理関数による処理は、各入力データについて独立であり、他の入力データの処理に影響を及ぼすことはなく、各入力データに対する処理関数の設計は他の入力データのそれとは独立に行われるものと仮定する。
図18に従い入力データ処理関数学習装置400の動作について説明する。入力ベクトル生成部405は、入力データからNNへの入力ベクトルxτ(τ∈{1,…,Τ}、Τは当該入力データにより定まる1以上の整数)を生成する(S405)。事後確率分布生成部410は、S405で生成した入力ベクトルxτ(τ∈{1,…,Τ})から、NNの出力である、入力ベクトルxτが入力された場合に処理関数Gτが生成される確率である事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})を生成する(S410)。処理関数生成部420は、S410で生成した事後確率分布p(Gτ|xτΜ)(τ∈{1,…,Τ})から、入力ベクトルxτの処理に用いる処理関数Gτ(τ∈{1,…,Τ})を生成する(S420)。処理関数適用部430は、S420で生成した処理関数Gτ(τ∈{1,…,Τ})を用いて、入力ベクトルxτ(τ∈{1,…,Τ})から出力データを生成する(S430)。報酬係数計算部460は、S430で生成した出力データから、処理関数Gτ(τ∈{1,…,Τ})の報酬係数を計算する(S460)。I個(Iは1以上の整数)の入力データに対して、報酬係数を計算する。つまり、S405〜S460までの処理をI回繰り返す。パラメータ最適化部470は、式(26)の目的関数Tarの値を最大化するようにNNのパラメータΘMを更新する(S470)。収束条件判定部480は、学習の終了条件として事前に設定された収束条件を判定し、収束条件が満たされる場合は処理を終了し、収束条件が満たされない場合はS405〜S470の処理を繰り返す(S480)。学習が終了したときのNNのパラメータΘMを、NNのパラメータΘNNとして出力する。
つまり、S405〜S480の処理は、S305〜S380の処理と同様でよい。
本実施形態の発明によれば、微分不可能な評価値を含む多様な評価値を用いてNNのパラメータを最適化することにより、入力データを処理するための処理関数を生成するためのNNを学習することができる。
<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。
ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (10)

  1. 入力音に基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合にマスクGτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力音(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個のマスクGNを生成するマスク生成部と、
    前記マスクGNを用いて、前記N個の入力音から、前記N個の入力音をマスク処理したN個の出力音を生成するマスク処理部と、
    前記N個の出力音に対する、前記マスクGNの報酬係数を得る報酬係数取得部と、
    前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合にマスクGNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新部と
    を含む入力音マスク処理学習装置であって、
    前記報酬係数は、前記出力音の評価値と、前記入力音が入力された場合に生成した前記マスクGNの確からしさである確信度から定まる
    ことを特徴とする入力音マスク処理学習装置。
  2. 請求項1に記載の入力音マスク処理学習装置であって、
    前記報酬係数は、前記出力音の評価値と前記確信度の積であり、
    前記更新部は、前記報酬係数と、前記生成確率q(GN|xN)の積を用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する
    ことを特徴とする入力音マスク処理学習装置。
  3. 請求項1または2に記載の入力音マスク処理学習装置であって、
    前記生成確率q(GN|xN)は、
    前記出力音の評価値が正の値であるときは、その値が大きくなるように変動し、
    前記出力音の評価値が負の値であるときは、その値が小さくなるように変動し、
    前記確信度が相対的に低いときの値の変動は、前記確信度が相対的に高いときの値の変動に比して小さくなる
    ことを特徴とする入力音マスク処理学習装置。
  4. 請求項1ないし3のいずれか1項に記載の入力音マスク処理学習装置であって、
    前記生成確率q(GN|xN)は、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})の対数の和である
    ことを特徴とする入力音マスク処理学習装置。
  5. 請求項1に記載の入力音マスク処理学習装置であって、
    前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})は、パラメータΘΜを用いて、p(Gτ|xτΜ)(τ∈{1,…,Τ})と表現され、
    前記評価値は、パラメータΘΜで微分することができない
    ことを特徴とする入力音マスク処理学習装置。
  6. 請求項1ないし5のいずれか1項に記載の入力音マスク処理学習装置であって、
    さらに、
    前記N個の入力音から、N個の比較出力音を生成する比較出力音生成部と
    を含み、
    前記報酬係数は、前記出力音の評価値と前記比較出力音の評価値との差と、前記確信度から定まる
    ことを特徴とする入力音マスク処理学習装置。
  7. 入力データに基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合に処理関数Gτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力データ(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個の処理関数GNを生成する処理関数生成部と、
    前記処理関数GNを用いて、前記N個の入力データから、前記N個の入力データを処理関数により処理したN個の出力データを生成する処理関数適用部と、
    前記N個の出力データに対する、前記処理関数GNの報酬係数を得る報酬係数取得部と、
    前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合に処理関数GNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新部と
    を含む入力データ処理関数学習装置であって、
    前記報酬係数は、前記出力データの評価値と、前記入力データが入力された場合に生成した前記処理関数GNの確からしさである確信度から定まる
    ことを特徴とする入力データ処理関数学習装置。
  8. 入力音マスク処理学習装置が、入力音に基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合にマスクGτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力音(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個のマスクGNを生成するマスク生成ステップと、
    前記入力音マスク処理学習装置が、前記マスクGNを用いて、前記N個の入力音から、前記N個の入力音をマスク処理したN個の出力音を生成するマスク処理ステップと、
    前記入力音マスク処理学習装置が、前記N個の出力音に対する、前記マスクGNの報酬係数を得る報酬係数取得ステップと、
    前記入力音マスク処理学習装置が、前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合にマスクGNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新ステップと
    を含む入力音マスク処理学習方法であって、
    前記報酬係数は、前記出力音の評価値と、前記入力音が入力された場合に生成した前記マスクGNの確からしさである確信度から定まる
    ことを特徴とする入力音マスク処理学習方法。
  9. 入力データ処理関数学習装置が、入力データに基づく入力ベクトルxτ(τ∈{1,…,Τ})を入力とした場合に処理関数Gτ(τ∈{1,…,Τ})が生成される生成確率をモデル化した事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づき、N個の入力データ(Nは1以上τ以下の整数)に基づく入力ベクトルxNからN個の処理関数GNを生成する処理関数生成ステップと、
    前記入力データ処理関数学習装置が、前記処理関数GNを用いて、前記N個の入力データから、前記N個の入力データを処理関数により処理したN個の出力データを生成する処理関数適用ステップと、
    前記入力データ処理関数学習装置が、前記N個の出力データに対する、前記処理関数GNの報酬係数を得る報酬係数取得ステップと、
    前記入力データ処理関数学習装置が、前記報酬係数と、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})に基づく前記入力ベクトルxNを入力とした場合に処理関数GNが生成される生成確率q(GN|xN)とを用いて、前記事後確率分布p(Gτ|xτ)(τ∈{1,…,Τ})を更新する更新ステップと
    を含む入力データ処理関数学習方法であって、
    前記報酬係数は、前記出力データの評価値と、前記入力データが入力された場合に生成した前記処理関数GNの確からしさである確信度から定まる
    ことを特徴とする入力データ処理関数学習方法。
  10. 請求項1ないし6のいずれか1項に記載の入力音マスク処理学習装置または請求項7に記載の入力データ処理関数学習装置としてコンピュータを機能させるためのプログラム。
JP2017157322A 2017-08-17 2017-08-17 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム Active JP6721165B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017157322A JP6721165B2 (ja) 2017-08-17 2017-08-17 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017157322A JP6721165B2 (ja) 2017-08-17 2017-08-17 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム

Publications (2)

Publication Number Publication Date
JP2019035862A true JP2019035862A (ja) 2019-03-07
JP6721165B2 JP6721165B2 (ja) 2020-07-08

Family

ID=65637362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017157322A Active JP6721165B2 (ja) 2017-08-17 2017-08-17 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム

Country Status (1)

Country Link
JP (1) JP6721165B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377331A (zh) * 2021-07-05 2021-09-10 腾讯音乐娱乐科技(深圳)有限公司 一种音频数据处理方法、装置、设备及存储介质
CN113807403A (zh) * 2021-08-23 2021-12-17 网易(杭州)网络有限公司 模型训练的方法、装置、计算机设备及存储介质
JP2022528720A (ja) * 2019-04-11 2022-06-15 フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ. オーディオデコーダ、フィルタの特性を定義する値のセットを決定するための装置、復号されたオーディオ表現を提供するための方法、フィルタの特性を定義する値のセットを決定するための方法、およびコンピュータプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009210888A (ja) * 2008-03-05 2009-09-17 Univ Of Tokyo 音信号の分離方法
JP2013186383A (ja) * 2012-03-09 2013-09-19 Nippon Telegr & Teleph Corp <Ntt> 音源分離装置、音源分離方法、およびプログラム
US20140328487A1 (en) * 2013-05-02 2014-11-06 Sony Corporation Sound signal processing apparatus, sound signal processing method, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009210888A (ja) * 2008-03-05 2009-09-17 Univ Of Tokyo 音信号の分離方法
US20110058685A1 (en) * 2008-03-05 2011-03-10 The University Of Tokyo Method of separating sound signal
JP2013186383A (ja) * 2012-03-09 2013-09-19 Nippon Telegr & Teleph Corp <Ntt> 音源分離装置、音源分離方法、およびプログラム
US20140328487A1 (en) * 2013-05-02 2014-11-06 Sony Corporation Sound signal processing apparatus, sound signal processing method, and program
JP2014219467A (ja) * 2013-05-02 2014-11-20 ソニー株式会社 音信号処理装置、および音信号処理方法、並びにプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GAURAV NAITHANI ET AL.: "Low-latency sound source separation using deep neural networks", 2016 IEEE GLOBAL CONFERENCE ON SIGNAL AND INFORMATION PROCESSING (GLOBALSIP), JPN6020018799, 7 December 2016 (2016-12-07), pages 272 - 276, XP033087067, ISSN: 0004277559, DOI: 10.1109/GlobalSIP.2016.7905846 *
小泉 悠馬, 外3名: "聴感評点を向上させるためのDNN音源強調関数のブラックボックス最適化", 日本音響学会2017年秋季研究発表会講演論文集CD-ROM, JPN6020018798, 11 September 2017 (2017-09-11), pages 511 - 514, ISSN: 0004277558 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022528720A (ja) * 2019-04-11 2022-06-15 フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ. オーディオデコーダ、フィルタの特性を定義する値のセットを決定するための装置、復号されたオーディオ表現を提供するための方法、フィルタの特性を定義する値のセットを決定するための方法、およびコンピュータプログラム
JP7383725B2 (ja) 2019-04-11 2023-11-20 フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ. オーディオデコーダ、フィルタの特性を定義する値のセットを決定するための装置、復号されたオーディオ表現を提供するための方法、フィルタの特性を定義する値のセットを決定するための方法、およびコンピュータプログラム
CN113377331A (zh) * 2021-07-05 2021-09-10 腾讯音乐娱乐科技(深圳)有限公司 一种音频数据处理方法、装置、设备及存储介质
CN113807403A (zh) * 2021-08-23 2021-12-17 网易(杭州)网络有限公司 模型训练的方法、装置、计算机设备及存储介质
CN113807403B (zh) * 2021-08-23 2023-06-16 网易(杭州)网络有限公司 模型训练的方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
JP6721165B2 (ja) 2020-07-08

Similar Documents

Publication Publication Date Title
CN111161752B (zh) 回声消除方法和装置
JP6234060B2 (ja) ターゲットドメインの学習用音声データの生成方法、生成装置、および生成プログラム
JP4316583B2 (ja) 特徴量補正装置、特徴量補正方法および特徴量補正プログラム
JP5634959B2 (ja) 雑音/残響除去装置とその方法とプログラム
US20160232914A1 (en) Sound Enhancement through Deverberation
US20070010291A1 (en) Multi-sensory speech enhancement using synthesized sensor signal
WO2013132926A1 (ja) 雑音推定装置、雑音推定方法、雑音推定プログラム及び記録媒体
JP6721165B2 (ja) 入力音マスク処理学習装置、入力データ処理関数学習装置、入力音マスク処理学習方法、入力データ処理関数学習方法、プログラム
CN110998723B (zh) 使用神经网络的信号处理装置及信号处理方法、记录介质
JP6563874B2 (ja) 音源強調学習装置、音源強調装置、音源強調学習方法、プログラム
Ueda et al. Single-channel dereverberation for distant-talking speech recognition by combining denoising autoencoder and temporal structure normalization
JP5351856B2 (ja) 音源パラメータ推定装置と音源分離装置とそれらの方法と、プログラムと記憶媒体
JP5994639B2 (ja) 有音区間検出装置、有音区間検出方法、及び有音区間検出プログラム
JP6216809B2 (ja) パラメータ調整システム、パラメータ調整方法、プログラム
Jannu et al. Weibull and nakagami speech priors based regularized nmf with adaptive wiener filter for speech enhancement
JP5191500B2 (ja) 雑音抑圧フィルタ算出方法と、その装置と、プログラム
JP6827908B2 (ja) 音源強調装置、音源強調学習装置、音源強調方法、プログラム
WO2021217750A1 (zh) 消除语音交互中信道差异的方法及系统、电子设备及介质
JP2014150368A (ja) エコー抑圧ゲイン推定方法とそれを用いたエコー消去装置とプログラム
JP5562451B1 (ja) エコー抑圧ゲイン推定方法とそれを用いたエコー消去装置とプログラム
Llombart et al. Speech enhancement with wide residual networks in reverberant environments
Talbi et al. A new speech enhancement technique based on stationary bionic wavelet transform and MMSE estimate of spectral amplitude
JP5498452B2 (ja) 背景音抑圧装置、背景音抑圧方法、およびプログラム
JP7218810B2 (ja) 音声非音声判定装置、音声非音声判定用モデルパラメータ学習装置、音声非音声判定方法、音声非音声判定用モデルパラメータ学習方法、プログラム
CN113689886B (zh) 语音数据情感检测方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170817

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200519

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: 20200609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200610

R150 Certificate of patent or registration of utility model

Ref document number: 6721165

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250