(57)【要約】【課題】本発明の目的は、音声合成サービスを利用するユーザが合成音声に対してどのような修正ができるかを容易に知ることができる技術を提供することである。【解決手段】音声合成システムは、読み上げテキストを受け取り、前記読み上げテキストを読み上げた合成音声を出力する。当該音声合成システムは、前記合成音声を生成した際の情報に基づいて、前記合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成する修正候補情報生成処理部を備える。【選択図】図１
2015118222.tif 000002
【特許請求の範囲】
【請求項１】
読み上げテキストを受け取り、前記読み上げテキストを読み上げた合成音声を出力する音声合成システムであって、
前記合成音声を生成した際の情報に基づいて、前記合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成する修正候補情報生成処理部を備えることを特徴とする音声合成システム。
【請求項２】
請求項１に記載の音声合成システムにおいて、
前記修正候補情報生成処理部は、
前記合成音声の読みを生成する読み生成処理における修正情報である読み修正候補情報を生成する読み修正候補情報生成処理部と、
前記合成音声の韻律を生成する韻律生成処理における修正情報である韻律修正候補情報を生成する韻律修正候補情報生成処理部と、
前記合成音声の波形を生成する波形生成処理における修正情報である波形修正候補情報を生成する波形修正候補情報生成処理部と、
の少なくとも１つを備えることを特徴とする音声合成システム。
【請求項３】
請求項２に記載の音声合成システムにおいて、
前記読み修正候補情報生成処理部は、
前記合成音声内の単語の読みに関する修正情報である単語読み修正情報を生成する単語読み修正候補情報生成処理部と、
前記合成音声の区切り位置に関する修正情報である区切り修正候補情報を生成する区切り修正候補情報生成処理部と、
前記合成音声のアクセント結合の位置に関する修正情報である結合修正候補情報を生成する結合修正候補情報生成処理部と
の少なくとも１つを備えることを特徴とする音声合成システム。
【請求項４】
請求項２に記載の音声合成システムにおいて、
前記韻律修正候補情報生成処理部は、
前記合成音声の音素継続長に関する修正情報である継続長修正候補情報を生成する継続長修正候補情報生成処理部と、
前記合成音声の音素基本周波数に関する修正情報である基本周波数修正候補情報を生成する基本周波数修正候補情報生成処理部と、
前記合成音声の部分の音の高さのパターンに関する修正情報である高さ修正候補情報を生成する高さ修正候補情報生成処理部と、
前記合成音声の部分の話速に関する修正情報である話速修正候補情報を生成する話速修正候補情報生成処理部と、
の少なくとも１つを備えることを特徴とする音声合成システム。
【請求項５】
請求項２に記載の音声合成システムにおいて、
前記波形修正候補情報生成処理部は、前記合成音声で使用された素片に関する修正情報である素片修正候補情報を生成する素片修正候補情報生成処理部を備えることを特徴とする音声合成システム。
【請求項６】
請求項１に記載の音声合成システムにおいて、
前記合成音声の改善情報である改善指示情報に基づいて前記合成音声を更新する改善データ作成処理部を更に備えることを特徴とする音声合成システム。
【請求項７】
請求項６に記載の音声合成システムにおいて、
前記合成音声を生成するための音声合成データを格納する音声合成データ格納装置と、
前記改善指示情報に基づいて前記音声合成データ格納装置における前記音声合成データを更新する改善データ反映処理部と、
を更に備えることを特徴とする音声合成システム。
【請求項８】
請求項１に記載の音声合成システムにおいて、
ユーザに対して提供されるサービスに関する情報を格納するユーザ情報データベースと、
前記サービスに関する情報に基づいて前記修正候補情報の内容を修正するサービス内容修正部と、
を更に備えることを特徴とする音声合成システム。
【請求項９】
請求項１に記載の音声合成システムにおいて、
前記修正候補情報は、前記読み上げテキストのデータに対して、前記修正可能な箇所と前記修正候補の内容を示すタグを追加した情報であることを特徴とする音声合成システム。
【請求項１０】
請求項９に記載の音声合成システムにおいて、
前記修正候補情報は、前記修正可能な箇所毎に識別子を含むことを特徴とする音声合成システム。
【請求項１１】
請求項１に記載の音声合成システムにおいて、
前記修正候補情報生成処理部を備え、前記合成音声及び前記修正候補情報を送信するサーバ装置と、
前記サーバ装置から前記合成音声及び前記修正候補情報を受け取るクライアント装置と、
を備えることを特徴とする音声合成システム。
【請求項１２】
請求項１１に記載の音声合成システムにおいて、
前記クライアント装置は、前記修正候補情報から選択された改善情報に関する改善指示情報を作成する改善指示リクエスト作成部を備え、
前記サーバ装置は、前記改善指示情報に基づいて前記合成音声を更新する改善データ作成処理部を備えることを特徴とする音声合成システム。
【請求項１３】
請求項１１に記載の音声合成システムにおいて、
前記クライアント装置は、
前記修正候補情報を表示装置に表示するための修正候補リスト提示部と、
前記表示装置に表示された前記修正候補情報から選択された改善情報を受け取る改善要求対象指示部と、
を更に備えることを特徴とする音声合成システム。
【請求項１４】
入力された読み上げテキストを読み上げた合成音声を生成する第１ステップと、
前記合成音声を生成した際の情報に基づいて、前記合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成する第２ステップと、
を備えることを特徴とする音声合成方法。
【請求項１５】
請求項１４に記載の音声合成方法において、
前記第２ステップは、
前記合成音声の読みを生成する読み生成処理における修正情報である読み修正候補情報を生成するステップと、
前記合成音声の韻律を生成する韻律生成処理における修正情報である韻律修正候補情報を生成するステップと、
前記合成音声の波形を生成する波形生成処理における修正情報である波形修正候補情報を生成するステップと、
の少なくとも１つを含むことを特徴とする音声合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声合成システム及び音声合成方法に関する。
【背景技術】
【０００２】
従来より、テキストを音声に変換して読み上げるテキスト音声合成技術、およびそれを利用したテキスト音声合成システムがある。このような技術の応用先として、例えば、カーナビゲーションでのガイド音声、携帯電話・スマートフォンでのメール読み上げや音声対話インタフェース、視覚障害者向けのスクリーンリーダー、電子書籍の読み上げ機能などが存在する。
【０００３】
このようなシステムにおいて、音声合成処理は、合成音声を再生するＰＣ（Personal Computer）などで行われる場合が多かったが、近年、Ｗｅｂ技術を組み合わせることで、サーバを利用した音声合成サービスの事業化が進んでいる。この音声合成サービスでは、読み上げテキストをサーバに送信すると、サーバが、変換結果の合成音声データを返送する。このようなＷｅｂベースでの音声合成変換処理（サービス）を実現することにより、多くの音声合成変換要求への対応が容易になったり、多くのユーザに対してサービスを同時に提供することが容易になる。通常、音声合成サービスでは、読み上げテキストを送り、変換された合成音声を受け取るという１回のやりとりでサービスは完了する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１０８３７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
音声合成処理は、単語の読みや抑揚の決定を自動的に行っているため、読み誤りや抑揚・アクセントが不自然になる箇所が存在することは避けられない。そのため、従来の音声合成プログラムには、ユーザが気づいた誤りや不自然な箇所を修正して再度、音声合成する仕組みを持つものがある。例えば、特許文献１には、ユーザからの音声による改善指示を音声認識し、それに基づいて合成音声データを修正する技術が開示されている。
【０００６】
音声合成サービスでは、通常、サーバ側とクライアント側に分かれており、音声合成処理はサーバ側で行い、クライアント側のユーザは通常、返された合成音声を聞くことだけしかできない。しかし、上記のように解析誤りなどの結果、読みや抑揚が不自然になった場合でも、クライアント側は合成音声に対してどのような修正が可能なのか分からないため、クライアント側で誤りや不自然な箇所を修正する機能を持たせることができない。
【０００７】
本発明の目的は、音声合成サービスを利用するユーザが合成音声に対してどのような修正ができるかを容易に知ることができる技術を提供することである。
【課題を解決するための手段】
【０００８】
本発明者らは、合成音声を生成した際の情報に基づいて、合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成することにより、上記課題が解決できることを見出した。
【０００９】
上記課題を解決する為に、例えば特許請求の範囲に記載の構成を採用する。本願は上記課題を解決する手段を複数含んでいるが、その一例をあげるならば、読み上げテキストを受け取り、前記読み上げテキストを読み上げた合成音声を出力する音声合成システムであって、前記合成音声を生成した際の情報に基づいて、前記合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成する修正候補情報生成処理部を備える音声合成システムが提供される。
【００１０】
また、他の例によれば、入力された読み上げテキストを読み上げた合成音声を生成する第１ステップと、前記合成音声を生成した際の情報に基づいて、前記合成音声における修正可能な箇所と修正候補の内容を示す修正候補情報を生成する第２ステップと、を備える音声合成方法が提供される。
【発明の効果】
【００１１】
本発明によれば、音声合成処理の結果として変換結果の合成音声とともに、その合成音声に対する修正可能箇所および修正可能内容を受け取ることが可能となる。したがって、音声合成サービスを利用するユーザが合成音声に対してどのような修正ができるかを容易に知ることができる。
【００１２】
本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、上記した以外の、課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１３】
【図１】本発明における音声合成システムの基本構成を説明する図である。
【図２Ａ】音声合成システムの基本構成における読み生成処理部および読み修正候補情報生成処理部の内部処理を説明する図である。
【図２Ｂ】音声合成システムの基本構成における韻律修正候補情報生成処理部の内部処理を説明する図である。
【図３】音声合成システムの基本構成における読み選択処理部および単語読み修正候補情報生成処理部の内部処理を説明する図である。
【図４】単語ネットワーク情報のデータ例である。
【図５】最適単語列選択処理の出力データ例である。
【図６】単語統合処理の出力データ例である。
【図７】最適形態素列のデータ例である。
【図８】音声合成システムの基本構成における単語読み修正候補情報生成処理のフローチャートである。
【図９】単語読み修正候補情報のデータ例である。
【図１０】区切り決定処理の出力データ例である。
【図１１】区切り決定処理の出力データ例である。
【図１２】区切り修正候補情報のデータ例である。
【図１３】結合決定処理の出力データ例である。
【図１４】結合修正候補情報のデータ例である。
【図１５】読み修正候補情報のデータ例である。
【図１６Ａ】通常の音声合成要求時の音声合成システムの処理構成を示す図である。
【図１６Ｂ】修正及び改善指示要求時の音声合成システムの処理構成を示す図である。
【図１７】第１実施例の音声合成サービスのＩＤ付きメタ情報のデータ例である。
【図１８Ａ】第２実施例におけるサーバ側システムの構成を示す図である。
【図１８Ｂ】第２実施例におけるクライアント側システムの構成を示す図である。
【図１９】ユーザ情報データベースのデータ例である。
【図２０】英語テキストに対して出力された読み修正候補情報のデータ例である。
【図２１】図２０のデータがサービス内容修正部によって修正された後のデータ例である。
【図２２】修正候補情報の出力データ例である。
【図２３】クライアント側システムにおいて表示される画面例である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施例について説明する。なお、添付図面は本発明の原理に則った具体的な実施例を示しているが、これらは本発明の理解のためのものであり、決して本発明を限定的に解釈するために用いられるものではない。
【００１５】
まず本発明における音声合成システムの基本構成を説明する。図１は、本発明における音声合成システムの基本構成を説明する図である。この音声合成システムは、読み上げテキストを受け取り、その読み上げテキストを読み上げた合成音声を出力するものである。音声合成システムの以下で説明する具体的な構成は、実施例の機能を実現するソフトウェアのプログラムコードで実現してもよい。すなわち、音声合成システムの基本構成は、所定のプログラムがプログラムコードとしてメモリに格納され、中央演算処理装置が各プログラムコードを実行することによって実現できる。
【００１６】
また、以後の説明では、本実施例において扱われる情報について「テーブル」構造を用いて説明するが、これら情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、ＤＢ、キュー等のデータ構造やそれ以外で表現されていても良い。そのため、データ構造に依存しないことを示すために、以下では各種データを単に「情報」と呼ぶことがある。
【００１７】
本基本構成では、従来の音声合成処理を拡張することで、合成音声とともに修正候補情報の生成を可能にする。音声合成システムは、読み生成処理部１０２と、韻律生成処理部１０３と、波形生成処理部１０４とを備える。読み上げテキスト１０１が入力されると、読み生成処理部１０２により、形態素解析処理や読み分け処理、区切り位置決定処理などのテキスト解析処理が行われて、読み上げテキストの読み・アクセントなどが決定される。続いて、韻律生成処理部１０３により、それぞれの音節の継続時間長や基本周波数、パワーなどが決定される。最後に、波形生成処理部１０４により、合成音声波形データが生成され、読み上げ音声１０５として出力される。これら読み生成処理部１０２、韻律生成処理部１０３、波形生成処理部１０４の実現方法は様々な公知文献によって開示されているため、ここでは説明しない。
【００１８】
本実施例では、上述した従来の音声合成システムに対して、読み修正候補情報生成処理部１０６と、韻律修正候補情報生成処理部１０７と、波形修正候補情報生成処理部１０８と、修正候補情報統合処理部１０９とを追加する。読み修正候補情報生成処理部１０６は、合成音声の読みを生成する読み生成処理における修正情報である読み修正候補情報を生成する。また、韻律修正候補情報生成処理部１０７は、合成音声の韻律を生成する韻律生成処理における修正情報である韻律修正候補情報を生成する。また、波形修正候補情報生成処理部１０８は、合成音声の波形を生成する波形生成処理における修正情報である波形修正候補情報を生成する。これらの処理部により、合成音声における修正しうる箇所と修正候補の内容を示す修正候補情報１１０を読み上げ音声１０５に加えて出力できることが本発明の特徴となる。
【００１９】
以下では、読み修正候補情報生成処理部１０６、韻律修正候補情報生成処理部１０７、波形修正候補情報生成処理部１０８、および修正候補情報統合処理部１０９の処理の実施例について説明する。図２Ａは、読み生成処理部１０２、および読み修正候補情報生成処理部１０６の内部処理を説明するものである。
【００２０】
読み生成処理部１０２は、大きく分けて、単語分割処理部２０２と、読み選択処理部２０３と、区切り決定処理部２０４と、結合決定処理部２０５とから構成される。これらは音声合成処理における読み生成処理で必要な最低限の構成要素であるが、実施例によってはこれに加えて、係り受け解析処理などの他の構成要素が追加される場合もある。これらの追加構成要素があったとしても、本実施例での説明の一般性は失われない。また、単語分割処理部２０２、読み選択処理部２０３、区切り決定処理部２０４、結合決定処理部２０５の実現方法は様々な公知文献によって開示されているため、ここでは説明しない。
【００２１】
読み修正候補情報生成処理部１０６は、単語読み修正候補情報生成処理部２０７と、区切り修正候補情報生成処理部２０８と、結合修正候補情報生成処理部２１１と、読み修正候補情報統合処理部２０９とから構成される。単語読み修正候補情報生成処理部２０７は、合成音声内の単語の読みに関する修正情報である単語読み修正情報を生成する。また、区切り修正候補情報生成処理部２０８は、合成音声の区切り位置に関する修正情報である区切り修正候補情報を生成する。また、結合修正候補情報生成処理部２１１は、合成音声のアクセント結合の位置に関する修正情報である結合修正候補情報を生成する。
【００２２】
本実施例では、読み選択処理部２０３、区切り決定処理部２０４、結合決定処理部２０５のそれぞれに、単語読み修正候補情報生成処理部２０７、区切り修正候補情報生成処理部２０８、及び、結合修正候補情報生成処理部２１１が追加される。読み修正候補情報統合処理部２０９は、単語読み修正候補情報生成処理部２０７、区切り修正候補情報生成処理部２０８、及び、結合修正候補情報生成処理部２１１からの出力結果を統合することにより、読み修正候補情報２１０を出力する。
【００２３】
図３は、読み選択処理部２０３、および単語読み修正候補情報生成処理部２０７の内部処理を説明するものである。読み選択処理部２０３は、大きく分けて、最適単語列選択処理部３０２と、単語統合処理部３０３と、読み分け処理部３０４とから構成される。音声合成システムに入力された読み上げテキスト２０１は、単語分割処理部２０２によって単語ネットワーク情報３０１に変換される。この処理は一般的な形態素解析と呼ばれるものであり、様々な公知文献でアルゴリズムは開示されているため、ここでは説明しない。この単語ネットワーク情報３０１は、一般には単語ラティス（lattice）と呼ばれるリンク構造が制限されたネットワーク構造となる。図４は、単語ネットワーク情報３０１の例を示す。図４では、「今日は晴れです。」という文章の表記に部分一致する全ての単語を辞書から抜き出し、単語の候補を列挙したラティス構造が示されている。
【００２４】
読み選択処理部２０３に単語ネットワーク情報３０１が入力されると、まず最適単語列選択処理部３０２によって、単語ネットワーク情報の中から最適単語列が決定される。最適単語列とは、単語ネットワーク情報３０１のあらゆる単語の組み合わせの中から最も日本語として適した単語の組み合わせとなりうる単語列のことである。図５は、図４の単語ネットワーク情報に対する最適単語列の例を示す。図５において、「文頭」から開始して「文末」で終了するまでに、矢印でリンクされた単語列が、最適単語列である。この最適単語列の決定処理は、単語やリンクのコストや、単語やリンクの出現確率を算出し、最もコスト和が小さい、または最も出現確率の積が大きい単語の組み合わせを探索する処理で実現される。この処理も様々な文献で開示されている公知の技術である。
【００２５】
続く単語統合処理部３０３では、形態素候補として統合しうるものをまとめる処理を行う。「統合しうるもの」とは、同じ位置から始まる同じ長さの単語であって、品詞としても交換可能なものを指す。例えば、図５の例で、文字列「今日」に関して、「キョウ（kyou）」いう読み方の単語候補５０１と「コンニチ（konnichi）」という読み方の単語候補５０２の二つの読み方の単語候補が出力されている。このうち、「キョウ（kyou）」の単語候補５０１の方が、より適切な読み方として最適単語候補列として出力されるが、「コンニチ（konnichi）」の単語候補５０２の方が正しい読み方の場合もある。これらの二つの単語は同じ位置から始まる同じ長さの単語であり、ともに名詞であるため、形態素候補として同等である。よってこれら二つの単語は統合しうる候補である。単語統合処理部３０３は、図５に示される最適単語列に対して形態素候補を統合し、図６に示す単語列に変換する。図６では、文字列「今日」に「キョウ（kyou）」いう読み方と「コンニチ（konnichi）」という読み方が関連付けられている。
【００２６】
続く読み分け処理部３０４では、最適単語列の中で複数の読みを持つ単語の中から最も適切な読みを決定する。この処理では、例えば、ある単語とある単語が共起しやすいという情報を集めた共起確率データベースなどの情報を用いて、複数の読みの中から適切なものを決定する。図６の例の場合、「今日（キョウ：kyou）」という単語と「晴れ（ハレ：hare）」という単語が共起しやすいという情報が共起確率データベースの中に存在することで、「キョウ（kyou）」の方の読みが選択されるという処理が行われる。以上の処理により、読み選択処理部２０３の出力として、読み方までが決定された単語分割結果である、最適形態素列（図７）が得られる。
【００２７】
以上で説明した処理は、従来の読み選択処理部２０３の処理の流れであるが、本実施例では図３の単語読み修正候補情報生成処理部３０６を追加していることを特徴とする。図３の単語読み修正候補情報生成処理部３０６は、図２Ａの単語読み修正候補情報生成処理部２０７に対応するものである。単語読み修正候補情報生成処理部３０６では、単語統合処理部３０３から出力された複数の読みを持つ最適単語列情報、及び、読み分け処理部３０４で決定された最も適切な読み情報を用いて、単語の読みに関する単語読み修正候補情報３０７を生成する処理を行う。
【００２８】
以下、図８を用いて単語読み修正候補情報生成処理部３０６の処理フローを説明する。単語読み修正候補情報生成処理部３０６には、単語統合処理部３０３から出力された統合された最適単語列情報（図６）および読み分け処理部３０４から出力された最適単語列情報（図７）が入力される。
【００２９】
処理がスタート（Ｓ８０１）すると、初期化処理（Ｓ８０２）の後、ｉ番目の単語情報があるかを判定する（Ｓ８０３）。ｉ番目の単語情報がある場合、ｉ番目の単語情報を取得する（Ｓ８０４）。例えば、図６及び図７の例であれば、１番目の単語は「今日」となる。なお、ｉ番目の単語情報がない場合は、文字列Ｓをそのまま出力する（Ｓ８０９）。
【００３０】
ｉ番目の単語情報を取得した（Ｓ８０４）後、この単語に複数の読みが設定されているかどうかを統合された最適単語列情報をもとに判定する（Ｓ８０５）。複数の読みがなければ、ステップＳ８０７にて単語の表記文字列をそのまま変数ｓに追加して、ｉを増分して次のループ処理へ移動する（Ｓ８０８）。一方、複数の読みがある場合は、単語読み修正候補指定タグの追加処理が行われる（Ｓ８０６）。図６の例の場合、１番目の単語「今日」には「キョウ」と「コンニチ」という二つの読みが存在している。よって、単語「今日」に対しては、ステップＳ８０６において単語読み修正候補指定タグが追加される。単語読み修正候補指定タグが追加された後、ｉを増分して次のループ処理へ移動する（Ｓ８０８）。
【００３１】
単語読み修正候補指定タグとしては様々な形態が考えられるが、例えば、＜ＷＯＲＤ  ＹＯＭＩ＝”キョウ（kyou）”  ＯＴＨＥＲ＝”コンニチ（konnichi）”＞今日＜／ＷＯＲＤ＞のような形態が一例となりえる。このタグは、文字列「今日」に対して「キョウ（kyou）」という読みが決定されており、他の読み候補として「コンニチ（konnichi）」があることを示している。図９は、単語読み修正候補情報生成処理部３０６の処理の結果として出力される単語読み修正候補情報３０７の例である。この文字列形態は、一つの実施例に過ぎず、他にも表形式やリスト形式など様々な形式で表現することも可能である。
【００３２】
読み選択処理部２０３に続いて、区切り決定処理部２０４において処理が実行される。この区切り決定処理部２０４では、読み上げテキストにおいて、どこで間（ポーズ）を置くかが決定される。ここでの区切り決定アルゴリズムには様々な手法がありえるが、公知文献にて開示されている手法も多いので、ここでは説明を行わない。例えば、文字列「、」（読点）がある箇所でのみ区切りを挿入する方法、またはそれに加えて特定の品詞（例えば係助詞「は」など）の後ろに区切りを挿入する方法などがある。これは、日本語の場合の例であるが、区切りの決定は、他の言語の場合でも当然ながら可能であり、その文法や表現に合わせて行えばよい。
【００３３】
ここでは、区切り決定処理部２０４によって、区切り位置候補およびそこでの区切り挿入確率が出力されたとする。この区切り位置候補、および区切り挿入確率の表現形態の一例を図１０に示す。区切り決定処理部２０４では、図１０のような区切り位置候補情報をもとにして、読み指定中間表現における区切り位置の決定処理を行い、それを出力する。区切り位置の決定処理では、例えば、区切り挿入確率が所定のしきい値以上である箇所を区切り位置として決定することができる。図１１は、読み指定中間表現における区切り位置の出力例である。
【００３４】
以上で説明した処理は従来の区切り決定処理部２０４の処理の流れであるが、本実施例では図２Ａの区切り修正候補情報生成処理部２０８を追加していることを特徴とする。この区切り修正候補情報生成処理部２０８は、図１０に示すような区切り位置候補情報、および区切り決定処理部２０４から出力された区切り位置情報（図１１）を用いて、区切り位置候補への区切り修正候補タグを入力テキストに対して追加する。その処理フローは、図８に示す単語読み修正候補タグの挿入処理フローと同様であるため、説明を省略する。この処理の結果、例えば図１２に示すような文字列情報が出力される。ここで、ＰＲＯＢ属性は内部で計算された区切り挿入確率を示し、ＭＯＤＥ属性は合成音声において実際に区切りが出力されたかどうかを示す。したがって、図１２の例では、「今日は」の後に、区切りが「有」と判定され、その区切り挿入確率が「０．８」であることが示されている。同様に、図１２では、「晴れ」の後に、区切りが「無」と判定され、その区切り挿入確率が「０．２」であることが示されている。
【００３５】
区切り決定処理部２０４に続いて、結合決定処理部２０５において処理が実行される。ここでの処理は、日本語におけるアクセント結合が生じるかどうかを判定し、それに基づいてアクセント位置の移動を行う。「アクセント結合」とは、例えば、「音声（オ’ンセー）」と「合成（ゴーセー）」という二つの単語（それぞれアクセント型は１型と０型）が連続して「音声合成」という文字列で現れた場合に、元のアクセント位置のまま、「オ’ンセー  ゴーセー」と発音されるのではなく、「オンセーゴ’ーセー」とアクセント位置が移動する現象を指す。このアクセント結合に関する処理も従来の音声合成処理で行われているものであり、様々な公知文献でその処理形態は開示されている。アクセント結合は二つのアクセント句の間で生じ、生じた場合にはその結果はアクセント結合規則から予測可能なものである。そのため、結合決定処理部２０５は、アクセント句それぞれについて、その後ろのアクセント句と結合するかどうかのフラグ情報を判定する。
【００３６】
以上で説明した処理は従来の結合決定処理部２０５の流れであるが、本実施例では図２Ａの結合修正候補情報生成処理部２１１を追加していることを特徴とする。この結合修正候補情報生成処理部２１１は、図１３に示すようなアクセント句結合フラグ情報を用いて、アクセント結合候補箇所へのアクセント結合候補タグを入力テキストに対して追加する。図１３は、結合決定処理部２０５において決定された判定結果の例を示す。図１３では、各アクセント句について、アクセント結合フラグ１３０１及びアクセント結合候補箇所フラグ１３０２が関連付けられている。アクセント結合フラグ１３０１は、結合決定処理部２０５において決定されたアクセント結合が起きる箇所を示すフラグであり、アクセント結合候補箇所フラグ１３０２は、アクセント結合が起きるうる候補を示すフラグである。アクセント句「音声」の箇所は、アクセント結合が起きると判定され、アクセント句「高品質」及び「音声」の箇所は、アクセント結合が起きるうる候補として判定されている。
【００３７】
また、結合修正候補情報生成処理部２１１の処理フローは、図８に示す単語読み修正候補タグの挿入処理フローと同様であるため、説明は省略する。この処理の結果、例えば図１４に示すような文字列情報が出力される。ここで、この「ＡＣＣ」タグが追加された箇所はアクセント結合しうる候補の箇所であり、そのうちＭＯＤＥ属性が「ＯＮ」の箇所は合成音声において実際にアクセント結合した箇所を示す。
【００３８】
単語読み修正候補情報生成処理部２０７、区切り修正候補情報生成処理部２０８、および結合修正候補情報生成処理部２１１からそれぞれ出力情報が出されると、それらは読み修正候補情報統合処理部２０９に入力される。読み修正候補情報統合処理部２０９は、それら出力された３つのタグ付き文字列の統合処理を実行する。以上の３つの処理から出力されたタグ付き文字列は、同じ入力文字列に対してタグ情報の追加がされたものである。そのため、読み修正候補情報統合処理部２０９では、同じ一つの入力文字列に対して上記３つのタグ情報をすべて埋め込む統合処理を実施する。この統合処理の目的は、タグ付き文字列の受け手（音声合成サービスのユーザ）側でタグ付き文字列の解析処理を容易にするためであり、冗長性に問題がなければ統合処理は必須ではない。
【００３９】
この統合処理では開始タグと終了タグが入れ子構造になるようにしなければならない。読み生成処理の結果、タグが埋め込まれる位置はほぼ単語（形態素）単位であるため、単語単位に設定される開始・終了タグが入れ子構造にできない／ならない場合はほとんどない。そのような場合でのタグの統合処理は、スタックを用いた簡単なタグ対応付けを考慮するだけで実現できる。図１５は、読み修正候補情報統合処理部２０９から出力された読み修正候補情報の例を示す。
【００４０】
以上のようにして、本実施例による音声合成システムでは、読み上げテキストが入力されると、合成音声に加えて、修正可能箇所および修正可能候補を記述したメタ情報を出力する。これにより、このメタ情報を受け取った利用者側のシステムでは、この情報を解析することにより、ユーザによる修正の指示が可能になる。また、利用者側のシステムが、自動的に修正候補を本音声合成システムに通知することで、別のタイプの合成音声を取得してユーザに提示することが可能となる。
【００４１】
また上記の説明では、図１の読み生成処理部１０２からの情報を用いた読み修正候補情報の生成方法について詳細を述べたが、韻律生成処理部１０３や波形生成処理部１０４でも同様の処理が可能である。韻律生成処理部１０３や波形生成処理部１０４では、音声合成における内部情報を決定している。例えば韻律生成処理部１０３では、読み上げテキストの各部分（文やフレーズ（呼気段落）やアクセント句や単語など）に対する音の高さ（ピッチ）のパターン、話速、音素基本周波数、音素継続長などを決定している。韻律修正候補情報生成処理部１０７は、これらの情報について韻律修正候補を出力することができる。
【００４２】
図２Ｂは、韻律生成処理部１０３、および韻律修正候補情報生成処理部１０７の内部処理を説明するものである。韻律修正候補情報生成処理部１０７は、継続長修正候補情報生成処理部２２１と、基本周波数修正候補情報生成処理部２２２と、高さ修正候補情報生成処理部２２３と、話速修正候補情報生成処理部２２４と、韻律修正候補情報統合処理部２２５とを備える。
【００４３】
継続長修正候補情報生成処理部２２１は、合成音声の音素継続長に関する修正情報である継続長修正候補情報を生成する。また、基本周波数修正候補情報生成処理部２２２は、合成音声の音素基本周波数に関する修正情報である基本周波数修正候補情報を生成する。また、高さ修正候補情報生成処理部２２３は、合成音声の部分の音の高さのパターンに関する修正情報である高さ修正候補情報を生成する。さらに、話速修正候補情報生成処理部２２４は、合成音声の部分の話速に関する修正情報である話速修正候補情報を生成する。韻律修正候補情報統合処理部２２５は、これらの処理部２２１〜２２４から出力された修正候補情報を統合し、韻律修正候補情報２２６を出力する。
【００４４】
韻律修正候補情報生成処理部１０７は、読み上げテキストに対して、例えばＰＩＴＣＨタグやＳＰＥＥＤタグを追加することにより、韻律修正候補情報２２６を示すことができる。図２２の例では、読み上げテキストの各部分に対する音の高さ（ピッチ）のパターンの修正候補がＰＩＴＣＨタグとして示され、読み上げテキストの各部分に対する話速の修正候補がＳＰＥＥＤタグとして示されている。
【００４５】
また、波形生成処理部１０４では、合成音声で使用される素片（音声部品）が決定される。波形修正候補情報生成処理部１０８は、合成音声で使用された素片に関する修正情報である素片修正候補情報を生成する。例えば、波形修正候補情報生成処理部１０８は、音声合成処理で実際に使用された音声部品データのＩＤを示した上で、代わりに使用することもできた別の音声部品データＩＤを列挙するなどすることで波形修正候補情報を出力することもできる。
【００４６】
図２２は、最終的に修正候補情報統合処理部１０９から出力された修正候補情報１１０の例を示す。修正候補情報統合処理部１０９は、読み修正候補情報生成処理部１０６と、韻律修正候補情報生成処理部１０７と、波形修正候補情報生成処理部１０８とから出力された情報を統合する。
【００４７】
［第１実施例］
第１実施例では、図１の基本構成を用いて、音声合成結果に対する修正及び改善指示要求を受け付ける音声合成システムについて説明する。本実施例では、本発明の基本構成を用いたサーバ・クライアント構成での音声合成サービスを想定する。サーバ側は本発明の音声合成手法を用いた音声合成装置を構成し、この音声合成装置は、クライアント（ユーザ）側から要求された読み上げテキストに対して、合成音声を生成してそれを送信するサービスを行う。この時、本発明の基本構成で生成される読み上げテキストのメタ情報を用いることで、クライアント側に対して、生成された合成音声に対して、どのような修正・改善が可能かを示すことができる。
【００４８】
クライアント側では、受信したメタ情報をもとにして、クライアント側システム、またはユーザによる修正及び改善指示要求を作成し、それをサーバ側システムへと返送する。サーバ側システムでは、その修正及び改善指示要求を処理することにより、クライアント側が意図した箇所を意図したように修正された合成音声を再度生成して、クライアント側にそれを返送することができる。また、サーバ側システムでは、その修正及び改善指示の内容が、次回以降の音声合成処理でも反映されるように、音声合成用データや音声合成用パラメータの内容を更新することができる。
【００４９】
以上の処理により、第１実施例では、サーバ・クライアント構成での音声合成サービスにおいて、クライアント側が指示した修正及び改善指示を反映して、修正された合成音声を生成できるとともに、その修正及び改善指示の内容を今後の音声合成処理にも反映できる音声合成サービスを実現することができる。
【００５０】
以下、図１６Ａ及び図１６Ｂを用いて、本実施列の構成について説明する。図１６Ａ及び図１６Ｂは、本実施例のサーバ側システム（音声合成サーバシステム）の構成について説明する図である。音声合成サーバシステムは、通常の音声合成要求時と、修正及び改善指示要求時とで処理内容が異なる。
【００５１】
図１６Ａは、通常の音声合成要求時の処理構成を示す。音声合成サーバシステムは、音声合成用の構成要素として、音声合成コンテキスト生成処理部１６０２と、音声合成データ格納装置１６１０と、コンテキスト格納装置１６１１と、メタ情報付き音声合成処理部１６０３と、解析単位別ＩＤ設定処理部１６０５と、サービス応答生成処理部１６０８とを備える。
【００５２】
以下、読み上げテキストが入力されて合成音声およびそのメタ情報を含んだサービス応答が返送されるまでの処理の流れを説明する。まず、ユーザからのサービス要求情報内の読み上げテキスト１６０１が入力されると、音声合成コンテキスト生成処理部１６０２によって処理が実行される。音声合成コンテキスト生成処理部１６０２は、音声合成要求を行ったユーザ（クライアント）が設定している音声合成パラメータを図示しないデータベースから取り出して、音声合成コンテキスト情報を生成する。生成された音声合成コンテキスト情報はコンテキスト格納装置１６１１に格納される。ユーザの判定は、ユーザＩＤをもとに行うことができる。このユーザＩＤは、読み上げテキスト１６０１が格納されていたサービス要求情報の中に埋め込まれている場合が多い。
【００５３】
ここで、ユーザごとの音声合成パラメータが格納されているデータベースは、通常のリレーショナルデータベースをそのまま用いることができる。このデータベースに格納される情報には、キー情報としてのユーザＩＤ、合成音声の話者ＩＤ、音声話速、音声高さ、音量などが含まれる。さらには、音声合成システムによっては、記号を読む／読まないという指定や、数字列の桁読み／棒読みという区別をパラメータとして指定できるものもあり、このような音声合成システムを用いている場合は、これらのパラメータもユーザごとに取得される音声合成パラメータの要素となる。また、別の音声合成システムでは読み上げテキストの文脈を判定して読み方や抑揚などを変更できるものも存在する。例えば、ある文章Ａが単独で読み上げられる場合の読み方・抑揚と、同じ文章Ａが別の文章Ｂの後で読み上げられる場合の読み方・抑揚とが異なることがある。このような音声合成システムの場合では、現時点の文脈を特定するための情報を出力できる。音声合成コンテキスト生成処理部１６０２は、このような文脈特定情報も併せて音声合成用パラメータとして出力してもよい。
【００５４】
音声合成コンテキスト生成処理部１６０２は、さらに、今回の音声合成要求を特定するための音声合成要求ＩＤ情報を生成する。音声合成サーバシステムは複数のユーザに対して同時にサービス提供しているため、この情報をもとにしてどのユーザに対していつ生成した合成音声かを識別する必要がある。この処理については特別な構成は必要ない。音声合成サーバシステムが、音声合成要求を受けたときに一意のシーケンス番号を各合成音声に付与すればよい。こうして、音声合成コンテキスト生成処理部１６０２は、ユーザＩＤをもとにして、今回の合成音声を特定するための音声合成要求ＩＤ、および音声合成パラメータセットを生成して、それらをコンテキスト格納装置１６１１に格納する。
【００５５】
続いて、読み上げテキスト１６０１は、メタ情報付き音声合成処理部１６０３に入力される。メタ情報付き音声合成処理部１６０３は、図１の基本構成で説明したメタ情報付き音声合成処理を実装したものである。この処理の結果、読み上げテキストを読み上げた合成音声１６０６、および、読み上げ文の解析結果である文解析メタ情報１６０４が出力される。合成音声１６０６は、図１で説明した読み上げ音声１０５に相当する。また、文解析メタ情報１６０４は、図１で説明した修正候補情報１１０に相当する。ここでの処理は基本構成ですでに説明しているので省略する。
【００５６】
なお、メタ情報付き音声合成処理部１６０３は、音声合成データ格納装置１６１０から音声合成データを取得して、メタ情報付き音声合成処理を実行する。この音声合成データには、読み生成処理部１０２が利用する辞書データ、韻律生成処理部１０３が利用する韻律データ、波形生成処理部１０４が利用する波形データなどが少なくとも含まれている。
【００５７】
文解析メタ情報１６０４は、続いて解析単位別ＩＤ設定処理部１６０５に入力される。解析単位別ＩＤ設定処理部１６０５は、基本構成で説明した文解析メタ情報に対して、解析単位別にＩＤ（識別子）を設定する処理を行う。ここで言う解析単位とは、読み上げテキスト１６０１を構成する文、文を構成するフレーズ（ポーズ間の一息で読まれる単位）、フレーズを構成するアクセント句（一つのアクセント核を持つ抑揚の単位）、アクセント句を構成する単語（形態素）、文中に含まれるポーズなどを指す。このように読み上げテキスト１６０１を構成する様々な単位にＩＤを付加しておくことで、クライアント側からの修正及び改善指示要求がどの箇所に対するものなのかを特定しやすくする。この解析単位別ＩＤの付与方法としては、例えば音声合成要求ＩＤに対して解析単位ごとのＩＤを順番に付加して生成する方法などが考えられる。
【００５８】
図１７は、図１５の読み修正候補情報に対して解析単位別ＩＤを付与した結果を示す。読み修正候補情報に限らず、韻律修正候補情報や波形修正候補情報、それらを統合した修正候補情報１１０の全体に対しても同様の方法で解析単位別ＩＤを付与することができる。解析単位別ＩＤ設定処理部１６０５は、この解析単位別ＩＤが付与された修正候補情報をＩＤ付きメタ情報１６０７として出力する。なお、メタ情報１６０７は、コンテキスト格納装置１６１１に格納されてもよい。
【００５９】
最後に、サービス応答生成処理部１６０８は、合成音声１６０６とＩＤ付きメタ情報１６０７を用いて、音声合成サービス要求に対するサービス応答情報１６０９を生成する。このサービス応答情報はＨＴＴＰプロトコルのレスポンス情報などに対応する。レスポンス情報の主となるデータとして合成音声データを設定し、ＩＤ付きメタ情報はレスポンス情報のヘッダ属性値として設定するなどすればここでのサービス応答情報を実現できる。
【００６０】
以上の流れにより、本実施例の音声合成サーバシステムは、読み上げテキスト１６０１が入力されると、その音声合成要求を特定して再現するためのパラメータセットをコンテキスト格納装置１６１１に保存した上で、テキストを読み上げた合成音声１６０６と、その合成音声に対する修正可能候補箇所及び修正可能候補内容を示すＩＤ付きメタ情報１６０７を出力することができる。
【００６１】
続いて、本実施例の音声合成サーバシステムがユーザからの修正及び改善指示要求に対して処理する流れについて説明する。図１６Ｂは、修正及び改善指示要求時の処理構成を示す。音声合成サーバシステムは、修正及び改善指示要求用の構成要素として、改善指示解釈処理部１６５２と、音声合成コンテキスト選択処理部１６５４と、コンテキスト格納装置１６１１と、メタ情報付き音声合成処理部１６０３と、音声合成データ格納装置１６１０と、改善箇所決定処理部１６６０と、改善データ反映処理部１６５９と、改善データ作成処理部１６６１と、サービス応答生成処理部１６０８とを備える。図１６Ｂにおいて、図１６Ａと同じ符号が付された構成要素については同様の機能を備える。
【００６２】
本実施例の音声合成サーバシステムに、クライアント側から修正及び改善指示要求が送信されると、まずそこから改善指示情報１６５１および対象ＩＤ１６５３が分離される。修正及び改善指示要求情報の構成方法としては、ＨＴＴＰプロトコルのリクエスト情報のフォーマットなどが可能である。ここで、修正及び改善対象を指定する対象ＩＤ１６５３として、音声合成要求時に渡された解析単位別ＩＤを含むことができる。また改善指示情報１６５１としては、同じく音声合成時に渡された修正候補情報の中に記述されている修正候補の中から、ユーザ（クライアント）側が望む修正結果を指定する情報を含むことができる。分離された改善指示情報１６５１は、改善指示解釈処理部１６５２に入力され、一方、対象ＩＤ１６５３は音声合成コンテキスト選択処理部１６５４に入力される。
【００６３】
音声合成コンテキスト選択処理部１６５４は、対象ＩＤ１６５３をもとに、コンテキスト格納装置１６１１から音声合成コンテキスト情報を取り出す。その合成音声が生成された際の音声合成要求ＩＤは、対象ＩＤ１６５３から取り出すことができる。簡単には上述のように音声合成要求ＩＤに解析単位ＩＤが付加される形でこの対象ＩＤ１６５３が生成されている場合には、その音声合成要求ＩＤの部分だけを対象ＩＤ１６５３から取り出せばよい。また、別の構成方法（例えば、変換テーブル）で音声合成要求ＩＤと対象ＩＤが対応づけられている場合には、その変換テーブルを参照することにより、音声合成要求ＩＤを取り出すことができる。こうして対象ＩＤ１６５３から取り出された音声合成要求ＩＤをキー情報としてコンテキスト格納装置１６１１を検索することで、この合成音声が生成された際の様々な音声合成パラメータ、または文脈情報も含むパラメータ情報を取得することができる。こうして取り出された音声合成パラメータセット（コンテキスト情報）はメタ情報付き音声合成処理部１６０３に出力される。
【００６４】
メタ情報付き音声合成処理部１６０３は、図１の基本構成で説明したメタ情報付き音声合成処理を実装したものである。ここで行われる音声合成処理は、今回の修正及び改善対象となっている読み上げテキストを前回音声合成した際（つまり、この修正及び改善指示要求の対象となっている合成音声を作成した際）の音声合成処理を再度繰り返すことである。その結果、前回出力されたもの（すなわち、図１６Ａの文解析メタ情報１６０４）と同一の合成音声１６５７および文解析メタ情報１６５８が出力されることになる。この実施例では、修正及び改善要求時に再度、前回の音声合成処理を繰り返して文解析メタ情報１６５８を生成することとしているが、もちろん、前回生成した際に文解析メタ情報１６５８を音声合成要求ＩＤと関連づけてデータベースに格納しておくという方法をとってもよい。この場合は、対象ＩＤ１６５３から音声合成要求ＩＤが分離された後に、このデータベースを参照することで文解析メタ情報１６５８を取得することができる。
【００６５】
メタ情報付き音声合成処理部１６０３は、音声合成データ格納装置１６１０に格納されている音声合成データを参照する。図１６Ａでの構成と同様に、この音声合成データには、読み生成処理部１０２が利用する辞書データ、韻律生成処理部１０３が利用する韻律データ、波形生成処理部１０４が利用する波形データなどが少なくとも含まれている。メタ情報付き音声合成処理部１６０３は、これらの情報を用いて合成音声１６５７を出力することができる。
【００６６】
こうして出力された文解析メタ情報１６５８は、改善箇所決定処理部１６６０へ入力される。改善箇所決定処理部１６６０は、文解析メタ情報１６５８および対象ＩＤ１６５３を基に、ユーザ（クライアント）側がどの箇所に対する修正及び改善指示をしているかを判定する。対象ＩＤ１６５３として前回音声合成した際の文解析メタ情報内に記述されている解析単位ＩＤを用いていれば、今回の文解析メタ情報１６５８内でその解析単位ＩＤを検索するだけで改善箇所を決定することができる。
【００６７】
改善指示解釈処理部１６５２は、改善指示情報１６５１を解釈し、ユーザ（クライアント）側からの読み修正情報、韻律修正情報、波形修正情報の少なくとも１つの修正及び改善情報を抽出する。改善指示解釈処理部１６５２から出力された修正及び改善情報、および改善箇所決定処理部１６６０から出力された改善箇所情報（解析単位ＩＤ）は、改善データ作成処理部１６６１に入力される。
【００６８】
改善データ作成処理部１６６１は、指定された箇所の音声合成結果が指定された改善指示になるように、合成音声を更新し、サービス応答生成処理部１６０８に出力する。サービス応答生成処理部１６０８は、更新された合成音声とＩＤ付きメタ情報を用いて、修正及び改善指示要求に対するサービス応答情報１６０９を生成する。
【００６９】
また、改善データ作成処理部１６６１は、指定された箇所の音声合成結果が指定された改善指示になるように、元となる音声合成データの内容を更新するための情報を生成する。ここで生成された情報をもとに、改善データ反映処理部１６５９は、音声合成データ格納装置１６１０に格納されている音声合成用データの中から更新対象のデータを取り出し、そのデータに対して指定された更新処理を実施する。以上により、ユーザから指定された修正及び改善指示要求に対して、その箇所及び内容を決定し、その修正及び改善を実施するための音声合成データの更新が実現される。
【００７０】
［第２実施例］
第２実施例では、本発明の基本構成および第１実施例に記載の構成を用いて、音声合成結果に対する修正及び改善指示要求を受け付ける音声合成サービスについて説明する。
【００７１】
本実施例では、第１実施例と同様のサーバ・クライアント構成での音声サービスを想定する。さらに本実施例では、第１実施例のシステムをベースとして、ユーザレベルによって提供するサービス内容（修正可能な箇所の制限など）を変更したり、日本語以外の外国語の音声合成に適用したりした場合についても説明を行う。さらに、クライアント側システムにおいて、合成音声の修正可能箇所のＧＵＩ表示を行ったり、そのＧＵＩ表示を用いてユーザから合成音声の修正及び改善指示をサーバに送信したりするための機能についても説明を行う。
【００７２】
図１８Ａは、第２実施例におけるサーバ側システムの構成を示す図である。図１８Ｂは、第２実施例におけるクライアント側システムの構成を示す図である。本実施例の全体システムは、サーバ側システムとクライアント側システムで構成される。サーバ側システムは、音声合成サービスを提供する事業者側が稼働及び運用しているシステムであり、クライアント側システムは、上記音声合成サービスの提供を受けるユーザが用いるシステム（プログラム）となる。これらのシステムは、図１８Ａ及び図１８Ｂに記載されていないネットワークを介して相互に接続されている。
【００７３】
また、サーバ側システムとクライアント側システムは、例えば、パーソナルコンピュータやワークステーションなどの情報処理装置によって構成される。各システムは、中央演算処理装置と、補助記憶装置と、主記憶装置と、出力装置と、入力装置とを備えている。例えば、中央演算処理装置は、ＣＰＵ（Central Processing Unit）などのプロセッサ（又は演算装置ともいう）で構成されている。また、例えば、補助記憶装置はハードディスクであり、主記憶装置はメモリであり、出力装置はディスプレイやスピーカなどであり、入力装置はキーボード及びポインティングデバイス（マウスなど）である。本発明で使用される各種データは、情報処理装置の記憶装置に格納される。
【００７４】
サーバ側システムは、ユーザ情報取得部１８０２と、音声合成選択部１８０３と、ユーザ情報データベース１８０４と、音声合成データ・データベース１８０６と、サービス内容修正部１８０７と、第１実施例で説明した修正及び改善指示要求を受け付ける音声合成システム１８０５とを備える。
【００７５】
サーバ側システムは、まず、クライアント側システムから読み上げリクエスト情報１８０１を受け取る。この読み上げリクエスト情報１８０１は、例えばＨＴＴＰなどのネットワークプロトコルを用いた音声合成サービス要求情報である。この情報の中には、少なくとも音声合成したい読み上げテキスト情報とサービスを受けるユーザを識別するためのユーザ情報が格納されている。また、改善指示要求フェーズなどの場合では、この読み上げリクエスト情報の中に第１実施例で説明した改善指示情報などの情報が格納されることもある。
【００７６】
ユーザ情報取得部１８０２は、読み上げリクエスト情報１８０１の中からユーザ情報を分離する。ユーザ情報取得部１８０２は、そのユーザ情報をユーザ情報データベース１８０４で検索することにより、そのユーザに対してどのようなサービス内容が許可されているかを知ることができる。
【００７７】
音声合成選択部１８０３は、そのユーザ情報をもとに、利用可能な音声合成手段を決定する。例えば、音声合成手段として日本語音声合成手段、英語音声合成手段のように言語に応じた音声合成手段のセットが利用可能な場合、ユーザ情報を調べることで英語の音声合成サービスが許可されていないユーザには英語テキスト読み上げリクエストに対してはエラー応答をすることが可能となる。音声合成選択部１８０３は、ユーザごとに設定されている利用可能な音声合成サービス情報を参照することで、そのユーザが利用できる音声合成手段を選択する、またはエラー応答を返す機能を備える。
【００７８】
音声合成選択部１８０３は、音声合成データ・データベース１８０６の中から、その読み上げリクエストに対して必要な音声合成データであり、かつそのユーザが利用可能なデータを選択する。そのデータを音声合成システム１８０５が利用することにより、読み上げリクエストに対して適切なデータであり、かつユーザが利用可能なデータが適切に選択されることになる。この実施例では、さまざまな音声合成データを切り替えることで同一の音声合成システム１８０５で様々な音声合成サービス（例えば、日本語、英語、中国語などの言語の異なる音声合成、またはアナウンサ調、会話調などの発話スタイルの異なる音声合成など）を提供できるように記載しているが、場合によっては音声合成データを切り替えるだけでなく、音声合成システム１８０５で実行される音声合成プログラムそのものも切り替えないといけない場合もありえる。その場合は、音声合成データ・データベース１８０６に加えて、音声合成プログラムデータベースを新たに設けて、音声合成選択部１８０３によって音声合成プログラム自体も切り替える手法を採用してもよい。
【００７９】
音声合成システム１８０５は、第１実施例（図１６Ａ及び図１６Ｂ）で説明した機能を有する音声合成システムである。音声合成システム１８０５は、読み上げリクエスト情報１８０１で指定された読み上げテキストから、利用可能な音声合成用データを使って合成音声へと変換する。同時に、音声合成システム１８０５は、合成音声における修正しうる箇所と修正候補の内容を示す修正候補情報であるＩＤ付きメタ情報を生成する。
【００８０】
最後にサービス内容修正部１８０７は、音声合成システム１８０５で生成されたＩＤ付きメタ情報から、このユーザに提供が許可されていない修正候補情報を削除する処理を行う。例えば、あるユーザには単語の読みやアクセント等の変更修正のみを許可し、抑揚・リズムなどの韻律変更修正を許可しない設定の場合、音声合成システム１８０５が出力したＩＤ付きメタ情報から韻律に関わる修正候補情報を削除する。これにより、そのユーザに対して許可されている修正情報のみを提供するサービスが可能となる。なお、ユーザに対して許可されている修正に関する情報は、ユーザ情報データベース１８０４に格納されている。
【００８１】
図１８Ｂに示すように、クライアント側システムは、修正候補リスト提示部１８５２と、改善要求対象指示部１８５５と、改善指示リクエスト作成部１８５７とを備える。修正候補リスト提示部１８５２は、提示デバイスであるディスプレイ装置１８５３及びスピーカ装置１８５４への出力を行う。また、改善要求対象指示部１８５５は、指示デバイスであるマウスまたはキーボード１８５６からの入力を受け取る。
【００８２】
クライアント側システムでは、まずクライアント側システムからサーバ側システムに対して、新たな読み上げテキストの音声合成処理要求が発行される。ただし、この最初の音声合成要求処理は本発明において特異な部分ではないため、図１８Ａ及び図１８Ｂでは省略している。図１８Ａでは、最初の音声合成処理要求が発行され、その読み上げリクエストに対してサーバ側システムからサービス応答情報１８５１が返された際の処理の流れを示している。
【００８３】
ある読み上げリクエストに対するサービス応答情報１８５１が返されると、修正候補リスト提示部１８５２は、その応答情報に含まれる合成音声およびＩＤ付きメタ情報を取り出し、ユーザに対して修正箇所が提示される。修正箇所をＧＵＩによって視覚的に提示するためにはディスプレイ装置１８５３が使用され、読み上げテキストの合成音声全体の確認や修正箇所部分の音声確認や修正箇所の修正結果の音声確認にはスピーカ装置１８５４が使用される。この修正候補リスト提示部１８５２の詳細については後で説明を行う。
【００８４】
修正候補リスト提示部１８５２、ディスプレイ装置１８５３、およびスピーカ装置１８５４によって、読み上げテキストに対する音声合成結果、または修正及び改善指示要求を行った後の修正結果がＧＵＩや音声によって提示される。この際、クライアント側システムを使用しているユーザは、そのＧＵＩを通じて、読み上げ合成音声に対する修正及び改善指示要求を出せるようになる。ユーザは、マウス、キーボード１８５６などの入力装置によって、ＧＵＩ上において、読み上げテキストのどの部分に対してどのような修正及び改善指示要求を行うかを指定する。改善要求対象指示部１８５５は、入力装置からの情報を解析し、読み上げテキストのどの部分に対してどのような修正及び改善要求が指示されたかを決定する。最後に、改善指示リクエスト作成部１８５７は、ユーザが指示した読み上げテキスト位置に対する修正及び改善要求をもとに、サーバ側システムに送信する修正及び改善指示要求リクエストを作成する。
【００８５】
次にサーバ側システムおよびクライアント側システムのそれぞれについて、各構成要素の技術の実施例についてより詳細に説明する。
【００８６】
ユーザ情報取得部１８０２は、読み上げリクエスト情報１８０１からユーザ情報を分離する。このユーザ情報は、ユーザを識別する情報であり、ユーザＩＤなどの情報を意味する。読み上げリクエスト情報１８０１がＨＴＴＰリクエストなどのプロトコルで送信される場合、ユーザ情報はＨＴＴＰプロトコルのヘッダ情報として、またはＨＴＴＰリクエストの本体部分情報に、本システム独自のフォーマットで埋め込まれている。ユーザ情報取得部１８０２は、ユーザ情報取得部１８０２で分離されたユーザ情報を用いて、ユーザ情報データベース１８０４を検索し、そのユーザに対して許可されているサービス内容を取得する。
【００８７】
図１９は、ユーザ情報データベース１８０４の内容の例を示す。ユーザ情報データベース１８０４には、少なくともユーザを識別するためのユーザＩＤ、および、そのユーザに対して許可されているサービス情報が格納されている。許可されているサービス情報としては、取得できる情報（読み、韻律、波形など、処理部から出力される個々のタグ情報）や改善要求を出すことができるかなどの情報を少なくとも含む。また、多言語音声合成を対象とするシステムの場合には、許可されているサービス情報として、さらに利用可能な読み上げ言語などの情報も含まれる。したがって、図１９に示すように、ユーザ情報データベース１８０４は、ユーザＩＤ１９０１と、利用できる言語１９０２と、取得できる情報１９０３と、改善要求の可否１９０４とを、構成項目として少なくとも含んでもよい。
【００８８】
例えば、図１９の例において、ユーザＩＤ「１２３４５６７」のユーザに対しては、「日本語」と「英語」の読み上げサービスが提供可能であり、日本語に対しては読み（ＷＯＲＤ、ＡＣＣ、ＰＡＵＳＥタグ）と韻律（ＰＩＴＣＨ、ＳＰＥＥＤタグ）の情報の取得、およびそれらへの改善指示要求が可能であることが示されている。一方、英語のサービスに対しては読み（ＰＡＵＳＥ）の情報のみの提供であり、それに対する改善指示要求を受け付けることはできない。ユーザ情報データベース１８０４で検索された情報は、音声合成選択部１８０３、音声合成データ・データベース１８０６、およびサービス内容修正部１８０７に渡されて、適切な情報の選択や削除などが行われる。
【００８９】
音声合成選択部１８０３は、ユーザ情報データベース１８０４で検索された、ユーザに許可されている読み上げ言語情報をもとに、音声合成手段の選択を行う。音声合成手段の選択処理は、言語ごとに音声合成プログラムと音声合成データが異なる場合、音声合成プログラムは共通で音声合成データのみが異なる場合などがありえる。たとえ後者だとしても、音声合成プログラムに対して読み上げテキストの言語を指定する必要はある。同じアルファベットを用いたテキストだとしても、言語を特定することが不可能な場合は多いためである。
【００９０】
図１８Ａの実施例では、音声合成選択部１８０３は、読み上げテキストの言語情報のみを音声合成システム１８０５に渡す構成をとっている。つまり、音声合成プログラムである音声合成システム１８０５は、読み上げ言語によらず同一のものを利用できるという想定である。
【００９１】
一方、音声合成プログラムが言語ごとに異なる場合は、音声合成選択部１８０３によって適切な音声合成プログラムが選択され、音声合成システム１８０５においてそのプログラムが実行されることとなる。この場合は、音声合成選択部１８０３に加えて、言語ごとの音声合成プログラムを格納した音声合成プログラムデータベースが存在し、その中から適切なプログラムが選択され、プログラム実行手段であるところの音声合成システム１８０５でそのプログラムが実行されるという構成となる。
【００９２】
本実施例では、音声合成選択部１８０３からは読み上げテキストの言語のみが出力される場合を想定する。読み上げテキストの言語を特定する手法としては、読み上げリクエスト情報１８０１に属性値として言語情報を指定することが一般的である。音声合成選択部１８０３は、その属性値を読み上げリクエストから分離して後段へと出力する。
【００９３】
また、別の実施例としては、音声合成選択部１８０３が、言語情報だけではなく、発話スタイルなどの情報を取得し、その情報を音声合成システム１８０５、または音声合成データ・データベース１８０６に出力する構成も考えられる。例えば、朗読調や話し言葉調などによって音声合成プログラムや音声合成データが異なる場合には、音声合成選択部１８０３で発話スタイル情報を取得して、プログラムとデータを切り替えることが必要となる。このような場合でも、読み上げリクエスト情報１８０１内に記述された発話スタイル情報を抽出して音声合成システム１８０５や音声合成データ・データベース１８０６に渡すことで対応することが可能となる。
【００９４】
音声合成データ・データベース１８０６は、音声合成システム１８０５が利用する複数の音声合成用データを格納している。上述のように、日本語音声合成用データや英語音声合成用データのような言語ごとのデータ、および、日本語朗読調データや日本語話し言葉調データのように発話スタイルごとのデータなどが格納されており、音声合成選択部１８０３で取得された情報により、実際の処理で利用される音声合成データが検索及び出力されることになる。また、音声合成データ・データベース１８０６には、音声合成システム１８０５において使用される辞書データ、韻律データ、および波形データなども格納されている。
【００９５】
音声合成システム１８０５は、基本構成または第１実施例で説明した音声合成手段である。その詳細説明は省略するが、上述のように複数の言語に対して処理することが可能である。読み生成処理において、読みとアクセントという情報が日本語固有の情報であるため、言語によって解析される情報は変わりうる。例えば、英語の場合には読みとアクセントに代えて、発音とストレス情報が、読み生成処理部１０２において解析される情報となる。また、例えば中国語の場合には、発音（ピンイン）と声調が、読み生成処理部１０２において解析される情報となる。このように言語によって読み生成処理部１０２で解析されて出力される情報は変わりうるが、それぞれの言語のテキスト解析処理はさまざまな文献で開示されており、その手法を利用すればよい。さらに、それらの手法で解析された上記言語ごとの解析情報を読み修正候補情報として出力する方法についても、情報の種類の違いはあってもフォーマットや処理アルゴリズムは上記基本構成の説明で日本語音声合成に対して説明したものがそのまま利用できる。
【００９６】
図２０は、英語テキストに対して出力された読み修正候補情報の例を示す。この読み修正候補情報において、ＷＯＲＤタグは、日本語のＹＯＭＩ属性の代わりに発音を示すＰＲＯＮ属性を有する。また、この読み修正候補情報は、アクセントを示すＡＣＣタグの代わりに、ストレスを示すＳＴＲＥＳＳタグを有する。もちろん、このフォーマットは一つの実施例であり、他のタグを設定することも可能である。
【００９７】
最後に、サービス内容修正部１８０７は、ユーザ情報データベース１８０４から出力された、対象ユーザに対して許可された情報のみの選別を行う。この処理では、最も単純には図１７や図２０のような出力された修正候補付き情報から、対象ユーザに対して提供を許可されていないタグ情報が削除される。例えば、現在の対象ユーザがユーザＩＤ「１２３４５６７」のユーザで読み上げテキストが英語の場合、音声合成システム１８０５から出力された修正候補付き情報（図２０）からＰＡＵＳＥタグ以外のタグ情報が削除され、図２１で示すような情報と合成音声を含むサービス応答情報１８０８が出力される。これにより、ユーザごとに許可された情報の提供が可能となる。
【００９８】
次に図１８Ｂのクライアント側システムの実現方法について説明する。まず、クライアント側システムでは、サーバ側システムからサービス応答情報１８５１を受け取る。この情報は、クライアント側システムから先に送信された読み上げリクエスト情報１８０１に対する合成音声データおよび修正候補付き情報（図１７、図２０、図２１）の組である。これらの情報は、修正候補リスト提示部１８５２に出力される。
【００９９】
修正候補リスト提示部１８５２は、修正候補付き情報をグラフィカルにディスプレイ装置１８５３に表示するための処理を行う。音声合成装置では、生成された合成音声の読みや抑揚を確認するために読み上げテキストをグラフィカルに画面に表示し、その各部分をマウス等の入力装置で指定することで、その部分の合成音声を確認したりする製品が実現されている。例えば、図２３に示すような画面となる。マウスで「今日」の部分をクリックすると、スピーカ装置１８５４から「キョウ」に相当する音声部分が再生されるなどのインタフェースはすでに実現例がある。
【０１００】
修正候補リスト提示部１８５２は、このようなグラフィカルな提示に加えて、図２３に示すような読みやアクセント、さらには韻律など、本発明の修正候補情報として提供される情報について現在の合成音声での実現値およびその変更可能な値をグラフィカルに表示する。例えば、図２３はその例であり、ここでは読みについて、「今日」に対応する部分の読み・アクセントの現在の値（キョウ）と変更可能な値（コンニチ）がメニュー形式でグラフィカルに提示されている。ユーザは、マウスなどでこれらの値を指示することで、クライアント側システムに対して変更したい値を指示する。
【０１０１】
図２３の例では読みについてのみ例示しているが、もちろん、アクセント、ポーズの可能な位置、ピッチや話速などの韻律情報、合成音声に使用された音声部品データのＩＤなどについても同様の方法でグラフィカルな提示が可能である。このような、生成された合成音声に対してグラフィカルに表示し、その読み・アクセントや韻律などを変更可能なクライアント側システムはすでに実現されている。本発明のクライアント側システムでは、そのような既存のクライアント側システムを使用することももちろん可能である。
【０１０２】
こうして変更可能な値の一つをユーザがマウスなどで指示した場合、改善要求対象指示部１８５５によって、その位置がどのＩＤの要素に対応するかが判定される。例えば、図２３で「コンニチ」をマウスでクリックした場合、図２２の修正候補情報のＩＤ「２０１３０６３０１２３０１２３４５６Ｗ００１」の要素である「今日」の部分が、ユーザが指示した要素であると判定される。さらに、その読み修正候補として「コンニチ」が選択されたことも判定することは容易である。
【０１０３】
以上により、クライアント側システムでグラフィカルに表示された合成音声を示す読みテキストの上でマウス等の入力装置で指示することにより、改善要求対象指示部１８５５は、ユーザが合成音声を変更したい箇所のＩＤおよび改善情報という二つの情報を取得することができる。これら二つの情報は、改善指示リクエスト作成部１８５７において、例えばＸＭＬやＪＳＯＮ等のフォーマットに変換され、改善指示情報１８５８として、音声合成サーバシステム（図１６Ａ及び図１６Ｂあるいは図１８Ａに示すシステム）へと送信される。サーバシステム側でどのように改善指示要求が処理されるかは第１実施例で説明した通りである。
【０１０４】
以上のように、第２実施例におけるサーバ・クライアント音声合成システムにおいて、サーバ側システムでは、ユーザごとにきめ細かなサービスレベルを設定し、そのユーザに許可されている情報の提供だけを行うことができる。また、クライアント側システムでは、ユーザ自身に対して許可されている情報の範囲内で、合成音声をグラフィカルに表示した上で、サーバ側システムから渡された修正候補の中から自分の希望通りの値を指示することで、合成音声を修正及び改善していくことが可能となる。
【０１０５】
以上の実施例によれば、サーバ側システムは、音声合成処理を構成する読み生成、韻律生成、波形生成の各処理において、合成音声の生成に使用された情報とともに、その代替候補としてどのような情報があるかをメタ情報として記述する。そして、サーバ側システムは、読み上げテキストに対してその修正候補情報をメタ情報として付加した情報を合成音声とともに、クライアント側システムに返送する。この構成によれば、音声合成処理の結果として変換結果の合成音声とともに、その合成音声に対する修正可能箇所および修正可能内容をメタ情報として受け取ることができる。クライアント側システムではこの情報を用いることで、ユーザが簡単に修正箇所および修正内容を指定するユーザインタフェースを作成することが可能となる。これにより、音声合成サービスの利用者が求める合成音声を容易に作成することができる。
【０１０６】
なお、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることがあり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１０７】
また、サーバ側システム及びユーザ側システムの機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。この場合、プログラムコードを記録した非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を情報処理装置（コンピュータ）に提供し、その情報処理装置（又はＣＰＵ）が非一時的なコンピュータ可読媒体に格納されたプログラムコードを読み出す。非一時的なコンピュータ可読媒体としては、例えば、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記憶装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記憶媒体などが用いられる。
【０１０８】
また、プログラムコードは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によって情報処理装置に供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムを情報処理装置に供給できる。
【０１０９】
また、上述の実施例において制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１１０】
１０１    ：読み上げテキスト
１０２    ：読み生成処理部
１０３    ：韻律生成処理部
１０４    ：波形生成処理部
１０５    ：読み上げ音声
１０６    ：読み修正候補情報生成処理部
１０７    ：韻律修正候補情報生成処理部
１０８    ：波形修正候補情報生成処理部
１０９    ：修正候補情報統合処理部
１１０    ：修正候補情報
２０１    ：読み上げテキスト
２０２    ：単語分割処理部
２０３    ：読み選択処理部
２０４    ：区切り決定処理部
２０５    ：結合決定処理部
２０７    ：単語読み修正候補情報生成処理部
２０８    ：区切り修正候補情報生成処理部
２０９    ：読み修正候補情報統合処理部
２１０    ：読み修正候補情報
２１１    ：結合修正候補情報生成処理部
２２１    ：継続長修正候補情報生成処理部
２２２    ：基本周波数修正候補情報生成処理部
２２３    ：高さ修正候補情報生成処理部
２２４    ：話速修正候補情報生成処理部
２２５    ：韻律修正候補情報統合処理部
２２６    ：韻律修正候補情報
３０１    ：単語ネットワーク情報
３０２    ：最適単語列選択処理部
３０３    ：単語統合処理部
３０４    ：読み分け処理部
３０６    ：単語読み修正候補情報生成処理部
３０７    ：単語読み修正候補情報
５０１，５０２    ：単語候補
１３０１  ：アクセント結合フラグ
１３０２  ：アクセント結合候補箇所フラグ
１６０１  ：読み上げテキスト
１６０２  ：音声合成コンテキスト生成処理部
１６０３  ：メタ情報付き音声合成処理部
１６０４  ：文解析メタ情報
１６０５  ：解析単位別ＩＤ設定処理部
１６０６  ：合成音声
１６０７  ：ＩＤ付きメタ情報
１６０８  ：サービス応答生成処理部
１６０９  ：サービス応答情報
１６１０  ：音声合成データ格納装置
１６１１  ：コンテキスト格納装置
１６５１  ：改善指示情報
１６５２  ：改善指示解釈処理部
１６５３  ：対象ＩＤ
１６５４  ：音声合成コンテキスト選択処理部
１６５７  ：合成音声
１６５８  ：文解析メタ情報
１６５９  ：改善データ反映処理部
１６６０  ：改善箇所決定処理部
１６６１  ：改善データ作成処理部
１８０１  ：読み上げリクエスト情報
１８０２  ：ユーザ情報取得部
１８０３  ：音声合成選択部
１８０４  ：ユーザ情報データベース
１８０５  ：音声合成システム
１８０６  ：音声合成データ・データベース
１８０７  ：サービス内容修正部
１８０８  ：サービス応答情報
１８５１  ：サービス応答情報
１８５２  ：修正候補リスト提示部
１８５３  ：ディスプレイ装置
１８５４  ：スピーカ装置
１８５５  ：改善要求対象指示部
１８５６  ：マウス・キーボード
１８５７  ：改善指示リクエスト作成部
１８５８  ：改善指示情報
１９０１  ：ユーザＩＤ
１９０２  ：利用できる言語
１９０３  ：取得できる情報
１９０４  ：改善要求の可否
【図１】
2015118222.tif 000003
【図２Ａ】
2015118222.tif 000004
【図２Ｂ】
2015118222.tif 000005
【図３】
2015118222.tif 000006
【図４】
2015118222.tif 000007
【図５】
2015118222.tif 000008
【図６】
2015118222.tif 000009
【図７】
2015118222.tif 000010
【図８】
2015118222.tif 000011
【図９】
2015118222.tif 000012
【図１０】
2015118222.tif 000013
【図１１】
2015118222.tif 000014
【図１２】
2015118222.tif 000015
【図１３】
2015118222.tif 000016
【図１４】
2015118222.tif 000017
【図１５】
2015118222.tif 000018
【図１６Ａ】
2015118222.tif 000019
【図１６Ｂ】
2015118222.tif 000020
【図１７】
2015118222.tif 000021
【図１８Ａ】
2015118222.tif 000022
【図１８Ｂ】
2015118222.tif 000023
【図１９】
2015118222.tif 000024
【図２０】
2015118222.tif 000025
【図２１】
2015118222.tif 000026
【図２２】
2015118222.tif 000027
【図２３】
2015118222.tif 000028