"Noise Reduction in Time Domain Using Referential Reconstruction"

 文献紹介となっているが、他人のものではなく自分の論文である。電子情報通信学会は基本的に転載禁止なのであるが、要旨だけは公開されているので要旨程度のことなら語っていいものと思われる。なお要旨はこちらにある(http://search.ieice.org/bin/summary.php?id=e89-d_3_1203&category=D&year=2006&lang=E&abst=)。

 題名を訳すと「参照再構成法を用いた時間領域おける雑音低減」となる。「参照再構成法」というのは造語であるのでこれから簡単に説明する。「時間領域における」というのは、周波数領域で雑音除去をする関連研究があまりにも多かったので、それとの対比をするために用いたフレーズである。「雑音低減」はこの論文の目的である。

 まずは、目的の「雑音低減」から説明する。前回の日記にも書いたように、現在の音声認識は加法性の雑音に非常に弱い。クーラーの音でさえ、脅威である。ゆえに、雑音を低減する必要がある。としておくと論文が書きやすいのでそのように書いたが本当の目的は実は違う。それはあとで語る。なお、本当の目的は論文中には書かなかった。

 次に、「参照再構成法」を語る。「時間領域における」も同時に語ることになる。音声の分析や合成や雑音低減は、一般的に、音声を30ms(ミリ秒)くらいに分割しておこなうことになる。分析ならば分割したままであるし、合成ならばそれらをつなぎ合わせることになる。今回は雑音低減なので分割して繋げることになる。この分割したものを「フレーム」と呼ぶことにしよう。私もこの分割と接続の方法を用いた。

 このフレームは、sというクリーンな(音声認識のしやすい)音声と、nという雑音との足し算でできていると仮定する。つまり、式で書けば、雑音混じりの音声xというのはx=s+nと書くことができる。観測できるのはこのxのみである。xのみからsを導くというのが今回の問題となる。そんなことができるはずはないのであるが、そんなことをしている。

 上では簡単に書きすぎてしまったが、xというのは単一の数字ではなく、ベクトルである。つまり、いくつかの数字が組み合わさってできている。sやnも同様である。図形としては短時間の時間波形のイメージとなる。

 今回の手法では、「sのパターンは案外少ないのではないか」という仮定を用いる。クリーンな音声のフレームをいくつかデータベースとして用意しておいて、それを適切に接続するともとの音声に近い波形が出来上がるのではないかということである(もちろんそのデータベースは対象となるsそのものは含んでいない。ただし似たような波形は含んでいるだろうということである)。そして、これと同じことが雑音混じりの音声xに対してもできるのではないかと踏んだ。どう適切にデータベースからフレームを選んでくるかが問題になってくるが、観測されたxからもとのsに近いクリーンなフレームを見つけることは不可能ではないと期待した。

 実際、これは近似的には不可能ではなく、雑音nの特性によっては適切なフレームをデータベースから選び出すことが可能だった。つまり、簡単にいえば、雑音を低減することができたということになる。なお、この論文の時点ではxとデータベース内のフレームの距離関数は相関係数である。安直な距離関数ではあるが、意外に有効だった。

 ここまでが要約に書いたことである。詳しいことが知りたい人は図書館などで原典を読んでほしい。残念ながら私には転載権がないのでこれ以上詳しく語ることができない。

 そして、後述すると書いた「この論文の本当の目的」について語る。現在、人間の声とは何かということが分かっていない状況である。本質的なことが分かっていないのに技術だけは進歩しているので、「それが声かどうか」を判定する簡単な装置を作ることはできるが、たとえその装置を作れたとしても精度が99%を超えることはないし、そもそもなぜそれが動作するのかはおそらく誰も説明できない状況である。

 私は「人間の声とは何か」が知りたいので、雑音除去という分野を選び、「雑音混じりの声とデータベースの声との距離を測る」という研究をしている。その研究の出来具合の指標として雑音低減の成功度を用いている。将来、この研究が完成したら、そのときには「声に関する完璧な距離尺度」ができているはずなので、「声とは何か」の解答に近づくはずである。

 その研究は、現在ゆっくりと進行中である。