(57)【要約】      （修正有）【課題】文章生成モデルのアップデート方法及び文章生成装置を提供する。【解決手段】文章生成モデルのアップデート方法は、第１復号化モデルを用いてソース文章に対するターゲット文章を生成するステップと、第１復号化モデルと異なる順に文章を生成する第２復号化モデルを用いてターゲット文章に対する補償情報を算出するステップと、算出された補償情報に基づいて、第１復号化モデル内のノードの加重値を再設定することでアップデートされた文章生成モデルを生成するステップとを含む。【選択図】図４Ａ
2019075088.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサで実現される方法であって、
第１復号化モデルを用いてソース文章に対するターゲット文章を生成するステップと、
前記第１復号化モデルと異なる順に文章を生成する第２復号化モデルを用いて、前記ターゲット文章に対する補償情報を算出するステップと、
前記算出された補償情報に基づいて、前記第１復号化モデル内のノードそれぞれの加重値を再設定することでアップデートされた文章生成モデルを生成するステップと、
を含む文章生成モデルのアップデート方法。
【請求項２】
前記補償情報を算出するステップは、前記ターゲット文章に含まれる複数の単語それぞれが前記第２復号化モデルから生成される確率に基づいて前記補償情報を算出するステップを含む、請求項１に記載の文章生成モデルのアップデート方法。
【請求項３】
前記補償情報を算出するステップは、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１単語を用いて、前記第２復号化モデルに基づいて現在時間に第２単語が生成される確率を算出するステップをさらに含む、請求項２に記載の文章生成モデルのアップデート方法。
【請求項４】
前記補償情報を算出するステップは、前記ターゲット文章に含まれる複数の単語が前記ターゲット文章と異なる順に配列された単語シーケンスに基づいて前記補償情報を算出するステップをさらに含む、請求項２に記載の文章生成モデルのアップデート方法。
【請求項５】
前記第１復号化モデルは、リカレントニューラルネットワークを含む順方向復号化モデルであり、前記第２復号化モデルは、リカレントニューラルネットワークを含む逆方向復号化モデルである、請求項１ないし４のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項６】
前記それぞれの加重値を再設定するステップは、
前記第１復号化モデルを用いて前記ターゲット文章に対するポリシー情報を算出するステップと、
前記算出されたポリシー情報及び前記算出された補償情報を用いて指定された条件に対応する前記それぞれの加重値を再設定するステップと、
を含む、請求項１ないし５のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項７】
前記ポリシー情報を算出するステップは、前記ターゲット文章に含まれる複数の単語それぞれが前記第１復号化モデルから生成される確率に基づいて前記ポリシー情報を算出するステップを含む、請求項６に記載の文章生成モデルのアップデート方法。
【請求項８】
前記ポリシー情報を算出するステップは、前記ソース文章及び前記第１復号化モデルから以前時間に出力された第１単語に基づいて、前記第１復号化モデルから現在時間に第２単語が生成される確率を算出するステップをさらに含む、請求項７に記載の文章生成モデルのアップデート方法。
【請求項９】
前記それぞれの加重値を再設定するステップは、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数を最大化する前記加重値を再設定するステップを含み、
前記複数のターゲット文章は、前記第１復号化モデルを用いて前記ソース文章から生成される、請求項６に記載の文章生成モデルのアップデート方法。
【請求項１０】
前記それぞれの加重値を再設定するステップは、目的関数及び前記ソース文章に対して予め指定された正解文章が前記第１復号化モデルから生成される確率として定義される損失関数を最小化する前記加重値を再設定するステップを含み、
前記複数のターゲット文章は、前記第１復号化モデルを用いて前記ソース文章から生成され、前記目的関数は複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される、請求項６に記載の文章生成モデルのアップデート方法。
【請求項１１】
前記ターゲット文章を生成するステップは、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応答して設定された範囲内で複数のターゲット文章を生成するステップを含む、請求項１ないし１０のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項１２】
前記ターゲット文章を生成するステップは、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値に応じて複数のターゲット文章を生成するステップを含み、
前記補償情報を算出するステップは、前記第２復号化モデルを用いて前記第１時点に生成された複数のターゲット文章に対する補償情報を算出するステップを含む、請求項１ないし１０のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項１３】
前記ターゲット文章を生成するステップは、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値をサンプリングして予め指定された個数のターゲット文章を生成するステップを含み、
前記補償情報を算出するステップは、前記第２復号化モデルを用いて前記予め指定された個数のターゲット文章に対する補償情報を算出するステップを含む、請求項１ないし１０のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項１４】
前記ターゲット文章を生成するステップは、
前記ソース文章に含まれるそれぞれの単語に対応して、前記第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成するステップと、
前記ソース文章の全体に対応して、前記第１復号化モデルが出力する最終の結果値のうち予め設定された範囲内に存在する最終の結果値に応答して複数の第２ターゲット文章を生成するステップと、
を含む、請求項１ないし１０のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項１５】
前記補償情報を算出するステップは、
前記第２復号化モデルを用いて前記複数の第１ターゲット文章に対する第１補償情報を算出するステップと、
前記第２復号化モデルを用いて前記複数の第２ターゲット文章に対する第２補償情報を算出するステップと、
を含む、請求項１４に記載の文章生成モデルのアップデート方法。
【請求項１６】
前記第２復号化モデルを用いて前記ソース文章に対する新しいターゲット文章を生成するステップと、
前記第１復号化モデルを用いて前記新しいターゲット文章に対する補償情報を算出するステップと、
前記算出された補償情報に基づいて前記第２復号化モデル内のノードの加重値を再設定するステップと、
をさらに含む、請求項１ないし１５のうち何れか一項に記載の文章生成モデルのアップデート方法。
【請求項１７】
請求項１に記載のアップデート方法を文書生成装置のプロセッサに実行させるコンピュータプログラム。
【請求項１８】
第１復号化モデルを用いてソース文章に対するターゲット文章を生成する生成部と、
第２復号化モデルを用いて前記ターゲット文章に対する補償情報を算出する算出部と、
前記算出された補償情報に基づいて前記第１復号化モデル内のノードの加重値を再設定することで、アップデートされた文章生成モデルを生成するアップデート部と、
を含む文章生成装置。
【請求項１９】
前記算出部は、前記ターゲット文章に含まれる複数の単語が前記ターゲット文章と異なる順に配列された単語シーケンスに基づいて前記補償情報を算出する、請求項１８に記載の文章生成装置。
【請求項２０】
前記算出部は、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１単語に基づいて、前記第２復号化モデルから現在時間に第２単語が生成される確率を算出して前記補償情報を算出する、請求項１９に記載の文章生成装置。
【請求項２１】
前記算出部は、前記ターゲット文章に含まれる複数の単語をそれぞれの文字に分離した単語シーケンスを前記第２復号化モデルに入力して前記補償情報を算出する、請求項１８ないし２０のうち何れか一項に記載の文章生成装置。
【請求項２２】
前記算出部は、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１文字に基づいて、前記第２復号化モデルから現在時間に第２文字が生成される確率を算出して前記補償情報を算出する、請求項２１に記載の文章生成装置。
【請求項２３】
前記生成部は、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応じて複数のターゲット文章を生成する、請求項２１に記載の文章生成装置。
【請求項２４】
前記生成部は、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値に応じて複数のターゲット文章を生成し、前記算出部は、前記第２復号化モデルを用いて前記第１時点に生成された複数のターゲット文章に対する補償情報を算出する、請求項２１に記載の文章生成装置。
【請求項２５】
前記生成部は、前記ソース文章に含まれるそれぞれの単語に対応して前記第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成し、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応答して複数の第２ターゲット文章を生成する、請求項２１に記載の文章生成装置。
【請求項２６】
前記算出部は、前記第２復号化モデルを用いて前記複数の第１ターゲット文章に対する第１補償情報を算出し、前記第２復号化モデルを用いて前記複数の第２ターゲット文章に対する第２補償情報を算出する、請求項２５に記載の文章生成装置。
【請求項２７】
前記生成部は、前記第２復号化モデルを用いて前記ソース文章に対する新しいターゲット文章を生成し、前記算出部は、前記第１復号化モデルを用いて前記新しいターゲット文章に対する補償情報を算出し、前記アップデート部は、前記算出された補償情報に基づいて前記第２復号化モデル内のノードそれぞれの加重値を再設定する、請求項２１に記載の文章生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の説明は、文章生成に用いられる文章生成モデルをアップデートする方法及び文章生成モデルを用いて文章を生成する方法に関する。
【背景技術】
【０００２】
ニューラルネットワークにおいて、トレーニング過程は、発話認識や認識された発話、又は利用可能なテキストの翻訳のように、入力パターン及び出力パターン間の直観的なマッピングを提供する。その結果、コンピュータアーキテクチャのようなニューラルネットワークモデルとして具現されたプロセッサを用いて、発話認識及び翻訳の技術的な自動化が実現されている。このようなマッピングを生成するための訓練される能力（又はトレーニング能力）は、ニューラルネットワークの学習能力と呼ばれている。加えて、特化したトレーニングのために、特別に訓練されたニューラルネットワークは、以前にトレーニングされていない入力パターンについても正確な出力を生成する一般化された能力を有する。
【０００３】
例えば、原文に対する翻訳文章を生成する自動翻訳機やユーザとコミュニケーションを続ける自動コミュニケーションエージェントのような様々なアプリケーションに、このような自動文章生成技術が適用されている。しかし、このような動作やアプリケーションは、特化したコンピュータアーキテクチャにより実行されるため、コンピュータアーキテクチャや自動化の試みを行わない他の自動化方法については、解決方案を提供することが難しい。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、文章生成モデルのアップデート方法及び文章生成装置を提供することにある。
【課題を解決するための手段】
【０００５】
一側に係るプロセッサで実現される方法において、文章生成モデルのアップデート方法は、第１復号化モデルを用いてソース文章に対するターゲット文章を生成するステップと、前記第１復号化モデルと異なる順に文章を生成する第２復号化モデルを用いて、前記ターゲット文章に対する補償情報を算出するステップと、前記算出された補償情報に基づいて、前記第１復号化モデル内のノードそれぞれの加重値を再設定することでアップデートされた文章生成モデルを生成するステップとを含む。
【０００６】
一実施形態によれば、前記補償情報を算出するステップは、前記ターゲット文章に含まれる複数の単語それぞれが前記第２復号化モデルから生成される確率に基づいて前記補償情報を算出するステップを含み得る。
【０００７】
他の一実施形態によれば、前記補償情報を算出するステップは、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１単語を用いて、前記第２復号化モデルに基づいて現在時間に第２単語が生成される確率を算出するステップをさらに含み得る。
【０００８】
更なる一実施形態によれば、前記補償情報を算出するステップは、前記ターゲット文章に含まれる複数の単語が前記ターゲット文章と異なる順に配列された単語シーケンスに基づいて前記補償情報を算出するステップをさらに含み得る。
【０００９】
更なる一実施形態によれば、前記第１復号化モデルはリカレントニューラルネットワークを含む順方向復号化モデルであり、前記第２復号化モデルはリカレントニューラルネットワークを含む逆方向復号化モデルであり得る。
【００１０】
更なる一実施形態によれば、前記それぞれの加重値を再設定するステップは、前記第１復号化モデルを用いて前記ターゲット文章に対するポリシー情報を算出するステップと、前記算出されたポリシー情報及び前記算出された補償情報を用いて指定された条件に対応する前記それぞれの加重値を再設定するステップとを含み得る。
【００１１】
更なる一実施形態によれば、前記ポリシー情報を算出するステップは、前記ターゲット文章に含まれる複数の単語それぞれが前記第１復号化モデルから生成される確率に基づいて前記ポリシー情報を算出するステップを含み得る。
【００１２】
前記ポリシー情報を算出するステップは、前記ソース文章及び前記第１復号化モデルから以前時間に出力された第１単語に基づいて、前記第１復号化モデルから現在時間に第２単語が生成される確率を算出するステップをさらに含み得る。
【００１３】
更なる一実施形態によれば、前記それぞれの加重値を再設定するステップは、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数を最大化する前記加重値を再設定するステップを含み、前記複数のターゲット文章は、前記第１復号化モデルを用いて前記ソース文章から生成され得る。
【００１４】
更なる一実施形態によれば、前記それぞれの加重値を再設定するステップは、目的関数及び前記ソース文章に対して予め指定された正解文章が前記第１復号化モデルから生成される確率として定義される損失関数を最小化する前記加重値を再設定するステップを含み、前記複数のターゲット文章は前記第１復号化モデルを用いて前記ソース文章から生成され、前記目的関数は複数のターゲット文章それぞれの補償情報及びポリシー情報として定義され得る。
【００１５】
更なる一実施形態によれば、前記ターゲット文章を生成するステップは、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応答して設定された範囲内で複数のターゲット文章を生成するステップを含み得る。
【００１６】
更なる一実施形態によれば、前記ターゲット文章を生成するステップは、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値に応じて複数のターゲット文章を生成するステップを含み、前記補償情報を算出するステップは、前記第２復号化モデルを用いて前記第１時点に生成された複数のターゲット文章に対する補償情報を算出するステップを含み得る。
【００１７】
更なる一実施形態によれば、前記ターゲット文章を生成するステップは、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値をサンプリングして予め指定された個数のターゲット文章を生成するステップを含み、前記補償情報を算出するステップは、前記第２復号化モデルを用いて前記予め指定された個数のターゲット文章に対する補償情報を算出するステップを含み得る。
【００１８】
更なる一実施形態によれば、前記ターゲット文章を生成するステップは、前記ソース文章に含まれるそれぞれの単語に対応して、前記第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成するステップと、前記ソース文章の全体に対応して、前記第１復号化モデルが出力する最終の結果値のうち予め設定された範囲内に存在する最終の結果値に応答して複数の第２ターゲット文章を生成するステップとを含み得る。
【００１９】
更なる一実施形態によれば、前記補償情報を算出するステップは、前記第２復号化モデルを用いて前記複数の第１ターゲット文章に対する第１補償情報を算出するステップと、前記第２復号化モデルを用いて前記複数の第２ターゲット文章に対する第２補償情報を算出するステップとを含み得る。
【００２０】
更なる一実施形態によれば、前記アップデート方法は、前記第２復号化モデルを用いて前記ソース文章に対する新しいターゲット文章を生成するステップと、前記第１復号化モデルを用いて前記新しいターゲット文章に対する補償情報を算出するステップと、前記算出された補償情報に基づいて前記第２復号化モデル内のノードの加重値を再設定するステップとをさらに含み得る。
【００２１】
更なる一実施形態によれば、第１復号化モデルを用いてソース文章に対するターゲット文章を生成するステップと、前記第１復号化モデルと異なる順に文章を生成する第２復号化モデルを用いて、前記ターゲット文章に対する補償情報を算出するステップと、前記算出された補償情報に基づいて、前記第１復号化モデル内のノードの加重値を再設定することでアップデートされた文章生成モデルを生成するステップとを含む方法がプロセッサによって実行されるようにする指示を格納するコンピュータで読み出し可能な記録媒体が提供される。
【００２２】
他の一実施形態によれば、文章生成装置が提供される。前記文章生成装置は、第１復号化モデルを用いてソース文章に対するターゲット文章を生成する生成部と、第２復号化モデルを用いて前記ターゲット文章に対する補償情報を算出する算出部と、前記算出された補償情報に基づいて前記第１復号化モデル内のノードの加重値を再設定することで、アップデートされた文章生成モデルを生成するアップデート部とを含む。
【００２３】
一実施形態によれば、前記算出部は、前記ターゲット文章に含まれる前記複数の単語が前記ターゲット文章と異なる順に配列された単語シーケンスに基づいて前記補償情報を算出し得る。より具体的に、前記算出部は、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１単語に基づいて、前記第２復号化モデルから現在時間に第２単語が生成される確率を算出して前記補償情報を算出し得る。
【００２４】
他の一実施形態によれば、前記算出部は、前記ターゲット文章に含まれる複数の単語をそれぞれの文字に分離した単語シーケンスを前記第２復号化モデルに入力して前記補償情報を算出し得る。より具体的に、前記算出部は、前記ソース文章及び前記第２復号化モデルから以前時間に出力された第１文字に基づいて、前記第２復号化モデルから現在時間に第２文字が生成される確率を算出して前記補償情報を算出し得る。
【００２５】
更なる一実施形態によれば、前記生成部は、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応じて複数のターゲット文章を生成し得る。
【００２６】
更なる一実施形態によれば、前記生成部は、前記ソース文章内の単語に対応して前記第１復号化モデルが第１時点に出力する出力値に応じて複数のターゲット文章を生成し、前記算出部は、前記第２復号化モデルを用いて前記第１時点に生成された複数のターゲット文章に対する補償情報を算出し得る。
【００２７】
更なる一実施形態によれば、前記生成部は、前記ソース文章に含まれるそれぞれの単語に対応して前記第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成し、前記ソース文章に対応して前記第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応答して複数の第２ターゲット文章を生成し得る。より具体的に、前記算出部は、前記第２復号化モデルを用いて前記複数の第１ターゲット文章に対する第１補償情報を算出し、前記第２復号化モデルを用いて前記複数の第２ターゲット文章に対する第２補償情報を算出し得る。
【００２８】
更なる一実施形態によれば、前記生成部は、前記第２復号化モデルを用いて前記ソース文章に対する新しいターゲット文章を生成し、前記算出部は、前記第１復号化モデルを用いて前記新しいターゲット文章に対する補償情報を算出し、前記アップデート部は、前記算出された補償情報に基づいて前記第２復号化モデル内のノードそれぞれの加重値を再設定し得る。
【発明の効果】
【００２９】
本発明によると、文章生成モデルのアップデート方法及び文章生成装置を提供することができる。
【図面の簡単な説明】
【００３０】
【図１】一実施形態に係る文章生成モデルのアップデート装置を示すブロック図である。
【図２】一実施形態によりターゲット文章を生成して補償情報を算出する方法を示す例示図である。
【図３Ａ】一実施形態によりターゲット文章に対する補償情報が算出される過程を具体的に説明するフローチャートである。
【図３Ｂ】一実施形態によりターゲット文章に対するポリシー情報が算出される過程を具体的に説明するフローチャートである。
【図４Ａ】一実施形態により目的関数を用いて第１復号化モデルの加重値が再設定される過程を具体的に説明するフローチャートである。
【図４Ｂ】他の一実施形態により損失関数を用いて第１復号化モデルの加重値が再設定される過程を具体的に説明するフローチャートである。
【図５】一実施形態により文章生成モデルと評価モデルの役割を連続的な動作周期内で互いに交換する方法を説明する例示図である。
【図６】一実施形態によりＮ−ｂｅｓｔアルゴリズムでターゲット文章を生成するアップデート装置を示すブロック図である。
【図７】他の一実施形態によりモンテカルロサーチアルゴリズムでターゲット文章を生成するアップデート装置を示すブロック図である。
【図８Ａ】更なる一実施形態によりＮ−ｂｅｓｔアルゴリズム及びモンテカルロサーチアルゴリズムを共に用いてターゲット文章を生成するアップデート装置を示すブロック図である。
【図８Ｂ】更なる一実施形態によりＮ−ｂｅｓｔアルゴリズム及びモンテカルロサーチアルゴリズムを共に用いてターゲット文章を生成する過程を説明する例示図である。
【図９】他の一実施形態によりターゲット文章に対する補償情報を算出する方法を示す例示図である。
【図１０】一実施形態に係る文章生成装置を示すブロック図である。
【図１１】本実施形態に係る電子装置を示すブロック図である。
【発明を実施するための形態】
【００３１】
以下、添付する図面を参照しながら実施形態を詳細に説明する。しかし、特許出願の範囲がこのような実施形態によって制限及び限定されることはない。各図面に提示された同一の参照符号は同一の部材を示す。
【００３２】
本明細書で開示されている特定の構造的又は機能的な説明は単に実施形態を説明するための目的として例示されたものであり、実施形態は様々な異なる形態で実施され、本明細書に説明された実施形態に限定されることはない。
【００３３】
本明細書で用いた用語は、単に特定の実施形態を説明するために用いられるものであって、本発明を限定しようとする意図はない。単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、１つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【００３４】
異なる定義がされない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【００３５】
また、添付図面を参照して説明することにおいて、図面符号に関係なく同一の構成要素は同一の参照符号を付与し、これに対する重複する説明は省略する。実施形態の説明において関連する公知技術に対する具体的な説明が実施形態の要旨を不要に曖昧にすると判断される場合、その詳細な説明は省略する。
【００３６】
図１は、一実施形態に係る文章生成モデルのアップデート装置を示すブロック図である。以下で記載される文章生成モデルは、入力されるソース文章に基づいて次に出てくるターゲット文章を予測する言語モデルを示す。例えば、文章生成モデルは、原文が入力されて原文に対応する翻訳文章を生成する翻訳モデルであり得る。他の一実施形態として、文章生成モデルは、ソース文章が入力され、それに対応するコミュニケーション文を生成するコミュニケーションエージェントモデルであり得る。上記で記載された翻訳モデル及びコミュニケーションエージェントモデルなどは、文章生成モデルに対する理解を助けるための例示的な記載に過ぎず、他の実施形態の範囲を制限及び限定するものと解釈されるべきではない。以下にて説明する文章生成モデルは、指定された条件に応じて、ソース文章に対応するターゲット文章を出力する様々な形態の言語モデルを示す。他の一実施形態として、それぞれの文章生成モデルは、それぞれのニューラルネットワーク又はニューラルネットワークの一部分を含む。
【００３７】
例えば、各ニューラルネットワークは、１つの隠しレイヤを有するニューラルネットワーク（ＮＮ）又はディープニューラルネットワーク（ＤＮＮ）であり得る。一実施形態として、ニューラルネットワーク又はディープニューラルネットワークは、１つ又はそれ以上の全て接続されたネットワーク、畳み込みニューラルネットワーク、リカレントニューラルネットワーク、又は双方向性ニューラルネットワーク、又は上記で記載したニューラルネットワークの多重接続ニューラルネットワークとして実現される。ニューラルネットワークは、ディープランニングのような学習に基づいた非線形な関係内で入力データ及び出力データを互いにマッピングすることで、発話認識、翻訳及び／又はコミュニケーションエージェント又はインタラクションを行うことができる。このような学習又はディープラーニングステップは、ビッグデータ集合からのインタラクション、自動化された発話認識、翻訳及び／又はコミュニケーションエージェントに関するイシューを解決するプロセッサで具現された機械学習ステップであり得る。学習は、入力データと出力データを教師（ｓｕｐｅｒｖｉｓｅｄ）又は非教師（ｕｎｓｕｐｅｒｖｉｓｅｄ）学習、又は訓練を介してマッピングさせることで実現される。これによって、訓練された機械学習モデル、エンジン、又は例示的なニューラルネットワークは、直観的に知らされていない入力データを所望する正確性又は信頼性を有する出力データにマッピングさせることができる。
【００３８】
一実施形態として、ニューラルネットワークは、１つ以上の入力レイヤ、１つ以上の隠しレイヤ及び１つ以上の出力レイヤを含む。入力レイヤ及び出力レイヤのそれぞれは１つ以上のノードを含み、隠しレイヤそれぞれは複数のノードを含む。全体的なニューラルネットワークが互いに異なる目的に応じて訓練された多重部分から構成される場合、多重部分の間には、入力レイヤ又は出力レイヤがそれぞれ存在する。
【００３９】
また、他の一実施形態として、データは、様々な形態及び様々な次元形態内で入力レイヤから入力される。具体的に、データは、ニューラルネットワーク内の入力レイヤのそれぞれのノードから入力される。ニューラルネットワーク内で、出力レイヤではないレイヤは、現在レイヤから次のレイヤに出力信号又は情報を送信するリンクを介して、次のレイヤのノードに接続される。リンクの個数は、次のレイヤ内に含まれるノードの個数に対応する。例えば、隣接して完全接続されたレイヤ内で現在レイヤのそれぞれのノードは、次のレイヤのそれぞれのノードに接続されるリンクを含む。例示的に、しかし限定されないように、後ほど訓練や最適化の過程によりそれぞれの接続は簡素化されたり最小化され得る。反復構造の内で、レイヤのノードは、次の時間に同じノード又はレイヤに再び入力され、双方向性の構造内で、フォワード及びバックワード接続が提供される。リンクは、接続又は接続加重値と呼ばれ、ハードウェアで具現された接続又はニューラルネットワークの接続によって提供される接続加重値として呼ばれる。訓練及び実現過程内でそのような接続及び接続加重値は、訓練された目的に応じて具現されたニューラルネットワークが生成又は取得されるために実現されたり、除去されたり、変化される。
【００４０】
隣接ノード間及び接続加重値に対応する構造及び選択的な接続は、訓練の過程内で変化し得る。ニューラルネットワークの接続加重値は、ニューラルネットワークのパラメータと呼ばれられる。例えば、制限されない教師学習の例示内で、ニューラルネットワークは、ラベリングされた入力イメージ情報又は決定された出力認識又は分類及び逆伝播を用いて訓練される。訓練過程内で、互いに異なる隠しレイヤのノード間の接続加重値は、例えば、逆伝播過程などによって所望する正確度になるまで、又は最大エラー率以下になるまで調整される。それぞれの訓練されたニューラルネットワークは、訓練、認識、翻訳及び／又はコミュニケーションエージェント又はインタラクション装置のメモリ内に格納される。例えば、訓練されたニューラルネットワークは、訓練されたベクトル又は行列、他の形態で格納され、行列の要素は、対応するニューラルネットワークの構造内の訓練された接続加重値を示す。格納されたニューラルネットワークは、訓練されたパラメータに対応するニューラルネットワークの特別な構造を定義するハイパーパラメータ情報をさらに含む。例示的に、ハイパーパラメータは、隠しレイヤの個数及びそれぞれのレイヤが反復されるか、畳み込みであるか双方向性であるか、完全接続された隠しレイヤであるか、などのようなレイヤの構造を定義する。一実施形態として、構造は、畳み込み接続を示す。また、ハイパーパラメータは、ニューラルネットワーク内のバイアス値及び／又はノードの活性化関数、ロングショート・タームメモリノードのようなノードタイプのような例示的なコンセプチュアルノードに関する情報を含む。例示的に、それぞれのレイヤの入力は、一次元、２次元、３次元、又はそれ以上の次元情報、例えば、多重次元ベクトルのような情報を含み、ニューラルネットワークの出力についても一次元又は多重次元情報としてニューラルネットワークの設定パラメータ及び構造に依存する。ニューラルネットワークの出力は確率的な情報を示し得る。図１を参照すれば、文章生成モデルのアップデート装置１００は、生成部１１０、算出部１２０、及びアップデート部１３０を含む。図１に図示していないが、アップデート装置１００は、少なくとも１つのプロセッサを示し、少なくとも１つのプロセッサによって生成部１１０、算出部１２０、及びアップデート部１３０が実現される。
【００４１】
アップデート装置１００は、ソース文章が入力されて第１復号化モデル１４１に関するアップデートされた接続加重値を出力する。アップデートされた接続加重値は、第１復号化モデル１４１に含まれるノードの接続加重値を示す。より具体的に、アップデート装置１００は、入力されたソース文章に対するターゲット文章を生成し、生成されたターゲット文章に対する補償情報に基づいて、第１復号化モデル１４１の接続加重値を再設定する。他の一実施形態として、アップデート装置１００は、ソース文章が入力されて第１復号化モデル１４１内のノードそれぞれに適用される活性化関数の閾値をアップデートして出力してもよい。本実施形態において、１つの接続加重値に対して出力とアップデートが行われる反復過程は、記載される装置及び方法内で多重接続加重値がアップデートされて出力される過程についても適用可能である。
【００４２】
生成部１１０は、ソース文章が入力されてターゲット文章を生成する。より具体的に、生成部１１０は、第１復号化モデル１４１を用いて入力されたソース文章に対するターゲット文章を生成する。一実施形態として、生成部１１０は、予め指定された規則によってソース文章に対する複数のターゲット文章を生成する。生成部１１０から複数のターゲット文章が生成される過程については、以下で追加される他の図面と共に具体的に説明される。
【００４３】
算出部１２０は、生成部１１０から伝達されるターゲット文章に対する補償情報を算出する。より具体的に、算出部１２０は、第２復号化モデル１４２を用いてターゲット文章に対する補償情報を算出する。一実施形態として、算出部１２０は、ソース文章及び第２復号化モデル１４２から以前時間に出力された第１単語を用いて、第２復号化モデル１４２から現在時間に第２単語が生成される確率を算出して補償情報を算出する。算出部１２０は、算出された補償情報をアップデート部１３０に出力する。
【００４４】
アップデート部１３０は、算出された補償情報に基づいて第１復号化モデル１４１内のノードの接続加重値を再設定する。一実施形態として、アップデート部１３０は、第１復号化モデル１４１を用いてターゲット文章に対するポリシー情報を算出する。また、アップデート部１３０は、算出されたポリシー情報及び算出された補償情報を用いて、指定された条件に対応する接続加重値を再設定する。
【００４５】
アップデート装置１００は、指定されたリザーバ内にターゲット文章を生成するための第１復号化モデル１４１、及び補償情報を算出するための第２復号化モデル１４２を格納して保管する。例示的に、指定されたリザーバには、アップデート装置１００内に存在するメモリ領域が用いられてもよく、アップデート装置１００とインタフェースを介して接続される外部メモリ装置が用いられてもよい。
【００４６】
一実施形態として、第１復号化モデル１４１及び第２復号化モデル１４２としてニューラルネットワークを用いてもよい。具体的に、以前時間の隠しレイヤの出力値が現在時間の隠しレイヤに再び入力されるリカレントニューラルネットワーク（ＲＮＮ：ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）、又は反復接続を有するニューラルネットワークが第１復号化モデル１４１及び第２復号化モデル１４２として用いられてもよい。ただし、上記で記載された第１復号化モデル１４１及び第２復号化モデル１４２に関する説明は、理解を助けるための例示に過ぎず、他の実施形態の範囲を制限したり限定するものと解釈されることはない。例えば、第１復号化モデル１４１及び第２復号化モデル１４２のそれぞれが深層神経網（ＤＮＮ：ｄｅｅｐ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）であるか、畳み込み神経網（ＣＮＮ：ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）のような様々な形態のニューラルネットワークに実現される実施形態も実現可能であろう。
【００４７】
以下では、追加される図面と共にソース文章を用いてターゲット文章が生成され、補償情報が算出される過程をより詳しく記載する。
【００４８】
図２は、一実施形態によりターゲット文章を生成し、補償情報を算出する方法を示す例示図である。図２を参照すれば、第１ターゲット文章２３１を生成するための第１復号化モデル２３０には、時間段階ごとにソース文章２１０の特徴値が入力される。例示的に、ソース文章２１０は、複数の単語ｘ１、ｘ２、…、ｘｎが指定された順に羅列した文章を示す。この場合に、ソース文章２１０を構成しているそれぞれの単語ｘ１、ｘ２、…、ｘｎは、予め指定された符号化モデル２２０に入力されて特徴値として抽出される。例示的に、ソース文章２１０から抽出された特徴値は、コンテキスト情報及び第１アテンション情報を含む。コンテキスト情報は、ソース文章２１０の意味情報を表現する圧縮された情報である。また、第１アテンション情報は、現在時点でターゲット文章２３１を生成するためにソース文章２１０のいずれかの情報を確認しなければならないかを示す情報である。
【００４９】
ソース文章２１０に関するコンテキスト情報及び第１アテンション情報が第１復号化モデル２３０内のノードに入力される。例示的に、しかし限定されないように、第１復号化モデル２３０は、以前時間の隠しレイヤの出力値が現在時間の隠しレイヤに再び入力されるリカレントニューラルネットワークとして実現される。例えば、ターゲット文章２３１内の第２単語ｙ２が決定される過程で、コンテキスト情報及び第１アテンション情報と共に以前時間の隠しレイヤの第１出力値及び以前時間に出力された第１単語ｙ１を用いてもよい。また、第１復号化モデル２３０は、ターゲット文章の開始からターゲット文章の終わりに順次復号化を行う順方向復号化モデルを示す。この場合、アップデート装置１００は、第１復号化モデル２３０を用いて第１単語ｙ１を開始とし、第ｎ単語ｙｎを最後とする順に第１ターゲット文章２３１を生成する。
【００５０】
同様に、ソース文章２１０に関するコンテキスト情報及び第２アテンション情報が第２復号化モデル２４０内のノードから入力される。例示的に、しかし限定されないように、第２復号化モデル２４０もリカレントニューラルネットワークとして実現されてもよい。一実施形態として、第２復号化モデル２４０は、ターゲット文章の終わりからターゲット文章の開始まで順次復号化を行う逆方向復号化モデル（ｂａｃｋｗａｒｄ  ｄｅｃｏｄｉｎｇ  ｍｏｄｅｌ）を示す。第２復号化モデル２４０は、第１復号化モデル２３０と反対となる順に第２ターゲット文章２４１を用いる。より具体的に、第２ターゲット文章２４１は、第１ターゲット文章２３１に含まれる複数の単語が反対の順に配列されたシーケンスを示し得る。例えば、第２ターゲット文章２４１は、第ｎ単語ｙｎを開始とし、第１単語ｙ１を最後とする順にそれぞれの単語が配列された単語シーケンスを示すことができる。
【００５１】
アップデート装置１００は、第２ターゲット文章２４１に含まれる複数の単語それぞれが第２復号化モデル２４０から生成される確率に基づいて補償情報を算出する。より具体的に、アップデート装置１００は、ソース文章２１０の特徴値及び第２復号化モデル２４０から以前時間に出力された第１単語を用いて、現在時間に第２復号化モデル２４０から第２単語が生成される確率を算出し、算出された確率を用いて補償情報を算出する。
【００５２】
図２では、説明の便宜のために符号化モデル２２０、第１復号化モデル２３０、及び第２復号化モデル２４０それぞれが１つのレイヤで具現された実施形態を示しているが、これは他の実施形態の範囲を制限したり限定するものと解釈されることはない。例えば、符号化モデル２２０、第１復号化モデル２３０、及び第２復号化モデル２４０のそれぞれが入力レイヤ、隠しレイヤ、及び出力レイヤを含むマルチレイヤ構造を有する実施形態についても実現可能であろう。
【００５３】
本実施形態に係るアップデート装置１００は、ターゲット文章を生成するための第１復号化モデル２３０として、リカレントニューラルネットワークを含む順方向復号化モデルを用いて、補償情報を算出するための第２復号化モデル２４０としてリカレントニューラルネットワークを含む逆方向復号化モデルを用いることができる。これによって、アップデート装置１００は、逆方向復号化モデルから算出された補償情報に基づいて順方向復号化モデルノードの加重値を再設定し、文章を生成するとき一方向にのみ復号化される傾向を減らし、様々な表現の文章を提供する文章生成モデルを生成することができる。
【００５４】
図３Ａは、一実施形態によりターゲット文章に対する補償情報が算出される過程を具体的に説明するフローチャートである。図３Ａを参照すれば、ターゲット文章に対する補償情報を算出する方法は、ターゲット文章に含まれるそれぞれの単語が第２復号化モデルから生成される確率を指定された順に応じて算出するステップＳ３１０、及びそれぞれの単語に対応する確率を用いてターゲット文章に対する補償情報を算出するステップＳ３２０を含む。
【００５５】
ステップＳ３１０において、ターゲット文章に含まれるそれぞれの単語が第２復号化モデルから生成される確率が算出される。ターゲット文章は、第２復号化モデルと異なる第１復号化モデルから生成された文章を示す。例えば、ターゲット文章は、順方向復号化モデルを用いてソース文章から生成された複数のターゲット文章を示し得る。この場合に、ステップＳ３１０では、複数のターゲット文章のうち、第１ターゲット文章に含まれるそれぞれの単語が第２復号化モデルから生成される確率が算出される。
【００５６】
第１単語ｙ１→第２単語ｙ２→（省略）→第Ｔ単語ｙＴのような順に単語を含む第ｎターゲット文章Ｔｎが第１復号化モデルから生成される場合が存在する。第ｎターゲット文章Ｔｎは、文章に含まれる単語の配列順を用いてｙ１：Ｔのように表現される。具体的に、第ｎターゲット文章Ｔｎに含まれる単語は、次の表１のような順に整理される。
【００５７】
【表１】
2019075088.tif 000003
この場合、ステップＳ３１０において、第ｎターゲット文章Ｔｎに含まれるそれぞれの単語が第２復号化モデルから生成される確率が算出される。より具体的に、第ｎターゲット文章Ｔｎに含まれる単語が逆転した順に配列された単語シーケンス~Ｔｎを用いて、それぞれの単語が第２復号化モデルから生成される確率が算出される。単語シーケンス~Ｔｎは第ｎターゲット文章Ｔｎ内の単語を逆順に逆転した単語シーケンスとして、第Ｔ単語ｙＴ→第Ｔ−１単語ｙＴ−１→（省略）→第２単語ｙ２→第１単語ｙ１のような順に単語を含む。同様に、単語シーケンス~Ｔｎは、単語シーケンスに含まれる単語の配列順序を用いてｙＴ：１のように表現される。具体的に、単語シーケンス~Ｔｎに含まれる単語は、次の表２のような順に整理される。
【００５８】
【表２】
2019075088.tif 000004
例えば、ステップＳ３１０において、第Ｔ−ｔ＋１単語ｙｔが第２復号化モデルから生成される確率が算出され得る。より具体的に、ソース文章及び第２復号化モデルから以前時間に出力された単語を用いて、第２復号化モデルから現在時間に第Ｔ−ｔ＋１単語ｙｔが生成される確率が、下記の数式（１）のように算出される。第Ｔ−ｔ＋１単語ｙｔは、単語シーケンス~Ｔｎの開始点（左側方向）からＴ−ｔ＋１番目に配置された単語である。
【００５９】
【数１】
2019075088.tif 000005
数式（１）において、Ｓは第１復号化モデル及び第２復号化モデルに入力されるソース文章を示し、ｙＴ＋１：ｔ＋１は、以前時間の段階で第２復号化モデルから出力される単語に関する出力値を示す。より具体的に、ｙＴ＋１：ｔ＋１において、ｙＴ＋１は第ｎターゲット文章Ｔｎの終了点を示す情報である。また、ｙＴ＋１：ｔ＋１において、ｙＴからｙｔ＋１までは全体単語シーケンス~Ｔｎのうち第１番目の単語からＴ−ｔ番目の単語までの出力値を示す。また、数式（１）において、Φは、第２復号化モデル内のノードの接続関係を定義する加重値パラメータを示す。
【００６０】
ステップＳ３１０において、第ｎターゲット文章Ｔｎに含まれるそれぞれの単語が単語シーケンス~Ｔｎ に配列された順に応じて、第２復号化モデルから生成される確率が算出される。具体的に、単語のシーケンス~Ｔｎに含まれる第１番目の単語ｙＴが第２復号化モデルから生成される確率Ｐ（ｙＴ｜ｙＴ＋１,Ｓ；Φ）が優先的に算出され、２番目の単語ｙＴ−１が第２復号化モデルから生成される確率Ｐ（ｙＴ−１｜ｙＴ＋１：ｙＴ,Ｓ；Φ）が算出され、最後の単語ｙ１が生成される確率Ｐ（ｙ１｜ｙＴ＋１：２、Ｓ；Φ）まで順次算出される。説明の便宜を考慮して、第ｎターゲット文章Ｔｎに含まれる単語が生成される確率が算出される過程を説明するが、同じ原理により、アップデートデバイスが生成される複数のターゲット文章それぞれに含まれる単語が生成される確率も算出され得ることは、技術分野の専門家にとって自明なものである。
【００６１】
ステップＳ３２０において、それぞれの単語に対応する確率を用いてターゲット文章に対する補償情報が算出される。より具体的に、第ｎターゲット文章Ｔｎに対する補償情報ｒｎは下記の数式（２）のように算出される。
【００６２】
【数２】
2019075088.tif 000006
数式（２）において、P(~Tn|S;Φ)は、第ｎターゲット文章Ｔｎの単語の順序を反転した単語シーケンス~Ｔｎが第２復号化モデルから生成される確率を示す。より具体的に、P(~Tn|S; Φ)は次の数式（３）のように算出される。
【００６３】
【数３】
2019075088.tif 000007
単語シーケンス~Ｔｎが第２復号化モデルから生成される確率は、単語のシーケンス~Ｔｎ内に含まれるそれぞれの単語が順次生成される確率の積に算出される。より具体的に、単語シーケンス~Ｔｎが第２復号化モデルから生成される確率は、単語シーケンス~Ｔｎの１番目の単語ｙＴから最後の単語ｙ１までそれぞれの単語が第２復号化モデルから順次生成される確率の積として算出される。
【００６４】
上記で説明された補償情報が算出される過程については、文章生成モデルのアップデート装置１００によって実行される。より具体的に、アップデート装置１００に含まれる算出部により各ステップＳ３１０、Ｓ３２０が実行される。
【００６５】
図３Ｂは、一実施形態によりターゲット文章に対するポリシー情報が算出される過程を具体的に説明するフローチャートである。図３Ｂを参照すれば、ターゲット文章に対するポリシー情報を算出する方法は、ターゲット文章に含まれるそれぞれの単語が第１復号化モデルから生成される確率を指定された順に応じて算出するステップＳ３３０、及びそれぞれの単語に対応する確率を用いてターゲット文章に対するポリシー情報を算出するステップＳ３４０を含む。
【００６６】
ステップＳ３３０において、ターゲット文章に含まれるそれぞれの単語が第１復号化モデルから生成される確率が算出される。ターゲット文章は、第１復号化モデルから生成された文章を示す。例えば、第１復号化モデルが順方向復号化モデルである場合、ターゲット文章は、順方向復号化モデルを用いてソース文章から生成された複数のターゲット文章を示す。
【００６７】
例示的に、ステップＳ３３０では、複数のターゲット文章のうち、第１ターゲット文章に含まれるそれぞれの単語が第１復号化モデルから生成される確率が算出される。以下では、説明の便宜を考慮して、第ｎターゲット文章Ｔｎに含まれるそれぞれの単語が第１復号化モデルから生成される確率が算出される過程を説明するが、同じ原理によって、複数のターゲット文章それぞれに含まれる単語が生成される確率も算出され得ることは。技術分野の専門家にとって自明なものである。
【００６８】
例えば、第１単語ｙ１→第２単語ｙ２→（省略）→第Ｔ単語ｙＴのような順に単語を含む第ｎターゲット文章Ｔｎが第１復号化モデルから生成される場合が存在する。第ｎターゲット文章Ｔｎは、文章に含まれる単語の配列順序を用いてｙ１：Ｔのように表現される。この場合に、ステップＳ３３０では、第ｎターゲット文章Ｔｎに含まれるそれぞれの単語が第１復号化モデルから生成される確率が算出される。より具体的に、第ｎターゲット文章Ｔｎに含まれる第ｔ単語ｙｔが第１復号化モデルから生成される確率が下記の数式（４）のように算出される。第ｔ単語ｙｔは、第ｎターゲット文章Ｔｎの開始点（左側方向）からｔ番目に配置された単語を示す。
【００６９】
【数４】
2019075088.tif 000008
数式（４）において、Ｓは第１復号化モデルに入力されるソース文章を示し、ｙ０：ｔ−１は、以前時間段階で第１復号化モデルから出力される単語に関する出力値を示す。より具体的に、ｙ０：ｔ−１において、ｙ０は第ｎターゲット文章Ｔｎの開始点を示す情報である。また、ｙ０：ｔ−１において、ｙ０からｙｔ−１までは、第ｎターゲット文章Ｔｎのうち１番目の単語からｔ−１番目の単語までの出力値を示す。また、数式（４）において、θは、第１復号化モデル内のノードの接続関係を定義する加重値パラメータを示す。
【００７０】
ステップＳ３３０において、第ｎターゲット文章Ｔｎに含まれるそれぞれの単語が第ｎターゲット文章Ｔｎ内に配列された順に応じて、第１復号化モデルから生成される確率が算出される。具体的に、第ｎターゲット文章Ｔｎに含まれる１番目の単語ｙ１が第１復号化モデルから生成される確率Ｐ（ｙ１｜ｙ０：０,Ｓ；θ）が優先的に算出され、２番目の単語ｙ２が第１復号化モデルから生成される確率Ｐ（ｙ２｜ｙ０：１,Ｓ；θ）が次に算出され、上記のような順に最後のＴ番目ｙＴが生成される確率Ｐ（ｙＴ｜ｙ０：Ｔ−１,Ｓ；θ）まで順次算出される。
【００７１】
ステップＳ３４０において、それぞれの単語に対応する確率を用いてターゲット文章に対するポリシー情報が算出される。例えば、第ｎターゲット文章Ｔｎに対するポリシー情報ｐｎは下記の数式（５）のように算出される。
【００７２】
【数５】
2019075088.tif 000009
数式（５）において、Ｐ（Ｔｎ｜Ｓ；θ）は第ｎターゲット文章Ｔｎ内の単語が第１復号化モデルから順次生成される確率を示す。より具体的に、Ｐ（Ｔｎ｜Ｓ；θ）は下記の数式（６）のように算出される。
【００７３】
【数６】
2019075088.tif 000010
数式（６）において、Ｐ（Ｔｎ｜Ｓ；θ）は、第ｎターゲット文章Ｔｎの１番目の単語ｙ１から最後の単語ｙＴまでそれぞれの単語が第１復号化モデルから順次生成される確率の積に算出される。
【００７４】
上記で説明されたターゲット文章に対するポリシー情報が算出される過程は、文章生成モデルのアップデート装置１００によって実行される。より具体的に、アップデート装置に含まれるアップデート部１３０により各ステップＳ３３０、Ｓ３４０が実行される。
【００７５】
本実施形態に係るアップデート装置１００は、ターゲット文章を生成した第１復号化モデルを用いてポリシー情報を算出し、第１復号化モデルと異なる第２復号化モデルを用いて補償情報を算出する。また、アップデート装置１００は、算出されたポリシー情報及び算出された補償情報を用いて第１復号化モデルに関する加重値を再設定する。それにより、アップデート装置１００は、いずれか一方向に偏らないで順方向及び逆方向の加重値が全て反映された文章生成モデルをアップデートし、反対方向に実行される２つの復号化モデルの利点を提供することができる。以下、追加される図面と共に、第１復号化モデルの加重値が再設定される過程をより詳しく説明する。
【００７６】
図４Ａは、一実施形態により目的関数を用いて第１復号化モデルの加重値が再設定される過程を具体的に説明するフローチャートである。図４Ａを参照すれば、目的関数を用いて第１復号化モデルの接続加重値を再設定する方法は、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数を算出するステップＳ４１０、及び算出された目的関数を最大化する第１復号化モデルの接続加重値を再設定するステップＳ４２０を含む。
【００７７】
ステップＳ４１０において、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数が算出される。例示的に、目的関数は、強化学習のポリシー勾配（ｐｏｌｉｃｙ  ｇｒａｄｉｅｎｔｓ）方式により定義される。ポリシー勾配方式は、技術分野の専門家にとって簡単な内容であるため、詳しい説明は省略する。
【００７８】
アップデート装置からソース文章に対して複数のターゲット文章が生成される場合が存在する。この場合に、ステップＳ４１０では、下記の数式（７）のようにそれぞれのターゲット文章の補償情報及びポリシー情報を用いて目的関数Ｊ（θ）が算出される。
【００７９】
【数７】
2019075088.tif 000011
アップデート装置からＮ個のターゲット文章が生成された場合、第１ターゲット文章Ｔ１に対応する第１補償情報ｒ１と第１ポリシー情報のログ値ｌｏｇＰ（Ｔ１｜Ｓ；θ）の積から第Ｎターゲット文章ＴＮに対応する第Ｎ補償情報ｒＮと第Ｎポリシー情報のログ値ｌｏｇＰ（ＴＮ｜Ｓ；θ）までの積を加え、加えられた結果値をターゲット文章の個数Ｎに割って目的関数Ｊ（θ）が算出される。
【００８０】
ステップＳ４２０において、算出された目的関数Ｊ（θ）を最大化するθが算出される。θは、第１復号化モデル内のノードの接続加重値パラメータを示す。
【００８１】
図４Ａに示していないが、ステップＳ４２０では目的関数から定義される損失関数を最小化する方法に基づいて、第１復号化モデルの接続加重値を算出してもよい。より具体的に、損失関数Ｌ（θ）は、下記の数式（８）のように定義される。
【００８２】
【数８】
2019075088.tif 000012
一実施形態として、損失関数Ｌ（θ）に勾配下降（ｇｒａｄｉｅｎｔ  ｄｅｓｃｅｎｔ）方式を適用して第１復号化モデルの接続加重値θが算出される。勾配下降は、算出された勾配の反対方向に加重値θを少しずつ移動させることで極小点（ｌｏｃａｌ  ｍｉｎｉｍｕｍ）を探す方式である。具体的に、下記の数式（９）のように第１復号化モデルの接続加重値θが再設定される。
【００８３】
【数９】
2019075088.tif 000013
数式（９）において、再設定された加重値θは、本来の加重値θで勾配
【００８４】
【数１０】
2019075088.tif 000014
の反対方向に学習比率αだけ移動するよう再設定される。
【００８５】
図４Ｂは、他の一実施形態により損失関数を用いて第１復号化モデルの加重値が再設定される過程を具体的に説明するフローチャートである。図４Ｂを参照すれば、損失関数を用いて第１復号化モデルの接続加重値を再設定する方法については、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数を算出するステップＳ４３０、及び算出された目的関数及びソース文章に対する正解文章が第１復号化モデルから生成される確率として定義される損失関数を最小化する第１復号化モデルの接続加重値を再設定するステップＳ４４０を含む。
【００８６】
ステップＳ４３０において、複数のターゲット文章それぞれの補償情報及びポリシー情報として定義される目的関数が算出される。目的関数が算出される過程に対する説明は、上記で記載された図４ＡのステップＳ４１０及び数式（７）に関する説明がそのまま適用され得るため、重複する説明は省略する。
【００８７】
ステップＳ４４０において、算出された目的関数及び正解文章が第１復号化モデルから生成される確率として定義される損失関数が算出される。具体的に、下記の数式（１０）のように損失関数Ｌ（θ）が算出される。
【００８８】
【数１１】
2019075088.tif 000015
数式（１０）において、Ｙ１：Ｔはソース文章Ｓに対して予め指定された正解文章を示す。一実施形態として、ソース文章Ｓが原文である場合にＹ１：Ｔは、予め指定された正解翻訳文のシーケンスを示す。数式（１０）のように損失関数Ｌ（θ）は最大可能度ロス（ｍａｘｉｍｕｍ  ｌｉｋｅｌｉｈｏｏｄ  ｌｏｓｓ）と加重和に定義される。数式（１０）において、λは目的関数に対して指定された加重値パラメータを示す。ステップＳ４２０と同様に、ステップＳ４４０においても、損失関数Ｌ（θ）を最小化する第１復号化モデルの接続加重値が算出される。例示的に、損失関数Ｌ（θ）は、勾配下降の方式により第１復号化モデルの接続加重値θが算出され得る。
【００８９】
図４Ａ及び図４Ｂを参照して説明された接続加重値が再設定される過程については、文章生成モデルのアップデート装置によって実行される。より具体的に、アップデート装置に含まれるアップデート部により各ステップＳ４１０、Ｓ４２０、Ｓ４３０、Ｓ４４０が実行される。
【００９０】
図５は、一実施形態により文章生成モデルと評価モデルの役割を連続的な動作周期内で互いに交換する方法を説明する例示図である。図５を参照すれば、文章生成モデルと生成されたターゲット文章に対する補償情報を生成する評価モデルが示されている。図５には、文章生成モデルが翻訳モデルとして具現された場合について説明されているが、上記のような記載が他の実施形態の範囲を制限したり限定するものと解釈されることはない。文章生成モデルは、ソース文章に対応して指定されたターゲット文章を生成する様々な形態の言語モデルとして実現され得る。
【００９１】
アップデート装置の第１動作周期で第１復号化モデル５３１を文章生成モデルとして用いてもよい。例示的に、第１復号化モデル５３１は、ターゲット文章の開始からターゲット文章の最後まで順次に復号化を行う順方向復号化モデルとして実現される。ターゲット文章である「Ｉ  ｌｏｖｅ  ｙｏｕ」を生成するために、第１復号化モデル５３１にはソース文章５１０の「私は貴方を愛している」の特徴値が入力される。ソース文章５１０を構成するそれぞれの単語（私は、貴方を、愛している）は、予め指定された符号化モデル５２０に入力されて特徴値が抽出される。例えば、ソース文章５１０から抽出された特徴値は、コンテキスト情報及び第１アテンション情報を含む。コンテキスト情報は、ソース文章５１０の意味情報を表現する圧縮された情報である。また、第１アテンション情報は、現在時点でターゲット文章を生成するためにソース文章５１０のどのような情報を確認すべきであるかを示す情報である。
【００９２】
第１動作周期で、ソース文章５１０に関するコンテキスト情報及び第１アテンション情報が第１復号化モデル５３１内のノードから入力される。第１復号化モデル５３１内のノードは、予め指定された加重値θ１、θ２、θ３により接続される。第１復号化モデル５３１は、入力される特徴値に基づいてターゲット文章を生成して出力する。
【００９３】
第１動作周期で、第２復号化モデル５３２は、生成されたターゲット文章に対する評価モデルとして用いる。例示的に、第２復号化モデル５３２は、ターゲット文章の終わりからターゲット文章の開始まで順次復号化を行う逆方向復号化モデルとして実現される。同様に、第２復号化モデル５３２にもソース文章５１０の「私は貴方を愛している」の特徴値が入力される。ソース文章５１０から抽出された特徴値は、コンテキスト情報及び第２アテンション情報を含む。
【００９４】
第２復号化モデル５３２は、ソース文章５１０の特徴値及びターゲット文章が逆順に配列されたシーケンスを用いて補償情報を生成する。第１動作周期で第２復号化モデル５３２内のノードは、予め指定された加重値Φ１、Φ２、Φ３により接続される。第２復号化モデル５３２が出力する補償情報を用いて第１復号化モデル５３１内のノードの加重値が新しい加重値θ１’、θ２’、θ３’に再設定される。
【００９５】
アップデート装置の第２動作周期では、第２復号化モデル５３２が文章生成モデルとして用いられ、アップデートされた第１復号化モデル５３３が評価モデルとして用いられる。
【００９６】
本実施形態のアップデート装置は、動作周期に応じて文章生成モデルと評価モデルが互いに役割を変えながら加重値を再設定する。これによって、アップデート装置は、復号化方向（順方向又は逆方向）により良い候補単語が捨てられることを防止し、一方向に偏らない、改善された品質の文章を生成するよう文章生成モデルをアップデートすることができる。
【００９７】
第２動作周期で、第２復号化モデル５３２は、入力されるソース文章５１０の特徴値に基づいてターゲット文章を生成して出力する。一方、アップデートされた第１復号化モデル５３３は、ソース文章５１０の特徴値及びターゲット文章が逆順に配列されたシーケンスを用いて補償情報を生成する。アップデートされた第１復号化モデル５３３は、新しく再設定された加重値θ１’、θ２’、θ３’を用いて第２復号化モデル５３２により新しく生成されたターゲット文章に対する補償情報を生成し得る。第１動作周期と同様に、アップデートされた第１復号化モデル５３３が出力する補償情報を用いて、第２復号化モデル５３２内のノードの加重値も新しい加重値Φ１’、Φ２’、Φ３’に再設定され得る。
【００９８】
図６は、一実施形態によりＮ−ｂｅｓｔアルゴリズムでターゲット文章を生成するアップデート装置を示すブロック図である。図６を参照すれば、アップデート装置６００は、Ｎ−ｂｅｓｔ文章生成部６１０、算出部６２０、及びアップデート部６３０を含む。アップデート装置６００は、Ｎ−ｂｅｓｔ文章生成部６１０を含み、文章生成モデルをアップデートする。
【００９９】
アップデート装置６００は、ソース文章が入力されて第１復号化モデル６４１に関するアップデートされた加重値を出力する。加重値は、第１復号化モデル６４１に含まれるノードの接続加重値を示す。
【０１００】
Ｎ−ｂｅｓｔ文章生成部６１０は、ソース文章が入力されて複数のターゲット文章を生成する。より具体的に、Ｎ−ｂｅｓｔ文章生成部６１０は、第１復号化モデル６４１が出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応じて複数のターゲット文章を生成する。
【０１０１】
第１復号化モデル６４１がリカレントニューラルネットワークに具現された場合、第１復号化モデル６４１は、それぞれの時間段階でビームの幅内に含まれる単語の確率分布を出力する。この場合に、Ｎ−ｂｅｓｔ文章生成部６１０は、第１復号化モデル６４１が出力する最終の結果値に応じてビーム幅内の単語を組み合わせ、最も高い確率順にＮ個のターゲット文章を生成する。算出部６２０は、Ｎ−ｂｅｓｔ文章生成部６１０から伝えられる複数のターゲット文章それぞれに対する補償情報を算出する。
【０１０２】
また、アップデート部６３０は、算出された補償情報に基づいて第１復号化モデル６４１内のノードの加重値を再設定し、アップデートされた加重値を第１復号化モデル６４１に出力する。算出部６２０及びアップデート部６３０の具体的動作については、図１、図３Ａ、図３Ｂ、図４Ａ及び図４Ｂを参照して記載された説明がそのまま適用され得るため、重複する説明は省略する。
【０１０３】
図７は、他の一実施形態に係るモンテカルロサーチアルゴリズムによりターゲット文章を生成するアップデート装置を示すブロック図である。図７を参照すれば、アップデート装置７００は、モンテカルロサーチ文章生成部７１０、算出部７２０、及びアップデート部７３０を含む。
【０１０４】
アップデート装置７００は、それぞれの時間段階で第１復号化モデル７４１から出力される出力値に応じて複数のターゲット文章を生成する。より具体的に、モンテカルロサーチ文章生成部７１０は、第１復号化モデル７４１からそれぞれの時間段階から出力される出力値に対してモンテカルロサーチを適用して予め指定されたＮ個のターゲット文章を生成する。モンテカルロサーチは、意思決定のための体験的な探索アルゴリズムであり、検索空間内でランダム抽出に基づいた木探索を行う方式を示す。本実施形態の場合に、モンテカルロサーチ文章生成部７１０は、現在時間段階で第１復号化モデル７４１が提供する出力値に基づいて生成可能なターゲット文章を探索し、探索されたターゲット文章のうち確率の高い順にＮ個のターゲット文章を生成する。上記のような方式により、モンテカルロサーチ文章生成部７１０は、第１復号化モデル７４１が最終の結果値を出力する前である任意の第１時点にも複数のターゲット文章を生成することができる。
【０１０５】
一実施形態によれば、モンテカルロサーチ文章生成部７１０は、ソース文章内の単語に対応して第１復号化モデル７４１がそれぞれの時間段階に出力する出力値をサンプリングして予め指定された個数のターゲット文章を生成する。モンテカルロサーチ文章生成部７１０は、第１復号化モデル７４１の出力値を用いてビームの幅内の単語をサンプリングする。また、モンテカルロサーチ文章生成部７１０は、サンプリングされた単語を組み合わせて予め指定された個数のターゲット文章を生成する。
【０１０６】
また、算出部７２０は、第２復号化モデル７４２を用いて第１時点に生成された複数のターゲット文章に対する補償情報を算出する。算出部７２０は、複数のターゲット文章に対してリアルタイムに補償情報を算出する。また、アップデート部７３０は、算出された補償情報に基づいて第１復号化モデル７４１内のノードの加重値を再設定し、アップデートされた加重値を第１復号化モデル７４１に出力する。算出部７２０及びアップデート部７３０の具体的動作については、図１、図３Ａ、図３Ｂ、図４Ａ及び図４Ｂを参照して記載された説明がそのまま適用され得るため、重複する説明は省略する。
【０１０７】
本実施形態に係るアップデート装置７００は、第１復号化モデル７４１がそれぞれの時間段階で出力する出力値を用いてリアルタイムに複数のターゲット文章を生成する。それにより、アップデート装置７００は、それぞれの時間段階でリアルタイムに第１復号化モデル７４１の加重値を再設定することができ、並列化が容易に実現され得る。
【０１０８】
図８Ａは、更なる一実施形態によりＮ−ｂｅｓｔアルゴリズム及びモンテカルロサーチアルゴリズムを共に用いてターゲット文章を生成するアップデート装置を示すブロック図である。図８Ａを参照すれば、モンテカルロサーチ文章生成部８１０及びＮ−ｂｅｓｔ文章生成部８２０を含む文章生成モデルのアップデート装置８００が示されている。アップデート装置８００は、モンテカルロサーチ文章生成部８１０、Ｎ−ｂｅｓｔ文章生成部８２０、算出部８３０、及びアップデート部８４０を含む。
【０１０９】
アップデート装置８００は、第１復号化モデル８５１がそれぞれの時間段階で出力する出力値に応じて複数の第１ターゲット文章を生成する。複数の第１ターゲット文章は、ソース文章に含まれるそれぞれの単語に対する出力値に応じて生成された文章を示す。より具体的に、モンテカルロサーチ文章生成部８１０は、第１復号化モデル８５１からそれぞれの時間段階に出力される出力値にモンテカルロサーチを適用し、予め指定されたＮ個の第１ターゲット文章を生成する。モンテカルロサーチ文章生成部８１０がそれぞれの時間段階で第１ターゲット文章を生成する過程については、図７を参照して記載された説明がそのまま適用され得るため、重複する説明は省略する。
【０１１０】
算出部８３０は、第２復号化モデル８５２を用いて第１復号化モデル８５１のリアルタイム出力値に対応する第１補償情報を算出する。また、アップデート部８４０は、算出された第１補償情報に基づいて第１復号化モデル８５１内の加重値を再設定し、アップデートされた加重値を第１復号化モデル８５１に出力する。算出部８３０及びアップデート部８４０の具体的動作については、図１、図３Ａ、図３Ｂ、図４Ａ及び図４Ｂを参照して記載された説明がそのまま適用され得るため、重複する説明は省略する。
【０１１１】
本実施形態に係るアップデート装置８００は、第１復号化モデル８５１から最終の結果値が出力されていない場合にもモンテカルロサーチを適用して第１ターゲット文章を生成し得る。それにより、アップデート装置８００は、リアルタイムに第１復号化モデル８５１の加重値をアップデートできる。
【０１１２】
また、アップデート装置８００は、ソース文章の全体に対応して第１復号化モデル８５１が出力する最終の結果値に応じて複数の第２ターゲット文章を生成する。より具体的に、Ｎ−ｂｅｓｔ文章生成部８２０は、第１復号化モデル８５１が出力する最終の結果値のうち、予め設定された範囲に存在する最終の結果値に応じて複数の第２ターゲット文章を生成する。Ｎ−ｂｅｓｔ文章生成部８２０は、第１復号化モデル８５１が出力する最終の結果値のうち、ビーム幅内に存在する単語を組み合わせて最も高い確率順にＮ個のターゲット文章を出力し得る。
【０１１３】
算出部８３０は、第２復号化モデル８５２を用いて第１復号化モデル８５１の最終の結果値による第２補償情報を算出する。また、アップデート部８４０は、算出された第２補償情報に基づいて第１復号化モデル８５１内の接続加重値を再設定し、アップデートされた接続加重値を第１復号化モデル８５１に出力する。本実施形態に係るアップデート装置８００は、第１復号化モデル８５１から最終の結果値が出力された場合には、Ｎ−ｂｅｓｔ文章生成部８２０が出力する第２ターゲット文章を用いて第１復号化モデル８５１の接続加重値をアップデートする。それにより、アップデート装置８００は、実際の文章を生成する文章生成モデルと同じ方式による学習結果を第１復号化モデル８５１に接続加重値として反映し、改善された品質の文章を提供する文章生成モデルをアップデートすることができる。
【０１１４】
図８Ｂは、図８Ａを参照して説明されたアップデート装置がＮ−ｂｅｓｔアルゴリズム及びモンテカルロサーチアルゴリズムを共に用いてターゲット文章を生成する過程を具体的に説明するフローチャートである。図８Ｂを参照すれば、Ｎ−ｂｅｓｔアルゴリズム及びモンテカルロサーチアルゴリズムを共に用いてターゲット文章を生成する方法は、ソース文章の一部に対応して第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成するステップＳ８６１、第２復号化モデルを用いて複数の第１ターゲット文章に対する第１補償情報を算出して第１復号化モデルの加重値をアップデートするステップＳ８６２、ソース文章の全体に対応する第１復号化モデルの最終の結果値が出力されたかを確認するステップＳ８６３、ソース文章の全体に対応して第１復号化モデルが出力する最終の結果値に応じて複数の第２ターゲット文章を生成するステップＳ８６４、及び第２復号化モデルを用いて複数の第２ターゲット文章に対する第２補償情報を算出して第１復号化モデルの加重値をアップデートするステップＳ８６５を含む。
【０１１５】
ステップＳ８６１において、ソース文章の一部に対応して第１復号化モデルが出力する中間出力値に応じて複数の第１ターゲット文章が生成される。例示的に、ステップＳ８６１では、モンテカルロサーチ文章生成部によって複数の第１ターゲット文章が生成される。
【０１１６】
ステップＳ８６２において、第２復号化モデルを用いて複数の第１ターゲット文章に対する第１補償情報が算出される。また、算出された第１補償情報に基づいて第１復号化モデルの加重値がアップデートされる。
【０１１７】
ステップＳ８６３において、ソース文章の全体に対応する第１復号化モデルの最終の結果値が出力されたかを確認する。ソース文章の全体に対応する第１復号化モデルの最終の結果値が出力された場合にステップＳ８６４が実行される。一方、ソース文章の全体に対応する第１復号化モデルの最終の結果値がまだ出力されていなければ、ステップＳ８６１が反復される。ステップＳ８６１からステップＳ８６３までは、ソース文章の全体に対応する第１復号化モデルの最終の結果値が出力されるまで反復される。
【０１１８】
ステップＳ８６４において、ソース文章の全体に対応して第１復号化モデルが出力する最終の結果値に応じて複数の第２ターゲット文章が生成される。例示的に、ステップＳ８６４では、Ｎ−ｂｅｓｔ文章生成部によって複数の第２ターゲット文章が生成される。
【０１１９】
ステップＳ８６５において、第２復号化モデルを用いて複数の第２ターゲット文章に対する第２補償情報が算出される。また、第２補償情報に基づいて第２復号化モデルの接続加重値がアップデートされる。本実施形態に係る文章生成モデルのアップデート方法は、第１復号化モデルの最終の結果値が出力される前にはモンテカルロサーチ文章生成部に基づいて接続加重値をアップデートし、最終の結果値が生成されれば、Ｎ−ｂｅｓｔ文章生成部に基づいて接続加重値をアップデートする。それにより、アップデート方法は、リアルタイムに第１復号化モデルの接続加重値をアップデートし、それと共に最終的には学習方法と復号化方法とを一致させてターゲット文章が生成される正確度を高めることも可能である。
【０１２０】
図９は、他の一実施形態によりターゲット文章に対する補償情報を算出する方法を示す例示図である。図９を参照すれば、他の一実施形態に係る評価モデルが示されている。より具体的に、図９には文章生成モデルと生成されたターゲット文章に対する補償情報を生成する評価モデルが示されている。図９では、説明の便宜のために文章生成モデルが翻訳モデルである場合について説明されたが、上記のような記載が他の実施形態の範囲を制限したり限定するものと解釈されることはない。文章生成モデルは、与えられたソース文章に対応して指定されたターゲット文章を生成する様々な形態の言語モデルとして実現され得る。
【０１２１】
アップデート装置は、第１復号化モデル９３１を文章生成モデルとして用いる。例示的に、第１復号化モデル９３１は、ターゲット文章の開始からターゲット文章の最後まで順次復号化を行う順方向復号化モデルとして実現される。より具体的に、ターゲット文章である「Ｉ  ｌｏｖｅ  ｙｏｕ」を生成するために第１復号化モデル９３１には、ソース文章９１０の「私は貴方を愛している」の特徴値が入力される。ソース文章９１０を構成するそれぞれの単語（私は、貴方を、愛している）は、予め指定された符号化モデル９２０に入力されて特徴値が抽出される。例えば、ソース文章９１０から抽出された特徴値は、コンテキスト情報及び第１アテンション情報を含む。コンテキスト情報及び第１アテンション情報については、図５を参照して記載された説明がそのまま適用され得るため、重複する説明は省略する。
【０１２２】
ソース文章９１０に関するコンテキスト情報及び第１アテンション情報が第１復号化モデル９３１内のノードから入力される。第１復号化モデル９３１内のノードは、予め指定された接続加重値θ１、θ２、θ３により接続される。第１復号化モデル９３１は、入力されるソース文章９１０に関する特徴値に基づいてターゲット文章を生成して出力する。
【０１２３】
第２復号化モデル９３２は、生成されたターゲット文章に対する評価モデルとして用いられる。例示的に、第２復号化モデル９３２は、ターゲット文章の開始文字からターゲット文章の最後文字までそれぞれの文字を予測し、順に復号化を行う文字基盤の復号化モデルとして実現される。同様に、第２復号化モデル９３２にもソース文章９１０の「私は貴方を愛している」の特徴値が入力される。ソース文章９１０から抽出された特徴値は、コンテキスト情報及び第２アテンション情報を含む。第２復号化モデル９３２内のノードは、予め指定された加重値Φ１ないしΦ８により接続される。第２復号化モデル９３２は、ソース文章５１０の特徴値及びターゲット文章に含まれるそれぞれの文字が生成される確率に基づいて補償情報を生成する。第２復号化モデル９３２が出力する補償情報を用いて第１復号化モデル９３１内のノードの接続加重値が新しく再設定される。
【０１２４】
本実施形態に係るアップデート装置は、文章生成モデルを評価する評価モデルから様々な形態の復号化モデルを用いることができる。それにより、アップデート装置は、文章生成モデルがいずれか一方向に偏って学習されることが防止される。
【０１２５】
図１０は、一実施形態に係る文章生成装置を示すブロック図である。図１０を参照すれば、文章生成装置１０００は、生成部１０１０、算出部１０２０、及びアップデート部１０３０を含む。本実施形態に係る文章生成装置１０００は、ユーザが入力するソース文章に対応してターゲット文章を出力する装置を示す。文章生成装置１０００は、モバイルフォン、セルラーフォン、スマートフォン、パーソナルコンピュータ、ラップトップ、ノート型パソコン、ネットブック又はタブレット、携帯情報端末（ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ；ＰＤＡ）、デジタルカメラ、ゲームコンソール、ＭＰ３プレーヤー、パーソナルマルチメディアプレーヤー（ｐｅｒｓｏｎａｌ  ｍｕｌｔｉｍｅｄｉａ  ｐｌａｙｅｒ；ＰＭＰ）、電子ブック（Ｅ−Ｂｏｏｋ）、ナビゲーション、ディスクプレーヤー、セットトップボックス、家庭用電子機器、通信装置、ディスプレイ装置、又は、他の電子機器に内蔵されたり又はこれに相互動作する。また、文章生成装置１０００は、スマート家電機器、知能型車両、自律走行装置、スマートホーム環境、スマートビルディング環境、スマートオフィス環境、スマート電子セキュリティーシステムなどに内蔵されたり、又はこれに相互動作する。また、文章生成装置１０００は、ユーザの体に着用されるウェアラブル機器に含まれて動作したり、これと相互動作する。ウェアラブル機器は、例えば、指輪、時計、メガネ、腕輪、ベルト、バンド、ネックレス、イヤリング、ヘルメット又は服の形態を有する。
【０１２６】
生成部１０１０は、第１復号化モデルを用いてソース文章に対するターゲット文章を生成する。第１復号化モデルは、予め指定されたリザーバ１０５０に格納された言語モデルを示す。一実施形態として、予め指定されたリザーバ１０５０には、文章生成装置１０００内に存在するメモリ領域を用いてもよい。他の一実施形態として、予め指定されたリザーバ１０５０には、文章生成装置１０００とインタフェースを介して接続される外部メモリ装置を用いてもよい。予め指定されたリザーバ１０５０には複数の復号化モデルが格納され、複数の復号化モデルは、リカレントニューラルネットワークを含む順方向復号化モデル、逆方向復号化モデル、文字基盤の復号化モデルなどのような様々な形態の言語モデルを含む。それぞれの復号化モデルは、リカレントニューラルネットワーク又は他のタイプのニューラルネットワークを含む。生成部１０１０は、予め指定されたリザーバで１０５０から第１復号化モデルを選択し、選択された第１復号化モデルを用いてソース文章に対するターゲット文章を生成する。
【０１２７】
一実施形態として、生成部１０１０は、ソース文章に対応して第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応じて複数のターゲット文章を生成する。
【０１２８】
算出部１０２０は、第２復号化モデルを用いてターゲット文章に対する補償情報を算出する。同様に、算出部１０２０も予め指定されたリザーバ１０５０から第２復号化モデルを選択し、選択された第２復号化モデルを用いてターゲット文章に対する補償情報を算出する。
【０１２９】
一実施形態として、算出部１０２０によって逆方向復号化モデルが選択された場合、算出部１０２０は、ターゲット文章に含まれる複数の単語がターゲット文章と異なる順に配列された単語シーケンスを用いて補償情報を算出する。算出部１０２０は、ソース文章及び逆方向復号化モデルから以前時間に出力された第１単語を用いて、逆方向復号化モデルから現在時間に第２単語が生成される確率を算出して補償情報を算出し得る。
【０１３０】
他の一実施形態として、算出部１０２０によって文字基盤復号化モデルが選択された場合、算出部１０２０は、ターゲット文章に含まれる複数の単語をそれぞれの文字に分離した単語シーケンスを用いて補償情報を算出する。算出部１０２０は、ソース文章及び文字基盤復号化モデルから以前時間に出力された第１文字を用いて、文字基盤復号化モデルから現在時間に第２文字が生成される確率を算出して補償情報を算出する。
【０１３１】
他の一実施形態として、生成部１０１０は、ソース文章内の単語に対応して第１復号化モデルから第１時点に出力される出力値に応じて複数のターゲット文章を生成する。この場合に、算出部１０２０は、第２復号化モデルを用いて第１時点に生成された複数のターゲット文章に対する補償情報を算出する。
【０１３２】
更なる一実施形態として、生成部１０１０は、ソース文章に含まれるそれぞれの単語に対応して第１復号化モデルが出力する出力値に応じて複数の第１ターゲット文章を生成し、ソース文章の全体に対応して第１復号化モデルが出力する最終の結果値のうち、予め設定された範囲内に存在する最終の結果値に応じて複数の第２ターゲット文章を生成する。この場合に、算出部１０２０は、第２復号化モデルを用いて複数の第１ターゲット文章に対する第１補償情報及び複数の第２ターゲット文章に対する第２補償情報を算出する。アップデート部１０３０は、算出された補償情報に基づいて第１復号化モデル内のノードの接続加重値を再設定する。
【０１３３】
更なる一実施形態として、生成部１０１０は、第２復号化モデルを用いてソース文章に対する新しいターゲット文章を生成し、算出部１０２０は、第１復号化モデルを用いて新しいターゲット文章に対する補償情報を算出し、アップデート部１０３０は、算出された補償情報に基づいて第２復号化モデル内のノードの接続加重値を再設定する。
【０１３４】
本実施形態に係る文章生成装置１０００は、予め格納された複数の復号化モデルを評価モデルとして用いて文章生成モデルを自らアップデートし得る。文章生成装置１０００は、予め指定された周期に応じて自分が保有している復号化モデルの性能を評価し、周期的に復号化モデルの接続加重値を再設定してより正確な文章が生成されるよう性能を維持することができる。
【０１３５】
図１１は、本実施形態に係る電子装置を示すブロック図である。図１１を参照すれば、電子装置１１００は、発話入力部１１１０、発話認識部１１２０、及び翻訳部１１３０を含む。例えば、発話入力部１１１０はマイクを含んだり、ユーザインタフェース１１４０のマイクに応答して、又は接続されて動作したり、又は、ユーザインタフェース１１４０の一部として実現される。発話入力部１１１０は、追加的又は代替的にカメラ又はテキスト情報のキャプチャーされたイメージデータを格納するメモリを含み得る。一実施形態によれば、発話認識部１１２０は、少なくとも１つのプロセッサを含む。発話認識部１１２０に対する具体的な説明は、当業者に自明な事項であるから省略する。
【０１３６】
発話入力部１１１０は、マイクを介して入力されるユーザの音声信号を受信する。一実施形態によれば、ユーザの音声信号はテレビセットを制御したり、自動車を運行したり、知能型機器とコミュニケーションするための命令や他の言語に翻訳されるための文章に関する。
【０１３７】
したがって、発話認識部１１２０の少なくとも１つの音声及び／又は言語モデルは、互いに異なる言語に対して訓練されて用いられる。例えば、発話認識部１１２０は、ユーザから発話入力部１１１０に入力された音声信号をアナログ音声信号からデジタル信号に変換させてもよい。また、発話認識部１１２０は、１つの信号を複数の音声フレームに分離させてもよい。発話認識部１１２０は、ユーザの発話を認識することで、文字に形成された発話認識の結果を出力し得る。
【０１３８】
翻訳部１１３０は、図１に示すアップデート装置１００、図６に示すアップデート装置６００、図７に示すアップデート装置７００、図８に示すアップデート装置８００、又は図１０に示す文章生成装置１０００に対応する。翻訳部１１３０は、文章生成モデルをアップデートする過程で先に説明したステップを行ってもよい。さらに、翻訳部１１３０は、図３Ａを参照して説明された補償情報算出動作、図３Ｂを参照して説明されたポリシー情報算出動作、図４Ａ及び図４Ｂを参照して説明された接続加重値再設定動作、及び図８Ｂを参照して説明されたターゲット文章生成及び復号化モデルアップデート動作を行ってもよい。
【０１３９】
また、翻訳部１１３０は、ソース文章の翻訳文章を生成し、翻訳文章を出力したり翻訳結果に応答してユーザの所望する動作やクエリに対する返答を直接的又は間接的に出力することで翻訳結果を表示する。例えば、翻訳部１１３０は、ユーザインタフェース１１４０のスピーカを介してユーザの発話入力に対する認識結果を出力する。また、翻訳部１１３０は、ユーザインタフェース１１４０のディスプレイに出力される文字状態に認識結果を出力してもよい。加えて、翻訳部１１３０は、電子装置１１００に関して関連命令（ｅｘ．電源オン／オフ、ボリューム調整など）を行ってもよい。さらに、翻訳部１１３０は、電子装置１１１０にインストールされたアプリケーションを実行し、ユーザの所望するウェブサイトでウェブブラウザを動作させ、翻訳されたクエリの結果を提供してもよい。したがって、翻訳部１１３０は、発話認識の結果を他の言語に翻訳し、音声又は文章形態に翻訳された結果を出力する。上記で記載された翻訳部１１３０に対する説明は、理解を助けるための例示的な記載に過ぎず、他の実施形態を制限したり限定するものと解釈されることはない。
【０１４０】
電子装置１１００は、モバイル端末及び／又はウェアラブル機器であり得る。上記のようなモバイル端末又はウェアラブル機器は、マイク、ディスプレイ、タッチスクリーン、ボタン、スピーカ、振動モータ、カメラのようにユーザインタフェース１１４０内にユーザの入出力ハードウェアを含み、電子装置１１００内の少なくとも１つのプロセッサに接続される通信バス、メモリ１１６０のようなメモリを含む。図１〜１０を参照して記載された例示及び過程は、キーボードやテキスト／命令が入力されるディスプレイ領域を含まないウェアラブル装置にも適用され得る。
【０１４１】
加えて、メモリ１１６０は、発話認識部１１２０で用いられる少なくとも１つの音声及び／又は言語モデル、翻訳部１１３０によって利用され、アップデートされる少なくとも１つの復号化モデルを格納するよう用いてもよい。また、音声及び／又は言語モデルと復号化モデルは遠隔に格納され、翻訳部１１４０は、このようなモデルの情報を送信し、通信部１１５０を介してこのようなモデルの情報を受信してもよい。
【０１４２】
したがって、制限しない例示として、上記で説明された電子装置１１００は、携帯電話、スマートフォンのようなモバイル機器、ウェアラブルスマート機器（ｅｘ．リング、時計、メガネ、ヘルスケア機器、腕輪、アンクレット、ベルト、ネックレス、イヤリング、ヘアーバンド、ヘルメット、又は服に埋め込まれた機器など）、移動式パーソナルコンピュータ（ＰＣ）（ｅｘ．ラップトップコンピュータ、ノート型パソコン、サブノート型パソコン、ネットブック、又は、ウルトラ−モバイルＰＣ（ＵＭＰＣ）、タブレットＰＣ、ファブレット（ｐｈａｂｌｅｔ）など）のように無線ネットワーク又は有線ネットワークに接続される移動式又は固定型機器として実現される。他の一実施形態として、ウェアラブル機器は、ユーザの体に直接取付けたり、付着型装置を介してマウントされる機器として実現され得る。
【０１４３】
以上述した実施形態は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組合せで具現される。例えば、本実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、マイクロコンピュータ、ＦＰＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサー、又は命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行して応答する異なる装置のように、１つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、オペレーティングシステム（ＯＳ）及びオペレーティングシステム上で実行される１つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は１つが使用されるものとして説明する場合もあるが、当技術分野で通常の知識を有する者は、処理装置が複数の処理要素（ｐｒｏｃｅｓｓｉｎｇ  ｅｌｅｍｅｎｔ）及び／又は複数類型の処理要素を含むことが分かる。例えば、処理装置は、複数のプロセッサ又は１つのプロセッサ及び１つのコントローラを含む。また、並列プロセッサ（ｐａｒａｌｌｅｌ  ｐｒｏｃｅｓｓｏｒ）のような、他の処理構成も可能である。
【０１４４】
ソフトウェアは、コンピュータプログラム、コード、命令、又はこのうちの１つ以上の組合せを含み、希望通りに動作するように処理装置を構成し、独立的又は結合的に処理装置に命令する。ソフトウェア及び／又はデータは、処理装置によって解釈され、処理装置に命令又はデータを提供するためのあらゆる類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、或いは送信される信号波を介して永久的又は一時的に具現化される。ソフトウェアは、ネットワークに連結されたコンピュータシステム上に分散され、分散された方法で格納されるか又は実行される。ソフトウェア及びデータは１つ以上のコンピュータ読み取り可能な記録媒体に格納される。
【０１４５】
本実施形態による方法は、様々なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明に示す動作を実行するために１つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【０１４６】
上述したように実施形態をたとえ限定された図面によって説明したが、当技術分野で通常の知識を有する者であれば、に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順序で実行されたり、及び／又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組み合わせられたり、他の構成要素又は均等物によって置き換えたり置換されても適切な結果を達成することができる。
【図１】
2019075088.tif 000016
【図２】
2019075088.tif 000017
【図３Ａ】
2019075088.tif 000018
【図３Ｂ】
2019075088.tif 000019
【図４Ａ】
2019075088.tif 000020
【図４Ｂ】
2019075088.tif 000021
【図５】
2019075088.tif 000022
【図６】
2019075088.tif 000023
【図７】
2019075088.tif 000024
【図８Ａ】
2019075088.tif 000025
【図８Ｂ】
2019075088.tif 000026
【図９】
2019075088.tif 000027
【図１０】
2019075088.tif 000028
【図１１】
2019075088.tif 000029