(57)【要約】【課題】  ＯＯＳ文章生成方法及び装置を提供すること。【解決手段】  一実施形態は、ターゲットサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させ、前記学習されたモデルのうちいずれか１つと異なるサービスの発話テンプレートから生成された文章に基づいて前記ターゲット発話テンプレートの類似発話テンプレートを生成し、前記学習されたモデルのうち他の１つ及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成する。【選択図】      図３
2019053715.tif 000002
【特許請求の範囲】
【請求項１】
ターゲットサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させるステップと、
前記学習されたモデルのうちの１つと異なるサービスの発話テンプレートから生成された文章に基づいて、前記ターゲット発話テンプレートの類似発話テンプレートを生成するステップと、
前記学習されたモデルのうち他の１つ及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成するステップと、
を含む、ＯＯＳ（ｏｕｔ  ｏｆ  ｓｅｒｖｉｃｅ）文章生成方法。
【請求項２】
前記方法は、さらに、
前記ターゲットサービスに対して、前記類似文章の意図にＯＯＳレーベルを割り当てるステップ、を含む、
請求項１に記載のＯＯＳ文章生成方法。
【請求項３】
前記ＯＯＳレーベルは、前記ターゲットサービスが前記類似文章に対応する機能を実行できないことを示す、
請求項２に記載のＯＯＳ文章生成方法。
【請求項４】
前記モデルを学習させるステップは、
前記ターゲット文章を前記モデルのうち第１モデルに入力し、前記第１モデルが前記ターゲット文章に基づいて前記ターゲット発話テンプレートを生成するように前記第１モデルを学習させるステップと、
前記ターゲット発話テンプレートを前記モデルのうち第２モデルに入力し、前記第２モデルが前記ターゲット発話テンプレートに基づいて前記ターゲット文章を生成するように前記第２モデルを学習させるステップと、
を含む、請求項１ないし３のいずれか一項に記載のＯＯＳ文章生成方法。
【請求項５】
前記学習された第１モデルは、前記類似発話テンプレートを生成するために利用されたモデルに該当し、
前記学習された第２モデルは、前記類似文章を生成するために利用されたモデルに該当する、
請求項４に記載のＯＯＳ文章生成方法。
【請求項６】
前記学習された第２モデルは、学習によるコーパス及び前記類似発話テンプレートによって前記類似文章を生成する、
請求項４に記載のＯＯＳ文章生成方法。
【請求項７】
前記方法は、さらに、
前記ターゲット文章及び前記類似文章に基づいて、入力文章の意図を分類する分流器を学習させるステップ、を含む、
請求項１に記載のＯＯＳ文章生成方法。
【請求項８】
前記学習された分流器は、ユーザの音声信号に対する文章が入力され、前記文章の意図を決定し、前記決定された意図が前記ターゲットサービスのＯＯＳレーベルに該当する場合、前記決定された意図に対応する機能を実行できないことを示す結果を出力する、
請求項７に記載のＯＯＳ文章生成方法。
【請求項９】
請求項１ないし請求項８のうちいずれか一項に記載の方法を実行するための命令語を格納する、コンピュータで読み出し可能な格納媒体。
【請求項１０】
ターゲットサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させ、
前記学習されたモデルのうちの１つと異なるサービスの発話テンプレートから生成された文章に基づいて前記ターゲット発話テンプレートの類似発話テンプレートを生成し、
前記学習されたモデルのうち他の１つ及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成する、プロセッサ、
を含む、コンピューティング装置。
【請求項１１】
前記プロセッサは、前記ターゲットサービスに対して前記類似文章の意図にＯＯＳレーベルを割り当てる、
請求項１０に記載のコンピューティング装置。
【請求項１２】
前記ＯＯＳレーベルは、前記ターゲットサービスが前記類似文章に対応する機能を実行できないことを示す、
請求項１１に記載のコンピューティング装置。
【請求項１３】
前記プロセッサは、
前記ターゲット文章を前記モデルのうち第１モデルに入力し、前記第１モデルが前記ターゲット文章に基づいて前記ターゲット発話テンプレートを生成するように前記第１モデルを学習させ、
前記ターゲット発話テンプレートを前記モデルのうち第２モデルに入力し、前記第２モデルが前記ターゲット発話テンプレートに基づいて前記ターゲット文章を生成するように前記第２モデルを学習させる、
請求項１０ないし１２のいずれか一項に記載のコンピューティング装置。
【請求項１４】
前記学習された第１モデルは、前記類似発話テンプレートを生成するために利用されたモデルに該当し、前記学習された第２モデルは、前記類似文章を生成するために利用されたモデルに該当する、
請求項１３に記載のコンピューティング装置。
【請求項１５】
前記学習された第２モデルは、学習によるコーパス及び前記類似発話テンプレートによって前記類似文章を生成する、
請求項１３に記載のコンピューティング装置。
【請求項１６】
前記プロセッサは、前記ターゲット文章及び前記類似文章に基づいて前記ターゲット文章の意図を分類する分流器を学習させる、
請求項１０に記載のコンピューティング装置。
【請求項１７】
前記学習された分流器は、ユーザの音声信号に対する文章データが入力され、前記文章データの意図を決定し、前記決定された意図が前記サービスのＯＯＳレーベルに該当する場合、前記決定された意図に対応する機能を実行できないことを示す結果を出力する、
請求項１６に記載のコンピューティング装置。
【請求項１８】
入力文章に関するサービスを識別するステップと、
前記識別されたサービスに対応する分流器を用いて前記入力文章の意図を決定するステップと、
前記決定された意図がＯＯＳに該当するか否かに基づいて、前記決定された意図に対応する機能及び前記入力文章をエラーとして処理する動作のうちの１つを実行するステップと、
を含む、命令実行方法。
【請求項１９】
前記分流器は、前記識別されたサービスのターゲット文章及び類似文章に基づいて予め学習されたものである、
請求項１８に記載の命令実行方法。
【請求項２０】
前記類似文章は、
前記識別されたサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させるステップと、
前記学習されたモデルのうち、第１モデル及び他のサービスの発話テンプレートから生成された文章に基づいて前記ターゲット発話テンプレートの類似発話テンプレートを生成するステップと、
前記学習されたモデルのうち、第２モデル及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成するステップ、の実行によって生成される、
請求項１９に記載の命令実行方法。
【請求項２１】
前記実行するステップは、前記決定された意図がＯＯＳに該当しない場合、前記決定された意図に対応する機能を行うステップを含む、
請求項１８ないし２０のいずれか一項に記載の命令実行方法。
【請求項２２】
前記実行するステップは、前記決定された意図がＯＯＳに該当する場合、前記入力文章をエラーとして処理する動作を行うステップを含む、
請求項１８ないし２０のいずれか一項に記載の命令実行方法。
【請求項２３】
請求項１８ないし請求項２２のいずれか一項に記載の方法を実行するための命令語を格納する、コンピュータで読み出し可能な格納媒体。
【請求項２４】
命令実行システムにより動作して入力文章に関するアプリケーションを識別するステップと、
前記識別されたアプリケーションに対応する分流器を用いて前記入力文章の意図を決定するステップと、
前記決定された意図がＯＯＳに該当する場合、前記入力文章に対応する機能の実行を拒否するステップと、
を含む、命令実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＯＯＳ文章の生成に関する。
【背景技術】
【０００２】
オートエンコーダ（Ａｕｔｏ  ｅｎｃｏｄｅｒ）は、与えられた入力を符号化してベクトルを生成し、該当のベクトルを復号化して入力に対する出力を生成する。このようなオートエンコーダは、特定サービスのＩＳ（Ｉｎ−Ｓｅｒｖｉｃｅ）入力に基づいて復元エラーが最小化するように学習される。そのため、オートエンコーダモデルは、与えられた入力に対する復元エラーが閾値よりも大きければ、該当の入力が特定サービスに対してはＯＯＳ（Ｏｕｔ−Ｏｆ−Ｓｅｒｖｉｃｅ）入力であると決定し、復元エラーが閾値以下であれば、該当の入力が特定サービスに対してはＩＳ入力であると決定する。ここで、閾値は、オートエンコーダモデルを学習させながら決定され、閾値は入力（すなわち、学習データ）がどの様なものであるかに応じて可変的である。
【０００３】
オートエンコーダによる入力がＩＳ入力として決定されれば、分流器は与えられた入力がどのような意図であるかを決定する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一発明の目的は、ＯＯＳ発話に対する実行を拒否する性能が向上するよう、ＩＳ発話文章と共に学習データとして用いられるＯＯＳ発話文章を生成することにある。
【課題を解決するための手段】
【０００５】
一つの側に係るＯＯＳ文章生成方法は、ターゲットサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させるステップと、前記学習されたモデルのうちの１つと異なるサービスの発話テンプレートから生成された文章に基づいて、前記ターゲット発話テンプレートの類似発話テンプレートを生成するステップと、前記学習されたモデルのうち他の１つ及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成するステップとを含む。
【０００６】
ＯＯＳ文章生成方法は、前記ターゲットサービスに対して、前記類似文章の意図にＯＯＳレーベルを割り当てるステップをさらに含み得る。
【０００７】
前記ＯＯＳレーベルは、前記ターゲットサービスが前記類似文章に対応する機能を実行できないことを示し得る。
【０００８】
前記モデルを学習させるステップは、前記ターゲット文章を前記モデルのうち第１モデルに入力し、前記第１モデルが前記ターゲット文章に基づいて前記ターゲット発話テンプレートを生成するように前記第１モデルを学習させるステップと、前記ターゲット発話テンプレートを前記モデルのうち第２モデルに入力し、前記第２モデルが前記ターゲット発話テンプレートに基づいて前記ターゲット文章を生成するように前記第２モデルを学習させるステップとを含み得る。
【０００９】
前記学習された第１モデルは、前記類似発話テンプレートを生成するために利用されたモデルに該当し、前記学習された第２モデルは、前記類似文章を生成するために利用されたモデルに該当し得る。
【００１０】
前記学習された第２モデルは、学習によるコーパス及び前記類似発話テンプレートによって前記類似文章を生成し得る。
【００１１】
ＯＯＳ文章生成方法は、前記ターゲット文章及び前記類似文章に基づいて、入力文章の意図を分類する分流器を学習させるステップをさらに含み得る。
【００１２】
前記学習された分流器はユーザの音声信号に対する文章が入力され、前記文章の意図を決定し、前記決定された意図が前記ターゲットサービスのＯＯＳレーベルに該当する場合、前記決定された意図に対応する機能を実行できないことを示す結果を出力し得る。
【００１３】
一実施形態に係るコンピューティング装置は、ターゲットサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させ、前記学習されたモデルのうちの１つと異なるサービスの発話テンプレートから生成された文章に基づいて前記ターゲット発話テンプレートの類似発話テンプレートを生成し、前記学習されたモデルのうち他の１つ及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成するプロセッサを含む。
【００１４】
前記プロセッサは、前記ターゲットサービスに対して前記類似文章の意図にＯＯＳレーベルを割り当て得る。
【００１５】
前記ＯＯＳレーベルは、前記ターゲットサービスが前記類似文章に対応する機能を実行できないことを示し得る。
【００１６】
前記プロセッサは、前記ターゲット文章を前記モデルのうち第１モデルに入力し、前記第１モデルが前記ターゲット文章に基づいて前記ターゲット発話テンプレートを生成するように前記第１モデルを学習させ、前記ターゲット発話テンプレートを前記モデルのうち第２モデルに入力し、前記第２モデルが前記ターゲット発話テンプレートに基づいて前記ターゲット文章を生成するように前記第２モデルを学習させ得る。
【００１７】
前記学習された第１モデルは、前記類似発話テンプレートを生成するために利用されたモデルに該当し、前記学習された第２モデルは、前記類似文章を生成するために利用されたモデルに該当し得る。
【００１８】
前記学習された第２モデルは、学習によるコーパス及び前記類似発話テンプレートによって前記類似文章を生成し得る。
【００１９】
前記プロセッサは、前記ターゲット文章及び前記類似文章に基づいて前記ターゲット文章の意図を分類する分流器を学習させ得る。
【００２０】
前記学習された分流器は、ユーザの音声信号に対する文章データが入力され、前記文章データの意図を決定し、前記決定された意図が前記サービスのＯＯＳレーベルに該当する場合、前記決定された意図に対応する機能を実行できないことを示す結果を出力し得る。
【００２１】
一実施形態に係る命令実行方法は、入力文章に関するサービスを識別するステップと、前記識別されたサービスに対応する分流器を用いて前記入力文章の意図を決定するステップと、前記決定された意図がＯＯＳに該当するか否かに基づいて、前記決定された意図に対応する機能及び前記入力文章をエラーとして処理する動作のうちの１つを行うステップとを含む。
【００２２】
前記分流器は、前記識別されたサービスのターゲット文章及び類似文章に基づいて予め学習されたものであり得る。
【００２３】
前記類似文章は、前記識別されたサービスのターゲット発話テンプレート及び前記ターゲット発話テンプレートから生成されたターゲット文章に基づいてモデルを学習させるステップと、前記学習されたモデルのうち、第１モデル及び他のサービスの発話テンプレートから生成された文章に基づいて前記ターゲット発話テンプレートの類似発話テンプレートを生成するステップと、前記学習されたモデルのうち、第２モデル及び前記類似発話テンプレートに基づいて前記ターゲット文章の類似文章を生成するステップの実行によって生成され得る。
【００２４】
前記実行するステップは、前記決定された意図がＯＯＳに該当しない場合、前記決定された意図に対応する機能を行うステップを含み得る。
【００２５】
前記実行するステップは、前記決定された意図がＯＯＳに該当する場合、前記入力文章をエラーとして処理する動作を行うステップを含み得る。
【００２６】
コンピュータで読み出し可能な格納媒体は、命令実行方法を実行するための命令語を格納し得る。
【００２７】
他の位置実施形態に係る命令実行方法は、命令実行システムにより動作して入力文章に関するアプリケーションを識別するステップと、前記識別されたアプリケーションに対応する分流器を用いて前記入力文章の意図を決定するステップと、前記決定された意図がＯＯＳに該当する場合、前記入力文章に対応する機能の実行を拒否するステップとを含む。
【発明の効果】
【００２８】
一実施形態によれば、生成されたＯＯＳ発話文章は、既存のルールの予測及び実行モデルが変更されることなく、ＩＳ発話文章と共に学習データとして使用されることにより、ＯＯＳ発話に対する実行を拒否する性能が向上し得る。
【図面の簡単な説明】
【００２９】
【図１】ユーザ入力基盤の命令実行システムを説明するための図である。
【図２】一実施形態に係るターゲット文章生成方法を説明するための図である。
【図３】一実施形態に係るＯＯＳ文章生成装置を説明するための図である。
【図４】一実施形態に係るＯＯＳ文章生成装置の動作を説明するための図である。
【図５】一実施形態に係るＯＯＳ文章生成装置の動作を説明するための図である。
【図６】一実施形態に係る学習装置を説明するための図である。
【図７】一実施形態に係るＯＯＳ文章生成装置を説明するためのブロック図である。
【図８】一実施形態に係るＯＯＳ文章生成方法を説明するためのフローチャートである。
【図９】一実施形態に係る命令実行システムを説明するための図である。
【図１０】一実施形態に係る命令実行方法を説明するためのフローチャートである。
【図１１】一実施形態に係るターゲット文章生成装置を説明するための図である。
【発明を実施するための形態】
【００３０】
以下に、添付する図面を参照しながら実施形態を詳細に説明する。
【００３１】
実施形態に対する特定の構造的又は機能的な説明は、単なる例示を目的として開示されたものとして、様々な形態に変更され得る。したがって、実施形態は特定の開示形態に限定されるものではなく、本明細書の範囲は技術的な思想に含まれる変更、均等物ないし代替物を含む。
【００３２】
第１又は第２などの用語を複数の構成要素を説明するために用いることができるが、このような用語は１つの構成要素を他の構成要素から区別する目的としてのみ解釈されなければならない。例えば、第１構成要素は第２構成要素と命名することができ、同様に第２構成要素は第１構成要素と命名することもできる。
【００３３】
単数の表現は、文脈上明白に異なる意味をもたない限り、複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は、明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品、又はこれらを組み合わせたものが存在することを示すものであって、１つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれらを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
【００３４】
異なるように定義さがれない限り、ここで用いる技術的又は科学的な用語を含む全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
【００３５】
また、添付図面を参照して説明することにおいて、図面符号に関係なく同じ構成要素には同じ参照符号を付与し、これに対する重複説明は省略することにする。実施形態の説明において、関連する公知技術に対する具体的な説明が実施形態の要旨を不要に曖昧にすると判断する場合、その詳細な説明を省略する。
【００３６】
図１は、ユーザ入力基盤の命令実行システムを説明するための図である。
【００３７】
ユーザ入力基盤の命令実行システム１００は、ユーザ入力があれば、ユーザ入力に関するサービスを識別し、識別されたサービスの機能のうちユーザ入力からリクエストされた機能を決定し、決定された機能を行う。ここで、サービスはアプリケーションとして相違に表現されてもよい。
【００３８】
一例として、命令実行システム１００は、第１文章「済州島で最近撮った写真を見せて」が入力されれば、第１文章に関するサービス（又は、アプリケーション）をギャラリーアプリケーションとして識別し得る。命令実行システム１００は、第１文章のワード「見せて」を介して第１文章でリクエストされた機能を「表示機能」として決定し、決定された機能を行って済州島で最近撮った１つ以上の写真をギャラリーアプリケーションを介してユーザ端末に表示する。ギャラリーアプリケーションは写真を表示できるため、第１文章は、ギャラリーアプリケーションについてはターゲット文章又はＩＳ（Ｉｎ−Ｓｅｒｖｉｃｅ）文章に該当する。
【００３９】
異なる一例として、命令実行システム１００は、第２文章「父にメッセージを送信して」が入力されれば、第２文章に関するサービス（又は、アプリケーション）をメッセージアプリケーションとして識別する。命令実行システム１００は、第２文章のワード「送信して」を介して第２文章でリクエストされた機能を「送信機能」として決定し、決定された機能を行ってメッセージアプリケーションを介してユーザの父の端末にメッセージを送信する。メッセージアプリケーションは、メッセージを送信できるため、第２文章は、メッセージアプリケーションについてはターゲット文章又はＩＳ文章に該当する。
【００４０】
図１に示された例を参照すると、命令実行システム１００は、第３文章「済州島で最近撮った写真を翻訳して」が入力されてもよい。命令実行システム１００は、第３文章にワード「写真」が含まれているため、第３文章に関するアプリケーションをギャラリーアプリケーションとして識別する。ここで、ギャラリーアプリケーションは写真を翻訳できないため、第３文章はギャラリーアプリケーションについてはＯＯＳ（ｏｕｔ−ｏｆ−ｓｅｒｖｉｃｅ）文章に該当する。命令実行システム１００は、第３文章がギャラリーアプリケーションに対してＯＯＳ文章であることを認知できない。そのため、命令実行システム１００は、第３文章でリクエストされた機能を決定し、決定された機能を行う。一例として、命令実行システム１００は、第３文章の「翻訳して」を「捨てて」に認識して、第３文章でリクエストされた機能を「削除」として決定し得る。そのため、命令実行システム１００は、済州島で最近撮った１つ以上の写真を削除する。このような状況は、該当ユーザ入力がギャラリーアプリケーションに対してはＯＯＳであるにもかかわらず、命令実行システム１００が該当のユーザ入力に対する機能実行を拒否できないことから発生する。
【００４１】
図９を参照して後述する一実施形態に係る命令実行システム９００は、ユーザ入力が特定アプリケーション（又は、特定サービス）（以下、ターゲットサービスと称する）のＯＯＳ文章に該当すれば、該当のユーザ入力に対する機能実行を拒否し得る。異なって表現すれば、ターゲットサービスのＯＯＳ文章に対する拒否性能を向上することができる。一実施形態に係る命令実行システム９００は、ターゲットサービスのターゲット文章（すなわち、ＩＳ文章）及びＯＯＳ文章に基づいて、学習された分流器を含んでいるため前述した拒否性能が向上し得る。
【００４２】
分流器の学習のためには、ターゲットサービスのターゲット文章及びＯＯＳ文章を生成しなければならないが、以下に、図２を参照しながらターゲット文章の生成について説明し、図３〜図５を参照してＯＯＳ文章の生成について説明する。分流器の学習については図６を参照して説明する。
【００４３】
図２は、一実施形態に係るターゲット文章生成方法を説明するための図である。
【００４４】
一実施形態に係るターゲット文章生成方法は、ターゲット文章生成装置によって実行されてもよい。ターゲット文章生成装置は、ターゲットサービスのターゲット発話テンプレートに基づいてターゲット文章を生成する。ここで、ターゲット発話テンプレートは、ターゲット文章を生成するために用いられるテンプレートを示す。
【００４５】
図２には、ギャラリーアプリケーションがターゲットサービスである場合、ターゲット文章生成装置がギャラリーアプリケーションのターゲット文章をどのように生成するかが示されている。
【００４６】
ターゲット文章生成装置は、リスト２２０にあるワード又はワードの組合せのいずれか１つをターゲット発話テンプレート２１０内のスロット２１１に入れ、リスト２３０にあるワード又はワードの組合せのいずれか１つをターゲット発話テンプレート２１０内のスロット２１２に入れて、ターゲット文章２４０を生成する。一例として、ターゲット文章生成装置は、リスト２２０にあるワード「済州島」をスロット２１１に入れ、リスト２３０にあるワード「最近」をスロット２１２に入れて、ターゲット文章２４０「済州島で最近撮った写真を見せて」を生成する。異なる一例として、ターゲット文章生成装置は、リスト２２０にあるワード「ソウル」をスロット２１１に入れ、リスト２３０にあるワード「二日前に」をスロット２１２に入れて、ターゲット文章「ソウルで二日前に取った写真を見せて」を生成する。
【００４７】
図２には、１つのターゲット発話テンプレート２１０と１つのターゲット文章２４０が図示されているが、これは例示的な事項に過ぎず、ターゲット文章生成装置は、ターゲットサービスの複数のターゲット発話テンプレートから複数のターゲット文章を生成することができる。
【００４８】
図３は、一実施形態に係るＯＯＳ文章生成装置を説明するための図である。
【００４９】
図３を参照すると、ＯＯＳ文章生成装置３００は、モデル学習器３１０及び文章生成器３２０を含む。
【００５０】
モデル学習器３１０は、ターゲット発話テンプレート２１０及びターゲット文章２４０に基づいてモデルを学習させる。図４を参照すると、モデル学習器３１０はターゲット文章２４０を発話ｔｏテンプレートモデル４１０に入力する。発話ｔｏテンプレートモデル４１０は、一例として、ｓｅｑｕｅｎｃｅ−ｔｏ−ｓｅｑｕｅｎｃｅ構造を有する多重神経網モデルであり得る。モデル学習器３１０は、発話ｔｏテンプレートモデル４１０が、ターゲット文章２４０からターゲット発話テンプレート２１０を生成するように、発話ｔｏテンプレートモデル４１０を学習させる。これに制限されることなく、モデル学習器３１０は、発話ｔｏテンプレートモデルモデル４１０が、１つ又はそれ以上のターゲット文章から１つ又はそれ以上のターゲット発話テンプレートを生成するように、発話ｔｏテンプレートモデル４１０を学習させ得る。モデル学習器３１０は、ターゲット発話テンプレート２１０をテンプレートｔｏ発話モデル４２０に入力する。テンプレートｔｏ発話モデル４２０は、一例として、ｓｅｑｕｅｎｃｅ−ｔｏ−ｓｅｑｕｅｎｃｅ構造を有する多重神経網モデルであり得る。モデル学習器３１０は、テンプレートｔｏ発話モデル４２０が、ターゲット発話テンプレート２１０からターゲット文章２４０を生成するように、テンプレートｔｏ発話モデル４２０を学習させる。これに制限されることなく、モデル学習器３１０は、テンプレートｔｏ発話モデル４２０が、１つ又はそれ以上のターゲット発話テンプレートから１つ又はそれ以上のターゲット文章を生成するように、テンプレートｔｏ発話モデル４２０を学習させることができる。
【００５１】
文章生成器３２０は、学習されたモデルのうち発話ｔｏテンプレートモデル４１０と他のサービスの発話テンプレートから生成された文章に基づいて、ターゲット発話テンプレート２１０の類似発話テンプレートを生成する。また、文章生成器３２０は、学習されたモデルのうちテンプレートｔｏ発話モデル４２０及び前記生成した類似発話テンプレートに基づいて、ターゲット文章２４０の類似文章を生成する。類似文章は、図１を参照して説明したＯＯＳ文章で、ターゲット文章と似ているがターゲットサービスでＯＯＳである文章を示す。異なって表現すれば、類似文章はターゲットサービスと関連しながらターゲットサービスが実行できない機能をリクエストする入力に該当する。
【００５２】
図５に示された例を参照すると、文章生成器３２０は、他のサービス（一例として、翻訳サービス）の文章「昨日生成した文書をハングルに翻訳して」を学習された発話ｔｏテンプレートモデル５１０に入力する。ここで、他のサービスの文章は、他のサービスの発話テンプレートから生成される。一例として、他のサービスの発話テンプレートが、「［］生成した［］をハングルに翻訳して」であれば、図２を参照して説明したターゲット発話生成装置は、他のサービスの発話テンプレートのスロットのそれぞれに「昨日」及び「文書」を入れて他のサービスの文章「昨日生成した文書をハングルに翻訳して」を生成する。
【００５３】
文章生成器３２０は、学習された発話ｔｏテンプレートモデル５１０を介してターゲット発話テンプレート２１０の類似発話テンプレート５２０「［］から［］文書を翻訳して」を生成する。図３及び図４を参照して説明したように、学習された発話ｔｏテンプレートモデル５１０は、ターゲット発話テンプレート２１０及びターゲット文章２４０に基づいて学習されているため、ターゲット文章２４０ではない他のサービスの文章が入力されても、ターゲット発話テンプレート２１０と類似の発話テンプレート５２０を生成することができる。
【００５４】
文章生成器３２０は、類似発話テンプレート５２０を学習されたテンプレートｔｏ発話モデル５３０に入力する。文章生成器３２０は、学習されたテンプレートｔｏ発話モデル５３０を介してターゲット文章２４０の類似文章５４０「昨日撮った写真の中から２番目の写真を翻訳して」を生成する。図３及び図４を参照して説明したように、学習されたテンプレートｔｏ発話モデル５３０は、ターゲット発話テンプレート２１０及びターゲット文章２４０に基づいて学習され、学習を介して見た（ｓｅｅｎ）ワード「写真」等を含むコーパス（ｃｏｒｐｕｓ）を保有する。学習されたテンプレートｔｏ発話モデル５３０は、類似発話テンプレート５２０が入力されれば、保有しているコーパス内のワードを類似発話テンプレート５２０のスロット５２１及び５２２に入れて、ターゲット文章２４０と類似の文章５４０を生成し得る。言い換えれば、文章生成器３２０は、ターゲット文章２４０と類似するものの、ターゲットサービスでＯＯＳとなる類似文章５４０を生成する。
【００５５】
ＯＯＳ文章生成装置３００は、類似文章５４０の意図でＯＯＳレーベルを割り当てることができる。ここで、ＯＯＳレーベルは、ターゲットサービスが類似文章５４０に対応する機能又は類似文章５４０でリクエストされた機能を実行できないことを示すレーベルを示す。図５に示された例で、類似文章５４０に割り当てられるＯＯＳレーベルは、ギャラリーアプリケーションが翻訳機能を実行できないことを示す。
【００５６】
図１を参照して説明したように、分流器がターゲット文章２４０及びＯＯＳ文章（すなわち、類似文章５４０）に基づいて学習され得る。以下、図６を参照しながら分流器の学習について説明する。
【００５７】
図６は、一実施形態に係る学習装置を説明するための図である。
【００５８】
図６を参照すると、学習装置６００は、入力の意図又は入力でリクエストされた機能を決定する分流器６１０を、ターゲット文章２４０及び類似文章５４０に基づいて学習させる。分流器６１０は、一例として、多重神経網モデルであってもよい。
【００５９】
学習装置６００は、ターゲット文章２４０を分流器６１０に入力し、分流器６１０がターゲット文章２４０の実際の意図又はターゲット文章２４０でリクエストされた機能を決定するように分流器６１０を学習させる。一例として、学習装置６００は、分流器６１０がターゲット文章２４０「済州島で最近撮った写真を見せて」でリクエストされた機能を表示機能として決定するように分流器６１０を学習させてもよい。
【００６０】
学習装置６００は、類似文章５４０を分流器６１０に入力し、分流器６１０が類似文章５４０に対応する機能又は類似文章５４０でリクエストされた機能を実行できないことを示す結果を出力するように分流器６１０を学習させる。一例として、分流器６１０は、類似文章５４０「昨日撮った写真の中から２番目の写真を翻訳して」が入力されれば、類似文章５４０を分析して類似文章５４０の意図又は機能をＯＯＳとして決定する。ここで、分流器６１０は、類似文章５４０の意図又は機能をＯＯＳとして決定するため、ターゲットサービスに該当するギャラリーアプリケーションが翻訳機能を実行できないことを示す結果を出力する。このような方式により、学習装置６００は、ターゲットサービスが異なる類似文章に対応する機能又は異なる類似文章でリクエストされた機能を実行できないことを示す結果を、分流器６１０が出力するように分流器６１０を学習させることができる。
【００６１】
学習された分流器は、図９を参照して説明する命令実行システムに搭載されてもよい。
【００６２】
図７は、一実施形態に係るＯＯＳ文章生成装置を説明するためのブロック図である。
【００６３】
図７を参照すると、ＯＯＳ文章生成装置３００はコンピューティング装置として、メモリ７１０及びプロセッサ７２０を含む。
【００６４】
プロセッサ７２０は、モデル学習器３１０及び文章生成器３２０を実現する。一実施形態によれば、プロセッサ７２０は、ターゲットサービスのターゲット発話テンプレート２１０及びターゲット文章２４０に基づいて、モデル４１０及び４２０を学習させる。一例として、プロセッサ７２０は、ターゲット文章２４０をモデル４１０及び４２０のうち第１モデルに入力し、第１モデルがターゲット文章２４０に基づいてターゲット発話テンプレート２１０を生成するように第１モデルを学習させ得る。ここで、第１モデルは、発話ｔｏテンプレートモデル４１０に該当する。また、プロセッサ７２０は、ターゲット発話テンプレート２４０をモデル４１０及び４２０のうち第２モデルに入力し、第２モデルがターゲット発話テンプレート２１０に基づいてターゲット文章２４０を生成するように第２モデルを学習させ得る。ここで、第２モデルは、テンプレートｔｏ発話モデル４２０に該当する。プロセッサ７２０は、学習されたモデル５１０及び５３０のうち学習された発話ｔｏテンプレートモデル５１０と他のサービスの発話テンプレートから生成された文章に基づいてターゲット発話テンプレート２１０の類似発話テンプレート５２０を生成する。プロセッサ７２０は、学習されたモデル５１０及び５３０のうちテンプレートｔｏ発話モデル５３０及び類似発話テンプレート５２０に基づいてターゲット文章２４０の類似文章５４０を生成する。
【００６５】
メモリ７１０は、ターゲット発話テンプレート２１０及びターゲット文章２４０を格納し、類似発話テンプレート５２０及び類似文章を格納する。メモリ７１０は、コンピュータで読み出し可能な格納媒体又はコンピュータで読み出し可能な記憶装置を含んでもよい。例えば、メモリ７１０は、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｉｅｓ）、ＤＲＡＭ（ｄｙｎａｍｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｉｅｓ）、ＳＲＡＭ（ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｉｅｓ）、又は当該技術分野で知られた異なる形態の不揮発性メモリを含んでもよい。
【００６６】
ＯＯＳ文章生成装置３００は、前述のターゲット文章生成装置及び／又は学習装置６００を含んでもよい。実現に応じて、ターゲット文章生成装置、ＯＯＳ文章生成装置３００、及び学習装置６００は、１つの物理的装置内で論理的に区分されてもよい。又は、ターゲット文章生成装置、ＯＯＳ文章生成装置３００、及び学習装置６００は互いに物理的に区分される装置であってもよい。
【００６７】
ターゲット文章生成装置の一例が図１１に示されている。ターゲット文章生成装置１１００は、ＯＯＳ文章生成装置３００及び学習装置６００と物理的に区分される。図２〜図１１を参照すれば、ターゲット文章生成装置１１００は、ターゲット発話テンプレート２１０、リスト２２０及びリスト２３０を格納するメモリ１１１０とリスト２２０及び２３０にあるワード又はワードの組合せをターゲット発話テンプレート２１０のスロット２１１及び２１２に入れて、ターゲット文章２４０を生成するプロセッサ１１２０を含む。
【００６８】
図１〜図６を参照して記載された事項は、図７を参照して記載された事項に適用され得るため、詳細な説明は省略する。
【００６９】
図８は、一実施形態に係るＯＯＳ文章生成方法を説明するためのフローチャートである。
【００７０】
図８を参照すると、ＯＯＳ文章生成装置３００は、ターゲットサービスのターゲット発話テンプレート２１０及びターゲット文章２４０に基づいてモデル４１０及び４２０を学習させる（Ｓ８１０）。
【００７１】
ＯＯＳ文章生成装置３００は、学習されたモデル５１０及び５３０のうち発話ｔｏテンプレートモデル５１０と他のサービスの発話テンプレートから生成された文章に基づいて、ターゲット発話テンプレート２１０の類似発話テンプレート５２０を生成する（Ｓ８２０）。
【００７２】
ＯＯＳ文章生成装置３００は、学習されたモデル５１０及び５３０のうち、テンプレートｔｏ発話モデル５３０及び類似発話テンプレート５２０に基づいてターゲット文章２４０の類似文章５４０を生成する（Ｓ８３０）。
【００７３】
図１〜図７を参照して記載された事項は、図８を参照して記載された事項に適用され得るため、詳細な説明は省略する。
【００７４】
図９は、一実施形態に係るユーザ入力基盤の命令実行システムを説明するための図である。
【００７５】
命令実行システム９００は、命令実行装置、自然語分析装置、又はＮＬＵ（Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ  Ｕｎｄｅｒｓｔａｎｄｉｎｇ）エンジンなどとは異なって表現されてもよい。
【００７６】
また、命令実行システム９００は、クライアント及びサーバを含む形態に実現されてもよい。ここで、クライアントは、ユーザの発話を受信し、該当発話に対する音声信号をサーバに送信する装置を示し得る。一例として、クライアントは、スマートフォン、タブレットなどのユーザ端末を示してもよい。また、命令実行システム９００は、クライアント又はサーバを示してもよい。
【００７７】
図９を参照すると、命令実行システム９００は、分流器９１０を含む。分流器９１０は、ターゲット文章２４０及び類似文章５４０に基づいて、既に学習された分流器に該当する。これに制限されることなく、分流器９１０は、様々なターゲット文章及び様々な類似文章に基づいて学習された分流器に該当する。
【００７８】
命令実行システム９００は「済州島で最近撮った写真を翻訳して」が入力されてもよい。ここで、該当の入力は、ユーザの発話が音声認識されて生成されたものであってもよい。命令実行システム９００は、該当の入力に関するアプリケーション又はサービスをギャラリーアプリケーションで識別する。命令実行システム９００は、該当の入力によりリクエストされた機能又は該当の入力の意図を決定する。図９に示された例として、分流器９１０はギャラリーサービスの類似文章、すなわちＯＯＳレーベルを有する類似文章、例えば、「昨日撮った写真の中から２番目の写真を翻訳して」という文章の学習により、入力内のワード「写真」と「翻訳」をすでに見た（ｓｅｅｎ）ため、該当の入力の意図又は該当の入力でリクエストされた機能をＯＯＳに決定する。そのため、分流器９１０は、決定された意図に該当する命令又は決定された機能を実行できないことを示す結果を出力する。命令実行システム９００は、分流器９１０の出力に基づいて該当の機能を実行できないというフィードバックをユーザに提供する。
【００７９】
図９に示された例とは異なって、分流器９１０の入力には、分流器９１０が学習を介して見ることのできない（ｕｎｓｅｅｎ）ワードが含まれることがある。ここで、分流器９１０は、該当のワードと最も類似のワードを介して該当の入力でリクエストされた機能又は該当の入力の意図を決定し、決定された機能又は決定された意図がＯＯＳレーベルであれば、決定された機能を実行できないことを示す結果を出力する。一例として、分流器９１０が「済州島で最近撮った写真を本若して」が入力されることがある。分流器９１０は「本若」を学習を介して見ていないため、「本若」と最も近いワードを「翻訳」として予測する。ここで、分流器９１０は、予測されたワード「翻訳」と見た（ｓｅｅｎ）ワード「写真」を介して該当のユーザ入力の意図又は該当ユーザ入力でリクエストされた機能をＯＯＳとして決定する。ＯＯＳレーベルが決定されるため、分流器９１０は、決定された意図による命令又は決定された機能を実行できないことを示す結果を出力する。
【００８０】
一実施形態において、命令実行システム９００は、アプリケーション又はサービスが行うことはできないＯＯＳ発話に対応する命令の実行を拒否することができ、ＯＯＳ入力に対して拒否性能がより向上し得る。
【００８１】
図１０は、一実施形態に係る命令実行方法を説明するためのフローチャートである。
【００８２】
図１０を参照すると、命令実行システム９００は、入力文章に関するサービスを識別する（Ｓ１０１０）。例えば、入力文章が「済州島で最近撮った写真を翻訳して」であれば、命令実行システム９００は、入力文章内のワード「写真」を介して入力文章に関するサービスをギャラリーアプリケーションに識別する。
【００８３】
命令実行システム９００は、識別されたサービスの機能のうち入力文章でリクエストされた意図を分流器を用いて決定する（Ｓ１０２０）。例えば、命令実行システム９００は、「済州島で最近撮った写真を翻訳して」の意図又は該当の入力文章でリクエストされた機能をＯＯＳに決定する。
【００８４】
命令実行システム９００は、決定された意図又は決定された機能がＯＯＳに該当する場合、入力文章の実行を拒否する（Ｓ１０３０）。前述した例において、「済州島で最近撮った写真を翻訳して」でリクエストされた意図はＯＯＳに該当するため、命令実行システム９００は、「済州島で最近撮った写真を翻訳して」の実行を拒否する。
【００８５】
図１〜図９を参照して記載された事項は、図１０を参照して記載された事項に適用され得るため、詳細な説明は省略する。
【００８６】
上述の実施形態は、ハードウェア構成要素、ソフトウェア構成要素、又はハードウェア構成要素及びソフトウェア構成要素の組合せで具現化される。例えば、本実施形態で説明した装置及び構成要素は、例えば、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、マイクロコンピュータ、ＦＰＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサー、又は命令（ｉｎｓｔｒｕｃｔｉｏｎ）を実行して応答する異なる装置のように、１つ以上の汎用コンピュータ又は特殊目的コンピュータを用いて具現化される。処理装置は、オペレーティングシステム（ＯＳ）及びオペレーティングシステム上で実行される１つ以上のソフトウェアアプリケーションを実行する。また、処理装置は、ソフトウェアの実行に応答してデータをアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は１つが使用されるものとして説明する場合もあるが、当該技術分野で通常の知識を有する者は、処理装置が複数の処理要素（ｐｒｏｃｅｓｓｉｎｇ  ｅｌｅｍｅｎｔ）及び／又は複数類型の処理要素を含むことが分かる。例えば、処理装置は、複数のプロセッサ又は１つのプロセッサ及び１つのコントローラを含む。また、並列プロセッサ（ｐａｒａｌｌｅｌ  ｐｒｏｃｅｓｓｏｒ）のような、他の処理構成も可能である。
【００８７】
ソフトウェアは、コンピュータプログラム、コード、命令、又はこれらのうち１つ以上の組合せを含み、希望通りに動作するように処理装置を構成し、独立的又は結合的に処理装置に命令する。ソフトウェア及び／又はデータは、処理装置によって解釈され、処理装置に命令又はデータを提供するためのあらゆる類型の機械、構成要素、物理的装置、仮想装置、コンピュータ格納媒体又は装置、或いは送信される信号波を介して永久的又は一時的に具現化される。ソフトウェアは、ネットワークに連結されたコンピュータシステム上に分散され、分散された方法で格納されるか又は実行される。ソフトウェア及びデータは１つ以上のコンピュータ読み取り可能な記録媒体に格納される。
【００８８】
本実施形態による方法は、多様なコンピュータ手段を介して実施されるプログラム命令の形態で具現化され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明の動作を実行するために１つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【００８９】
上述のように、たとえ実施形態を限定された図面によって説明したとしても、当該技術分野で通常の知識を有する者であれば、前記に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組み合わせられたり、他の構成要素又は均等物によって置き換えたり、置換されても適切な結果を達成することができる。
【符号の説明】
【００９０】
１００  命令実行システム
２２０、２３０  リスト
２４０  ターゲット文章
３００  ＯＯＳ文章生成装置
３１０  モデル学習器
３２０  文章生成器
５１０  学習された発話ｔｏテンプレートモデル
５３０  学習されたテンプレートｔｏ発話モデル
６００  学習装置
【図１】
2019053715.tif 000003
【図２】
2019053715.tif 000004
【図３】
2019053715.tif 000005
【図４】
2019053715.tif 000006
【図５】
2019053715.tif 000007
【図６】
2019053715.tif 000008
【図７】
2019053715.tif 000009
【図８】
2019053715.tif 000010
【図９】
2019053715.tif 000011
【図１０】
2019053715.tif 000012
【図１１】
2019053715.tif 000013