(57)【特許請求の範囲】
【請求項１】
意図毎に、正例である文例及び負例である文例を示す学習データから当該負例を複製して新たな正例を生成し、当該新たな正例を当該学習データに追加することで拡張学習データを生成する学習データ拡張部と、
前記意図毎に、前記学習データ拡張部により生成された拡張学習データが示す文例を形態素解析して、特徴量を抽出する形態素解析部と、
前記意図毎に、前記形態素解析部により抽出された特徴量と前記意図との関係を学習してモデルを生成するモデル学習部と
を備えたモデル学習装置。
【請求項２】
学習データ拡張部が、意図毎に、正例である文例及び負例である文例を示す学習データから当該負例を複製して新たな正例を作成し、当該新たな正例を当該学習データに追加することで拡張学習データを生成し、
形態素解析部が、前記意図毎に、前記学習データ拡張部により生成された拡張学習データが示す正例を形態素解析して、特徴量を抽出し、
モデル学習部が、前記意図毎に、前記形態素解析部により抽出された特徴量と前記意図との関係を学習してモデルを生成する
ことを特徴とするモデル学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、文例から抽出した特徴量と意図との関係を学習してモデルを生成するモデル学習装置及びモデル学習方法に関する。
【背景技術】
【０００２】
従来から、使用者により発話された音声を音声認識により文字列に変換し、当該文字列から、どのような操作を実行したいのかという使用者の意図を推定する意図理解装置が知られている。１つの発話に複数の意図が含まれる場合もあるため、意図理解装置は、複数の意図を含む発話に対して意図を推定可能であることが求められる。【０００３】
例えば特許文献１では、１つの発話に複数の意図が含まれる場合でも意図を推定可能とする発話意図認識装置が示されている。この発話意図認識装置では、発話を示す文字列を２つに分割する分割点確率と、分割した各文字列に対するタグ候補（意図）確率とを計算し、２つの確率の積が大きくなる発話意図タグの解を探索する。【０００４】
しかしながら、文字列が並列の構造を持つ場合には適切な分割点が存在しないため、上記発話意図認識装置では対応できない。例えば、「米種と炊き方をふつうにして」という文字列は、「米種をふつうにする」という意図と、「炊き方をふつうにする」という意図を含む。しかしながら、上記文字列では適切な分割点が存在しないため、上記発話意図認識装置では両方の意図を得られない。【０００５】
一方、非特許文献１に開示された教師あり学習を用いた方式では、文字列をＢａｇ  ｏｆ  ｗｏｒｄｓと呼ばれる形式で表現し、このＢａｇ  ｏｆ  ｗｏｒｄｓを特徴量としてサポートベクトルマシン又は対数線形モデル（最大エントロピーモデル）と呼ばれる分類器（意図理解モデル）を学習し、意図を推定する。Ｂａｇ  ｏｆ  ｗｏｒｄｓとして文字列に含まれるすべての単語を用いて分類を行うため、文字列が並列の構造を持つ場合でも意図を推定できる。なお、非特許文献１で開示された方式を、１つの文字列に複数の意図が含まれる場合に適用する場合、意図毎に別々の分類器を学習し、実行時に各分類器に基づく判定結果を統合する方法が考えられる。なお、複数の分類器に基づく判定結果を統合する方式は、例えば非特許文献２に示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−２００２７３号公報
【非特許文献】
【０００７】
【非特許文献１】言語処理のための機械学習入門、コロナ社
【非特許文献２】100 クラスSVM による薬物の活性クラス分類、第30回情報化学討論会予稿
【発明の概要】
【発明が解決しようとする課題】
【０００８】
非特許文献１，２の方式では、各分類器において、判定対象とする意図（対象意図と呼ぶ）に対する文例を正例とし、それ以外の意図（対象外意図と呼ぶ）に対する文例を負例として学習する。そのため、対象意図と対象外意図の両方を含む文字列を判定しようとすると、文字列に含まれる特徴量が正例及び負例の両方に存在するため、上記判定における対象外意図に対するスコアが対象意図に対するスコアよりも高くなる場合がある。よって、全体として意図の推定精度が低くなる。【０００９】
このように、非特許文献１，２の方式では、文字列が並列の構造を持つ場合でも意図を推定できる。しかしながら、非特許文献１，２の方式では、１つの文字列に複数の意図が含まれる場合に、意図を推定できない場合がある。
【００１０】
この発明は、上記のような課題を解決するためになされたもので、正例である文例及び負例である文例を示す学習データを用い、１つの文字列に複数の意図が含まれる場合でも意図を推定可能とするモデルを得るモデル学習装置を提供することを目的としている。
【課題を解決するための手段】
【００１１】
この発明に係るモデル学習装置は、意図毎に、正例である文例及び負例である文例を示す学習データから当該負例を複製して新たな正例を生成し、当該新たな正例を当該学習データに追加することで拡張学習データを生成する学習データ拡張部と、意図毎に、学習データ拡張部により生成された拡張学習データが示す文例を形態素解析して、特徴量を抽出する形態素解析部と、意図毎に、形態素解析部により抽出された特徴量と意図との関係を学習してモデルを生成するモデル学習部とを備えたことを特徴とする。
【発明の効果】
【００１２】
この発明によれば、上記のように構成したので、正例である文例及び負例である文例を示す学習データを用い、１つの文字列に複数の意図が含まれる場合でも意図を推定可能とするモデルが得られる。
【図面の簡単な説明】
【００１３】
【図１】この発明の実施の形態１に係るモデル学習装置の機能構成例を示すブロック図である。
【図２】この発明の実施の形態１に係る意図理解装置の機能構成例を示すブロック図である。
【図３】この発明の実施の形態１に係るモデル学習装置のハードウェア構成例を示すブロック図である。
【図４】この発明の実施の形態１に係るモデル学習装置の別のハードウェア構成例を示すブロック図である。
【図５】この発明の実施の形態１に係るモデル学習装置によるモデル学習処理例を示すフローチャートである。
【図６】この発明の実施の形態１における文例データの一例を示す図である。
【図７】この発明の実施の形態１における学習データの一例を示す図である。
【図８】この発明の実施の形態１における拡張学習データの一例を示す図である。
【図９】この発明の実施の形態１に係る意図理解装置による意図推定処理例を示すフローチャートである。
【図１０】この発明の実施の形態１における意図理解部による判定結果の一例を示す図である。
【図１１】この発明の実施の形態１における結果統合部による統合結果の一例を示す図である。
【図１２】この発明の実施の形態１における結果統合部による結果統合処理例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。
実施の形態１．
まず、モデル学習装置１の機能構成例について、図１を参照しながら説明する。
モデル学習装置１は、図１に示すように、文例データベース１０１及びモデル作成部１０２を備えている。また、モデル作成部１０２は、学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６を有している。
【００１５】
文例データベース１０１は、意図毎の文例を示す文例データを格納する。
【００１６】
意図は、「＜主意図＞［＜スロット名＞＝＜スロット値＞，…］」のような形で表現される。炊飯器に対する操作を対象とした場合には、意図は、例えば、「米種設定［米種＝白米］」、「炊き方設定［炊き方＝お急ぎ］」のように表現できる。「米種設定［米種＝白米］」は、米種を白米に設定したいという意図を示し、「炊き方設定［炊き方＝お急ぎ］」は炊き方をお急ぎにしたいという意図を示す。上記意図の表現形式は一例であり、これに限らない。
【００１７】
学習データ生成部１０３は、文例データベース１０１に格納された文例データに基づいて、意図毎に、正例である文例及び負例である文例を示す学習データを生成する。この学習データ生成部１０３により生成された意図毎の学習データは、学習データ拡張部１０４へ出力される。
【００１８】
学習データ拡張部１０４は、意図毎に、学習データ生成部１０３により生成された学習データに基づいて、拡張学習データを生成する。この際、学習データ拡張部１０４は、意図毎に、学習データ生成部１０３により生成された学習データから負例を複製して新たな正例を生成し、当該新たな正例を当該学習データに追加することで拡張学習データを生成する。この学習データ拡張部１０４により生成された意図毎の拡張学習データは、形態素解析部１０５へ出力される。
【００１９】
形態素解析部１０５は、形態素解析辞書１０７を用い、意図毎に、学習データ拡張部１０４により生成された拡張学習データが示す文例を形態素解析し、自立語を特徴量として抽出する。この形態素解析部１０５により抽出された意図毎の特徴量を示すデータは、対応する拡張学習データに付加されて形態素解析済み拡張学習データとしてモデル学習部１０６へ出力される。
【００２０】
モデル学習部１０６は、意図毎に、形態素解析部１０５により抽出された特徴量との関係を学習（モデリング）して意図理解モデル（モデル）１０８を生成する。この際、モデル学習部１０６は、最大エントロピー法等の手法を用いて、上記学習を実施できる。具体的には、例えば「米種を白米に設定して」という文例に対し、形態素解析部１０５で抽出される特徴量「米種、白米、設定する」と、正解意図「米種設定［｛米種＝白米｝］」との組を用意する。そして、大量に収集した組から教師あり機械学習によって、特徴量のリストに対し意図がどれくらい尤もらしいかを示す意図理解モデル１０８を生成する。以下では、モデル学習部１０６は、最大エントロピー法を用いて意図理解モデル１０８を生成するものとする。
【００２１】
なお図１は、文例データベース１０１及び学習データ生成部１０３がモデル学習装置１の内部に設けられる場合を示した。しかしながら、これに限らず、文例データベース１０１及び学習データ生成部１０３はモデル学習装置１の外部に設けられてもよい。
【００２２】
次に、意図理解装置２の機能構成例について、図２を参照しながら説明する。なお以下では、意図理解装置２が操作命令を出力する対象が炊飯器である場合を例にして説明を行う。
意図理解装置２は、図２に示すように、入力部２０１、形態素解析部２０２、意図理解部２０３、結果統合部２０４及び出力部２０５を備えている。
【００２３】
入力部２０１は、文字列を示す文字列データを得る。ここで、入力部２０１は、文字列の入力を受付けて文字列データを得てもよいし、音声の入力を受付けて音声認識により文字列に変換することで文字列データを得てもよい。この入力部２０１により得られた文字列データは、形態素解析部１０５へ出力される。
【００２４】
形態素解析部２０２は、形態素解析辞書２０６を用い、入力部２０１により得られた文字列データが示す文字列を形態素解析し、自立語を特徴量として抽出する。この形態素解析部２０２により抽出された特徴量を示すデータは、意図理解部２０３へ出力される。
【００２５】
意図理解部２０３は、複数の意図理解モデル１０８を用い、形態素解析部２０２により得られた特徴量から、意図理解モデル１０８毎に当該特徴量が該当する意図に属するかを判定する。なお、意図理解モデル１０８は、モデル学習装置１で得られたモデルである。この意図理解部２０３による意図理解モデル１０８毎の判定結果を示すデータは、結果統合部２０４へ出力される。
【００２６】
結果統合部２０４は、意図理解部２０３による意図理解モデル１０８毎の判定結果を統合する。この結果統合部２０４による統合結果を示すデータは、出力部２０５へ出力される。
【００２７】
出力部２０５は、結果統合部２０４による統合結果に基づいて、操作命令を炊飯器へ出力する。
【００２８】
次に、モデル学習装置１のハードウェア構成例について、図３，４を参照しながら説明する。
モデル学習装置１における学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６の各機能は、図３に示すように、メモリ５２に格納されるプログラムを実行するプロセッサ（ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）ともいう）５１、又は、図４に示すように、専用のハードウェアである処理回路５６によって実現される。
【００２９】
図３の構成の場合、学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６の機能は、ソフトウェア、ファームウェア、又はソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアやファームウェアはプログラムとして記述され、メモリ５２に格納される。プロセッサ５１は、メモリ５２に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、モデル学習装置１は、プロセッサ５１により実行されるときに、例えば後述する図５に示した各ステップが結果的に実行されることになるプログラムを格納するためのメモリ５２を備える。また、これらのプログラムは、学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６の手順や方法をコンピュータに実行させるものであるともいえる。ここで、メモリ５２とは、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  ＥＰＲＯＭ）等の、不揮発性又は揮発性の半導体メモリや、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等が該当する。
【００３０】
また、図４に示す構成の場合、処理回路５６は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はこれらを組み合わせたものが該当する。学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６の各部の機能それぞれを処理回路５６で実現してもよいし、各部の機能をまとめて処理回路５６で実現してもよい。
【００３１】
なお、学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェア又はファームウェアで実現するようにしてもよい。例えば、学習データ生成部１０３については専用のハードウェアとしての処理回路５６でその機能を実現し、学習データ生成部１０３、学習データ拡張部１０４、形態素解析部１０５及びモデル学習部１０６についてはプロセッサ５１がメモリ５２に格納されたプログラムを読み出して実行することによってその機能を実現することが可能である。
【００３２】
このように、上述の各機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせによって、実現することができる。
【００３３】
また、文例データベース１０１は、記憶装置であるハードディスク５３に記憶される。また、モデル学習装置１からの出力となる意図理解モデル１０８を示すデータは、出力装置である出力インタフェース５４により出力される。また、図３，４において、符号５５はバスである。
【００３４】
なお、意図理解装置２のハードウェア構成例についても、図３，４に対し、マイク又はキーボード等の入力装置であるセンサインタフェースを追加した点以外は同様であり、その説明を省略する。
【００３５】
次に、上記のように構成されたモデル学習装置１によるモデル学習処理例について、図５を参照しながら説明する。
まず、ステップＳＴ５０１では、学習データ生成部１０３が、文例データベース１０１に格納された文例データに基づいて、意図Ｉｎに対し、正例である文例及び負例である文例を示す学習データを生成する。なお、ｎは意図に紐付けられた番号である。
【００３６】
図６に文例データの一例を示す。この図６に示すように、文例データは、意図と文例との組から成る。図６に示す文例データでは、意図が３種類存在し、各意図に対して複数の文例が示されている。ここでは、「米種設定［米種＝白米］」を意図Ｉ１、「炊き方設定［炊き方＝お急ぎ］」を意図Ｉ２、「米種設定［米種＝玄米］」を意図Ｉ３とする。
そして、学習データ生成部１０３は、まず、意図Ｉ１に対する学習データを生成する。この際、学習データ生成部１０３は、図６に示す文例データから、対象意図である意図Ｉ１に対応している文例を複製することで、意図Ｉ１に対する正例を生成する。また、学習データ生成部１０３は、図６に示す文例データから、対象外意図である意図Ｉ２，Ｉ３に対応している文例を複製することで、意図Ｉ１に対する負例を生成する。図７に意図Ｉ１に対する学習データの一例を示す。なお図７では、負例に対する意図の名称を「ＯＴＨＥＲ」としている。
【００３７】
次いで、ステップＳＴ５０２では、学習データ拡張部１０４が、学習データ生成部１０３により生成された意図Ｉｎに対する学習データに基づいて、意図Ｉｎに対する拡張学習データを生成する。即ち、学習データ拡張部１０４は、意図Ｉｎに対する学習データから負例を複製して新たな正例を生成し、当該新たな正例を当該学習データに追加することで意図Ｉｎに対する拡張学習データを生成する。
【００３８】
ここで、学習データ生成部１０３が、図７に示すような意図Ｉ１に対する学習データを生成したとする。この場合、学習データ拡張部１０４は、図７に示す学習データから、負例である文例を複製し、当該複製した文例に対する意図を「ＯＴＨＥＲ」から「米種設定［米種＝白米］」に置換して新たな正例として学習データに追加することで、拡張学習データを生成する。図８に意図Ｉ１に対する拡張学習データの一例を示す。
【００３９】
なお上記では、学習データ拡張部１０４が、単純に、負例を複製することで、新たな正例を生成する場合を示した。しかしながら、これに限らず、負例を少なくとも含む文例を新たな正例とする方式であればよい。例えば、学習データ拡張部１０４は、複製した負例と任意の正例とを“、”で結合した文例を生成し、これを新たな正例としてもよい。
【００４０】
次いで、ステップＳＴ５０３では、形態素解析部１０５が、形態素解析辞書１０７を用い、学習データ拡張部１０４により得られた意図Ｉｎに対する拡張学習データが示す文例を形態素解析し、自立語を特徴量として抽出する。
【００４１】
例えば、図８に示す文例「米種を白米に設定して」を用いた場合、形態素解析部１０５は、まず、「米種／名詞、を／助詞、白米／名詞、に／助詞、設定し／動詞、て／助詞」のように形態素解析する。続いて、形態素解析部１０５は、形態素解析した結果から自立語のみを選択し、特徴量として抽出する。上記の例では、特徴量は「米種、白米、設定する」となる。
【００４２】
次いで、ステップＳＴ５０４では、モデル学習部１０６が、最大エントロピー法を用い、形態素解析部１０５により抽出された特徴量と意図Ｉｎとの関係を学習して意図理解モデル１０８を生成する。
上記の例では、モデル学習部１０６は、特徴量「米種、白米、設定する」と図８に示す拡張学習データとから、意図Ｉ１に対する意図理解モデル（Ｉ１判定用意図理解モデルと呼ぶ）１０８を生成する。
【００４３】
次いで、ステップＳＴ５０５では、モデル作成部１０２が、全ての意図Ｉｎに対して意図理解モデル１０８を生成したかを判定する。このステップＳＴ５０５において、モデル作成部１０２が意図理解モデル１０８を生成していない意図Ｉｎがあると判定した場合には、シーケンスはステップＳＴ５０１に戻り、次の意図Ｉｎに対して上記処理を繰り返す。一方、ステップＳＴ５０５において、モデル作成部１０２が全ての意図Ｉｎに対して意図理解モデル１０８を生成したと判定した場合には、シーケンスは終了する。
【００４４】
上記の例では、モデル学習装置１はＩ１判定用意図理解モデルしか生成していないため、シーケンスはステップＳＴ５０１へ戻る。その後、モデル学習装置１は、Ｉ２判定用意図理解モデル及びＩ３判定用意図理解モデルを生成する。
【００４５】
次に、意図理解装置２による意図推定処理例について、図９を参照しながら説明する。  まず、ステップＳＴ９０１では、入力部２０１が、文字列を示す文字列データを得る。例えば、使用者が炊飯器に対する操作命令を意図する発話「炊き方はお急ぎで白米を炊く」を行ったとする。この場合、入力部２０１は、音声認識により上記音声を文字列「炊き方はお急ぎで白米で炊く」に変換することで、文字列データを得る。
【００４６】
なお、入力部２０１による音声認識は公知の技術を利用する。例えば、「デジタル音声処理」（東海大学出版会、１９８５年９月２５日発売）の８章（１４９ページ〜１９２ページ）に記載された技術を利用することで音声認識は実現可能である。
【００４７】
次いで、ステップＳＴ９０２では、形態素解析部２０２が、形態素解析辞書２０６を用い、入力部２０１により得られた文字列データが示す文字列を形態素解析し、自立語を特徴量として抽出する。
【００４８】
例えば、上記文字列が「炊き方はお急ぎで白米を炊く」である場合、形態素解析部２０２は、まず、「炊き方／名詞、は／助詞、お急ぎ／名詞、で／助詞、白米／名詞、を／助詞、炊く／動詞」のように形態素解析する。続いて、形態素解析部２０２は、形態素解析した結果から自立語のみを選択し、特徴量として抽出する。上記の例では、特徴量は「炊き方、お急ぎ、白米、炊く」となる。
【００４９】
次いで、ステップＳＴ９０３では、意図理解部２０３が、Ｉｎ判定用意図理解モデルを用い、形態素解析部２０２により得られた特徴量から、当該特徴量が意図Ｉｎに属するかを判定する。ここで、意図理解部２０３による判定結果は、意図Ｉｎと、上記特徴量が当該意図Ｉｎに属するかを示すスコアとの組から成る。図１０Ａは特徴量「炊き方、お急ぎ、白米、炊く」に対し、Ｉ１判定用意図理解モデルを用いた場合での判定結果を示している。
【００５０】
ここで、Ｉ１判定用意図理解モデルは図８に記載の学習データから生成される。よって、特徴量「お急ぎ」及び「炊き方」が正例と負例の両者に含まれるため、判定に大きな影響を与えず、特徴量「白米」が正例にのみ含まれるため、図１０Ａに示すように米種設定［米種＝白米］のスコアが「ＯＴＨＥＲ」より高い結果を得ることが可能となる。
一方、従来の学習データである図７に記載の学習データでは、特徴量「お急ぎ」及び「炊き方」が負例にのみ含まれ、特徴量「白米」が正例にのみ含まれる。そのため、「ＯＴＨＥＲ」のスコアが米種設定［米種＝白米］より高くなり、正しく意図理解できなくなる。
【００５１】
次いで、ステップＳＴ９０４では、意図理解部２０３が、全てのＩｎ判定用意図理解モデルに対する判定結果を得たかを判定する。このステップＳＴ９０４において、意図理解部２０３が判定結果を得ていないＩｎ判定用意図理解モデルがあると判定した場合には、シーケンスはステップＳＴ９０３へ戻り、次のＩｎ判定用意図理解モデルを用いて上記処理を繰り返す。一方、ステップＳＴ９０４において、意図理解部２０３が全てのＩｎ判定用意図理解モデルに対して判定結果を得たと判定した場合には、シーケンスはステップＳＴ９０５へ移行する。
【００５２】
上記の例では、意図理解部２０３はＩ１判定用意図理解モデルに対する判定結果しか得ていないため、シーケンスはステップＳＴ９０３へ戻る。その後、意図理解部２０３は、Ｉ２判定用意図理解モデル及びＩ３判定用意図理解モデルに対する意図理解結果を得る。図１０Ｂは、特徴量「炊き方、お急ぎ、白米、炊く」に対し、Ｉ２判定用意図理解モデルを用いた場合での判定結果を示している。また、図１０Ｃは、特徴量「炊き方、お急ぎ、白米、炊く」に対し、Ｉ３判定用意図理解モデルを用いた場合での判定結果を示している。
【００５３】
次いで、ステップＳＴ９０５では、結果統合部２０４が、意図理解部２０３により得られた意図理解モデル１０８毎の判定結果を統合する。図１１に、図１０に示す複数の判定結果を統合した結果を示す。図１１に示す統合結果では、意図がリスト表示されている。ステップＳＴ９０５における結果統合部２０４による結果統合処理の詳細については後述する。
【００５４】
次いで、ステップＳＴ９０６では、出力部２０５が、結果統合部２０４により得られた統合結果に含まれる意図を１対１に対応する操作命令に変換し、操作命令を炊飯器へ出力する。
例えば、結果統合部２０４が図１１に示す統合結果を得た場合、出力部２０５は、操作命令として、「米種を白米に設定する命令」及び「炊き方をお急ぎに設定する命令」を示すデータを炊飯器へ出力する。
【００５５】
次に、ステップＳＴ９０５における結果統合部２０４による結果統合処理例について、図１２を参照しながら説明する。
まず、ステップＳＴ１２０１では、結果統合部２０４が、Ｉｎ判定用意図理解モデルに対する判定結果からスコアが最も高い意図を選択する。
例えば、Ｉ１判定用意図理解モデルに対する判定結果が図１０Ａである場合、「米種設定［米種＝白米］」に対するスコアの方が「ＯＴＨＥＲ」に対するスコアよりも高いため、「米種設定［米種＝白米］」を選択する。
【００５６】
次いで、ステップＳＴ１２０２では、結果統合部２０４が、選択した意図が「ＯＴＨＥＲ」であるかを判定する。このステップＳＴ１２０１において結果統合部２０４が選択した意図が「ＯＴＨＥＲ」ではないと判定した場合には、シーケンスはステップＳＴ１２０３へ移行する。一方、ステップＳＴ１２０１において結果統合部２０４が選択した意図が「ＯＴＨＥＲ」であると判定した場合には、シーケンスはステップＳＴ１２０４へ移行してステップＳＴ１２０３における処理はスキップされる。
【００５７】
上記の例では、選択した意図「米種設定［米種＝白米］」が「ＯＴＨＥＲ」ではないため、シーケンスはステップＳＴ１２０３へ移行する。
【００５８】
次いで、ステップＳＴ１２０３では、結果統合部２０４が、選択した意図を統合結果に加える。上記の例では、「米種設定［米種＝白米］」を統合結果に加える。
【００５９】
次いで、ステップＳＴ１２０４では、結果統合部２０４が、全ての判定結果に対して処理を行ったかを判定する。このステップＳＴ１２０４において、結果統合部２０４が処理を行っていない判定結果があると判定した場合には、シーケンスはステップＳＴ１２０１へ戻り、次の判定結果に対して上記処理を繰り返す。一方、ステップＳＴ１２０４において、結果統合部２０４が全ての判定結果に対して処理を行ったと判定した場合には、シーケンスは終了する。
【００６０】
上記の例では、結果統合部２０４はＩ１判定用意図理解モデルに対する判定結果に対してしか処理を行っていないため、シーケンスはステップＳＴ１２０１に戻る。その後、結果統合部２０４は、Ｉ２判定用意図理解モデル及びＩ３判定用意図理解モデルに対する判定結果に対して上記処理を行う。
ここで、図１０Ｂに示すＩ２判定用意図理解モデルに対する判定結果に対して上記処理を行うと、ステップＳＴ１２０１において「炊き方設定［炊き方＝お急ぎ］」を選択し、ステップＳＴ１２０３において「炊き方設定［炊き方＝お急ぎ］」を統合結果に加えることになる。
一方、図１０Ｃに示すＩ２判定用意図理解モデルに対する判定結果に対して上記処理を行うと、ステップＳＴ１２０１において「ＯＴＨＥＲ」を選択することになるため、「米種設定［米種＝玄米］」は統合結果には加えられない。
【００６１】
なお上記では、結果統合部２０４が、スコアが最も高い意図を選択し、当該意図が「ＯＴＨＥＲ」ではない場合に統合結果に加える場合を示したが、これに限らない。例えば、結果統合部２０４は、閾値を設定し、最も高いスコアが当該閾値より高い場合に統合結果に加えるようにしてもよい。
【００６２】
以上のように、この実施の形態１によれば、意図毎に、正例である文例及び負例である文例を示す学習データから当該負例を複製して新たな正例を生成し、当該新たな正例を当該学習データに追加することで拡張学習データを生成する学習データ拡張部１０４と、意図毎に、学習データ拡張部１０４により生成された拡張学習データが示す文例を形態素解析して、特徴量を抽出する形態素解析部１０５と、意図毎に、形態素解析部１０５により抽出された特徴量と意図との関係を学習して意図理解モデル１０８を生成するモデル学習部１０６とを備えたので、正例である文例及び負例である文例を示す学習データを用い、１つの文字列に複数の意図が含まれる場合でも意図を推定可能とする意図理解モデル１０８が得られる。
即ち、負例を用いて正例を拡張して意図理解モデル１０８を生成することで、意図理解モデル１０８を用いて意図を理解する際において、１つの文字列に対象意図と対象外意図が含まれる場合でも、対象外意図のスコアが高くなる特徴量によって、対象意図のスコアも高くすることができる。その結果、対象外意図のスコアが対象意図のスコアより高くなることを抑制でき、高い精度で対象意図であると推定できる。
【００６３】
なお上記では、モデル学習装置が、１つの意図に対して１つ意図理解モデル１０８を生成する場合を説明したが、これに限らない。モデル学習装置は、例えば２つの意図に対して１つの意図理解モデル１０８を生成し、上記２つの意図に対する文例を正例、それ以外の意図に対する文例を負例としてもよく、同様の効果が期待できる。同様に、モデル学習装置は３つ以上の意図に対して１つの意図理解モデル１０８を生成してもよい。
【００６４】
また上記では、入力部２０１が音声の入力を受付けて音声認識により文字列に変換することで文字列データを得る場合を主に示した。しかしながら、これに限らず、入力部２０１は文字列の入力を受付けて文字列データを得てもよく、同様の効果が期待できる。
【００６５】
また上記では、意図理解装置２が操作命令を出力する対象を炊飯器とした場合を示した。しかしながら、これに限らず、上記対象としては、自然言語による操作命令を受付ける装置であればよい。
【００６６】
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【００６７】
この発明に係るモデル学習装置は、正例である文例及び負例である文例を示す学習データを用い、１つの文字列に複数の意図が含まれる場合でも意図を推定可能とするモデルが得られ、意図と文例との関係を学習してモデルを生成するモデル学習装置等に用いるのに適している。
【符号の説明】
【００６８】
１  モデル学習装置、２  意図理解装置、５１  プロセッサ、５２  メモリ、５３  ハードディスク、５４  出力インタフェース、５５  バス、５６  処理回路、１０１  文例データベース、１０２  モデル作成部、１０３  学習データ生成部、１０４  学習データ拡張部、１０５  形態素解析部、１０６  モデル学習部、１０７  形態素解析辞書、１０８  意図理解モデル、２０１  入力部、２０２  形態素解析部、２０３  意図理解部、２０４  結果統合部、２０５  出力部、２０６  形態素解析辞書。
【図１】
0006556381.tif 000002
【図２】
0006556381.tif 000003
【図３】
0006556381.tif 000004
【図４】
0006556381.tif 000005
【図５】
0006556381.tif 000006
【図６】
0006556381.tif 000007
【図７】
0006556381.tif 000008
【図８】
0006556381.tif 000009
【図９】
0006556381.tif 000010
【図１０】
0006556381.tif 000011
【図１１】
0006556381.tif 000012
【図１２】
0006556381.tif 000013