IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

<図1>
  • 特許-音声抽出装置およびそのプログラム 図1
  • 特許-音声抽出装置およびそのプログラム 図2
  • 特許-音声抽出装置およびそのプログラム 図3
  • 特許-音声抽出装置およびそのプログラム 図4
  • 特許-音声抽出装置およびそのプログラム 図5
  • 特許-音声抽出装置およびそのプログラム 図6
  • 特許-音声抽出装置およびそのプログラム 図7
  • 特許-音声抽出装置およびそのプログラム 図8
  • 特許-音声抽出装置およびそのプログラム 図9
  • 特許-音声抽出装置およびそのプログラム 図10
  • 特許-音声抽出装置およびそのプログラム 図11
  • 特許-音声抽出装置およびそのプログラム 図12
  • 特許-音声抽出装置およびそのプログラム 図13
  • 特許-音声抽出装置およびそのプログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】音声抽出装置およびそのプログラム
(51)【国際特許分類】
   G10L 21/0272 20130101AFI20250109BHJP
   G10L 25/30 20130101ALI20250109BHJP
【FI】
G10L21/0272 100Z
G10L25/30
【請求項の数】 6
(21)【出願番号】P 2021013520
(22)【出願日】2021-01-29
(65)【公開番号】P2022117042
(43)【公開日】2022-08-10
【審査請求日】2023-12-04
【前置審査】
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】堀 加太斗
(72)【発明者】
【氏名】木村 徹
【審査官】大野 弘
(56)【参考文献】
【文献】国際公開第2020/127900(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 21/0272
G10L 25/30
(57)【特許請求の範囲】
【請求項1】
複数種類の環境音および所定の音声を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成するデータセット作成手段と、
作成した学習用データセットをもとにDeep Leaningで学習して、前記環境音を種類別に抽出するための基本モデル、前記基本モデルでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデル、および新規音声を抽出するための第1段階抽出用モデルを生成するモデル生成手段と、
生成した前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを記憶するモデル記憶手段と、
前記モデル記憶手段に記憶された前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを管理するモデル管理手段と、
前記モデル管理手段から渡された前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、個別の環境音または前記所定の音声を抽出する抽出手段と、を備え、
前記抽出手段は、
前記第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、新規音声を第1段階で抽出し、
前記基本モデルおよび前記ユーザオリジナル基本モデルを用いて、ニューラルネットワークの演算により第1段階で抽出した音声から、個別の環境音および前記所定の音声を第2段階で抽出し
前記データセット作成手段は、新規音声と前記学習用データセットのうちの課題となるデータを組み合わせて新たな学習用データセットを作成し、
前記モデル生成手段は、前記データセット作成手段が作成した新たな前記学習用データセットで学習させることで前記第1段階抽出用モデルを生成する
ことを特徴とする音声抽出装置。
【請求項2】
前記モデル管理手段は、入力音声が入力された場合、前記抽出手段に前記第1段階抽出用モデルを出力し、新規の音声を抽出することで、抽出後の音声が前記基本モデルおよび前記ユーザオリジナル基本モデルで対応できるようになった場合、前記抽出手段に前記基本モデルおよび前記ユーザオリジナル基本モデルを出力する
ことを特徴とする請求項1に記載の音声抽出装置。
【請求項3】
前記モデル管理手段は、ユーザからの指示により前記抽出手段に前記基本モデルおよび前記ユーザオリジナル基本モデルを出力する
ことを特徴とする請求項に記載の音声抽出装置。
【請求項4】
前記所定の音声は、人の声を含み、前記環境音は、人の声以外の音である
ことを特徴とする請求項1に記載の音声抽出装置。
【請求項5】
前記抽出手段が抽出した前記各環境音または前記所定の音声のそれぞれについて所定比率でレベル調整を行い、加算して出力する出力手段を備える
ことを特徴とする請求項1に記載の音声抽出装置。
【請求項6】
コンピュータを、請求項1から請求項のいずれか一項に記載の音声抽出装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、各音声が重畳した入力音声から、任意の音または音声を抽出する音声抽出装置およびそのプログラムに関する。
【背景技術】
【0002】
学習済み機械学習モデルによって、入力音声から任意の音または音声を抽出する技術が知られている。
【0003】
特許文献1には、学習済み機械学習モデルによって、第1チャネル用オーディオデータ、第2チャネル用オーディオデータおよびセンターカットオーディオデータから、伴奏音またはボーカル音の何れか一方を抽出するオーディオ抽出部を有するオーディオ抽出装置が記載されている。特許文献1のオーディオ抽出装置は、オーディオデータから特定のオーディオ成分を抽出するための音響処理技術を提供する。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2020-3537号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の音響処理技術は、対応可能な音声を増やす際、全ての学習をやり直す必要がある。例えば、現在、3種類の音声に対応している場合に、対応可能な音声を4種類に増やそうとすると、Deep Leaningでの学習を4回行わなければならない。対応可能な音声が多い場合は、事態はより深刻である。
【0006】
本発明は、このような問題に鑑みてなされたものであり、対応可能な音声を変更した場合において、抽出精度を維持しつつ学習回数を低減させることができ、処理の高速化を図ることが可能な音声抽出装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0007】
前記課題を解決するため、本発明に係る音声抽出装置は、複数種類の環境音および所定の音声を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成するデータセット作成手段と、作成した学習用データセットをもとにDeep Leaningで学習して、前記環境音を種類別に抽出するための基本モデル、前記基本モデルでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデル、および新規音声を抽出するための第1段階抽出用モデルを生成するモデル生成手段と、生成した前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを記憶するモデル記憶手段と、前記モデル記憶手段に記憶された前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを管理するモデル管理手段と、前記モデル管理手段から渡された前記基本モデル、前記ユーザオリジナル基本モデル、および前記第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、個別の環境音または前記所定の音声を抽出する抽出手段と、を備え、前記抽出手段は、前記第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、新規音声を第1段階で抽出し、前記基本モデルおよび前記ユーザオリジナル基本モデルを用いて、ニューラルネットワークの演算により第1段階で抽出した音声から、個別の環境音および前記所定の音声を第2段階で抽出し、前記データセット作成手段は、新規音声と前記学習用データセットのうちの課題となるデータを組み合わせて新たな学習用データセットを作成し、前記モデル生成手段は、前記データセット作成手段が作成した新たな前記学習用データセットで学習させることで前記第1段階抽出用モデルを生成することを特徴とする音声抽出装置とした。
【0008】
かかる構成において、音声抽出装置は、データセット作成手段によって、複数種類の環境音および所定の音声(例えば、人の音声)を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成する。なお、所定の音声は、人の声を含み、環境音は、人の声以外の音であるものでもよい。
【0009】
また、データセット作成手段は、新規音声と学習用データセットのうちの課題となるデータを組み合わせて新たな学習用データセットを作成する。
【0010】
そして、音声抽出装置は、モデル生成手段によって、作成した学習用データセットをもとにDeep Leaningで学習して、環境音を種類別に抽出するための基本モデル、基本モデルでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデル、および新規音声を抽出するための第1段階抽出用モデルを生成する。
【0011】
また、モデル生成手段は、データセット作成手段が作成した新たな学習用データセットで学習させることで第1段階抽出用モデルを生成する。
【0012】
そして、音声抽出装置は、モデル記憶手段によって、生成した基本モデル、ユーザオリジナル基本モデル、および第1段階抽出用モデルを記憶する。
【0013】
そして、音声抽出装置は、モデル管理手段によって、モデル記憶手段に記憶された基本モデル、ユーザオリジナル基本モデル、および第1段階抽出用モデルを管理する。モデル管理手段は、新規音声が入力された場合、抽出手段に第1段階抽出用モデルを出力する。そして、モデル管理手段は、新規の音声を抽出することで、抽出後の音声が基本モデルおよびユーザオリジナル基本モデルで対応できるようになった場合、例えばユーザからの指示により抽出手段に基本モデルおよびユーザオリジナル基本モデルを出力する。
【0014】
そして、音声抽出装置は、抽出手段によって、モデル管理手段から渡された基本モデル、ユーザオリジナル基本モデル、および第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、個別の環境音または所定の音声を抽出する。抽出手段は、第1段階抽出用モデルを用いて、ニューラルネットワークの演算により入力音声から、新規の音声を第1段階で抽出し、基本モデルおよびユーザオリジナル基本モデルを用いて、ニューラルネットワークの演算により第1段階で抽出した音声から、個別の環境音および前記所定の音声を第2段階で抽出する。
【0015】
これによって、音声抽出装置は、対応可能な音声を変更した場合において、抽出精度を維持しつつ学習回数を低減させることができ、処理の高速化を図ることができる。
【0016】
なお、音声抽出装置は、コンピュータを、音声抽出装置の各手段として機能させるためのプログラムで動作させることができる。
【発明の効果】
【0017】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、2段階の抽出により、新規の音声を抽出する場合であっても、全ての音声を学習することなく、新規の音声と環境音を分離するための学習が1回だけとなる。
そのため、本発明は、対応可能な音声を変更した場合において、抽出精度を維持しつつ学習回数を低減させることができ、処理の高速化を図ることができる。
【図面の簡単な説明】
【0018】
図1】本発明の実施形態に係る音声抽出装置の構成を示すブロック図である。
図2】本発明の実施形態に係る音声抽出装置のディープニューラルネットワークで構成した基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMの構造の一例を説明する図である。
図3】本発明の実施形態に係る音声抽出装置の抽出系の概要を説明する図である。
図4】本発明の実施形態に係る音声抽出方法の処理を実現するコンピュータの一例を示すハードウェア構成図である。
図5】本発明の実施形態に係る音声抽出装置の学習用データセットの作成を説明する図である。
図6】本発明の実施形態に係る音声抽出装置の作成した学習用データセットをDeep Learningで学習させる方法を説明する図である。
図7】本発明の実施形態に係る音声抽出装置の各モデルを用いて、入力音声データから、個別の環境音または人の音声を抽出する抽出方法を説明する図である。
図8】本発明の実施形態に係る音声抽出装置の学習用データセットについて補足して説明する図であり、(a)は、課題と人の声用の模範解答と組み合わされる学習用データセットを示し、(b)は、課題と雨の音用の模範解答と組み合わされる学習用データセットを示し、(c)は、課題と車の音用の模範解答と組み合わされる学習用データセットを示す。
図9】本発明の実施形態に係る音声抽出装置の音の抽出方法について補足して説明する図である。
図10】本発明の実施形態に係る音声抽出装置の抽出方法(その1)を説明する図である。
図11】本発明の実施形態に係る音声抽出装置の抽出方法(その2)を説明する図である。
図12】本発明の実施形態に係る音声抽出装置の音声抽出方法の動作を示すフローチャートである。
図13】本発明の実施形態に係る音声抽出装置の音声抽出方法の具体例の抽出動作を示すフローチャートである。
図14】本発明の実施形態に係る音声抽出装置の抽出処理における機能を簡易的に説明する図である。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。
[音声抽出装置におけるパラメータ]
本発明の実施形態に係る音声抽出装置のパラメータについて説明する。
【0020】
<データセット>
まず、音声抽出装置で用いるデータセットについて説明する。
データセットは、「課題となるデータ」と「模範解答となるデータ」のペアを大量に用意したものである。このデータセットに対し、Deep Leaningによる学習を行った結果出力されるものがモデルである。つまり、モデルは、最終的な抽出処理に用いるニューラルネットワークのパラメータである。
【0021】
本実施形態では、音声抽出装置は、環境音モデルである基本モデルMoと、人の声モデルであるユーザオリジナル基本モデルMo’と、新規音声と環境音とを分離するための新規音声と環境音の分離用モデルである第1段階抽出用モデルMと、を有する。
基本モデルMoと、ユーザオリジナル基本モデルMo’と、第1段階抽出用モデルMと、は、学習に用いたデータセットの中身が異なるだけであり本質的には同じものである。
【0022】
<基本モデルMo>
次に、基本モデルMoの作成方法と使い方について述べる。
基本モデルMoは、人の声以外の音である環境音の学習用データセットをもとにDeep Leaningで学習して生成したモデルである。ここで、環境音は、人の声と比較して変化することが少ない(ほとんど変化しない)音声である。このような環境音について、学習用データセットの模範解答をもとに生成される基本モデルMoは、一度生成しておけば、改変されることが少ない。
基本モデルMoは、音声抽出装置にプリインストールされているものでもよい。
基本モデルMoは、環境音モデルであり、人の声以外の環境音を種類別に抽出し、バラバラにするためのパラメータである。この基本モデルMoを使用して抽出処理を行う場合、抽出対象の音声には人の声が存在しないことを前提とする。
【0023】
基本モデルMoの学習用データセットは、「課題となるデータ」が、複数の環境音を合成して作成したものであり、「模範解答となるデータ」が、「課題となるデータ」を作成するのに用いた各環境音(合成前の単一音声)となる。
【0024】
例えば、車の中で収録した場合に対応すべき音声:「走行音/エアコン/ウインカー」を例に説明する。走行音/エアコン/ウインカーの3つの音声を合成したものを「課題となるデータ」とする。また、走行音の単一音声を「模範解答となるデータ」とする。これらをペアにした学習用データセットを用いて学習を行えば、「車の中の音声から走行音を抽出するモデル」を作成できる。
【0025】
次に、「模範解答となるデータ」をエアコンの単一音声に変更し、「課題となるデータ」は変更せず、同一のものにする。つまり、走行音/エアコン/ウインカーの3つの音声を合成したものである。これらをペアにした学習用データセットで学習を行えば「車の中の音声からエアコンの音を抽出するモデル」を作成できる。同様に、「模範解答となるデータ」をウインカーに変更し、「課題となるデータ」は変更なしの同一のものをペアにした学習用データセットで学習を行えば車の中の音声からウインカーの音を抽出するモデルを作成できる。
このようにして作成された3つのモデル(基本モデルMo)で抽出処理を行うことで「車の中」で収録した音声を種類別に分けることができる。
【0026】
<ユーザオリジナル基本モデルMo’>
次に、ユーザオリジナル基本モデルMo’の作成方法と使い方について述べる。
ユーザオリジナル基本モデルMo’は、ユーザがオリジナルで用いる所定の音声(特に、人の声)モデルであり、人の声を種類別(例えば、個人別)に抽出し、バラバラにするためのパラメータである。ユーザオリジナル基本モデルMo’の学習用データセットは、「課題となるデータ」が、人の声を合成して作成したものである。人の声を合成して作成したものは、複数人の声を合成したものであり、1人の人間の声を0から作り上げた(例えば、ボーカロイドのような)ものは含まれない。また、「模範解答となるデータ」が、「課題となるデータ」を作成するのに用いた人の声(合成前の単一音声)となる。
【0027】
<第1段階抽出用モデルM>
次に、第1段階抽出用モデルMの作成方法と使い方について述べる。
第1段階抽出用モデルMは、新規音声と環境音とを分離するための「新規音声と環境音の分離用モデル」である。
第1段階抽出用モデルMは、プリインストールされた基本モデルMoで対応できない「新規音声」(想定としては、新しいアナウンサの声や、予想外の環境音)が収録された場合に新たに対応させるための手段である。
【0028】
基本モデルMoと第1段階抽出用モデルMとの関係について説明する。
上記の例のように、基本モデルMoは、「課題となるデータ」が、複数の環境音(走行音/エアコン/ウインカーの3つの音声)を合成したものであるとする。
「新規音声」として、例えば新しいアナウンサの音声を抽出しようとする。この場合、「新規音声」を合成するために、新たに第1段階抽出用モデルM用の「課題となるデータ」を作成する。ここでは、走行音/エアコン/ウインカーと新しいアナウンサの音声との4つの音声を合成したものを「課題となるデータ」とする。この新たな「課題となるデータ」とペアになる「模範解答となるデータ」は、「新規の音声」および「基本モデルMoを作成した際の課題となるデータ」である。この2つのデータセットを用いて学習させることで第1段階抽出用モデルMを2つ作成する。
【0029】
この2つの第1段階抽出用モデルMを用いて抽出することで「新規音声」と「基本モデルMoで対応できる音声」に分離することができる。「新規音声」においてはこれで抽出完了となり、「基本モデルMoで対応できる音声」は基本モデルMoで対応できるので、後記抽出処理を行う。これにより、全ての音声を種類ごとに抽出しバラバラにすることができる。
以上、プリインストールされている基本モデルMoと第1段階抽出用モデルMとの関係について述べた。ユーザオリジナル基本モデルMo’と第1段階抽出用モデルMとの関係も同様である。
【0030】
<環境音>
環境音は、人の声以外の音である。環境音は、人の声が人物(例えば、アナウンサ)ごとに変わるのに対し、変化がない(あるいは少ない)音である。このため、一旦収録した環境音は、学習用データセットとして再使用することができる。環境音は、例えば、水(雨を含む)の音、風の音、車の音、虫の音、森の音が代表的なものであるが、さらに下記のように、録音(テレビ番組の収録など)を行うであろう場所ごとに、そこで発生すると予想される音声を1セットにして導入してもよい。
【0031】
モデルのセット(音声のセット)には、例えば下記のものがある。
・森で収録した場合に対応すべき音声:木々の音/森に生息し得る鳥の声/川の音/虫の声(セミ,コオロギ,鈴虫)のセット
・海で収録した場合に対応すべき音声:波の音/海に生息し得る鳥の声/船の音のセット
・街で収録した場合に対応すべき音声:車の音/救急車やパトカーの音/信号機の音/電車の音/足音/人の喧騒/セミの声のセット
・工事で収録した場合に対応すべき音声:ファンの音/機械の音(ウィーン音)/打撃音(トンカチ音など)のセット
・動物系で収録した場合に対応すべき音声:犬/猫/鳥/猿/牛/豚/羊/ヤギの鳴き声のセット
・遊園地で収録した場合に対応すべき音声:アトラクションの音/悲鳴/人の喧騒/BGMのセット
・車の中で収録した場合に対応すべき音声:走行音/エアコン/ウインカーのセット
上記の音声のセットには、ホワイトノイズ/ヘリコプターの音/風の音などが含まれるものとする。
ここで挙げている場所のモデルのセット(音声のセット)を用意しておくことで、大抵のロケ地や中継地をカバーできていると考えられる。
なお、音声の種類と精度は、トレードオフの関係にあるため、収録する場所に合わせて対応音声を絞ることで精度の向上を図ることができる。
【0032】
[音声抽出装置の構成]
次に、図1を参照して、本発明の実施形態に係る音声抽出装置1の構成について説明する。本実施形態の音声抽出装置は、各音または音声が重畳した原音(入力音声)から、任意の音または音声を抽出するマルチトラック化システムに適用した例である。
図1に示すように、音声抽出装置1は、抽出系10と、モデル管理部20(モデル管理手段)と、モデル記憶部25(モデル記憶手段)と、学習系30と、を備える。
【0033】
<抽出系10>
抽出系10は、入力部11と、フーリエ変換部12と、抽出部13(抽出手段)と、MIX(ミキシング)部14(出力手段)と、フーリエ逆変換部15と、出力部16(出力手段)と、を備える。
入力部11は、抽出のための音声データを入力する。
フーリエ変換部12は、信号処理のために音声データを周波数成分に変換するフーリエ変換を行う。フーリエ逆変換部15は、周波数成分に変換して処理されたデータを音声データに戻すフーリエ逆変換を行う。
【0034】
抽出部13は、モデル管理部20から渡された基本モデルMo、ユーザオリジナル基本モデルMo’および第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、個別の環境音または人の音声を抽出する。
【0035】
抽出部13は、新規音声が入力された場合、第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、新規の音声を抽出(第1段階抽出)する。第1段階抽出用モデルMを用いて、最初に新規の音声を抽出することで、抽出後の音声が基本モデルMoで対応できるようになる。そして、抽出部13は、基本モデルMoおよびユーザオリジナル基本モデルMo’を用いて、第1段階で抽出した音声から、個別の環境音または所定の音声を第2段階で抽出する。
【0036】
抽出部13は、実際の抽出処理(モデルをもとにニューラルネットワークの行列の掛け算)を行う。抽出部13は、MIXの有無(ユーザ指定)に基づいて抽出音声を出力する。
MIX部14は、ユーザ指定の比率に合わせて抽出部13から送られてくる複数の音声データをミックスする。
出力部16は、抽出部13が抽出した各環境音または人の音声のそれぞれについて所定比率でレベル調整を行い、加算して出力する。なお、出力部16による上記加算する/しないは、ユーザ指示を受けたモデル管理部20からの指示に基づく。また、出力部16は、レベル調整および各音の加算をせずに出力する態様でもよい。
【0037】
<モデル管理部20>
モデル管理部20は、モデル記憶部25の基本モデルデータベース26に記憶された基本モデルMo、ユーザオリジナル基本モデルデータベース27に記憶されたユーザオリジナル基本モデルMo’、および第1段階抽出用モデルデータベース28に記憶された第1段階抽出用モデルMを管理する。すなわち、モデル管理部20は、プリインストールされた基本モデルMoや学習系30で作成したユーザオリジナル基本モデルMo’および第1段階抽出用モデルMを管理する。
【0038】
モデル管理部20は、抽出部13が音声を抽出する際に適切なモデルをデータベース(基本モデルデータベース26、ユーザオリジナル基本モデルデータベース27、第1段階抽出用モデルデータベース28)から選び抽出部13に渡す。具体的には、モデル管理部20は、新規音声が入力された場合、抽出系10の抽出部13に新規音声と環境音の分離用モデルである第1段階抽出用モデルMを出力する。また、モデル管理部20は、最初に新規の音声を抽出することで、抽出後の音声が基本モデルMoで対応できるようになった場合、ユーザからの指示によりモデル記憶部25から基本モデルMoおよびユーザオリジナル基本モデルMo’を出力する。
【0039】
<モデル記憶部25>
モデル記憶部25は、基本モデルデータベース26と、ユーザオリジナル基本モデルデータベース27と、第1段階抽出用モデルデータベース28と、を備える。
基本モデルデータベース26、ユーザオリジナル基本モデルデータベース27、および第1段階抽出用モデルデータベース28に記憶されるモデルは、すべて抽出用モデルである。
【0040】
基本モデルデータベース26は、既存の環境音の基本モデルMoを記憶するプリインストールデータベースである。
モデル管理部20は、モデル記憶部25の基本モデルデータベース26に記憶された基本モデルMoを抽出部13に渡し、抽出部13は、基本モデルMoを用いて、第1段階で抽出した環境音から特定の音を第2段階で抽出する。例えば、抽出部13は、基本モデルデータベース26に記憶された基本モデルMoをもとに、森の環境音から「風」を抽出する(風@森の環境音)(以下、△@□は、△を□の中から抽出ことを表わす)。また、森の環境音から「虫」を抽出する(虫@森の環境音)。
【0041】
ユーザオリジナル基本モデルデータベース27は、人の声(例えば、アナウンサの音声)を含む音声のユーザオリジナル基本モデルMo’を記憶するデータベースである。ユーザオリジナル基本モデルMo’は、新規音声が複数だった場合、第1段階抽出用モデルMでの抽出後にさらにユーザオリジナル基本モデルMo’で抽出し、新規音声を種類別に分離させるためのモデルである。
【0042】
モデル管理部20は、ユーザオリジナル基本モデルデータベース27の人の声から特定の人の声(ここでは、アナウンサ)を抽出する。例えば、モデル管理部20は、ユーザオリジナル基本モデルデータベース27をもとに、アナウンサから「Bさん」の声を(Bさん@アナウンサ)、アナウンサから「Cさん」の声を(Cさん@アナウンサ)を抽出する。なお、Aさん(後記)は、既存のアナウンサ(学習済み)であるのに対し、Bさん、Cさんは、新規のアナウンサ(学習されていない新規)であるとする。
【0043】
また、ユーザオリジナル基本モデルデータベース27は、人の声以外の音声(所定の音声)のモデルを記憶することも可能である。例えば、車の中にDさんと猫がいた場合、車の中を想定した基本モデルMoは、猫の鳴き声に対応していないとする。この場合のモデル(ユーザオリジナル基本モデル)Mo’は、「猫@Dさん+猫」、「Dさん@Dさん+猫」となり、ユーザオリジナル基本モデルデータベース27に記憶させる。
【0044】
第1段階抽出用モデルデータベース28は、第1段階抽出用モデルMを記憶するデータベースである。第1段階抽出用モデルデータベース28は、2段階で抽出を行う本システムにおける1段階目、つまり基本モデルMoと、ユーザオリジナル基本モデルMo’で対応できるように抽出処理を行う第1段階抽出用モデルMを記憶するデータベースである。
【0045】
抽出用モデルデータベース28は、第1段階抽出用モデルMの一例として、例えば「Aさん@Aさん+森の環境音」、「アナウンサ@アナウンサ+森の環境音」…を記憶する。モデル管理部20は、新規音声が入力された場合、第1段階抽出用モデルMを、第1段階抽出用モデルデータベース28から読み出して抽出系10の抽出部13に出力する。
【0046】
図1を参照して、実際の処理過程について説明する。
森でBさんとCさん(BさんとCさんは、新規のアナウンサ)の音声を収録した場合を例に採る。
前提として、図1に示す抽出部13は、基本モデルデータベース26をもとに、森の環境音から「風」を抽出する(風@森の環境音)、森の環境音から「虫」を抽出する(虫@森の環境音)。また、抽出部13は、ユーザオリジナル基本モデルデータベース27をもとに、アナウンサから「Bさん」を(Bさん@アナウンサ)、アナウンサから「Cさん」を(Cさん@アナウンサ)を抽出する。また、第1段階抽出用モデルデータベース28は、例えば「Aさん@Aさん+森の環境音」、「アナウンサ@アナウンサ+森の環境音」…を記憶している。
【0047】
1.新規音声の抽出
(1)抽出部13は、入力音声から収録環境に対応したモデル(“アナウンサ@アナウンサ+森の環境音”のモデル)で新しく学習させた新規音声(Bさん+Cさん=アナウンサ)を抽出する。
(2)抽出部13は、環境音だけの音声(入力音声-新規音声=森の環境音)を抽出する。
【0048】
2.上記1.(1)(2)の音声から種類別に抽出する。
(3)対応可能な音声になっている(森の環境音だけになっている)。
(4)同じ録音環境において順番に、環境音を抽出する。例えば、“風@森の環境音”や“鳥@森の環境音”など“~@森の環境音”のモデル全てで抽出する。
(5)同様に、新規のアナウンサの音声を抽出する。例えば、“アナウンサ”から“Bさんのみ”および“Cさんのみ”を抽出する。
【0049】
3.抽出部13は、次のブロック(出力部16)へ抽出した音声を出力する。
(6)ユーザの指定に基づき、MIX部14を経由するか否かを選択し出力部16に出力する(直接接続しているのはフーリエ逆変換部15であるが、出力部16に到達するため図示を省略)。
【0050】
<学習系30>
学習系30は、ユーザが新たに抽出できるようにしたい音声を学習し、生成されたモデルをモデル管理部20に送る。
【0051】
学習系30は、入力部31と、データセット作成部32A(データセット作成手段)およびモデル生成部32B(モデル生成手段)と、音声データベース33と、を備える。
入力部31は、学習用入力部であり、例えば、収録した音声データなどの音声サンプルを入力する。
【0052】
<データセット作成部32A>
データセット作成部32Aは、複数種類の環境音および所定の音声を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成する。ここで、所定の音声は、人の声を含み、環境音は、人の声以外の音であるものでもよい。具体的には、データセット作成部32Aは、下記(1-1)~(1-3)により各学習用データセットを作成する。
【0053】
(1-1)
データセット作成部32Aは、人以外の様々な音声を合成して作成した課題となるデータ(この課題となるデータをデータAとする)と、当該課題となるデータAを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセットを作成する。データセット作成部32Aは、データAおよび合成前の単一音声を音声データベース33に保存する。この学習用データセット(課題となるデータAを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセット)で学習することで基本モデルMoが生成される。
【0054】
(1-2)
データセット作成部32Aは、複数の新規音声を合成して作成した課題となるデータ(この課題となるデータをデータBとする)と、当該課題となるデータBを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセットを作成する。データセット作成部32Aは、データBおよび合成前の単一音声を音声データベース33に保存する。この学習用データセット(課題となるデータBを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセット)で学習することでユーザオリジナル基本モデルMo’が生成される。
【0055】
なお、新規音声が1つの場合、上記データBは、単一の新規音声であり、ユーザオリジナル基本モデルMo’は作成しない。
【0056】
(1-3)
データセット作成部32Aは、データAとデータBとを単一音声として扱い、これらを合成して課題となるデータ(この課題となるデータをデータCとする)を新たに作成する。データセット作成部32Aは、データCと合成前の単一音声である各音(データAおよびデータB)を模範解答とした学習用データセットを作成する。この学習用データセットで学習すると第1段階抽出用モデルMが生成される。
【0057】
<モデル生成部32B>
モデル生成部32Bは、データセット作成部32Aが作成した学習用データセットをもとにDeep Leaningで学習して、環境音を種類別に抽出するための基本モデルMo、基本モデルMoでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデルMo’、および新規音声を抽出するための第1段階抽出用モデルMを生成する。具体的には、モデル生成部32Bは、下記(2-1)~(2-3)により各モデルを作成する。
【0058】
(2-1)
モデル生成部32Bは、上記(1-1)でデータセット作成部32Aが作成した学習用データセット(課題となるデータAを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセット)で学習し、基本モデルMoを生成する。
【0059】
(2-2)
モデル生成部32Bは、上記(1-2)でデータセット作成部32Aが作成した学習用データセット(課題となるデータBを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセット)で学習し、ユーザオリジナル基本モデルMo’を生成する。
【0060】
(2-3)
モデル生成部32Bは、上記(1-3)でデータセット作成部32Aが作成した学習用データセット(データCと合成前の単一音声である各音(データAおよびデータB)を模範解答とした学習用データセット)で学習し、第1段階抽出用モデルMを生成する。
【0061】
モデル生成部32Bは、学習後、基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMをモデル管理部20に送る。
【0062】
<音声データベース33>
音声データベース33は、学習用データセットのうちの課題となるデータを蓄積する。音声データベース33は、例えば、森の環境音、海の環境音、町(市街地)の環境音等を蓄積する。ここで、森の環境音とは、木々の音、森にいそうな鳥の声、川の音、虫(セミ,コオロギ,鈴虫等)の声である。また、海の環境音とは、波の音、海にいそうな鳥の声、船の音である。
【0063】
[基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMの構造]
基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMは、ニューラルネットワークの層間を結合する結合行列とバイアス項からなるパラメータをモデル化した音分離モデルである。
学習系30のモデル生成部32B(図1参照)は、基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMとして、ディープニューラルネットワーク(Deep Neural Network:DNN)を学習する。
【0064】
図2は、ディープニューラルネットワーク(DNN)で構成した基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMの構造の一例を示す図である。
図2に示すように、ディープニューラルネットワーク(DNN)のモデル(モデルパラメータ)は、入力層(input layer)41、任意の数の中間層である隠れ層(hidden layer)42、出力層(output layer)43を有して構成される。
入力層(input layer)41は、複数個(ここでは8)の入力ノード(ニューロン)を有する。隠れ層42は、複数(ここでは3層(hidden layer1,hidden layer2,hidden layer3))である。実際には、隠れ層42の層数nは、例えば20~100に達する。出力層43は、識別対象の数(ここでは4)の出力ノード(ニューロン)を有する。なお、図2に示す層数およびノード数(ニューロン数)は、一例である。
第1段階抽出用モデルMは、入力層41と隠れ層42のノード間が全て結合し、隠れ層42と出力層43のノード間が全て結合している。
【0065】
学習系30のモデル生成部32B(モデル学習手段)は、入力層41、隠れ層42、出力層43で構成される順伝播ニューラルネットワーク(Feed Forward Neural Network:FFNN)により、第1段階抽出用モデルMを学習する。
【0066】
入力層41、隠れ層42および出力層43には、任意の数のノード(図2の○印参照)が存在する。このノードは、入力を受け取り、値を出力する関数である。入力層41には、入力ノードとは別に独立した値を入れるバイアス(bias)ノードがある。ディープニューラルネットワークにおける構成は、複数のノードを持つ層を重ねることで構築される。ディープニューラルネットワークにおける伝播は、受け取った入力に対して重み(weight)をかけ、受け取った入力を次層に活性化関数(activation function)で変換して出力する。活性化関数は、sigmoid関数やtanh関数などの非線形関数、ReLU(Rectified Linear Unit function:正規化線形関数)がある。ノード数を増やすことで、扱う変数を増やし、多数の要素を加味して値/境界を決定できる。層数を増やすことで、直線境界の組み合わせ、複雑な境界を表現できる。
【0067】
ディープニューラルネットワークにおける学習は、誤差を計算し、それを基に各層の重みを調整する。学習は、誤差を最小化する最適化問題を解くことであり、第1段階抽出用モデルMの学習には、例えば、誤差逆伝播法(backpropagation)を用いる。なお、誤差を演算する損失誤差関数には、例えば、平均二乗誤差関数を用いる。誤差逆伝播法は、誤差を出力層43から伝播させていき、各層の重みを調整する。
【0068】
モデル生成部32Bは、事前学習において、学習を所定回数行うか、パラメータ誤差が予め定めた誤差内に収束した段階で学習を終了することとしてもよい。
モデル生成部32Bは、学習した第1段階抽出用モデルMおよび基本モデルMo(モデルパラメータ)を、モデル管理部20のモデル記憶手段に書き込み記憶する。
なお、入力データに対し学習済のものを評価していくことを前提としている。したがって、学習結果として重みは既に得られている。
【0069】
[音声抽出装置の抽出系の構成]
図3は、本発明の実施形態に係る音声抽出装置1の抽出系10の概要を説明する図である。図1と同一構成部分には、同一符号を付している。なお、図3では2段階で抽出していることは省略されている。
図3に示すように、音声抽出装置1の抽出系10は、抽出部51と、レベル調整部52と、加算器54と、を備える。
入力部11は、入力音声wavファイルを抽出部51に音声データとして入力する。
抽出部51は、図1の抽出部13に対応し、レベル調整部52および加算器54は、図1のMIX部14に対応する。図3は、音声抽出装置1の概要を示す構成図であるため、図1のフーリエ変換部12およびフーリエ逆変換部15の記載は省略した。また、入力部11および出力部16は、抽出系10の外に記載した。
【0070】
抽出部51は、入力音声データから、人の声・水の音・車の音・風の音(図3の人・水滴・車・風のアイコン参照。以下同様。)を抽出する。
ここで、抽出部51における、ニューラルネットワーク用のフレームワークには、例えば、ディープニューラルネットワーク用のフレームワークソフトウェアChainer(登録商標)のfloat32 精度CNNを用いている。
【0071】
レベル調整部52は、抽出した各音声(人の声・水の音・車の音・風の音)をユーザが指定する比率53に基づいてレベル調整する。
加算器54は、各音声(人の声・水の音・車の音・風の音)毎にレベル調整された音声データを加算して出力部16に出力する。なお、後述するように、加算器54は、加算せずにバラバラの状態で個別に出力する態様でもよい。
出力部16は、加算出力を、例えばスピーカにより出力する。
【0072】
[ハードウェア構成]
本実施形態に係る音声抽出方法は、例えば図4に示すような構成の物理装置であるコンピュータ900によって実現される。
図4は、本発明の実施形態に係る音声抽出方法の処理を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ900は、CPU(Central Processing Unit)901、GPU(Graphics Processing Unit)902、ROM(Read Only Memory)903、RAM(Random Access Memory)904、HDD(Hard Disk Drive)905、入出力I/F(Interface)906、通信I/F907およびメディアI/F908を有する。
【0073】
CPU901およびGPU902は、後述する音声抽出装置1の各種処理を実行する。
CPU901は、ROM903またはHDD905に記憶されたプログラムに基づき作動し、図1に示す音声抽出装置1の各処理部による制御を行う。ROM903は、コンピュータ900の起動時にCPU901により実行されるブートプログラムや、コンピュータ900のハードウェアに係るプログラム等を記憶する。
【0074】
CPU901は、入出力I/F906を介して、マウスやキーボード等の入力装置910、および、ディスプレイ等の出力装置911を制御する。CPU901は、入出力I/F906を介して、入力装置910からデータを取得するともに、生成したデータを出力装置911へ出力する。
【0075】
GPU902は、機械学習における行列演算等の学習処理を実行する。
HDD905は、CPU901により実行されるプログラムおよび当該プログラムによって使用されるデータ等を記憶する。通信I/F907は、通信網(例えば、NW(Network)920)を介して他の装置からデータを受信してCPU901へ出力し、また、CPU901が生成したデータを、通信網を介して他の装置へ送信する。
【0076】
メディアI/F908は、記録媒体912に格納されたプログラムまたはデータを読み取り、RAM904を介してCPU901へ出力する。CPU901は、目的の処理に係るプログラムを、メディアI/F908を介して記録媒体912からRAM904上にロードし、ロードしたプログラムを実行する。記録媒体912は、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、磁気記録媒体、導体メモリテープ媒体または半導体メモリ等である。
【0077】
例えば、コンピュータ900が本実施形態に係る一装置として構成される音声抽出装置1として機能する場合、コンピュータ900のCPU901は、RAM904上にロードされたプログラムを実行することにより音声抽出装置1の機能を実現する。また、HDD905には、RAM904内のデータが記憶される。CPU901は、目的の処理に係るプログラムを記録媒体912から読み取って実行する。この他、CPU901は、他の装置から通信網(NW920)を介して目的の処理に係るプログラムを読み込んでもよい。
【0078】
以上、本発明の実施形態に係る音声抽出装置1の構成について説明したが、音声抽出装置1は、コンピュータを前記した各手段として機能させるためのプログラム(マルチトラック化プログラム)で動作させることができる。
【0079】
[音声抽出装置の動作]
以下、上述のように構成された音声抽出装置1の動作について説明する。
(背景説明)
車関係の取材をしていることを前提とする。
収録時、特に屋外での収録では、不要な音声が混入することがある。例えば、取材中に強風が吹く場合がある。この取材で必要なのは人の声と車の音であり、風の音は不要である。必要な音声だけを抽出することができれば、より良い放送音声を製作することができると考えられる。
【0080】
本実施形態の音声抽出装置1は、Deep Leaningを用いるため、はじめに学習用データセット(図5参照)を作成する。
【0081】
<学習用データセットの作成>
まず、学習用データセットの作成について説明する。
図5は、学習用データセットの作成を説明する図である。
学習用データセット90は、ニューラルネットワークの学習における「課題」と「模範解答」のペアを大量に用意したものである。図5に示すように、単一音声60は、例えば、人の声60a、水の音60b、車の音60c、風の音60dなどであり、事前に収録されたものである。課題70は、人の声60a、水の音60b、車の音60c、風の音60dなどの単一音声60を合成して作成する。
【0082】
課題70に対して、抽出したい音声の単一音声を模範解答80としてペアにすることで、学習用データセット90を作成する。例えば、人の声を抽出する学習用データセット90aは、図5に示す課題70と、人の声の模範解答80aのペアにすることで、人の声を抽出する学習用データセットになる。同様に、水の音を抽出する学習用データセット90bは、図5に示す課題70と、水の音の模範解答80bのペアにすることで、水の音を抽出する学習用データセットになる。
この学習用データセット90により、騒がしい場所で収録した音声を再現する。
【0083】
<学習用データセットのDeep Learningによる学習>
次に、作成した学習用データセット90をDeep Learningで学習させる方法について説明する。
図6は、作成した学習用データセット90をDeep Learningで学習させる方法を説明する図である。
まず、課題70をフーリエ変換した課題70-1を、ニューラルネットワーク(図2参照)で処理する。
【0084】
ニューラルネットワーク処理結果と模範解答80(ここでは人の声の模範解答80a)をフーリエ変換した模範解答80a-1を比較する。
図6の符号aに示すように、比較結果を、ニューラルネットワークにフィードバックすることで、ニューラルネットワークのパラメータ(ネットワークの層間を結合する結合行列とバイアス項)を修正する。
これを学習用データセット90のペアの数だけ繰り返すことで、ニューラルネットワークを最適化する(図6の符号b参照)。図6では、騒がしい場所で収録した人の声を再現するため、学習用データセット90aをもとに、人の声、水の音、車の音、風の音をDeep Leaningで学習して、各モデル(基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルM)を生成する。各モデルは、学習用データセットの中身が異なるだけで学習方法は同一のものである。
【0085】
<個別の環境音または人の音声を抽出する抽出方法>
次に、入力音声データから、個別の環境音または人の音声を抽出する抽出方法について説明する。
図7は、各モデル(基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルM)を用いて、入力音声データから、人の音声を抽出する抽出方法を説明する図である。
図6の学習の場合と同様に、各モデルが、本抽出フローを用いる。モデル管理部20(図1参照)は、各モデルを入れ替えながら、本抽出フローを何度か繰り返すことで、例えば第1段階の抽出や個々の音声をバラバラに抽出することできる。
まず、入力音声71をフーリエ変換した入力音声71-1を、ニューラルネットワーク(図2参照)で処理する。
ここで、図7の符号cに示すように、ニューラルネットワークが、図6に示す学習によって学習済みとなり最適化されている(例えば、最適化された第1段階抽出用モデルMが生成されている。この第1段階抽出用に限らず、すべてのモデルに同じことがいえる。)。そして、ニューラルネットワークの出力(ここでは、人の声の抽出出力81a-1)をフーリエ逆変換で音声データ81aに戻す。
以上の処理を行うことで、目的の音声を抽出することができる。
【0086】
<学習用データセットについての補足説明>
図8は、学習用データセット90について補足して説明する図である。図5と同一構成部分には、同一符号を付している。図8(a)は、課題70と人の声用の模範解答80aと組み合わされる学習用データセット90aを示し、図8(b)は、課題70と雨の音用の模範解答80bと組み合わされる学習用データセット90bを示し、図8(c)は、課題70と車の音用の模範解答80cと組み合わされる学習用データセット90cを示す。
図8に示す課題70は、人の声60a、水の音60b、車の音60cの単一音声60を合成して作成する。
【0087】
図8(a)に示す学習用データセット90aは、課題70と人の声の模範解答80aとをペアにした人の声を抽出する学習用データセットである。図8(b)に示す学習用データセット90bは、課題70と水の音の模範解答80bとをペアにした水の音を抽出する学習用データセットである。図8(c)に示す学習用データセット90cは、課題70と車の音の模範解答80cとをペアにした車の音を抽出する学習用データセットである。
【0088】
このように、対応させたい音声の数だけ学習用データセット90を用意する。ここでは、人の声・水の音・車の音の3つの音声に対応させたため3つの学習用データセット90a~90cを作成する。
模範解答となる音声データは、対応させたい音声がそれぞれ個別に収録された音声データであり、これらを単一音声とする。図8では、人の声・水の音・車の音の3つの単一音声をそれぞれの学習用データセット90a~90cの模範解答80a~80cとして用意した。
【0089】
課題となる音声データは、模範解答80a~80cとして用意した単一音声(人の声・水の音・車の音)をすべて合成したものである。この合成音声は、全ての学習用データセット90a~90cの課題として共通利用される。図8では、課題70を3回使いまわしている。
以上、3つの学習用データセット90a~90cを用いて学習させ、3つの第1段階抽出用モデルMを作成する。この時、学習用データセット90の音声データは、短時間フーリエ変換をしてから学習に使用している(図6参照)。
【0090】
<抽出方法についての補足説明>
図9は、音の抽出方法について補足して説明する図である。図5および図8と同一構成部分には、同一符号を付している。
実際の抽出方法は、入力音声を短時間フーリエ変換してから各モデル(第1段階抽出用モデルM、基本モデルMo、ユーザオリジナル基本モデルMo’)を用いて、各音声を抽出する。そして、短時間フーリエ逆変換して音声データに戻す。
上記、抽出処理を1つの入力音声に対して、すべての各モデル(第1段階抽出用モデルM、基本モデルMo、ユーザオリジナル基本モデルMo’)で行うことで、音声を種類ごとに分けることができる。図9では、模範解答が人の声のモデル・水の音のモデル・車の音のモデルの3つのモデルを用いて3回抽出を行っている。
【0091】
(従来の学習用データセットおよび学習方法)
一般的には、対応可能な音声を増やす際、全ての学習をやり直す必要がある。具体的には、図8および図9に示すように、3種類の音声に対応している場合、4種類の音声に対応しようとすると、Deep Leaningでの学習を4回行わなければならない。100種類から101種類に、音声を増やそうする場合、Deep Leaningでの学習が101回必要である。
【0092】
(音声抽出装置1の学習用データセット、モデル生成、および抽出方法)
<学習用データセットおよびモデル生成(その1)>
音声抽出装置1のデータセット作成部32A(図1参照)は、新規音声と学習用データセットのうちの課題となるデータを組み合わせて新たな学習用データセットを作成する。この学習用データセットで学習させることで第1段階抽出用モデルMとなる。学習用データセットのうちの課題となるデータは、音声データベース33(図1参照)に保存されている。
【0093】
図10は、音声抽出装置1(図1の参照)の抽出方法(その1)を説明する図である。図8および図9と同一構成部分には、同一符号を付している。
図10に示す課題70は、人の声以外の音、ここでは水の音、車の音、風の音の単一音声を合成して学習した、環境音のみの学習用データセット90内の課題となるデータであり、ここに、更にユーザの音声80aを合成し、この新たに合成された音声と新たに追加された人の音声からなる学習用データセット90で学習することで生成されるモデルを第1段階抽出用モデルMとする。第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、まず人の音声81aを抽出する(図10の符号d参照)。
【0094】
そして、環境音のみの学習用データセット90の基本モデルMoをもとに、各環境音、ここでは水の音81b、車の音81c、風の音81dを抽出する(図10の符号e参照)。
このように、人の声以外のあらゆる音声を学習させておく。そして、ユーザの声を学習させることで、ユーザに特化した高精度の抽出を行えるようになる。
【0095】
<学習用データセットおよびモデル生成(その2)>
音声抽出装置1のデータセット作成部32A(図1参照)は、複数種類の環境音および所定の音声を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成する。モデル生成部32B(図1参照)は、データセット作成部32Aが作成した学習用データセットをもとにDeep Leaningで学習して、環境音を種類別に抽出するための基本モデルMo、基本モデルMoでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデルMo’、および新規音声を抽出するための第1段階抽出用モデルMを生成する。
【0096】
図11は、音声抽出装置1の抽出方法(その2)を説明する図である。図10と同一構成部分には、同一符号を付している。
図11に示すように、ユーザの音声180が複数名(一例を挙げると、3名)であり、その各音声(ユーザの音声180a、ユーザの音声180b、ユーザの音声180c)である。新たに追加された複数のユーザの音声180(ユーザの音声180a、ユーザの音声180b、ユーザの音声180c)と環境音のみの学習用データセット90の課題となるデータを組み合わせて新たな第1段階抽出用モデルMとする。第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、まず3名のユーザの音声181(181a~181c)をまとめて抽出する(図11の符号f参照)。
【0097】
その後、新規の学習用データセットとして3名のユーザの音声から1人1人の音声を抽出する部分を用意する(図11の符号fと符号hとの重なり部分参照)。ここでは、ユーザa,b,cの音声を合成したものが、課題となるデータであり、ユーザaのみの単一音声を合成したものが模範解答となる。そして、この学習用データセットで学習させることでユーザオリジナル基本モデルMo’が生成される。ユーザbとcについても同様に、学習用データセットを作成して学習させ、合計3つのユーザオリジナル基本モデルMo’を生成する。これらのユーザオリジナル基本モデルMo’を用いて、ニューラルネットワークの演算により入力音声から、個別のユーザの音声181a~181cをそれぞれ抽出する(図11の符号h参照)。
【0098】
また、環境音のみの学習用データセット90の基本モデルMoをもとに、各環境音、ここでは水の音81b、車の音81c、風の音81dを抽出する(図10の符号g参照)。
このように、まず3名のユーザの音声をまとめて抽出する。その後、3名のユーザの音声から1人1人の声を抽出する。これにより、個人の声と水の音などの環境音を全てバラバラにすることができる。
【0099】
(音声抽出装置1の抽出部51における音声の抽出動作)
図3を参照して、図7の抽出方法における、実際の処理過程について説明する。
図3に示すように、入力部11は、入力音声wavファイルを抽出部51に音声データとして入力する。
抽出部51は、Deep Learningで学習済みのAIである第1段階抽出用モデルM、基本モデルMo、ユーザオリジナル基本モデルMo’を用いて、入力音声データから、各音声を抽出する。例えば、図7に示すDeep Learningを用いて人の音声を抽出する。また、個別の環境音である水の音・車の音・風の音を抽出する。
【0100】
レベル調整部52では、ユーザが指定する比率53に基づいて、抽出した各音声(人の声・水の音・車の音・風の音)のレベルを調整する。
加算器54では、レベル調整された各音声(人の声・水の音・車の音・風の音)を加算しwavファイルとして出力する。
【0101】
ここで、レベル調整部52および加算器54(図1のMIX部14)で、MIXしている理由について述べる。音声抽出装置1では、1分間の音声を10秒以下で処理することが確かめられている。
10秒以下で処理可能ということと、MIXが可能ということは、システムとしてみた場合それぞれ独立している。これらの処理が両方とも短時間で行えるため、限られた時間でもより良い放送音声を制作できる。
【0102】
このように、必要な音声だけを抽出し、他の音は抑制するなど、抽出した音のMIXを行うことができる。特に、取材に対応するなど限られた時間において、より良い放送音声を製作することができる。
なお、ドラマ撮影など、製作時間を長く確保できる場合には、抽出した音声をそれぞれMIXせずにそのまま出力することもできる。
【0103】
(フローチャート)
図12は、音声抽出装置1(図1参照)の動作を示すフローチャートである。本フローは、後記図13のステップS14、ステップS16、ステップS18の中、もしくはその直前で実行される。
ステップS1でデータセット作成部32A(図1参照)は、音声データベース33(図1参照)から複数種類の環境音を入力するとともに、入力部31(図1参照)から所定の音声を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成する。
【0104】
ステップS2でモデル生成部32B(図1参照)は、作成した学習用データセットをもとにDeep Leaningで学習して、環境音を種類別に抽出するための基本モデルMo、基本モデルMoでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデルMo’、および新規音声を抽出するための第1段階抽出用モデルMを生成する。
【0105】
ステップS3でモデル記憶部25(図1参照)は、生成した基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMを、基本モデルデータベース26、ユーザオリジナル基本モデルデータベース27、および抽出用モデルデータベース28にそれぞれ記憶する。
【0106】
ステップS4でモデル管理部20(図1参照)は、抽出部13(図1参照)が音声を抽出する際に適切なモデルをモデル管理部20が選び抽出部13に渡す。具体的には、モデル管理部20は、新規音声が追加された場合、抽出部13に第1段階抽出用モデルMを出力し、新規の音声を抽出することで、抽出後の音声が基本モデルMoおよびユーザオリジナル基本モデルMo’で対応できるようになった場合、抽出部13に基本モデルMoおよびユーザオリジナル基本モデルMo’を出力する。
【0107】
ステップS5で抽出部13は、モデル管理部20から渡された基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、個別の環境音または所定の音声を抽出する。具体的には、抽出部13は、第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、新規の音声を第1段階で抽出し、基本モデルMoおよびユーザオリジナル基本モデルMo’を用いて、ニューラルネットワークの演算により第1段階で抽出した音声から、個別の環境音および所定の音声を第2段階で抽出する。
【0108】
(抽出動作フローチャート)
図13は、音声抽出装置1(図1参照)の音声抽出方法の具体例の抽出動作を示すフローチャートである。図13は、図12のステップS5の抽出動作の詳細フローである。図13中の音の表記において、矩形で囲んだ音が抽出されることを表わす。例えば、「風・虫・木」は、風・虫・木が分離されていない環境音であることを示し、「風」「虫」「木」は、これらが単独で抽出されたことを示す。同様に、「Aさん Bさん」は、人の音声が分離されていないことを示し、「Aさん」「Bさん」は、人の音声が個別に抽出されたことを示す。さらに、音を囲んだ上記矩形の大きさは、抽出後の音量の大きさ(矩形が大きいと音量も大きい)を表わしている。
【0109】
森でAさんとBさんがロケをした場合を想定する。
AさんとBさんは、図13では、既存のアナウンサ(学習済み)であるとし、「Aさん@Aさん+Bさん」「Bさん@Aさん+Bさん」のモデルは、ユーザオリジナル基本モデルデータベース27に記憶されている。また、森の環境音として、風・虫・木の音が学習済みであり、基本モデルデータベース26に記憶されている。また、「Aさん+Bさん」@「Aさん+Bさん+森の環境音」が第1段階抽出用モデルデータベース28に保存されている。
【0110】
ステップS11で入力部11(図1参照)からAさんとBさんの音声、および森の環境音(風・虫・木の音)を入力する(図13の符号i参照)。
ステップS12でモデル管理部20(図1参照)は、各種設定を行う。各種設定は、下記である。
(1)録音環境および種類別に抽出するか否かの選択
例えば、ロケ地を森/海/街などから選択する。森の環境音を選択した場合、風・虫・木を個別に抽出するかを設定する。
【0111】
(2)アナウンサを個人別に抽出するか否かの選択
例えば、AさんとBさんは、個人として、AさんとBさんとに分ける(Aさん/Bさん)か、まとめて抽出する(Aさん&Bさん)かを選択する。
【0112】
(3)出力形式
MIX(比率も含む)かマルチトラックかを選択する。
ステップS13でフーリエ変換部12(図1参照)は、入力音声を周波数成分に変換するフーリエ変換を行う。
【0113】
ステップS14でモデル管理部20(図1参照)は、森の環境音とアナウンサの音声とに分離する。ステップS14はどちらかに進むのではなく、両方に進む。すなわち、ステップS11で入力された音声がステップS14で環境音とアナウンサ音声の2つに分離し、その上でアナウンサ音声と環境音がそれぞれのルートそれぞれのルート(ステップS15とステップS17)に進む。抽出部13は、モデル管理部20から渡されたモデルを用いて、ニューラルネットワークの演算により入力音声を森の環境音とアナウンサの音声とに分離する。
ここで、上記ステップS12の「各種設定」において、録音環境:森、アナウンサ:Aさん&Bさん、を選ぶことで対応するモデルで処理することができる。
【0114】
森の環境音を抽出した場合(図13の符号kの「風・虫・木」参照)、ステップS15に進み、アナウンサの音声を抽出した場合(図13の符号jの「Aさん Bさん」参照)は、ステップS17に進む。
ステップS15で、ステップS12で行った設定に基づいて森の環境音を種類別に抽出するか否かを判別する。森の環境音を種類別に抽出する場合(S15:Yes)、ステップS16で抽出部13は、各環境音を抽出して(図13の符号lの「風」「虫」「木」参照)ステップS19に進む。森の環境音を種類別に抽出しない場合(S15:No)、ステップS19に進む。
【0115】
一方、上記ステップS14でアナウンサの音声を抽出した場合、ステップS17で、ステップS12で行った設定に基づいて、個人別に抽出するか否かを判別する。
【0116】
個人別に抽出する場合、ステップS18でユーザが新たに学習させたモデルを用いて、ニューラルネットワークの演算により入力音声から、各アナウンサを個人別に抽出して(図13の符号mの「Aさん」「Bさん」参照)ステップS19に進む。個人別に抽出しない場合、ステップS19に進む。
【0117】
ステップS19で抽出部13は、ステップS12で行った設定に基づいて出力形式を判別する。いま、上記ステップS12の「各種設定」において、環境音:種類別に抽出、アナウンサの音声:個人別に抽出しない、が設定されているとする。
マルチトラックの場合は、環境音は種類別の「風」「虫」「木」、アナウンサは「Aさん Bさん」がマルチトラックで出力される(図13の符号n参照)。
MIXの場合は、ステップS20でMIX部14(図1参照)が種類別の「風」「木」(「虫」は削除)と、アナウンサ「Aさん Bさん」とをMIXして出力する。
【0118】
MIXの場合、各音声の大きさは、ユーザ指定できる。ここでは、アナウンサ「Aさん Bさん」の音声を最も大きくする。また、環境音の「風」「虫」「木」のうち、「木の音」は大きく、「風の音」は小さく、「虫の音」は削除する(図13の符号o参照)。
【0119】
ステップS21では、フーリエ逆変換部15(図1参照)が、周波数成分に変換して処理されたデータを音声データに戻すフーリエ逆変換を行い、本フローの処理を終了する。
【0120】
(具体例)
図14を参照して、収録音声について説明する。
図14は、本発明の実施形態に係る音声抽出装置1の抽出処理における機能を簡易的に説明する図である。図14は、収録音声・疑似的な収録音声など音声の種類には依存していない。図3と同一構成部分には、同一符号を付している。
入力部11に、様々な音声が混在した入力音声(疑似的な収録音声)を入力する(図14の符号p参照)。
学習用データセットを用いて学習させた結果、生成されるのが各モデル(基本モデルMo、ユーザオリジナル基本モデルMo’、および第1段階抽出用モデルM)である。抽出部51は、各モデルを用いて、Deep Leaningで学習して、入力音声を種類(ここでは、人の声・水の音・車の音・風の音)別に抽出する。
【0121】
レベル調整部52は、抽出した各音声(人の声・水の音・車の音・風の音)をユーザが指定する比率53に基づいてレベルを調整する。
【0122】
加算器54は、レベル調整された各音声(人の声・水の音・車の音・風の音)データを加算して出力部16に出力する。
出力部16は、加算出力を、出力音声として出力する。
この出力音声は、抽出した音声を任意の比率でMIXした音声である。
【0123】
上記、レベル調整部52、比率53、加算器54および出力部16について例示する。
例えば、図14の符号sに示すように、レベル調整部52は、人の声を0(比率53の一例)にし、風の音を強調した音声にレベル調整する。加算器54は、各音声を加算し出力部16に出力する。出力部16から出力される出力音声は、抽出した音声を任意の比率でMIXした音声であり、例えば人の声81a:0、雨の音81b:2、車の音81c:1、風の音81d:6である。
【0124】
あるいは、図14の符号tに示すように、レベル調整部52は、人の声を10(比率53の一例)にし、風の音を消音するようにレベル調整することもできる。加算器54は、各音声を加算し出力部16に出力する。出力部16から出力される出力音声は、抽出した音声を任意の比率でMIXした音声であり、例えば人の声81a:10、雨の音81b:0、車の音81c:1、風の音81d:0である。人の声をメインにし、後ろで少し車の音が聞こえるように調節した音声である。
【0125】
[効果]
以上説明したように、本実施形態の音声抽出装置1(図1参照)は、複数種類の環境音および所定の音声(例えば、人の音声)を入力し、これらの音を合成して作成した課題となるデータと、当該課題となるデータを作成するのに用いた合成前の単一音声である各音とからなる学習用データセットを作成するデータセット作成部32A(図1参照)と、作成した学習用データセットをもとにDeep Leaningで学習して、環境音を種類別に抽出するための基本モデルMo、基本モデルMoでは対応していない所定の音声を抽出するためのユーザオリジナル基本モデルMo’、および新規音声を抽出するための第1段階抽出用モデルMを生成するモデル生成部32B(図1参照)と、新規音声が追加された場合、抽出部13に第1段階抽出用モデルMを出力し、新規の音声を抽出することで、抽出後の音声が基本モデルMoおよびユーザオリジナル基本モデルMo’で対応できるようになった場合、抽出部に基本モデルMoおよびユーザオリジナル基本モデルMo’を出力するモデル管理部20と、第1段階抽出用モデルMを用いて、ニューラルネットワークの演算により入力音声から、新規の音声を第1段階で抽出し、基本モデルMoおよびユーザオリジナル基本モデルMo’を用いて、ニューラルネットワークの演算により第1段階で抽出した音声から、個別の環境音および所定の音声を第2段階で抽出する抽出部13(図1参照)と、を備える。
【0126】
従来例では、対応可能音声を増やす場合、最初から学習やり直しとなる。例えば、現在の対応可能音声がn種類だとすると、学習回数はn+1となる。一例を挙げると、100種類の音声に対応している場合に、対応可能な音声を101種類に増やそうとすると、全ての学習をやり直す、つまりDeep Leaningでの学習を101回行わなければならない。
【0127】
これに対して、本実施形態では、図12および図13のフローのステップS14およびステップS17で述べたように、新規音声が入力された場合、抽出部13に第1段階抽出用モデルMを出力し、新規の音声を抽出することで、抽出後の音声が基本モデルMoおよびユーザオリジナル基本モデルMo’で対応できるようにする。すなわち、これまでに学習済みの風の音や木の音といった環境音は、既存の学習データ(基本モデルMo)を用いることで抽出可能である一方、新規の音声(例えば、新人アナウンサ)については学習し、新たに追加された人の音声の学習済みデータセットとして、ユーザオリジナル基本モデルMo’とすることで、原音から抽出可能である。
【0128】
この2段階の抽出により、新規の音声を抽出する場合であっても、全ての音声を学習することなく、新規の音声と環境音を分離するための1回だけとなる。上記従来例と比較すると、従来例と同じ条件で対応可能音声を増やす場合、学習回数:n+1回となる。仮に、100種類の音声に対応している既存の学習データ(基本モデルMo)がある場合、新しく追加された音声を抽出するための学習のみが必要である。つまり学習回数は1回でよく、新たに追加された人の音声の学習が1回追加されるだけである。
【0129】
さらに詳しく説明すると、新しく追加された音声を分離することで、新しい音声と元々対応済みだった100種類の音声の2つに分けられる。この分離のために学習が1回必要となる。
【0130】
入力音声(原音/抽出対象)から、新規音声と基本モデルで対応可能な音声との2つに分離する第1段階の抽出を行う。なお、第1段階の抽出は、環境音の抽出処理と新規音声の抽出処理である。これらの処理は同時に行われるので抽出処理は1回である。
【0131】
特に、対応可能な音声を3種類から4種類に増やしても100種類から101種類に増やしても必要な学習は1回である。
【0132】
本実施形態の音声抽出装置1において、学習方法は、下記の特徴を有する。
・人以外の様々な音声を合成して作成した課題となるデータAと、当該課題となるデータAを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセットを作成する。この学習用データセットで学習することで基本モデルMoを生成する。一例を挙げると、収録を想定した基本モデルMoを予め複数設定し、事前に学習(例えば、「駅前」や「砂丘」など)する。
【0133】
・複数の新規音声を合成して作成した課題となるデータBと、当該課題となるデータBを作成するのに用いた合成前の単一音声である各音を模範解答とした学習用データセットを作成する。この学習用データセットで学習することでユーザオリジナル基本モデルMo’を生成する。
【0134】
・上記データAと上記データBとを単一音声として扱い、これらを合成して課題となるデータCを新たに作成する。上記データCと合成前の単一音声である各音(データAおよびデータB)を模範解答とした学習用データセットを作成する。この学習用データセットで学習することで第1段階抽出用モデルMを生成する。一例を挙げると、新たに追加された人の音声(例えば、新人のアナウンサの音声)と、基本モデルMoを生成した際に使用したデータセットの課題となるデータである合成音声を組み合わせて新しく学習用データセットを作り、それを用いて学習させることで新たなモデルである、第1段階抽出用モデルMを生成する。
【0135】
本実施形態の音声抽出装置1において、抽出部13(図1参照)は、ユーザ指定のもとMIX部14(図1参照)を経由するか否かを判断する。出力部16(図1参照)は、抽出部13が抽出した各環境音または人の音声のそれぞれについてMIX部14を経由/またはMIX部14を経由せずに出力する。MIX部14を経由する場合は、ユーザ指定の比率でレベル調整後、加算し、各音声の大きさを任意のレベルでMIXした状態で出力する。経由しない場合は、マルチトラックで出力する。
【0136】
[変形例]
以上、本発明の実施形態に係る音声抽出装置1の構成、動作および評価について説明したが、本発明は、この実施形態に限定されるものではない。
音声抽出装置1は、基本モデルMoの生成やそれ用の学習用データセットの作成、ユーザオリジナル基本モデルMo’の生成やそれ用の学習用データセットの作成、および1段階抽出用モデルMの生成やそれ用の学習用データセットの作成を行うデータセット作成部32Aおよびモデル生成部32Bの動作と、生成された各モデルをモデル記憶部25から読み出して抽出部13に渡すモデル管理部20の動作と、を1つの装置で行うものである。しかし、これらの動作は、別々の装置で行うようにしても構わない。なお、モデル生成部32Bは、モデル学習手段と呼称できる。
【0137】
また、上記した実施形態例は本発明をわかりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態例の構成の一部を他の実施形態例の構成に置き換えることが可能であり、また、ある実施形態例の構成に他の実施形態例の構成を加えることも可能である。また、実施形態例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0138】
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中に示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0139】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、IC(Integrated Circuit)カード、SD(Secure Digital)カード、光ディスク等の記録媒体に保持することができる。
また、上記実施の形態では、音声抽出装置という名称を用いたが、これは説明の便宜上であり、名称はマルチトラック化装置、マルチトラック化システム等であってもよい。また、方法およびプログラムは、マルチトラック化方法、マルチトラック化プログラム等であってもよい。
【符号の説明】
【0140】
1 音声抽出装置
10 抽出系
11 入力部
12 フーリエ変換部
13,51 抽出部(抽出手段)
14 MIX部(出力手段)
15 フーリエ逆変換部
16 出力部(出力手段)
20 モデル管理部(モデル管理手段)
25 モデル記憶部(モデル記憶手段)
26 基本モデルデータベース(モデル記憶手段)
27 ユーザオリジナル基本モデルデータベース(モデル記憶手段)
28 第1段階抽出用モデルデータベース(モデル記憶手段)
30 学習系
31 入力部
32A データセット作成部(データセット作成手段)
32B モデル生成部(モデル生成手段)(モデル学習手段)
33 音声データベース
41 入力層(input layer)
42 任意の数の中間層である隠れ層(hidden layer)
43 出力層(output layer)
52 レベル調整部
54 加算器
70 課題
80 模範解答
90,90a~90c 学習用データセット
Mo 基本モデル
Mo’ ユーザオリジナル基本モデル
M 第1段階抽出用モデル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14