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

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

▶ ネオサピエンス株式会社の特許一覧

特許7178028多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム
<>
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図1
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図2
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図3
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図4
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図5
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図6
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図7
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図8
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図9
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図10
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図11
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図12
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図13
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図14
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図15
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図16
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図17
  • 特許-多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-16
(45)【発行日】2022-11-25
(54)【発明の名称】多言語テキスト音声合成モデルを利用した音声翻訳方法およびシステム
(51)【国際特許分類】
   G10L 13/10 20130101AFI20221117BHJP
   G10L 13/00 20060101ALI20221117BHJP
   G10L 13/033 20130101ALI20221117BHJP
   G10L 15/00 20130101ALI20221117BHJP
   G06F 40/58 20200101ALI20221117BHJP
【FI】
G10L13/10 112Z
G10L13/00 100G
G10L13/033 102A
G10L15/00 200C
G06F40/58
【請求項の数】 11
(21)【出願番号】P 2020538666
(86)(22)【出願日】2019-01-11
(65)【公表番号】
(43)【公表日】2021-05-06
(86)【国際出願番号】 KR2019000513
(87)【国際公開番号】W WO2019139431
(87)【国際公開日】2019-07-18
【審査請求日】2020-07-10
(31)【優先権主張番号】10-2018-0004047
(32)【優先日】2018-01-11
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2018-0036377
(32)【優先日】2018-03-29
(33)【優先権主張国・地域又は機関】KR
(31)【優先権主張番号】10-2019-0004188
(32)【優先日】2019-01-11
(33)【優先権主張国・地域又は機関】KR
【前置審査】
(73)【特許権者】
【識別番号】519018864
【氏名又は名称】ネオサピエンス株式会社
【氏名又は名称原語表記】NEOSAPIENCE, INC.
(74)【代理人】
【識別番号】100121728
【弁理士】
【氏名又は名称】井関 勝守
(74)【代理人】
【識別番号】100165803
【弁理士】
【氏名又は名称】金子 修平
(74)【代理人】
【識別番号】100170900
【弁理士】
【氏名又は名称】大西 渉
(72)【発明者】
【氏名】ギム テス
(72)【発明者】
【氏名】イ ヨングン
【審査官】大野 弘
(56)【参考文献】
【文献】国際公開第2017/168870(WO,A1)
【文献】米国特許出願公開第2015/0186359(US,A1)
【文献】特開2017-032839(JP,A)
【文献】Huaiping Ming et al.,A Light-weight Method of Building an LSTM-RNN-based Bilingual TTS System,2017 International Conference on Asian Language Processing (IALP),IEEE,2017年12月05日,pp.201-204,入手元 IEL Online (IEEE Xplore)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/10
G10L 13/00
G10L 13/033
G10L 15/00
G06F 40/58
(57)【特許請求の範囲】
【請求項1】
システムのプロセッサにより遂行される多言語(multilingual)テキスト音声合成(text-to-speech synthesis)モデルを利用した音声翻訳方法であって、
第1の言語の学習テキスト、前記第1の言語の学習テキストに対応する第1の言語の学習音声データおよび前記第1の言語の学習音声データに関連する第1の言語に対する話者の情報、並びに、第2の言語の学習テキスト、前記第2の言語の学習テキストに対応する第2の言語の学習音声データおよび前記第2の言語の学習音声データに関連する第2の言語に対する話者の情報に基づいて学習された、単一の人工ニューラルネットワークの多言語テキスト音声合成(text-to-speech synthesis)モデルを生成するステップと、
前記第1の言語の入力音声データおよび前記第1の言語に対する話者の発声特徴を受信するステップと、
前記第1の言語の前記入力音声データを前記第1の言語のテキストに変換するステップと、
前記第1の言語の前記テキストを前記第2の言語のテキストに変換するステップと、
前記第2の言語の前記テキストおよび前記第1の言語に対する話者の発声特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップと、を含み、
前記第1の言語の学習テキストおよび前記第2の言語の学習テキストは、字母単位、文字単位または音素単位に分離され、少なくとも1つの埋め込み層によって変換された複数のテキストの埋め込みベクトル を含む方法。
【請求項2】
前記第1の言語に対する前記話者の発声特徴は、前記第1の言語の入力音声データから特徴ベクトルを抽出して生成される、請求項1に記載の方法。
【請求項3】
前記第1の言語の前記入力音声データから前記第1の言語に対する前記話者の感情的特徴(emotion feature)を生成するステップをさらに含み、
前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成する前記ステップは、前記第2の言語の前記テキスト、および前記第1の言語に対する前記話者の発声特徴および前記感情的特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップを含む、請求項1に記載の方法。
【請求項4】
前記感情的特徴は、前記話者の発話内容に内在された感情に関する情報を含む、請求項3に記載の方法。
【請求項5】
前記第1の言語の前記入力音声データから前記第1の言語に対する前記話者の韻律的特徴(prosody feature)を生成するステップをさらに含み、
前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成する前記ステップは、前記第2の言語の前記テキスト、および前記第1の言語に対する前記話者の発声特徴および前記韻律的特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップを含む、請求項1に記載の方法。
【請求項6】
前記韻律的特徴は、発話速度に関する情報、発音アクセントに関する情報、音高に関する情報および休止区間に関する情報のうち少なくとも1つを含む、請求項5に記載の方法。
【請求項7】
システムのプロセッサにより遂行される多言語(multilingual)テキスト音声合成(text-to-speech synthesis)モデルを利用したビデオ翻訳方法であって、
第1の言語の学習テキスト、前記第1の言語の学習テキストに対応する第1の言語の学習音声データおよび前記第1の言語の学習音声データに関連する第1の言語に対する話者の情報、並びに、第2の言語の学習テキスト、前記第2の言語の学習テキストに対応する第2の言語の学習音声データおよび前記第2の言語の学習音声データに関連する第2の言語に対する話者の情報に基づいて学習された、単一の人工ニューラルネットワークの多言語テキスト音声合成(text-to-speech synthesis)モデルを生成するステップと、
前記第1の言語の入力音声データを含むビデオデータ、前記第1の言語の前記入力音声データに対応する第1の言語のテキスト、および前記第1の言語に対する話者の発声特徴を受信するステップと、
前記ビデオデータから前記第1の言語の前記入力音声データを削除するステップと、
前記第1の言語の前記テキストを前記第2の言語のテキストに変換するステップと、
前記第2の言語の前記テキストおよび前記第1の言語に対する前記話者の発声特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップと、
前記第2の言語の前記テキストに対する出力音声データを前記ビデオデータに結合するステップと、を含み、
前記第1の言語の学習テキストおよび前記第2の言語の学習テキストは、字母単位、文字単位または音素単位に分離され、少なくとも1つの埋め込み層によって変換された複数のテキストの埋め込みベクトル を含む方法。
【請求項8】
前記第1の言語の前記入力音声データから前記第1の言語に対する前記話者の感情的特徴(emotion feature)を生成するステップをさらに含み、
前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成する前記ステップは、前記第2の言語の前記テキスト、および前記第1の言語に対する前記話者の発声特徴および前記感情的特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップを含む、請求項7に記載の方法。
【請求項9】
前記第1の言語の前記入力音声データから前記第1の言語に対する前記話者の韻律的特徴(prosody feature)を生成するステップをさらに含み、
前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成する前記ステップは、前記第2の言語の前記テキスト、および前記第1の言語に対する前記話者の発声特徴および前記韻律的特徴を前記単一の人工ニューラルネットワークの多言語テキスト音声合成モデルに入力して、前記第1の言語に対する話者の音声を模写する前記第2の言語の前記テキストに対する出力音声データを生成するステップを含む、請求項7に記載の方法。
【請求項10】
前記第1の言語に対する話者の発声特徴は、話者IDまたは話者埋め込みベクトルを含む、請求項1に記載の方法。
【請求項11】
請求項1~10のいずれか一項に記載の方法のステップを遂行する命令語を含むプログラムが記録された、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、多言語(multilingual)テキスト音声合成(text-to-speech synthesis)モデルを利用した音声翻訳方法およびシステムに関するものである。また、本開示は、多言語テキスト音声合成モデルを利用したビデオ翻訳方法およびシステムに関するものである。
【背景技術】
【0002】
一般的に、テキスト音声合成(TTS:Text-To-Speech)とも呼ばれる音声合成技術は、案内放送、ナビゲーション、AI秘書などのように人の声が必要なアプリケーションにおいて、実際の人の声を事前に録音せずに、必要な音声を再生するために使用される技術である。音声合成の典型的な方法は、音声を音素などの非常に短い単位で予めに切断して格納し、合成する文章を構成する音素を結合して、音声を合成する連結音声合成(concatenative TTS)と、音声的特徴をパラメータで表現し、合成する文章を構成する音声的特徴を表すパラメータを、ボコーダー(vocoder)を利用して文章に対応する音声に合成するパラメータ音声合成(parametric TTS)がある。
【0003】
一方、最近では、人工ニューラルネットワーク(artificial neural network)ベースの音声合成方法が活発に研究されており、この音声合成方法によって合成された音声は、従来の方法に比べてはるかに自然な音声的特徴を見せている。しかし、人工ニューラルネットワークベースの音声合成方法で新しい声の音声合成部を実現するためには、その声に対応する多くのデータが必要であり、このデータを利用したニューラルネットワークモデルの再学習が要求される。
【0004】
また、特定の言語のテキストを他の言語のテキストに翻訳し、翻訳された言語の音声に合成する研究も進められている。ここで、翻訳された言語の音声合成には、その言語の代表的な特徴を有する話者の音声データが使用されることができる。
【発明の概要】
【課題を解決するための手段】
【0005】
本開示の一実施例に係る多言語(multilingual)テキスト音声合成(text-to-speech synthesis)モデルを利用した音声翻訳方法は、第1の言語の学習テキストおよび第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップと、第1の言語の入力音声データおよび第1の言語に対する話者の発声特徴を受信するステップと、第1の言語の入力音声データを第1の言語のテキストに変換するステップと、第1の言語のテキストを第2の言語のテキストに変換するステップと、第2の言語のテキストおよび話者の発声特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップと、を含む。
【0006】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用した音声翻訳方法において、第1の言語に対する話者の発声特徴は、話者が第1の言語で発話した音声データから特徴ベクトルを抽出して生成される。
【0007】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用した音声翻訳方法は、第1の言語の入力音声データから第1の言語に対する話者の感情的特徴(emotion feature)を生成するステップをさらに含み、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップは、第2の言語のテキスト、および第1の言語に対する話者の発声特徴および感情的特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップを含む。
【0008】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用した音声翻訳方法において、感情的特徴は、話者の発話内容に内在された感情に関する情報を含む。
【0009】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用した音声翻訳方法は、第1の言語の入力音声データから第1の言語に対する話者の韻律的特徴(prosody feature)を生成するステップをさらに含み、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップは、第2の言語のテキスト、および第1の言語に対する話者の発声特徴および韻律的特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップを含む。
【0010】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用した音声翻訳方法において、韻律的特徴は、発話速度に関する情報、発音アクセントに関する情報、音高に関する情報および休止区間に関する情報のうち少なくとも1つを含む。
【0011】
本開示の一実施例に係る多言語(multilingual)テキスト音声合成(text-to-speech synthesis)モデルを利用したビデオ翻訳方法は、第1の言語の学習テキストおよび第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップと、第1の言語の入力音声データを含むビデオデータ、第1の言語の入力音声データに対応する第1の言語のテキスト、および第1の言語に対する話者の発声特徴を受信するステップと、ビデオデータから第1の言語の入力音声データを削除するステップと、第1の言語のテキストを第2の言語のテキストに変換するステップと、第2の言語のテキストおよび第1の言語に対する話者の発声特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップと、出力音声データをビデオデータに結合するステップと、を含む。
【0012】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用したビデオ翻訳方法は、第1の言語の入力音声データから第1の言語に対する話者の感情的特徴(emotion feature)を生成するステップをさらに含み、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップは、第2の言語のテキスト、および第1の言語に対する話者の発声特徴および感情的特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップを含む。
【0013】
本開示の一実施例に係る多言語テキスト音声合成モデルを利用したビデオ翻訳方法は、第1の言語の入力音声データから第1の言語に対する話者の韻律的特徴(prosody feature)を生成するステップをさらに含み、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップは、第2の言語のテキスト、および第1の言語に対する話者の発声特徴および韻律的特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップを含む。
【0014】
また、上述したような多言語テキスト音声合成モデルを利用した音声翻訳およびビデオ翻訳方法を具現するためのプログラムは、コンピュータ読み取り可能な記録媒体に記録されることができる。
【図面の簡単な説明】
【0015】
図1図1は、一実施例に係る音声翻訳システムを示すブロック図である。
図2図2は、一実施例に係る音声翻訳部の詳細構成を示すブロック図である。
図3図3は、一実施例に係る音声合成部の詳細構成を示すブロック図である。
図4図4は、一実施例に係る韻律翻訳部(prosody translation)の詳細構成を示すブロック図である。
図5図5は、一実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
図6図6は、他の実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
図7図7は、さらに他の実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
図8図8は、一実施例に基づいて多言語の音声を合成するための単一の人工ニューラルネットワークのテキスト音声合成モデルを学習する方法を示す図である。
図9図9は、一実施例に基づいて多言語の音声を合成するための単一の人工ニューラルネットワークのテキスト音声合成モデルを学習する方法を示す図である。
図10図10は、一実施例に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを利用して、多言語の音声を合成する方法を示す図である。
図11図11は、一実施例に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを利用して、多言語の音声を合成する方法を示す図である。
図12図12は、一実施例に係るビデオ翻訳システムの構成を示すブロック図である。
図13図13は、他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
図14図14は、さらに他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
図15図15は、さらに他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
図16図16は、一実施例に係る音声翻訳方法を示すフローチャートである。
図17図17は、一実施例に係るビデオ翻訳方法を示すフローチャートである。
図18図18は、一実施例に係るテキスト音声合成システムのブロック図である。
【発明を実施するための形態】
【0016】
開示された実施例の利点および特徴、そしてそれらを達成する方法は、添付の図面と共に後述される実施例を参照すると明確である。しかし、本開示は、以下において開示される実施形態に限定されるものではなく、異なる多様な形態で具現されることができ、単に本実施例は、本開示が完全になるようにし、本開示が属する技術分野において通常の知識を有する者に発明の範疇を完全に知らせるために提供されるだけのものである。
【0017】
本明細書において使用される用語について簡略に説明し、開示された実施例について具体的に説明する。
【0018】
本明細書において使用される用語は、本開示での機能を考慮しながら可能な現在広く使用される一般的な用語を選択したが、これは関連分野に携わる技術者の意図または判例、新しい技術の出現などによって異なることができる。また、特定の場合、出願人が任意に選定した用語もあり、この場合は該当する発明の説明部分で詳細にその意味を記載する。したがって、本開示において使用される用語は、単純な用語の名称ではなく、その用語が有する意味と本開示の全般にわたる内容に基づいて定義されるべきである。
【0019】
本明細書においての単数の表現は、文脈上明らかに単数であるものと特定していない限り、複数の表現を含む。また、複数の表現は、文脈上明らかに複数であるものと特定していない限り、単数の表現を含む。
【0020】
明細書全体においてある部分がある構成要素を「含む」とするとき、これは特に反対の記載がない限り、他の構成要素を除外するのではなく、他の構成要素をさらに含むことが可能であることを意味する。
【0021】
また、明細書において使用される「部」という用語は、ソフトウェアまたはハードウェア構成要素を意味し、「部」は、ある役割を遂行する。しかしながら、「部」は、ソフトウェアまたはハードウェアに限定される意味ではない。「部」は、アドレッシングできる格納媒体にあるように構成することもでき、1つまたはそれ以上のプロセッサを再生させるように構成されることもできる。したがって、一例として「部」は、ソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素およびタスクの構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイおよび変数を含む。構成要素と「部」の中で提供される機能は、より少数の構成要素および「部」で結合されたり、追加の構成要素と「部」にさらに分離されたりすることができる。
【0022】
本開示の一実施例によれば、「部」は、プロセッサおよびメモリで具現されることができる。用語「プロセッサ」は、汎用プロセッサ、中央処理装置(CPU)、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、アプリケーションプロセッサ(AP)、コントローラ、マイクロコントローラ、状態マシンなどを含むように広く解釈されるべきである。いくつかの環境において「プロセッサ」は、カスタムIC(ASIC)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)などを称することもできる。用語「プロセッサ」は、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサの組み合わせ、DSPコアと結合した1つ以上のマイクロプロセッサの組み合わせ、または任意の他のこのような構成の組み合わせのような処理デバイスの組み合わせを称することもできる。
【0023】
用語「メモリ」は、電子情報を格納可能な任意の電子コンポーネントを含むように広く解釈されるべきである。用語メモリは、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、プログラマブル読み出し専用メモリ(PROM)、消去可能なプログラマブル読み出し専用メモリ(EPROM)、電気的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリ、磁気または光学データ記憶装置、レジスタなどのプロセッサ-読み出し可能媒体の多様なタイプを称することもできる。プロセッサがメモリから情報を読み取りし/したり、メモリに情報を記録することができたりすれば、メモリは、プロセッサと電子通信状態にあると言われる。プロセッサに集積されたメモリは、プロセッサと電子通信状態にある。
【0024】
以下では、添付した図面を参照して、実施例に対して本開示が属する技術分野における通常の知識を有する者が容易に実施できるように詳細に説明する。そして図面で本開示を明確に説明するために説明と関係ない部分は省略する。
【0025】
図1は、本開示の一実施例に係る音声翻訳システムを示すブロック図である。
【0026】
図示されたように、音声翻訳システム(100)は、入力部(110)、音声翻訳部(120)および出力部(130)を含むことができる。入力部(110)は、音声を受信して、音声翻訳部(120)に第1の言語の音声データを送信することができる。入力部(110)は、音声を受信できる多様な手段を含むことができる。例えば、入力部(110)は、ユーザーから直接音声を受信できるマイクロフォン(microphone)、ボイスレコーダー(voice recorder)、ヘッドセット(headset)などのような多様な音声入力装置または手段のうち1つを含むことができる。他の例において、入力部(110)は、メモリまたはデータベースに格納されている音声データを受信できる入力装置であることができる。さらに他の例において、入力部(110)は、ブルートゥース(Blutooth:登録商標)、WiFi、インターネットなどの無線または有線ネットワークを介して音声データを受信できる無線または有線入力装置であることができる。さらに他の例において、入力部(110)は、メモリに格納されたビデオデータまたは映像ファイル、オンライン上でダウンロード可能なビデオデータまたは映像ファイルから音声データを抽出できるプロセッサまたは音声処理装置であることができる。
【0027】
音声翻訳部(120)は、第1の言語の音声データを第2の言語の音声データに変換することができる。本開示において、「第1の言語」は、韓国語、日本語、中国語、英語などの多様な国や民族が使用するさまざまな言語のうち1つを示すことができ、「第2の言語」は、第1の言語と異なる国や民族が使用する言語のうち1つを示すことができる。音声翻訳部(120)は、以下で詳細に説明するように、第1の言語の音声を第2の言語の音声に翻訳するために、人工ニューラルネットワークまたは機械学習モデルを使用することができる。音声翻訳部(120)に使用される人工ニューラルネットワークまたは機械学習モデルは、回帰型ニューラルネットワーク(RNN:recurrent neural network)、長・短期記憶モデル(LSTM:long short-term memory model)、ディープニューラルネットワーク(DNN:deep neural network)、畳み込みニューラルネットワーク(CNN:convolution neural network)などを含む多様な人工ニューラルネットワークモデルのうちある1つまたはこれらの組み合わせで構成されることができる。
【0028】
一実施例において、音声翻訳部(120)は、第1の言語の音声を第2の言語の音声に翻訳する場合において、第1の言語を使用する話者の発声特徴、韻律的特徴または感情的特徴のうち少なくとも1つを反映して、第2の言語の音声データを生成することができる。他の実施例において、音声翻訳部(120)は、第1の言語の音声を第2の言語の音声に翻訳するにおいて、第1の言語の音声の話者ではない他の話者の発声特徴、韻律的特徴または感情的特徴のうち少なくとも1つを反映して、第2の言語の音声データを生成することもできる。
【0029】
出力部(130)は、音声翻訳部(120)によって生成された第2の言語の音声データを出力することができる。出力部(130)は、音声を出力できる手段を含むことができる。例えば、出力部(130)は、第2の言語の音声データを音に変換できるスピーカー、ヘッドセット、ヘッドフォン、イヤフォンなどのような多様な音声入力装置または手段のうち1つを含むことができる。他の例において、出力部(130)は、メモリまたはデータベースに音声データを送信して格納できる出力装置であることができる。さらに他の例において、出力部(130)は、ブルートゥース(登録商標)、WiFi、インターネットなどの無線または有線ネットワークを介して音声データを送信できる無線または有線出力装置であることができる。さらに他の例において、出力部(130)は、ビデオデータまたは映像ファイルに音声データを結合して、メモリに転送及び格納したり、オンライン上でダウンロード可能に変換したりすることができるプロセッサまたは音声処理装置であることができる。
【0030】
図2は、本開示の一実施例に係る音声翻訳部の詳細構成を示すブロック図である。
【0031】
音声翻訳部(120)は、音声認識部(210)、機械翻訳部(220)、音声合成部(230)、発声特徴抽出部(240)、感情的特徴抽出部(250)および韻律的特徴抽出部(260)または韻律翻訳部(270)を含むことができる。
【0032】
音声認識部(210)は、第1の言語の音声データを第1の言語のテキストに変換することができる。音声認識部(210)は、第1の言語の音声データを第1の言語のテキストに変換するために、本発明の技術分野において知られている多様な音声認識アルゴリズムのうち1つを使用することができる。例えば、音声認識部(210)が使用する音声認識アルゴリズムは、HMM(hidden markov model)、GMM(Gaussian mixuture model)、SVM(support vector machine)のような統計的パターン認識方法、またはRNN、LSTM、DNN、CNNのような人工ニューラルネットワークモデルのうちある1つまたはこれらの組み合わせを含むことができるが、これに限定されるものではない。
【0033】
機械翻訳部(220)は、音声認識部(210)から第1の言語のテキストを受信して、第2の言語のテキストを生成することができる。つまり、機械翻訳部(220)は、第1の言語のテキストを、これと同一または類似の意味を有する第2の言語のテキストに変換する。例えば、機械翻訳部(220)が第1の言語のテキストを第2の言語のテキストに変換するために、統計的機械翻訳(statistical machine translation)、人工ニューラルネットワーク機械翻訳(neural network machine translation)などの多様な機械翻訳アルゴリズムのうち1つを使用することができるが、これに限定されるものではない。機械翻訳部(220)が機械翻訳アルゴリズムを使用する場合、複数の第1の言語のテキストと、これに対応する複数の第2の言語のテキストに基づいて機械学習を実行することによって、機械翻訳モデルを生成することができる。機械翻訳部(220)は、このように予め学習された機械翻訳モデルに第1の言語のテキストを入力して、第2の言語のテキストを生成することができる。
【0034】
音声合成部(230)は、機械翻訳部(220)から第2の言語のテキストを受信し、これに対応する第2の言語の音声データを出力することができる。
【0035】
一実施例において、音声合成部(230)は、第2の言語のテキストに加えて第1の言語に対する話者の発声特徴を受信して、この話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。ここで、第1の言語に対する話者の発声特徴は、その話者の発声の音色または話者の発声の音高のうち少なくとも1つを含むことができる。
【0036】
他の実施例において、音声合成部(230)は、第2の言語のテキストに加えて第1の言語に対する話者の発声特徴および第1の言語に対する話者の感情的特徴(emotion feature)を受信して、この話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。ここで、第1の言語に対する話者の感情的特徴は、この話者の発話内容に内在された感情(例えば、話者の喜び、悲しみ、怒り、恐怖、信頼、嫌悪、驚きまたは期待のような感情)に関する情報を含むことができる。
【0037】
さらに他の実施例において、音声合成部(230)は、第2の言語のテキストに加えて第1の言語に対する話者の発声特徴および第1の言語に対する話者の韻律的特徴(prosody feature)を受信して、この話者の声を模写する第2の言語のテキストに対する出力音声データを生成することができる。ここで、第1の言語に対する話者の韻律的特徴は、発話速度に関する情報、発音アクセントに関する情報、音高に関する情報および休止区間に関する情報のうち少なくとも1つを含むことができる。
【0038】
音声合成部(230)において、第2の言語のテキストに加えて受信される第1の言語に対する話者の発声特徴、感情的特徴および韻律的特徴は、第1の言語に対する任意の話者が発話した音声データから抽出されることができる。一実施例において、第1の言語に対する話者の発声特徴、感情的特徴および韻律的特徴は、第1の言語を使用する互いに異なる話者が発話した音声データから抽出されることができる。例えば、第1の言語に対する感情的特徴と韻律的特徴は、第1の言語の音声データから抽出し、第1の言語に対する発声特徴は、第1の言語の音声データの話者ではない第3の話者(例えば、声が知られた芸能人、政治家などの有名人)が発話した音声データから抽出されることもできる。このように、第1の言語に対する話者が発話した音声データから抽出される、第1の言語に対する話者の発声特徴、感情的特徴および韻律的特徴は、音声翻訳部(120)の外部から受信されたり、音声翻訳部(120)に入力されたりする第1の言語の音声データから抽出されることもできる。
【0039】
また、第1の言語に対する話者の発声特徴、感情的特徴または韻律的特徴は、この話者が第1の言語で発話した音声データから特徴ベクトル(feature vector)を抽出して生成することができる。例えば、第1の言語で発話した音声データから抽出される特徴ベクトルは、MFCC(mel frequency cepstral coefficient)、LPC(linear predictive coefficients)、PLP(perceptual linear prediction)などのような多様な音声特徴ベクトルのうち1つを含むことができるが、これに限定されるものではない。
【0040】
音声翻訳部(120)は、入力される第1の言語の音声データから第1の言語に対する話者の発声特徴、感情的特徴または韻律的特徴を抽出するために、発声特徴抽出部(240)、感情的特徴抽出部(250)または韻律的特徴抽出部(260)のうち少なくとも1つを含むことができる。発声特徴抽出部(240)は、第1の言語の音声データから第1の言語に対する話者の発声特徴を生成することができる。感情的特徴抽出部(250)は、第1の言語の音声データから第1の言語に対する話者の感情的特徴を生成することができる。また、韻律的特徴抽出部(260)は、第1の言語の音声データから第1の言語に対する話者の韻律的特徴を生成することができる。音声合成部(230)は、機械翻訳部(220)から受信した第2の言語のテキストに加えて、発声特徴抽出部(240)、感情的特徴抽出部(250)または韻律的特徴抽出部(260)のうち少なくとも1つから受信された情報を受信して、第1の言語に対する話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。
【0041】
音声合成部(230)は、第2の言語のテキストを第2の言語の音声データに変換するために、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを使用することができる。単一の人工ニューラルネットワークのテキスト音声合成モデルは、以下で詳細に説明する人工ニューラルネットワークを利用した多様なテキスト音声合成モデルのうち1つであって、複数の第1の言語の学習テキストおよび複数の第1の言語の学習テキストに対応する第1の言語の学習音声データと、複数の第2の言語の学習テキストおよび複数の第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、テキスト音声合成モデルであることができる。
【0042】
この場合、音声合成部(230)は、第1の言語に対する話者の発声特徴と、感情的特徴または韻律的特徴のうち少なくとも1つを多言語テキスト音声合成モデルに入力して、第1の言語に対する話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。
【0043】
このように、音声翻訳部(120)が第1の言語に対する話者が発話した音声データから話者の特徴を抽出して、第1の言語の音声データから第2の言語の音声データを翻訳および合成するのに利用する場合、音声合成部(230)のテキスト音声合成モデルがその話者の声を事前に学習していない場合でも、その話者の音声を模写して第2の言語の出力音声データを生成することができる。また、音声翻訳部(120)が、第1の言語の音声データから第2の言語の音声データを翻訳および合成するにおいて、第1の言語に対する話者の感情的特徴または韻律的特徴を反映する場合、その話者が発話した音声に内在された感情や韻律を模写して第2の言語の出力音声データを生成することができる。
【0044】
音声翻訳部(120)は、韻律的特徴抽出部(260)から出力される第1の言語に対する韻律的特徴を受信して、第2の言語に対する韻律的特徴を生成する韻律翻訳部(270)をさらに含むことができる。図示されたように、韻律翻訳部(270)は、韻律的特徴抽出部(260)によって第1の言語の音声データから抽出された韻律的特徴を受信することができる。韻律翻訳部(270)は、第1の言語の音声データから抽出された韻律的特徴を第2の言語の出力音声の韻律的特徴に変換することができる。このように韻律翻訳部(270)が、第1の言語の入力音声から話者の韻律的特徴を抽出して第2の言語の韻律的特徴に翻訳する場合、第1の言語の音声の話す速度、区切り読み、強調などの特徴が第2の言語の出力音声に反映されることができる。
【0045】
図3は、本開示の一実施例に係る音声合成部の詳細構成を示すブロック図である。図示されたように、音声合成部(230)は、エンコーダ(310)(encoder)、アテンション(320)(attention)、およびデコーダ(330)(decoder)を含むことができる。音声合成部(230)に含まれたエンコーダ(310)は、第2の言語のテキストを受信して、合成すべき音声に対応する入力テキストがどれであるかを示す情報を生成する。また、アテンション(320)は、音声を合成すべき入力テキストの位置情報を生成する。デコーダ(330)は、アテンション(320)から受信した入力テキストの位置情報に基づいて、時間の経過に応じて該当の入力テキストに対応する音声データを生成する。
【0046】
また、音声合成部(230)に含まれたエンコーダ(310)およびデコーダ(330)は、話者の発声特徴、感情的特徴および韻律的特徴を受信することができる。ここで発声特徴、感情的特徴および韻律的特徴それぞれは、話者埋め込みベクトル(speaker embedding)、感情埋め込みベクトル(emotion embedding)、韻律埋め込みベクトル(prosody embedding)であることができる。音声合成部(230)に含まれたエンコーダ(310)、アテンション(320)およびデコーダ(330)は、以下の図5図7を参照して詳細に説明するように、第2の言語の入力テキストをこれと対応する第2の言語の音声データに変換するにおいて、目的話者の発声特徴、感情的特徴および/または韻律的特徴を反映して目的話者の音声を模写する、単一の人工ニューラルネットワークのテキスト音声合成モデルを構成することができる。本開示の一実施例において、音声合成部(230)が構成する単一の人工ニューラルネットワークのテキスト音声合成モデルは、シーケンスツーシーケンスの学習モデル(seq2seq:sequence-to-sequence model)を利用して学習されたものであることができる。例えば、シーケンスツーシーケンスの学習モデルは、RNNに基づいたエンコーダ-デコーダ構造(encoder-decoder architecture)(「Sequence to Sequence Learning with Neural Networks」、Ilya Sutskever、et al.、2014参照)にアテンション構造(attention mechanism)(「Neural Machine Translation by Jointly Learning to Align and Translate」、Dzmitry Bahdanau、et al.、2015および「Effective Approaches to Attention-based Neural Machine Translation」、Minh-Thang Luong、et al.、2015参照)を結合して具現されることができる。
【0047】
図4は、本開示の一実施例に係る韻律翻訳部(prosody translation)の詳細構成を示すブロック図である。
【0048】
図示されたように、韻律翻訳部(270)は、韻律エンコーダ(410)、アテンション(420)および韻律デコーダ(430)を含むことができる。韻律翻訳部(270)に含まれたエンコーダ(410)は、第1の言語の韻律的特徴を受信して、翻訳すべき韻律的特徴がどれであるかを示す情報を生成する。また、アテンション(420)は、翻訳すべき韻律的特徴の位置情報を生成する。デコーダ(430)は、アテンション(420)から受信した韻律的特徴の位置情報に基づいて、時間の経過に応じて該当の韻律的特徴に対応する第2の言語の韻律的特徴を生成する。
【0049】
韻律翻訳部(270)に含まれたエンコーダ(410)、アテンション(420)およびデコーダ(430)は、シーケンスツーシーケンスの学習モデル(seq2seq:sequence-to-sequence model)を利用して学習されたものであることができる。例えば、シーケンスツーシーケンスの学習モデルは、RNNに基づいたエンコーダ-デコーダ構造にアテンション構造(attention mechanism)を結合して具現されることができる。
【0050】
図5は、一実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
【0051】
人工ニューラルネットワークベースの音声合成部(230)は、多言語(言語1、言語2、...、言語N)の学習テキストとこれに対応する多言語の学習音声データのペアで構成されるデータベースを利用して、学習することができる。音声合成部(230)は、テキストを受信し、テキストを機械学習モデルに適用して出力された音声データを正解音声データと比較して、損失関数(loss function)を定義することができる。正解音声データは、目的話者によって直接録音された音声データであることができる。音声合成部(230)は、損失関数を誤差逆伝播(error back propagation)アルゴリズムを通じて学習し、最終的にランダムのテキストを入力したときに所望の出力音声データが生成される人工ニューラルネットワークを得ることができる。音声合成部(230)は、エンコーダ(510)、デコーダ(520)およびボコーダー(vocoder)(530)を含むことができる。図5のエンコーダ(510)およびデコーダ(520)は、それぞれ図3のエンコーダ(310)およびデコーダ(330)に対応することができる。また、デコーダ(520)に含まれたアテンション(monotonic attention)(521)は、図3のアテンション(320)に対応することができる。
【0052】
音声合成部(230)に含まれたエンコーダ(510)は、少なくとも1つの文字埋め込み(text embedding)(例:言語1、言語2、...、言語N)を受信することができる。ここで、文字埋め込みは、字母単位、文字単位、または音素(phoneme)単位に分離されたテキストに対応する埋め込みベクトルであることができる。エンコーダ(510)は、テキスト埋め込みベクトルを取得するために、すでに学習された機械学習モデルを使用することができる。エンコーダは、機械学習を遂行しながら機械学習モデルを更新することができるが、この場合、分離されたテキストに対するテキスト埋め込みベクトルも変更されることができる。
【0053】
音声合成部(230)に含まれたエンコーダ(510)は、テキスト埋め込みベクトルを全結合層(fully-connected layer)で構成されたプレネット(pre-net)モジュールに通過させることができる。プレネット(Pre-net)は、一般的なフィードフォワード層(feedforward layer)または線形層(linear layer)であることができる。
【0054】
エンコーダ(510)は、プレネット(pre-net)モジュールの出力をCBHGモジュールに通過させることができる。CBHGモジュールは、1次元畳み込みバンク(1D convolution bank)、最大プーリング(max pooling)、ハイウェイネットワーク(highway network)、双方向GRU(Bidirectional Gated Recurrent Unit)のうち少なくとも1つを含むことができる。エンコーダ(510)は、CBHGモジュールから出力される隠れ状態(hidden states)(h)をデコーダ(520)に出力することができる。エンコーダ(510)から出力される隠れ状態は、音声を合成すべき入力テキストがどれであるかを示す情報であることができる。
【0055】
デコーダ(520)のアテンション(521)(Monotonic Attention)は、エンコーダ(510)から受信した隠れ状態(h)を受信することができる。また、デコーダ(520)のアテンション(521)は、アテンションRNNから情報を受信することができる。アテンションRNNから受信した情報は、デコーダ(520)が以前の時間-ステップ(time-step)までどの音声を生成したのかに関する情報であることができる。また、デコーダ(520)のアテンション(521)は、アテンションRNNから受信した情報およびエンコーダ(510)からの受信した隠れ状態に基づいて、コンテキストベクトル(ct)を出力することができる。コンテキストベクトル(ct)は、現在の時間-ステップ(time-step)で入力テキストのうちどの部分から音声を生成するかを決定するための情報であることができる。例えば、デコーダ(520)のアテンション(521)は、音声生成の初期には、テキスト入力の前部分に基づいて音声を生成し、音声が生成されるにつれて、徐々にテキスト入力の後部分に基づいて音声を生成するようにする情報を出力することができる。
【0056】
デコーダ(520)は、全結合層で構成されたプレネット(pre-net)モジュール、GRUで構成されたアテンション(attention)RNNおよびレジデュアル(residual)GRUで構成されたデコーダRNNのセットを少なくとも1つ以上含むことができる。デコーダ(520)のデコーダRNNは、rフレームを生成することができる。デコーダ(520)は、生成されたrフレームを時間順に並べてメルスケールスペクトログラムで表現された音声データを出力することができる。
【0057】
音声を合成するために、デコーダ(520)は、話者の発声特徴に対応する情報であるワンホット話者ID(one-hot speaker id)を受信することができる。デコーダ(520)は、ルックアップテーブルからワンホット話者IDを検索して、ワンホット話者IDに対応する話者の埋め込みベクトル(s)を取得することができる。話者の埋め込みベクトル(s)は、エンコーダ(510)のCBHGモジュール、デコーダ(520)のデコーダRNNまたはアテンションRNNに出力されることができる。デコーダRNNまたはアテンションRNNは、話者別に異ならせてデコードをするように人工ニューラルネットワークの構造を構成することができる。
【0058】
また、音声合成部(230)は、人工ニューラルネットワークを学習するために、テキスト、話者インデックス、音声信号を含むデータベースを利用することができる。入力されたテキストは、文字単位のワンホットベクトル(one-hot vector)で構成されることができる。多言語テキストを入力とするためには、その多言語の文字をすべて表現できるワンホットベクトル(one-hot vector)で構成されることができる。ここに選択的に特定の言語を表す情報を追加で入力することができる。特定の言語を表す情報を通じて言語を変えることにより、特定の言語のスタイルに、特定の言語と異なる言語を発音する音声を合成することもできる。また、話者の情報を追加で入力して、話者別に異なる音声を合成したり、その話者が異なる言語を話すように音声を合成したりすることもできる。このように、テキスト、話者の情報、言語の情報などをそれぞれ人工ニューラルネットワークの入力として、その音声信号を正解とし、前述した方法と同様に学習することによって、テキストや話者の情報を入力として与えたときに、その話者の音声を出力できる音声合成部を得る。
【0059】
ボコーダー(530)は、デコーダ(520)の出力を受信することができる。ボコーダー(530)に含まれたCBHGモジュールは、デコーダ(520)の出力をリニアスケール(linear-scale)スペクトログラムに変換することができる。ボコーダー(530)に含まれたCBHGモジュールの出力は、マグニチュードスペクトログラム(magnitude spectrogram)であることができる。ボコーダー(530)は、スペクトログラムの位相(phase)をグリフィンリム(Griffin-Lim)アルゴリズムを通じて予測することができる。ボコーダー(530)は、逆短時間フーリエ変換(Inverse Short-Time Fourier Transform)を利用して、時間ドメイン(time domain)の音声信号を出力することができる。
【0060】
図6は、他の実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
【0061】
図示されたように、音声合成部(230)は、エンコーダ(610)、デコーダ(620)およびボコーダー(vocoder)(630)を含むことができる。図6のエンコーダ(610)およびデコーダ(620)は、それぞれ図3のエンコーダ(310)およびデコーダ(330)に対応することができる。また、デコーダ(620)に含まれたアテンション(monotonic attention)(621)は、図3のアテンション(320)に対応することができる。以下において、図6のエンコーダ(610)、デコーダ(620)およびボコーダー(630)の構成と機能のうち、図5のエンコーダ(510)、デコーダ(520)およびボコーダー(530)と同一または類似の構成と機能については説明を省略する。
【0062】
図6のデコーダ(620)は、図5のデコーダ(520)が話者の情報をワンホット話者IDで受信したのとは異なり、話者の音声を受信する。また、デコーダ(620)は、話者の音声から特徴情報を抽出するために、話者識別ネット(speaker identification net)を使用することができる。話者識別ネットワークは、話者を区分できる特徴を抽出することができる多様な形態の機械学習モデルのうち1つまたはこれらの組み合わせで具現されることができる。
【0063】
一実施例において、話者識別ネットは、機械学習モデルに基づいて話者の音声を話者埋め込みベクトルに変換することができる。話者埋め込みベクトルは、話者の発声特徴、感情的特徴および韻律的特徴のうち少なくとも1つに対する埋め込みベクトルであることができる。話者識別ネットの機械学習モデルは、複数の異なる言語に対する複数の話者の音声データを受信して、話者の発声特徴、韻律的特徴、感情的特徴などを機械学習することができる。
【0064】
話者識別ネットは、変換された話者埋め込みベクトル(s)をエンコーダ(610)のCBHG、デコーダ(620)のデコーダRNNおよびアテンションRNNに出力することができる。デコーダ(620)は、話者埋め込みベクトル(s)、入力テキストに基づいて複数のrフレームを生成することができる。デコーダ(620)は、複数のrフレームを時間順に並べてメルスペクトログラムで表現された出力音声データを生成することができる。ボコーダー(630)は、メルスペクトログラムで表現された出力音声データを時間ドメインの音声に変換することができる。
【0065】
図7は、さらに他の実施例に係る特定の言語の声模写のための人工ニューラルネットワークベースの音声合成部の構成を示す図である。
【0066】
図示されたように、音声合成部(230)は、エンコーダ(710)、デコーダ(720)およびボコーダー(730)を含むことができる。図7のエンコーダ(710)およびデコーダ(720)は、それぞれ図3のエンコーダ(310)およびデコーダ(330)に対応することができる。また、図7のデコーダ(720)に含まれたアテンション(724)は、図3のアテンション(320)に対応することができる。以下において、図7のエンコーダ(710)、デコーダ(720)およびボコーダー(730)の構成と機能のうち、図5および図6のエンコーダ(510、610)、デコーダ(520、620)およびボコーダー(530、630)と同一または類似の構成と機能については説明を省略する。
【0067】
図7において、エンコーダ(710)は、入力テキストを受信することができる。エンコーダ(710)が受信した入力テキストは、複数の言語に対するテキストを含むことができる。例えば、入力テキストは 「アンニョンハセヨ」または「How are you?」のような文章を含むことができる。エンコーダ(710)は、受信された入力テキストを字母単位、文字単位、音素(phoneme)単位に分離することができる。または、エンコーダ(710)は、字母単位、文字単位、音素(phoneme)単位に分離された入力テキストを受信することができる。
【0068】
エンコーダ(710)は、少なくとも1つの埋め込み層(例:EL言語1、EL言語2、...、EL言語N)を含むことができる。エンコーダ(710)の少なくとも1つの埋め込み層は、字母単位、文字単位、音素(phoneme)単位に分離された入力テキストをテキスト埋め込みベクトルに変換することができる。エンコーダ(710)は、分離された入力テキストをテキスト埋め込みベクトルに変換するために、すでに学習された機械学習モデルを使用することができる。エンコーダ(710)は、機械学習を遂行しながら機械学習モデルを更新することができるが、この場合、分離された入力テキストに対するテキスト埋め込むベクトルも変更されることができる。
【0069】
エンコーダ(710)は、テキスト埋め込みベクトルを全結合層(fully-connected layer)で構成されたDNNモジュールに通過させることができる。DNNは、一般的なフィードフォワード層(feedforward layer)または線形層(linear layer)であることができる。
【0070】
エンコーダ(710)は、DNNの出力をCNNとRNNの組み合わせが含まれたモジュールに通過させることができる。CNNは、畳み込みカーネル(convolution kernel)サイズによる地域的特性を捕捉することができ、RNNは、長期依存性(long term dependency)を捕捉することができる。エンコーダ(710)は、エンコーダの隠れ状態(h)を出力することができる。エンコーダ(710)から出力される隠れ状態は、音声を合成すべき入力テキストがどれであるかを示す情報であることができる。
【0071】
デコーダ(720)の埋め込み層は、エンコーダ(710)の埋め込み層と類似の演算を遂行することができる。埋め込み層は、話者IDを受信することができる。話者IDは、ワンホット話者ID(one-hot speaker ID)であることができ、この場合、ワンホット話者IDによって話者に応じた番号が付けられることができる。例えば、「第1の話者」の話者IDは「1」、「第2の話者」の話者IDは「2」、「第3の話者」の話者IDは「3」と付けられることができる。埋め込み層は、話者IDを話者埋め込むベクトル(s)に変換することができる。デコーダ(720)は、話者IDを話者埋め込むベクトル(s)に変換するために、すでに学習された機械学習モデルを使用することができる。デコーダ(720)は、機械学習を遂行しながら機械学習モデルを更新することができるが、この場合、話者IDに対する話者埋め込みベクトル(s)も変更されることができる。
【0072】
デコーダ(720)のアテンション(724)(Attention)は、エンコーダから受信した隠れ状態(h)を受信することができる。また、デコーダ(720)のアテンション(724)は、アテンションRNNから情報を受信することができる。アテンションRNNから受信した情報は、デコーダ(720)が以前の時間-ステップ(time-step)までどの音声を生成したのかに関する情報であることができる。また、デコーダ(720)のアテンション(724)は、アテンションRNNから受信した情報およびエンコーダ(710)からの受信した隠れ状態に基づいて、コンテキストベクトル(ct)を出力することができる。コンテキストベクトル(ct)は、現在の時間-ステップ(time-step)で入力テキストのうちどの部分から音声を生成するかを決定するための情報であることができる。例えば、デコーダ(720)のアテンション(724)は、音声生成の初期には、テキスト入力の前部分に基づいて音声を生成し、音声が生成されるにつれて、徐々にテキスト入力の後部分に基づいて音声を生成するようにする情報を出力することができる。
【0073】
デコーダ(720)は、話者埋め込みベクトル(s)をアテンションRNNおよびデコーダRNNに入力して、話者別に異ならせてデコードをするように人工ニューラルネットワークの構造を構成することができる。また、音声合成部(230)は、人工ニューラルネットワーク(単一の人工ニューラルネットワークのテキスト音声合成モデル)を学習させるために、テキスト、話者インデックス、音声データのペアで存在するデータベースを利用することができる。テキスト入力は、文字単位のワンホットベクトル(one-hot vector)で構成されることができる。音声合成部(230)は、多言語テキストを入力とするために、その多言語の文字をすべて表現できるワンホットベクトル(one-hot vector)で構成することができる。また、音声合成部(230)は、その言語を表す情報を追加で入力とすることができる。
【0074】
ダミーフレーム(725)は、以前の時間-ステップ(time-step)が存在しない場合、デコーダ(720)に入力されるフレームである。RNNは、自動回帰的(autoregressive)に機械学習をすることができる。つまり、直前の時間-ステップ(722)で出力されたrフレームは、現在の時間-ステップ(723)の入力になることができる。最初の時間-ステップ(721)では直前の時間-ステップが存在しないため、デコーダは、最初の時間-ステップの機械学習にダミーフレーム(725)を入力することができる。
【0075】
デコーダ(720)は、全結合層で構成されたDNN、GRUで構成されたアテンション(attention)RNNおよびレジデュアル(residual)GRUで構成されたデコーダRNNのセット(721、722、723)を少なくとも1つ以上含むことができる。ここで、DNNは、一般的なフィードフォワード層(feedforward layer)または線形層(linear layer)であることができる。また、アテンションRNNは、アテンションで使用される情報を出力する層である。アテンションについては上述したため、詳細な説明は省略する。デコーダRNNは、アテンションから入力テキストの位置情報を受信することができる。つまり、位置情報は、デコーダ(720)が入力テキストのどの位置を音声に変換しているかに関する情報であることができる。デコーダRNNは、アテンションRNNから情報を受信することができる。アテンションRNNから受信した情報は、デコーダ(720)が以前の時間-ステップ(time-step)までどの音声を生成したのかに関する情報であることができる。デコーダRNNは、今まで生成した音声に後続する次の出力音声を生成することができる。出力音声は、メルスペクトログラムの形態であるrフレームを含むことができる。
【0076】
テキスト音声合成のために、DNN、アテンションRNNおよびデコーダRNNの動作は、繰り返して遂行されることができる。例えば、最初の時間-ステップ(721)で取得されたrフレームは、次の時間-ステップ(722)の入力となることができる。また、時間-ステップ(722)で出力されたrフレームは、次の時間-ステップ(723)の入力となることができる。
【0077】
上述したような過程を通じて、テキストのすべての単位に対する音声が生成されることができる。音声合成部(230)は、それぞれの時間-ステップごとに出たメルスペクトログラムを時間順に連結(concatenate)して、全体テキストに対するメルスペクトログラムの音声を取得することができる。全体テキストに対するメルスペクトログラムの音声は、ボコーダ(730)に出力されることができる。
【0078】
本開示の一実施例によるボコーダー(730)のCNNまたはRNNは、エンコーダのCNNまたはRNNと類似な動作をすることができる。つまり、ボコーダー(730)のCNNまたはRNNは、地域的特性と長期依存性を捕捉することができる。ボコーダー(730)のCNNまたはRNNは、リニアスケールスペクトログラム(linear-scale spectrogram)を出力することができる。リニアスケールスペクトログラムは、マグニチュードスペクトログラム(magnitude spectrogram)であることができる。ボコーダー(730)は、スペクトログラムの位相(phase)をグリフィンリム(Griffin-Lim)アルゴリズムを通じて予測することができる。ボコーダー(730)は、逆短時間フーリエ変換(Inverse Short-Time Fourier Transform)を利用して、時間ドメイン(time domain)の音声信号を出力することができる。
【0079】
本開示の他の実施例によるボコーダー(730)は、機械学習モデルに基づいて、メルスペクトログラムから音声信号を取得することができる。機械学習モデルは、メルスペクトログラムと音声信号との間の相関関係を機械学習したモデルであることができる。例えば、WaveNetまたはWaveGlowのようなモデルが使用されることができる。
【0080】
人工ニューラルネットワークベースの音声合成部(230)は、多言語のテキストと音声データのペアで存在する大容量のデータベースを利用して学習する。音声合成部(230)は、テキストを受信し、出力された音声データを正解音声信号と比較して、損失関数(loss function)を定義することができる。音声合成部(230)は、損失関数を誤差逆伝播(error back propagation)アルゴリズムを通じて学習し、最終的にランダムのテキストを入力したときに所望の音声出力が出る人工ニューラルネットワークを得ることができる。
【0081】
音声合成部(230)は、前述したような方法で生成された単一の人工ニューラルネットワークのテキスト音声合成モデルを利用して、言語を変えることにより、第1の言語のスタイルで第2の言語を発音する音声を合成することができる。また、音声合成部(230)は、話者の発声特徴を受信し、その話者のスタイルに応じた音声を合成することができる。また、音声合成部(230)は、第1の言語を駆使する話者が第2の言語を話すように音声を合成することもできる。
【0082】
音声合成部(230)は、テキスト、話者の発声特徴、言語の情報などを、それぞれ人工ニューラルネットワークの入力として音声データを出力することができる。音声合成部(230)は、出力された音声データと正解音声データを比較して学習することによって、テキストと話者の発声特徴を受信するとき、その話者の音声を模写してテキストを読んだような出力音声データを生成することができる。
【0083】
図8は、本開示の一実施例に基づいて多言語の音声を合成するための単一の人工ニューラルネットワークのテキスト音声合成モデルを学習する方法を示す図である。
【0084】
図示されたように、複数の言語に対するテキストとこれに対応する音声データに基づいて、単一の人工ニューラルネットワークのテキスト音声合成モデルを生成する学習ステップ(training stage)は、韓国語のテキストと音声データのペアに基づいて実行されることができる。例えば、韓国語のテキストである「アンニョンハセヨ?」をエンコーダ(810)に入力し、韓国語話者ベクトルをエンコーダ(810)とデコーダ(820)に入力する。エンコーダ(810)とデコーダ(820)は、図3および図5図7に図示されたエンコーダ(310、510、610、710)とデコーダ(330、520、620、720)に対応することができる。韓国語話者ベクトルは、図5図7の話者埋め込みベクトル(s)に対応することができる。韓国語話者ベクトルは、話者(830)の発声特徴、韻律的特徴または感情的特徴のうち少なくとも1つに対応することができる。
【0085】
図3および図5~7を参照して説明したように、デコーダ(820)は、エンコーダ(810)から韓国語音声出力に対応するテキストがどれなのかを示す情報(つまり、エンコーダの隠れ状態)を受信することができる。デコーダ(820)は、エンコーダの隠れ状態および韓国語話者ベクトルに基づいて韓国語音声出力を生成することができる。音声合成部(230)は、生成された音声出力と実測音声の差異がある場合、機械学習をして単一の人工ニューラルネットワークのテキスト音声合成モデルを更新することができる。音声合成部(230)は、生成された音声出力と実測音声の差が最小になるように、単一の人工ニューラルネットワークのテキスト音声合成モデルを繰り返して更新することができる。
【0086】
図9は、本開示の一実施例に基づいて多言語の音声を合成するための単一の人工ニューラルネットワークのテキスト音声合成モデルを学習する方法を示す図である。
【0087】
図示されたように、複数の言語に対するテキストとこれに対応する音声データに基づいて、単一の人工ニューラルネットワークのテキスト音声合成モデルを生成する学習ステップ(training stage)は、図8に図示された学習ステップに続いて、英語のテキストと音声データのペアに基づいて実行されることができる。例えば、英語のテキストである「Hello?」をエンコーダ(910)に入力し、英語話者ベクトルをエンコーダ(810)とデコーダ(820)に入力する。
【0088】
図3および図5~7を参照して説明したように、デコーダ(820)は、エンコーダ(810)から英語音声出力に対応するテキストがどれなのかを示す情報(つまり、エンコーダの隠れ状態)を受信することができる。デコーダ(820)は、エンコーダの隠れ状態および英語話者ベクトルに基づいて、英語音声出力を生成することができる。音声合成部(230)は、生成された音声出力と実測音声の差異がある場合、機械学習をして単一の人工ニューラルネットワークのテキスト音声合成モデルを更新することができる。音声合成部(230)は、生成された音声出力と実測音声の差異が最小になるように、単一の人工ニューラルネットワークのテキスト音声合成モデルを繰り返して更新することができる。
【0089】
図8の音声合成部(230)による学習ステップおよび図10の音声合成部(230)による学習ステップが別途図示されているが、これらの学習ステップは、同じ単一の人工ニューラルネットワークのテキスト音声合成モデルを生成するための全体学習過程の一部を示したものであることができる。つまり、音声合成部(230)は、複数の言語のテキストおよび複数の言語のテキストに対応する音声データを受信して、各言語のテキストおよびそれに対応する音声データに対する学習を繰り返して遂行することにより、単一の人工ニューラルネットワークのテキスト音声合成モデルを生成することができる。
【0090】
図10は、本開示の一実施例に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを利用して、多言語音声を合成する方法を示す図である。
【0091】
図示されたように、図8および図9に図示された方法に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを適用して、多言語音声出力を生成するテストステップ(test stage)は、エンコーダ(810)に英語のテキスト(例:「Hello?」)を入力し、エンコーダ(810)とデコーダ(820)に韓国語話者ベクトル(830)を入力して実行されることができる。韓国語話者ベクトルは、話者の発声特徴に対する埋め込みベクトル、韻律的特徴に関する埋め込みベクトル、または感情的特徴に関する埋め込みベクトルのうち少なくとも1つを含むことができる。
【0092】
この場合、デコーダ(820)は、英語のテキストおよび韓国語話者ベクトルを単一の人工ニューラルネットワークのテキスト音声合成モデルに適用して、韓国語のスタイルの英語音声(例:「Hello?」)を生成することができる。単一の人工ニューラルネットワークのテキスト音声合成モデルは、図8および図9の方法に基づいて生成した単一の人工ニューラルネットワークのテキスト音声合成モデルであることができる。デコーダ(1020)が生成した音声は、韓国語話者の音声を模写して英語「Hello?」を発音した効果を出す音声であることができる。
【0093】
図11は、本開示の一実施例に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを利用して、多言語音声を合成する方法を示す図である。
【0094】
図示されたように、図8および図9に図示された方法に基づいて学習された単一の人工ニューラルネットワークのテキスト音声合成モデルを適用して、多言語音声出力を生成するテストステップ(test stage)は、エンコーダ(810)に韓国語のテキスト(例:「アンニョンハセヨ?」)を入力し、エンコーダ(810)とデコーダ(820)に英語話者ベクトル(930)を入力して実行されることができる。英語話者ベクトルは、話者の発声特徴に対する埋め込みベクトル、韻律的特徴に関する埋め込みベクトル、または感情的特徴に関する埋め込みベクトルのうち少なくとも1つを含むことができる。
【0095】
この場合、デコーダ(820)は、韓国語のテキストおよび英語話者ベクトルを単一の人工ニューラルネットワークのテキスト音声合成モデルに適用して、英語のスタイルの英語音声(例:「アンニョンハセヨ?」)を生成することができる。単一の人工ニューラルネットワークのテキスト音声合成モデルは、図8および図9の方法に基づいて生成した単一の人工ニューラルネットワークのテキスト音声合成モデルであることができる。デコーダ(820)が生成した音声は、英語話者の音声を模写して英語「アンニョンハセヨ?」を発音した効果を出す音声であることができる。
【0096】
図12は、本開示の一実施例に係るビデオ翻訳システムの構成を示すブロック図である。
【0097】
図示されたように、ビデオ翻訳システム(1200)は、音声除去部(1210)および音声合成部(1220)を含むことができる。音声合成部(1220)は、図2図11の音声合成部(230)に対応することができる。
【0098】
ビデオ翻訳システム(1200)は、第1の言語の学習テキストおよび前記第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップを遂行することができる。ビデオ翻訳システム(1200)は、単一の人工ニューラルネットワークのテキスト音声合成モデルをメモリに格納していることができる。または、ビデオ翻訳システム(1200)は、単一の人工ニューラルネットワークのテキスト音声合成モデルをネットワークから受信することができる。
【0099】
音声除去部(1210)は、第1の言語のビデオデータを受信することができる。第1の言語のビデオデータは、第1の言語の入力音声データを含むことができる。音声除去部(1210)は、第1の言語のビデオデータから第1の言語の入力音声を除去したビデオデータを出力することができる。
【0100】
音声合成部(1220)は、予め翻訳されたテキストを受信することができる。予め翻訳されたテキストは、第1の言語の入力音声データを同一または類似の意味の第1の言語のテキストに変換した後、第1の言語のテキストをこれに対応する第2の言語のテキストに翻訳したテキストであることができる。例えば、予め翻訳されたテキストは、第1の言語のビデオデータに含まれた第2の言語の字幕データであることができる。
【0101】
音声合成部(1220)は、話者のIDおよびタイミング情報を受信することができる。一実施例において、話者IDは、第1の言語のビデオデータに含まれた音声データの話者の発声特徴を表すことができたり、第1の言語を使用する他の話者の発声特徴を表したりすることもできる。例えば、話者IDは、第1の言語のビデオデータに含まれた音声データの話者ではない、第3の話者(例えば、声が知られている芸能人、政治家などの有名人)が発話した音声データから抽出されることもできる。ここで、話者IDは、図5図7の話者埋め込みベクトル(s)に対応することができる。話者IDは、特定の話者(例えば、第1の言語に対する話者)に対応する埋め込みベクトルを表すことができる。したがって、音声合成部(1220)は、話者IDに基づいて特定の話者の声を模写する音声を生成することができる。一方、タイミング情報は、予め翻訳されたテキストが、ビデオデータと一緒に表示される時点を示す情報であることができる。または、タイミング情報は、予め翻訳されたテキストに対応する第2の言語の音声が、ビデオデータと一緒に表示される時点を示す情報であることができる。音声合成部(1220)は、予め翻訳されたテキストおよび話者IDを単一の人工ニューラルネットワークのテキスト音声合成モデルに適用して翻訳された言語の音声を取得することができる。ビデオ翻訳システム(1200)は、タイミング情報に基づいて翻訳された言語の音声および音声が除去されたビデオデータを結合することができる。これにより、翻訳された言語の音声が結合されたビデオデータは、第2の言語の音声を含んでいることができる。
【0102】
図13は、本開示の他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
【0103】
図示されたように、ビデオ翻訳システム(1300)は、音声除去部(1310)、音声認識部(1320)、機械翻訳部(1330)、音声合成部(1340)、話者認識部(1350)、タイミング同期化部(1355)および発声特徴抽出部(1360)を含むことができる。
【0104】
図13の音声除去部(1310)および音声合成部(1340)は、図12の音声除去部(1210)および音声合成部(1220)にそれぞれ対応することができる。したがって、図13に関する説明のうち図12と重複する説明は省略する。
【0105】
ビデオ翻訳システム(1300)は、第1の言語の学習テキストおよび前記第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップを遂行することができる。ビデオ翻訳システム(1300)は、単一の人工ニューラルネットワークのテキスト音声合成モデルをメモリに格納していることができる。または、ビデオ翻訳システム(1300)は、単一の人工ニューラルネットワークのテキスト音声合成モデルをネットワークから受信することができる。
【0106】
ビデオ翻訳システム(1300)は、第1の言語の入力音声データを含むビデオデータ、第1の言語の入力音声データに対応する第1の言語のテキスト、および前記第1の言語に対する話者の発声特徴を受信するステップを遂行することができる。
【0107】
図13を参照すると、音声除去部(1310)は、第1の言語のビデオデータを受信することができる。第1の言語のビデオデータは、第1の言語の入力音声データを含むビデオデータであることができる。音声除去部(1310)は、ビデオデータから第1の言語の入力音声データを削除するステップを遂行することができる。
【0108】
ビデオ翻訳システム(1300)は、第1の言語のビデオデータから第1の言語の入力音声データを抽出することができる。音声認識部(1320)は、第1の言語の入力音声データを第1の言語のテキストに変換することができる。機械翻訳部(1330)は、第1の言語のテキストを第2の言語のテキストに変換するステップを遂行することができる。音声認識部(1320)および機械翻訳部(1330)は、図2の音声認識部(210)および機械翻訳部(220)にそれぞれ対応することができる。
【0109】
話者認識部(1350)は、第1の言語の音声に基づいて話者IDを取得することができる。一実施例によると、話者認識部(1350)は、予め学習された機械学習モデルから取得されることができる。機械学習モデルは、複数の話者の音声に基づいて機械学習されたモデルであることができる。話者認識部(1350)は、第1の言語の音声を機械学習モデルに適用して、話者IDを生成することができる。話者IDは、特定の話者に対応する埋め込みベクトルであることができる。他の実施例によると、話者認識部(1350)は、機械学習モデルを使用しないこともできる。話者認識部(1350)は、第1の言語の音声と最も類似な話者の音声に対する話者IDをデータベースから選択することができる。
【0110】
タイミング同期化部(1355)は、音声認識部(1320)と機械翻訳部(1330)から出力される音声およびテキストの位置情報に基づいて、タイミング情報を生成して出力することができる。タイミング情報は、第1の言語の音声に対応する第2の言語の音声がビデオデータと一緒に表示される時点を示す情報であることができる。
【0111】
発声特徴抽出部(1360)は、第1の言語の音声から第1の言語に対する話者の発声特徴を取得することができる。すでに説明したように、話者の発声特徴は、話者の発声の音色または話者の発声の音高のうち少なくとも1つを含むことができる。
【0112】
音声合成部(1340)は、第2の言語のテキストおよび第1の言語に対する話者の発声特徴を前記単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、前記話者の音声を模写する前記第2の言語のテキストに対する出力音声データを生成するステップを遂行することができる。ビデオ翻訳システム(1300)は、出力音声データを、音声除去部(1310)によって音声が削除されたビデオデータに結合するステップを遂行することができる。
【0113】
音声合成部(1340)は、第2の言語のテキスト、話者IDおよび第1の言語に対する話者の発声特徴を前記単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、前記話者の音声を模写する前記第2の言語のテキストに対する出力音声データを生成するステップを遂行することができる。
【0114】
ビデオ翻訳システム(1300)は、第1の言語に対する話者の発声特徴を模写する第2の言語の音声を含むビデオデータを出力することができる。すなわち、第2の言語の音声は、まるで第1の言語に対する話者の音声を模写して第2の言語で話すのと同じ音声であることができる。
【0115】
図14は、本開示のさらに他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
【0116】
図14を参照すると、ビデオ翻訳システム(1400)は、音声除去部(1410)、音声認識部(1420)、機械翻訳部(1430)、音声合成部(1440)、話者認識部(1450)、タイミング同期化部(1455)、発声特徴抽出部(1460)および感情的特徴抽出部(1470)を含むことができる。図14の音声除去部(1410)、音声認識部(1420)、機械翻訳部(1430)、音声合成部(1440)、話者認識部(1450)、タイミング同期化部(1455)および発声特徴抽出部(1460)は、図13の音声除去部(1310)、音声認識部(1320)、機械翻訳部(1330)、音声合成部(1340)、話者認識部(1350)、タイミング同期化部(1355)および発声特徴抽出部(1360)にそれぞれ対応することができる。したがって、図14の説明のうち図13と重複する説明は省略する。
【0117】
ビデオ翻訳システム(1400)は、感情的特徴抽出部(1470)をさらに含むことができる。感情的特徴抽出部(1470)は、第1の言語の入力音声データから第1の言語に対する話者の感情的特徴(emotion feature)を生成することができる。感情的特徴抽出部(1470)は、図2の感情的特徴抽出部(250)に対応することができる。
【0118】
音声合成部(1440)は、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。音声合成部(1440)は、第2の言語のテキスト、および第1の言語に対する話者の発声特徴および感情的特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップを遂行することができる。
【0119】
図15は、本開示のさらに他の実施例に係るビデオ翻訳システムの構成を示すブロック図である。
【0120】
図15を参照すると、ビデオ翻訳システム(1500)は、音声除去部(1510)、音声認識部(1520)、機械翻訳部(1530)、音声合成部(1540)、話者認識部(1550)、タイミング同期化部(1555)、発声特徴抽出部(1560)、感情的特徴抽出部(1570)、韻律的特徴抽出部(1580)および韻律翻訳部(1585)を含むことができる。図15の音声除去部(1510)、音声認識部(1520)、機械翻訳部(1530)、音声合成部(1540)、話者認識部(1550)、タイミング同期化部(1555)、発声特徴抽出部(1560)および感情的特徴抽出部(1570)は、図14の音声除去部(1410)、音声認識部(1420)、機械翻訳部(1430)、音声合成部(1440)、話者認識部(1450)、タイミング同期化部(1455)、発声特徴抽出部(1460)および感情的特徴抽出部(1470)にそれぞれ対応することができる。したがって、図15の説明のうち図14と重複する説明は省略する。
【0121】
ビデオ翻訳システム(1500)は、韻律的特徴抽出部(1580)をさらに含むことができる。韻律的特徴抽出部(1580)は、第1の言語の入力音声データから第1の言語に対する話者の韻律的特徴(prosody feature)を生成するステップを遂行することができる。韻律的特徴抽出部(1580)は、図2の韻律的特徴抽出部(260)に対応することができる。
【0122】
また、ビデオ翻訳システム(1500)は、韻律的特徴抽出部(1580)から出力される第1の言語に対する韻律的特徴を受信して第2の言語の韻律的特徴を生成する韻律翻訳部(1585)をさらに含むことができる。図示されたように、韻律翻訳部(1585)は、韻律的特徴抽出部(1580)によって第1の言語の音声データから抽出された韻律的特徴を受信することができる。韻律翻訳部(1585)は、第1の言語の音声データから抽出された韻律的特徴を、第2の言語の出力音声の韻律的特徴に変換することができる。このように韻律翻訳部(1585)が、第1の言語の入力音声から話者の韻律的特徴を抽出して第2の言語の韻律的特徴に翻訳する場合、第1の言語の音声の話す速度、区切り読み、強調などの特徴が第2の言語の出力音声に反映されることができる。
【0123】
また、音声合成部(1540)は、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成することができる。また、音声合成部(1540)は、第2の言語のテキスト、および第1の言語に対する話者の発声特徴、感情的特徴および韻律的特徴を前記単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する前記第2の言語のテキストに対する出力音声データを生成するステップを遂行することができる。
【0124】
図16は、本開示の一実施例に係る音声翻訳方法(1600)を示すフローチャートである。
【0125】
音声翻訳部(120)は、多言語テキスト音声合成モデルを利用して音声を翻訳することができる。音声翻訳部(120)は、第1の言語の学習テキストおよび第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップ(1610)を遂行することができる。音声翻訳部(120)は、第1の言語の入力音声データおよび前記第1の言語に対する話者の発声特徴を受信するステップ(1620)を遂行することができる。音声翻訳部(120)は、第1の言語の入力音声データを第1の言語のテキストに変換するステップ(1630)を遂行することができる。音声翻訳部(120)は、第1の言語のテキストを第2の言語のテキストに変換するステップ(1640)を遂行することができる。音声翻訳部(120)は、第2の言語のテキストおよび話者の発声特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、話者の音声を模写する第2の言語のテキストに対する出力音声データを生成するステップ(1650)を遂行することができる。
【0126】
図17は、本開示の一実施例に係るビデオ翻訳方法(1700)を示すフローチャートである。
【0127】
音声翻訳部(120)は、多言語テキスト音声合成モデルを利用して、ビデオデータの音声を翻訳することができる。音声翻訳部(120)は、第1の言語の学習テキストおよび前記第1の言語の学習テキストに対応する第1の言語の学習音声データと、第2の言語の学習テキストおよび前記第2の言語の学習テキストに対応する第2の言語の学習音声データに基づいて学習された、単一の人工ニューラルネットワークのテキスト音声合成(text-to-speech synthesis)モデルを取得するステップ(1710)を遂行することができる。音声翻訳部(120)は、第1の言語の入力音声データを含むビデオデータ、前記第1の言語の入力音声データに対応する第1の言語のテキスト、および前記第1の言語に対する話者の発声特徴を受信するステップ(1720)を遂行することができる。音声翻訳部(120)は、ビデオデータから前記第1の言語の入力音声データを削除するステップ(1730)を遂行することができる。音声翻訳部(120)は、第1の言語のテキストを第2の言語のテキストに変換するステップ(1740)を遂行することができる。第2の言語のテキストおよび前記第1の言語に対する話者の発声特徴を単一の人工ニューラルネットワークのテキスト音声合成モデルに入力して、前記話者の音声を模写する前記第2の言語のテキストに対する出力音声データを生成するステップ(1750)を遂行することができる。音声翻訳部(120)は、出力音声データをビデオデータに結合するステップ(1760)を遂行することができる。
【0128】
図18は、本開示の一実施例に係るテキスト音声合成システム(1800)のブロック図である。
【0129】
図18を参照すると、一実施例によるテキスト音声合成システム(1800)は、データ学習部(1810)およびデータ認識部(1820)を含むことができる。データ学習部(1810)およびデータ認識部(1820)のそれぞれは、上述した多様な実施例による音声翻訳システム(100)、ビデオ翻訳システム(1200、1300、1400、1500)の構成要素のうち人工ニューラルネットワークベースの音声合成部に対応することができる。また、テキスト音声合成システム(1800)は、プロセッサおよびメモリを含むことができる。
【0130】
データ学習部(1810)は、テキストに対する音声学習をすることができる。データ学習部(1810)は、テキストに応じてどの音声を出力するかに関する基準を学習することができる。また、データ学習部(1810)は、どの音声の特徴を利用して音声を出力するかに関する基準を学習することができる。音声の特徴は、音素の発音、ユーザーの語調、イントネーションまたはアクセントのうち少なくとも1つを含むことができる。データ学習部(1810)は、学習に利用されるデータを取得し、取得されたデータを後述するデータ学習モデルに適用することによって、テキストに応じた音声を学習することができる。
【0131】
データ認識部(1820)は、テキストに基づいてテキストに対する音声を出力することができる。データ認識部(1820)は、学習されたデータ学習モデルを利用して、所定のテキストから音声を出力することができる。データ認識部(1820)は、学習による予め設定された基準に基づいて、所定のテキスト(データ)を取得することができる。また、データ認識部(1820)は、取得されたデータを入力値としてデータ学習モデルを利用することによって、所定のデータに基づいた音声を出力することができる。また、取得されたデータを入力値としてデータ学習モデルによって出力された結果値は、データ学習モデルを更新するのに利用されることができる。
【0132】
データ学習部(1810)またはデータ認識部(1820)のうち少なくとも1つは、少なくとも1つのハードウェアチップ形態に製作されて、電子機器に搭載されることができる。例えば、データ学習部(1810)またはデータ認識部(1820)のうち少なくとも1つは、人工知能(AI:artificial intelligence)のための専用ハードウェアチップの形態に製作されることもでき、または既存の汎用プロセッサ(例:CPUまたはapplication processor)またはグラフィック専用プロセッサ(例:GPU)の一部として製作され、すでに説明した各種の電子機器に搭載されることもできる。
【0133】
また、データ学習部(1810)およびデータ認識部(1820)は、別々の電子機器にそれぞれ搭載されることもできる。例えば、データ学習部(1810)およびデータ認識部(1820)のうち1つは電子機器に含まれ、残りの1つはサーバーに含まれることができる。また、データ学習部(1810)およびデータ認識部(1820)は、有線または無線を通じて、データ学習部(1810)が構築したモデルの情報をデータ認識部(1820)に提供することもでき、データ認識部(1820)に入力されたデータが追加の学習データとしてデータ学習部(1810)に提供されることもできる。
【0134】
一方、データ学習部(1810)またはデータ認識部(1820)のうち少なくとも1つは、ソフトウェアモジュールで具現されることができる。データ学習部(1510)およびデータ認識部(1820)のうち少なくとも1つが、ソフトウェアモジュール(または、命令(instruction)を含むプログラムモジュール)で具現される場合、ソフトウェアモジュールは、メモリまたはコンピュータ読み取り可能な非一時的な読み取り可能な記録媒体(non-transitory computer readable media)に格納されることができる。また、この場合、少なくとも1つのソフトウェアモジュールは、OS(Operating System)によって提供されたり、所定のアプリケーションによって提供されたりすることができる。これと異なり、少なくとも1つのソフトウェアモジュールのうち一部はOS(Operating System)によって提供され、残りの一部は所定のアプリケーションによって提供されることができる。
【0135】
本開示の一実施例によるデータ学習部(1810)は、データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)およびモデル評価部(1815)を含むことができる。
【0136】
データ取得部(1811)は、機械学習に必要なデータを取得することができる。学習のためには多くのデータが必要であるため、データ取得部(1811)は、複数のテキストおよびそれに対応する音声を受信することができる。
【0137】
前処理部(1812)は、ユーザーの心理状態判断のために取得されたデータが機械学習に使用され得るように、取得されたデータを前処理することができる。前処理部(1812)は、後述するモデル学習部(1814)が利用できるように、取得されたデータを予め設定されたフォーマットに加工することができる。例えば、前処理部(1812)は、テキストおよび音声を形態素解析して形態素埋め込みを取得することができる。
【0138】
学習データ選択部(1813)は、前処理されたデータの中から学習に必要なデータを選択することができる。選択されたデータは、モデル学習部(1814)に提供されることができる。学習データ選択部(1813)は、既設定された基準に基づいて、前処理されたデータの中から学習に必要なデータを選択することができる。また、学習データ選択部(1813)は、後述するモデル学習部(1814)による学習によって、既設定された基準に基づいてデータを選択することもできる。
【0139】
モデル学習部(1814)は、学習データに基づいて、テキストに応じてどの音声を出力するかに関する基準を学習することができる。また、モデル学習部(1814)は、テキストに応じて音声を出力する学習モデルを学習データとして利用して学習させることができる。この場合、データ学習モデルは、予め構築されたモデルを含むことができる。例えば、データ学習モデルは、基本学習データ(例えば、サンプルイメージなど)の入力を受けて予め構築されたモデルを含むことができる。
【0140】
データ学習モデルは、学習モデルの適用分野、学習の目的または装置のコンピュータ性能などを考慮して構築されることができる。データ学習モデルは、例えば、ニューラルネットワーク(Neural Network)をベースにするモデルを含むことができる。例えば、ディープニューラルネットワーク(DNN:Deep Neural Network)、回帰型ニューラルネットワーク(RNN:Recurrent Neural Network)、長・短期記憶モデル(LSTM:Long Short-Term Memory models)、双方向性回帰型ディープニューラルネットワーク(BRDNN:Bidirectional Recurrent Deep Neural Network)、畳み込みニューラルネットワーク(CNN:Convolutional Neural Networks)などのようなモデルがデータ学習モデルとして使用されることができるが、これに限定されない。
【0141】
多様な実施例によれば、モデル学習部(1814)は、予め構築されたデータ学習モデルが複数個存在する場合、入力された学習データと基本学習データの関連性が大きいデータ学習モデルを学習するデータ学習モデルとして決定することができる。この場合、基本学習データは、データのタイプ別に既分類されていることができ、データ学習モデルは、データのタイプ別に予め構築されていることができる。例えば、基本学習データは、学習データが生成された地域、学習データが生成された時間、学習データの大きさ、学習データのジャンル、学習データの生成者、学習データ内のオブジェクトの種類などのような多様な基準で既分類されていることができる。
【0142】
また、モデル学習部(1814)は、例えば、誤差逆伝播法(error back-propagation)または最急降下法(gradient descent)を含む学習アルゴリズムなどを利用して、データ学習モデルを学習することができる。
【0143】
また、モデル学習部(1814)は、例えば、学習データを入力値とする教師あり学習(supervised learning)を通じて、データ学習モデルを学習することができる。
【0144】
また、モデル学習部(1814)は、例えば、別途のガイドなしに、状況判断のために必要なデータの種類を自分で学習することによって状況判断のための基準を発見する教師なし学習(unsupervised learning)を通じて、データ学習モデルを学習することができる。また、モデル学習部(1814)は、例えば、学習による状況判断の結果が正しいかに対するフィードバックを利用する強化学習(reinforcement learning)を通じて、データ学習モデルを学習することができる。
【0145】
また、データ学習モデルが学習されると、モデル学習部(1814)は、学習されたデータ学習モデルを格納することができる。この場合、モデル学習部(1814)は、学習されたデータ学習モデルを、データ認識部(1820)を含む電子機器のメモリに格納することができる。また、モデル学習部(1814)は、学習されたデータ学習モデルを電子機器と有線または無線ネットワークで接続されるサーバーのメモリに格納することもできる。
【0146】
この場合、学習されたデータ学習モデルが格納されるメモリは、例えば、電子機器の少なくとも1つの他の構成要素に関係された命令またはデータを一緒に格納することもできる。さらに、メモリは、ソフトウェアおよび/またはプログラムを格納することもできる。プログラムは、例えば、カーネル、ミドルウェア、アプリケーションプログラミングインターフェース(API)および/またはアプリケーションプログラム(または「アプリケーション」)などを含むことができる。
【0147】
モデル評価部(1815)は、データ学習モデルに評価データを入力し、評価データから出力される結果が所定の基準を満たさない場合、モデル学習部(1814)が再学習するようにすることができる。この場合、評価データは、データ学習モデルを評価するための既設定されたデータを含むことができる。
【0148】
例えば、モデル評価部(1815)は、評価データに対する学習されたデータ学習モデルの結果の中で、認識結果が正確でない評価データの数または比率が予め設定されたしきい値を超える場合、所定の基準を満たさないものと評価することができる。例えば、所定の基準が比率2%で定義される場合において、学習されたデータ学習モデルが総1000個の評価データの中で20個を超える評価データに対して誤った認識結果を出力する場合、モデル評価部(1815)は、学習されたデータ学習モデルが適していないものであると評価することができる。
【0149】
一方、学習されたデータ学習モデルが複数個存在する場合、モデル評価部(1815)は、それぞれの学習されたデータ学習モデルに対して所定の基準を満たすかを評価し、所定の基準を満足するモデルを最終データ学習モデルとして決定することができる。この場合、所定の基準を満たすモデルが複数個である場合、モデル評価部(1815)は、評価点数の高い順に予め設定されたある1つまたは所定個数のモデルを最終データ学習モデルとして決定することができる。
【0150】
一方、データ学習部(1810)内のデータ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)またはモデル評価部(1815)のうち少なくとも1つは、少なくとも1つのハードウェアチップ形態に製作されて、電子機器に搭載されることができる。例えば、データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)またはモデル評価部(1815)のうち少なくとも1つは、人工知能(AI:artificial intelligence)のための専用ハードウェアチップの形態に製作されることもでき、または既存の汎用プロセッサ(例:CPUまたはapplication processor)またはグラフィック専用プロセッサ(例:GPU)の一部として製作され、前述した各種の電子機器に搭載されることもできる。
【0151】
また、データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)およびモデル評価部(1815)は、1つの電子機器に搭載されることもでき、または別の電子機器にそれぞれ搭載されることもできる。例えば、データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)およびモデル評価部(1815)のうち一部は電子機器に含まれ、残りの一部はサーバーに含まれることができる。
【0152】
また、データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)またはモデル評価部(1815)のうち少なくとも1つは、ソフトウェアモジュールで具現されることができる。データ取得部(1811)、前処理部(1812)、学習データ選択部(1813)、モデル学習部(1814)またはモデル評価部(1815)のうち少なくとも1つがソフトウェアモジュール(または、命令(instruction)を含むプログラムモジュール)で具現される場合、ソフトウェアモジュールは、コンピュータ読み取り可能な非一時的な読み取り可能な記録媒体(non-transitory computer readable media)に格納されることができる。また、この場合、少なくとも1つのソフトウェアモジュールは、OS(Operating System)によって提供されたり、所定のアプリケーションによって提供されたりすることができる。これと異なり、少なくとも1つのソフトウェアモジュールのうち一部はOS(Operating System)によって提供され、残りの一部は所定のアプリケーションによって提供されることができる。
【0153】
本開示の一実施例によるデータ認識部(1820)は、データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)およびモデル更新部(1825)を含むことができる。
【0154】
データ取得部(1821)は、音声を出力するために必要なテキストを取得することができる。逆に、データ取得部(1821)は、テキストを出力するために必要な音声を取得することができる。前処理部(1822)は、音声またはテキストを出力するために取得されたデータが使用され得るように、取得されたデータを前処理することができる。前処理部(1822)は、後述する認識結果提供部(1824)が音声またはテキストを出力するために取得されたデータを利用できるように、取得されたデータを既設定されたフォーマットに加工することができる。
【0155】
認識データ選択部(1823)は、前処理されたデータの中から音声またはテキストを出力するために必要なデータを選択することができる。選択されたデータは、認識結果提供部(1824)に提供されることができる。認識データ選択部(1823)は、音声またはテキストを出力するための既設定された基準に基づいて、前処理されたデータの中から一部または全部を選択することができる。また、認識データ選択部(1823)は、モデル学習部(1814)による学習によって、既設定された基準に基づいてデータを選択することもできる。
【0156】
認識結果提供部(1824)は、選択されたデータをデータ学習モデルに適用して、音声またはテキストを出力することができる。認識結果提供部(1824)は、認識データ選択部(1823)によって選択されたデータを入力値として利用することにより、選択されたデータをデータ学習モデルに適用することができる。また、認識結果は、データ学習モデルによって決定されることができる。
【0157】
モデル更新部(1825)は、認識結果提供部(1824)によって提供される認識結果に対する評価に基づいて、データ学習モデルが更新されるようにすることができる。例えば、モデル更新部(1825)は、認識結果提供部(1824)によって提供される認識結果をモデル学習部(1814)に提供することにより、モデル学習部(1814)がデータ学習モデルを更新するようにすることができる。
【0158】
一方、データ認識部(1820)内のデータ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)またはモデル更新部(1825)のうち少なくとも1つは、少なくとも1つのハードウェアチップの形態に製作されて、電子機器に搭載されることができる。例えば、データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)またはモデル更新部(1825)のうち少なくとも1つは、人工知能(AI:artificial intelligence)のための専用ハードウェアチップの形態に製作されることもでき、または既存の汎用プロセッサ(例:CPUまたはapplication processor)またはグラフィック専用プロセッサ(例:GPU)の一部として製作され、前述した各種の電子機器に搭載されることもできる。
【0159】
また、データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)およびモデル更新部(1825)は、1つの電子機器に搭載されることもでき、または別の電子機器にそれぞれ搭載されることもできる。例えば、データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)およびモデル更新部(1825)のうち一部は電子機器に含まれ、残りの一部はサーバーに含まれることができる。
【0160】
また、データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)またはモデル更新部(1825)のうち少なくとも1つは、ソフトウェアモジュールで具現されることができる。データ取得部(1821)、前処理部(1822)、認識データ選択部(1823)、認識結果提供部(1824)またはモデル更新部(1825)のうち少なくとも1つが、ソフトウェアモジュール(または、命令(instruction)を含むプログラムモジュール)で具現される場合、ソフトウェアモジュールは、コンピュータ読み取り可能な非一時的な読み取り可能な記録媒体(non-transitory computer readable media)に格納されることができる。また、この場合、少なくとも1つのソフトウェアモジュールは、OS(Operating System)によって提供されたり、所定のアプリケーションによって提供されたりすることができる。これと異なり、少なくとも1つのソフトウェアモジュールのうち一部はOS(Operating System)によって提供され、残りの一部は所定のアプリケーションによって提供されることができる。
【0161】
これまでに多様な実施例を中心に説明した。本発明が属する技術分野において通常の知識を有する者は、本発明が、本発明の本質的な特性から逸脱しない範囲で変形された形態で具現され得ることを理解できるであろう。したがって、開示された実施例は、限定的な観点ではなく、説明的な観点から考慮されるべきである。本発明の範囲は、前述した説明ではなく、特許請求の範囲に示されており、それと同等の範囲内にあるすべての違いは、本発明に含まれるものと解釈されるべきである。
【0162】
一方、上述した本発明の実施例は、コンピュータで実行され得るプログラムで作成可能であり、コンピュータ読み取り可能な記録媒体を利用してプログラムを動作させる汎用デジタルコンピュータで具現されることができる。コンピュータ読み取り可能な記録媒体は、磁気記録媒体(例えば、ロム、フロッピーディスク、ハードディスクなど)、光学的読み取り媒体(例えば、CD-ROM、DVDなど)のような記憶媒体を含む。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18