(57)【要約】【課題】サンプリング結果の評価を効率良く行う。【解決手段】分類部２５１は、ラベルが設定された各レコードを、ラベルごとのグループに分類する。また、分割部２５２は、ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する。また、計算部２５３は、ラベルが同一であるＮ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、サンプルデータの候補のそれぞれについて、対応するラベルごとのグループとの合致度合いを計算する。また、抽出部２５４は、サンプルデータの候補から、計算部２５３によって計算された合致度合いが所定値以上であるサンプルデータを抽出する。【選択図】図２
2018190125.tif 000002
【特許請求の範囲】
【請求項１】
ラベルが設定された各レコードを、前記ラベルごとのグループに分類する分類部と、
前記ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する分割部と、
前記ラベルが同一である前記Ｎ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、前記サンプルデータの候補のそれぞれについて、対応する前記ラベルごとのグループとの合致度合いを計算する計算部と、
前記サンプルデータの候補から、前記計算部によって計算された合致度合いが所定値以上であるサンプルデータを抽出する抽出部と、
を有することを特徴とする抽出装置。
【請求項２】
前記計算部は、前記Ｎ個のグループからＭ個のグループを取り出した組合せの全通りをサンプルデータの候補とすることを特徴とする請求項１に記載の抽出装置。
【請求項３】
前記計算部は、前記サンプルデータの候補のそれぞれと、前記対応する前記ラベルごとのグループと、について、特徴量ごとの統計的性質に基づいて、前記特徴量ごとの合致度合いを計算し、
前記抽出部は、前記サンプルデータの候補から、前記特徴量ごとの合致度合いの合計が最も大きいサンプルデータを抽出することを特徴とする請求項１又は２に記載の抽出装置。
【請求項４】
前記抽出部は、前記サンプルデータの候補から、前記特徴量ごとの合致度合いのうち、所定の閾値以上である合致度合いの合計が最も大きいサンプルデータを抽出することを特徴とする請求項３に記載の抽出装置。
【請求項５】
前記計算部は、二標本コルモゴロフ・スミルノフ検定を用いて前記特徴量ごとの合致度合いを計算することを特徴とする請求項３又は４に記載の抽出装置。
【請求項６】
抽出装置と分析装置とを有する分析システムであって、
前記抽出装置は、
ラベルが設定された各レコードを、前記ラベルごとのグループに分類する分類部と、
前記ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する分割部と、
前記ラベルが同一である前記Ｎ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、前記サンプルデータの候補のそれぞれについて、対応する前記ラベルごとのグループとの合致度合いを計算する計算部と、
前記サンプルデータの候補から、前記計算部によって計算された合致度合いが所定値以上であるサンプルデータを抽出する抽出部と、を備え、
前記分析装置は、
予測モデルを構築する際に実行される複数の処理のそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する選択部と、
前記複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、前記選択部によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に、前記サンプルデータを結合したデータセットを用いて構築される予測モデルのそれぞれについて予測精度を計算する計算部と、
前記計算部によって計算された各予測精度を比較し、前記設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、前記選択部によって選択されたステップに対応する処理の設定内容に決定する決定部と、
を備えることを特徴とする分析システム。
【請求項７】
抽出装置によって実行される抽出方法であって、
ラベルが設定された各レコードを、前記ラベルごとのグループに分類する分類工程と、
前記ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する分割工程と、
前記ラベルが同一である前記Ｎ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、前記サンプルデータの候補のそれぞれについて、対応する前記ラベルごとのグループとの合致度合いを計算する計算工程と、
前記サンプルデータの候補から、前記計算工程によって計算された合致度合いが所定値以上であるサンプルデータを抽出する抽出工程と、
を含んだことを特徴とする抽出方法。
【請求項８】
コンピュータを、請求項１から５のいずれか１項に記載の抽出装置として機能させるための抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、抽出装置、分析システム、抽出方法及び抽出プログラムに関する。
【背景技術】
【０００２】
近年、機械学習を用いたデータ分析の適用事例が増加している。一方、データ分析に不可欠な統計や機械学習の知識の習得には、中長期的な教育が必要となる。そこで、非専門家が統計や機械学習の知識の習得を行うことなく、容易にデータ分析に従事できるよう、データ分析を支援する技術が開示されている。
【０００３】
例えば、逐次的最適化手法（ＳＭＢＯ：Sequential  model-based  optimization）を用いてパイプラインごとに精度の評価を行い、最適なパイプラインを探索する手法が知られている（例えば、非特許文献１及び２を参照）。なお、ここでは、パイプラインとは、予測モデルを構築する一連の処理であり、入力されたデータに対する前処理、ハイパーパラメータに基づくデータの学習等が含まれる。また、あらかじめ専門家が設計した多数のパイプラインの中から、分析対象のデータに適合した少数のパイプラインをユーザに提示する技術が知られている。
【０００４】
また、機械学習における予測モデルの構築に要する時間を短縮するため、サンプリングにより学習用のデータを削減する場合がある。サンプリングの手法としては、例えば、Random  Samling、Stratified  Sampling、Under  Sampling  Random  Samplingが知られている（例えば、非特許文献３を参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Matthias  Feurer，Aaron  Klein，Katharina  Eggensperger，Jost  Tobias  Springenberg，Manuel  Blum，Frank  Hutter，“Efficient  and  Robust  Automated  Machine  Learning”，NIPS'15  Proceedings  of  the  28th  International  Conference  on  Neural  Information  Processing  Systems，2015年12月，PP.2755-2763
【非特許文献２】Lisha  Li，Kevin  Jamieson，Giulia  DeSalvo，Afshin  Rostamizadeh，Ameet  Talwalkar，“Hyperband:A  Novel  Bandit-Based  Approach  to  Hyperparameter  Optimization”，arXiv:1603.06560v3，cs.LG，2016年11月
【非特許文献３】Z.Reitermanova,“Data  Splitting”,WDS'10  Proceedings  of  Contributed  Papers,  Part  I,  31-36,  2010.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、サンプリングの手法には、サンプリング結果の評価を効率良く行うことができない場合があるという問題があった。例えば、従来のサンプリングの手法では、サンプリング結果の評価を行うために、サンプリングしたデータを用いて予測モデルの精度検証を行う場合があった。この場合、サンプリングしたデータを用いて予測モデルを構築することになるため、効率が悪くなることがある。
【課題を解決するための手段】
【０００７】
本発明の抽出装置は、ラベルが設定された各レコードを、前記ラベルごとのグループに分類する分類部と、前記ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する分割部と、前記ラベルが同一である前記Ｎ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、前記サンプルデータの候補のそれぞれについて、対応する前記ラベルごとのグループとの合致度合いを計算する計算部と、前記サンプルデータの候補から、前記計算部によって計算された合致度合いが所定値以上であるサンプルデータを抽出する抽出部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、サンプリング結果の評価を効率良く行うことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係る分析システムの構成の一例を示す図である。
【図２】図２は、第１の実施形態に係る抽出装置の構成の一例を示す図である。
【図３】図３は、第１の実施形態に係るサンプルデータの抽出について説明するための図である。
【図４】図４は、第１の実施形態に係る分析装置の構成の一例を示す図である。
【図５】図５は、第１の実施形態に係る分析装置の処理概要を説明するための図である。
【図６】図６は、第１の実施形態に係る抽出装置の処理の流れを示すフローチャートである。
【図７】図７は、第１の実施形態の効果を説明するための図である。
【図８】図８は、抽出プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１１】
［第１の実施形態の概要］
まず、図１を用いて、第１の実施形態に係る分析システムについて説明する。図１は、第１の実施形態に係る分析システムの構成の一例を示す図である。図１に示すように、分析システム１は、抽出装置２０及び分析装置４０を有する。
【００１２】
分析システム１は、機械学習によるデータ分析を支援するためのシステムである。ここで、機械学習によるデータ分析を行う場合、予測モデルを構築する一連の処理であるパイプラインが決定される場合がある。例えば、パイプラインの決定は、予測モデルに関する複数の設定項目ごとの設定内容の候補を選択肢として用意しておき、選択肢の中から設定内容を順次決定することで行うことができる。
【００１３】
分析装置４０は、入力されたデータを分析し設定内容を決定する処理を自動的に行う。このとき、分析装置４０に入力されるデータのサイズが大きいほど、最終的に構築される予測モデルの予測精度は向上することが考えられる。しかしながら、分析装置４０に入力されるデータのサイズが大きいほど分析に要する時間も増加するため、限られた時間での分析が求められる場合等、用意された全てのデータを分析装置４０に入力し分析させることが難しい場合がある。
【００１４】
そこで、抽出装置２０は、用意された学習用データセット１０から、サンプルデータセット３０を抽出する。そして、分析装置４０には、学習用データセット１０と比べてサイズが小さいサンプルデータセット３０が入力される。これにより、分析装置４０が分析に要する時間を減らすことができる。一方で、サンプルデータセット３０が分析装置４０に入力される場合、学習用データセット１０が分析装置４０に入力される場合と比べ、最終的に構築される予測モデルの予測精度は低下する。
【００１５】
そのため、抽出装置２０は、予測モデルの予測精度をなるべく低下させないようにサンプルデータセット３０の抽出を行う。つまり、抽出装置２０は、学習用データセット１０のもつ所定の統計的な性質と、サンプルデータセット３０のもつ当該性質とが、なるべく近くなるようにサンプルデータセット３０を抽出する。
【００１６】
［抽出装置の構成］
次に、図２を用いて、抽出装置２０の構成について説明する。図２は、第１の実施形態に係る抽出装置の構成の一例を示す図である。図２に示すように、抽出装置２０は、ワークステーションやパソコン等の汎用コンピュータで実現され、入力部２１と、出力部２２と、通信制御部２３と、記憶部２４と、制御部２５とを備える。
【００１７】
入力部２１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部２５に対して各種指示情報を入力する。出力部２２は、液晶ディスプレイ等の表示装置、プリンター等の印刷装置、情報通信装置等によって実現される。また、出力部２２は、サンプルデータセット３０を分析装置４０に直接出力してもよい。
【００１８】
通信制御部２３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネット等の電気通信回線を介した管理サーバ等の外部の装置と制御部２５との通信を制御する。
【００１９】
記憶部２４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部２４には、抽出装置２０を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータ等があらかじめ記憶され、あるいは処理の都度一時的に記憶される。記憶部２４は、通信制御部２３を介して制御部２５と通信する構成でもよい。
【００２０】
制御部２５は、ＣＰＵ（Central  Processing  Unit）等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図２に例示するように、分類部２５１、分割部２５２、計算部２５３及び抽出部２５４として機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００２１】
ここで、図３を用いて、分類部２５１、分割部２５２、計算部２５３及び抽出部２５４による処理について説明する。図３は、第１の実施形態に係るサンプルデータの抽出について説明するための図である。ここで、学習用データセット１０は、レコードの集合である。また、学習用データセット１０の各レコードには、所定のラベルが付されている。また、各レコードは１つ以上の特徴量を有する。
【００２２】
ここでは、一例として、学習用データセット１０の各レコードには、Ａ、Ｂ及びＣのうちのいずれかのラベルが付されていることとする。また、一例として、学習用データセット１０のレコードのうち、ラベルＡ、Ｂ及びＣのそれぞれが付されたレコードの数を、それぞれ１０００、３０００及び５００とする。なお、学習用データセット１０の各レコードに付されるラベル、及び各ラベルが付されるレコードの数は、上記のものに限定されず、分析の際に用意されたデータによって異なる。
【００２３】
分類部２５１は、ラベルが設定された各レコードを、ラベルごとのグループに分類する。図３に示すように、分類部２５１は、学習用データセット１０のレコードのうち、ラベルＡが付されたレコードをグループ１０Ａに分類し、ラベルＢが付されたレコードをグループ１０Ｂに分類し、ラベルＣが付されたレコードをグループ１０Ｃに分類する。このとき、グループ１０Ａ、１０Ｂ及び１０Ｃのレコードの数は、それぞれ１０００、３０００及び５００である。
【００２４】
分割部２５２は、ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する。Ｎは、あらかじめ設定された任意の正の整数である。また、例えば、分割部２５２は、ラベルごとのグループのそれぞれをランダムに分割する。
【００２５】
ここでは、一例として、Ｎ＝１０とする。つまり、図３に示すように、分割部２５２は、グループ１０Ａをグループ１０Ａ−１〜１０Ａ−１０の１０個のグループに分割する。また、分割部２５２は、グループ１０Ｂをグループ１０Ｂ−１〜１０Ｂ−１０の１０個のグループに分割する。また、分割部２５２は、グループ１０Ｃをグループ１０Ｃ−１〜１０Ｃ−１０の１０個のグループに分割する。このとき、グループ１０Ａ−１〜１０Ａ−１０のレコードの数は、いずれも１００である。また、グループ１０Ｂ−１〜１０Ｂ−１０のレコードの数は、いずれも３００である。また、グループ１０Ｃ−１〜１０Ｃ−１０のレコードの数は、いずれも５０である。
【００２６】
計算部２５３は、ラベルが同一であるＮ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とする。Ｍは、あらかじめ設定された任意の正の整数である。また、例えば、計算部２５３は、Ｎ個のグループからＭ個のグループを取り出した組合せの全通りをサンプルデータの候補としてもよいし、一部をサンプルデータの候補としてもよい。
【００２７】
ここでは、一例として、Ｍ＝２とする。また、計算部２５３は、取り出し得る全通りの組合せをサンプルデータの候補とすることとする。つまり、図３に示すように、計算部２５３は、グループ１０Ａ−１からグループ１０Ａ−１０までの１０個のグループから、２個のグループを取り出した組合せの全通り、すなわち１０Ｃ２＝４５通りの組合せのそれぞれをサンプルデータの候補とする。このとき、データ１１Ａ−１〜１１Ａ−４５がサンプルデータの候補である。
【００２８】
同様に、計算部２５３は、グループ１０Ｂ−１からグループ１０Ｂ−１０までの１０個のグループから、２個のグループを取り出した組合せの全通りをサンプルデータの候補とする。このとき、データ１１Ｂ−１〜１１Ｂ−４５がサンプルデータの候補である。また、計算部２５３は、グループ１０Ｃ−１からグループ１０Ｃ−１０までの１０個のグループから、２個のグループを取り出した組合せの全通りをサンプルデータの候補とする。このとき、データ１１Ｃ−１〜１１Ｃ−４５がデータの候補である。
【００２９】
なお、データ１１Ａ−１〜１１Ａ−４５、データ１１Ｂ−１〜１１Ｂ−４５、及びデータ１１Ｃ−１〜１１Ｃ−４５は、取り出されたグループのレコードを結合したデータである。例えば、データ１１Ａ−１は、グループ１０Ａ−１のレコード、及びグループ１０Ａ−２のレコードを結合したデータである。
【００３０】
また、計算部２５３は、サンプルデータの候補のそれぞれについて、対応するラベルごとのグループとの合致度合いを計算する。例えば、計算部２５３は、データ１１Ａ−１と、グループ１０Ａとの合致度合いを計算する。同様に、計算部２５３は、データ１１Ａ−２〜１１Ａ−４５のそれぞれと、グループ１０Ａとの合致度合いを計算する。また、計算部２５３は、データ１１Ｂ−１〜１１Ｂ−４５のそれぞれと、グループ１０Ｂとの合致度合いを計算する。また、計算部２５３は、データ１１Ｃ−１〜１１Ｃ−４５のそれぞれと、グループ１０Ｃとの合致度合いを計算する。そして、抽出部２５４は、サンプルデータの候補から、計算部２５３によって計算された合致度合いが所定値以上であるサンプルデータを抽出する。
【００３１】
例えば、計算部２５３は、サンプルデータの候補のそれぞれと、対応するラベルごとのグループと、について、特徴量ごとの統計的性質に基づいて、特徴量ごとの合致度合いを計算する。そして、抽出部２５４は、サンプルデータの候補から、特徴量ごとの合致度合いの合計が最も大きいサンプルデータを抽出する。また、抽出部２５４は、サンプルデータの候補から、特徴量ごとの合致度合いのうち、所定の閾値以上である合致度合いの合計が最も大きいサンプルデータを抽出してもよい。また、抽出部２５４は、各ラベルについて抽出したサンプルデータのレコードを結合したデータをサンプルデータセット３０とする。
【００３２】
具体的には、計算部２５３は、二標本コルモゴロフ・スミルノフ検定を用いて特徴量ごとの合致度合いを計算することができる。二標本コルモゴロフ・スミルノフ検定とは、第１のデータ配列及び第２のデータ配列を与えると、各データ配列の確率分布が同一であるか否かを示す検定値ｐを返却するに標本検定手法である。ここで、ｐは、［０，１］の値域を取る。例えば、計算部２５３は、サンプルデータの候補のレコードごとの所定の特徴量を第１のデータ配列とし、グループ１０Ａのレコードの当該所定の特徴量を第２のデータ配列とすることができる。
【００３３】
例えば、抽出部２５４は、データ１１Ａ−１〜１１Ａ−４５のそれぞれから、グループ１０Ａに対する特徴量ごとの検定値ｐの合計を計算し、当該合計が最も大きいデータをサンプルデータとして抽出する。ただし、抽出部２５４は、所定の閾値以下である検定値ｐを除外して合計を計算してもよい。
【００３４】
また、抽出部２５４は、あるラベルについて抽出したサンプルデータの特徴量のうちのいずれかの検定値ｐが所定の閾値以下である場合、サンプルデータセット３０が学習用データセット１０の特徴を保持していないと判断し、サンプルデータセット３０を破棄してもよい。この場合、抽出装置２０は、例えば、変更されたＮ及びＭの値を用いて、再度サンプルデータセット３０の抽出を行うことができる。
【００３５】
なお、Ｎ及びＭは、それぞれ１０及び２に限られず、任意の正の整数とすることができる。また、Ｍ÷Ｎはサンプルデータセット３０のサンプル率に等しい。つまり、Ｎ及びＭを手動又は自動で設定することで、サンプルデータセット３０のサンプル率を設定することができる。
【００３６】
［分析装置の構成］
図４を用いて、分析装置４０の構成について説明する。図４は、第１の実施形態に係る分析装置の構成の一例を示す図である。図４に示すように、分析装置４０は、ワークステーションやパソコン等の汎用コンピュータで実現され、入力部４１と、出力部４２と、通信制御部４３と、記憶部４４と、制御部４５とを備える。
【００３７】
入力部４１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部４５に対して各種指示情報を入力する。出力部４２は、液晶ディスプレイ等の表示装置、プリンター等の印刷装置、情報通信装置等によって実現され、データ分析の結果等を操作者に対して出力する。
【００３８】
通信制御部４３は、ＮＩＣ等で実現され、ＬＡＮやインターネット等の電気通信回線を介した管理サーバ等の外部の装置と制御部４５との通信を制御する。通信制御部４３は、例えば抽出装置２０との通信を制御する。
【００３９】
記憶部４４は、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部４４には、分析装置４０を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータ等があらかじめ記憶され、あるいは処理の都度一時的に記憶される。記憶部４４は、通信制御部４３を介して制御部４５と通信する構成でもよい。
【００４０】
制御部４５は、ＣＰＵ等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図４に例示するように、選択部４５１、計算部４５２、決定部４５３及び検証部４５４として機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００４１】
選択部４５１は、予測モデルを構築する際に実行される複数の処理、すなわちパイプラインのそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する。決定部４５３は、各ステップの設定内容を、設定内容候補の中から決定する。このとき、選択部４５１は、所定の実行順序に従って、設定内容が決定された次のステップを選択する。なお、いずれのステップも未実行である場合、選択部４５１は実行順序が最も前であるステップを選択する。
【００４２】
図５は、第１の実施形態に係る分析装置の処理概要を説明するための図である。例えば、図５に示すように、ステップ「正規化手法探索」の次のステップは「特徴選択手法探索」なので、ステップ「正規化手法探索」の設定内容が決定された場合、選択部４５１は、次のステップとして「特徴選択手法探索」を選択する。
【００４３】
また、図５のステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」は、それぞれ、学習用及び分析用のデータの前処理である欠損値補完、正規化及び特徴選択の設定内容を決定する前処理決定ステップである。また、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」の設定内容候補は、それぞれ、欠損値補完、正規化及び特徴選択で用いられる手法である。また、ステップ「ハイパーパラメータ探索」は、前処理決定ステップより後に実行され、予測器のアルゴリズム及びハイパーパラメータを設定内容として決定する予測器決定ステップである。
【００４４】
計算部４５２は、複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、選択部４５１によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合にサンプルデータセット３０を用いて構築される予測モデルのそれぞれについて予測精度を計算する。
【００４５】
例えば、選択部４５１によってステップ「特徴選択手法探索」が選択された場合、ステップ「特徴選択手法探索」よりも実行順序が前であるステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は決定済みであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」で決定された設定内容と、ステップ「特徴選択手法探索」の設定内容の候補のそれぞれを適用した予測モデルの構築が可能である。このとき、ステップ「特徴選択手法探索」の設定内容の候補は４つであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が１つに決定されている場合、少なくとも４通りの予測モデルが構築可能である。
【００４６】
そして、計算部４５２は、構築可能な予測モデルそれぞれについて予測精度を計算する。なお、このとき、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は複数通り決定されていてもよい。例えば、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が２通り決定されている場合、構築可能な予測モデルの数は少なくとも８通りである。
【００４７】
また、例えば、選択部４５１によってステップ「ハイパーパラメータ探索」が選択された場合、ステップ「ハイパーパラメータ探索」よりも実行順序が前であるステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」の設定内容は決定済みであるため、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」で決定された設定内容と、ステップ「ハイパーパラメータ探索」の設定内容の候補のそれぞれを適用した予測モデルの構築が可能である。そして、計算部４５２は、構築可能な予測モデルそれぞれについて予測精度を計算する。
【００４８】
決定部４５３は、計算部４５２によって計算された各予測精度を比較し、設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、選択部４５１によって選択されたステップに対応する処理の設定内容に決定する。
【００４９】
例えば、図５に示すように、ステップ「正規化手法探索」では、計算部４５２は、設定内容「最大最小」に対応する予測モデルの予測精度を７２％と計算し、設定内容「標準化」に対応する予測モデルの予測精度を７８％と計算し、設定内容「Ｚスコア」に対応する予測モデルの予測精度を７２％と計算し、設定内容「無処理」に対応する予測モデルの予測精度を７０％と計算した。このとき、ステップ「正規化手法探索」において最も予測精度が高い予測モデルは設定内容「標準化」に対応する予測モデルであるため、決定部４５３は、ステップ「正規化手法探索」に対応する設定項目の設定内容を「標準化」に決定する。つまり、決定部４５３は、データの前処理である正規化で用いられる手法を標準化に決定する。
【００５０】
そして、前述の通り、選択部４５１は、決定部４５３によって設定内容が決定されたステップの次に実行されるステップを選択する。例えば、決定部４５３によってステップ「正規化手法探索」における設定内容が決定された場合、選択部４５１は、ステップ「特徴選択手法探索」を選択する。
【００５１】
検証部４５４は、決定部４５３によって決定された設定内容が適用された一連の処理、すなわち、決定されたパイプラインに基づいて構築される予測モデルの検証を行う。決定部４５３によって全てのステップの設定内容が決定されると、検証部４５４は、決定されたパイプラインに基づいて予測器にサンプルデータセット３０を学習させ、予測モデルを構築する。そして、検証部４５４は、サンプルデータセット３０とは別のテスト用データを用いて、構築した予測モデルの予測精度をテスト精度として測定する。例えば、分析装置４０は、ここで測定されたテスト精度を最終的な出力としてもよい。また、サンプルデータセット３０と異なるテスト用データを用いた検証を行うことで、過学習状態及び未学習状態の確認が可能となる。
【００５２】
［第１の実施形態の処理］
図６を用いて、第１の実施形態に係る抽出装置２０の処理の流れについて説明する。図６は、第１の実施形態に係る抽出装置の処理の流れを示すフローチャートである。図６に示すように、まず、分類部２５１は、学習用データセット１０のレコードをラベルごとのグループに分類する（ステップＳ１０１）。
【００５３】
次に、分割部２５２は、ラベルごとのグループをそれぞれＮ個のグループに分割する（ステップＳ１０２）。そして、計算部２５３は、Ｎ個のグループからＭ個のグループを取り出した組合せをサンプルデータの候補とし（ステップＳ１０３）、サンプルデータの候補のそれぞれと、ラベルごとのグループとの合致度合いを計算する（ステップＳ１０４）。そして、抽出部２５４は、サンプルデータの候補のうち、合致度合いが所定値以上であるサンプルデータを抽出する（ステップＳ１０５）。
【００５４】
［第１の実施形態の効果］
分類部２５１は、ラベルが設定された各レコードを、ラベルごとのグループに分類する。また、分割部２５２は、ラベルごとのグループのそれぞれを、Ｎ個のグループに分割する。また、計算部２５３は、Ｎ個のグループからＭ個のグループを取り出した組合せのそれぞれをサンプルデータの候補とし、サンプルデータの候補のそれぞれについて、対応するラベルごとのグループとの合致度合いを計算する。また、抽出部２５４は、サンプルデータの候補から、計算部２５３によって計算された合致度合いが所定値以上であるサンプルデータを抽出する。
【００５５】
従来手法では、予測モデルの構築に用いられるデータのサンプリングを行う場合、サンプリング結果の評価を行うために、サンプルデータを用いて予測モデルを構築し、構築した予測モデルの精度を検証する場合があった。一方、本実施形態によれば、サンプルデータと学習用データセット１０との統計的な性質に基づく合致度合いを用いてサンプリング結果の評価を行うことができるため、逐一予測モデルを構築する必要がなくなり、効率良くサンプリング結果の評価を行うことができるようになる。
【００５６】
計算部２５３は、Ｎ個のグループからＭ個のグループを取り出した組合せの全通りをサンプルデータの候補とすることができる。これにより、全てのレコードを用いたうえで、効率良くサンプリング結果を行うことができる。
【００５７】
計算部２５３は、サンプルデータの候補のそれぞれと、対応するラベルごとのグループと、について、特徴量ごとの統計的性質に基づいて、特徴量ごとの合致度合いを計算することができる。このとき、抽出部２５４は、サンプルデータの候補から、特徴量ごとの合致度合いの合計が最も大きいサンプルデータを抽出する。これにより、複数の特徴量の影響を考慮したサンプリング結果の評価を行うことができる。
【００５８】
抽出部２５４は、サンプルデータの候補から、特徴量ごとの合致度合いのうち、所定の閾値以上である合致度合いの合計が最も大きいサンプルデータを抽出することができる。これにより、学習用データセット１０の性質を保持していない特徴量がサンプリング結果の評価に影響を与えないようにすることができる。
【００５９】
計算部２５３は、二標本コルモゴロフ・スミルノフ検定を用いて特徴量ごとの合致度合いを計算することができる。これにより、サンプルデータが学習用データセット１０の統計的な性質を保持しているか否かを、特徴量ごとに判断することができる。
【００６０】
図７に、本実施形態を用いてサンプルデータセット３０を抽出した際の抽出結果示す。図７は、第１の実施形態の効果を説明するための図である。図７の各グラフは、特徴量１０１、１０２及び１０３の値を横軸に取った場合のデータごとの度数分布である。図７に示すように、サンプルデータセット３０には、学習用データセット１０と同様の特徴が現れている。
【００６１】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６２】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６３】
［プログラム］
一実施形態として、抽出装置２０は、パッケージソフトウェアやオンラインソフトウェアとして上記の抽出を実行する抽出プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の抽出プログラムを情報処理装置に実行させることにより、情報処理装置を抽出装置２０として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００６４】
また、抽出装置２０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の抽出に関するサービスを提供する抽出サーバ装置として実装することもできる。例えば、抽出サーバ装置は、学習用データセット１０を入力とし、サンプルデータセット３０を出力とする抽出サービスを提供するサーバ装置として実装される。この場合、抽出サーバ装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の抽出に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００６５】
図８は、抽出プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６６】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６７】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、抽出装置２０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、抽出装置２０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【００６８】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００６９】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７０】
１０  学習用データセット
２０  抽出装置
３０  サンプルデータセット
４０  分析装置
２１、４１  入力部
２２、４２  出力部
２３、４３  通信制御部
２４、４４  記憶部
２５、４５  制御部
２５１  分類部
２５２  分割部
２５３  計算部
２５４  抽出部
４５１  選択部
４５２  計算部
４５３  決定部
４５４  検証部
【図１】
2018190125.tif 000003
【図２】
2018190125.tif 000004
【図３】
2018190125.tif 000005
【図４】
2018190125.tif 000006
【図５】
2018190125.tif 000007
【図６】
2018190125.tif 000008
【図７】
2018190125.tif 000009
【図８】
2018190125.tif 000010