(57)【要約】【課題】インテントおよびスロットの認識に用いるモデルの学習について、高精度なモデルを学習するために、インテントおよびスロットの特性を活用可能とする。【解決手段】モデル学習システム１のモデル学習装置２は、学習データについて認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて意図解釈モデルを学習するモデル学習部１１を備え、これにより、学習後の意図解釈モデルがインテントとスロットとの関係の制約を満たしていない組み合わせでインテントおよびスロットを認識する確率を低減する。【選択図】図１
2020135689.tif 000002
【特許請求の範囲】
【請求項１】
入力情報のインテントおよびスロットの認識に用いる意図解釈モデルを学習するモデル学習システムであって、
学習データについて認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて前記意図解釈モデルを学習するモデル学習部を備える
ことを特徴とするモデル学習システム。
【請求項２】
前記モデル学習部は、
ラベル付き学習データ、および、ラベルなし学習データを学習データとして使用し、
前記ロスを用いて前記意図解釈モデルを学習する際に、前記ラベル付き学習データを少なくとも利用してインテントおよびスロットの認識値を算出し、認識値と正解値との乖離に基づき前記ロスを算出すると共に、前記ラベルなし学習データを少なくとも利用してインテントおよびスロットを認識し、認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に前記ロスを大きくするように算出する
ことを特徴とする請求項１に記載のモデル学習システム。
【請求項３】
前記モデル学習部は、
前記ロスを用いて前記意図解釈モデルを学習する際に、前記ラベル付き学習データを少なくとも利用して出力したインテントおよびスロットの認識値と正解値との乖離が大きい場合に大きくなる第１ロスと、前記ラベルなし学習データを少なくとも利用して出力したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなる第２ロスとを加味して前記ロスを算出する
ことを特徴とする請求項２に記載のモデル学習システム。
【請求項４】
請求項１〜３に記載のモデル学習システムにより学習された意図解釈モデルを使用して、入力情報のインテントおよびスロットを認識することを特徴とする意図解釈システム。
【請求項５】
入力情報のインテントおよびスロットの認識に用いる意図解釈モデルを学習するモデル学習方法であって、
モデル学習システムのモデル学習部が、学習データを入力する第１のステップと、
前記モデル学習システムの前記モデル学習部が、前記学習データについて認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて前記意図解釈モデルを学習する第２のステップと、
を含むことを特徴とするモデル学習方法。
【請求項６】
前記第２のステップにおいて、前記モデル学習部は、ラベル付き学習データを少なくとも利用してインテントおよびスロットの認識値を出力し、認識値と正解値との乖離が大きい場合に前記ロスを大きくすると共に、ラベルなし学習データを少なくとも利用してインテントおよびスロットを認識し、認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に前記ロスを大きくすることを特徴とする請求項５に記載のモデル学習方法。
【請求項７】
入力情報のインテントおよびスロットの認識に用いる意図解釈モデルを学習するモデル学習システムを制御するコンピュータにより実行されるモデル学習用プログラムであって、
前記コンピュータを、学習データについて認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて前記意図解釈モデルを学習するモデル学習部として機能させる
ことを特徴とするモデル学習用プログラム。
【請求項８】
前記モデル学習部として機能させた前記コンピュータに、ラベル付き学習データを少なくとも利用してインテントおよびスロットの認識値を出力させ、認識値と正解値との乖離が大きい場合に前記ロスを大きくさせると共に、ラベルなし学習データを少なくとも利用してインテントおよびスロットを認識させ、認識させたインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に前記ロスを大きくさせる
ことを特徴とする請求項７に記載のモデル学習用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力データのインテントおよびスロットの認識に用いるモデルを学習するモデル学習システム、モデル学習方法およびモデル学習用プログラム、および、学習されたモデルによってインテントおよびスロットを認識する意図解釈システムに関する。
【背景技術】
【０００２】
従来、意図解釈に用いるモデルの学習について広く研究が行われている。ここでの意図解釈は、文章を対象として、インテントおよびスロットを認識することを意味している。インテント（タスクや機能と呼ばれる場合もある）は、対象となる文章の意図の種別を意味する。また、スロット（キーワードと呼ばれる場合もある）は、インテントが示す意図を処理するために必要な付属的情報を意味し、インテントに対応する処理を実行する際の引数として用いられる（ただし、インテントによっては、スロットが存在しない場合もある）。なお、「文章」は、インテントおよびスロットを認識する対象となり得る情報を総称して便宜的に表すものであり、言語学において定義された「文章」を厳密に意味するものではない。例えば、意図解釈は、インテントの種別として「電車の乗換案内」が定義されており、インテント：「電車の乗換案内」に対してスロットとして「出発駅」および「到着駅」が定義されている場合において、「Ａ駅からＢ駅までの乗り換えを教えて」という文章について、インテントとして「電車の乗換案内」を、出発駅に係るスロットとして「Ａ駅」を、到着駅に係るスロットとして「Ｂ駅」を認識することを意味する。
【０００３】
意図解釈に用いるモデルの学習に関しては、インテントとスロットとを同時に認識する一つのモデルを学習するマルチタスク学習が知られている（例えば、非特許文献１、２参照）。インテントの認識およびスロットの認識に関し、非特許文献１、２に記載されたマルチタスク学習を行うことにより、インテントに関する情報およびスロットに関する情報を共有しつつモデルを学習することができ、独立にモデルを構築する場合よりも、高い精度で認識を行うことが可能なモデルを学習できることが知られている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Chih-Wen Goo, Guang Gao, Yun-Kai Hsu, Chih-Li Huo, Tsung-Chieh Chen, Keng-Wei Hsu, and Yun-Nung Chen. Slot-gated modeling for joint slot filling and intent prediction. In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (NAACL), pp. 753-757, 2018.
【非特許文献２】Bing Liu and Ian Lane. Attention-based recurrent neural network models for joint intent detection and slot filling. In Proceedings of Interspeech 2016, pp. 685-689, 2016.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
モデルにより認識されるインテントおよびスロットは、インテントおよびスロットのうち一方が正しく一方が正しくない場合には、インテントに対応する処理（例えば、インテントが「電車の乗換案内」の場合において、乗換案内検索）を実行するときの引数（例えば、インテントに対応する処理が乗換案内検索の場合において、出発駅および到着駅）として不適切な値が引き渡されてしまいエラーの発生の要因となる。このため、インテントおよびスロットの両方が正しく認識される必要がある。上述した非特許文献１、２に記載された学習は、インテントに関する情報とスロットに関する情報とを共有しつつインテントおよびスロットを同時に認識するモデルを対象とするものであるが、インテントおよびスロットの双方がモデルにより正しく認識される必要があるという点について考慮されておらず、その点で改善の余地がある。
【０００６】
本発明は、このような問題を解決するために成されたものであり、高精度なインテントおよびスロットの認識のモデルを学習するために、インテントおよびスロットの特性を活用可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
上記した課題を解決するために、本発明では、学習データについて認識したインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて意図解釈モデルを学習するようにしている。
【発明の効果】
【０００８】
インテントおよびスロットについて、インテントとスロットとの関係には制約があるという特性がある。インテントとスロットとの関係の制約とは、ある文章について、あるインテントが認識されたときに、そのインテントについて同時に認識されるべきスロットを制限するような条件、または、あるスロットが認識されたときに、その文章について同時に認識されるべきインテントを制限するような条件を意味する。例えば、ある文章について、インテントとして電車の乗換案内が認識された場合に、スロットは何でもよいというわけではなく、乗換案内に係るインテントと同時に認識されるスロットは出発駅および到着駅である必要があり、この点で、インテントと同時に認識されるべきスロットは制限される。
【０００９】
以上を踏まえ、上記のように構成した本発明によれば、学習中のモデルを用いて認識した、ある学習データのインテントおよびスロットが、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなるロスを用いて意図解釈モデルの学習がなされるため、学習後の意図解釈モデルは、インテントとスロットとの関係の制約を満たしていない組み合わせでインテントおよびスロットを認識する確率が低くなるモデルとなり、インテントとスロットとの関係の制約を考慮せずにインテントおよびスロットを認識する従来の手法で学習されたモデルと比較して、意図解釈モデルを用いた認識の精度を高めることができる。すなわち、本発明によれば、高精度なインテントおよびスロットの認識のモデルを学習するために、インテントおよびスロットの特性を活用できる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係るモデル学習システムのモデル学習装置の機能的構成例を示すブロック図である。
【図２】第１実施形態に係るモデル学習システムのモデル学習装置の動作例を示すフローチャートである。
【図３】意図解釈モデルが適用されたサービス提供システムの一例を示す図である。
【図４】第２実施形態に係るモデル学習システムのモデル学習装置の機能的構成例を示すブロック図である。
【発明を実施するための形態】
【００１１】
＜第１実施形態＞
図１は、本実施形態に係るモデル学習システム１のモデル学習装置２の機能的構成例を示すブロック図である。本実施形態に係るモデル学習装置２は、ラベル付き学習データを用いた学習を行って、意図解釈モデルの学習を行う装置である。本実施形態において、意図解釈は、文章を対象として、インテントおよびスロットを認識することを意味しており、意図解釈モデルは、文章のインテントおよびスロットの認識に用いられるモデルを意味している。インテントは、対象となる文章の意図の種別を意味し、また、スロットは、インテントが示す意図を処理するために必要な付属的情報を意味する。なお、本実施形態において、「文章」は、インテントおよびスロットを認識する対象となり得る情報を総称して便宜的に表すものである。特に、モデル学習装置２により学習された意図解釈モデルが処理対象とする文章としては、人間の発話音声をテキスト化したものや、ウェブページの入力欄や、アンケート等に人間が入力したテキストを想定している。
【００１２】
図１に示すように、モデル学習装置２は、機能構成として、学習データ変換部１０およびモデル学習部１１を備えている。モデル学習部１１は、学習処理部１２、標準ロス算出部１３および関係制約ロス算出部１４を備えている。なお、上記各機能ブロック１０〜１４は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１０〜１４は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたモデル学習用プログラムが動作することによって実現される。以上のことは、後述する第２実施形態に係るモデル学習装置２Ａの各機能ブロックについても同様である。また、モデル学習装置２は、記憶手段として、モデル記憶部１６、教師ありデータ記憶部１７、制約データ記憶部１８および処理用データ記憶部１９を備えている。
【００１３】
モデル記憶部１６には、モデル学習部１１により学習された意図解釈モデルが記憶される。上述したように、意図解釈モデルは、文章のインテントおよびスロットの認識に用いられるモデルである。本実施形態では、説明の明確化、単純化のため、以下のような意図解釈モデルを対象として学習が行われるものとする。すなわち、意図解釈モデルごとに、意図解釈モデルにより認識され得るインテントの種別（特定の意図が存在しない「その他」を含む。以下、「候補インテント種別」という）が予め定められており、更に、意図解釈モデルにより認識され得るスロットの種別が予め定められている。そして、本実施形態に係る意図解釈モデルは、入力情報（文章）に基づくデータ（対象となる文章について、前処理（形態素解析やカテゴリ付与等）や、特徴量抽出等の必要な処理が行われて、意図解釈モデルが処理可能な情報へと変換されたデータ）を入力し、（１）インテントの種別、（２）スロット（複数のスロットが認識された場合には、複数のスロットのそれぞれ。以下、同じ）の種別および、（３）スロットの値を出力するモデルであるものとする。
【００１４】
なお、意図解釈モデルは、文章のインテントおよびスロットの認識に用いられるモデルであればよく、その機能が本実施形態に係る意図解釈モデルと同じである必要はない。一例として、意図解釈モデルは、複数のインテントの種別の候補について正しい種別である確率を出力したり、複数のスロットの値の候補について正しい値である確率を出力したりするモデルであってもよい。例えば、意図解釈モデルとして、上述した非特許文献１、２のモデルを用いることもできる。
【００１５】
教師ありデータ記憶部１７には、複数のラベル付き学習データが記憶される。ラベル付き学習データとは、意図解釈モデルの学習に用いられる学習データであり、文章と正解ラベルとの組み合わせを含んでいる。本実施形態では、ある文章に対応する正解ラベルは、その文章のインテントの種別、スロットの種別およびスロットの値を示すラベルである。インテントの種別によって、スロットは複数の場合もあり、また存在しない場合もある。なお、本実施形態に係るラベル付き学習データの態様は、あくまで一例であり、ラベル付き学習データの文章の内容や、正解ラベルの態様は、学習の対象とする意図解釈モデルに応じて適切に定められるべきものである。
【００１６】
制約データ記憶部１８には、制約データが記憶される。制約データは、インテントとスロットとの関係の制約を示す情報が記述されたデータである。以下、適宜、インテントとスロットとの関係の制約を「関係制約」と表現し、制約データに記述される、関係制約を示す情報を「関係制約情報」という。ここで、インテントおよびスロットについて、インテントとスロットとの関係には制約があるという特性がある。関係制約とは、ある文章について、あるインテントが認識されたときに、その文章について同時に認識されるべきスロットを制限するような条件、または、あるスロットが認識されたときに、その文章について同時に認識されるべきインテントを制限するような条件を意味する。関係制約は、インテントに対応する処理を実行する際に使用する引数の妥当性を向上するための条件ということもできる。
【００１７】
例えば、関係制約は、「インテントの種別が「電車の乗換案内」の場合、同時に認識されるスロットの種別は、出発駅（種別）および到着駅（種別）である」というものである。この制約は、食べ物（種別）や、人物（種別）等のオブジェクトは電車の乗換案内における出発駅および到着駅となり得ないことに基づくものである。また、インテントとスロットとの関係が、この関係制約を満たす場合、例えば、認識結果に基づいて乗換案内検索エンジンにより乗換案内検索（インテントに対応する処理）が行われる場合に、少なくとも種別については正しい値を引数として乗換案内検索エンジンに引き渡すことができる。
【００１８】
なお、関係制約は、上記で例示したもののほか、様々なものを設定することができる。関係制約の例は、「インテントの種別が○の場合、同時に認識される所定のスロットの種別は○ではない」や、「所定のスロットの種別が○の場合、インテントの種別は○ではない」、「インテントの種別が○の場合、スロットは認識されない（または、○個のスロットあるいは○個以上のスロットが認識される）」、「インテントの種別が○の場合、同時に認識されるスロットの種別は、○か○である」等である。関係制約情報は、モデル学習部１１が処理可能な形式で制約データに記述される。本実施形態では、説明の明確化、単純化のため、制約データには、インテントの種別ごとに、取り得るスロットの種別を示す情報が、関係制約情報として記述されているものとする。この場合、関係制約情報は、例えば、インテントの種別が「電車の乗換案内」の場合には、取り得るスロットの種別は「出発駅」および「到着駅」であるという情報である。
【００１９】
処理用データ記憶部１９には、学習データ変換部１０により生成された第１処理用データ（後述）が記憶される。
【００２０】
以下、教師ありデータ記憶部１７に記憶されたラベル付き学習データを使用して意図解釈モデルの学習を行う場合の各機能ブロックの処理を説明する。
【００２１】
学習データ変換部１０は、教師ありデータ記憶部１７に記憶されたラベル付き学習データを１件ずつ入力し、ラベル付き学習データに含まれる文章について前処理（形態素解析やカテゴリ付与等）や、特徴量抽出等の処理を行って、特徴を数値列として表現する特徴ベクトルを生成し、生成した特徴ベクトルと元の文章と正解ラベルとの組み合わせを含む第１処理用データを生成する。第１処理用データの生成に必要な情報は学習データ変換部１０に適切に与えられる。この第１処理用データは、モデル学習部１１が処理可能な形式のデータである。学習データ変換部１０は、生成した第１処理用データを処理用データ記憶部１９に記憶する。この結果、学習データ変換部１０の機能により、ラベル付き学習データのそれぞれが、第１処理用データに変換され、処理用データ記憶部１９に記憶される。
【００２２】
モデル学習部１１の学習処理部１２は、以下の処理を行って、意図解釈モデルを決定し、モデル記憶部１６に記憶する。本実施形態では、意図解釈モデルは、インテントとスロットとを同時に認識するモデルであり、特徴ベクトルデータの各要素を変数の一部とし、各変数を調整するパラメータを含む関数によって構成されている。そして、意図解釈モデルを決定するとは、マルチタスク学習によって意図解釈モデルの各パラメータの値を調整し、決定することを意味する。
【００２３】
意図解釈モデルの決定に際し、学習処理部１２は、意図解釈モデルと同構造のモデル（以下、便宜的に「仮モデル」という）の各パラメータの更新を繰り返し行い、各パラメータを更新する度に各パラメータを更新した後の仮モデルの総合ロス（後述）を算出する。そして、学習処理部１２は、総合ロスが小さくなるように各パラメータが調整された仮モデルを最終的な意図解釈モデルとして決定する（つまり、最終的な各パラメータの値を決定する）。なお、仮モデルの各パラメータの更新は、例えば確率的勾配降下法など、統合ロスを下げるようにパラメタを学習する任意の方法を用いることができる。
【００２４】
学習処理部１２は、一の仮モデルの総合ロス（特許請求の範囲の「ロス」に相当）を以下の方法で算出する。すなわち、学習処理部１２は、標準ロス算出部１３に対して、当該一の仮モデルを通知すると共に、標準ロスの応答を要求する。学習処理部１２は、当該要求に対する応答として標準ロスを取得する。また、学習処理部１２は、関係制約ロス算出部１４に対して、当該一の仮モデルを通知すると共に、関係制約ロスの応答を要求する。学習処理部１２は、当該要求に対する応答として関係制約ロスを取得する。学習処理部１２は、標準ロス算出部１３から取得した標準ロス、および、関係制約ロス算出部１４から取得した関係制約ロスについて、正規化や、最終的に算出される総合ロスへの影響度を調整する重みづけ等を適切に行った上で、これらを加算し、総合ロスを算出する。つまり、学習処理部１２は、標準ロスおよび関係制約ロスの双方を加味して総合ロスを算出する。このため、総合ロスは、関係制約ロスが大きいほど、大きくなる。
【００２５】
モデル学習部１１の標準ロス算出部１３は、学習処理部１２から標準ロスの応答要求があった場合に、学習処理部１２から通知された仮モデル（以下の標準ロス算出部１３の処理の説明において、単に「仮モデル」という）に基づいて、標準ロスを算出し、応答する。標準ロスとは、第１処理用データを対象として仮モデルを用いて認識された結果が表す値（以降、認識値と呼ぶ）と、正解ラベルにより表される値（以降、正解値と呼ぶ）との乖離を表す損失値のことであり、乖離する場合に大きな値になる。標準ロス算出部１３は、処理用データ記憶部１９に記憶された第１処理用データのそれぞれを入力し、第１処理用データのそれぞれについて、仮モデルを使用して出力される認識値と正解値との乖離を所定の計算方法で算出し、それぞれの結果から標準ロスを算出する。なお、標準ロスの算出方法は、インテントおよびスロットを同時に認識するモデルを学習するマルチタスク学習に適用可能な方法であれば、どのような方法であってもよく、例えば、上述した非特許文献１、２で開示されている方法を用いることができる。
【００２６】
モデル学習部１１の関係制約ロス算出部１４は、学習処理部１２から関係制約ロスの応答要求があった場合に、学習処理部１２から通知された仮モデル（以下の関係制約ロス算出部１４の処理において、単に「仮モデル」という）に基づいて、関係制約ロスを算出し、応答する。関係制約ロスとは、第１処理用データを対象として認識されるインテント（本実施形態では、具体的にはインテントの種別）およびスロット（本実施形態では、具体的にはスロットの種別）について、インテントとスロットとの関係の制約の非充足性を総合的に表す損失値のことであり、各第１処理用データについて関係の制約が満たされていない場合に大きくなる。
【００２７】
関係制約ロス算出部１４は、処理用データ記憶部１９に記憶された第１処理用データのそれぞれを入力し、第１処理用データのそれぞれについて、仮モデルを使用してインテントの種別と、スロットの種別とを認識し、制約データ記憶部１８の制約データに記述された関係制約情報を参照して、認識したインテントの種別およびスロットの種別が、関係制約情報が示す関係制約を満たすか否かを判定する。そして、関係制約ロス算出部１４は、処理対象とした第１処理用データが関係の制約を満たさない場合に関係制約ロスが大きくなる計算方法で、全ての第１処理用データについての判定結果を反映して関係制約ロスを算出する。一例として、関係制約情報に「インテントの種別が「電車の乗換案内」の場合、同時に認識されるスロットの種別は「出発駅」および「到着駅」である」という情報が含まれているとする。この場合において、関係制約ロス算出部１４は、ある第１処理用データについて仮モデルを用いて認識されたインテントの種別が「電車の乗換案内」であり、出発駅に係るスロットまたは到着駅に係るスロットの種別が「店舗名称」（つまり出発駅や到着駅ではない）である場合、制約を満たさないため、関係制約ロスが大きくなるようにする。
【００２８】
以下で、関係制約ロスを算出するロス関数の具体的な一例を示す。まず、命題論理の文を用いたロス関数であるSemantic Loss Functionが、文αに含まれる原始命題をＸ＝{Ｘi,...,Ｘn}とし、各原始命題が真となる確率を表すｐ＝{ｐi,...,ｐn}を用いて以下の通り定義される。
【００２９】
【数１】
2020135689.tif 000003
【００３０】
ただし、破線のアンダーラインＬ１のｘは、文αを充足する真理値割り当てである。また、文章が何れかのインテントとして認識され、かつ、文章内の全トークン（スロットの値を構成する最小単位）が、認識されたインテントのスロットか、どのスロットでもない場合に真になる文＜Intent-slot-rel＞を以下の通り定義する。
【００３１】
【数２】
2020135689.tif 000004
【００３２】
ただし、∨は論理和、∧は論理積、intenti(u)は、文章uがi番目のインテントの場合に真となる原始命題、Siはi番目のインテントに定義されたスロットのインデックスの集合、slotj(ut)は文章uのt番目のトークンがj番目のスロットの場合に真となる原始命題である。各トークンが必ずスロットに属するわけではないため、全てのSiに対して、どのスロットでもないことを表す特殊なスロットを含める。そして、Intent-slot-relを用いた関係制約ロスのロス関数は以下となる。
【００３３】
【数３】
2020135689.tif 000005
【００３４】
ただし、Ｕは第１処理用データであり、破線のアンダーラインＬ２の部分は、Semantic Loss Functionの定義と、Intent-slot-relに従って、発話uのインテントの確率ｐIu、発話u内の各トークンのスロットの確率ｐsuから計算する。
【００３５】
なお、関係制約ロスの計算方法は、インテントとスロットとの関係の制約を満たさないことが関係制約ロスの増大に寄与するような方法であればどのような方法であってもよい。従って、インテントとスロットとの関係の制約を満たさない場合に、制約が満たされない度合によって、関係制約ロスの増大への寄与度が変化するようにしてもよく、また、インテントとスロットとの関係の制約を満たすことが関係制約ロスの低減に寄与するようにしてもよい。
【００３６】
以上のように、本実施形態に係るモデル学習システム１のモデル学習装置２は、意図解釈モデルを学習する際に、標準ロスだけではなく、事前に定義されたインテントとスロットとの関係の制約を満たさない場合に大きくなる関係制約ロスが加味された総合ロスを用いて意図解釈モデルを学習する。この構成によれば、関係制約ロスが加味された総合ロスを用いて意図解釈モデルの学習がなされるため、学習後の意図解釈モデルは、インテントとスロットとの関係の制約を満たしていない組み合わせでインテントおよびスロットを認識する確率が低くなるモデルとなり、インテントとスロットとの関係の制約を考慮せずにインテントおよびスロットを認識する従来の手法で学習されたモデルと比較して、意図解釈モデルを用いた認識の精度を高めることができる。すなわち、本実施形態によれば、高精度なインテントおよびスロットの認識のモデル（意図解釈モデル）を学習するために、インテントおよびスロットの特性を活用できる。
【００３７】
次に、本実施形態に係るモデル学習装置２の動作例、特に、意図解釈モデルを学習するときのモデル学習部１１の動作例について図２のフローチャートを用いて説明する。図２に示すように、モデル学習部１１は、処理用データ記憶部１９に記憶された第１処理用データ（学習データ）を入力する（ステップＳＡ１）。次いで、モデル学習部１１は、入力した学習データに基づいて意図解釈モデルを学習する（ステップＳＡ２）。ステップＳＡ２において、上述したように、モデル学習部１１は、標準ロスおよび関係制約ロスを加味した総合ロス、つまり、仮モデルを使用して認識されるインテントとスロットとが関係制約を満たさない場合に大きくなるロスを用いて意図解釈モデルを学習する。
【００３８】
次に、本実施形態に係るモデル学習システム１の利用態様の例について説明する。例えば、モデル学習システム１は、以下の態様で利用される。すなわち、モデル学習システム１を運用する主体（以下、「運用主体」という）に対して、学習データおよび関係制約情報が提供される。ラベル付き学習データおよび関係制約情報の提供は、どのような方法で行われてもよく、例えば、ラベル付き学習データおよび関係制約情報は、インターネットを介してアップロードされる。一部または全部の情報を運用主体自身が収集してもよい。運用主体に提供されたラベル付き学習データは、教師ありデータ記憶部１７に記憶される。また、運用主体に提供された関係制約情報は制約データに記述され、この制約データが制約データ記憶部１８に記憶される。その後、上述した手法でラベル付き学習データおよび関係制約情報を利用した意図解釈モデルの学習が行われ、最終的な意図解釈モデルがモデル記憶部１６に記憶される。
【００３９】
次に、モデル学習システム１により学習された意図解釈モデルの利用態様の例について図３を用いて説明する。意図解釈モデルは、例えば、以下の態様で利用される。すなわち、運用主体によって、意図解釈モデルを利用するためのサービス提供システムＳ１（図３（Ａ））が構築されると共に、サービス提供システムの意図解釈モデルを、ＷｅｂＡＰＩを使用してユーザが利用可能な状態とされる。この場合、ユーザは、所定の端末のブラウザにより、所定のＷｅｂＡＰＩを指定する情報を含み、文章をクエリパラメータの１つとするリクエストを行って、その文章のインテントおよびスロットの認識を要求する。サービス提供システムＳ１は、リクエストに応じて、意図解釈モデルを用いてインテントおよびスロットの認識を行い、認識結果をレスポンスする。ユーザは、例えば、そのユーザにとっての顧客が発話した文章を音声認識し、その文章のインテントに対応する処理を実行するサービスを提供する場合において、インテントおよびスロットを得るためにサービス提供システムを利用する。この例の場合、サービス提供システムＳ１が、特許請求の範囲の「意図解釈システム」に相当する。
【００４０】
他の例として、意図解釈モデルは、以下の態様で利用される。すなわち、モデル学習システム１を運用する主体によって、意図解釈モデルがユーザに提供される。意図解釈モデルが提供されるとは、ユーザ側の環境で意図解釈モデルを再現するために必要な情報が提供されることを意味する。ユーザは、サービス提供システムＳ２（図３（Ｂ））において、提供された意図解釈モデルを意図解釈エンジンの一部として使用し、文章の意図解釈を伴う様々なサービスを提供する。この例の場合、意図解釈モデルを使用して文章の意図解釈を伴うサービスを提供するシステムが、特許請求の範囲の「意図解釈システム」に相当する。
【００４１】
＜第２実施形態＞
次に、第２実施形態について説明する。なお、以下の本実施形態の説明において、第１実施形態で説明した要素と同じ要素については同一の符号を付し、その詳細な説明を省略する。
【００４２】
図４は、本実施形態に係るモデル学習システム１Ａのモデル学習装置２Ａの機能的構成例を示すブロック図である。本実施形態に係るモデル学習装置２Ａは、ラベル付き学習データ、および、ラベルなし学習データを用いた半教師あり学習を行って意図解釈モデルの学習を行う装置である。図４に示すように、モデル学習装置２Ａは、学習データ変換部１０に代えて学習データ変換部１０Ａを備え、モデル学習部１１に代えてモデル学習部１１Ａを備えている。また、モデル学習部１１Ａは、学習処理部１２に代えて学習処理部１２Ａを備え、標準ロス算出部１３に代えて標準ロス算出部１３Ａを備え、関係制約ロス算出部１４に代えて関係制約ロス算出部１４Ａを備えている。
【００４３】
また、図４に示すように、モデル学習装置２Ａは、教師ありデータ記憶部１７に加えて、教師なしデータ記憶部２０を備えている。教師なしデータ記憶部２０には、複数のラベルなし学習データが記憶される。ラベルなし学習データとは、意図解釈モデルの学習に用いられる学習データであって、文章を含む一方、正解ラベルを含まないデータである。また、図４に示すように、モデル学習装置２Ａは、処理用データ記憶部１９に代えて、処理用データ記憶部１９Ａを備えている。処理用データ記憶部１９Ａは第１処理用データおよび後述する第２処理用データを記憶する。
【００４４】
以下、教師ありデータ記憶部１７に記憶されたラベル付き学習データ、および、教師なしデータ記憶部２０に記憶されたラベルなし学習データを使用して意図解釈モデルの学習を行う場合の各機能ブロックの処理を説明する。
【００４５】
学習データ変換部１０Ａは、第１実施形態と同様の手段で、教師ありデータ記憶部１７に記憶されたラベル付き学習データを第１処理用データに変換し、処理用データ記憶部１９Ａに記憶する。更に、学習データ変換部１０Ａは、教師なしデータ記憶部２０に記憶されたラベルなし学習データのそれぞれについて、必要な自然言語処理を施して特徴ベクトルを生成し、特徴ベクトルと文章とを含む第２処理用データを処理用データ記憶部１９Ａに記憶する。この結果、学習データ変換部１０Ａの機能により、ラベル付き学習データに基づく第１処理用データ、および、ラベルなし学習データに基づく第２処理用データが処理用データ記憶部１９Ａに記憶される。
【００４６】
モデル学習部１１Ａの学習処理部１２Ａは、第１実施形態と同様の方法で、意図解釈モデルを決定し（＝意図解釈モデルの各パラメータを決定し）、モデル記憶部１６に記憶する。すなわち、学習処理部１２Ａは、仮モデルの各パラメータの更新を繰り返し行い、各パラメータを更新する度に各パラメータを更新した後の仮モデルの総合ロスを算出し、総合ロスが最も小さくなるように各パラメータが調整された仮モデルを最終的な意図解釈モデルとして決定する。モデル学習部１１Ａは、標準ロス算出部１３Ａに標準ロスの算出を要求すると共に、関係制約ロス算出部１４Ａに関係制約ロスの算出を要求し、標準ロスおよび関係制約ロスを加味して総合ロスを算出する。
【００４７】
モデル学習部１１Ａの標準ロス算出部１３Ａは、学習処理部１２Ａから標準ロスの応答要求があった場合に、学習処理部１２Ａから通知された仮モデルに基づいて、標準ロスを算出し、応答する。その際、標準ロス算出部１３Ａは、処理用データ記憶部１９Ａに記憶されたデータのうち、ラベル付き学習データに基づく第１処理用データのみを入力し、第１処理用データを処理対象として（つまり、第２処理用データを処理対象としない）、第１実施形態に係る標準ロス算出部１３と同様の方法で標準ロスを算出する。本実施形態に係る標準ロス算出部１３Ａが算出する標準ロスは、特許請求の範囲の「第１ロス」に相当する。
【００４８】
モデル学習部１１Ａの関係制約ロス算出部１４Ａは、学習処理部１２Ａから関係制約ロスの応答要求があった場合に、学習処理部１２Ａから通知された仮モデルに基づいて、関係制約ロスを算出し、応答する。その際、関係制約ロス算出部１４Ａは、処理用データ記憶部１９Ａに記憶されたデータのうち、ラベル無し学習データに基づく第２処理用データのみを入力し、第２処理用データを処理対象として（つまり、第１処理用データを処理対象としない）、第１実施形態に係る関係制約ロス算出部１４と同様の方法で関係制約ロスを算出する。本実施形態に係る関係制約ロス算出部１４Ａが算出得る関係制約ロスは、特許請求の範囲の「第２ロス」に相当する。
【００４９】
以上のように、本実施形態では、モデル学習装置２は、ラベル付き学習データおよびラベルなし学習データの双方を記憶し、ラベル付き学習データを使用して標準ロスを算出すると共に、ラベルなし学習データを使用して関係制約ロスを算出し、標準ロスと関係制約ロスとを加味した総合ロスを用いて意図解釈モデルを学習する。このような構成のため、以下の効果を奏する。
【００５０】
すなわち、ラベルなし学習データ（に基づく第２処理用データ）は、正解ラベルが付加されていないため、そのままでは標準ロスの算出には用いることができない。一方で、ラベルなし学習データを対象として仮モデルを用いて認識されたインテントおよびスロットについては、認識されたインテントおよびスロットが正解であるならば、関係制約を満たし、正解でないならば関係制約を満たさない可能性が高いはずである（正解でないのに関係制約を偶然満たす場合はあり得る）。つまり、ラベルなし学習データについては、正解ラベルとの比較を行うことなく、関係制約の充足性を検証することにより、仮モデルの妥当性（＝仮モデルが出力する認識値の妥当性）を検証できる。
【００５１】
これを踏まえ、本実施形態によれば、ラベルなし学習データに対して、正解ラベルを新たに付与するといった処理を行うことなく、インテントおよびスロットが関係制約を満たさなければならないという特性を利用して、ラベルなし学習データを有効活用して意図解釈モデルを学習できる。第１実施形態で説明したように、関係制約の充足性を考慮して学習された意図解釈モデルは、高い精度でインテントおよびスロットを認識できる。ここで、ラベルなし学習データは、ラベルあり学習データと比較して、低コストで多量を収集できるが、このような低コストで多量を収集可能なラベルなし学習データを有効活用できるという点でも本実施形態の構成は優位性がある。
【００５２】
また、本実施形態では、標準ロスの算出についてラベルあり学習データのみを用い、ラベルなし学習データを用いない構成であるが、これを、ラベルあり学習データにより学習されたモデルを使用して、ラベルなし学習データに正解ラベルを付与し、これも用いて標準ロスを算出する構成とすることも可能である。しかしながら、この場合、正解ラベルが付与されたラベルなし学習データは、人間が正解ラベルを付与したデータと比較して正解ラベルの正確性が劣り、標準ロスの算出に悪影響を与える可能性がある。一方で、本実施形態では、標準ロスの算出にはラベルあり学習データのみが用いられる一方、関係制約ロスの算出にはラベルなし学習データのみが用いられるため、各学習データの特徴を踏まえた適切な態様で効果的にモデルの学習を行うことができる。
【００５３】
なお、関係制約ロスの算出に、ラベルなし学習データと共にラベルあり学習データを用いることを排除するものではなく、関係制約ロスの算出にラベルなし学習データおよびラベルあり学習データの双方を用いる構成であってもよい。また、標準ロスの算出に、ラベルあり学習データと共にラベルなし学習データ（より具体的には、ラベルなし学習データに機械的にラベルを付与したデータ）を用いることを排除するものではなく、標準ロスの算出にラベルあり学習データおよびラベルなし学習データ（より具体的には、ラベルなし学習データに機械的にラベルを付与したデータ）を用いる構成であってもよい。
【００５４】
次に、本実施形態に係るモデル学習装置２Ａの動作例、特に、意図解釈モデルを学習するときのモデル学習部１１Ａの動作例について図２のフローチャートを援用して説明する。図２に示すように、モデル学習部１１Ａは、処理用データ記憶部１９Ａに記憶された第１処理用データおよび第２処理用データ（学習データ）を入力する（ステップＳＡ１）。次いで、モデル学習部１１Ａは、入力した学習データに基づいて意図解釈モデルを学習する（ステップＳＡ２）。ステップＳＡ２において、上述したように、モデル学習部１１Ａは、第１処理用データ（ラベル付き学習データ）を用いて出力される認識値と正解値との乖離がある場合に大きくなる標準ロス、および、第２処理用データ（ラベルなし学習データ）を用いて認識されるインテントおよびスロットが関係制約を満たさない場合に大きくなる関係制約ロスを加味した総合ロスを用いて意図解釈モデルを学習する。
【００５５】
なお、本実施形態に係るモデル学習システム１Ａにより学習された意図解釈モデルは、例えば、第１実施形態で説明した態様で使用可能である。
【００５６】
以上、本発明の第１、第２実施形態について説明したが、上記各実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００５７】
例えば、第１実施形態においてモデル学習装置２が記憶していたデータの一部又は全部をモデル学習装置２以外の装置が記憶する構成としてもよい。一例として、教師ありデータ記憶部１７が記憶するラベル付き学習データについて、モデル学習装置２と通信可能に接続された記憶装置が記憶する構成としてもよい。このことは第２実施形態についても同様である。
【００５８】
また、第１実施形態で、モデル学習装置２が実行した処理の少なくとも一部をモデル学習装置２以外の外部装置が実行する構成でもよい。一例として、学習データ変換部１０（当然、他の機能ブロックでもよい）が実行する処理の一部または全部を、モデル学習装置２と通信可能に接続された外部装置が実行する構成でもよい。この場合、モデル学習装置２と外部装置とが共同してモデル学習システムとして機能する。このことは第２実施形態についても同様である。
【符号の説明】
【００５９】
１、１Ａ  モデル学習システム
１１、１１Ａ  モデル学習部
【図１】
2020135689.tif 000006
【図２】
2020135689.tif 000007
【図３】
2020135689.tif 000008
【図４】
2020135689.tif 000009