(57)【要約】【課題】能動学習法の精度を向上させつつ、利用者の意思で精度を制御することができ、また、興味のあるデータを先に抜き出すという機能なども備える能動学習システムを提供する。【解決手段】既知データをサンプリングし、既知データに対しては複数の学習機械で独立に学習を行い、未知データに対しては次に学習すべきデータを選択する能動学習システムは、既知データをサンプリングする時に重み付けを行うためのサンプリング重み付け装置と、複数の学習機械の学習結果を統合する際に重み付けを行うための予測重み付け装置と、次に学習すべきデータを選択するときに重み付けを行うためデータ重み付け装置と、を備える。各重み付け装置は、データ数に極端に偏りが発生しているときに、その比重を重くするように重み付けを行う。【選択図】図１
2009104632.tif 000002
【特許請求の範囲】
【請求項１】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、複数の学習機械とを使用する能動学習方法であって、
前記複数の学習機械が、前記既知データに関し、前記記憶装置からそれぞれ独立にサンプリングを行った後に学習を行う段階と、
前記学習の結果として、前記複数の学習機械の出力結果を統合して出力する段階と、
前記複数の学習機械が、前記記憶装置から未知データを取り出して予測を行う段階と、
前記予測の結果に基づいて次に学習すべきデータを計算して出力する段階と、
前記次に学習すべきデータに対応するラベル値を入力する段階と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に追加する段階と、
を有し、
前記既知データをサンプリングするとき、前記複数の学習機械による学習の結果を統合するとき、及び、前記複数の学習機械による予測から次に学習すべきデータを計算するとき、のうちの少なくとも１つにおいて、均等でない重み付けを実行する、能動学習方法。
【請求項２】
前記既知データ及び前記未知データにおいてグループ分けを行う段階をさらに有し、前記次に学習すべきデータを計算する際に、グループで散らばるようにデータを選択する、請求項１に記載の能動学習方法。
【請求項３】
前記既知データ及び前記未知データにおいてグループ分けを行う段階をさらに有し、前記予測を行う段階において、グループで散らばるように前記各学習機械に前記未知データを供給する、請求項１に記載の能動学習方法。
【請求項４】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段と、
前記サンプリング装置ごとにサンプリング時の重みを設定するサンプリング重み付け手段と、
を有する能動学習システム。
【請求項５】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段と、
前記第１の統合手段で前記学習の結果を統合する際に用いられる重みを設定する予測重み付け手段と、
を有する、能動学習システム。
【請求項６】
前記第１の統合手段で前記学習の結果を統合する際に用いられる重みを設定する予測重み付け手段を有する、請求項４に記載の能動学習システム。
【請求項７】
前記第２の統合手段で次に学習すべきデータを選択する際に用いられる重みを設定するデータ重み付け手段を有する、請求項４乃至６のいずれか１項に記載の能動学習システム。
【請求項８】
前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段をさらに有し、
前記第２の統合手段は前記次に学習すべきデータを計算する際に、グループで散らばるようにデータを選択する、請求項４乃至７のいずれか１項に記載の能動学習システム。
【請求項９】
前記既知１データ及び前記未知データにおいてグループ分けを行うグループ生成手段と、
グループで散らばるように前記各学習機械に前記未知データを供給するデータ選択手段とをさらに有する、請求項４乃至７のいずれか１項に記載の能動学習システム。
【請求項１０】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段と、
前記第２の統合手段で次に学習すべきデータを選択する際に用いられる重みを設定するデータ重み付け手段と、
を有する、能動学習システム。
【請求項１１】
前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段をさらに有し、
前記第２の統合手段は前記次に学習すべきデータを計算する際に、グループで散らばるようにデータを選択する、請求項１０に記載の能動学習システム。
【請求項１２】
前記既知１データ及び前記未知データにおいてグループ分けを行うグループ生成手段と、
グループで散らばるように前記各学習機械に前記未知データを供給するデータ選択手段とをさらに有する、請求項１０に記載の能動学習システム。
【請求項１３】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に制御手段と、
前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段と、
を有し、前記第２の統合手段は前記次に学習すべきデータを計算する際に、グループで散らばるようにデータを選択する、能動学習システム。
【請求項１４】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段と、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に制御手段と、
前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段と、
グループで散らばるように前記各学習機械に前記未知データを供給するデータ選択手段と、
を有する、能動学習システム。
【請求項１５】
コンピュータを、
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶手段、
前記記憶手段から既知データをサンプリングするとともに既知データの学習及び未知データの予測を行う複数の学習手段、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段、
前記各学習手段が前記未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段、
前記次に学習すべきデータに対応するラベル値を入力する結果入力手段、
前記ラベル値が入力されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段、
前記サンプリング装置でのサンプリング時の重み、前記第１の統合手段で用いられる重み、及び前記第２の統合手段で用いられる重みのうちの少なくとも１つの重みを設定する重み付け手段、
として機能させるプログラム。
【請求項１６】
前記コンピュータをさらに、前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段として機能させ、前記第２の統合手段において前記次に学習すべきデータを計算する際に、グループで散らばるようにデータが選択されるようにする、請求項１５に記載のプログラム。
【請求項１７】
前記コンピュータをさらに、
前記既知データ及び前記未知データにおいてグループ分けを行うグループ生成手段、
グループで散らばるように前記各学習機械に前記未知データを供給するデータ選択手段、
として機能させる請求項１５に記載のプログラム。
【請求項１８】
コンピュータが読み取り可能な記録媒体であって、請求項１５乃至１７のいずれか１項に記載のプログラムを格納した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、能動学習方法及び能動学習システムに関する。
【背景技術】
【０００２】
能動学習とは、安倍らによれば、学習者が学習データを能動的に選択することにできる学習形態である（安部  直樹、馬見塚  拓，“能動学習と発見科学”、森下真一・宮野  悟編、“発見科学とデータマイニング”、共立出版、２００１年６月、ISBN4-320-12018-3、pp. 64-71（非特許文献１））。一般に学習を能動的に行うことにより、データ数や計算量の意味で学習の効率性を向上することができることが知られている。能動学習を行うシステムを能動学習システムと呼ぶ。例えば、集められたデータに対して統計的に分析を行い、ラベル値が未知のデータに対しては、過去のデータの傾向から結果の予測を行うような学習システムを考える。そのような学習システムには、能動学習システムを適用することができる。以下、この種の能動学習システムの概略を説明する。
【０００３】
ラベル値が未知のデータとラベル値が既知のデータが存在するものとする。ラベル値が既知のデータで学習を行い、その学習した結果をラベル値が未知のデータに適用する。そのときに、ラベル値が未知のデータから効率的に学習を行えるようなデータを学習システムが選択し、そのデータを出力する。出力されたデータに対して実験するなり調査するなりして、ラベル値が未知のデータに対する結果を得て、それを入力したのちラベル値が既知のデータに混ぜて、同じように学習を行う。その一方で、ラベル値が未知のデータの集合からは、結果が得られたデータを削除する、というものである。能動学習システムでは、そのような動作を繰り返して行っていく。
【０００４】
また、データは以下のように記述されている。１つのデータは、複数の属性とラベルというもので記述される。たとえば有名な評価データの中には、“ｇｏｌｆ”というものがある。それはゴルフをプレーするかしないかを判定するものであって、天気、温度、湿度、風の強さという４つのものから記述されている。天気は、「晴れ」、「曇り」または「雨」、風は、「有」または「無」という値をとる。気温と湿度は実数値である。たとえば１つのデータは、天気：晴れ、温度：１５度、湿度：４０％、風：無、プレー：する、というように書かれている。そのデータの場合、天気、温度、湿度、風の４つを属性と呼ぶ。また、プレーする、しないという結果のことをラベルと呼ぶ。本明細書では、ラベルがとりうる値が離散値の場合には、特にクラスと呼ぶ。
【０００５】
ここで、さまざまな用語を定義しておく。
【０００６】
仮にラベルは２値であるとしておく。その２値のうち注目しているラベルの方を正例、それ以外のものを負例とする。またラベルが多値の場合には、注目している１つのラベル値を正例、それ以外のすべてのラベル値を負例とする。またラベルがとりうる値が連続値の場合には注目する値付近にラベル値が存在するとき正例と呼び、それ以外のところにあるときに負例と呼ぶことにする。
【０００７】
学習の精度を測る指標としては、ＲＯＣ（受信者動作特性：receiver operating characteristic）曲線、ヒット率、正解率の推移などがある。以下の説明では、これら３つの指標を用いて評価を行う。
【０００８】
ＲＯＣ曲線は、以下のように定義される。
横軸：負例のうち正例と判断されたデータの個数／全負例数，
縦軸：正例のうち正例と判断されたデータの個数／全正例数．
ランダムな予測を行ったとき、ＲＯＣ曲線は、原点と（１，１）を結ぶ対角線となる。
【０００９】
ヒット率は以下のように定義される。
横軸：ラベル値が既知のデータ数／（ラベル値が未知＋既知のデータ数），
縦軸：ラベル値が既知のデータの中の正例数／全正例数．
ランダムな予測を行ったとき。ヒット率は、原点と（１，１）を結ぶ対角線となる。また、限界は原点と（正例数／（ラベル値が未知＋既知のデータ数），１）を結んだ線となる。
【００１０】
正解率の推移は以下のように定義される。
横軸：ラベル値が既知のデータ数，
縦軸：正しく判断されたデータの個数／ラベル値が既知のデータ数．
【００１１】
後述する「発明を実施するための最良の形態」においては、これらの指標を用いて、本発明による能動学習システムを評価している（図３Ａ〜３Ｃ、５、７、９、１１、１３Ａ、１３Ｂ、１５Ａ、１５Ｂ、１８を参照）。
【００１２】
またエントロピーとは、以下のように定義される。各Ｐ_ｉはｉである確率を示しているとする。
【００１３】
エントロピー＝−（ｐ_１＊ｌｏｇ(Ｐ_１)＋ｐ_２＊ｌｏｇ(Ｐ_２)＋…＋Ｐ_ｎ＊ｌｏｇ(Ｐ_ｎ)）
【００１４】
なお、従来の能動学習システムを開示するものとしては、特開平１１−３１６７５４号公報（特許文献１）に開示されたものがある。この公報に開示の能動学習システムは、学習の精度を向上するために、下位アルゴリズムに学習を行わせる学習段階と、学習精度をブースティングにより向上させるブースティング段階と、複数の入力候補点に対する関数値予測段階と、重みの総和が最大の出力値の重み和と、重みの総和が次に大きい出力値の重み和との差が最も小さいような入力点を選択する入力点指定段階と、を行うことを特徴とするものである。
【００１５】
安倍らはさらに、複数の学習機械を備えるシステムを使用し、各学習機械はデータからランダムにサンプリングしてそのデータを学習し、ラベル値が未知のデータに対してはそれぞれの学習機械が予測を行ってもっとも分散が大きくなるような点を次に学習すべき点として出力するような手法を開示している（非特許文献１）。
【特許文献１】特開平１１−３１６７５４号公報
【非特許文献１】安部  直樹、馬見塚  拓，“能動学習と発見科学”、森下真一・宮野  悟編、“発見科学とデータマイニング”、共立出版、２００１年６月、ISBN4-320-12018-3、pp. 64-71
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら上述した従来の手法は、次に学習すべきデータとして出力するものをユーザーの意思で制御できない、という課題を有する。その理由は、これらの従来の手法は、なるべく早く学習精度を向上することを目標とするために、次の候補点として最も分散の大きな点や、下位の学習機械からの出力が割れる点のみを選んでいるからである。
【００１７】
従来の手法は、学習データにおいて、対象となる値やクラスのデータ数が他のクラスや値のものに比べてきわめて低い状況下において、対象となっている値やクラスの正解率を得るのが困難である、という課題も有する。その理由は、今までに開発されてきた下位学習アルゴリズムが極端な個数の不平等な状況までを考察して設計されたものでないことにあるばかりでなく、従来の能動学習アルゴリズムも同じようにそのような状況を想定していないことにある。
【００１８】
従来の手法が用いる能動学習アルゴリズムには、入力すべきデータの選択の段階において、似たようなデータを入力点として数多く出力してしまう、という課題がある。その理由もやはり、従来の能動学習アルゴリズムが、下位の学習アルゴリズムが学習したものを十分に活かしきるようなメカニズムを有していないことにある。
【００１９】
さらにこれらの従来の手法は、システムにおいて最終判断の方法が予め定められているために、学習の精度を変えられない、という課題も有する。
【００２０】
そこで本発明の目的は、能動学習法の精度を向上させつつ、利用者の意思で精度を制御することができ、また、興味のあるデータを先に抜き出すという機能なども備える能動学習方法を提供することにある。
【００２１】
そこで本発明の別の目的は、能動学習法の精度を向上させつつ、利用者の意思で精度を制御することができ、また、興味のあるデータを先に抜き出すという機能なども備える能動学習システムを提供することにある。
【課題を解決するための手段】
【００２２】
本発明の目的は、ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして既知データの集合と未知データの集合とを格納する記憶装置と、複数の学習機械とを使用する能動学習方法であって、複数の学習機械が、既知データに関し、記憶装置からそれぞれ独立にサンプリングを行った後に学習を行う段階と、学習の結果として、複数の学習機械の出力結果を統合して出力する段階と、複数の学習機械が、記憶装置から未知データを取り出して予測を行う段階と、予測の結果に基づいて次に学習すべきデータを計算して出力する段階と、次に学習すべきデータに対応するラベル値を入力する段階と、ラベル値が入力されたデータを未知データの集合から削除して既知データの集合に追加する段階と、を有し、既知データをサンプリングするとき、複数の学習機械による学習の結果を統合するとき、及び、複数の学習機械による予測から次に学習すべきデータを計算するとき、のうちの少なくとも１つにおいて、均等でない重み付けを実行する能動学習方法によって達成される。
【００２３】
本発明の能動学習方法における重み付けでは、例えば、データ数に極端に偏りが発生しているときに、その比重を重くするようにする。さらにこの方法では、次に予測のために学習装置に入力すべきデータの選択において、選ばれてきた候補のデータの中から空間的なデータの分布を考慮に入れながらさらに選び出すというデータの分布に広がりを持たせる機構を付け加えることによって、お互いに似たようなデータを出力することを避けることができる。
【００２４】
本発明の他の目的は、ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして既知データの集合と未知データの集合とを格納する記憶装置と、既知データの学習及び未知データの予測を行う複数の学習機械と、学習機械ごとに設けられ、記憶装置から既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、各学習機械が既知データに基づいて行った学習の結果を統合する第１の統合手段と、各学習機械が未知データに基づいて行った予測の結果から次に学習すべきデータを計算して出力する第２の統合手段と、次に学習すべきデータに対応するラベル値を入力する結果入力手段と、ラベル値が入力されたデータを未知データの集合から削除して既知データの集合に追加する制御手段と、を有するとともに、（１）サンプリング装置ごとにサンプリング時の重みを設定するサンプリング重み付け手段、（２）第１の統合手段で学習の結果を統合する際に用いられる重みを設定する予測重み付け手段、（３）第２の統合手段で次に学習すべきデータを選択する際に用いられる重みを設定するデータ重み付け手段、及び（４）既知データ及び未知データにおいてグループ分けを行うグループ生成手段のうちの少なくとも１つを有する能動学習システムによって達成される。
【００２５】
本発明の能動学習システムにおける重み付けでは、例えば、データ数に極端に偏りが発生しているときに、その比重を重くするようにする。
【００２６】
本発明では、（１）学習データをサンプリングする際にデータに重み付けを行う、（２）入力候補点から入力点を選び出す際にデータに重み付けを行う、及び（３）入力されたデータに対して予測を行う際にデータに重み付けを行う、の計３通りの重み付けのうちの少なくとも１つを採用するしている。これによって、本発明によれば、対象となっているデータの重みを重くすることで重点的に学習を行うことができるので、対象となっているデータの、全体に対する割合が極めて低い状況下において、マイニングの精度を向上させながら、カバー率を向上させることができる。また、対象となっているデータの重みを軽くすることで、対象となっているものが未発見の領域の学習を行っていくことが可能になるため、対象となっているデータがさまざまな特徴に基づいているとき、それを、早期に発見できる。
【００２７】
従来の能動学習法は、データの予測を行うときに均等に学習結果を扱っているのに対し、本発明によれば、重み付けすることが可能なため、重みを変えることで精度を制御することが可能になり、任意の精度で学習することが可能になる。従来の方法では、次に学習すべきデータが、空間的にある領域に固まる傾向にあるが、本発明では、それらのデータが空間的に散らばるような機構を設けることにより、従来の能動学習法の欠点を修正でき、正解率を従来のものよりも高めることができる。
【発明を実施するための最良の形態】
【００２８】
本発明の能動学習システムは、（１）学習データをサンプリングする際にデータに重み付けを行う、（２）入力候補点から入力点を選び出す際にデータに重み付けを行う、及び（３）入力されたデータに対して予測を行う際にデータに重み付けを行う、の計３通りの重み付けのうちの少なくとも１つを採用することにより、上述した本発明の目的を達しようとするものである。これらの重み付けにおいては、データ数に極端に偏りが発生しているときに、その比重を重くするように重み付けを行っている。本発明は、どの段階で重み付けを行うかによって種々の実施形態が考えられる。
【００２９】
また、本発明では、次に学習すべきデータを選択する際に、選ばれてきた候補のデータから空間的なデータの分布を考慮に入れながらさらに選び出すという、データの分布に広がりを持たせるメカニズムを付け加えることによって、お互いに似たようなデータを出力することを避けることができる。このようなメカニズムの有無によっても、本発明は種々の実施形態が考えられる。
【００３０】
以下、このような各種の実施形態について説明する。
【００３１】
《第１の実施形態》
図１に示す本発明の第１の実施形態の能動学習システムは、ラベル値が既にわかっているデータ（すなわち既知データ）を蓄えておく記憶装置１０１と、記憶装置１０１内の既知データをサンプリングする時に重み付けを行うためのデータを生成するサンプリング重み付け装置１０２と、予測を行う時に重み付けを行うためのデータを生成する予測重み付け装置１０３と、次に学習すべきデータを選択するときに重み付けを行うためのデータを生成するデータ重み付け装置１０４と、複数の学習機械１０６と、記憶装置１０１からデータをサンプリングして対応する学習機械１０６に対してデータを供給する複数のサンプリング装置１０５と、複数の学習機械１０６からの学習結果をまとめる規則統合装置１０７と、規則統合装置１０７に接続した出力装置１１１と、複数の学習機械１０６での結果に基づき次に学習すべきデータを計算するデータ統合装置１０８と、データ統合装置１０８に接続した出力装置１１２と、次に学習すべきデータの出力結果に対て結果を入力する結果入力装置１１３と、ラベル値がわかっていないデータ（すなわち未知データ）を格納する記憶装置１０９と、この能動学習システム全体の制御を行う制御装置１１０と、を備えている。
【００３２】
制御装置１１０は、結果入力装置１１３によって入力された結果を例えば表形式のものとしてまとめ、記憶装置１０９内における該当するデータを削除し、その代わりに、結果が加えられたデータを記憶装置１０１内に格納するという制御を行う。サンプリング装置１０５と学習機械１０６とは、ここでは、１対１の関係で設けられている。また、各学習機械１０６には、対応するサンプリング装置１０５からデータが供給されるとともに、記憶装置１０９からは未知データが供給される。規則統合装置１０７に接続した出力装置１１１からは、学習した規則が出力され、データ統合装置１０８に接続した出力装置１１２からは、次に学習すべきデータが出力される。
【００３３】
サンプリング重み付け装置１０２は、各サンプリング装置１０５に対して、記憶装置１０１に格納された既知データに基づき、サンプリング時にデータに対して重み付けを行うための重み付けデータを生成して供給する。予測重み付け装置１０３は、記憶装置１０１に格納された既知データに基づき、規則統合装置１０７において各学習機械１０６ごとの学習結果をまとめる際に重み付けを行うための重み付けデータを生成し、生成した重み付けデータを規則統合装置１０７に供給する。同様にデータ重み付け装置１０４は、記憶装置１０１に格納された既知データに基づき、データ統合装置１０８において次に学習すべきデータを選択して出力する際に重み付けを行うための重み付けデータを生成し、生成した重み付けデータをデータ統合装置１０８に供給する。
【００３４】
ここで、サンプリング重み付け装置１０２、予測重み付け装置１０３及びデータ重み付け装置１０４のそれぞれによる重み付けを説明する。これらの重み付け装置１０２〜１０４による重み付けとしては、均等でない重み付けであれば種々のものを使用できる。
【００３５】
サンプリング重み付け装置１０２での重み付けとしては、例えば、（１）既知データにおけるクラスあるいは値に応じた重みを設定する、（２）ラベル値が離散値を取る場合に、各サンプリング装置１０５が、独立して、あるクラスのデータの全てとそれ以外のクラスのデータからランダムにサンプリングするように重みを設定する、（３）ラベル値が連続値を取る場合に、各サンプリング装置１０５が、特定のラベルの値の付近のデータの全てとそれ以外のラベル値のデータからランダムにサンプリングするように重みを設定する、などが挙げられる。
【００３６】
予測重み付け装置１０３での重み付けとしては、例えば、各学習機械１０６が出力した結果についてクラス（ラベル値が離散値を取る場合）ごとあるいは数値における区間（ラベル値が連続値を取る場合）ごとに重みを決定する方法がある。
【００３７】
データ重み付け装置１０４での重み付けとしては、例えば、（１）ラベル値が離散値をとる場合にクラスごとの頻度から計算されるばらつき具合に応じて重みを割当てる、（２）各学習機械１０６での結果として得られる値の分散に応じて重みを割当てる、（３）ラベル値が離散値をとる場合にクラスごとの頻度から計算されるエントロピーに応じて重みを割当てる、などが挙げられる。ばらつき具合に応じて重みを割当てる場合には、ばらつき具合が最大のところのみが最大の重みになることは除くようにしてもよい。同様に、分散あるいはエントロピーに応じて重みを割当てる場合には、それら分散あるいはエントロピーが最大のところのみが最大の重みになることは除くようにしてもよい。さらに、これらの重みとは別個に各学習機械１０６で得られる結果そのものに対して重みを割当てるようにしてもよい。
【００３８】
次に、本実施形態の能動学習システムの動作について、図２に示すフローチャートを利用して説明する。ここでは、データは表形式で与えられるものとする。
【００３９】
まず、ステップ２０１において、ラベル値が既知のデータは記憶装置１０１に、ラベル値が未知のデータは記憶装置１０９に記憶される。その結果、既知データの集合が記憶装置１０１に格納され、未知データの集合が記憶装置１０９に格納されることになる。
【００４０】
次に、ステップ２０２において、サンプリング重み付け装置１０２は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、各サンプリング装置１０５に送る。各サンプリング装置１０５は、サンプリング重み付け装置１０２から送られてきた重みにしたがって重み付けを行いながら、記憶装置１０１内の既知データをサンプリングし、サンプリングしたデータを対応する学習機械１０６に送る。各学習機械１０６は、ステップ２０３において、サンプリング装置から送られてきたデータに基づいて学習を実行する。
【００４１】
記憶装置１０１からは予測重み付け装置１０３にもデータが送られており、ステップ２０４において、予測重み付け装置１０３は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、それらを規則統合装置１０７へ送る。規則統合装置１０７は、重み付けデータに基づいて、各学習機械１０６からの学習結果に重み付けを行いながらこれらの学習結果をまとめる。このとき、各学習機械１０６が出力した結果についてクラス（ラベル値が離散値を取る場合）ごとあるいは数値における区間（ラベル値が連続値を取る場合）ごとに頻度を計算し、頻度と上述した重みとを乗算し、その値がもっとも大きな値となっているものを予想値として出力する。規則統合装置１０７は、学習結果をまとめた結果を規則として出力装置１１１に送る。
【００４２】
次に各学習機械１０６は、ステップ２０５において、記憶装置１０９に格納されたラベル値が未知のデータに対して予測を行い、その結果は、データ統合装置１０８に送られる。このとき、記憶装置１０１からはデータ重み付け装置１０４にもデータが送られており、ステップ２０６において、データ重み付け装置１０４は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、それらをデータ統合装置１０８へ送る。データ統合装置１０８は、重み付けデータに基づいて、各学習機械１０６からの予測結果に重み付けを行いながらこれらの結果をまとめ、次に学習すべきデータを選択する。次に学習すべきデータの選択方法としては、以下のようなものが挙げられる。例えば、（１）ばらつき具合あるいはエントロピーに応じて重みが割当てられている場合には、各学習機械１０６が出力した結果からそのクラスごとに頻度を計算し、頻度を元にばらつき具合あるいはエントロピーを示す数値を計算し、ばらつき具合あるいはエントロピーに応じて割り当てられた重みが重い順番にデータを選択する、（２）分散に応じて重みが割当てられている場合には、各学習機械１０６が出力した結果からその分散を計算し、分散に応じて割り当てられた重みが重い順番にデータを選択する、（３）ばらつき具合あるいはエントロピーと結果とのそれぞれに応じて重みが割当てられている場合には、各学習機械１０６が出力した結果からそのクラスごとに頻度を計算し、頻度を元にばらつき具合あるいはエントロピーを示す数値を計算し、ばらつき具合あるいはエントロピーに応じて割り当てられた重みと結果に割り当てられた重みとをあわせて重みの重い順番にデータを選択する、（４）分散と結果のそれぞれに応じて重みが割当てられている場合には、各学習機械１０６が出力した結果からその分散を計算し、分散に応じて割り当てられた重みと結果に割り当てられた重みとをあわせて重みの重い順番にデータを選択する。データ統合装置１０８は、その結果を次に学習すべきデータとして出力装置１１２に送る。
【００４３】
次に、ステップ２０７において、次に学習すべきデータに対する結果（ラベル値）が、結果入力装置１１３を介し、人手によって、あるいはコンピュータにより入力される。入力された結果は制御装置１１０に送られ、制御装置１１０は、その結果が入力されたデータを記憶装置１０９から削除し、その代わりに記憶装置１０１に記憶させる。
【００４４】
以後、上述の処理が繰り返され、能動学習が進行する。この場合、これらの処理は、最長の場合で記憶装置１０９内に未知データがなくなるまで行われるが、その前に打ち切るようにしてもよい。後述するように本実施形態によれば、迅速に“よい結果”を得ることができるので、例えば適当な反復回数を設定してそこで処理を打ち切るようにすることができる。サンプリング重み付け装置１０２、予測重み付け装置１０３及びデータ重み付け装置１０４は、いずれも均等でない重み付けを行う。
【００４５】
図３Ａ〜３Ｃは、第１の実施形態の能動学習システムの効果を説明している。
【００４６】
図３Ａにおいて、破線３０１は、従来の能動学習法を用いた場合のヒット率を示し、実線３０２は、本実施形態の能動学習システムを用いた場合のヒット率を示している。本実施形態によれば、従来の能動学習法よりも早期の段階において、対象となっているクラス（値）のデータを見つけていることがわかる。
【００４７】
図３Ｂにおいて、破線３０３は、従来の能動学習法を用いた場合のＲＯＣ曲線を示し、実線３０４は、本実施形態の能動学習システムを用いた場合のＲＯＣ曲線を示している。本実施形態によれば、従来の能動学習法に比べて高い精度で学習を行えていることがわかる。さらに、従来の能動学習法では、精度は、曲線上のある１点に存在するので、どのような精度にするのかを外部から制御することができなかった。これに対して本実施形態の手法では、予測重み付け装置１０３における重みを変えることで、任意の精度を設定できる。図３Ｂには、図示Ａ〜Ｄで示される４つの直線が存在するが、本実施形態では、任意の位置に直線を設定できるので、任意の精度を設定することができる。
【００４８】
図３Ｃにおいて、破線３０５は、従来の能動学習法を用いた場合の正解率の推移を示し、破線３０６は、本実施形態の能動学習システムを用いた場合における正解率の推移を示している。本実施形態によれば、対象となっているクラス（値）のデータの重みを重くすることによって、そのクラスに関する正解率を上げることができることがわかる。
【００４９】
《第２の実施形態》
次に、本発明の第２の実施形態について、図４を参照して説明する。図４に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、予測重み付け装置とデータ重み付け装置とが設けられていない点で、第１の実施形態のものと相違する。予測重み付け装置とデータ重み付け装置とが設けられていないことにより、規則統合装置１０７では、学習機械１０６から出てきた結果がすべて均等に取り扱われ、多数決などの手段によって最終的な規則が出力されることになる。具体的には、規則統合装置１０７は、各学習機械１０６が出力した結果について、ラベル値が離散値を取る場合にはクラスごとに、あるいはラベル値が連続値を取る場合には数値における区間ごとに、頻度を計算し、その値がもっとも大きな値となっているものを予想値として出力する。
【００５０】
またデータ統合装置１０８においも同様に出力結果が均等に扱われ、もっとも判断に迷うデータが出力されることになる。具体的には、例えば、（１）ラベル値が離散値を取る場合に、各学習機械１０６が出力した結果からそのクラスごとに頻度を計算し、頻度を元にばらつき具合を示す数値を計算し、あるクラスと判断されたデータとばらつき具合を示す指標が最大もしくは最大付近のデータから、次に学習すべきデータを選択する。（２）ラベル値が連続値を取る場合に、各学習機械１０６が出力した結果からその分散を計算し、ある数値の付近にあるデータと分散が最大もしくは最大付近のデータから、次に学習すべきデータを選択する。（３）各学習機械１０６が出力した結果からその分散を計算し、特定のクラス以外のデータ（あるいはある数値付近にないデータ）であってかつ“分散が最小もしくは最小に近い”データから、次に学習すべきデータを選択する。
【００５１】
図５は、第２の実施形態の能動学習システムの効果を示している。図において、破線３０７は、従来の能動学習法を用いた場合の学習精度を表すＲＯＣ曲線であり、実線３０８は、本実施形態の能動学習システムにより、対象となっているクラス（値）のデータが多く選ばれるようなサンプリングをしたとき学習精度を示すＲＯＣ曲線である。本実施形態によれば、従来の能動学習法よりも高い精度が得られることがわかる。
【００５２】
《第３の実施形態》
次に、本発明の第３の実施形態について、図６を参照して説明する。図６に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、サンプリング重み付け装置とデータ重み付け装置とが設けられていない点で、第１の実施形態のものと相違する。サンプリング重み付け装置とデータ重み付け装置とが設けられていないことにより、各サンプリング装置１０５では既知のデータがすべて均等に取り扱われ、ランダムなサンプリングが行われる。またデータ統合装置１０８では、第２の実施形態の場合と同様に、出力結果が均等に扱われ、もっとも判断に迷うデータが出力されることになる。
【００５３】
図７は、第３の実施形態の能動学習システムの効果を示している。図において、線３０９は、この能動学習システムの学習精度を表すＲＯＣ曲線を示している。従来の能動学習法では学習結果を統合するときに均等に結果を扱っていたため、ある特定の精度でしか能動学習システムを構築することができなかった。本実施形態によれば、任意の重みで学習結果を統合することができるため、例えば、図示Ａ、Ｂ、Ｃ、Ｄのような精度でシステムを構成することができる。
【００５４】
《第４の実施形態》
次に、本発明の第４の実施形態について、図８を参照して説明する。図８に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、サンプリング重み付け装置と予測重み付け装置とが設けられていない点で、第１の実施形態のものと相違する。サンプリング重み付け装置と予測重み付け装置とが設けられていないことにより、各サンプリング装置１０５では既知のデータがすべて均等に取り扱われ、ランダムなサンプリングが行われる。また、規則統合装置１０７では、第２の実施形態の場合と同様に、学習機械１０６から出てきた結果がすべて均等に取り扱われ、多数決などの手段によって最終的な規則が出力されることになる。
【００５５】
図９は、第４の実施形態の能動学習システムの効果を示している。図において、破線３１０は従来の能動学習法を用いた場合の正解率の推移を示し、破線３１１は、本実施形態の能動学習システムを用いた場合における正解率の推移を示している。本実施形態では、サンプリングのときの重みとして、次に実験すべきデータがなるべく散らばるような重み付けを行っている。このような重み付けを用いることにより、従来の能動学習法よりも早く学習していることわかる。
【００５６】
《第５の実施形態》
次に、本発明の第５の実施形態について、図１０を参照して説明する。図１０に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、データ重み付け装置が設けられていない点で、第１の実施形態のものと相違する。データ重み付け装置が設けられていないことにより、データ統合装置１０８では、第２の実施形態の場合と同様に、出力結果が均等に扱われ、もっとも判断に迷うデータが出力されることになる。
【００５７】
図１１は、第５の実施形態の能動学習システムの効果を示している。図において、破線３１２は、従来の能動学習法を用いた場合のＲＯＣ曲線を示し、破線３１３は、本実施形態の能動学習システムを用いた場合におけるＲＯＣ曲線を示している。本実施形態では、サンプリング時には、あるクラス（値）の重みが重くなるような重み付けを行い、次に学習すべきデータを選択する時には、同様に、そのクラスの重みが重くなるような重み付けを行っている。図１１から分かるように、本実施形態によれば、学習の精度が向上し、また、予測重み付け装置の重みを変えることで、図示Ａ、Ｂ、Ｃ、Ｄにあるように、任意の精度で学習を行うことができるようになる。
【００５８】
《第６の実施形態》
次に、本発明の第６の実施形態について、図１２を参照して説明する。図１２に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、予測重み付け装置が設けられていない点で、第１の実施形態のものと相違する。予測重み付け装置が設けられていないことにより、規則統合装置１０７では、第２の実施形態の場合と同様に、学習機械１０６から出てきた結果がすべて均等に取り扱われ、多数決などの手段によって最終的な規則が出力されることになる。
【００５９】
図１３Ａ、１３Ｂは、第６の実施形態の能動学習システムの効果を示している。図１３Ａにおいて、破線３１４は、従来の能動学習法を用いた場合のヒット率を示し、実線３１５は、本実施形態の能動学習システムを用いた場合におけるヒット率を示している。図１３Ｂにおいて、破線３１６は、従来の能動学習法を用いた場合のＲＯＣ曲線を示し、実線３１７は、本実施形態の能動学習システムを用いた場合のＲＯＣ曲線を示している。本実施形態においては、サンプリング時には、あるクラス（値）の重みが重くなるように重み付けを行っており、次に学習すべきデータを選択するときも、同様に、そのクラスの重みが重くなるように重み付けを行っている。本実施形態によれば、対象となるクラス（値）の９割を従来のものよりも早く発見でき、また、学習精度も向上していることがわかる。
【００６０】
《第７の実施形態》
次に、本発明の第７の実施形態について、図１４を参照して説明する。図１４に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、サンプリング重み付け装置が設けられていない点で、第１の実施形態のものと相違する。サンプリング重み付け装置が設けられていないことにより、各サンプリング装置１０５では既知のデータがすべて均等に取り扱われ、ランダムなサンプリングが行われる。
【００６１】
図１５Ａ、図１５Ｂは、第７の実施形態の能動学習システムの効果を示している。図１５Ａにおいて、破線３１８は、従来の能動学習法を用いた場合のヒット率を示す、実線３１９は、本実施形態の能動学習システムを用いた場合のヒット率を示している。図１５Ｂにおいて、破線３２０は、本実施形態の能動学習システムを用いた場合におけるＲＯＣ曲線を示している。本実施形態では、次に学習すべきデータを選択するときの重み付けも、学習結果を統合するときの重み付けも、あるクラス（値）のデータの重みが重くなるようにした。本実施形態によれば、重みを重くしたクラスのデータが早く出力されており、また図示Ａ、Ｂ、Ｃ、Ｄに示されるように、任意の精度で学習を行えるようになっている。
【００６２】
《第８の実施形態》
次に、本発明の第８の実施形態について、図１６を参照して説明する。図１６に示す能動学習システムは、第１の実施形態の能動学習システムと同様のものであるが、グループ生成装置１１５が付加されているとともに、データ統合装置とそのデータ統合装置に接続する出力装置とがデータ統合選択装置１１４で置き換えられている点で相違する。データ統合選択装置１１４は、第１の実施形態のシステム（図１参照）におけるデータ統合装置１０８と出力装置１１２の機能を合わせ持つものであるが、次に学習すべきデータを選択する際に、グループ生成装置１１５でのグループ分けにしたがって、相互のデータがなるべくグループに散らばるように選択する。グループ選択装置１１４は、記憶装置１０１に格納されたラベル値が既知のデータ、または記憶装置１０９に格納されたラベル値が未知のデータ、もしくはその両者のデータをグループ分けするものである。
【００６３】
次に、本実施形態の能動学習システムの動作について、図１７に示すフローチャートを利用して説明する。ここでは、データは表形式で与えられるものとする。
【００６４】
まず、ステップ２１１において、ラベル値が既知のデータは記憶装置１０１に、ラベル値が未知のデータは記憶装置１０９に記憶される。グループ生成装置１１５は、ステップ２１２において、記憶装置１０１内の既知データと記憶装置１０９内の未知データに関してグループ分けを行う。グループ分けの結果は、グループ生成装置１１５からグループ情報として出力される。
【００６５】
次に、ステップ２１３において、サンプリング重み付け装置１０２は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、各サンプリング装置１０５に送る。各サンプリング装置１０５は、サンプリング重み付け装置１０２から送られてきた重みにしたがって重み付けを行いながら、記憶装置１０１内の既知データをサンプリングし、サンプリングしたデータを対応する学習機械１０６に送る。各学習機械１０６は、ステップ２１４において、サンプリング装置から送られてきたデータに基づいて学習を実行する。
【００６６】
記憶装置１０１からは予測重み付け装置１０３にもデータが送られており、ステップ２１５において、予測重み付け装置１０３は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、それらを規則統合装置１０７へ送る。規則統合装置１０７は、重み付けデータに基づいて、各学習機械１０６からの学習結果に重み付けを行いながらこれらの学習結果をまとめる。規則統合装置１０７は、学習結果をまとめた結果を規則として出力装置１１１に送る。
【００６７】
次に各学習機械１０６は、ステップ２１６において、記憶装置１０９に格納されたラベル値が未知のデータに対して予測を行い、その結果は、データ統合選択装置１１４に送られる。
【００６８】
このとき、記憶装置１０１からはデータ重み付け装置１０４にもデータが送られており、ステップ２１７において、データ重み付け装置１０４は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、それらをデータ統合選択装置１１４へ送る。データ統合選択装置１１４は、重み付けデータとグループ生成装置１１５からのグループ情報とに基づき、各学習機械１０６からの予測結果に重み付けを行いながらこれらの結果をまとめ、次に学習すべきデータを選択する。その際、データ統合選択装置１１４は、グループ生成装置８１４でのグループ分けにしたがって、お互いのデータがなるべくグループに散らばるように、次に学習すべきデータをする。
【００６９】
次に、ステップ２１８において、次に学習すべきデータに対する結果（ラベル値）が、結果入力装置１１３を介し、人手によって、あるいはコンピュータにより入力される。入力された結果は制御装置１１０に送られ、制御装置１１０は、その結果が入力されたデータを記憶装置１０９から削除し、その代わりに記憶装置１０１に記憶させる。以後、第１の実施形態の場合と同様に、上述の処理が繰り返され、能動学習が進行する。
【００７０】
図１８は、第８の実施形態の能動学習システムの効果を説明している。図において、破線３２１は、従来の能動学習法を用いた場合の正解率の推移を示し、破線３２２は、第１の実施形態の能動学習システムを用いた場合における正解率の推移を示し、実線３２３は、グループ生成装置１１５によって作成されたグループ情報をもとにして次に学習すべきデータを選択する本実施形態の能動学習システムを用いた場合における正解率の推移を示している。グループ生成装置によって生成されたグループの情報をもとにして、次に学習すべきデータを選択する際にお互いのデータがなるべく異なったグループに属するようにデータを選択することで、正解率を早い段階で高くすることができることがわかる。
【００７１】
なお、本実施形態は、サンプリング重み付け装置１０２、予測重み付け装置１０３及びデータ重み付け装置１０４のうちの一部または全部を設けない構成とすることもできる。
【００７２】
《第９の実施形態》
次に、本発明の第９の実施形態について、図１９を参照して説明する。図１９に示す能動学習システムは、第８の実施形態の能動学習システムと同様のものであるが、データ選択装置１１６が新たに設けられ、また、データ統合選択装置の代わりに第１の実施形態の場合と同様のデータ統合装置１０８及び出力装置１１２が設けられている点で、第８の実施形態のものと相違する。データ選択装置１１８は、グループ生成装置１１５からのグループ情報にしたがって、各学習機械１０６での予測の対象となる未知データを記憶装置１０９から選択し、選択された未知データを各学習機械１０６に送るものである。
【００７３】
この能動学習システムでは、グループ生成装置１１５で生成されたグループは、データ選択装置１１６に送られる。記憶装置１０９からは未知データがデータ選択装置１１６に送られる。データ選択装置１１６は、なるべく異なったグループに散らばるように未知データが選択して、選択されたデータが、予測のために学習機械１０６に送られる。データ統合装置１０８は、データ重み付け装置９０４で決定された重み付けを適用して、次に学習すべきデータを選択する。この能動学習システムは、第８の実施形態の能動学習システムと同様の効果を奏する。
【００７４】
なお、本実施形態は、サンプリング重み付け装置１０２、予測重み付け装置１０３及びデータ重み付け装置１０４のうちの一部または全部を設けない構成とすることもできる。
【００７５】
以上説明した能動学習システムは、それを実現するためのコンピュータプログラムを、パーソナルコンピュータやワークステーションなどのコンピュータに読み込ませ、そのプログラムを実行させることによっても実現できる。能動学習を行うためのプログラム（能動学習システム用プログラム）は、磁気テープやＣＤ−ＲＯＭなどの記録媒体によって、あるいはネットワークを介して、コンピュータに読み込まれる。そのようなコンピュータは、一般に、ＣＰＵと、プログラムやデータを格納するためのハードディスク装置と、主メモリと、キーボードやマウスなどの入力装置と、ＣＲＴや液晶ディスプレイなどの表示装置と、磁気テープやＣＤ−ＲＯＭ等の記録媒体を読み取る読み取り装置と、ネットワークとのインタフェースとなる通信インタフェースとから構成されている。ハードディスク装置、主メモリ、入力装置、表示装置、読み取り装置及び通信インタフェースは、いずれもＣＰＵに接続している。このコンピュータでは、能動学習を実行するためのプログラムを格納した記録媒体を読み取り装置に装着し、記録媒体からプログラムを読み出してハードディスク装置に格納し、あるいはそのようなプログラムをネットワークからダウンロードしてハードディスク装置に格納し、その後、ハードディスク装置に格納されたプログラムをＣＰＵが実行することにより、上述した能動学習が実行されることになる。
【００７６】
したがって本発明の範疇には、上述したプログラム、このようなプログラムを格納した記録媒体、このようなプログラムからなるプログラムプロダクトも含まれる。
【図面の簡単な説明】
【００７７】
【図１】図１は、本発明の第１の実施形態の能動学習システムの構成を示すブロック図である。
【図２】図２は、図１に示すシステムを用いた能動学習法の処理を示すフローチャートである。
【図３Ａ】図３Ａは、図１に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ヒット率を示すグラフである。
【図３Ｂ】図３Ｂは、図１に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線を示すグラフである。
【図３Ｃ】図３Ｃは、図１に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、正解率の推移を示すグラフである。
【図４】図４は、本発明の第２の実施形態の能動学習システムの構成を示すブロック図である。
【図５】図５は、図４に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線のグラフである。
【図６】図６は、本発明の第３の実施形態の能動学習システムの構成を示すブロック図である。
【図７】図７は、図６に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線のグラフである。
【図８】図８は、本発明の第４の実施形態の能動学習システムの構成を示すブロック図である。
【図９】図９は、図８に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、正解率推移を示すグラフである。
【図１０】図１０は、本発明の第５の実施形態の能動学習システムの構成を示すブロック図である。
【図１１】図１１は、図１０に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線のグラフである。
【図１２】図１２は、本発明の第６の実施形態の能動学習システムの構成を示すブロック図である。
【図１３Ａ】図１３Ａは、図１２に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ヒット率を示すグラフである。
【図１３Ｂ】図１３Ｂは、図１２に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線を示すグラフである。
【図１４】図１４は、本発明の第７の実施形態の能動学習システムの構成を示すブロック図である。
【図１５Ａ】図１５Ａは、図１４に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ヒット率を示すグラフである。
【図１５Ｂ】図１５Ｂは、図１４に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、ＲＯＣ曲線を示すグラフである。
【図１６】図１６は、本発明の第８の実施形態の能動学習システムの構成を示すブロック図である。
【図１７】図１７は、図１６に示すシステムを用いた能動学習法の処理を示すフローチャートである。
【図１８】図１８は、図１６に示すシステムによる能動学習法と従来の能動学習法とにおける学習精度を比較する、正解率推移を示すグラフである。
【図１９】図１９は、本発明の第９の実施形態の能動学習システムの構成を示すブロック図である。
【符号の説明】
【００７８】
１０１，１０９    記憶装置
１０２    サンプリング重み付け装置
１０３    予測重み付け装置
１０４    データ重み付け装置
１０５    サンプリング装置
１０６    学習機械
１０７    規則統合装置
１０８    データ統合装置
１１０    制御装置
１１１，１１２    出力装置
１１３    結果入力装置
１１４    データ統合選択装置
１１５    グループ生成装置
１１６    データ選択装置
【図１】
2009104632.tif 000003
【図２】
2009104632.tif 000004
【図３Ａ】
2009104632.tif 000005
【図３Ｂ】
2009104632.tif 000006
【図３Ｃ】
2009104632.tif 000007
【図４】
2009104632.tif 000008
【図５】
2009104632.tif 000009
【図６】
2009104632.tif 000010
【図７】
2009104632.tif 000011
【図８】
2009104632.tif 000012
【図９】
2009104632.tif 000013
【図１０】
2009104632.tif 000014
【図１１】
2009104632.tif 000015
【図１２】
2009104632.tif 000016
【図１３Ａ】
2009104632.tif 000017
【図１３Ｂ】
2009104632.tif 000018
【図１４】
2009104632.tif 000019
【図１５Ａ】
2009104632.tif 000020
【図１５Ｂ】
2009104632.tif 000021
【図１６】
2009104632.tif 000022
【図１７】
2009104632.tif 000023
【図１８】
2009104632.tif 000024
【図１９】
2009104632.tif 000025
【手続補正書】
【提出日】平成21年1月19日(2009.1.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の学習機械を有し、ラベル値が既知である既知データの集合と、ラベル値が未知である未知データの集合とを用いて、前記未知データのラベル値を予測する、コンピュータを使用してラベルを予測する方法であって、
前記複数の学習機械が、前記既知データの集合から独立にサンプリングを行い、学習を行う第１の段階と、
前記複数の学習機械が行った学習の結果を統合する第２の段階と、
前記複数の学習機械が、統合された学習結果を用いて未知データのラベル値を予測する第３の段階と、
前記未知データのラベル値の予測結果に基づいて、ラベル値が予測された未知データの中から、次に学習すべきデータを選択する第４の段階と、
選択された前記次に学習すべきデータに対応するラベル値として、予測されたラベル値を設定する第５の段階と、
前記ラベル値が設定されたデータを前記未知データの集合から削除して前記既知データの集合に追加する第６の段階と、
を有し、
前記第１の段階において前記既知データをサンプリングするときの前記既知データに対する均等でない重み付けを実行するラベル予測方法。
【請求項２】
前記第２の段階において前記複数の学習機械が行った学習の結果を統合するときの前記学習の結果に対する均等でない重み付けを実行する請求項１に記載のラベル予測方法。
【請求項３】
前記第４の段階において前記複数の学習機械による予測の結果に基づいて次に学習すべきデータを選択するときの前記次に学習すべきデータに対する均等でない重み付けを実行する請求項１または２に記載のラベル予測方法。
【請求項４】
前記第１乃至第７の段階を繰り返し実行し、該繰り返し実行の際に、前記第６の段階において前記ラベル値が設定されたデータが追加された前記既知データの集合を、前記第１の段階における既知データとして用い、前記第６の段階において前記ラベル値が設定されたデータが削除された前記未知データの集合を、前記第３の段階における未知データとして用いる、請求項１乃至３のいずれか１項に記載のラベル予測方法。
【請求項５】
前記第２の段階において、多数決に基づいて前記学習の結果を統合する、請求項１乃至４のいずれか１項に記載のラベル予測方法。
【請求項６】
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記未知データのラベル値を予測するラベル予測装置であって、
前記既知データの集合と前記未知データの集合とを格納する記憶装置と、
既知データの学習及び未知データの予測を行う複数の学習機械と、
前記学習機械ごとに設けられ、前記記憶装置から前記既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段と、
前記各学習機械が前記未知データに基づいて行った予測の結果に基づいて、ラベル値が予測された未知データの中から、次に学習すべきデータを選択する第２の統合手段と、
選択された前記次に学習すべきデータに対応するラベル値として、予測されたラベル値を設定する結果入力手段と、
前記ラベル値が設定されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段と、
前記既知データに対して均等でない重み付けがなされるように、前記サンプリング装置ごとにサンプリング時の重みを設定するサンプリング重み付け手段と、
を有するラベル予測システム。
【請求項７】
前記学習の結果に対して均等でない重み付けがなされるように、前記第１の統合手段で前記学習の結果を統合する際に用いられる重みを設定する予測重み付け手段を有する、請求項６に記載のラベル予測システム。
【請求項８】
前記次に学習すべきデータに対して均等でない重み付けがなされるように、前記第２の統合手段で前記次に学習すべきデータを選択する際に用いられる重みを設定するデータ重み付け手段を有する、請求項６または７に記載のラベル予測システム。
【請求項９】
前記サンプリング装置による前記記憶装置からのサンプリングと、前記各学習装置による学習と、前記第１の統合手段による前記学習の結果の統合と、前記各学習装置による予測と、前記第２の統合手段による前記次に学習すべきデータの選択と、前記結果入力手段による前記設定とを繰り返し実行し、該繰り返し実行の際に、前記ラベル値が設定されたデータが前記制御手段によって追加された前記既知データを前記サンプリングの対象とし、前記ラベル値が設定されたデータが前記制御手段によって削除された前記未知データを前記予測に用いる、請求項６乃至８のいずれか１項に記載のラベル予測システム。
【請求項１０】
前記第１の統合手段は、多数決に基づいて前記学習の結果を統合する、請求項６乃至９のいずれか１項に記載のラベル予測システム。
【請求項１１】
コンピュータを、
ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして前記既知データの集合と前記未知データの集合とを格納する記憶手段、
前記記憶手段から既知データをサンプリングするとともに既知データの学習及び未知データの予測を行う複数の学習手段、
前記各学習機械が前記既知データに基づいて行った学習の結果を統合する第１の統合手段、
前記各学習手段が前記未知データに基づいて行った予測の結果に基づいて、ラベル値が予測された未知データの中から、次に学習すべきデータを選択する第２の統合手段、
選択された前記次に学習すべきデータに対応するラベル値として、予測されたラベル値を設定する結果入力手段、
前記ラベル値が設定されたデータを前記未知データの集合から削除して前記既知データの集合に追加する制御手段、
均等でない重み付けに用いられる重みであって、前記学習手段が前記既知データをサンプリングするときの前記既知データに対する均等でない重み付けが実行されるように、前記重みを設定するサンプリング重み付け手段、
として機能させるプログラム。
【請求項１２】
前記コンピュータを、さらに、
均等でない重み付けに用いられる重みであって、前記第１の統合手段が前記複数の学習機械が行った学習の結果を統合するときの前記学習の結果に対する均等でない重み付けが実行されるように、前記重みを設定する予測重み付け手段、
として機能させる請求項１１に記載のプログラム。
【請求項１３】
前記コンピュータを、さらに、
均等でない重み付けに用いられる重みであって、前記第２の統合手段が前記複数の学習機械による予測の結果に基づいて次に学習すべきデータを選択するときの前記次に学習すべきデータに対する均等でない重み付けが実行されるように、前記重みを設定するデータ重み付け手段、
として機能させる請求項１１または１２に記載のプログラム。
【請求項１４】
前記コンピュータに、
前記サンプリングと、前記学習と、前記学習の結果の統合と、前記予測と、前記次に学習すべきデータの選択と、前記設定とを繰り返し実行させ、
該繰り返し実行の際に、前記ラベル値が設定されたデータが追加された前記既知データを前記サンプリングの対象とさせ、前記ラベル値が設定されたデータが削除された前記未知データを前記予測に用いさせる、請求項１１乃至１３のいずれか１項に記載のプログラム。
【請求項１５】
前記学習の結果の統合において、多数決に基づいて前記学習の結果を統合する、請求項１１乃至１４のいずれか１項に記載のプログラム。
【請求項１６】
コンピュータが読み取り可能な記録媒体であって、請求項１１乃至１５のいずれか１項に記載のプログラムを格納した記録媒体。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、能動学習を適用したラベル予測方法及びラベル予測システムに関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
後述する「発明を実施するための最良の形態」においては、これらの指標を用いて能動学習システムを評価している（図３Ａ〜３Ｃ、５、７、９、１１、１３Ａ、１３Ｂ、１５Ａ、１５Ｂ、１８を参照）。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
そこで本発明の目的は、能動学習法の精度を向上させつつ、利用者の意思で精度を制御することができ、また、興味のあるデータを先に抜き出すという機能なども備えるラベル予測方法を提供することにある。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
そこで本発明の別の目的は、能動学習法の精度を向上させつつ、利用者の意思で精度を制御することができ、また、興味のあるデータを先に抜き出すという機能なども備えるラベル予測システムを提供することにある。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
本発明の目的は、複数の学習機械を有し、ラベル値が既知である既知データの集合と、ラベル値が未知である未知データの集合とを用いて、未知データのラベル値を予測する、コンピュータを使用してラベルを予測する方法であって、複数の学習機械が、既知データの集合から独立にサンプリングを行い、学習を行う第１の段階と、複数の学習機械が行った学習の結果を統合する第２の段階と、複数の学習機械が、統合された学習結果を用いて未知データのラベル値を予測する第３の段階と、未知データのラベル値の予測結果に基づいて、ラベル値が予測された未知データの中から、次に学習すべきデータを選択する第４の段階と、選択された次に学習すべきデータに対応するラベル値として、予測されたラベル値を設定する第５の段階と、ラベル値が設定されたデータを未知データの集合から削除して既知データの集合に追加する第６の段階と、を有し、第１の段階において既知データをサンプリングするときの既知データに対する均等でない重み付けを実行するラベル予測方法によって達成される。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
本発明のラベル予測方法における重み付けでは、例えば、データ数に極端に偏りが発生しているときに、その比重を重くするようにする。さらにこの方法では、次に予測のために学習装置に入力すべきデータの選択において、選ばれてきた候補のデータの中から空間的なデータの分布を考慮に入れながらさらに選び出すというデータの分布に広がりを持たせる機構を付け加えることによって、お互いに似たようなデータを出力することを避けることができる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
本発明の他の目的は、ラベル値が既知のデータを既知データとしラベル値が未知のデータを未知データとして未知データのラベル値を予測するラベル予測装置であって、既知データの集合と未知データの集合とを格納する記憶装置と、既知データの学習及び未知データの予測を行う複数の学習機械と、学習機械ごとに設けられ、記憶装置から既知データをサンプリングして対応する学習機械に入力する複数のサンプリング装置と、各学習機械が既知データに基づいて行った学習の結果を統合する第１の統合手段と、各学習機械が未知データに基づいて行った予測の結果に基づいて、ラベル値が予測された未知データの中から、次に学習すべきデータを選択する第２の統合手段と、選択された次に学習すべきデータに対応するラベル値として、予測されたラベル値を設定する結果入力手段と、ラベル値が設定されたデータを未知データの集合から削除して既知データの集合に追加する制御手段と、既知データに対して均等でない重み付けがなされるように、前記サンプリング装置ごとにサンプリング時の重みを設定するサンプリング重み付け手段と、を有するラベル予測システムによって達成される。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
本発明のラベル予測システムにおける重み付けでは、例えば、データ数に極端に偏りが発生しているときに、その比重を重くするようにする。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
本発明では、学習データをサンプリングする際にデータに重み付けを行う。これによって、本発明によれば、対象となっているデータの重みを重くすることで重点的に学習を行うことができるので、対象となっているデータの、全体に対する割合が極めて低い状況下において、マイニングの精度を向上させながら、カバー率を向上させることができる。また、対象となっているデータの重みを軽くすることで、対象となっているものが未発見の領域の学習を行っていくことが可能になるため、対象となっているデータがさまざまな特徴に基づいているとき、それを、早期に発見できる。本発明ではさらに、入力候補点から入力点を選び出す際のデータへの重み付け、及び入力されたデータに対して予測を行う際のデータへの重み付け、のいずれかまたは両方の重み付けを行ってもよい。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２８
【補正方法】変更
【補正の内容】
【００２８】
本発明のラベル予測システムは、学習データをサンプリングする際にデータに重み付けを行うことにより、上述した本発明の目的を達しようとするものである。さらに、入力候補点から入力点を選び出す際のデータへの重み付け、及び、入力されたデータに対して予測を行う際のデータへの重み付け、の一方または両方を行なうようにしてもよい。これらの重み付けにおいては、データ数に極端に偏りが発生しているときに、その比重を重くするように重み付けを行っている。本発明は、どの段階で重み付けを行うかによって種々の実施形態が考えられる。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
以下、このような各種の実施形態について説明する。以下の説明では、本発明のラベル予測システムとしても機能するように構成された能動学習システムについて説明する。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
またデータ統合装置１０８においても同様に出力結果が均等に扱われ、もっとも判断に迷うデータが出力されることになる。具体的には、例えば、（１）ラベル値が離散値を取る場合に、各学習機械１０６が出力した結果からそのクラスごとに頻度を計算し、頻度を元にばらつき具合を示す数値を計算し、あるクラスと判断されたデータとばらつき具合を示す指標が最大もしくは最大付近のデータから、次に学習すべきデータを選択する。（２）ラベル値が連続値を取る場合に、各学習機械１０６が出力した結果からその分散を計算し、ある数値の付近にあるデータと分散が最大もしくは最大付近のデータから、次に学習すべきデータを選択する。（３）各学習機械１０６が出力した結果からその分散を計算し、特定のクラス以外のデータ（あるいはある数値付近にないデータ）であってかつ“分散が最小もしくは最小に近い”データから、次に学習すべきデータを選択する。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００６８
【補正方法】変更
【補正の内容】
【００６８】
このとき、記憶装置１０１からはデータ重み付け装置１０４にもデータが送られており、ステップ２１７において、データ重み付け装置１０４は、記憶装置１０１から送られてきたデータに基づいて重み（すなわち重み付けデータ）を生成し、あるいはそのような重みを読み込み、それらをデータ統合選択装置１１４へ送る。データ統合選択装置１１４は、重み付けデータとグループ生成装置１１５からのグループ情報とに基づき、各学習機械１０６からの予測結果に重み付けを行いながらこれらの結果をまとめ、次に学習すべきデータを選択する。その際、データ統合選択装置１１４は、グループ生成装置８１４でのグループ分けにしたがって、お互いのデータがなるべくグループに散らばるように、次に学習すべきデータを選択する。