(57)【特許請求の範囲】
【請求項１】
ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補を記憶するクエリ候補記憶手段と、
前記領域知識が付与された場合に当該領域知識が付与された前記クエリを利用して推定される判別モデルの不確実性が小さくなるクエリを、前記クエリ候補の中から抽出する最適クエリ抽出手段とを備えた
ことを特徴とする最適クエリ生成装置。
【請求項２】
最適クエリ抽出手段によって抽出されたクエリに付与される領域知識に基づいて、当該領域知識に対する適合性を示す関数である正則化関数を生成する正則化関数生成手段と、
判別モデルごとに予め定められた損失関数および前記正則化関数を用いて定義される関数を最適化することにより判別モデルを学習するモデル学習手段とを備えた
請求項１記載の最適クエリ生成装置。
【請求項３】
ユーザに付与させる領域知識を軽減させたクエリ候補、または、複数のクエリの中から判別精度が有意に低いクエリを削除したクエリ候補を生成するクエリ候補生成手段を備え、
最適クエリ抽出手段は、前記クエリ候補の中から判別モデルの不確実性が小さくなるクエリを抽出する
請求項１記載の最適クエリ生成装置。
【請求項４】
最適クエリ抽出手段によって抽出されたクエリに付与される領域知識に基づいて、当該領域知識を表す関数であるモデルプリファレンスを学習するモデルプリファレンス学習手段を備え、
正則化関数生成手段は、前記モデルプリファレンスを利用して正則化関数を生成する
請求項２記載の最適クエリ生成装置。
【請求項５】
ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補の中から、前記領域知識が付与された場合に当該領域知識が付与された前記クエリを利用して推定される判別モデルの不確実性が小さくなるクエリを抽出する
ことを特徴とする最適クエリ抽出方法。
【請求項６】
請求項５記載の最適クエリ抽出方法によって抽出されたクエリに付与される領域知識に基づいて、当該領域知識に対する適合性を示す関数である正則化関数を生成し、
判別モデルごとに予め定められた損失関数および前記正則化関数を用いて定義される関数を最適化することにより判別モデルを学習する
ことを特徴とする判別モデル学習方法。
【請求項７】
コンピュータに、
ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補の中から、前記領域知識が付与された場合に当該領域知識が付与された前記クエリを利用して推定される判別モデルの不確実性が小さくなるクエリを抽出する最適クエリ抽出処理
を実行させるための最適クエリ抽出プログラム。
【請求項８】
請求項７記載の最適クエリ抽出プログラムを実行させるコンピュータに適用される判別モデル学習プログラムであって、
前記コンピュータに、
最適クエリ抽出手段によって抽出されたクエリに付与される領域知識に基づいて、当該領域知識に対する適合性を示す関数である正則化関数を生成する正則化関数生成処理、および、
判別モデルごとに予め定められた損失関数および前記正則化関数を用いて定義される関数を最適化することにより判別モデルを学習するモデル学習処理
を実行させるための判別モデル学習プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリを最適に生成する最適クエリ生成装置、最適クエリ抽出方法、最適クエリ抽出プログラムおよびこれらを利用した判別モデル学習方法および判別モデル学習プログラムに関する。
【背景技術】
【０００２】
近年の急速なデータインフラの整備によって、大規模かつ大量なデータを効率的に処理することが、産業の重要課題の１つになっている。特に、データがどのカテゴリに属するか判別する技術は、データマイニング、パターン認識など、多くの応用分野における中心技術の一つである。【０００３】
データを判別する技術を利用する一例として、未分類のデータに関する予測を行うことが挙げられる。例えば、自動車の故障診断を行う場合には、自動車から取得されるセンサデータと過去の故障事例とを学習することにより、故障を判別するためのルールが生成される。そして、新たに不具合が発生した自動車のセンサデータ（すなわち、未分類のデータ）に生成されたルールを適用することで、その自動車に発生している故障を特定する、あるいはその要因を絞り込む（予測する）ことができる。【０００４】
また、データを判別する技術は、あるカテゴリと別のカテゴリの間の差や因子を分析するためにも利用される。例えば、ある疾病と生活習慣との関係を調べたい場合には、被調査対象の集団をある疾病を持つ群と持たない群に分類し、その二つの群を判別するためのルールを学習すればよい。例えば、このように学習されたルールが、「対象者が肥満かつ喫煙している場合には、ある疾病の確率が高い」であるとする。この場合、「肥満」と「喫煙」の両方の条件を満たすことが、その疾病の重要な因子であることが疑われることになる。【０００５】
このようにデータを判別する問題では、データを分類するためのルールを表す判別モデルを、対象とするデータからいかにして学習するかが最も重要な課題になる。そのため、過去事例やシミュレーションデータなどに基づいてカテゴリ情報が付与されたデータから判別モデルを学習する方法が数多く提案されている。この方法は、判別ラベルを利用する学習方法であり、「教師有学習（ｓｕｐｅｒｖｉｓｅｄ  ｌｅａｒｎｉｎｇ）」と呼ばれている。以下、カテゴリ情報のことを判別ラベルと記すこともある。非特許文献１には、教師有学習の例として、ロジスティック回帰、サポートベクトルマシン、決定木などが記載されている。【０００６】
また、非特許文献２には、判別ラベルの分布を仮定し、判別ラベルがついていないデータを活用する半教師学習という方法が記載されている。また、非特許文献２には、半教師学習の例として、ラプラシアンサポートベクトルマシンが記載されている。【０００７】
非特許文献３には、データの性質の変化を考慮して判別学習を行うための共変量シフト（ｃｏｖａｒｉａｔｅ  ｓｈｉｒｔ）やドメイン適応（ｄｏｍａｉｎ  ａｄａｐｔａｔｉｏｎ）と呼ばれる技術が記載されている。【０００８】
なお、非特許文献４には、判別モデルを学習するために必要なデータがモデルの推定に与える不確実性について記載されている。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】Christopher Bishop, “Pattern Recognition and Machine Learning”, Springer, 2006
【非特許文献２】Mikhail Belkin, Partha Niyogi, Vikas Sindhwani, “Manifold Regularization : A Geometric Framework for Learning from Labeled and Unlabeled Examples”, Journal of Machine Learning Research (2006), Volume7, Issue48, p.2399-2434
【非特許文献３】Hidetoshi Shimodaira, “Improving predictive inference under covariate shift by weighting the log-likelihood function”, Journal of Statistical Planning and Inference, 90 (2), p.227-244, October 2000
【非特許文献４】Burr Settles, “Active Learning Literature Survey”, Computer Sciences Technical Report 1648, University of Wisconsin-Madison, 2010
【発明の概要】
【発明が解決しようとする課題】
【００１０】
教師有学習に基づく判別学習には、以下の問題点が存在する。【００１１】
第一の問題点は、判別ラベルが付与されたデータ数が少ない場合、学習されるモデルの性能が著しく劣化することである。この問題点は、モデルパラメータの探索空間の広さに対してデータ数が少ないことが原因で、パラメータをうまく最適化することができないために生じる。【００１２】
また、教師有学習に基づく判別学習では対象とするデータからの判別誤差を最も小さくするように判別モデルが最適化される。例えば、ロジスティック回帰では対数尤度関数が用いられ、サポートベクトルマシンではヒンジ損失関数が用いられ、決定木では情報利得関数が用いられる。しかし、第二の問題点は、学習されるモデルが利用者の知識とは必ずしも合致しないことである。この判別学習を自動車の故障判別に応用した場合を例に挙げて、第二の問題点を説明する。【００１３】
図１２は、判別モデルを学習する方法の例を示す説明図である。この例では、エンジンが異常に発熱した結果、エンジンに故障が発生し、回転に異常な高周波成分が発生するという状況を想定する。図１２に丸印で示すデータは故障を示すデータであり、バツ印で示すデータは正常であることを示すデータである。【００１４】
また、図１２に示す例では、２種類の判別モデルを想定する。１つは、図１２に例示する点線９１で分類するように、故障の要因であるエンジン温度に基づいて判別するモデル（判別モデル１）であり、もう一つは、図１２に例示する点線９２で分類するように、現象として現れるエンジン回転の周波数に基づいて判別するモデル（判別モデル２）である。【００１５】
エンジンが故障しているか否かに基づいて最適化を行うという観点では、図１２に例示する判別モデル１と判別モデル２では、判別モデル２が選択される。これは、判別モデル２を選択すれば、データ９３を含め、正常と故障のデータ群を完全に分離できるからである。一方で、故障判別を実際に応用する場合には、現象に着目したモデルである判別モデル２よりも、ほぼ同程度の精度で判別可能な、要因に着目したモデルである判別モデル１の方が好ましい。【００１６】
第三の問題点は、データを用いて自動的に最適化されるモデルは、データに存在しない現象を捉えることが原理的にできないことである。【００１７】
以下、具体例を挙げて第三の問題点を説明する。ここでは、特定健康診断の検査データから肥満のリスク（今後肥満になるかどうか）を予測する場合を想定する。特定健康診断は、日本において現在４０歳以上に義務付けられているため、詳細な検査データが採取されている。そのため、これらの検査データを用いて判別モデルを学習することが可能である。【００１８】
一方で、若年（例えば２０歳代）の肥満リスクを防止するためにこの判別モデルを活用することも考えられる。しかし、この場合、２０歳代のデータと４０歳以上のデータとでは、データの性質が異なる。そのため、４０歳代の特徴を捉えた判別モデルを２０歳代の場合へ適用しても、判別結果の信頼性が低くなってしまう。【００１９】
第一の問題点を解決するために、非特許文献２に記載された半教師学習によりモデルを学習することが考えられる。半教師学習は、判別ラベルの分布に対する仮定が正しい場合、第一の問題点に対して効果があることが知られているからである。しかし、半教師学習を利用したとしても、第二の問題点を解決することはできない。【００２０】
また、一般的なデータ分析の現場では、第二の問題点を解決するために、事前にカテゴリと関係がある属性を抽出する属性抽出（ｆｅａｔｕｒｅ  ｅｘｔｒａｃｔｉｏｎ）や属性選択（ｆｅａｔｕｒｅ  ｓｅｌｅｃｔｉｏｎ）が実施される。しかし、データの属性の数が多い場合には、この処理には大きなコストを要するという別の問題が発生する。さらに、属性は、領域の知識に基づいて抽出される。しかし、抽出される属性がデータと合致していない場合、大きな判別精度の低下を引きおこすという問題もある。【００２１】
また、非特許文献１に記載されているように、機械による自動属性選択方法も数多く提案されている。自動属性選択の最も代表的な方法は、Ｌ１正則化サポートベクトルマシンやＬ１正則化ロジスティック回帰など、判別学習そのものである。しかし、機械による自動属性選択方法では、ある基準を最適化する属性を選択することになるため、やはり、第２の問題点を解決することはできない。【００２２】
また、非特許文献３に記載された方法は、二つのデータ群に含まれるデータ（上述の例では、２０歳代のデータと、４０歳以上のデータ）が十分に取得されていること、および、二つのデータ群の分布の違いが比較的小さいことが前提とされる。特に、前者の制約があるため、非特許文献３に記載された方法を利用して学習されるモデルの用途が、十分に集まった両群のデータを事後的に分析するという用途に限定されてしまう。【００２３】
そこで、本発明は、ユーザのモデルに対する知識や分析の意図を示す領域知識を反映させた判別モデルを生成する場合に、その領域知識を付与すべき最適なクエリを生成できる最適クエリ生成装置、最適クエリ抽出方法、最適クエリ抽出プログラムおよびこれらを利用した判別モデル学習方法および判別モデル学習プログラムを提供することを目的とする。  
【課題を解決するための手段】
【００２４】
本発明による最適クエリ生成装置は、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補を記憶するクエリ候補記憶手段と、領域知識が付与された場合にその領域知識が付与されたクエリを利用して推定される判別モデルの不確実性が小さくなるクエリを、クエリ候補の中から抽出する最適クエリ抽出手段とを備えたことを特徴とする。【００２５】
本発明による最適クエリ抽出方法は、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補の中から、領域知識が付与された場合にその領域知識が付与されたクエリを利用して推定される判別モデルの不確実性が小さくなるクエリを抽出することを特徴とする。【００２６】
本発明による判別モデル学習方法は、最適クエリ抽出方法によって抽出されたクエリに付与される領域知識に基づいて、その領域知識に対する適合性を示す関数である正則化関数を生成し、判別モデルごとに予め定められた損失関数および正則化関数を用いて定義される関数を最適化することにより判別モデルを学習することを特徴とする【００２７】
本発明による最適クエリ抽出プログラムは、コンピュータに、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補の中から、領域知識が付与された場合にその領域知識が付与されたクエリを利用して推定される判別モデルの不確実性が小さくなるクエリを抽出する最適クエリ抽出処理を実行させることを特徴とする。【００２８】
本発明による判別モデル学習プログラムは、最適クエリ抽出プログラムを実行させるコンピュータに適用される判別モデル学習プログラムであって、コンピュータに、最適クエリ抽出手段によって抽出されたクエリに付与される領域知識に基づいて、その領域知識に対する適合性を示す関数である正則化関数を生成する正則化関数生成処理、および、判別モデルごとに予め定められた損失関数および正則化関数を用いて定義される関数を最適化することにより判別モデルを学習するモデル学習処理を実行させることを特徴とする。
【発明の効果】
【００２９】
本発明によれば、ユーザのモデルに対する知識や分析の意図を示す領域知識を反映させた判別モデルを生成する場合に、その領域知識を付与すべき最適なクエリを生成できる。
【図面の簡単な説明】
【００３０】
【図１】本発明による判別モデル学習装置の第１の実施形態の構成例を示すブロック図である。
【図２】第１の実施形態の判別モデル学習装置の動作例を示すフローチャートである。
【図３】本発明による判別モデル学習装置の第２の実施形態の構成例を示すブロック図である。
【図４】第２の実施形態の判別モデル学習装置の動作例を示すフローチャートである。
【図５】本発明による判別モデル学習装置の第３の実施形態の構成例を示すブロック図である。
【図６】第３の実施形態の判別モデル学習装置の動作例を示すフローチャートである。
【図７】本発明による判別モデル学習装置の第４の実施形態の構成例を示すブロック図である。
【図８】最適クエリ生成装置の構成例を示すブロック図である。
【図９】第４の実施形態の判別モデル学習装置の動作例を示すフローチャートである。
【図１０】最適クエリ生成装置の動作例を示すフローチャートである。
【図１１】本発明による最適クエリ生成装置の概要を示すブロック図である。
【図１２】判別モデルを学習する方法の例を示す説明図である。
【発明を実施するための形態】
【００３１】
以下の説明では、１つのデータをＤ次元のベクトルデータとして扱う。また、テキストや画像など、一般にはベクトル形式でないデータもベクトルデータとして扱う。この場合、例えば、文中の単語の有無を表すベクトル（ｂｕｇ  ｏｆ  ｗｏｒｄｓモデル）や、画像中の特徴素の有無を表すベクトル（ｂｕｇ  ｏｆ  ｆｅａｔｕｒｅｓ  ｍｏｄｅｌ）へ変換することで、一般にはベクトル形式でないデータもベクトルデータとして扱うことが可能になる。
【００３２】
また、ｎ番目の学習データをｘｎと表わし、ｎ番目の学習データｘｎの判別ラベルをｙｎと表わす。また、データ数がＮの場合のデータをｘＮ（＝ｘ１，…，ｘＮ）と表わし、データ数がＮの場合の判別ラベルをｙＮ（＝ｙ１，…，ｙＮ）と表わす。
【００３３】
まず初めに、判別学習の基本的な原理を説明する。判別学習とは、判別の誤差を小さくするためのある関数（損失関数と呼ばれる）に対して判別モデルを最適化することである。すなわち、判別モデルをｆ（ｘ）とし、最適化されたモデルをｆ＊（ｘ）とすると、学習問題は、損失関数Ｌ（ｘＮ，ｙＮ，ｆ）を用いて、以下に示す式１で表わされる。
【００３４】
【数１】
0006052187.tif 000002
【００３５】
なお、式１は制約無最適化問題の形式で表わされているが、何らかの制約条件をつけて最適化をすることも可能である。例えば、Ｌ１正則化ロジスティック回帰モデルの場合には、属性に対する重みベクトルｗに対して、ｆ（ｘ）＝ｗＴｘと定義すると、上記の式１は、具体的には、以下に示す式２で表わされる。
【００３６】
【数２】
0006052187.tif 000003
【００３７】
式２において、Ｔは、ベクトルや行列の転置を表している。損失関数Ｌ（ｘＮ，ｙＮ，ｆ）は、ｆ（ｘ）をｙの予測値や確率として利用した場合のフィッティングのよさと、ｆ（ｘ）の複雑さを表わす罰則項とを含む。このような罰則項を追加することは、正則化と呼ばれている。正則化は、モデルがデータに過適合することを防止するために行われる。なお、モデルがデータに過適合することは、過学習とも呼ばれる。式２において、λは、正則化の強さを表すパラメータである。
【００３８】
以下、教師有学習の場合を例に挙げて説明する。なお、判別ラベルが付与されていないデータが得られている場合、判別ラベルが付与されているデータと判別ラベルが付与されていないデータの両者から算出される損失関数を採用すればよい。両者から算出される損失関数を採用することで、以下に説明する方法を、半教師有学習へ適用することが可能である。
【００３９】
［第１の実施形態］
図１は、本発明による判別モデル学習装置の第１の実施形態の構成例を示すブロック図である。本実施形態の判別モデル学習装置１００は、データ入力装置１０１と、入力データ記憶部１０２と、モデル学習装置１０３と、クエリ候補記憶部１０４と、領域知識入力装置１０５と、領域知識記憶部１０６と、知識正則化生成処理部１０７と、モデル出力装置１０８とを備えている。判別モデル学習装置１００には、入力データ１０９及び領域知識１１０が入力され、判別モデル１１１が出力される。
【００４０】
データ入力装置１０１は、入力データ１０９の入力に用いられる装置である。データ入力装置１０１は、入力データ１０９を入力する際、分析に必要なパラメータも併せて入力する。なお、入力データ１０９には、上述の判別ラベルが付与された学習データｘＮ，ｙＮに加え、分析に必要なパラメータなどが含まれる。ここで、判別ラベルが付与されていないデータが半教師学習などで利用される場合、そのデータも併せて入力される。
【００４１】
入力データ記憶部１０２は、データ入力装置１０１が入力した入力データ１０９を記憶する。
【００４２】
モデル学習装置１０３は、事前に設定されている（または、パラメータとして事前に指定される）損失関数Ｌ（ｘＮ，ｙＮ，ｆ）に、後述する知識正則化生成処理部１０７で算出される正則化関数を加えた関数の最適化問題を解くことで、判別モデルを学習する。具体的な算出例に関しては、後述する知識正則化生成処理部１０７の説明において具体例とともに説明する。
【００４３】
クエリ候補記憶部１０４は、領域知識を事前に付与すべき候補になるモデルを複数記憶する。例えば、判別モデルとして線形関数ｆ（ｘ）＝ｗＴｘが利用される場合、クエリ候補記憶部１０４は、異なる値を含むｗの候補値を記憶する。以下の説明では、領域知識を付与すべき候補になるモデルのことをクエリと記すこともある。このクエリには、モデル学習装置１０３が学習した判別モデル自身が含まれていてもよい。
【００４４】
領域知識入力装置１０５は、クエリ候補に対する領域知識を入力するためのインタフェースを備えた装置である。領域知識入力装置１０５は、クエリ候補記憶部１０４に記憶されているクエリ候補から任意の方法によってクエリを選択し、選択したクエリ候補を出力（表示）する。以下、クエリ候補に対して付与する領域知識の例を説明する。
【００４５】
［第１の領域知識例］
第１の領域知識例は、モデルの候補が最終的な判別モデルとして好ましいかどうか示すものである。具体的には、領域知識入力装置１０５がモデル候補を出力すると、例えば、ユーザ等により、そのモデルが最終的な判別モデルとして好ましいかどうかが領域知識として領域知識入力装置１０５に入力される。例えば、判別モデルが線形関数の場合、領域知識入力装置１０５が線形関数の重みベクトルの候補値ｗ’を出力すると、そのモデルが合致するかしないか、または、どの程度合致しているかが入力される。
【００４６】
［第２の領域知識例］
第２の領域知識例は、複数のモデルの候補のうち、どのモデルがより好ましいかを示すものである。具体的には、領域知識入力装置１０５が複数のモデル候補を出力すると、例えば、ユーザ等により、それらのモデルを比較した場合に、最終的な判別モデルとしてどのモデルがより好ましいかが領域知識として入力される。例えば、判別モデルが決定木の場合、領域知識入力装置１０５が２つの決定木モデルｆ１（ｘ），ｆ２（ｘ）を出力すると、ユーザ等により、ｆ１（ｘ）とｆ２（ｘ）のうちどちらが判別モデルとして好ましいかが入力される。なお、ここでは、２つのモデルを比較する場合を例に説明したが、複数のモデルを同時に比較するようにしてもよい。
【００４７】
領域知識記憶部１０６は、領域知識入力装置１０５に入力された領域知識を記憶する。
【００４８】
知識正則化生成処理部１０７は、領域知識記憶部１０６に記憶されている領域知識を読み込み、モデル学習装置１０３がモデルの最適化に必要な正則化関数を生成する。すなわち、知識正則化生成処理部１０７は、クエリに付与された領域知識に基づいて正則化関数を生成する。ここで生成される正則化関数は、領域知識に対するフィッティングや制約を表現する関数であり、データに対するフィッティングを表わす教師有学習（または、半教師有学習）で用いられるような一般的な損失関数とは異なる。すなわち、知識正則化生成処理部１０７が生成する正則化関数は、領域知識に対する適合性を示す関数であるということもできる。
【００４９】
以下、モデル学習装置１０３および知識正則化生成処理部１０７の動作をさらに説明する。モデル学習装置１０３は、知識正則化生成処理部１０７で生成される正則化関数と、データへのフィッティング（適合性）を表す教師有学習（または、半教師有学習）に用いられる損失関数の両者を同時に最適化するように判別モデルを最適化する。これは、例えば、以下に示す式３で表される最適化問題を解くことで実現される。
【００５０】
【数３】
0006052187.tif 000004
【００５１】
式３において、Ｌ（ｘＮ，ｙＮ，ｆ）は、上記の式１で説明した、一般的な教師有学習（または、半教師有学習）で用いられる損失関数である。また、式３において、ＫＲは、知識正則化生成処理部１０７が生成する正則化関数及び制約条件である。このように判別モデルを最適化することで、データへのフィッティングを保ちつつ、領域知識を反映したモデルを効率的に学習することが可能になる。
【００５２】
なお、以下の説明では、上記の式３に示すように、損失関数Ｌ（ｘＮ，ｙＮ，ｆ）と正則化関数ＫＲの和で表わされる最適化問題を解く場合について説明する。ただし、最適化問題の対象が、両者の積で定義されていてもよく、両者の関数として定義されていてもよい。これらの場合も、同様に最適化することが可能である。なお、最適化関数の態様は、学習する判別モデルに応じて予め定められる。
【００５３】
以下、正則化関数ＫＲの具体的な例を説明する。なお、本発明の本質は、領域知識のフィッティングや制約を、データのフィッティングと同時に最適化することである。以下に示す最適化関数ＫＲは、この性質を満たす関数の一例であり、本性質を満たす他の関数を定義することも容易に可能である。
【００５４】
［第１の知識正則化例］
第１の領域知識例で説明した例のように、領域知識がモデルとその良さ（好ましさ）を示す情報として入力されている場合を想定する。ここで、領域知識記憶部１０６に記憶されている、モデルとその良さのペアを、それぞれ（ｆ１，ｚ１），（ｆ２，ｚ２），…，（ｆＭ，ｚＭ）と表記する。また、この例では、ｆが好ましいモデルと類似しているほど、または、ｆが好ましくないモデルと類似していないほど値の小さくする関数として正則化関数ＫＲが定義されるものとする。
【００５５】
このような正則化関数を用いると、上記に示す式３において、損失関数Ｌ（ｘＮ，ｙＮ，ｆ）の値が同程度であれば、領域知識によりフィットしているモデルが、より良いモデルになることがわかる。
【００５６】
ここで、判別モデルとして線形関数が利用され、モデルが好ましいか否かが二値（ｚｍ＝±１）で領域知識が与えられている場合には、例えばＫＲを以下に示す式４のように定義することが可能である。
【００５７】
【数４】
0006052187.tif 000005
【００５８】
式４に示す例では、モデル間の類似性を二乗距離で定義し、さらにその類似性を二乗距離の係数ｚｍで定義した。なお、モデルの好ましさを示す値ｚｍが二値でない場合でも、モデル間の類似性を表す関数とｚｍから決まる係数とを定義することで、一般の判別モデルにおいても同様に正則化関数ＫＲを定義することが可能である。
【００５９】
［第２の知識正則化例］
第２の領域知識例で説明した例のように、領域知識が複数のモデルを比較したことを示す情報として入力されている場合を想定する。この例では、モデルｆ１＝ｗ１Ｔｘおよびモデルｆ２＝ｗ２Ｔｘに対して、モデルｆ１の方がモデルｆ２よりも好ましいことを示す領域知識が入力されているとする。この場合、例えばＫＲを以下に示す式５のように定義することが可能である。
【００６０】
【数５】
0006052187.tif 000006
【００６１】
式５を利用すると、モデルｆ１の損失関数Ｌ（ｘＮ，ｙＮ，ｆ１）の値と、モデルｆ２の損失関数Ｌ（ｘＮ，ｙＮ，ｆ２）の値が同程度あれば、正則化関数の値が小さくなるｆ１の方がより好ましいモデルとして正しく最適化されることがわかる。
【００６２】
モデル出力装置１０８は、モデル学習装置１０３が学習した判別モデル１１１を出力する。
【００６３】
モデル学習装置１０３と、知識正則化生成処理部１０７とは、プログラム（判別モデル学習プログラム）に従って動作するコンピュータのＣＰＵによって実現される。例えば、プログラムは、判別モデル学習装置１００の記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、モデル学習装置１０３および知識正則化生成処理部１０７として動作してもよい。また、モデル学習装置１０３と、知識正則化生成処理部１０７とは、それぞれが専用のハードウェアで実現されていてもよい。
【００６４】
入力データ記憶部１０２と、クエリ候補記憶部１０４と、領域知識記憶部１０６は、例えば、磁気ディスク等により実現される。また、データ入力装置１０１は、キーボードや、他の装置（図示せず）から送信されるデータを受信するインタフェースにより実現される。また、モデル出力装置１０８は、判別モデルを記憶する記憶部（図示せず）にデータを記憶させるＣＰＵや、判別モデルの学習結果を表示するディスプレイ装置などにより実現される。
【００６５】
次に、第１の実施形態の判別モデル学習装置１００の動作を説明する。図２は、本実施形態の判別モデル学習装置１００の動作例を示すフローチャートである。まず、データ入力装置１０１は、入力された入力データ１０９を入力データ記憶部１０２に記憶する（ステップＳ１００）。
【００６６】
知識正則化生成処理部１０７は、領域知識記憶部１０６に領域知識が記憶されているか否かを確認する（ステップＳ１０１）。領域知識記憶部１０６に領域知識が記憶されている場合（ステップＳ１０１におけるＹｅｓ）、知識正則化生成処理部１０７は、正則化関数を算出する（ステップＳ１０２）。一方、領域知識が記憶されていない場合（ステップＳ１０１におけるＮｏ）、または、正則化関数が算出された後、ステップＳ１０３以降の処理が行われる。
【００６７】
次に、モデル学習装置１０３は、判別モデルを学習する（ステップＳ１０３）。具体的には、ステップＳ１０２において正則化関数が算出された場合、モデル学習装置１０３は、算出された正則化関数を利用して判別モデルを学習する。一方、ステップＳ１０１において、領域知識記憶部１０６に領域知識が記憶されていないと判断された場合、モデル学習装置１０３は、正則化関数を用いることなく通常の判別モデルを学習する。そして、モデル学習装置１０３は、学習した判別モデルをクエリ候補としてクエリ候補記憶部１０４に記憶する（ステップＳ１０４）。
【００６８】
次に、領域知識を入力するか否かの判断が行われる（ステップＳ１０５）。この判断処理は、例えば、ユーザ等による指示があったか否かに基づいて行われてもよく、新たなクエリ候補がクエリ候補記憶部１０４に記憶されたことを条件に行われてもよい。ただし、領域知識を入力するか否かの判断は、上記内容に限定されない。
【００６９】
ステップＳ１０５において、領域知識を入力すると判断された場合（ステップＳ１０５におけるＹｅｓ）、領域知識入力装置１０５は、クエリ候補記憶部１０４から領域知識を付加すべきクエリの候補を表す情報を読み取って出力する。領域知識入力装置１０５は、例えば、ユーザ等により領域知識１１０が入力されると、入力された領域知識を領域知識記憶部１０６に記憶する（ステップＳ１０６）。領域知識が入力されると、正則化関数を算出し、領域知識が入力されるまでのステップＳ１０２からステップＳ１０６の処理が繰り返される。
【００７０】
一方、ステップＳ１０５において、領域知識を入力しないと判断された場合（ステップＳ１０５におけるＮｏ）、モデル出力装置１０８は、領域知識の入力が完了したと判断し、判別モデル１１１を出力して（ステップＳ１０７）、処理を終了する。
【００７１】
以上のように、本実施形態によれば、知識正則化生成処理部１０７が、クエリの候補に付与される領域知識に基づいて正則化関数を生成し、モデル学習装置１０３が判別モデルごとに予め定められた損失関数および正則化関数を用いて定義される関数を最適化することにより判別モデルを学習する。よって、データへのフィッティングを保ちつつ、領域知識を反映した判別モデルを効率的に学習できる。
【００７２】
すなわち、本実施形態の判別モデル学習装置は、領域知識を判別モデルの学習へ反映させることで、領域知識と合致する判別モデルを得ることができる。具体的には、データに対する判別精度と、ユーザの知識や意図に基づいて生成される正則化条件とを同時に最適化することで、領域知識を反映しつつ高い精度をもつ判別モデルを学習することが可能になる。また、本実施形態の判別モデル学習装置では、モデルに対する知識や意図を入力するため、属性の抽出などを個別に行う場合と比較して、効率的に領域知識を判別モデルへ反映することができる。
【００７３】
［第２の実施形態］
次に、本発明による判別モデル学習装置の第２の実施形態を説明する。本実施形態の判別モデル学習装置は、モデルに対して入力された領域知識から後述するモデルプリファレンスを学習することにより正則化関数を生成する点において第１の実施形態と異なる。
【００７４】
図３は、本発明による判別モデル学習装置の第２の実施形態の構成例を示すブロック図である。本実施形態の判別モデル学習装置２００は、第１の実施形態と比較して、判別モデル学習装置にモデルプリファレンス学習装置２０１が含まれ、知識正則化生成処理部１０７が、知識正則化生成処理部２０２に置き換わっている点で相違する。以下、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。
【００７５】
第１の実施形態では、正則化項として用いるために領域知識を入力することで、データへのフィッティングと領域知識の反映とを同時に効率よく実現した。一方、適切な正則化を実現するためには、多数の領域知識を入力することが必要である。
【００７６】
そこで、第２の実施形態の判別モデル学習装置２００は、入力された領域知識に基づいて領域知識を表す関数（以下、モデルプリファレンスと記す。）を学習する。そして、判別モデル学習装置２００が学習したモデルプリファレンスを正則化に利用することで、入力される領域知識が少ない場合であっても、適切に正則化関数を生成することを可能とする。
【００７７】
モデルプリファレンス学習装置２０１は、領域知識に基づいてモデルプリファレンスを学習する。以降、モデルプリファレンスを、モデルｆの関数ｇ（ｆ）として表記する。例えば、モデルが好ましいかどうかを示す二値で領域知識が与えられる場合、モデルプリファレンス学習装置２０１は、ロジスティック回帰モデルやサポートベクトルマシンなどの判別モデルとしてｇ（ｆ）を学習できる。
【００７８】
知識正則化生成処理部２０２は、学習されたモデルプリファレンスを利用して正則化関数を生成する。正則化関数は、例えば、モデルプリファレンス関数ｇ（ｆ）の値が大きい（すなわち、モデルｆがモデルとしてより良いと推定される）ほど、最適になりやすい性質を有する任意の関数として構成される。
【００７９】
例として、モデルｆが線形関数ｆ（ｘ）＝ｗＴｘで定義され、関数ｇが線形関数ｇ（ｆ）＝ｖＴｗで定義される場合を想定する。ここで、ｖは、モデルプリファレンスの重み関数であり、モデルプリファレンス学習装置２０１で最適化されているパラメータである。この場合、正則化関数ＲＫを、例えば、ＲＫ＝ｌｏｇ（１＋ｅｘｐ（−ｇ（ｆ）））のような関数で定義できる。
【００８０】
なお、モデルプリファレンス学習装置２０１と、知識正則化生成処理部２０２とは、プログラム（判別モデル学習プログラム）に従って動作するコンピュータのＣＰＵによって実現される。また、モデルプリファレンス学習装置２０１と、知識正則化生成処理部２０２とは、それぞれが専用のハードウェアで実現されていてもよい。
【００８１】
次に、第２の実施形態の判別モデル学習装置２００の動作を説明する。図４は、本実施形態の判別モデル学習装置２００の動作例を示すフローチャートである。なお、入力データ１０９が入力され、生成された判別モデルがクエリ候補記憶部１０４に記憶されてから領域知識が入力されるステップＳ１００からステップＳ１０６までの処理は、図２に例示する処理と同様である。
【００８２】
モデルプリファレンス学習装置２０１は、領域知識記憶部１０６に記憶された領域知識に基づいてモデルプリファレンスを学習する（ステップＳ２０１）。そして、知識正則化生成処理部２０２は、学習されたモデルプリファレンスを利用して正則化関数を生成する（ステップＳ２０２）。
【００８３】
以上のように、本実施形態によれば、モデルプリファレンス学習装置２０１が、領域知識に基づいてモデルプリファレンスを学習し、知識正則化生成処理部２０２が、学習されたモデルプリファレンスを利用して正則化関数を生成する。そのため、第１の実施形態の効果に加え、入力される領域知識が少ない場合であっても、適切に正則化関数を生成することができる。
【００８４】
［第３の実施形態］
次に、本発明による判別モデル学習装置の第３の実施形態を説明する。本実施形態では、クエリ候補の作成方法を工夫することで、利用者が効果的に領域知識を入力できるようにする。
【００８５】
図５は、本発明による判別モデル学習装置の第３の実施形態の構成例を示すブロック図である。本実施形態の判別モデル学習装置３００は、第１の実施形態と比較して、クエリ候補生成装置３０１が含まれている点で相違する。以下、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。
【００８６】
第１の実施形態および第２の実施形態では、クエリ候補記憶部１０４に記憶されているクエリ候補に対して領域知識を付与し、付与された領域知識に基づいて生成された正則化項を判別モデルの学習に用いることで、データへのフィッティングと領域知識の反映とを同時に効率よく実現した。なお、この場合、クエリ候補が適切に生成されていることが前提になる。
【００８７】
本実施形態では、適切なクエリ候補がクエリ候補記憶部１０４に記憶されていない場合に、領域知識を獲得するコストが高くなること、または、多数の領域知識の入力が必要になることを抑制する方法を説明する。
【００８８】
クエリ候補生成装置３０１は、以下に示す２つの性質の少なくとも片方の性質を満たすようにクエリ候補を生成し、クエリ候補記憶部１０４へ記憶する。第一の性質は、領域知識の入力者にとって理解可能なモデルであることである。第二の性質は、クエリ候補の中で判別性能が有意（significance）に低くないことである。
【００８９】
クエリ候補生成装置３０１が第一の性質を満たすようにクエリ候補を生成する場合、クエリ候補に対して領域知識を獲得するコストを下げるという効果を有する。ここで、領域知識を獲得するコストが高くなる問題点の例を線形判別モデルを例に説明する。
【００９０】
ｆ（ｘ）＝ｗＴｘは一般的にはＤ次元の線形結合として表現されている。ここで、１００次元のデータ（Ｄ＝１００）について、あるモデルの重みベクトルの候補値ｗ’をクエリとして問い合わせることを想定する。この場合、領域知識の入力者は、１００次元ベクトルについてのｗ’を確認する必要があるため、領域知識を入力するコストが高くなる。
【００９１】
一般的には、線形の場合でも、例えば、決定木のような非線形判別モデルでも、モデルで利用される入力属性が少数であれば、モデルの確認が容易である。この場合、領域知識を入力するコストを低く抑えることができる。すなわち、領域知識の入力者にとって理解可能なモデルにすることができる。
【００９２】
そこで、クエリ候補生成装置３０１は、第一の性質を満たすクエリ候補（すなわち、ユーザに付与させる領域知識を軽減させるクエリ候補）を、以下の二つの手順で生成する。まず、第一の手順として、クエリ候補生成装置３０１は、入力データにおけるＤ次元の入力属性うち、少数の入力属性の組み合わせを任意の方法によって列挙する。このとき、クエリ候補生成装置３０１は、全ての属性の組み合わせを列挙する必要はなく、クエリ候補として生成したい数だけ属性を列挙すればよい。クエリ候補生成装置３０１は、例えば、Ｄ次元の属性から２つの属性だけを抽出する。
【００９３】
次に、第二の手順として、クエリ候補生成装置３０１は、列挙された組み合わせそれぞれに対して、その少数の入力属性のみを利用したクエリ候補を学習する。このとき、クエリ候補生成装置３０１は、クエリ候補の学習方法として、任意の方法を利用することができる。クエリ候補生成装置３０１は、例えば、モデル学習装置１０３が正則化関数ＫＲを除外して判別モデルを学習する方法と同一の方法を利用してクエリ候補を学習してもよい。
【００９４】
次に、第二の性質について説明する。クエリ候補生成装置３０１が第二の性質を満たすようにクエリ候補を生成する場合、無駄なクエリ候補を除外し、領域知識の入力回数を減らすことができるという効果を有する。
【００９５】
本発明のモデル学習装置は、領域知識だけでなくデータへのフィッティングも同時に考慮して判別モデルを最適化する。そのため、例えば、上記の式３で表される最適化問題を最適化する場合、データへのフィッティング（損失関数Ｌ（ｘＮ，ｙＮ，ｆ））も最適化されるため、判別精度の低いモデルは選ばれない事になる。したがって、判別精度の有意に低いモデルをクエリ候補とし、そのクエリ候補に領域知識を付与したとしても、そのクエリはモデル探索空間の外の点であるため、無駄なクエリになってしまう。
【００９６】
そこで、クエリ候補生成装置３０１は、第二の性質を満たすクエリ候補（すなわち、複数のクエリの中から判別精度が有意に低いクエリを削除したクエリ候補）を、以下の二つの手順で生成する。まず、第一の手順として、複数のクエリ候補を任意の方法によって生成する。クエリ候補生成装置３０１は、例えば、第一の性質を満たすクエリ候補を生成する方法と同一の方法を用いてクエリ候補を生成してもよい。
【００９７】
次に、第二の手順として、クエリ候補生成装置３０１は、生成されたクエリ候補の判別精度を算出する。そして、クエリ候補生成装置３０１は、クエリの候補の精度が有意に低いか否かを判定し、有意に低いと判定したクエリをクエリ候補から削除する。なお、クエリ候補生成装置３０１は、有意性について、例えば、最も精度の高いクエリ候補中のモデルから精度が悪化した度合いを算出し、その度合いを予め設定された閾値（または、データから算出された閾値）と比較することによって判定してもよい。
【００９８】
このように、本実施形態では、クエリ候補生成装置によって適切なクエリ候補が生成される。そのため、モデル学習装置１０３は、学習した判別モデルをクエリ候補記憶部１０４に記憶してもよく、また、記憶しなくてもよい。
【００９９】
なお、クエリ候補生成装置３０１は、プログラム（判別モデル学習プログラム）に従って動作するコンピュータのＣＰＵによって実現される。また、クエリ候補生成装置３０１が専用のハードウェアで実現されていてもよい。
【０１００】
次に、第３の実施形態の判別モデル学習装置３００の動作を説明する。図６は、本実施形態の判別モデル学習装置３００の動作例を示すフローチャートである。図６に例示するフローチャートには、図２に例示するフローチャートに記載された処理に、入力データに基づいてクエリ候補が生成されるステップＳ３０１の処理および処理の終了判定においてクエリ候補を追加するか否かが判定されるステップＳ３０２の処理が追加されている。
【０１０１】
具体的には、データ入力装置１０１が入力された入力データ１０９を入力データ記憶部１０２に記憶させると（ステップＳ１００）、クエリ候補生成装置３０１は、入力データ１０９を利用してクエリ候補を生成する（ステップＳ３０１）。生成されたクエリ候補は、クエリ候補記憶部１０４へ記憶される。
【０１０２】
また、ステップＳ１０５において、領域知識を入力しないと判断された場合（ステップＳ１０５におけるＮｏ）、クエリ候補生成装置３０１は、クエリ候補を追加するか否かを判定する（ステップＳ３０２）。なお、クエリ候補生成装置３０１は、例えば、ユーザ等の指示に応じて、クエリ候補を追加するか否か判定してもよく、予め定めた数のクエリが生成されたか否かに基づいて、クエリ候補を追加するか否か判定してもよい。
【０１０３】
クエリ候補を追加すると判定した場合（ステップＳ３０２におけるＹｅｓ）、クエリ候補生成装置３０１は、クエリ候補を生成するステップＳ３０１の処理を繰り返す。一方、クエリ候補を追加しないと判定した場合（ステップＳ３０２におけるＮｏ）、モデル出力装置１０８は、領域知識の入力が完了したと判断し、判別モデル１１１を出力して（ステップＳ１０７）、処理を終了する。
【０１０４】
なお、上述するように、本実施形態では、クエリ候補生成装置によって適切なクエリ候補が生成される。そのため、図６に例示するステップＳ１０４の処理（すなわち、学習した判別モデルをクエリ候補記憶部１０４に記憶する処理）は、実行されてもよく、また、実行されなくてもよい。
【０１０５】
以上のように、本実施形態によれば、クエリ候補生成装置３０１が、入力者に付与させる領域知識を軽減させたクエリ候補、または、複数のクエリの中から判別精度が有意に低いクエリを削除したクエリ候補を生成する。具体的には、クエリ候補生成装置３０１が、入力データを示す属性から予め定めた数の属性を抽出し、抽出した属性からクエリ候補を生成する。または、クエリ候補生成装置３０１が、複数のクエリ候補の判別精度を算出し、算出した判別精度が有意に低いクエリをクエリ候補から削除する。
【０１０６】
よって、第１の実施形態および第２の実施形態の効果に加え、適切なクエリ候補が存在しない場合であっても、領域知識を獲得するコストが高くなること、または、多数の領域知識の入力が必要になることを抑制できる。
【０１０７】
［第４の実施形態］
次に、本発明による判別モデル学習装置の第４の実施形態を説明する。本実施形態では、領域知識を付与させるクエリ候補（すなわち、利用者に対して入力させる質問）を最適化することで、利用者が効果的に領域知識を入力できるようにする。
【０１０８】
図７は、本発明による判別モデル学習装置の第４の実施形態の構成例を示すブロック図である。本実施形態の判別モデル学習装置４００は、第１の実施形態と比較して、最適クエリ生成装置４０１が含まれている点で相違する。以下、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。
【０１０９】
第１〜３の実施形態では、領域知識入力装置１０５がクエリ候補記憶部１０４から領域知識を付加すべきクエリ候補を任意の方法で選択していた。しかし、より効率的に領域知識を入力するためには、クエリ候補記憶部１０４に記憶されているクエリ候補の中から、何らかの基準によって最も適切なクエリを選択することが重要である。
【０１１０】
そこで、最適クエリ生成装置４０１は、クエリによって学習される判別モデルの不確実性が最小になるクエリ集合をクエリ候補記憶部１０４から選択して出力する。
【０１１１】
図８は、最適クエリ生成装置４０１の構成例を示すブロック図である。最適クエリ生成装置４０１は、クエリ候補抽出処理部４１１と、不確実性算出処理部４１２と、最適クエリ判定処理部４１３とを含む。
【０１１２】
クエリ候補抽出処理部４１１は、クエリ候補記憶部１０４に記憶されている、領域知識が付加されていないクエリ候補を１つ以上、任意の方法で抽出する。例えば、クエリ候補として領域知識を付加すべきモデルを１つ出力する場合、クエリ候補抽出処理部４１１は、クエリ候補記憶部１０４に記憶されている候補を１つずつ順番に抽出してもよい。
【０１１３】
また、例えば、クエリ候補として領域知識を付加すべきモデルを２つ以上出力する場合、クエリ候補抽出処理部４１１は、１つ出力する場合と同様、全ての組み合わせの候補を順番に抽出してもよい。また、クエリ候補抽出処理部４１１は、任意の探索アルゴリズムを用いて組み合わせの候補を抽出してもよい。以下、抽出されたクエリ候補に対応するモデルをｆ’１〜ｆ’Ｋとする。ただし、Ｋは、抽出されたクエリ候補の個数である。
【０１１４】
不確実性算出処理部４１２は、ｆ’１〜ｆ’Ｋに領域知識が与えられた場合の、モデルの不確実性を算出する。不確実性算出処理部４１２は、モデルの不確実性として、モデルによる推定がどの程度不確実であるかを表す任意の指標を利用することが可能である。例えば、非特許文献４の第３章「Query Strategy Frameworks 」には、“least confidence”，“margin sampling measure ”，“entropy ”，“vote entropy”，“average Kulback-Leibler divergence”，“expected model change ”，“expected error”，“model variance”，“Fisher information score”など、様々な指標が記載されている。不確実性算出処理部４１２は、これらの指標を不確実性の指標として利用してもよい。ただし、不確実性の指標は、非特許文献４に記載された指標に限定されない。
【０１１５】
なお、非特許文献４に記載された不確実性の評価方法では、判別モデルを学習するために必要なデータがモデルの推定に与える不確実性を評価する。一方、本実施形態では、モデル自体の良さを問い合わせ、領域知識を得ることでクエリ候補がモデルの推定に与える不確実性を評価する点で本質的に異なっている。
【０１１６】
最適クエリ判定処理部４１３は、不確実性の最も大きいクエリ候補、または不確実性の大きい候補の集合（すなわち、２つ以上のクエリ候補）を選択する。そして、最適クエリ判定処理部４１３は、選択したクエリ候補を領域知識入力装置１０５に入力する。
【０１１７】
なお、最適クエリ生成装置４０１（より具体的には、クエリ候補抽出処理部４１１と、不確実性算出処理部４１２と、最適クエリ判定処理部４１３）は、プログラム（判別モデル学習プログラム）に従って動作するコンピュータのＣＰＵによって実現される。また、最適クエリ生成装置４０１（より具体的には、クエリ候補抽出処理部４１１と、不確実性算出処理部４１２と、最適クエリ判定処理部４１３）が専用のハードウェアで実現されていてもよい。
【０１１８】
次に、第４の実施形態の判別モデル学習装置４００の動作を説明する。図９は、本実施形態の判別モデル学習装置４００の動作例を示すフローチャートである。図９に例示するフローチャートには、図２に例示するフローチャートに記載された処理に、モデル候補に対する質問を生成するステップＳ４０１の処理が追加されている。
【０１１９】
具体的には、ステップＳ１０５において、領域知識を入力すると判断された場合（ステップＳ１０５におけるＹｅｓ）、最適クエリ生成装置４０１は、モデル候補に対する質問を生成する（ステップＳ４０１）。すなわち、最適クエリ生成装置４０１は、ユーザ等に領域知識を付与させる対象のクエリ候補を生成する。
【０１２０】
図１０は、最適クエリ生成装置４０１の動作例を示すフローチャートである。クエリ候補抽出処理部４１１は、入力データ記憶部１０２、クエリ候補記憶部１０４および領域知識記憶部１０６にそれぞれ記憶されているデータを入力し（ステップＳ４１１）、クエリの候補を抽出する（ステップＳ４１２）。
【０１２１】
不確実性算出処理部４１２は、抽出されたクエリ候補ごとに不確実性を示す指標を算出する（ステップＳ４１３）。最適クエリ判定処理部４１３は、不確実性の最も大きいクエリ候補、またはクエリ候補の集合（例えば、２つ以上のクエリ候補）を選択する（ステップＳ４１４）。
【０１２２】
最適クエリ判定処理部４１３は、クエリ候補をさらに追加するか否かを判断する（ステップＳ４１５）。追加すると判断された場合（ステップＳ４１５におけるＹｅｓ）、ステップＳ４１２以降の処理が繰り返される。一方、追加しないと判断された場合（ステップＳ４１５におけるＮｏ）、最適クエリ判定処理部４１３は、選択された候補をまとめて領域知識入力装置１０５に出力する（ステップＳ４１６）。
【０１２３】
以上のように、本実施形態によれば、最適クエリ生成装置４０１が、領域知識が付与された場合に、学習される判別モデルの不確実性が小さくなるクエリを、クエリ候補の中から抽出する。言い換えると、最適クエリ生成装置４０１が、領域知識が付与された場合に、その領域知識が付与されたクエリを利用して推定される判別モデルの不確実性が小さくなるクエリを、クエリ候補の中から抽出する。
【０１２４】
具体的には、最適クエリ生成装置４０１は、学習される判別モデルの不確実性が最も高い、または、高い方から予め定められた数のクエリをクエリ候補の中から抽出する。不確実性が高いクエリに対して領域知識が付与されることにより、学習される判別モデルの不確実性が小さくなるからである。
【０１２５】
そのため、領域知識を反映させた判別モデルを生成する場合に、その領域知識を付与すべき最適なクエリを生成できる。したがって、このように最適なクエリを抽出することにより、領域知識入力装置１０５が、最適クエリ生成装置４０１が抽出したクエリに対するユーザからの領域知識の入力を受け付けることができる。よって、不確実性の大きいクエリ候補に対して領域知識を付与することで、領域知識に基づく正則化項の推定精度を高めることができ、結果として、判別学習の精度を高めることが可能になる。
【０１２６】
なお、第２の実施形態の判別モデル学習装置２００および第４の実施形態の判別モデル学習装置４００が、入力データ１０９からクエリ候補を生成するために、第３の実施形態の判別モデル学習装置３００が備えるクエリ候補生成装置３０１を備えていてもよい。また、第４の実施形態の判別モデル学習装置４００が、第２の実施形態のモデルプリファレンス学習装置２０１を備えていてもよい。この場合、判別モデル学習装置４００がモデルプリファレンスを生成できるため、第４の実施形態でも、モデルプリファレンスを利用して正則化関数を算出できる。
【０１２７】
次に、本発明の概要を説明する。図１１は、本発明による最適クエリ生成装置の概要を示すブロック図である。本発明による最適クエリ生成装置は、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリの候補を記憶するクエリ候補記憶手段８６（例えば、クエリ候補記憶部１０４）と、領域知識が付与された場合にその領域知識が付与されたクエリを利用して推定される判別モデルの不確実性が小さくなるクエリを、クエリ候補の中から抽出する最適クエリ抽出手段８７（例えば、最適クエリ生成装置４０１）とを備えている。
【０１２８】
そのような構成により、ユーザのモデルに対する知識や分析の意図を示す領域知識を反映させた判別モデルを生成する場合に、その領域知識を付与すべき最適なクエリを生成できる。
【０１２９】
また、最適クエリ生成装置は、最適クエリ抽出手段８７によって抽出されたクエリに付与される領域知識に基づいて、その領域知識に対する適合性（フィッティング）を示す関数である正則化関数（例えば、正則化関数ＫＲ）を生成する正則化関数生成手段（例えば、知識正則化生成処理部１０７）と、判別モデルごとに予め定められた損失関数（例えば、損失関数Ｌ（ｘＮ，ｙＮ，ｆ））および正則化関数を用いて定義される関数（例えば、上記に示す式３で表される最適化問題）を最適化することにより判別モデルを学習するモデル学習手段（例えば、モデル学習装置１０３）とを備えていてもよい。
【０１３０】
そのような構成により、データへのフィッティングを保ちつつ、ユーザのモデルに対する知識や分析の意図を示す領域知識を反映した判別モデルを効率的に学習できる。
【０１３１】
また、最適クエリ生成装置は、ユーザに付与させる領域知識を軽減させたクエリ候補、または、複数のクエリの中から判別精度が有意に低いクエリを削除したクエリ候補を生成するクエリ候補生成手段（例えば、クエリ候補生成装置３０１）を備えていてもよい。そして、最適クエリ抽出手段８７は、クエリ候補の中から判別モデルの不確実性が小さくなるクエリを抽出してもよい。
【０１３２】
そのような構成により、適切なクエリ候補が存在しない場合であっても、領域知識を獲得するコストが高くなること、または、多数の領域知識の入力が必要になることを抑制できる。
【０１３３】
また、最適クエリ生成装置は、最適クエリ抽出手段８７によって抽出されたクエリに付与される領域知識に基づいて、その領域知識を表す関数であるモデルプリファレンスを学習するモデルプリファレンス学習手段（例えば、モデルプリファレンス学習装置２０１）を備えていてもよい。そして、正則化関数生成手段は、モデルプリファレンスを利用して正則化関数を生成してもよい。
【０１３４】
そのような構成により、入力される領域知識が少ない場合であっても、適切に正則化関数を生成することが可能になる。
【０１３５】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１３６】
この出願は、２０１２年２月８日に出願された米国仮特許出願第61/596,317号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１３７】
本発明は、ユーザの意図を示す領域知識を付与すべき対象のモデルであるクエリを最適に生成する最適クエリ生成装置に好適に適用される。
【符号の説明】
【０１３８】
１００，２００，３００，４００  判別モデル学習装置
１０１  データ入力装置
１０２  入力データ記憶部
１０３  モデル学習装置
１０４  クエリ候補記憶部
１０５  領域知識入力装置
１０６  領域知識記憶部
１０７，２０２  知識正則化生成処理部
１０８  モデル出力装置
２０１  モデルプリファレンス学習装置
３０１  クエリ候補生成装置
４０１  最適クエリ生成装置
４１１  クエリ候補抽出処理部
４１２  不確実性算出処理部
４１３  最適クエリ判定処理部
【図１】
0006052187.tif 000007
【図２】
0006052187.tif 000008
【図３】
0006052187.tif 000009
【図４】
0006052187.tif 000010
【図５】
0006052187.tif 000011
【図６】
0006052187.tif 000012
【図７】
0006052187.tif 000013
【図８】
0006052187.tif 000014
【図９】
0006052187.tif 000015
【図１０】
0006052187.tif 000016
【図１１】
0006052187.tif 000017
【図１２】
0006052187.tif 000018