(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024017194
(43)【公開日】2024-02-08
(54)【発明の名称】音声合成装置、音声合成方法およびプログラム
(51)【国際特許分類】
G10L 13/10 20130101AFI20240201BHJP
G10L 25/30 20130101ALI20240201BHJP
【FI】
G10L13/10 111B
G10L25/30
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022119679
(22)【出願日】2022-07-27
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】松本 剣斗
(72)【発明者】
【氏名】田村 正統
(57)【要約】
【課題】標準語のアクセントとは異なるアクセントの音声合成のための高精度な言語解析およびアクセント推定を、効率的に構築する。
【解決手段】実施形態の音声合成装置は、標準語言語解析部と変換部と音声合成部とを備える。標準語言語解析部は、標準語アクセントによる第1の表音文字列を生成する。変換部は、第1の表音文字列のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、第1のアクセント規則に対応するアクセント情報から、第1のアクセント規則に対応した第2の表音文字列を生成する。音声合成部は、第2の表音文字列から音声を合成する。前記変換部は、第1の表音文字列および第2の表音文字列のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、アクセント変換規則に基づいてアクセント情報を変換する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入力されたテキストを、標準語言語解析辞書を用いて分割することにより得られたアクセント句の読み情報およびアクセント情報を推定し、前記読み情報およびアクセント情報から、標準語アクセントによる第1の表音文字列を生成する標準語言語解析部と、
前記第1の表音文字列のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、前記第1のアクセント規則に対応するアクセント情報から、前記第1のアクセント規則に対応した第2の表音文字列を生成する変換部と、
前記第2の表音文字列から音声を合成する音声合成部とを備え、
前記変換部は、前記第1の表音文字列および前記第2の表音文字列のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、前記アクセント変換規則に基づいてアクセント情報を変換する、
音声合成装置。
【請求項2】
前記変換部は、
前記第1の表音文字列と、音の高低を定める単位に区切った単音毎のコンテキスト情報とから、前記単音毎のアクセントの高低情報を前記ニューラルネットワークにより推定する推定部と、
前記高低情報から、前記第1のアクセント規則に対応するアクセント情報を決定する決定部と、
を備える請求項1に記載の音声合成装置。
【請求項3】
前記単音の単位は、音素、モーラ又は音節であり、
前記コンテキスト情報は、当該単音の音韻情報、当該単音の前後の音韻情報、アクセント高低情報、アクセント句の位置、句読点の有無、感嘆符の有無、および、疑問符の有無の少なくとも一つを含む、
請求項2に記載の音声合成装置。
【請求項4】
前記単音毎のアクセント高低情報は、音の高低の度合いを表す連続値を含む、
請求項2に記載の音声合成装置。
【請求項5】
前記ニューラルネットワークは、フィードフォワード型、リカレント型、トランスフォーマー型、又は、双方向LSTM(Long Short Term Memory)型のモデルを用いて学習されたニューラルネットワークである、
請求項1に記載の音声合成装置。
【請求項6】
前記決定部は、前記推定部で推定された単音毎のアクセント高低の高い単音から低い単音に変化する位置をアクセント核の位置として決定することにより、前記第1のアクセント規則に対応した第2の表音文字列を生成する、
請求項2に記載の音声合成装置。
【請求項7】
第1のアクセント規則は、特定の方言アクセント、特徴的な口調の話者、または特徴的な口調のキャラクターのアクセントの規則である、
請求項1に記載の音声合成装置。
【請求項8】
前記第1の表音文字列に含まれるアクセント句の境界を修正する境界修正部を更に備え、
前記境界修正部は、アクセント句の境界を修正する規則に基づいて、前記第1の表音文字列に含まれるアクセント句の境界を修正した修正表音文字列を生成し、前記修正表音文字列を、前記変換部に入力する、
請求項1に記載の音声合成装置。
【請求項9】
単語の読みと、前記単語の第1のアクセント規則に対応したアクセントとが関連付けられたアクセント修正辞書に基づいて、前記第2の表音文字列に含まれるアクセント修正対象を特定し、前記アクセント修正対象のアクセントを修正するアクセント修正部、
を更に備える請求項1に記載の音声合成装置。
【請求項10】
標準語言語解析部が、入力されたテキストを、標準語言語解析辞書を用いて分割することにより得られたアクセント句の読み情報およびアクセント情報を推定し、前記読み情報およびアクセント情報から、標準語アクセントによる第1の表音文字列を生成するステップと、
変換部が、前記第1の表音文字列のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、前記第1のアクセント規則に対応するアクセント情報から、前記第1のアクセント規則に対応した第2の表音文字列を生成するステップと、
音声合成部が、前記第2の表音文字列から音声を合成するステップとを含み、
前記変換部は、前記第1の表音文字列および前記第2の表音文字列のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、前記アクセント変換規則に基づいてアクセント情報を変換する、
音声合成方法。
【請求項11】
コンピュータを、
入力されたテキストを、標準語言語解析辞書を用いて分割することにより得られたアクセント句の読み情報およびアクセント情報を推定し、前記読み情報およびアクセント情報から、標準語アクセントによる第1の表音文字列を生成する標準語言語解析部と、
前記第1の表音文字列のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、前記第1のアクセント規則に対応するアクセント情報から、前記第1のアクセント規則に対応した第2の表音文字列を生成する変換部と、
前記第2の表音文字列から音声を合成する音声合成部、として機能させ、
前記変換部は、前記第1の表音文字列および前記第2の表音文字列のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、前記アクセント変換規則に基づいてアクセント情報を変換する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は音声合成装置、音声合成方法およびプログラムに関する。
【背景技術】
【0002】
テキストを入力して、テキストに対応する音声を合成するテキスト音声合成技術がある。日本語テキスト音声合成において自然な音声を合成するためには、入力テキストに対する適切なアクセント推定が必要となる。アクセント推定に用いるアクセント辞書の作成には、通常、正確にアノテーションされた豊富なテキストデータが必要となる。標準語はコーパスや辞書などの言語リソースが整備されているため、比較的アクセント辞書を作成しやすい。一方、関西弁など方言に対応した音声合成を行う場合、整備された言語リソースが少ないため、アクセント辞書の作成は容易ではない。また、標準語用の言語解析器に方言テキストを入力した場合、方言に対応した適切なアクセントは付与されず、不自然な合成音声になる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3681111号公報
【特許文献2】特開2001-75585号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明が解決しようとする課題は、標準語のアクセントとは異なるアクセントの音声合成のための高精度な言語解析およびアクセント推定を、効率的に構築することである。
【課題を解決するための手段】
【0005】
実施形態の音声合成装置は、標準語言語解析部と変換部と音声合成部とを備える。標準語言語解析部は、入力されたテキストを、標準語言語解析辞書を用いて分割することにより得られたアクセント句の読み情報およびアクセント情報を推定し、前記読み情報およびアクセント情報から、標準語アクセントによる第1の表音文字列を生成する。変換部は、前記第1の表音文字列のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、前記第1のアクセント規則に対応するアクセント情報から、前記第1のアクセント規則に対応した第2の表音文字列を生成する。音声合成部は、前記第2の表音文字列から音声を合成する。前記変換部は、前記第1の表音文字列および前記第2の表音文字列のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、前記アクセント変換規則に基づいてアクセント情報を変換する。
【図面の簡単な説明】
【0006】
【
図1】
図1は第1実施形態の音声合成装置の機能構成の例を示す図である。
【
図2】
図2は第1実施形態の変換部の機能構成の例を示す図である。
【
図3】
図3は第1実施形態の音声合成方法の例を示すフローチャートである。
【
図4】
図4は第1実施形態の学習方法の例を示すフローチャートである。
【
図5】
図5は第1実施形態の変換部の処理例を示すフローチャートである。
【
図6】
図6は第1実施形態のコンテキスト情報の例を示す図である。
【
図7】
図7は第1実施形態の表音文字列の例を示す図である。
【
図8】
図8は第1実施形態の高低アクセントの例を示す図である。
【
図9】
図9は第1実施形態のアクセントの高低情報の例を示す図である。
【
図10】
図10は第1実施形態のDNNモデルの構造の例を示す図である。
【
図11】
図11は第1実施形態の決定部によるステップS23の処理の例1(モーラ単位の場合)を示すフローチャートである。
【
図12】
図12は第1実施形態の決定部によるステップS23の処理の例2(音素単位の場合)を示すフローチャートである。
【
図13】
図13は第1実施形態の決定部によるステップS31―2の処理の例を説明するための図である。
【
図14】
図14は第1実施形態の決定部によるステップS31―2の処理の例を示すフローチャートである。
【
図15】
図15は第1実施形態の音声合成部の機能構成の例を示す図である。
【
図16】
図16は第2実施形態の音声合成装置の機能構成の例を示す図である。
【
図17】
図17は、第2実施形態の句境界修正規則の例を示す図である。
【
図18A】
図18Aは、第2実施形態の修正部の処理の例を示すフローチャートである。
【
図18B】
図18Bは、第2実施形態の修正部の処理の例を説明するための図である。
【
図19】
図19は、第2実施形態のアクセント修正辞書記憶部の単語辞書の例を示す図である。
【
図20A】
図20Aは、第2実施形態のアクセント修正部の処理の例を示すフローチャートである。
【
図20B】
図20Bは、第2実施形態のアクセント修正部の処理の例を説明するための図である。
【
図21】
図21は、第1および第2実施形態の音声合成装置のハードウェア構成の例を示す図である。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、音声合成装置、音声合成方法およびプログラムの実施形態を詳細に説明する。
【0008】
(第1実施形態)
はじめに、第1実施形態の音声合成装置1の機能構成の例について説明する。
【0009】
[音声合成装置の機能構成の例]
図1は第1実施形態の音声合成装置1の機能構成の例を示す図である。第1実施形態の音声合成装置1では、標準語言語辞書を用いた標準語言語解析部2の処理の後に、所望のアクセント規則へ変換する変換部3の処理が行われる。これにより、標準語によるアクセントから関西方言アクセントのような所望のアクセント規則へ変換され、自然なアクセントを持つテキスト音声合成が可能になる。
【0010】
具体的には、第1実施形態の音声合成装置1は、標準語言語解析部2と、変換部3と、音声合成部4と、標準語言語辞書記憶部5と、変換規則記憶部6とを備える。
【0011】
標準語言語解析部2は、標準語言語辞書記憶部5を用いて、入力テキストを分割した各アクセント句の読み情報およびアクセント情報を推定し、標準語アクセントによる第1の表音文字列を生成する。
【0012】
変換部3は、変換規則記憶部6から学習済み深層ニューラルネットワーク(Deep Neural Network:DNN)モデルを取得し、第1の表音文字列から、標準語アクセント規則とは異なる第1のアクセント規則に対応した第2の表音文字列を生成する。
【0013】
第1のアクセント規則とは、標準語のアクセント規則とは異なる規則によるアクセント規則である。例えば、第1のアクセント規則は、特定の方言(例えば、関西弁など)のアクセント、特徴的な口調の話者、または特徴的な口調のキャラクターのアクセントの規則である。特徴的な口調のキャラクターのアクセントは、例えば、「~だわん」(犬のキャラクター)や「~だにゃん」(猫のキャラクター)のような所望のキャラクター表現のための独特なアクセントを表す。
【0014】
音声合成部4は、第2の表音文字列から音声を合成する。
【0015】
標準語言語辞書記憶部5は、標準語におけるテキストの解析ルールや単語のアクセント情報を記憶する。
【0016】
変換規則記憶部6は、DNNによって学習されたアクセント変換規則を記憶する。
【0017】
ここで表音文字列とは、音を表す文字列である。例えば、表音文字列は、仮名漢字を含む入力テキストを解析して得られる、音声合成に使用される読み(発音)の情報およびアクセントの情報を含んだ所定のフォーマットの文字列である。例えば、所定のフォーマットの文字列として、JEITAの「IT-4006日本語テキスト音声合成用記号」や各音声合成システムの定める音声合成用記号を用いる事ができる。表音文字列は、読みの情報およびアクセントの情報を示すデータであれば、可読な文字列でなくても構わない。そのため、電子的なデータとして表現された入力テキストの読みおよびアクセントを示す情報も含め、本明細書では表音文字列という。
【0018】
続いて、
図2を用いて、第1実施形態の主要な構成要素である変換部3の機能構成の例について説明する。
【0019】
[変換部の機能構成の例]
図2は第1実施形態の変換部3の機能構成の例を示す図である。第1実施形態の変換部3は、推定部31および決定部32を備える。変換部3は、変換規則記憶部6を用いて表音文字列を変換する。
【0020】
変換規則記憶部6は、学習装置7で学習されたアクセント変換規則のDNNモデルを記憶する。
【0021】
学習装置7は、標準語アクセントによる表音文字列、および、第1のアクセント規則の表音文字列のペアデータを用いてDNNの学習を行い、学習済みのDNNモデルを出力する。例えば、第1のアクセント規則が関西弁のアクセント規則である場合、標準語アクセントによる表音文字列は、関西弁の文章を標準語言語解析によって推定した、アクセントの推定誤りを含む表音文字列である。この場合、第1のアクセント規則の表音文字列は、関西弁として妥当なアクセントによる表音文字列を意味する。
【0022】
すなわち、学習装置7は、標準語アクセント規則にしたがって自動推定した表音文字列と、第1のアクセント規則に従った正解データとなる表音文字列とを学習用のペアデータとして用い、DNNの学習を行う。
【0023】
アクセントの変換は推定部31と、決定部32とにより行われる。
【0024】
推定部31は、第1の表音文字列と、音の高低を定める単位に区切った単音毎のコンテキスト情報とから、単音毎のアクセントの高低情報をニューラルネットワークにより推定する。具体的には、推定部31は、変換規則記憶部6から学習済みDNNモデルを取得し、第1の表音文字列から単音毎の音の高低情報を推定する。
【0025】
決定部32は、アクセントの高低情報から、第1のアクセント規則に対応するアクセント情報を決定することによって、第1のアクセント規則に対応した第2の表音文字列を生成する。具体的には、決定部32は、単音毎の音の高低情報からアクセントを決定し、第1の表音文字列中の各アクセント句のアクセントを更新することで、第1のアクセント規則に対応した第2の表音文字列を生成する。
【0026】
図2に示すように、変換部3の構成を、推定部31および決定部32の2つに分けることにより、役割を明確にでき、モジュールの修正・変更が容易になる。また、推定部31が、単音の高低情報を出力することにより、既存のアクセント型に限定されない、柔軟な変換も可能になる。また、決定部32により、音声合成部4の入力形式に合った第2の表音文字列を生成できる。
【0027】
なお、学習装置7は、音声合成装置1内に学習部として備えられていてもよい。
【0028】
[音声合成方法の例]
図3は第1実施形態の音声合成方法の例を示すフローチャートである。はじめに、標準語言語解析部2が、テキストデータの入力を受け付ける(ステップS1)。
【0029】
次に、標準語言語解析部2は、標準語言語辞書記憶部5を用いて、ステップS1の処理によって入力されたテキストデータをアクセント句ごとに分割し、読み情報およびアクセント情報を推定し、標準語アクセントによる第1の表音文字列を生成する(ステップS2)。
【0030】
次に、変換部3が、ステップS2の処理により生成された第1の表音文字列のアクセント情報を、第1のアクセント規則に対応するアクセント情報に変換し、第1のアクセント規則の第2の表音文字列を生成する(ステップS3)。
【0031】
次に、音声合成部4が、ステップS3の処理により生成された第2の表音文字列を用いて音声を合成する(ステップS4)。
【0032】
[学習方法の例]
図4は第1実施形態の学習方法の例を示すフローチャートである。はじめに、学習装置7が、標準語アクセントによる表音文字列、および、第1のアクセント規則の表音文字列のペアデータの入力を受け付ける(ステップS11)。
【0033】
次に、学習装置7は、標準語アクセントによる表音文字列からコンテキスト情報を生成(抽出)する(ステップS12)。次に、学習装置7は、標準語アクセントによる表音文字列から単音毎のアクセント情報を推定する(ステップS13)。
【0034】
次に、学習装置7は、第1のアクセント規則の表音文字列から単音毎アクセント情報を抽出する(ステップS14)。次に、学習装置7は、単音毎アクセント情報の推定誤差によってDNNモデルを更新し、アクセント変換規則の学習を行う(ステップS15)。
【0035】
ここで、単音とは、例えば音素、モーラ又は音節など、アクセントを推定する音声の単位である。具体的には、単音は、モーラに対応したカナ文字や、音節に対応した母音および子音+母音による単位などである。
【0036】
また、コンテキスト情報は、各単音のアクセント変換の推定に用いられる情報である。例えば、コンテキスト情報は、当該単音の音韻情報、当該単音の前後の音韻情報、アクセント高低情報、アクセント句の位置、および、後続記号情報(例えば、句読点の有無、感嘆符の有無、および、疑問符の有無など)の少なくとも一つを含む。コンテキスト情報を用いることにより、前後の文脈情報から音の高低情報を推測できるようになる。
【0037】
図5は第1実施形態の変換部の処理例を示すフローチャートである。はじめに、推定部31が、標準語アクセントによる第1の表音文字列、および、音の高低を定める単位に区切られた単音毎のコンテキスト情報の入力を受け付ける(ステップS21)。
【0038】
次に、推定部31は、変換規則記憶部6から学習済みDNNモデルを取得し、単音毎の音の高低の度合いを推定する(ステップS22)。次に、決定部32が、単音毎の音の高低の度合いと、標準語アクセントによる第1の表音文字列とから、第1のアクセント規則に対応した第2の表音文字列を生成する(ステップS23)。
【0039】
図6は第1実施形態のコンテキスト情報の例を示す図である。コンテキスト情報は、例えば各単音およびその前後の音韻情報、アクセントの高低情報、アクセント句内の位置情報、並びに、後続の記号(例えば、句点、読点、感嘆符および疑問符等)を含む。推定部31の入力を、単音毎のコンテキスト情報とすることにより、従来よりも細かい情報に注目できる。
【0040】
なお、推定部31は、
図6のコンテキスト情報のうち、少なくとも1つ以上を用いてもよいし、品詞のような他の特徴量を用いてもよい。
【0041】
図7は第1実施形態の表音文字列の例を示す図である。
図7の例では、関西方言の文章である入力テキスト101の標準語アクセントによる第1の表音文字列102と、第1のアクセント規則(関西方言)に対応した第2の表音文字列103の例を示す。
【0042】
日本語のアクセントは、音の高低により表現され、
図7の表音文字列の場合、
図8で示すような1音節(「ア」や「ガ」、「キャ」など)に相当するモーラ毎の音の高低アクセントで表現される。
【0043】
図8は第1実施形態の高低アクセントの例を示す図である。高音から低音に変わる位置をアクセント核と呼び、表音文字列中に「’」で表現している。また、第2の表音文字列103のアクセント核は3モーラ目にあるのでアクセント型は3型となる。Lで低音、Hで高音を表す場合、それぞれ[H,L,L,L,L,L]、[L,H,H,L,L,L]と表される。標準語のアクセント規則では、アクセント型が1型の場合は先頭がH、それ以外の場合は先頭がLとなり、その後Hが続いてアクセント核位置で、HからLに代わる規則性がある。このため、アクセント核の位置の情報をアクセント型として、アクセントの高低の情報が分類される。
【0044】
決定部32は、推定部31で推定された単音毎のアクセント高低の高い単音から低い単音に変化する位置をアクセント核の位置として決定することにより、第1のアクセント規則に対応した第2の表音文字列を生成する。この決定部32の処理方法は、例えば東京方言を中心によく見られるアクセントルールを用いた処理方法として利用される。
【0045】
図9は第1実施形態のアクセントの高低情報の例を示す図である。
図9の例は、推定部31により出力される単音毎の音の高低の度合いを示す。ここでは例として高低の度合いを0から1の範囲で扱っており、値が1に近いほど音が高音、0に近いほど低音を示している。
【0046】
図10は第1実施形態のDNNモデルの構造の例を示す図である。
図10の例は、2層の双方向LSTMネットワークを用いて、前後のコンテキスト情報を考慮し、各単音に対して1つの値を出力する場合のモデル構造を示す。ここでは、2層の双方向LSTMネットワークから出力された値に対してシグモイド関数を用いることで、高低の度合いを示す値の範囲を0から1に制限している。
【0047】
図10の例では、DNNのモデル構造としてLSTM(Long Short Term Memory)型をベースにしたDNNモデルを使用しているが、フィードフォワード型ニューラルネットワーク、リカレント型ニューラルネットワークや畳み込みニューラルネットワーク、トランスフォーマー型ニューラルネットワークなどの任意のニューラルネットワークモデルを用いて、推定部31を構築してもよい。
図10の例では、単音毎のアクセント高低情報は、音の高低の度合いを表す連続値を用いている。この場合、0~1のような連続値とすることで、音が”高”である尤度・確率のように扱うことができる。このニューラルネットワークで推定する高低情報は、各単音の高低を推定するための情報であればよく、高低の度合いを表す連続値に限るものではない。離散シンボルの推定や、高低を数段階に分類した各クラスの確率値などを用いても良く、またピッチの値を直接推定しても構わない。
【0048】
また、
図10の例では、高低の度合いをシグモイド関数によって0から1の連続値にしているが、シグモイド関数以外の任意の変換を用いても良い。
【0049】
図11は、決定部32のステップS23の処理の例1(モーラ単位の場合)を示すフローチャートである。推定部31の出力が、
図9に示すアクセントの高低情報である場合を例にして説明する。まず、決定部32が、アクセントの高低情報(単音毎の音の高低の度合い)と、第1の表音文字列102の入力を受け付ける(ステップS31)。
【0050】
次に、決定部32は、高低の度合い[0.1,0.7,0.8,0.4,0.1,0.1]を、高低アクセントラベル[L,H,H,L,L,L]に変換する(ステップS32)。なお、
図11の例では、高低度合いが0.5以上を高音(H)とし、それ以外の場合を低音(L)としている。
【0051】
次に、決定部32は、当該アクセント句内に高低アクセントラベルがHからLに変化した部分が1か所以上存在するか否かを判定する(ステップS33)。
【0052】
HからLに変化した部分が1か所以上存在する場合(ステップS33,Yes)、決定部32は、変化箇所に基づいてアクセント型を決定する(ステップS34)。ここで、変化点が、複数個所に見つかった場合は、ここでは、決定部32は、最初に見つかった変化個所をアクセント核位置として定める。
図11の例では、決定部32は、3モーラ目が変化点となっているので3番目をアクセント核とし、アクセント型を3型に決定する。
【0053】
なお、HからLに変化した部分が存在しない場合(ステップS33,No)、決定部32は、アクセント型を0型に決定する(ステップS35)。
【0054】
最後に、決定部32は、第1の表音文字列102のアクセントを更新することによって、第2の表音文字列103のアクセントを決定する(ステップS36,
図7参照)。
【0055】
なお、
図11の例では、単音の単位の例として、モーラ単位を挙げているが、音素を単音の単位として用いてもよい。
【0056】
図12は第1実施形態の決定部32によるステップS23の処理の例2(音素単位の場合)を示すフローチャートである。
図12の例では、単音毎の音の高低の度合いの長さの単位を、第1の表音文字列102に合わせるステップS31-2の処理が追加されている。
【0057】
図13は第1実施形態の決定部S31―2によるステップS31の処理の例を説明するための図である。
図13の例は、第1の表音文字列102のモーラ単位(
図13の点線による区切り)の単音、および、音素単位(
図13下段)の単音を示す。
図13の例のように、通常、第1の表音文字列102はモーラ単位を単音単位としているので、音素とは単音単位が異なる。そのため、
図12のフローチャートの例では、単位を合わせる処理(ステップS31-2)が必要となる。
【0058】
図14は第1実施形態の決定部32によるステップS31―2の処理の例を示すフローチャートである。はじめに、決定部32が、単音104毎の音の高低の度合いおよび第1の表音文字列102の入力を受け付ける(ステップS41)。次に、決定部32は、
図13の例のように単音104毎の音の高低の度合いと、第1の表音文字列102とのマッチングを行う(ステップS42)。
【0059】
次に、決定部32は、第1の表音文字列102の各文字に対応する高低の度合いの平均値を算出することで、第1の表音文字列102の各文字に対応する高低の度合いを算出する(ステップS43)。例えば、
図13の1文字目の高低の度合いは、単音nの高低の度合い、および、単音aの高低の度合いの平均値により算出される。
【0060】
なお、
図14のステップS43の例では、平均値を算出することで、音素単位の単音毎の音の高低度合いと第1の表音文字列の単位を合わせているが、例えば最大値を算出するなど任意の手法を用いて良い。
【0061】
また、
図11および12の例では、高低度合いが、高低アクセントラベルへ変換され、アクセント核およびアクセント型が決定されているが、他のアクセント決定方法が用いられてもよい。例えば、音の高低度合いの変化が最も大きい箇所をアクセント核にする方法が用いられてもよい。また例えば、アクセント核を用いない他のアクセント決定手法が用いられても良い。
【0062】
[音声合成部の機能構成の例]
図15は第1実施形態の音声合成部4の機能構成の例を示す図である。第1実施形態の音声合成部4は、表音文字列解析部41、韻律生成部42および波形生成部43を備える。
【0063】
音声合成部4は、変換部3により生成された第2の表音文字列103に基づいて音声を合成する。音声合成処理は大きく、表音文字列解析部41、韻律生成部42および波形生成部43に分けられる。
【0064】
表音文字列解析部41は、入力された第2の表音文字列103を解釈し、韻律生成および波形生成に用いられるコンテキスト情報を生成する。
【0065】
韻律生成部42は、表音文字列解析部41により得られたコンテキスト情報から、音声単位ごとの音の長さ(継続長)および高さ(抑揚)などの韻律情報を生成する。これにより、第2の表音文字列103に従った第1のアクセント規則に基づく韻律が生成される。
【0066】
波形生成部43は、韻律生成部42により生成された韻律およびコンテキスト情報に従って、音声波形を生成し、合成音声を出力する。波形生成部43は、音声合成に用いる声の特徴を表す音声合成データとして、関西弁などの第1のアクセント規則に基づいた話者の録音音声から作成したデータを用いることもできる。これにより、第1のアクセント規則に対応した自然な合成音声を得る事ができる。
【0067】
以上、説明したように、第1実施形態の音声合成装置1では、標準語言語解析部2が、入力されたテキストを、標準語言語解析辞書5を用いて分割することにより得られたアクセント句の読み情報およびアクセント情報を推定し、読み情報およびアクセント情報から、標準語アクセントによる第1の表音文字列102を生成する。変換部3が、第1の表音文字列102のアクセント句のアクセント情報を、標準語アクセント規則とは異なる第1のアクセント規則に対応するアクセント情報に変換し、第1のアクセント規則に対応するアクセント情報から、第1のアクセント規則に対応した第2の表音文字列103を生成する。そして、音声合成部4が、第2の表音文字列103から音声を合成する。上記変換部3は、第1の表音文字列102および第2の表音文字列103のペアデータから学習されたニューラルネットワークを、アクセント変換規則として保持し、アクセント変換規則に基づいてアクセント情報を変換する。
【0068】
これにより第1実施形態の音声合成装置1によれば、標準語のアクセントとは異なるアクセントの音声合成のための高精度な言語解析およびアクセント推定を、効率的に構築することができる。
【0069】
例えば、アクセント変換規則は、標準語アクセントによる第1の表音文字列102、および、標準語アクセントとは異なる第1のアクセント規則の第2の表音文字列103のペアデータを用いて学習され、前後の文脈情報が考慮されたDNNモデルによって生成される。生成されたアクセント変換規則によるアクセント変換が、標準語言語解析辞書5を用いてテキストデータ101を解析した結果に適用されることで、語彙を網羅する大量の言語リソース等を必要とせずに第1のアクセント規則に従った音声を合成することが可能となる。
【0070】
第1実施形態の音声合成装置1では、方言に特化した言語解析をする場合に比べて比較的少量の正解例から学習されたDNNによるアクセス変換規則を用いて標準語の言語解析器の解析結果を変換する事により、方言アクセントを推定することができる。すなわち、第1実施形態の音声合成装置1によれば、ニューラルネットワークを用いた変換部3により、自動的にアクセント変換規則を作成することが可能になる。また、標準語言語解析部2および変換部3の組み合わせにより、既存の言語リソースに基づく言語解析処理を利用できる。
【0071】
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0072】
[音声合成装置の機能構成の例]
図16は第2実施形態の音声合成装置1-2の機能構成の例を示す図である。第2実施形態の音声合成装置1-2では、第1実施形態の音声合成装置1の構成に更に境界修正部8と、アクセント修正部9と、句境界修正規則記憶部10と、アクセント修正辞書記憶部11と、が追加されている。これにより第2実施形態では、標準語言語解析部2での解析誤りや変換部3での変換誤りを修正できるようになる。
【0073】
境界修正部8は、第1の表音文字列に含まれるアクセント句の境界を修正する。境界修正部8は、アクセント句の境界を修正する規則に基づいて、第1の表音文字列に含まれるアクセント句の境界を修正した修正表音文字列を生成し、修正表音文字列を、変換部3に入力する。具体的には、境界修正部8は、句境界修正規則記憶部10から句境界修正規則を取得し、標準語アクセントによる第1の表音文字列102のアクセント句境界を修正する。
【0074】
第2実施形態では、新たに境界修正部8を追加することで、推定誤りを減らし、句境界推定誤りによる影響を緩和できる。境界修正部8を備えることにより、アクセント句境界推定の誤りを減らしたり、ユーザの意図した制御が可能になる。
【0075】
アクセント修正部9は、単語の読みと、単語の第1のアクセント規則に対応したアクセントとが関連付けられたアクセント修正辞書に基づいて、第2の表音文字列に含まれるアクセント修正対象を特定し、アクセント修正対象のアクセントを修正する。具体的には、アクセント修正部9は、アクセント修正辞書として使用される単語辞書を単語辞書記憶部11から取得し、変換部3から出力された第2の表音文字列103のアクセントを修正する。
【0076】
第2実施形態では、アクセント修正部9を追加することで、アクセント変換制御がより容易になる。
【0077】
句境界修正規則記憶部10は、句境界の修正対象の文字列と、句境界の修正後の文字列とが関連付けられた句境界修正規則を記憶する。
【0078】
アクセント修正辞書記憶部11は、アクセントを修正する対象となる単語と修正後の単語とを記憶する。
【0079】
図17は、第2実施形態の句境界修正規則の例を示す図である。「ホン ナラ」「ヤ ロ」と誤って分割された句境界を、「ホンナラ」「ヤロ」とつなげて修正する例を示している。
図18Aは、第2実施形態の境界修正部8の処理の例を示すフローチャートである。
図18Bは、第2実施形態の境界修正部8の処理の例を説明するための図である。
図17~18Bの例では、入力されたテキストデータ101が標準語言語解析部2によって解析され、第1の表音文字列102が出力された場合を考える。この場合、まず、境界修正部8は、第1の表音文字列102の入力を受け付ける(ステップS51)。
【0080】
次に、修正部8は、句境界修正規則記憶部10から修正対象105及び106(
図17参照)を含む修正対象文字列リストを取得する(ステップS52)。次に、境界修正部8は、修正対象文字列リストから修正対象105を取得し、当該リストから修正対象105を削除する(ステップS53)。
【0081】
次に、境界修正部8は、第1の表音文字列101中に修正対象105が含まれることを確認する(ステップS54,Yes)。
【0082】
次に、境界修正部8は、第1の表音文字列102中の修正対象105を仮置きシンボル「#Symbol1#」に置換する(ステップS55)。同様にして、境界修正部8は、修正中の表音文字列107中の修正対象106を仮置きシンボル「#Symbol2#」に置換することにより、修正中の表音文字列108が得られる。
【0083】
そして、境界修正部8は、修正対象文字列リストが空であることを確認すると(ステップS56,Yes)、仮置きシンボルを修正後の文字列(
図17参照)に置換することによって(ステップS57)、句境界が修正された修正表音文字列109を出力する。
【0084】
図19は、第2実施形態のアクセント修正辞書記憶部11の単語辞書の例を示す図である。
図20Aは、第2実施形態のアクセント修正部9の処理の例を示すフローチャートである。
図20Bは、第2実施形態のアクセント修正部9の処理の例を説明するための図である。
【0085】
まず、アクセント修正部9は、第1のアクセント規則の第2の表音文字列103(
図20B参照)の入力を受け付ける(ステップS61)。次に、アクセント修正部9は、アクセント修正辞書記憶部11から修正対象110を含む修正対象文字列リストを取得する(ステップS62)。
【0086】
次に、アクセント修正部9は、修正対象文字列リストから修正対象110を取得し、当該リストから修正対象110を削除する(ステップS63)。次に、アクセント修正部9は、第2の表音文字列103中に修正対象110が含まれることを確認する(ステップS64)。次に、アクセント修正部9は、第2の表音文字列103中の修正対象110を仮置きシンボル「#Symbol1#」に置換する(ステップS65)。
【0087】
そして、アクセント修正部9は、修正対象文字列リストが空であることを確認すると(ステップS66,Yes)、仮置きシンボルを修正後の文字列(
図19参照)に置換することによって(ステップS67)、アクセントが修正された修正表音文字列112を出力する。
【0088】
以上、説明したように、第2実施形態の音声合成装置1-2によれば、標準語言語解析部2で生じる句境界推定誤りを境界修正部8によって修正でき、変換部3で生じるアクセント推定誤りをアクセント修正部9によって修正することが可能となる。
【0089】
最後に、第1および第2実施形態の音声合成装置1(1-2)のハードウェア構成の例について説明する。第1および第2実施形態の音声合成装置1(1-2)は、例えば、任意のコンピュータ装置を基本ハードウェアとして用いることで実現できる。
【0090】
[ハードウェア構成の例]
図21は、第1および第2実施形態の音声合成装置1(1-2)のハードウェア構成の例を示す図である。第1および第2実施形態の音声合成装置1(1-2)は、プロセッサ201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205および通信装置206を備える。プロセッサ201、主記憶装置202、補助記憶装置203、表示装置204、入力装置205および通信装置206は、バス210を介して接続されている。
【0091】
なお、音声合成装置1(1-2)は、上記構成の一部が備えられていなくてもよい。例えば、音声合成装置1(1-2)が、外部の装置の入力機能および表示機能を利用可能な場合、音声合成装置1(1-2)に表示装置204および入力装置205が備えられていなくてもよい。
【0092】
プロセッサ201は、補助記憶装置203から主記憶装置202に読み出されたプログラムを実行する。主記憶装置202は、ROMおよびRAM等のメモリである。補助記憶装置203は、HDD(Hard Disk Drive)およびメモリカード等である。
【0093】
表示装置204は、例えば液晶ディスプレイ等である。入力装置205は、音声合成装置1(1-2)を操作するためのインタフェースである。なお、表示装置204および入力装置205は、表示機能と入力機能とを有するタッチパネル等により実現されていてもよい。通信装置206は、他の装置と通信するためのインタフェースである。
【0094】
例えば、音声合成装置1(1-2)で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルで、メモリカード、ハードディスク、CD-RW、CD-ROM、CD-R、DVD-RAMおよびDVD-R等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
【0095】
また例えば、音声合成装置1(1-2)で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【0096】
また例えば、音声合成装置1(1-2)で実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。具体的には、例えばASP(Application Service Provider)型のクラウドサービスによって、リスク評価処理を実行する構成としてもよい。
【0097】
また例えば、音声合成装置1(1-2)のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0098】
音声合成装置1(1-2)で実行されるプログラムは、上述の機能構成のうち、プログラムによっても実現可能な機能を含むモジュール構成となっている。当該各機能は、実際のハードウェアとしては、プロセッサ201が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置202上にロードされる。すなわち上記各機能ブロックは主記憶装置202上に生成される。
【0099】
なお上述した各機能の一部又は全部をソフトウェアにより実現せずに、IC(Integrated Circuit)等のハードウェアにより実現してもよい。
【0100】
また複数のプロセッサ201を用いて各機能を実現してもよく、その場合、各プロセッサ201は、各機能のうち1つを実現してもよいし、各機能のうち2以上を実現してもよい。
【0101】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0102】
1 音声合成装置
2 標準語言語解析部
3 変換部
4 音声合成部
5 標準語言語辞書記憶部
6 変換規則記憶部
7 学習装置
8 境界修正部
9 アクセント修正部
10 句境界修正規則記憶部
11 アクセント修正辞書記憶部
31 推定部
32 決定部
41 表音文字列解析部
42 韻律生成部
43 波形生成部
201 プロセッサ
202 主記憶装置
203 補助記憶装置
204 表示装置
205 入力装置
206 通信装置
210 バス