(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022097353
(43)【公開日】2022-06-30
(54)【発明の名称】音声合成装置およびその方法
(51)【国際特許分類】
G10L 13/10 20130101AFI20220623BHJP
G10L 25/30 20130101ALI20220623BHJP
【FI】
G10L13/10 112B
G10L13/10 113Z
G10L25/30
【審査請求】有
【請求項の数】19
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2021083959
(22)【出願日】2021-05-18
(31)【優先権主張番号】10-2020-0178870
(32)【優先日】2020-12-18
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 令和2年5月18日 「https://arxiv.org/abs/2005.08484」、「https://arxiv.org/pdf/2005.08484.pdf」及び「https://hyperconnect.github.io/Attentron/」における公開 令和2年8月12日 「https://arxiv.org/abs/2005.08484v1」及び「https://arxiv.org/pdf/2005.08484v1.pdf」における公開 令和2年10月25日 「INTERSPEECH 2020」、「https://www.isca-speech.org/archive/Interspeech_2020/」、「https://www.isca-speech.org/archive/Interspeech_2020/abstracts/2096.html」及び「https://www.isca-speech.org/archive/Interspeech_2020/pdfs/2096.pdf」における公開 令和2年10月28日 「INTERSPEECH 2020」及び「http://www.interspeech2020.org/」における公開
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ウィンドウズ
2.WINDOWS
3.リナックス
4.Linux
5.UNIX
6.JAVA
7.MACOS
(71)【出願人】
【識別番号】519130063
【氏名又は名称】ハイパーコネクト インコーポレイテッド
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【弁理士】
【氏名又は名称】西島 孝喜
(74)【代理人】
【識別番号】100109335
【弁理士】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【弁理士】
【氏名又は名称】那須 威夫
(72)【発明者】
【氏名】サンギル アン
(72)【発明者】
【氏名】スンウ チョイ
(72)【発明者】
【氏名】サンジュ ハン
(72)【発明者】
【氏名】ドンヨン キム
(72)【発明者】
【氏名】ソンジュ ハ
(57)【要約】 (修正有)
【課題】テキスト-音声合成のためのデータの準備に相当な時間的、費用的制約が存在するという欠点を解決する音声合成方法、記録媒体並びにテキスト-音声合成モデル及びその学習方法を提供する。
【解決手段】音声合成方法は、第2音声データ及び目標テキストを獲得する段階と、第2音声データに対応するエンベディング情報である第1情報を獲得する段階と;第2音声データのうち目標テキストのシーケンスによる構成要素とそれぞれ関連性がある第2音声データのエンベディング情報を含む第2情報を獲得する段階と、第1情報及び第2情報に基づいて目標テキストに対応して話者の音声の特徴を反映するオーディオデータを獲得する段階と、を含む。
【選択図】
図8
【特許請求の範囲】
【請求項1】
第1音声データおよび前記第1音声データのうち少なくとも一部に対応するテキストデータに基づいて学習されたテキスト-音声合成(text-to-speech synthesis)モデルを用いる音声合成方法であって、
第2音声データおよび目標テキストを獲得する段階と、
前記第2音声データに対応するエンベディング情報である第1情報を獲得する段階と、
前記目標テキストのシーケンスによる構成要素とそれぞれ関連性(attention)のある前記第2音声データのエンベディング情報を含む第2情報を獲得する段階と、
前記第1情報および前記第2情報に基づいて、前記目標テキストに対応して話者の音声の特徴を反映するオーディオデータを獲得する段階と、を含む、
音声合成方法。
【請求項2】
前記第1情報は、前記第2音声データに対応する固定された長さを有する単一ベクトルを含むエンベディング情報であり、
前記第2情報は、複数のベクトルを含むことによって、可変的な長さを有するエンベディング情報であることを特徴とする、請求項1に記載の音声合成方法。
【請求項3】
前記第2情報の長さは、前記目標テキストの長さに基づいて可変的に決定されることを特徴とする、請求項2に記載の音声合成方法。
【請求項4】
前記第2情報を獲得する段階は、
前記目標テキストをエンコーディングする段階と、
前記エンコーディングされた目標テキストおよび前記第1情報とのアライメント(alignment)によって生成された前記目標テキストのシーケンスによる構成要素を抽出する段階と、を含むことを特徴とする、請求項1に記載の音声合成方法。
【請求項5】
前記シーケンスによる構成要素を抽出する段階は、
前記目標テキストを前記テキスト-音声合成モデルが含む第1モデルに入力する段階と、
前記第1モデルの出力と前記第1情報を結び付ける段階と、
前記第1モデルの出力と前記第1情報の間のアライメントを合わせる段階と、を含み、
前記第1モデルの出力は、前記目標テキストのシーケンスによる複数の構成要素を含むことを特徴とする、請求項4に記載の音声合成方法。
【請求項6】
前記第1モデルの出力と前記第1情報を結び付ける段階は、
前記第1モデルの出力が含む前記複数の構成要素の個数程度を前記第1情報をコピーする段階と、
前記複数の構成要素別に前記コピーされた第1情報を結び付ける段階と、を含むことを特徴とする、請求項5に記載の音声合成方法。
【請求項7】
前記第2情報を獲得する段階は、
前記目標テキストのシーケンスによる構成要素を抽出した結果を、前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力する段階を、さらに含むことを特徴とする、請求項4に記載の音声合成方法。
【請求項8】
前記第2情報を獲得する段階は、
前記第2音声データを、前記テキスト-音声合成モデルが含む第2ニューラルネットワークに入力する段階と、
前記第2音声データを前記テキスト-音声合成モデルが含む第3ニューラルネットワークに入力する段階と、
前記第2ニューラルネットワークの出力、前記第3ニューラルネットワークの出力、および前記目標テキストのシーケンスによる構成要素に基づいて前記第2情報を獲得する段階と、を含むことを特徴とする、請求項4に記載の音声合成方法。
【請求項9】
前記第2情報を獲得する段階は、複数の細部段階を含み、
前記複数の細部段階が含むj番目の細部段階は、前記目標テキストおよび前記第1情報に基づいて前記第2情報のj番目の構成要素を獲得する段階に対応することを特徴とする、請求項4に記載の音声合成方法。
【請求項10】
前記j番目の細部段階は、下記の数学式1に基づいて、前記第2情報のj番目の構成要素を獲得する段階に対応され、
は前記第2情報のj番目の構成要素であり、Q
jは、前記エンコーディングされた目標テキストおよび前記第1情報とのアライメントによって生成された前記目標テキストのシーケンスによるj番目の構成要素を抽出した結果を、前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力した結果であり、Kは前記テキスト-音声合成モデルが含む第2ニューラルネットワークの出力であり、Vは前記テキスト-音声合成モデルが含む第3ニューラルネットワークの出力であり、
はQの次元であり、fは平滑化関数(flattening function)であり、softmaxはソフトマックス関数(softmax function)であることを特徴とする、請求項9に記載の音声合成方法。
〔数学式1〕
【請求項11】
前記オーディオデータを獲得する段階は、
前記第2情報および前記第2音声データのシーケンスによる構成要素を前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力した結果に基づいて、第3情報を獲得する段階と、
前記第3情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と、
前記第4ニューラルネットワークの出力に基づいて、前記第3情報に対応するオーディオデータを獲得する段階と、を含むことを特徴とする、請求項4に記載の音声合成方法。
【請求項12】
前記テキスト-音声合成モデルは、
前記目標テキストおよび前記テキストデータのうち少なくとも一つを含むテキスト情報を入力され、入力された前記テキスト情報をエンコーディングして、その結果を出力する第1モデル、
前記第1音声データまたは前記第2音声データを入力され、入力された音声データに対応するエンベディング情報を出力する第2モデル、
前記第1音声データまたは前記第2音声データを入力され、前記テキスト情報のシーケンスによる構成要素とそれぞれ関連性がある音声データのエンベディング情報を含む情報を出力する第3モデルと、
前記第1モデルの出力および前記第2モデルの出力を入力され、前記テキスト情報および音声データの間のアライメントに関する情報を獲得し、前記エンベディング情報を含む情報および前記アライメントに関する情報をニューラルネットワークに入力した結果を出力する第4モデルと、を含み、
前記エンベディング情報を含む情報および前記アライメントに関する情報を前記ニューラルネットワークに入力することにより、前記第4モデルから出力された結果を前記第3モデルに入力することにより、前記第3モデルおよび前記第4モデルが相互関連して動作することを特徴とする、請求項1に記載の音声合成方法。
【請求項13】
前記テキスト-音声合成モデルを学習させる段階は、
前記第1音声データおよび前記テキストデータを獲得する段階と、
前記テキストデータをエンコーディングする段階と、
前記エンコーディングされたテキストデータおよび前記第1音声データに対応するエンベディング情報に基づいて時間上における前記テキストデータと前記第1音声データの間のアライメントに関する情報を含む第4情報を獲得する段階と、
前記テキストデータのシーケンスによる構成要素とそれぞれ関連性がある前記第1音声データのエンベディング情報を含む第5情報を獲得する段階と、
前記第4情報および前記第5情報に基づいて第6情報を獲得する段階と、
前記第6情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と、
前記第4ニューラルネットワークの出力に基づいて前記テキスト-音声合成モデルに関連するパラメータ情報を学習させる段階と、を含むことを特徴とする、請求項1に記載の音声合成方法。
【請求項14】
前記パラメータ情報は、前記テキスト-音声合成モデルと関連する一つ以上の加重値(weight)情報および一つ以上のバイアス(bias)情報を含み、
前記一つ以上の加重値情報は、前記テキスト-音声合成モデルが含む第1モデル、第2モデル、第3モデル、および第4モデルのうち少なくとも一部に関連する加重値情報を含み、
前記一つ以上のバイアス情報は、前記第1モデル、前記第2モデル、前記第3モデル、および前記第4モデルのうち少なくとも一部に関連するバイアス情報を含み、
前記一つ以上の加重値情報および前記一つ以上のバイアス情報のうち少なくとも一部は、前記第1モデル、第2モデル、第3モデル、および第4モデルのうち少なくとも一部が含むニューラルネットワーク(neural network)と関連することを特徴とする、請求項13に記載の音声合成方法。
【請求項15】
前記パラメータ情報を学習させる段階は、
前記第4ニューラルネットワークの出力に基づいて前記第1音声データおよび前記テキストデータの間の相関関係が学習される方向に前記パラメータ情報を学習させる段階を含むことを特徴とする、請求項13に記載の音声合成方法。
【請求項16】
請求項1の方法をコンピュータにて実行させるためのプログラムを記録したコンピュータ読み取り可能な非一時的記録媒体。
【請求項17】
音声合成方法を遂行するためのテキスト-音声合成モデルであって、
テキスト情報を入力され、入力された前記テキスト情報をエンコーディングして、その結果を出力する第1モデル、
音声データを入力され、入力された音声データに対応するエンベディング情報を出力する第2モデル、
音声データを入力され、前記テキスト情報のシーケンスによる構成要素とそれぞれ関連性のある音声データのエンベディング情報を含む情報を出力する第3モデルと、
前記第1モデルの出力および前記第2モデルの出力を入力され、前記テキスト情報および音声データの間のアライメントに関する情報を獲得し、前記エンベディング情報を含む情報および前記アライメントに関する情報をニューラルネットワークに入力した結果を出力する第4モデルと、を含み、
前記エンベディング情報を含む情報および前記アライメントに関する情報を前記ニューラルネットワークに入力することにより、前記第4モデルから出力された結果を前記第3モデルに入力することにより、前記第3モデルおよび前記第4モデルが相互関連して動作するテキスト-音声合成モデル。
【請求項18】
前記第4モデルの出力を入力されて、オーディオデータを獲得し、獲得されたオーディオデータを出力する音声合成器をさらに含むことを特徴とする、請求項16に記載のテキスト-音声合成モデル。
【請求項19】
テキスト-音声合成モデルを学習させる方法であって、
第1音声データおよびテキストデータを獲得する段階と、
前記テキストデータをエンコーディングする段階と、
前記エンコーディングされたテキストデータおよび前記第1音声データに対応するエンベディング情報に基づいて時間上においての前記テキストデータと前記第1音声データの間のアライメントに関する情報を含む第4情報を獲得する段階と、
前記テキストデータのシーケンスによる構成要素とそれぞれ関連性のある前記第1音声データのエンベディング情報を含む第5情報を獲得する段階と、
前記第4情報および前記第5情報に基づいて第6情報を獲得する段階と、
前記第6情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と、
前記第4ニューラルネットワークの出力に基づいて前記テキスト-音声合成モデルに関連したパラメータ情報を学習させる段階と、を含む、テキスト-音声合成モデルを学習させる方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、音声合成装置およびその方法に関する。より具体的には、本開示は、第2音声データおよび目標テキストを獲得し、第2音声データに対応するエンベディング情報である第1情報を獲得し、目標テキストのシーケンスによる構成要素とそれぞれ関連性(attention)のある第2音声データのエンベディング情報を含む第2情報を獲得し、および第1情報および第2情報に基づいて目標テキストに対応し、話者の音声の特徴を反映するオーディオデータを獲得する装置およびその方法に関する。
【背景技術】
【0002】
テキストから人の声を作り出すテキスト-音声合成(text-to-speech synthesis)技術が活発に研究されている。特に、ニューラルネットワーク(neural network)基盤のディープラーニング(deep learning)技術が多様な分野において活用されることにより、ディープラーニング技術に基づくテキスト-音声合成技術が研究されてきている。
【0003】
但し、従来のディープラーニング技術基盤のテキスト-音声合成技術の場合は、1時間以上録音された特定人の発話に対応するデータを必要とするだけでなく、録音された発話に対応するスクリプト(script)がさらに必要であったり、録音時の雑音などを最大限に排除するために、スタジオにおいて専門的な録音を実施しなければならないなど、テキスト-音声合成のためのデータの準備に相当な時間的、費用的制約が存在するという欠点が存在した。
【0004】
これに関連して、KR20170107683A件およびKR20190008137A件などの先行文献を参照することができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本実施形態が解決しようとする課題は、前述した問題点を解決するために、第2音声データおよび目標テキストを獲得し、第2音声データに対応するエンベディング情報である第1情報を獲得し、目標テキストのシーケンスによる構成要素とそれぞれ関連性のある第2音声データのエンベディング情報を含む第2情報を獲得し、および第1情報および第2情報に基づいて目標テキストに対応し、話者の音声の特徴を反映するオーディオデータを獲得する装置およびその方法を提供することにある。
【0006】
本実施形態が達成しようとする技術的課題は、前述した技術的課題に限定されず、以下の実施形態からまた別の技術的課題が類推され得る。
【課題を解決するための手段】
【0007】
一実施形態に係る第1音声データおよび前記第1音声データのうち少なくとも一部に対応するテキストデータに基づいて学習されたテキスト-音声合成(text-to-speech synthesis)モデルを用いる音声合成方法は、第2音声データおよび目標テキストを獲得する段階と;前記第2音声データに対応するエンベディング情報である第1情報を獲得する段階と;前記目標テキストのシーケンスによる構成要素とそれぞれ関連性(attention)のある前記第2音声データのエンベディング情報を含む第2情報を獲得する段階と;前記第1情報および前記第2情報に基づいて、前記目標テキストに対応し、話者の音声の特徴を反映するオーディオデータを獲得する段階と、を含む。
【0008】
一実施形態によると、前記第1情報は、前記第2音声データに対応する固定された長さを有する単一ベクトルを含むエンベディング情報であり、前記第2情報は、複数のベクトルを含むことにより、可変的な長さを有するエンベディング情報であり得る。
【0009】
一実施形態によると、前記第2情報の長さは、前記目標テキストの長さに基づいて可変的に決定され得る。
【0010】
一実施形態によると、前記第2情報を獲得する段階は、前記目標テキストをエンコーディングする段階と;前記エンコーディングされた目標テキストおよび前記第1情報とのアライメント(alignment)によって生成された前記目標テキストのシーケンスによる構成要素を抽出する段階と、を含むことができる。
【0011】
一実施形態によると、前記シーケンスによる構成要素を抽出する段階は、前記目標テキストを前記テキスト-音声合成モデルが含む第1モデルに入力する段階と;前記第1モデルの出力と前記第1情報を結び付ける段階と;前記第1モデルの出力と前記第1情報の間のアライメントを合わせる段階と、を含み、前記第1モデルの出力は、前記目標テキストのシーケンスによる複数の構成要素を含むことができる。
【0012】
一実施形態によると、前記第1モデルの出力と前記第1情報を結び付ける段階は、前記第1モデルの出力が含む前記複数の構成要素の個数だけ前記第1情報をコピーする段階と;前記複数の構成要素別に前記コピーされた第1情報を結び付ける段階と、を含むことができる。
【0013】
一実施形態によると、前記第2情報を獲得する段階は、前記目標テキストのシーケンスによる構成要素を抽出した結果を前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力する段階をさらに含むことができる。
【0014】
一実施形態によると、前記第2情報を獲得する段階は、前記第2音声データを前記テキスト-音声合成モデルが含む第2ニューラルネットワークに入力する段階と;前記第2音声データを前記テキスト-音声合成モデルが含む第3ニューラルネットワークに入力する段階と;前記第2ニューラルネットワークの出力、第3ニューラルネットワークの出力、および前記目標テキストのシーケンスによる構成要素に基づいて前記第2情報を獲得する段階と、を含むことができる。
【0015】
一実施形態によると、前記第2情報を獲得する段階は、複数の細部段階を含み、前記複数の細部段階が含むj番目の細部段階は、前記目標テキストおよび前記第1情報に基づいて前記第2情報のj番目の構成要素を獲得する段階に対応され得る。
【0016】
一実施形態によると、前記j番目の細部段階は、下記の数学式1に基づいて前記第2情報のj番目の構成要素を獲得する段階に対応され、
は前記第2情報のj番目の構成要素であり、Q
jは前記エンコーディングされた目標テキストおよび前記第1情報とのアライメントによって生成された前記目標テキストのシーケンスによるj番目の構成要素を抽出した結果を、前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力した結果であり、Kは前記テキスト-音声合成モデルが含む第2ニューラルネットワークの出力であり、Vは前記テキスト-音声合成モデルが含む第3ニューラルネットワークの出力であり、
はQの次元であり、fは平滑化関数(flattening function)であり、softmaxはソフトマックス関数(softmax function)であり得る。
【0017】
【0018】
一実施形態によると、前記オーディオデータを獲得する段階は、前記第2情報および前記第2音声データのシーケンスによる構成要素を前記テキスト-音声合成モデルが含む第1ニューラルネットワークに入力した結果に基づいて第3情報を獲得する段階と;前記第3情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と;前記第4ニューラルネットワークの出力に基づいて、前記第3情報に対応するオーディオデータを獲得する段階と、を含むことができる。
【0019】
一実施形態によると、前記テキスト-音声合成モデルは、前記目標テキストおよび前記テキストデータのうち少なくとも一つを含むテキスト情報を入力され、入力された前記テキスト情報をエンコーディングして、その結果を出力する第1モデル、前記第1音声データまたは前記第2音声データを入力され、入力された音声データに対応するエンベディング情報を出力する第2モデル、前記第1音声データまたは前記第2音声データを入力され、前記テキスト情報のシーケンスによる構成要素とそれぞれ関連性がある音声データのエンベディング情報を含む情報を出力する第3モデル、および前記第1モデルの出力および前記第2モデルの出力を入力され、前記テキスト情報および音声データの間のアライメントに関する情報を獲得し、前記エンベディング情報を含む情報および前記アライメントに関する情報をニューラルネットワークに入力した結果を出力する第4モデルを含み、前記エンベディング情報を含む情報および前記アライメントに関する情報を前記ニューラルネットワークに入力することにより、前記第4モデルから出力された結果を前記第3モデルに入力することにより、前記第3モデルおよび前記第4モデルが相互関連して動作することができる。
【0020】
一実施形態によると、前記テキスト-音声合成モデルを学習させる段階は、前記第1音声データおよび前記テキストデータを獲得する段階と;前記テキストデータをエンコーディングする段階と;前記エンコーディングされたテキストデータおよび前記第1音声データに対応するエンベディング情報に基づいて時間上における前記テキストデータと前記第1音声データの間のアライメントに関する情報を含む第4情報を獲得する段階と;前記テキストデータのシーケンスによる構成要素とそれぞれ関連性がある前記第1音声データのエンベディング情報を含む第5情報を獲得する段階と;前記第4情報および前記第5情報に基づいて、第6情報を獲得する段階と;前記第6情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と;前記第4ニューラルネットワークの出力に基づいて前記テキスト-音声合成モデルに関連したパラメータ情報を学習させる段階と、を含むことができる。
【0021】
一実施形態によると、前記パラメータ情報は、前記テキスト-音声合成モデルに関連する一つ以上の加重値(weight)情報および一つ以上のバイアス(bias)情報を含み、前記一つ以上の加重値情報は、前記テキスト-音声合成モデルが含む第1モデル、第2モデル、第3モデル、および第4モデルのうち少なくとも一部と関連する加重値情報を含み、前記一つ以上バイアス情報は、前記第1モデル、前記第2モデル、前記第3モデル、および前記第4モデルのうち少なくとも一部と関連するバイアス情報を含み、前記一つ以上の加重値情報および前記一つ以上のバイアス情報のうち少なくとも一部は、前記第1モデル、第2モデル、第3モデル、および第4モデルのうち少なくとも一部が含むニューラルネットワーク(neural network)と関連され得る。
【0022】
一実施形態によると、前記パラメータ情報を学習させる段階は、前記第4ニューラルネットワークの出力に基づいて前記第1音声データおよび前記テキストデータの間の相関関係が学習される方向に前記パラメータ情報を学習させることができる。
【0023】
一実施形態に係る音声合成方法を遂行するためのテキスト-音声合成モデルは、テキスト情報を入力され、入力された前記テキスト情報をエンコーディングしてその結果を出力する第1モデル、音声データを入力され、入力された音声データに対応するエンベディング情報を出力する第2モデル、音声データを入力され、前記テキスト情報のシーケンスによる構成要素とそれぞれ関連性がある音声データのエンベディング情報を含む情報を出力する第3モデル、および前記第1モデルの出力および前記第2モデルの出力を入力されて、前記テキスト情報および音声データの間のアライメントに関する情報を獲得し、前記エンベディング情報を含む情報および前記アライメントに関する情報をニューラルネットワークに入力した結果を出力する第4モデルを含み、前記テキスト情報の少なくとも一部に対応するエンベディング情報を含む情報および前記アライメントに関する情報を前記ニューラルネットワークに入力することにより、前記第4モデルから出力された結果を前記第3モデルに入力することにより、前記第3モデルおよび前記第4モデルが相互関連して動作する。
【0024】
一実施形態によると、前記テキスト-音声合成モデルは、前記第4モデルの出力を入力されてオーディオデータを獲得し、獲得されたオーディオデータを出力する音声合成器をさらに含むことができる。
【0025】
一実施形態に係るテキスト-音声合成モデルを学習させる方法は、第1音声データおよびテキストデータを獲得する段階と;前記テキストデータをエンコーディングする段階と;前記エンコーディングされたテキストデータおよび前記第1音声データに対応するエンベディング情報に基づいて時間上における前記テキストデータと前記第1音声データの間のアライメントに関する情報を含む第4情報を獲得する段階と;前記テキストデータのシーケンスによる構成要素とそれぞれ関連性がある前記第1音声データのエンベディング情報を含む第5情報を獲得する段階と;前記第4情報および前記第5情報に基づいて、第6情報を獲得する段階と;前記第6情報を前記テキスト-音声合成モデルが含む第4ニューラルネットワークに入力する段階と;前記第4ニューラルネットワークの出力に基づいて前記テキスト-音声合成モデルに関連したパラメータ情報を学習させる段階と、を含む。
【0026】
その他の実施形態の具体的な事項は、詳細な説明および図面に含まれている。
【発明の効果】
【0027】
本開示によると、音声合成装置およびその方法は、音声データに関連した情報を単一ベクトルに圧縮してエンベディング情報を獲得し、テキストデータや目標テキストのシーケンスによる構成要素とそれぞれ関連性がある音声データに対応するエンベディング情報を獲得することにより、相対的に少量の音声データを用いて特定話者の音声の特徴を反映するオーディオデータを獲得することができる。
【0028】
発明の効果は、以上で言及した効果に制限されず、言及されていないまた別の効果は、請求の範囲の記載から、当該技術分野の通常の技術者に明確に理解され得る。
【図面の簡単な説明】
【0029】
【
図1】一実施形態に係る音声合成システムを示す概略的な構成図である。
【
図2】一実施形態に係るテキスト-音声合成モデルの構成を説明する例示図である。
【
図3】一実施形態に係るテキスト-音声合成モデルを学習させる動作を説明する例示図である。
【
図4】一実施形態に係る学習されたテキスト-音声合成モデルを用いて音声を合成する動作を説明する例示図である。
【
図5】一実施形態に係るテキスト-音声合成モデルが含む第3モデルおよび第4モデルの細部的な構成を説明する例示図である。
【
図6】一実施形態に係るテキスト-音声合成モデルを学習させるためにエンベディング情報およびテキストデータを結びつける動作を説明する例示図である。
【
図7】一実施形態に係る第1音声データ、第2音声データ、およびオーディオデータのうち少なくとも一つが音のスペクトルを可視化して、グラフに表現したイメージに対応する場合を説明する例示図である。
【
図8】一実施形態に係るテキスト-音声合成モデルを用いる音声合成方法を説明するための動作フローチャートである。
【
図9】一実施形態に係るテキスト-音声合成モデルを学習させる方法を説明するための動作フローチャートである。
【
図10】一実施形態に係る音声合成装置の構成の例示図である。
【発明を実施するための形態】
【0030】
実施形態において使用される用語は、本開示における機能を考慮しつつ可能な限り現在広く使用されている一般的な用語を選択したが、これは当分野に従事する技術者の意図または判例、新たな技術の出現などによって変わり得る。また、特定の場合は、出願人が任意に選定した用語もあり、この場合、該当する説明部分において詳細にその意味を記載する。従って、本開示において使用される用語は、単純な用語の名称ではなく、その用語が有する意味と本開示の全般にわたる内容に基づいて定義されなければならない。
【0031】
明細書全体において、ある部分がある構成要素を「含む」とするとき、これは特に反対される記載がない限り、他の構成要素を除くのではなく、他の構成要素をさらに含むことができることを意味する。また、明細書に記載された「~部」、「~モジュール」などの用語は、少なくとも一つの機能や動作を処理する単位を意味し、これはハードウェアまたはソフトウェアとして具現されたり、ハードウェアとソフトウェアの結合として具現され得る。
【0032】
明細書全体において、記載された「a、b、およびcのうち少なくとも一つ」の表現は、「a単独」、「b単独」、「c単独」、「aおよびb」、「aおよびc」、「bおよびc」、または「a、b、cすべて」を包括することができる。
【0033】
以下では、添付した図面を参照して、本開示の実施形態に関して本開示が属する技術分野において通常の知識を有する者が容易に実施することができるよう詳細に説明する。しかし、本開示は、いくつかの相違する形態として具現され得、ここで説明する実施形態に限定されない。
【0034】
以下、本発明の実施形態を添付された図面を参照して詳細に説明する。
【0035】
実施形態を説明するにおいて、本発明が属する技術分野においてよく知られており、本発明と直接的に関連のない技術内容に関しては説明を省略する。これは、不必要な説明を省略することにより、本発明の要旨を曖昧にせず、より明確に伝達するためである。
【0036】
同様の理由により、添付図面において一部の構成要素は、誇張または省略されたり、概略的に図示された。また、各構成要素の大きさは、実際のサイズを全的に反映するものではない。各図面において、同一または対応する構成要素には同一の参照番号を付与した。
【0037】
本発明の利点および特徴、そして、それらを達成する方法は、添付される図面と共に詳細に後述されている実施形態を参照すれば明確になるであろう。しかし、本発明は、以下において開示される実施形態に限定されるものではなく、互いに異なる多様な形態として具現され得、単に本実施形態は、本発明の開示が完全なものとし、本発明が属する技術分野において通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであり、本発明は請求項の範疇によって定義されるのみである。明細書全体に亘る同一の参照符号は、同一の構成要素を指称する。
【0038】
この時、処理フローチャート図面の各ブロックとフローチャート図面の組み合わせは、コンピュータプログラムインストラクションによって遂行され得ることが理解できるであろう。これらのコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータ、またはその他のプログラム可能なデータプロセッシング装備のプロセッサーに搭載され得るため、コンピュータまたはその他のプログラム可能なデータプロセッシング装備のプロセッサーを通じて遂行されるそのインストラクションが、フローチャートブロック(ら)において説明された機能を遂行する手段を生成することになる。これらコンピュータプログラムインストラクションは、特定方式で機能を具現するために、コンピュータまたはその他のプログラム可能なデータプロセッシング装備を指向できるコンピュータ利用可能またはコンピュータ読み取り可能メモリーに保存することも可能であるため、そのコンピュータ利用可能またはコンピュータ読み取り可能メモリーに保存されたインストラクションは、フローチャートブロック(ら)において説明された機能を遂行するインストラクション手段を内包する製造品目を生産することも可能である。コンピュータプログラムインストラクションは、コンピュータまたはその他プログラム可能なデータプロセッシング装備上に搭載されることも可能であるため、コンピュータまたはその他プログラム可能なデータプロセッシング装備上において一連の動作段階が遂行されてコンピュータで実行されるプロセスを生成し、コンピュータまたはその他のプログラム可能なデータプロセッシング装備を遂行するインストラクションは、フローチャートブロック(ら)において説明された機能を実行するための段階を提供することも可能である。
【0039】
また、各ブロックは、特定された論理的機能(ら)を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。また、いくつかの代替実行例では、ブロックにおいて言及された機能が順序を外れて発生することも可能であることに注目されたい。例えば、連続して図示されている二つのブロックは、事実上実質的に同時に遂行されることも可能であり、またはそのブロックが時に該当する機能により逆順で遂行されることも可能である。
【0040】
図1は、一実施形態に係る音声合成システムを示す概略的な構成図である。
【0041】
多様な実施形態によると、音声合成システム100は、音声合成装置110およびテキスト-音声合成モデル120を含むことができる。実施形態よって、音声合成システム100は、音声合成装置110およびテキスト-音声合成モデル120のうち少なくとも一部間の情報送受信を支援するネットワーク網を追加的にさらに含むことができる。
【0042】
音声合成装置110は、トランシーバー、メモリー、およびプロセッサーを含むことができる。また、テキスト-音声合成モデル120が独立的な物理的装置として具現される場合、テキスト-音声合成モデル120は、トランシーバー、メモリー、およびプロセッサーを含むことができる。または、テキスト-音声合成モデル120が特定の物理的装置に含まれる場合、特定の物理的装置がトランシーバー、メモリー、およびプロセッサーを含むことができる。音声合成装置110およびテキスト-音声合成モデル120のそれぞれは、少なくとも一つの機能や動作を処理する単位を意味し、これは、ハードウェアやソフトウェア、またはハードウェアおよびソフトウェアの組み合わせとして具現され得る。一方、実施形態全体において音声合成装置110およびテキスト-音声合成モデル120は、分離された装置またはサーバーとして言及されるが、これは、論理的に分かれた構造であり得、一つのサーバーから分離された機能によって具現され得る。または、実施形態によって、音声合成装置110がテキスト-音声合成モデル120を含む形態として具現されてもよい。但し、以下においては、説明の便宜のために音声合成装置110およびテキスト-音声合成モデル120は、分離された装置またはサーバーである場合を説明する。
【0043】
一実施形態によると、音声合成装置110およびテキスト-音声合成モデル120は、ネットワークサーバーとして具現される多数のコンピュータシステムまたはコンピュータソフトウェアを含むことができる。例えば、音声合成装置110およびテキスト-音声合成モデル120のうち少なくとも一部は、イントラネットまたはインターネットのようなコンピュータネットワークを通じて他のネットワークサーバーと通信することができる下位装置と連結されて作業遂行要請を受け付け、それに関する作業を遂行して遂行結果を提供するコンピュータシステムおよびコンピュータソフトウェアを指すことができる。このほかにも、音声合成装置110およびテキスト-音声合成モデル120のうち少なくとも一部は、ネットワークサーバー上において動作することができる一連の応用プログラムと、内部に構築されている各種データベースを含む広義の概念として理解され得る。例えば、音声合成装置110およびテキスト-音声合成モデル120のうち少なくとも一部は、ドス(DOS)、ウィンドウズ(Windows)、リナックス(Linux)、ユニックス(UNIX)、またはマックOS(MacOS)などの運用体系によって多様に提供されるネットワークサーバープログラムを用いて具現され得る。
【0044】
音声合成装置110は、音声を合成する装置として、例えば、一つまたはそれ以上のソフトウェアモジュール、一つまたはそれ以上のハードウェアモジュール、またはこれらの多様な組み合わせによって具現され得る。音声合成装置110は、第1音声データおよび第1音声データのうち少なくとも一部に対応するテキストデータに基づいて学習されたテキスト-音声合成モデル120を用いて音声を合成し、具体的には、第2音声データおよび目標テキストを獲得し、第2音声データに対応するエンベディング情報である第1情報を獲得し、目標テキストのシーケンスによる構成要素とそれぞれ関連性のある第2音声データのエンベディング情報を含む第2情報を獲得し、第1情報および第2情報に基づいて目標テキストに対応し、話者の音声の特徴を反映するオーディオデータを獲得する。
【0045】
第1音声データおよびテキストデータの少なくとも一部は、相互間に対応され得る。例えば、第1音声データは、「こんにちは」を録音したデータを含み、テキストデータは、テキスト「こんにちは」を含むことができる。一方、第2音声データおよび目標テキストは、相互間に対応され得ない。例えば、目標テキストが「食事しましょう」である場合、第2音声データは「食事します」に対応する録音されたデータを含まないことがあり得る。
【0046】
第1情報は、固定された長さの値を有するエンベディング(embedding)情報として、第2音声データに対応する特徴が圧縮されて反映される単一のベクトルを含むことができる。一方、第2情報は、可変的な長さの値を有するエンベディング情報として、第2音声データに対応する発話の特徴のうち少なくとも一部が反映される複数のベクトルを含み、第2情報は、目標テキストの長さによって複数のベクトルを含むことができる。
【0047】
第1音声データおよび第2音声データは、互いに異なる音声データに対応され得る。即ち、テキスト-音声合成モデル120を学習させるための音声データと目標テキストに対応するオーディオデータの獲得のための音声データは、互いに異なる音声データに対応され得る。関連して、オーディオデータの獲得のために第2音声データを用いる場合、合成されたオーディオデータには第2音声データの特徴が反映される。
【0048】
第1音声データ、第2音声データ、およびオーディオデータのうち少なくとも一つは、音のスペクトルを可視化してグラフで表現したイメージに対応され得る。音のスペクトルを可視化してグラフで表現したイメージは、スペクトログラム(spectrogram)に対応され得る。これに関連したより詳細な事項は、
図7において後述する。
【0049】
以後、説明の便宜のために、テキスト-音声合成モデル120を学習させる段階を「学習段階」と呼び、第2音声データおよび目標テキストを獲得し、学習されたテキスト-音声合成モデルを用いて第2音声データに対応する第1情報および目標テキストのシーケンスによる構成要素とそれぞれ関連性のある第2音声データのエンベディング情報を含む第2情報を獲得し、第1情報および第2情報に基づいて目標テキストに対応し話者の音声の特徴を反映するオーディオデータを獲得する段階を「推論段階」と呼ぶ。
【0050】
学習段階において、音声合成装置110は、第1音声データに対応するエンベディング情報を獲得することができる。具体的には、学習段階において、音声合成装置110は、任意の話者の音声を含む第1音声データに基づいて、単一ベクトルを含むエンベディング情報およびテキストデータのシーケンスによる構成要素とそれぞれの関連性のある第1音声データのエンベディング情報を含む第5情報を抽出する。一方、後述するが、推論段階において、音声合成装置110は、第2音声データに基づいて、第2音声データに対応するエンベディング情報である第1情報および目標テキストのシーケンスによる構成要素とそれぞれの関連性のある第2音声データのエンベディング情報を含む第2情報を獲得する。
【0051】
学習段階において獲得される単一ベクトルを含むエンベディング情報および推論段階において獲得される第1情報は、固定された長さを有する一方、学習段階において獲得される第5情報および推論段階において獲得される第2情報は、複数のベクトルを含むことにより、可変的な長さを有し得る。具体的には、第5情報は、テキストデータの長さに基づいて可変的に決定され、第2情報は、目標テキストの長さに基づいて可変的に決定され得る。
【0052】
第2情報は、目標テキストに限定されて生成されたエンベディング情報であるため、目標テキストを話すときの感情や韻律などの情報が反映される一方、第1情報は、第2音声データに関連した情報を単一ベクトルに圧縮した結果、獲得される情報であるため、話すときの感情や韻律などによる情報のバイアス(bias)が少なくなり得る。従って、第1情報は、感情や韻律などが必要以上に反映されない安定化した情報であり得る。
【0053】
一実施例によると、固定の長さのエンベディングの形態として第1情報が生成されるようにするために、第1音声データが含む複数の音声情報が固定された長さを有するようにすることができる。この場合、第1音声データが含む複数の音声情報は、既設定され長さに対応するようにパディング(padding)が遂行された結果、生成された情報に対応され得る。例えば、第1音声データが含ませようとする特定のオーディオの長さが3秒であり、既設定された長さが5秒である場合、2秒ほどの無音領域をオーディオ後半部に結び付けることにより、既設定された長さに対応する音声情報が獲得され得る。
【0054】
実施形態によって、既設定された長さは、第1音声データに含ませようとする複数のオーディオのうち、その長さが最も長いオーディオの長さに対応され得る。例えば、第1音声データが含ませようとする3つのオーディオの長さがそれぞれ3秒、5秒、7秒である場合、既設定された長さは7秒であり得る。
【0055】
一実施例によると、音声合成装置110は、ユーザーから第1音声データ、第1音声データのうち少なくとも一部に対応するテキストデータ、第2音声データ、および目標テキストのうち少なくとも一部を含むユーザー入力を受信しすることにより、第1音声データ、第1音声データのうち少なくとも一部に対応するテキストデータ、第2音声データ、および目標テキストのうち少なくとも一部を獲得することができる。
【0056】
テキスト-音声合成モデル120は、音声合成のために音声合成装置110が用いるモデルであり得る。テキスト-音声合成モデル120は、一つ以上のニューラルネットワーク、一つ以上のエンコーダー(encoder)、一つ以上のデコーダー(decoder)、および一つ以上の音声合成器のうち少なくとも一つを含むモデルであり得る。テキスト-音声合成モデル120は、第1音声データおよび第1音声データのうち少なくとも一部に対応するテキストデータに基づいて学習過程を経た後、第2音声データに基づいて第1情報および第2情報を獲得し、第1情報および第2情報に基づいて目標テキストに対応して話者の音声の特徴を反映するオーディオデータを獲得する動作を遂行することができる。関連して、学習過程を経ることにより、テキスト-音声合成モデル120に関連したパラメータ情報が学習され得、学習されるパラメータ情報に関連したより詳細な事項は
図3において後述する。
【0057】
一実施例によると、ユーザーは、直接テキスト-音声合成モデル120を用いて音声を合成してもよい。この場合、第1音声データなどに基づいて、テキスト-音声合成モデルを学習させたり、第2音声データなどに基づいて、話者の音声の特徴を反映するオーディオデータを獲得する主体は、音声合成装置110ではないユーザーであってもよい。但し、以下においては、説明の便宜のために音声合成装置110は、ユーザー入力を受信し、音声合成装置110がテキスト-音声合成モデル120を用いて音声を合成する実施形態を説明する。
【0058】
ネットワーク網は、音声合成装置110とテキスト-音声合成モデル120、または、その他の外部装置を連結する役割をすることができる。例えば、ネットワーク網130は、テキスト-音声合成モデル120が音声合成装置110と連結されて音声合成装置110とパケットデータを送受信ができるように接続経路を提供することができる。
【0059】
本発明によると、音声合成装置110は、音声データに関連する情報を単一ベクトルとして圧縮してエンベディング情報を獲得し、テキストデータや目標テキストのシーケンスによる構成要素とそれぞれ関連性がある音声データのエンベディング情報を獲得することにより、相対的に少ない量の音声データを用いて特定の話者の音声の特徴を反映するオーディオデータを獲得することができる。
【0060】
多様な実施形態に係る一連の音声合成方法に関連した動作は、単一の物理的装置として具現され得、複数の物理的装置が有機的に結合された方式として具現されてもよい。例えば、音声合成システム100に含まれた構成のうち一部は、いずれか一つの物理的装置によって具現され、残りの一部は、他の物理的装置として具現され得る。例えば、いずれか一つの物理的装置は、音声合成装置110の一部として具現され得、他の物理的装置は、テキスト-音声合成モデル120の一部またはその他の外部装置の一部として具現されてもよい。場合によって、音声合成装置110またはテキスト-音声合成モデル120に含まれたそれぞれの構成要素は、それぞれが互いに異なる物理的装置に分散されて配置され、分散配置された構成要素が有機的に結合されて、音声合成システム100の機能および動作を遂行するように具現されてもよい。例えば、本明細書の音声合成装置110は、少なくとも一つのサブ装置を含み、音声合成装置110によって遂行されるものと記載された一部の動作は、第1サブ装置によって遂行され、他の一部の動作は、第2サブ装置によって実行されてもよい。
【0061】
図2は、一実施形態に係るテキスト-音声合成モデルの構成を説明する例示図である。
【0062】
図2を参照すると、一実施形態に係るテキスト-音声合成モデル120は、第1モデル210、第2モデル220、第3モデル230、および第4モデル240を含む。第1モデル210はタコトロンエンコーダー(tacotron encoder)に対応し、第2モデル220はコースグレインエンコーダー(coarse-grained encoder)に対応し、第3モデル230はファイングレインエンコーダー(fine-grained encoder)に対応し、第4モデル240はタコトロンデコーダー(tacotron decoder)に対応され得る。
【0063】
第3モデル230は、エンコーダーの役割を遂行することができる。具体的に第3モデル230は、音声データを入力され、入力された音声データをエンコーディングしてテキストのシーケンスによる構成要素とそれぞれ関連性のある音声データのエンベディング情報を含む情報を獲得する。例えば、第3モデル230は、目標テキストのシーケンスによる構成要素とそれぞれ関連性のある第2音声データのエンベディング情報を含む第2情報を獲得したり、テキストデータのシーケンスによる構成要素とそれぞれ関連性のある第1音声データのエンベディング情報を含む第5情報を獲得することができる。
【0064】
第3モデル230は、話者の音声の特徴を反映する情報を出力するために、第4モデル240と相互関連して動作する。例えば、第3モデル230は、第2情報および第5情報を獲得するために第4モデル240から転送された情報をさらに活用することができる。
【0065】
第4モデル240は、デコーダーの役割を遂行することができる。第4モデル240は、テキストと音声データの間のアライメント(alignment)に関する情報を獲得することができる。より具体的には、第4モデル240は、第1モデル210の出力および第2モデル220の出力を入力されて、テキストデータおよび音声データの間のアライメントに関する情報を獲得し、テキスト情報の少なくとも一部に対応するエンベディング情報を含む情報およびアライメントに関する情報を結び付けてニューラルネットワークに入力した結果を出力することができる。例えば、推論段階において、第4モデル240は、第1モデル210の出力である目標テキストをエンコーディングした情報と第2モデル220の出力である第1情報を結び付け、第1モデルの出力と第1情報との間のアライメントを合わせることができる。
【0066】
テキストデータおよび音声データの間のアライメントに関する情報は、例えば、テキスト「こんにちは」のシーケンスおよび音声データ(該当テキストに対応してもよく、対応しなくてもよい)に関連して、テキスト「こ」、「ん」、「に」、「ち」、および「は」が音声データのどの時間部分に対応するかを判断した情報を含むことができる。
【0067】
第4モデル240は、獲得したテキストデータおよび音声データの間のアライメントに関する情報を第3モデル230に転送することができ、第3モデル230は、転送された情報に基づいて可変的な長さを有するエンベディング情報を獲得することができる。
【0068】
また、第4モデル240は、どのような情報が予め設定された条件を満足するかを判断し、その判断結果に基づいて、テキスト-音声合成モデル120を学習させたり、特定の話者の音声の特徴を反映するオーディオデータを獲得する動作を遂行することができる。
【0069】
第1モデル210は、テキストデータを入力されて、入力されたテキストデータをエンコーディングしてその結果を出力するエンコーダであり得る。例えば、第1モデル210は、第1音声データのうち、少なくとも一部に対応するテキストデータを入力され、これをエンコーディングした情報を出力したり、目標のテキストを入力され、これをエンコーディングした情報を出力することができる。
【0070】
第2モデル220は、音声データを入力され、入力された音声データをエンコーディングしてその結果として入力された音声データに対応するエンベディング情報を出力することができ、エンコーダの役割を遂行することができる。例えば、第2モデル220は、第1音声データを入力され第1音声データに対応するエンベディング情報を獲得したり、第2音声データを入力され第2音声データに対応するエンベディング情報である第1情報を獲得することができる。
【0071】
一実施形態によると、第2モデル220は、コンボリューション(Convolution)レイヤー、ロングショート-タームメモリー(Long Short-Term Memory,LSTM)レイヤーおよびプーリング(Pooling)レイヤーのうち少なくとも一つを含むことができる。
【0072】
第3モデル230が入力される音声データと第2モデル220が入力される音声データが、必ずしも対応されなければならないということではない。例えば、学習段階において、第2モデル220は、第1音声データに基づいて固定された長さを有するエンベディング情報を獲得するが、第3モデル230は、第1音声データと相違した第3音声データに基づいて第5情報を獲得してもよい。または、推論段階において、第2モデル220は、第2音声データに基づいて第1情報を獲得するが、第3モデル230は、第2音声データと相違した第4音声データに基づいて第2情報を獲得してもよい。但し、以下においては、説明の便宜のために第3モデル230が第1音声データに基づいて第5情報を獲得し、第2音声データに基づいて第2情報を獲得する実施形態を説明する。
【0073】
一実施形態によると、テキスト-音声合成モデル120は、音声合成器250をさらに含むことができる。音声合成器250は、第4モデル240の出力を入力されてオーディオデータを獲得し、獲得されたオーディオデータを出力することができる。例えば、音声合成器250は、スペクトログラム形態のオーディオデータを人が聴取することができる形態のオーディオファイルに変換することができる。
【0074】
第1モデル210、第2モデル220、第3モデル230、第4モデル240、および音声合成器250は、概念的または論理的に区分された構成要素として理解されなければならず、必ず物理的に区分される構成要素として具現されなければならないということではない。また、第1モデル210、第2モデル220、第3モデル230、および第4モデル240および音声合成器250によって遂行されると説明される動作の少なくとも一部は、テキスト-音声合成モデル120が含む他の構成要素によって遂行されてもよい。さらに、第1モデル210、第2モデル220、第3モデル230、第4モデル240、および音声合成器250が遂行すると表現された動作は、音声合成装置110がテキスト-音声合成モデル120を用いて遂行する動作として理解されなければならない。
【0075】
学習段階における第1モデル210、第2モデル220、第3モデル230、および第4モデル240の動作に関連したより詳細な事項は、
図3において後述する。推論段階における第1モデル210、第2モデル220、第3モデル230、第4モデル240、および音声合成器250の動作に関連したより詳細な事項は、
図4において後述する。第3モデル230および第4モデル240の構造に関連したより詳細な事項は、
図5において後述する。
【0076】
図3は、一実施形態に係るテキスト-音声合成モデルを学習させる動作を説明する例示図である。
【0077】
図3を参照すると、一実施形態に係るテキスト-音声合成モデル120は、第1音声データ301および第1音声データ301のうち少なくとも一部に対応するテキストデータ302を獲得することができる。具体的には、第1音声データ301は、第3モデル230に入力され、第2モデル220に入力され得る。また、テキストデータ302は、第1モデル210に入力され得る。
【0078】
実施形態によって、第1音声データ301が第2モデル220に入力される一方、第3モデル230には、第1音声データ301と区別される第3音声データが入力されてもよい。但し、
図2において前述したように、説明の便宜のために、以下においては、第3モデル230が第1音声データに基づいて第5情報を獲得する実施形態を説明する。
【0079】
実施形態によって、第3モデル230には、第1音声データ301がそのまま入力される一方、第2モデル220には、第1音声データ301のうち、テキストデータ302に対応する部分のみが入力され得、これに関連してより詳細な事項は、
図7において後述する。
【0080】
テキスト-音声合成モデル120は、第1音声データ301に対応する発話の特徴が反映された固定された長さを有するエンベディング情報303を獲得する。前述したように、第1音声データ301に対応し、固定された長さを有するエンベディング情報303は、第1音声データに対応する特徴が圧縮されて反映される単一のベクトルを含むことができる。具体的には、第1音声データ301に対応するエンベディング情報303は、第1音声データ301の話者の発話速度に関する情報を含むことができる。
【0081】
テキスト-音声合成モデル120は、第1音声データ301に対応し、固定された長さを有するエンベディング情報303およびテキストデータ302に基づいて時間上におけるテキストデータ302と第1音声データ301の間のアライメントに関する情報を含む第4情報305を獲得することができる。実施形態によって、テキスト-音声合成モデル120は、第1音声データ301に対応し、固定された長さを有するエンベディング情報303およびテキストデータ302を結び付ける(concatenate)ことにより、第4情報305を獲得することができる。実施形態によって、第1音声データ301に対応し、固定された長さを有するエンベディング情報303とテキストデータ302をそのまま結び付けたり、第1音声データ301に対応し、固定された長さを有するエンベディング情報303とテキストデータ302を加工した情報を結び付けることができる。例えば、第1モデル210は、入力されたテキストデータ302に基づいてエンコーディングされたテキストデータ304を出力し、テキスト-音声合成モデル120は、第1音声データ301に対応し、固定された長さを有するエンベディング情報303および学習段階における第1モデル210の出力(即ち、エンコーディングされたテキストデータ304)を結び付けることができる。
【0082】
第1音声データ301に対応し、固定された長さを有するエンベディング情報303とテキストデータ302をそのまま結び付ける場合、テキスト-音声合成モデル120は、テキストデータが含む複数の構成要素に対応する個数程度を第1音声データ301に対応し、固定された長さを有するエンベディング情報303をコピーして、複数の構成要素別にコピーされた第1音声データ301に対応し、固定された長さを有するエンベディング情報303を結び付けることができる。第1音声データ301に対応し、固定された長さを有するエンベディング情報303および第1モデル210の出力を結び付ける場合、テキスト-音声合成モデル120は、学習段階における第1モデル210の出力が含む複数の構成要素の個数程度を第1音声データ301に対応し、固定された長さを有するエンベディング情報303をコピーし、複数のメッセージ別に対応される第1モデル210の出力の構成要素別にコピーされた第1音声データ301に対応し、固定された長さを有するエンベディング情報303を結び付けることができる。
【0083】
テキストデータ302が含む複数の構成要素は、テキストデータが含むメッセージをシーケンス(sequence)によって区分した構成要素を含むことができる。例えば、複数の構成要素は、テキスト「こんにちは」の「こ」に対応される第1構成要素、「ん」に対応される第2構成要素、「に」に対応される第3構成要素、「ち」に対応される第4構成要素、および「は」に対応される第5構成要素を含むことができる。テキストデータ302が含むメッセージをシーケンスによって分割した構成要素を含む場合にも、構成要素が必ず文字別に割り当てられなければならないということではなく、多様な方式によって分割される構成要素を含むことができる。例えば、テキストデータ302の構成要素は、音節であつても、文字であつても、意味の単位の形態素であつてもよい。
【0084】
学習段階において、第1モデル210の出力が含まれる複数の構成要素は、第1モデル210の出力が含むメッセージをシーケンスによって分割した構成要素を含むことができる。第1モデル210の出力が含む複数の構成要素に関連した例示は、テキストデータ302が含む複数の構成要素に関連した例示を準用することができる。
【0085】
第1音声データ301に対応し、固定された長さを有するエンベディング情報303およびテキストデータ302を結び付けたり、第1音声データ301に対応し、固定された長さを有するエンベディング情報303およびエンコーディングされたテキストデータ304を結び付ける動作に関連したより詳細な例示を
図6において後述する。
【0086】
一実施形態によると、テキスト-音声合成モデル120は、第1音声データ301に対応するエンベディング情報303およびテキストデータ302に基づいて追加演算を遂行することにより、時間上におけるテキストデータ302と第1音声データ301の間のアライメントに関する情報を含む第4情報305を獲得することができる。学習段階において、第1音声データ301は、テキストデータ302と対応する音声データを含むことができる。従って、テキストデータ302および第1音声データ301の間のアライメントに関する情報は、テキスト(例えば、「こんにちは」)のシーケンスおよび音声データ(例えば、「こんにちは」が録音されたデータ)に関連して、テキスト「こ」、「ん」、「に」、「ち」、および「は」が音声データのどの時間部分に対応するかを判断した情報を含むことができる。即ち、学習段階においては、テキストと音声が互いに対応されるため、効果的にアライメントが遂行され、話者の話す速度も反映して学習され得る。
【0087】
第4情報305を獲得するための追加演算は、多様な方式によって実行され得る。一実施形態によると、第4情報305は、コンテンツ-基盤アテンション(Content-Based Attention)演算方法に対応して獲得され得、これは従来の方法に基づいて計算され得る。即ち、アライメントを合わせることは、話者の発話速度によってテキストデータ302の成分別にアテンション演算方法によって演算を遂行することであり得る。
【0088】
一実施例によると、演算を遂行した結果をテキスト-音声合成モデル120が含む第1ニューラルネットワークに入力することができ、その出力が第4情報305に対応され得る。この場合、第1ニューラルネットワークは、第4モデル240に含まれ得る。一例示による第1ニューラルネットワークは、ロングショート-タームメモリーレイヤーを含むことができる。
【0089】
一方、テキスト-音声合成モデル120は、テキストデータ302のシーケンスによる構成要素とそれぞれ関連性のある第1音声データ301のエンベディング情報を含む第5情報を獲得する。具体的に、第3モデル230は、第1音声データ301をテキスト-音声合成モデル120が含む第2ニューラルネットワークに入力し、その出力を獲得することができる。一実施形態によると、第3モデル230は、第2ニューラルネットワークの出力およびテキストデータ302と第1音声データ301の間のアライメントに関する情報に基づいて第5情報を獲得することができる。一実施形態によると、第3モデル230は、第1音声データ301をテキスト-音声合成モデル120が含む第3ニューラルネットワークにさらに入力し、第2ニューラルネットワークの出力、第3ニューラルネットワークの出力、およびテキストデータ302と第1音声データ301の間のアライメントに関する情報に基づいて第5情報を獲得することができる。この場合、第2ニューラルネットワークおよび第3ニューラルネットワークのうち少なくとも一つは、第3モデル230に含まれ得る。
【0090】
第2ニューラルネットワークおよび第3ニューラルネットワークに関連したより詳細な事項は、
図5において後述する。
【0091】
一実施形態によると、第5情報を獲得する段階は、複数の細部段階を含むことができる。第5情報の獲得に関連した複数の細部段階が含むj番目の細部段階は、テキストデータ302のシーケンスによるj番目の構成要素および第1音声データ301のエンベディングに基づいて第5情報のj番目の構成要素を獲得する段階に対応され得る。関連して、j番目の構成要素は、j-1番目の構成要素の値に基づいて獲得され、j番目の構成要素の値に基づいて、j+1番目の構成要素が獲得されるなどの自動回帰(auto regressive)方式に基づいてそれぞれの細部段階が遂行され得る。
【0092】
テキスト-音声合成モデル120は、第1音声データに対応する第5情報を獲得し、第4情報305および第5情報に基づいて第6情報を獲得し、第6情報をテキスト-音声合成モデルが含む第4ニューラルネットワークに入力し、テキスト-音声合成モデル120に関連したパラメータ情報を学習させることができる。具体的に、第3モデル230が第1音声データ301を入力され、第4モデル240から第4情報305を入力されて第5情報を出力し、第5情報を第4モデル240に転送し409、第4モデル240が第4情報305および第5情報に基づいて(例えば、第4情報305および第5情報を結び付けることにより)第6情報を獲得し、第6情報を第4ニューラルネットワークに入力することができる。この場合、第4ニューラルネットワークは、第4モデル240に含まれ得る。
【0093】
パラメータ情報は、テキスト-音声合成モデル120に関連する一つ以上の加重値(weight)情報および一つ以上のバイアス情報を含むことができる。一つ以上の加重値情報は、テキスト-音声合成モデル120が含む第1モデル210、第2モデル220、第3モデル230、および第4モデル240のうち少なくとも一部に関連する加重値情報を含むことができる。一つ以上のバイアス情報は、第1モデル210、第2モデル220、第3モデル230、および第4モデル240のうち少なくとも一部に関連するバイアス情報を含むことができる。例えば、加重値情報およびバイアス情報は、アライメントに関連したパラメータ(第4モデル240に対応するパラメータを含む)および第5情報の獲得に関連したパラメータ(第3モデル230に対応するパラメータを含む)に関連した情報を含むことができる。
【0094】
一実施形態によると、テキスト-音声合成モデル120が含む第1モデル210、第2モデル220、第3モデル230、および第4モデル240に関連するパラメータ情報をエンド-ツー-エンド(End-to-End)方式によって全般的に学習させることができる。
【0095】
一つ以上の加重値情報および一つ以上のバイアス情報のうち少なくとも一部は、第1モデル、第2モデル、第3モデル、および第4モデルのうち少なくとも一部が含むニューラルネットワークに関連し得る。具体的には、一つ以上の加重値情報および一つ以上バイアス情報のうち少なくとも一部は、ニューラルネットワークに関連した構成要素の値に関連され得る。
【0096】
学習されたパラメータ情報は、追って推論段階において用いられる。
【0097】
一実施形態によると、テキスト-音声合成モデル120は、第4モデル240が含む第4ニューラルネットワークの出力に基づいて第1音声データ301およびテキストデータ302を学習させることができる。例えば、テキスト-音声合成モデル120は、第4ニューラルネットワークの出力が予め設定された条件を満たすか否かを判断することにより、第4情報305が予め設定された条件を満たすか否かを判断し、テキスト-音声合成モデル120に関連したパラメータ情報を学習させることができる。例えば、第4ニューラルネットワークの出力が予め設定された条件を満たす場合に限り、テキスト-音声合成モデル120に関連したパラメータ情報を調整することにより、パラメータ情報が学習され得る。
【0098】
実施形態によっては、第4ニューラルネットワークの出力が予め設定された条件を満たすか否かを判断せずに、テキスト-音声合成モデル120に関連したパラメータ情報を学習させることができる。この場合、場合によっては、第4ニューラルネットワークがテキスト-音声合成モデル120に含まれないことがある。
【0099】
一実施形態によると、テキスト-音声合成モデル120は、第4ニューラルネットワークの出力に基づいて第1音声データ301およびテキストデータ302の間の相関関係が学習される方向にパラメータ情報を学習させることができる。関連して、テキスト-音声合成モデル120を用いてテキストデータ302に基づいて生成される音声データおよび第1音声データ301の間の差を減らす方向にパラメータ情報が学習され得る。
【0100】
第1ニューラルネットワーク、第4ニューラルネットワーク、および第5情報の獲得に関連したより詳細な事項は、
図5において後述する。
【0101】
図4は、一実施形態に係る学習されたテキスト-音声合成モデルを用いて音声を合成する動作を説明する例示図である。
【0102】
図4を参照すると、一実施形態に係る学習されたテキスト-音声合成モデル120は、第2音声データ401および目標テキスト402を獲得することができる。第2音声データ401は、第3モデル230および第2モデル220に入力され得る。また、目標テキスト402は、第1モデル210に入力され得る。
【0103】
実施形態によって、第2音声データ401が第2モデル220に入力される一方、第3モデル230には、第2音声データ401と区別される第4音声データが入力されてもよい。但し、
図2において前述したように、説明の便宜のために、以下においては、第3モデル230が第2音声データに基づいて第2情報を獲得する実施形態を説明する。
【0104】
学習されたテキスト-音声合成モデル120は、第1音声データ301に対応して図面符号303に対応する動作において獲得された第1情報403および目標テキスト402を結び付けることによって、図面符号405に対応する情報を獲得することができる。第1情報403は、第2音声データに対応する特徴を含む情報であり得る。実施形態によって、図面符号405に対応する情報は、第1情報403と目標テキスト402をそのまま結び付けることによって獲得してもよく、第1情報403と目標テキスト402を加工した情報を結び付けることによって獲得してもよい。例えば、第1モデル210は、入力された目標テキスト402に基づいてエンコーディングされたテキストデータ404を出力し、学習されたテキスト-音声合成モデル120は、第1情報403および第1モデル210の出力(即ち、エンコーディングされたテキストデータ404)を結び付けることによって図面符号405に対応する情報を獲得することができる。
【0105】
第1情報403は、学習段階における第1音声データ301に対応し、固定された長さを有するエンベディング情報と同様に固定された長さの値を有するエンベディングとして第2音声データに対応する特徴が圧縮され反映される単一のベクトルを含むことができる。具体的には、第1情報403は、第2音声データ401の話者の発話速度に関する情報を含むことができる。
【0106】
学習されたテキスト-音声合成モデル120は、第1情報403および目標テキスト402に基づいて時間上における目標テキスト402と第2音声データ401の間のアライメントに関する情報(図面符号405に対応)を獲得することができる。推論段階において、第2音声データ401は、目標テキスト402と対応する音声データを含むことができる。従って、目標テキスト402および第2音声データ401の間のアライメントに関する情報は、テキスト(例えば、「こんにちは」)のシーケンスおよび音声データ(例えば、「さようなら」が録音されたデータ)に関連して、テキストの「こ」、「ん」、「に」、「ち」、および「は」が音声データのどの時間部分に該当するのかを判断した情報を含むことができる。推論段階においては、テキストと音声が互いに対応され得ないが、第1情報403が話者の速度に関する情報を反映することができるので、話者の話す速度を学習することができ、アライメントに関する情報の獲得が可能であり得る。
【0107】
目標テキスト402と第2音声データ401の間のアライメントに関する情報を獲得するための演算は、多様な方式によって遂行され得る。図面符号405に対応する情報を獲得するための追加演算は、多様な方式によって遂行され得る。一実施形態によると、図面符号405に対応する情報は、コンテンツ-基盤アテンション演算方法に対応して獲得され得、これは従来の方法に基づいて計算され得る。即ち、アライメントを合わせることは、話者の発話速度によって目標テキスト402の成分別にアテンション演算方法によって演算を遂行することであり得る。
【0108】
一方、学習されたテキスト-音声合成モデル120は、目標テキスト402のシーケンスによる構成要素とそれぞれ関連性のある第2音声データ401のエンベディング情報を含む第2情報を獲得する。具体的には、第3モデル230は、第2音声データ401をテキスト-音声合成モデル120が含む第2ニューラルネットワークに入力し、その出力を獲得することができる。一実施形態によると、第3モデル230は、第2ニューラルネットワークの出力および目標テキスト402と第2音声データ401の間のアライメントに関する情報に基づいて第2情報を獲得することができる。一実施形態によると、第3モデル230は、第2音声データ401をテキスト-音声合成モデル120が含む第3ニューラルネットワークにさらに入力し、第2ニューラルネットワークの出力、第3ニューラルネットワークの出力、および目標テキスト402と第2音声データ401の間のアライメントに関する情報に基づいて第2情報を獲得することができる。この場合、第2ニューラルネットワークおよび第3ニューラルネットワークのうち少なくとも一つは、第3モデル230に含まれ得る。
【0109】
一実施形態によると、第2情報を獲得する段階は、複数の細部段階を含むことができる。第2情報の獲得に関連した複数の細部段階が含むj番目の細部段階は、目標テキスト402および第1情報403に基づいて第2情報のj番目の構成要素を獲得する段階に対応され得る。関連して、j番目の構成要素は、j-1番目の構成要素の値に基づいて獲得され、j番目の構成要素の値に基づいて、j+1番目の構成要素が獲得されるなどの自動回帰(auto regressive)方式に基づいて各細部段階が遂行され得る。
【0110】
第2情報の獲得に関連したより詳細な事項は、
図5において後述する。
【0111】
テキスト-音声合成モデル120は、第2情報および目標テキスト402と第2音声データ401の間のアライメントに関する情報を結び付けることによって第3情報406を獲得することができる。具体的には、第3モデル230は、獲得した第2情報を第4モデル240に転送し409、第4モデル240は、第3情報406を獲得することができる。
【0112】
さらに、一実施形態によると、テキスト-音声合成モデル120は、第3情報406に対応するオーディオデータを獲得することができる。具体的には、第4モデル240は、獲得した第3情報406を第4ニューラルネットワークに入力し、第3情報406および第3情報406に対応する第4ニューラルネットワークの出力のうち少なくとも一つを音声合成器250に転送し、音声合成器250からオーディオデータを獲得することができる。
【0113】
以上、
図4において説明される推論段階の動作は、学習段階において学習されたパラメータ情報に基づいて遂行され得る。
【0114】
図5は、一実施形態に係るテキスト-音声合成モデルが含む第3モデルおよび第4モデルの細部的な構成を説明する例示図である。
【0115】
図5を参照すると、一実施形態に係る第4モデル240は、第2細部モデル、第1ニューラルネットワークおよび第4ニューラルネットワークのうち少なくとも一つを含むことができる。一例示による第1ニューラルネットワークは、複数のロングショート-タームメモリレイヤーを含むことができる。一例示による第4ニューラルネットワークは、一つ以上の全結合(Fully Connected)レイヤーを含むことができる。
【0116】
前述したように、第4モデル240は、テキストと音声データの間のアライメントに関する情報を獲得することができる。具体的には、第4モデル240は、第4情報305に基づいてテキストデータ302と第1音声データ301の間のアライメントに関する情報を含む第4情報305を獲得することができる。または、第4モデル240は、図面符号405に対応する情報に基づいて目標テキストと第2音声データ401の間のアライメントに関する情報を獲得することができる。関連して、第2細部モデルは、図面符号305または図面符号405に対応する情報を入力されて501アテンション点数を計算することができる。
【0117】
一実施形態によると、図面符号305または図面符号405に対応する情報を第1ニューラルネットワークに入力して502獲得した出力が、アライメントに関する情報に対応することができる。
【0118】
第1ニューラルネットワークは、第3モデル230が含む第1細部モデルに第4情報305および図面符号405に対応する情報のうち少なくとも一つを転送し、第4モデル240は、第1細部モデルからこれに対応する出力を獲得することができる507。その後、第4モデル240は、第1ニューラルネットワークから獲得された出力と第1細部モデルから獲得された出力を結び付けることができる。例えば、第4モデル240は、学習段階において、第1ニューラルネットワークから獲得された第4情報305および第1細部モデルから獲得された第5情報に基づいて第6情報を獲得することができる。または、第4モデル240は、推論段階において、第1ニューラルネットワークから獲得された図面符号405に対応する情報および第1細部モデルから獲得された第2情報に基づいて第3情報を獲得することができる。
【0119】
但し、学習段階および推論段階において第4モデル240が結び付ける情報が必ず前述した場合に限定されなければならないことではない。例えば、実施形態によっては、第4モデル240は、推論段階においても第1ニューラルネットワークにおいて学習段階当時に獲得された第4情報305と第1細部モデルにおいて(推論段階において)獲得された第2情報を結び付けることによって情報を獲得してもよい。そのほかにも、多様な方式によって学習段階において獲得された情報と推論段階において獲得された情報が組み合わされるなど、第4モデル240が結び付ける情報が多様な方式によって決定され得る。
【0120】
第4ニューラルネットワークは、学習段階において第6情報を入力されて出力を生成し508、第4モデル240は、第4ニューラルネットワークの出力が予め設定された条件を満たすか否かを判断し、これに基づいてテキスト-音声合成モデル120を学習させることができる。また、第4ニューラルネットワークは、推論段階において図面符号405に対応する情報を入力されて出力を生成し508、これに基づいてオーディオデータを獲得することができる。
【0121】
実施形態によって、学習段階において第4ニューラルネットワークの出力が予め設定された条件を満たすか否かは、第4ニューラルネットワークにおいて自主的に判断されてもよい。
【0122】
一実施形態に係る第3モデル230は、第1細部モデルおよび第2ニューラルネットワークのうち少なくとも一つを含むことができる。また、実施形態によっては、第3モデル230は、第3ニューラルネットワークをさらに含んでもよい(但し、以下においては、説明の便宜のために第3ニューラルネットワークが第3モデル230の外部に位置する実施形態を説明する)。一例示に係る第2ニューラルネットワークは、複数のコンボリューションレイヤーおよび複数の双方向ロングショート-タームメモリー(Bidirectional Long Short-Term Memory,BiLSTM)レイヤーを含むことができる。一例示に係る第3ニューラルネットワークは、一つ以上の全結合レイヤーを含むことができる。
【0123】
第2ニューラルネットワークは、学習段階において第1音声データ301を入力されたり、推論段階において第2音声データ401を入力され、その出力を獲得して第1細部モデルに入力することができる506。第3ニューラルネットワークは、学習段階において第1音声データ301を入力されたり、推論段階において第2音声データ401を入力され、その出力を獲得して第1細部モデルに入力することができる505。
【0124】
第1細部モデルは、第1ニューラルネットワークから獲得された出力503と、第2ニューラルネットワークから獲得された出力506と、第3ニューラルネットワークから獲得された出力505のうち少なくとも一つに基づいて演算を遂行し、その結果値を出力することができる507。例えば、学習段階において第1細部モデルは、第5情報を出力することができる。または、推論段階において第1細部モデルは、第2情報を出力することができる。
【0125】
一実施形態によると、第2情報を獲得する段階は、目標テキスト402が含む複数の構成要素別に対応する複数の細部段階を含み、複数の細部段階別に第2情報の構成要素が獲得され得る。この場合、複数の細部段階が含むj番目の細部段階は、目標テキスト402と第2音声データ401の間のアライメントに関する情報を含む図面符号405に対応する情報のj番目の構成要素に基づいて複数のベクトルが含むj番目のベクトルを獲得する段階に対応され得る。
【0126】
第5情報を獲得する段階に関連したj番目の細部段階は、目標テキスト402のj番目の構成要素とそれに対応する第2音声データ401のエンベディング情報に該当するベクトルを探し対応させる段階に該当し得る。このとき、目標テキスト402および第2音声データ401のエンベディング情報の間の対応する程度を特定の指標として表示することができる。目標テキスト402および第2音声データ401のエンベディング情報の間の対応する程度によって、各エンベディング情報が反映される比重を調整することができ、目標テキスト402に対応するエンベディング情報を組み合わせることによって、可変的な長さを有するエンベディング情報である第2情報が生成され得る。目標テキスト402に対応するエンベディング情報を組み合わせる方法に関連しては、例えば、アテンションメカニズム(Attention Mechanism)などの多様な技術が用いられ得る。
【0127】
第2情報を獲得する段階に関連したj番目の細部段階は、テキストデータ302のj番目の構成要素とそれに対応する第1音声データ301のエンベディング情報に該当するベクトルを探して対応させる段階に該当し得る。このとき、テキストデータ302および第1音声データ301のエンベディング情報の間の対応する程度を特定の指標として表示することができ、その対応の程度によって、各エンベディング情報が反映される比重を調節することができる。テキストデータ302に対応するエンベディング情報を組み合わせることによって、可変的な長さを有するエンベディング情報である第5情報が生成され得る。テキストデータ302に対応するエンベディング情報を組み合わせる方法に関連しては、例えば、アテンションメカニズムなどの多様な技術が用いられ得る。
【0128】
より具体的には、第2情報または第5情報の獲得に関連して、j番目の細部段階は、下記の数学式1に基づいてj番目のベクトルが獲得される段階に対応され得る。学習段階において、
は第5情報のj番目の構成要素に対応され、Kは第1音声データ301を入力された第2ニューラルネットワークの出力に対応され、Vは第1音声データ301を入力された第3ニューラルネットワークの出力に対応され、Q
jは第4情報305のj番目の構成要素に対応され得る。より具体的には、Q
jはエンコーディングされたテキストデータ302および第1音声データ301に対応し、固定された長さを有するエンベディング情報303とのアライメントによって生成されたテキストデータ302のシーケンスによるj番目の構成要素を抽出した結果を第1ニューラルネットワークに入力した結果に対応され得る。推論段階において、
は第2情報のj番目の構成要素に対応され、Kは第2音声データ401を入力された第2ニューラルネットワークの出力に対応され、Vは第2音声データ401を入力された第3ニューラルネットワークの出力に対応され、Q
jは図面符号405に対応する情報のj番目の構成要素に対応され得る。より具体的には、Q
jはエンコーディングされた目標テキストおよび第1情報403とのアライメントによって生成された目標テキスト402のシーケンスによるj番目の構成要素を抽出した結果を第1ニューラルネットワークに入力した結果に対応され得る。
【0129】
〔数学式1〕
はQの次元に対応され、fは平滑化関数(flattening function)に対応され、softmaxはソフトマックス関数(softmax function)に対応され得る。
【0130】
数学式1に基づいて計算された第2情報および第5情報は、構成要素別に互いに異なる値を有することができ、可変的な長さの値を有する可変長エンベディング(variable-length embedding)に対応され得る。例えば、第2情報は、目標テキスト402の構成要素のそれぞれに対応される音声エンベディングを抽出したものの集合であるため、目標テキスト402の長さによってその長さが可変的に決定され得る。
【0131】
このような可変長エンベディングは、目標テキスト402またはテキストデータ302の時間シーケンスによる構成要素と対応するベクトルを含むため、瞬間的な情報(temporal information)をそのまま維持することができる。即ち、第2情報および第5情報は、各構成要素(例えば、音節)単位の特徴と、構成要素以降の時間上、以下の構成要素の間の関係に関する情報を含むことができる。但し、学習段階および推論段階において、第1細部モデルが演算遂行のために入力される情報が必ず前述した場合に限定されなければならないということではない。例えば、前述の実施形態は、推論段階において、第1細部モデルが第1ニューラルネットワークの出力である図面符号405に対応する情報を入力されて第2情報を獲得する場合を説明したが、第1細部モデルは、学習段階における第1ニューラルネットワークの出力である第4情報305を入力されて第2情報を獲得してもよく、この場合、推論段階においても、Qjは図面符号405に対応する情報に対応され得る。そのほかにも、多様な方法によって学習段階において獲得された情報と推論段階において獲得された情報が組み合わされるなど、第1細部モデルが演算遂行のために入力される情報が多様な方式によって決定され得る。
【0132】
図6は、一実施形態に係るテキスト-音声合成モデルを学習させるためにエンベディング情報およびテキストデータを結び付ける動作を説明する例示図である。
図6において説明される動作は、
図3の第4情報305に対応される情報を獲得するための動作であり得る。
【0133】
図6を参照すると、一実施形態に係る結び付きを通じて生成される情報605は、第1音声データ301に対応し、固定された長さを有するエンベディング情報602とテキストデータ302をそのまま結び付けることによって獲得されてもよく、第1音声データ301に対応し、固定された長さを有するエンベディング情報602とテキストデータ302を加工した情報を結び付けさせることによって獲得されてもよい。図面符号601は、第1音声データ301に対応し、固定された長さを有するエンベディング情報602との結び付きの対象となるテキストデータ302またはテキストデータ302を加工した情報に対応され得る。
【0134】
テキストデータ302がN個(複数)のメッセージを含むと、テキスト-音声合成モデル120は、複数のメッセージの個数に対応する個数程を第1音声データ301に対応し、固定された長さを有するエンベディング情報602をコピーすることによって、コピーされたエンベディング情報603を獲得することができる。その後、テキスト-音声合成モデル120は、複数のメッセージまたは複数のメッセージ別に対応する第1モデル210の出力の構成要素別にコピーされたエンベディング情報603を結び付けることによって604、図面符号605に対応する情報を獲得することができる。
【0135】
または、テキストデータ302が一つ以上のメッセージをシーケンスによって区分した複数の構成要素を含むと、テキスト-音声合成モデル120は、複数の構成要素に対応する個数程を第1音声データ301に対応し、固定された長さを有するエンベディング情報602をコピーすることによって、コピーされたエンベディング情報603を獲得することができる。その後、テキスト-音声合成モデル120は、複数の構成要素別に対応する第1モデル210の出力の構成要素別にコピーされたエンベディング情報603を結び付けることによって604、情報605を獲得することができる。
【0136】
図7は、一実施形態に係る第1音声データ、第2音声データ、およびオーディオデータのうち少なくとも一つが音のスペクトルを可視化してグラフで表現したイメージに対応する場合を説明する例示図である。
【0137】
図7参照すると、一実施形態に係る第1音声データ301、第2音声データ401、およびオーディオデータのうち少なくとも一つが音のスペクトルを可視化してグラフで表現したイメージであるスペクトログラムに対応され得る。図面符号710および720は、フレームをx軸とし、チャンネルをy軸にして音のスペクトルを可視化してグラフで表現したスペクトログラムの一例であり得る。
【0138】
図面符号720は、図面符号710に対応する音の少なくとも一部を除去して視覚化したスペクトログラムに対応され得る。例えば、図面符号710は、「こんにちは」を発音した音声データに対応するスペクトログラムであり、図面符号720は、図面符号710の「こんにちは」のうち「にちは」部分のグラフを削除して、「こん」部分のグラフのみを残したスペクトログラムであり得る。
【0139】
一実施形態によると、学習段階において、第1モデル210には第1音声データ301がそのまま入力される一方、第2モデル220には第1音声データ301のうちテキストデータ302に対応する部分のみが入力され得る。例えば、第1音声データが「こんにちは」を発音した音声データに対応するスペクトログラムを含み、テキストデータ302が「こん」を含む場合、第3モデル230には、「こんにちは」を発音した音声データに対応するスペクトログラムがそのまま入力される一方(図面符号710に対応)、第2モデル220には、「こんにちは」のうち「にちは」部分のグラフを削除し、「こん」部分のグラフのみを残したスペクトログラムが入力され得る(図面符号720に対応)。
【0140】
図8は、一実施形態に係るテキスト-音声合成モデルを用いる音声合成方法を説明するための動作フローチャートである。
【0141】
図8を参照すると、一実施形態に係る音声合成装置110は、第1音声データ301および第1音声データ301のうち少なくとも一部に対応するテキストデータ302に基づいて学習されたテキスト-音声合成モデル120を用いて音声を合成する。
【0142】
音声合成装置110は、第2音声データ401および目標テキスト402を獲得し810、第2音声データ401に対応するエンベディング情報である第1情報403を獲得し820、第2音声データ401のうち目標テキスト402のシーケンスによる構成要素とそれぞれ関連性のある第2音声データ401のエンベディング情報を含む第2情報を獲得する830。
【0143】
音声合成装置110は、獲得された第1情報403および第2情報に基づいて目標テキスト402に対応し、話者の音声の特徴を反映するオーディオデータを獲得する840。
【0144】
図9は、一実施形態に係るテキスト-音声合成モデルを学習させる方法を説明するための動作フローチャートである。
【0145】
図9を参照すると、一実施形態に係る音声合成装置110は、第1音声データ301およびテキストデータ302を獲得し910、テキストデータ302をエンコーディングする920。音声合成装置110は、エンコーディングされたテキストデータおよび第1音声データ301に対応するエンベディング情報に基づいて時間上におけるテキストデータ302と第1音声データ301の間のアライメントに関する情報を含む第4情報305を獲得する940。
【0146】
音声合成装置110は、テキストデータ402のシーケンスによる構成要素とそれぞれ関連性のある第1音声データ301のエンベディング情報を含む第5情報を獲得し950、第4情報および第5情報に基づいて第6情報を獲得し960、第6情報をテキスト-音声合成モデル120が含む第4ニューラルネットワークに入力する970。その後、音声合成装置110は、第4ニューラルネットワークの出力に基づいてテキスト-音声合成モデル120に関連したパラメータ情報を学習させる980。
【0147】
図10は、一実施形態に係る音声合成装置の構成の例示図である。
【0148】
図10を参照すると、音声合成装置110は、トランシーバー1010、プロセッサー1020、およびメモリー1030を含む。音声合成装置110は、トランシーバー1010を通じてテキスト-音声合成モデル120およびその他外部機器などと連結され、データを交換することができる。
【0149】
プロセッサー1020は、
図1ないし
図9を通じて前述した少なくとも一つの装置を含んだり、
図1ないし
図9を通じて前述した少なくとも一つの方法を遂行することができる。メモリー1030は、
図1ないし
図9を通じて前述した少なくとも一つの方法を遂行するための情報を保存することができる。メモリー1030は、揮発性メモリーまたは非揮発性メモリーであり得る。
【0150】
プロセッサー1020は、プログラムを実行し、情報を提供するための音声合成装置110を制御することができる。プロセッサー1020によって実行されるプログラムのコードは、メモリー1030に保存され得る。
【0151】
また、一実施形態の音声合成装置110は、ユーザーに情報を提供することができるUIを含むことができ、これに基づいてユーザーからの入力を受信することができる。
【0152】
一方、本明細書と図面には、本発明の好ましい実施形態に関して開示し、たとえ、特定の用語が使用されていても、これは単に本発明の技術内容を容易に説明し発明の理解を助けるための一般的な意味として使用されたのであって、本発明の範囲を限定しようとするものではない。ここに開示された実施形態のほかにも、本発明の技術的思想に基づいた他の変形形態が実施可能であることは、本発明が属する技術分野において通常の知識を有する者に自明である。
【0153】
前述した実施形態に係る電子装置または端末は、プロセッサー、プログラムデータを保存して実行するメモリー、ディスクドライブのような永久保存部(permanent storage)、外部装置と通信する通信ポート、タッチパネル、キー(key)、ボタンなどのようなユーザーインターフェイス装置などを含み得る。ソフトウェアモジュールまたはアルゴリズムとして具現される方法は、前記プロセッサー上において実行可能なコンピュータの読み取り可能なコードまたはプログラム命令としてコンピュータの読み取り可能な記録媒体上に保存され得る。ここで、コンピュータの読み取り可能な記録媒体として、マグネティック記録媒体(例えば、ROM(read-only memory)、RAM(random-Access memory)、フロッピーディスク、ハードディスクなど)、および光学的読み取り媒体(例えば、シーディーロム(CD-ROM)、ディーブイディー(DVD:Digital Versatile Disc))などがある。コンピュータの読み取り可能記録媒体は、ネットワークに接続されたコンピュータシステムに分散されて、分散方式としてコンピュータの読み取り可能なコードが保存され実行され得る。媒体は、コンピュータによって読み取り可能であり、メモリーに保存され、プロセッサー上において実行され得る。
【0154】
本実施形態は、機能的なブロック構成および多様な処理段階として示され得る。このような機能ブロックは、特定の機能を実行する多様な個数のハードウェアおよび/またはソフトウェアの構成として具現され得る。例えば、実施形態は、一つ以上のマイクロプロセッサーの制御または他の制御装置によって多様な機能を実行することができる、メモリー、プロセッシング、ロジック(logic)、ルックアップテーブル(look-up table)などのような集積回路の構成を採用することができる。構成要素がソフトウェアプログラミングまたはソフトウェア要素として実行され得ることと同様に、本実施形態は、データ構造、プロセス、ルーチン、または他のプログラミング構成の組み合わせで具現される多様なアルゴリズムを含み、C、C++、ジャバ(Java)、アセンブラー(assembler)、パイソン(Python)などのようなプログラミングまたはスクリプト言語として具現され得る。機能的な側面は、一つ以上のプロセッサーにおいて実行されるアルゴリズムとして具現され得る。また、本実施形態は、電子的な環境設定、信号処理、および/またはデータ処理などのために、従来の技術を採用することができる。「メカニズム」、「要素」、「手段」、「構成」のような用語は、広く使用され得、機械的かつ物理的な構成として限定されるものではない。前記用語は、プロセッサーなどと連携してソフトウェアの一連の処理(routines)の意味を含むことができる。
【0155】
前述した実施形態は、一例示に過ぎず、後述する請求項の範囲内において他の実施形態が具現され得る。
【外国語明細書】