(57)【要約】【課題】予測精度の高い予測モデルを効率良く構築することができる。【解決手段】選択部１５１は、予測モデルを構築するパイプラインを決定するためのステップのそれぞれに対応する設定項目の設定内容が決定されるたびに、次のステップを選択する。計算部１５２は、選択部１５１によって選択されたステップより前のステップに対応する設定項目の設定内容と、選択部１５１によって選択されたステップに対応する設定項目の複数の設定内容の候補のそれぞれと、が適用されたパイプラインのそれぞれに基づいて構築された予測モデルのそれぞれについて予測精度を計算する。また、決定部１５３は、計算部１５２によって計算された各予測精度を比較し、予測モデルのうち最も予測精度が高い予測モデルを特定し、特定した予測モデルに対応するパイプラインに適用された設定内容の候補を、設定項目の設定内容に決定する。【選択図】図２
2018190126.tif 000002
【特許請求の範囲】
【請求項１】
予測モデルを構築する際に実行される複数の処理のそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する選択部と、
前記複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、前記選択部によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する計算部と、
前記計算部によって計算された各予測精度を比較し、前記設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、前記選択部によって選択されたステップに対応する処理の設定内容に決定する決定部と、
を有することを特徴とする分析装置。
【請求項２】
前記計算部は、所定数に分割した学習用のデータを用いた交差検証を行うことで前記予測精度を計算することを特徴とする請求項１に記載の分析装置。
【請求項３】
前記選択部は、学習用及び分析用のデータの前処理で用いられる手法を設定内容として決定するステップである前処理決定ステップと、前記前処理決定ステップより後に実行され、予測器のアルゴリズム及びハイパーパラメータを設定内容として決定するステップである予測器決定ステップと、のそれぞれにおいて設定内容が決定されるたびに、前記設定内容が決定されたステップの次に実行されるステップを選択することを特徴とする請求項１又は２に記載の分析装置。
【請求項４】
前記計算部は、計算した前記予測精度を複数の指標で表し、
前記決定部は、前記設定内容の候補のうち前記複数の指標のいずれかが最も良くなる設定内容の候補を、前記選択部によって選択されたステップに対応する処理の設定内容に決定することを特徴とする請求項１から３のいずれか１項に記載の分析装置。
【請求項５】
前記計算部は、複数の予測器の候補のそれぞれを用いた予測精度を計算することを特徴とする請求項１から４のいずれか１項に記載の分析装置。
【請求項６】
前記選択部は、複数の予測器の候補から予測器を順次選択し、予測器を選択するたびに、予測モデルを構築する際に実行される複数の処理のそれぞれに対応する前記ステップを選択し、
前記計算部は、前記選択部によって選択された予測器を用いた予測モデルについて予測精度を計算することを特徴とする請求項１から４のいずれか１項に記載の分析装置。
【請求項７】
分析装置で実行される分析方法であって、
予測モデルを構築する際に実行される複数の処理のそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する選択工程と、
前記複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、前記選択工程によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する計算工程と、
前記計算工程によって計算された各予測精度を比較し、前記設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、前記選択工程によって選択されたステップに対応する処理の設定内容に決定する決定工程と、
を含んだことを特徴とする分析方法。
【請求項８】
コンピュータを、請求項１から６のいずれか１項に記載の分析装置として機能させるための分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分析装置、分析方法及び分析プログラムに関する。
【背景技術】
【０００２】
近年、機械学習を用いたデータ分析の適用事例が増加している。一方、データ分析に不可欠な統計や機械学習の知識の習得には、中長期的な教育が必要となる。そこで、非専門家が統計や機械学習の知識の習得を行うことなく、容易にデータ分析に従事できるよう、データ分析を支援する技術が開示されている。
【０００３】
例えば、逐次的最適化手法（ＳＭＢＯ：Sequential  model-based  optimization）を用いてパイプラインごとに精度の評価を行い、最適なパイプラインを探索する手法が知られている（例えば、非特許文献１及び２を参照）。なお、ここでは、パイプラインとは、予測モデルを構築する一連の処理であり、入力されたデータに対する前処理、ハイパーパラメータに基づくデータの学習等が含まれる。また、あらかじめ専門家が設計した多数のパイプラインの中から、分析対象のデータに適合した少数のパイプラインをユーザに提示する技術が知られている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】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月
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のデータ分析を自動化する技術には、予測精度の高い予測モデルを効率良く構築することができない場合があるという問題があった。例えば、ＳＭＢＯを用いた各種手法は、パイプラインを構成する処理が増加すると、ランダムに探索を行った場合と比べて、構築される予測モデルの精度に大差がなくなる場合がある。また、専門家が設計した分析手法に基づく方法では、分析対象のデータとして想定外のデータが入力された場合、予測精度の高い予測モデルを構築可能なパイプラインをユーザに提示することができない場合があるという問題があった。
【課題を解決するための手段】
【０００６】
本発明の分析装置は、予測モデルを構築する際に実行される複数の処理のそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する選択部と、前記複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、前記選択部によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する計算部と、前記計算部によって計算された各予測精度を比較し、前記設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、前記選択部によって選択されたステップに対応する処理の設定内容に決定する決定部と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、予測精度の高い予測モデルを効率良く構築することができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係る分析装置の処理概要を説明するための図である。
【図２】図２は、第１の実施形態に係る分析装置の構成の一例を示す図である。
【図３】図３は、第１の実施形態に係る設定情報のデータ構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る予測器情報のデータ構成の一例を示す図である。
【図５】図５は、第１の実施形態に係る交差検証について説明するための図である。
【図６】図６は、第１の実施形態に係る予測モデルの検証について説明するための図である。
【図７】図７は、第１の実施形態に係る各ステップの処理の一例を示す図である。
【図８】図８は、第１の実施形態に係る各ステップの処理の一例を示す図である。
【図９】図９は、第１の実施形態に係る各ステップの処理の一例を示す図である。
【図１０】図１０は、第１の実施形態に係る分析装置の処理の流れを示すフローチャートである。
【図１１】図１１は、第１の実施形態に係る分析装置の処理の流れを示すフローチャートである。
【図１２】図１２は、第２の実施形態に係る分析装置の処理概要を説明するための図である。
【図１３】図１３は、第２の実施形態に係る分析装置の処理の流れを示すフローチャートである。
【図１４】図１４は、第３の実施形態に係る分析装置の処理概要を説明するための図である。
【図１５】図１５は、分析プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１０】
［第１の実施形態の概要］
第１の実施形態に係る分析装置は、機械学習によるデータ分析を支援するための装置である。ここで、機械学習によるデータ分析を行う場合、予測モデルを構築する一連の処理であるパイプラインが決定される。例えば、パイプラインの決定は、予測モデルに関する複数の設定項目ごとの設定内容の候補を選択肢として用意しておき、選択肢の中から設定内容を順次決定することで行うことができる。第１の実施形態に係る分析装置は入力されたデータを分析し設定内容を決定する処理を自動的に行う。
【００１１】
図１を用いて、第１の実施形態に係る分析装置１０の処理概要を説明する。図１は、第１の実施形態に係る分析装置の処理概要を説明するための図である。図１に示すように、分析装置１０は、予測モデルを構築する際に実行される複数の処理に対応するステップを順次実行することで、各設定項目の設定内容の決定を行う。例えば、分析装置１０は、各ステップにおいて、前処理で用いられる手法、予測器のアルゴリズム及びハイパーパラメータ等を決定する。
【００１２】
例えば、分析装置１０は、ステップ１では、前処理の１つである欠損値補完で用いられる手法を、平均値、中央値、最頻値、削除の中から決定する。このとき、分析装置１０は、学習用データ２０の欠損値補完に平均値、中央値、最頻値、削除の各手法を用いた場合のそれぞれについて、構築される予測モデルの予測精度を計算し、予測モデルの予測精度が最も高くなる手法を欠損値補完の手法に決定する。図１の例では、平均値を用いた場合の予測精度が６０％、中央値を用いた場合の予測精度が６５％、最頻値を用いた場合の予測精度が７０％、削除を用いた場合の予測精度が６２％であり、最頻値を用いた場合に最も予測精度が高くなるため、分析装置１０は、欠損値補完の手法を最頻値に決定する。
【００１３】
同様に、分析装置１０は、ステップ２では、前処理の１つである正規化で用いられる手法を、最大最小、標準化、Ｚスコア、無処理の中から決定する。なお、無処理とは、当該前処理を行わないことである。また、分析装置１０は、ステップ３では、前処理の１つである特徴選択で用いられる手法を、決定木、Ｌ１正則化、分散分析、無処理の中から決定する。
【００１４】
また、分析装置１０は、ステップ４では、予測器Ａ、予測器Ｂ及び予測器Ｃのうち、構築される予測モデルの予測精度が最も高くなる予測器Ｂを、予測モデルで用いる予測器に決定する。なお、予測器Ａ、予測器Ｂ及び予測器Ｃのアルゴリズムは、それぞれ異なるものとする。また、分析装置１０は、ステップ４で、さらに予測器ごとのハイパーパラメータを決定する。
【００１５】
この結果、分析装置１０によって決定されるパイプラインは、前処理として、最頻値を用いた欠損値補完、標準化を用いた正規化、分散分析を用いた特徴選択を行い、予測器として予測器Ｂを用いるものとなる。また、分析装置１０は、各ステップにおいて、データの一部を用いて学習し、残りのデータで予測モデルの予測精度を検証する交差検証を行いながら予測精度を計算してもよい。
【００１６】
［第１の実施形態の構成］
次に、図２を用いて、分析装置１０の構成について説明する。図２は、第１の実施形態に係る分析装置の構成の一例を示す図である。図２に示すように、分析装置１０は、ワークステーションやパソコン等の汎用コンピュータで実現され、入力部１１と、出力部１２と、通信制御部１３と、記憶部１４と、制御部１５とを備える。
【００１７】
入力部１１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部１５に対して各種指示情報を入力する。出力部１２は、液晶ディスプレイ等の表示装置、プリンター等の印刷装置、情報通信装置等によって実現され、データ分析の結果等を操作者に対して出力する。
【００１８】
通信制御部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネット等の電気通信回線を介した管理サーバ等の外部の装置と制御部１５との通信を制御する。
【００１９】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部１４には、分析装置１０を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータ等があらかじめ記憶され、あるいは処理の都度一時的に記憶される。記憶部１４は、通信制御部１３を介して制御部１５と通信する構成でもよい。また、記憶部１４は、設定情報１４１及び予測器情報１４２を記憶する。
【００２０】
ここで、図３を用いて、設定情報１４１について説明する。図３は、第１の実施形態に係る設定情報のデータ構成の一例を示す図である。図３に示すように、設定情報１４１は、ステップごとの実行順序、設定内容候補、及びパラメータ候補を含む。設定内容候補は、各ステップに対応する設定項目の設定内容の候補である。また、パラメータ候補は、選択された設定内容に設定可能なパラメータの候補である。
【００２１】
図３の例では、設定情報１４１は、ステップとして「欠損値補完手法探索」、「正規化手法探索」、「特徴選択手法探索」及び「ハイパーパラメータ探索」があることを示している。なお、これらのステップは、図１のステップ１〜４に対応している。
【００２２】
図３の例では、設定情報１４１は、ステップ「特徴選択手法探索」が３番目に実行されるステップであることを示している。また、設定情報１４１は、ステップ「特徴選択手法探索」に対応する設定項目の設定内容の候補として、「決定木」、「Ｌ１正則化」、「分散分析」及び「無処理」があることを示している。なお、図３の例では、ステップ「特徴選択手法探索」に対応する設定項目は、特徴選択で用いられる手法である。また、設定情報１４１は、設定内容候補「決定木」のパラメータである木の数Ｎの候補として、１００及び３００があることを示している。また、パラメータ候補には優先度が設定されている。
【００２３】
次に、図４を用いて、予測器情報１４２について説明する。図４は、第１の実施形態に係る予測器情報のデータ構成の一例を示す図である。図４に示すように、予測器情報１４２は、予測器ごとのアルゴリズム及びデフォルトパラメータを含む。アルゴリズムは、各予測器で用いられるアルゴリズムであり、図４に示すように、「Random  Forest」、「Logistic  Regression」、「K  Nearest  Neighbors」等がある。また、デフォルトパラメータは、各アルゴリズムのパラメータのデフォルト値である。また、デフォルトパラメータは予測器のハイパーパラメータのデフォルト値を含む。例えば、予測器情報１４２は、予測器Ａのアルゴリズム「Random  Forest」のパラメータＮのデフォルト値が１００であることを示している。
【００２４】
制御部１５は、ＣＰＵ（Central  Processing  Unit）等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図２に例示するように、選択部１５１、計算部１５２、決定部１５３及び検証部１５４として機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００２５】
選択部１５１は、予測モデルを構築する際に実行される複数の処理、すなわちパイプラインのそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する。決定部１５３は、各ステップの設定内容を、設定情報１４１に含まれる設定内容候補の中から決定する。このとき、選択部１５１は、設定情報１４１に示される実行順序に従って、設定内容が決定された次のステップを選択する。なお、いずれのステップも未実行である場合、選択部１５１は実行順序が最も前であるステップを選択する。
【００２６】
例えば、図３に示すように、ステップ「正規化手法探索」の次のステップは「特徴選択手法探索」なので、ステップ「正規化手法探索」の設定内容が決定された場合、選択部１５１は、次のステップとして「特徴選択手法探索」を選択する。
【００２７】
また、図３のステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」は、それぞれ、学習用及び分析用のデータの前処理である欠損値補完、正規化及び特徴選択の設定内容を決定する前処理決定ステップである。また、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」の設定内容候補は、それぞれ、欠損値補完、正規化及び特徴選択で用いられる手法である。また、ステップ「ハイパーパラメータ探索」は、前処理決定ステップより後に実行され、予測器のアルゴリズム及びハイパーパラメータを設定内容として決定する予測器決定ステップである。
【００２８】
計算部１５２は、複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、選択部１５１によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する。
【００２９】
例えば、選択部１５１によってステップ「特徴選択手法探索」が選択された場合、ステップ「特徴選択手法探索」よりも実行順序が前であるステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は決定済みであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」で決定された設定内容と、ステップ「特徴選択手法探索」の設定内容の候補のそれぞれを適用した予測モデルの構築が可能である。このとき、ステップ「特徴選択手法探索」の設定内容の候補は４つであるため、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が１つに決定されている場合、少なくとも４通りの予測モデルが構築可能である。
【００３０】
そして、計算部１５２は、構築可能な予測モデルそれぞれについて予測精度を計算する。なお、このとき、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容は複数通り決定されていてもよい。例えば、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が２通り決定されている場合、構築可能な予測モデルの数は少なくとも８通りである。
【００３１】
また、例えば、選択部１５１によってステップ「ハイパーパラメータ探索」が選択された場合、ステップ「ハイパーパラメータ探索」よりも実行順序が前であるステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」の設定内容は決定済みであるため、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」で決定された設定内容と、ステップ「ハイパーパラメータ探索」の設定内容の候補のそれぞれを適用した予測モデルの構築が可能である。そして、計算部１５２は、構築可能な予測モデルそれぞれについて予測精度を計算する。
【００３２】
また、計算部１５２は、所定数に分割した学習用のデータを用いた交差検証を行うことで予測精度を計算することができる。ここで、図５を用いて交差検証について説明する。図５は、第１の実施形態に係る交差検証について説明するための図である。
【００３３】
図５に示すように、まず、計算部１５２は、学習用データ２０を学習用データ２０ａ、２０ｂ、２０ｃ及び２０ｄの４つに分割する。そして、計算部１５２は、１回目の処理として、予測モデルを用いて、学習用データ２０ｂ、２０ｃ及び２０ｄを予測器に学習させ、学習用データ２０ａを用いて学習済みの予測器の精度を測定する。
【００３４】
同様に、計算部１５２は、２回目の処理では、学習用データ２０ａ、２０ｃ及び２０ｄを予測器に学習させ、学習用データ２０ｂを用いて学習済みの予測器の精度を測定する。また、計算部１５２は、３回目の処理では、学習用データ２０ａ、２０ｂ及び２０ｄを予測器に学習させ、学習用データ２０ｃを用いて学習済みの予測器の精度を測定する。また、計算部１５２は、４回目の処理では、学習用データ２０ａ、２０ｂ及び２０ｃを予測器に学習させ、学習用データ２０ｄを用いて学習済みの予測器の精度を測定する。そして、計算部１５２は、４回の処理で測定した精度の平均値である交差検証精度を予測精度とする。なお、交差検証における分割数は４に限定されず、任意の数とすることができる。
【００３５】
また、計算部１５２は、複数の予測器の候補のそれぞれを用いて予測精度を計算することができる。例えば、図３に示すように、ステップ「ハイパーパラメータ探索」より前のステップでは、予測モデルで用いられる予測器は決定されないため、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」では、計算部１５２は、予測器Ａ、予測器Ｂ及び予測器Ｃのそれぞれを用いた場合の予測精度を計算する。例えば、選択部１５１によってステップ「特徴選択手法探索」が選択され、かつ、ステップ「欠損値補完手法探索」及び「正規化手法探索」の設定内容が１つに決定されている場合、ステップ「特徴選択手法探索」の設定内容の候補が４つであり、予測器の候補が３つであるため、計算部１５２は、少なくとも１２通りの予測モデルの予測精度を計算する。
【００３６】
決定部１５３は、計算部１５２によって計算された各予測精度を比較し、設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、選択部１５１によって選択されたステップに対応する処理の設定内容に決定する。
【００３７】
例えば、図１に示すように、ステップ「正規化手法探索」では、計算部１５２は、設定内容「最大最小」に対応する予測モデルの予測精度を７２％と計算し、設定内容「標準化」に対応する予測モデルの予測精度を７８％と計算し、設定内容「Ｚスコア」に対応する予測モデルの予測精度を７２％と計算し、設定内容「無処理」に対応する予測モデルの予測精度を７０％と計算した。このとき、ステップ「正規化手法探索」において最も予測精度が高い予測モデルは設定内容「標準化」に対応する予測モデルであるため、決定部１５３は、ステップ「正規化手法探索」に対応する設定項目の設定内容を「標準化」に決定する。つまり、決定部１５３は、データの前処理である正規化で用いられる手法を標準化に決定する。
【００３８】
そして、前述の通り、選択部１５１は、決定部１５３によって設定内容が決定されたステップの次に実行されるステップを選択する。例えば、決定部１５３によってステップ「正規化手法探索」における設定内容が決定された場合、選択部１５１は、ステップ「特徴選択手法探索」を選択する。
【００３９】
検証部１５４は、決定部１５３によって決定された設定内容が適用された一連の処理、すなわち、決定されたパイプラインに基づいて構築される予測モデルの検証を行う。図６は、第１の実施形態に係る予測モデルの検証について説明するための図である。図６に示すように、決定部１５３によって全てのステップの設定内容が決定されると、検証部１５４は、決定されたパイプラインに基づいて予測器に学習用データ２０を学習させ、予測モデルを構築する。そして、検証部１５４は、学習用データ２０とは別のテスト用データ３０を用いて、構築した予測モデルの予測精度をテスト精度として測定する。例えば、分析装置１０は、ここで測定されたテスト精度を最終的な出力としてもよい。また、学習用データ２０と異なるテスト用データ３０を用いた検証を行うことで、過学習状態及び未学習状態の確認が可能となる。
【００４０】
ここで、図７〜９を用いて、分析装置１０の各ステップにおける処理を詳細に説明する。図７〜９は、第１の実施形態に係る各ステップの処理の一例を示す図である。また、図７〜９に関する説明において、ステップ「欠損値補完手法探索」、「正規化手法探索」及び「特徴選択手法探索」を前処理決定ステップと呼び、ステップ「ハイパーパラメータ探索」を予測器決定ステップと呼ぶ。
【００４１】
まず、図７を用いて、前処理決定ステップにおいて、前処理で用いられる手法が決定される場合の例について説明する。図７の例では、１番目のステップである「欠損値補完手法探索」において決定された手法を用いて欠損値補完が行われた欠損値補完済みデータ２１が生成済みであることとする。
【００４２】
まず、選択部１５１は、ステップ「欠損値補完手法探索」において設定内容が決定されると、設定情報１４１を参照し、ステップ「正規化手法探索」を選択する。そして、計算部１５２は、設定情報１４１及び予測器情報１４２を参照し、ステップ「正規化手法探索」に対応する設定内容候補及び予測器の候補の各組み合わせが適用された場合のパイプラインのそれぞれに基づいて構築された予測モデルのそれぞれについて、交差検証を用いて予測精度を計算する。
【００４３】
このとき、予測器のハイパーパラメータは未決定であるため、計算部１５２は、予測器情報１４２のデフォルトパラメータに示されるハイパーパラメータを用いて構築された予測モデルの予測精度を計算する。また、図３に示すように、設定情報１４１のステップ「正規化手法探索」の各設定内容のパラメータ候補は設定されていない。
【００４４】
図７には、ステップ「正規化手法探索」における設定内容「最大最小」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度が、それぞれ６０％、６８％及び７２％であったことが示されている。
【００４５】
また、図７には、ステップ「正規化手法探索」における設定内容「標準化」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度が、それぞれ６４％、６８％及び７８％であったことが示されている。
【００４６】
図７に示す予測精度の最高値は７８％であるため、決定部１５３は、計算部１５２によって計算された各予測精度を比較し、予測モデルのうち最も予測精度が高い予測モデルが、設定内容「標準化」と予測器Ｃとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルであることを特定する。そして、決定部１５３は、設定内容「標準化」を、ステップ「正規化手法探索」の設定内容に決定する。
【００４７】
次に、図８を用いて、前処理決定ステップにおいて、前処理で用いられる手法及び手法に関するパラメータが決定される場合の例について説明する。図８の例では、２番目のステップである「正規化手法探索」において決定された手法を用いて正規化が行われた正規化済みデータ２２が生成済みであることとする。
【００４８】
図３に示すように、設定情報１４１には、ステップ「特徴選択手法探索」の各設定内容のパラメータ候補が優先度ごとに設定されている。ここで、設定内容「決定木」のパラメータ候補には、優先度１のパラメータとして木の数Ｎが設定されており、優先度２以降のパラメータは設定されていない。また、設定内容「分散分析」のパラメータ候補には、優先度１のパラメータとして選択基準が設定されており、優先度２のパラメータとして検定係数ｐが設定されており、優先度３のパラメータは設定されていない。
【００４９】
まず、選択部１５１は、ステップ「正規化手法探索」において設定内容が決定されると、設定情報１４１を参照し、ステップ「特徴選択手法探索」を選択する。そして、計算部１５２は、設定情報１４１及び予測器情報１４２を参照し、ステップ「特徴選択手法探索」に対応する設定内容候補、パラメータ候補及び予測器の候補の所定の組み合わせが適用された場合のパイプラインのそれぞれに基づいて構築された予測モデルのそれぞれについて、交差検証を用いて予測精度を計算する。
【００５０】
計算部１５２は、各設定内容候補について、各パラメータ候補を適用したうえで構築された予測モデルの予測精度を計算する。このとき、予測器のハイパーパラメータは未決定であるため、計算部１５２は、予測器情報１４２のデフォルトパラメータに示されるハイパーパラメータを用いて構築された予測モデルの予測精度を計算する。また、各設定内容候補に関する未決定のパラメータについても、計算部１５２は、あらかじめ設定されたデフォルトのパラメータを用いる。
【００５１】
図８に示すように、ステップ「特徴選択手法探索」において、木の数Ｎを１００とし、設定内容「決定木」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ７０％、７２％及び７５％である。
【００５２】
また、図８に示すように、ステップ「特徴選択手法探索」において、木の数Ｎを３００とし、設定内容「決定木」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８０％、８２％及び７６％である。
【００５３】
また、図８に示すように、ステップ「特徴選択手法探索」において、選択基準を「fclassif」とし、設定内容「分散分析」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８０％、８０％及び８１％である。
【００５４】
また、図８に示すように、ステップ「特徴選択手法探索」において、選択基準を「chi2」とし、設定内容「分散分析」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８０％、８０％及び７６％である。
【００５５】
図８に示すように、設定内容「分散分析」を適用した場合の、優先度１のパラメータ候補について予測精度を計算した時点での予測精度の最高値は８１％であるため、決定部１５３は、設定内容「分散分析」の優先度１のパラメータを選択基準「fclassif」に決定する。
【００５６】
ここで、設定情報１４１には、設定内容「分散分析」の優先度２のパラメータ候補があるため、計算部１５２は、さらに優先度２のパラメータ候補についても予測精度の計算を行う。つまり、計算部１５２は、選択基準を「fclassif」とした設定内容「分散分析」について、検定係数ｐを０．０５とした場合と、検定係数ｐを０．０１とした場合と、のそれぞれについて、予測器Ａ、予測器Ｂ及び予測器Ｃのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの予測精度を計算する。
【００５７】
図８に示すように、ステップ「特徴選択手法探索」において、選択基準を「fclassif」とし、検定係数ｐを０．０５とした設定内容「分散分析」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８２％、８０％及び８４％である。
【００５８】
また、図８に示すように、ステップ「特徴選択手法探索」において、選択基準を「fclassif」とし、検定係数ｐを０．０１とした設定内容「分散分析」と、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８２％、８８％及び８４％である。
【００５９】
以上より、図８に示すように、設定内容「決定木」を適用した場合、パラメータＮを３００とした場合に予測精度が最高値の８２％となる。また、設定内容「分散分析」を適用した場合、パラメータ選択基準を「fclassif」、ｐを０．０１とした場合に予測精度が最高値の８８％となる。このため、決定部１５３は、計算部１５２によって計算された各予測精度を比較し、予測モデルのうち最も予測精度が高い予測モデルが、選択基準を「fclassif」とし、検定係数ｐを０．０１とした設定内容「分散分析」と、予測器Ｂとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルであることを特定する。そして、決定部１５３は、選択基準を「fclassif」とし、検定係数ｐを０．０１とした設定内容「分散分析」を、ステップ「特徴選択手法探索」の設定内容に決定する。
【００６０】
なお、図８では省略されているが、設定内容「Ｌ１正則化」及び「無処理」についても、予測器Ａ、予測器Ｂ及び予測器Ｃとの組み合わせのそれぞれが適用されたパイプラインに基づいて構築された予測モデルの予測精度が計算部１５２によって計算されている。ただし、ここでは、設定内容「Ｌ１正則化」及び「無処理」について計算された予測精度は、いずれも設定内容「決定木」及び「分散分析」について計算された予測精度の最高値より低かったものとする。
【００６１】
次に、図９を用いて、予測器決定ステップにおいて、予測器のアルゴリズム及びハイパーパラメータが決定される場合の例について説明する。図９の例では、３番目のステップである「特徴選択手法探索」において決定された手法を用いて特徴選択が行われた特徴選択済みデータ２３が生成済みであることとする。
【００６２】
図３に示すように、設定情報１４１には、ステップ「ハイパーパラメータ探索」の各設定内容のパラメータ候補が優先度ごとに設定されている。ここで、設定内容「予測器Ａ」、「予測器Ｂ」及び「予測器Ｃ」のパラメータ候補には、優先度１のパラメータとしてＮが設定されている。また、設定内容「予測器Ａ」及び「予測器Ｃ」のパラメータ候補には、優先度２以降のパラメータは設定されていない。また、設定内容「予測器Ｂ」のパラメータ候補には、優先度２のパラメータとしてＰが設定されており、優先度３のパラメータとしてαが設定されている。
【００６３】
まず、選択部１５１は、ステップ「特徴選択手法探索」において設定内容が決定されると、設定情報１４１を参照し、ステップ「ハイパーパラメータ探索」を選択する。そして、計算部１５２は、設定情報１４１及び予測器情報１４２を参照し、ステップ「ハイパーパラメータ探索」に対応する設定内容候補及びパラメータ候補の所定の組み合わせが適用された場合のパイプラインのそれぞれに基づいて構築された予測モデルのそれぞれについて、交差検証を用いて予測精度を計算する。
【００６４】
計算部１５２は、各設定内容候補について、各パラメータ候補を適用したうえで構築された予測モデルの予測精度を計算する。なお、ステップ「ハイパーパラメータ探索」におけるパラメータ候補は、予測器のハイパーパラメータである。計算部１５２は、予測器情報１４２のデフォルトパラメータに示されるハイパーパラメータを用いて構築された予測モデルの予測精度を計算する。また、計算部１５２は、各設定内容候補に関する未決定のパラメータがある場合、予測器情報１４２のデフォルトパラメータに示されるハイパーパラメータを当該未決定のパラメータとして用いる。
【００６５】
図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ａ」のパラメータＮを１００としたパイプライン、及び設定内容「予測器Ａ」のパラメータＮを３００としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８２％及び８３％である。
【００６６】
また、図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｂ」のパラメータＮを１００としたパイプライン、及び設定内容「予測器Ｂ」のパラメータＮを３００としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、それぞれ８１％及び８３％である。
【００６７】
図９に示すように、設定内容「予測器Ｂ」を適用した場合の、優先度１のパラメータ候補について予測精度を計算した時点での予測精度の最高値は８３％であるため、決定部１５３は、設定内容「予測器Ｂ」の優先度１のパラメータＮを３００に決定する。
【００６８】
ここで、設定情報１４１には、設定内容「予測器Ｂ」の優先度２のパラメータ候補があるため、計算部１５２は、さらに優先度２のパラメータ候補についても予測精度の計算を行う。つまり、計算部１５２は、パラメータＮを３００とした設定内容「予測器Ｂ」について、パラメータＰを１としたパイプラインと、パラメータＰを１０としたパイプラインと、のそれぞれに基づいて構築された予測モデルの予測精度を計算する。
【００６９】
図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｂ」のパラメータＮを３００とし、パラメータＰを１としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、８８％である。また、図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｂ」のパラメータＮを３００とし、パラメータＰを１０としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、８７％である。
【００７０】
図９に示すように、設定内容「予測器Ｂ」を適用した場合の、優先度２のパラメータ候補について予測精度を計算した時点での予測精度の最高値は８８％であるため、決定部１５３は、設定内容「予測器Ｂ」の優先度２のパラメータＰを１に決定する。
【００７１】
ここで、設定情報１４１には、設定内容「予測器Ｂ」の優先度３のパラメータ候補があるため、計算部１５２は、さらに優先度３のパラメータ候補についても予測精度の計算を行う。つまり、計算部１５２は、パラメータＮを３００とし、パラメータＰを１とした設定内容「予測器Ｂ」について、パラメータαを２としたパイプラインと、パラメータαを１０としたパイプラインと、のそれぞれに基づいて構築された予測モデルの予測精度を計算する。
【００７２】
図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｂ」のパラメータＮを３００とし、パラメータＰを１とし、パラメータαを２としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、８９％である。また、図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｂ」のパラメータＮを３００とし、パラメータＰを１とし、パラメータαを１０としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度は、９３％である。
【００７３】
また、図９に示すように、ステップ「ハイパーパラメータ探索」において、設定内容「予測器Ｃ」のパラメータＮを１００としたパイプライン、及び設定内容「予測器Ｃ」のパラメータＮを３００としたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された予測精度が、それぞれ８４％及び８３％である。
【００７４】
以上より、図９に示すように、設定内容「予測器Ａ」を適用した場合、パラメータＮを３００とした場合に予測精度が最高値の８３％となる。また、設定内容「予測器Ｂ」を適用した場合、パラメータＮを３００、Ｐを１、αを１０とした場合に予測精度が最高値の９３％となる。このため、決定部１５３は、計算部１５２によって計算された各予測精度を比較し、予測モデルのうち最も予測精度が高い予測モデルが、Ｎを３００、Ｐを１、αを１０とした設定内容「予測器Ｂ」が適用されたパイプラインに基づいて構築された予測モデルであることを特定する。そして、決定部１５３は、Ｎを３００、Ｐを１、αを１０とした設定内容「予測器Ｂ」を、ステップ「ハイパーパラメータ探索」の設定内容に決定する。
【００７５】
ステップ「ハイパーパラメータ探索」の実行後、分析装置１０は最適設定２４を得る。このとき、最適設定２４には、例えば、最頻値を用いて欠損値補完を行い、標準化を用いて正規化を行い、選択基準をfclassifとし、検定係数を０．０１とした分散分析によって特徴選択を行い、パラメータＮ、Ｐ、αをそれぞれ３００、１、１０とした予測器Ｂで予測モデルの構築を行うことが示されている。
【００７６】
［第１の実施形態の処理］
図１０及び１１を用いて、第１の実施形態に係る分析装置１０の処理の流れについて説明する。図１０及び１１は、第１の実施形態に係る分析装置の処理の流れを示すフローチャートである。図１０に示すように、まず、分析装置１０は、学習用データ２０を読み込む（ステップＳ１０１）。次に、分析装置１０は、読み込んだ学習用データ２０を用いて、予測精度が最も高くなるパイプラインを決定する（ステップＳ１０２）。分析装置１０の検証部１５４は、決定されたパイプラインに基づいて予測モデルを構築し（ステップＳ１０３）、構築した予測モデルをテスト用データ３０を用いて検証する（ステップＳ１０４）。
【００７７】
次に、図１１を用いて、分析装置１０がパイプラインを決定する処理（図１０のステップＳ１０２）について詳細に説明する。図１１に示すように、選択部１５１は、未選択のステップがある場合（ステップＳ２０１、Ｙｅｓ）、設定情報１４１を参照し、次のステップを選択する（ステップＳ２０２）。なお、次のステップとは、未選択のステップのうち、最も実行順序が早いステップである。一方、未選択のステップがない場合（ステップＳ２０１、Ｎｏ）、分析装置１０はパイプラインを決定する処理を終了する。
【００７８】
選択部１５１によって選択されたステップの設定内容候補のうち、未選択の設定内容がある場合（ステップＳ２０３、Ｙｅｓ）、計算部１５２は、次の設定内容を選択する（ステップＳ２０４）。一方、未選択の設定内容がない場合（ステップＳ２０３、Ｎｏ）、決定部１５３は、計算部１５２によって計算された予測精度が最も高い設定内容を選択部１５１によって選択されたステップの設定内容に決定する（ステップＳ２０６）。
【００７９】
計算部１５２は、設定内容を選択すると、当該選択した設定内容を適用したパイプラインに基づいて構築される予測モデルの予測精度を計算する（ステップＳ２０５）。このとき、計算部１５２は、所定数に分割した学習用データ２０を用いた交差検証によって予測精度の計算を行うことができる。そして、計算部１５２は、未選択の設定内容がなくなるまで、ステップＳ２０３〜Ｓ２０５の処理を繰り返す。
【００８０】
［第１の実施形態の効果］
選択部１５１は、予測モデルを構築する際に実行される複数の処理、すなわちパイプラインのそれぞれに対応し、対応する処理の設定内容を順次決定するステップにおいて、設定内容が決定されるたびに、次に実行されるステップを選択する。また、計算部１５２は、複数の処理のうち、設定内容が決定済みの処理を当該決定済みの設定内容を適用して行うとともに、選択部１５１によって選択されたステップに対応する処理を設定内容の候補のそれぞれを適用して行った場合に構築される予測モデルのそれぞれについて予測精度を計算する。また、決定部１５３は、計算部１５２によって計算された各予測精度を比較し、設定内容の候補のうち予測精度が最も高くなる設定内容の候補を、選択部１５１によって選択されたステップに対応する処理の設定内容に決定する。
【００８１】
予測精度の高い予測モデルを構築可能なパイプラインを決定する際には、なるべく多くの処理及び手法について検討することが望ましい。一方で、近年、予測モデル構築のための処理や、各処理に関する手法が数多く提案されているため、各処理及び手法を組み合わせて得られるパイプラインの数も膨大になってきている。
【００８２】
従来のＳＭＢＯを用いた手法では、パイプラインの数が増加した場合、パイプラインの数の増加度合いに従って探索領域が大きくなるため、パイプラインの数の増加後に構築される予測モデルの精度を維持又は向上させたい場合、探索すべき領域が膨大になる。
【００８３】
一方、本実施形態では、パイプラインの数が増加した場合、パイプラインを構成する処理及び手法の増加度合いに従って探索領域が追加されるに過ぎない。このため、本実施形態では、パイプラインの数の増加後に構築される予測モデルの精度を維持又は向上させたい場合の、探索すべき領域の増加度合いは、従来の手法に比べて小さい。このため、本実施形態によれば、予測精度の高い予測モデルを効率良く構築することができる。
【００８４】
また、従来のＳＭＢＯを用いた手法では、パイプラインごとに予測精度を評価していたのに対し、本実施形態では、ステップ及び設定内容ごとに予測精度を評価しているため、各ステップ又は各設定内容と予測精度との関連を分析することが容易になる。
【００８５】
また、計算部１５２は、所定数に分割した学習用のデータを用いた交差検証を行うことで予測精度を計算する。これにより、学習用のデータが限られている場合であっても、予測モデルの評価の正確性を向上させることができる。
【００８６】
選択部１５１は、学習用及び分析用のデータの前処理で用いられる手法を設定内容として決定するステップである前処理決定ステップと、前処理決定ステップより後に実行され、予測器のアルゴリズム及びハイパーパラメータを設定内容として決定するステップである予測器決定ステップと、のそれぞれにおいて設定内容が決定されるたびに、設定内容が決定されたステップの次に実行されるステップを選択する。予測器に関する設定よりも、データの前処理に関する設定の方が予測モデルの予測精度への影響が大きい場合がある。このため、より精度が高くなるデータの前処理の手法がパイプラインに含まれないことを防止することができる。
【００８７】
計算部１５２は、複数の予測器の候補のそれぞれを用いた予測精度を計算することができる。これにより、複数の予測器について網羅的にパイプラインの評価を行うことができるようになる。
【００８８】
［第２の実施形態］
第２の実施形態について説明する。なお、第２の実施形態に係る分析装置１０の基本的な構成及び処理は、第１の実施形態に係る分析装置１０の構成及び処理と同様である。以下では、第２の実施形態に係る分析装置１０の構成及び処理のうち、第１の実施形態に係る分析装置１０の構成及び処理と同様であるものについては適宜説明を省略する。
【００８９】
第１の実施形態では、予測器が未決定のステップにおいて、計算部１５２は、複数の予測器の候補のそれぞれについて予測精度を計算していた。一方、第２の実施形態では、予測器ごとに各ステップを実行する。つまり、選択部１５１は、複数の予測器の候補から予測器を順次選択し、予測器を選択するたびに、予測モデルを構築する際に実行される複数の処理のそれぞれに対応するステップを選択する。また、計算部１５２は、選択部１５１によって選択された予測器を用いた予測モデルについて予測精度を計算する。
【００９０】
図１２を用いて、第２の実施形態に係る分析装置１０の処理概要を説明する。図１２は、第２の実施形態に係る分析装置の処理概要を説明するための図である。図１２に示すように、分析装置１０は、予測器ごとに、ステップ１〜４を順次実行することで予測モデルの構築に必要なパイプラインの決定を行う。例えば、まず、選択部１５１は、予測器Ａを選択する。そして、分析装置１０は、予測精度を計算する際の予測器を予測器Ａに固定し、ステップ１〜４を実行する。次に、選択部１５１は、予測器Ｂを選択する。そして、分析装置１０は、予測精度を計算する際の予測器を予測器Ｂに固定し、ステップ１〜４を実行する。各ステップにおける処理は第１の実施形態と同様である。そして、分析装置１０は、全ての予測器の候補について予測精度を計算し、予測モデルの予測精度が最も高くなるパイプラインを決定する。
【００９１】
例えば、図１２に示すように、予測器Ａについて計算された予測精度のうち最も高い予測精度が９４％であり、予測器Ｂについて計算された予測精度のうち最も高い予測精度が９３％であった場合。分析装置１０は、予測器Ａについて計算された予測精度が９４％であった際のパイプラインを最適設定２４におけるパイプラインに決定する。
【００９２】
なお、第１の実施形態のステップ４、すなわちステップ「ハイパーパラメータ探索」の設定内容候補は、予測器であったのに対し、第２の実施形態のステップ「ハイパーパラメータ探索」の設定内容候補は、ハイパーパラメータである。
【００９３】
［第２の実施形態の処理］
図１３を用いて、第２の実施形態に係る分析装置１０の処理の流れについて説明する。図１３は、第２の実施形態に係る分析装置の処理の流れを示すフローチャートである。図１３に示すように、まず、分析装置１０は、学習用データ２０を読み込む（ステップＳ３０１）。次に、分析装置１０は、未選択の予測器がある場合（ステップＳ３０２、Ｙｅｓ）、予測器情報１４２を参照し、次の予測器を選択する（ステップＳ３０３）。次に、分析装置１０は、読み込んだ学習用データ２０を用いて、選択した予測器のパイプラインを決定する（ステップＳ３０４）。なお、ステップＳ３０４の処理は、図１１と同様である。
【００９４】
一方、未選択の予測器がない場合（ステップＳ３０２、Ｎｏ）、分析装置１０は、予測精度に基づいて、予測器別のパイプラインの中から最終的なパイプラインを決定する（ステップＳ３０５）。そして、分析装置１０の検証部１５４は、決定されたパイプラインに基づいて予測モデルを構築し（ステップＳ３０６）、構築した予測モデルをテスト用データ３０を用いて検証する（ステップＳ３０７）。
【００９５】
［第２の実施形態の効果］
選択部１５１は、複数の予測器の候補から予測器を順次選択し、予測器を選択するたびに、予測モデルを構築する際に実行される複数の処理のそれぞれに対応するステップを選択する。また、計算部１５２は、選択部１５１によって選択された予測器を用いた予測モデルについて予測精度を計算する。分析対象のデータによっては、どの予測器を用いるかが予測精度に大きく影響する場合がある。第２の実施形態では、そのような場合に、より精度が高くなる予測器がパイプラインに含まれないことを防止することができる。
【００９６】
［第３の実施形態］
第３の実施形態について説明する。なお、第３の実施形態に係る分析装置１０の基本的な構成及び処理は、第１の実施形態に係る分析装置１０の構成及び処理と同様である。以下では、第３の実施形態に係る分析装置１０の構成及び処理のうち、第１の実施形態に係る分析装置１０の構成及び処理と同様であるものについては適宜説明を省略する。
【００９７】
第１の実施形態では、決定部１５３は、各ステップにおいて、予測精度が最も高くなる設定内容を１つ決定していた。ここで、予測モデルの予測精度は、様々な指標によって表される。例えば、予測モデルの予測精度を表す指標には、正解率及びＦ値がある。例えば、予測モデルのうち、正解率が最も高い予測モデル、及びＦ値が最も高い予測モデルは、いずれも予測精度が最も高い予測モデルということができる。なお、正解率及びＦ値は、が高いほど予測精度も高いといえるので、正解率及びＦ値は高いほど良い。このため、第３の実施形態では、決定部１５３は、予測精度を表す複数の指標のそれぞれが最も良くなる予測モデルに対応する設定内容を、各ステップで決定する。
【００９８】
図１４を用いて、第３の実施形態に係る分析装置１０の処理概要を説明する。図１４は、第３の実施形態に係る分析装置の処理概要を説明するための図である。まず、計算部１５２は、設定情報１４１及び予測器情報１４２を参照し、ステップ「欠損値補完手法探索」に対応する設定内容候補及び予測器の候補の各組み合わせが適用された場合のパイプラインのそれぞれに基づいて構築された予測モデルのそれぞれについて、交差検証を用いて予測精度を計算する。このとき、計算部１５２は、予測精度として、正解率及びＦ値の両方を計算する。
【００９９】
図１４に示すように、ステップ「欠損値補完手法探索」における設定内容「平均値」と予測器Ａとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された正解率は６０％であり、Ｆ値が７５％である。また、図１４に示すように、ステップ「欠損値補完手法探索」における設定内容「平均値」と予測器Ｂとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルの、計算部１５２によって計算された正解率は５５％であり、Ｆ値は７０％である。同様に、図１４には、各設定内容と予測器との組み合わせに対応した正解率及びＦ値が示されている。
【０１００】
図１４に示す正解率の最高値は７０％であるため、決定部１５３は、計算部１５２によって計算された各正解率を比較し、予測モデルのうち最も正解率が高い予測モデルが、設定内容「最頻値」と、予測器Ｂとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルであることを特定する。そして、決定部１５３は、設定内容「最頻値」を、ステップ「欠損値補完手法探索」の設定内容の１つに決定する。
【０１０１】
また、図１４に示すＦ値の最高値は７５％であるため、決定部１５３は、計算部１５２によって計算された各Ｆ値を比較し、予測モデルのうち最もＦ値が高い予測モデルが、設定内容「平均値」と、予測器Ａとの組み合わせが適用されたパイプラインに基づいて構築された予測モデルであることを特定する。そして、決定部１５３は、設定内容「平均値」を、ステップ「欠損値補完手法探索」の設定内容の１つに決定する。
【０１０２】
ここで、ステップ「欠損値補完手法探索」では、２つの設定内容が決定されるため、それぞれの設定内容に対応した欠損値補完済みデータ、すなわち正解率優先の欠損値補完済みデータ２１ａ、及びＦ値優先の欠損値補完済みデータ２１ｂが生成される。そして、次のステップでは、それぞれの欠損値補完済みデータ及び対応するパイプラインに従ってさらに予測精度の計算及び設定内容の決定が行われる。
【０１０３】
［第３の実施形態の効果］
計算部１５２は、計算した予測精度を複数の指標で表す。このとき、決定部１５３は、設定内容の候補のうち複数の指標のいずれかが最も良くなる設定内容の候補を、選択部１５１によって選択されたステップに対応する処理の設定内容に決定する。どのような指標を用いて予測モデルの予測精度を表すかは、データの分析結果の利用場面等に応じて異なる場合がある。このため、第３の実施形態では、各指標に対応した複数のパイプラインを得ることができるため、様々な利用場面に対応することができる。
【０１０４】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１０５】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１０６】
［プログラム］
一実施形態として、分析装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の分析を実行する分析プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の分析プログラムを情報処理装置に実行させることにより、情報処理装置を分析装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【０１０７】
また、分析装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の分析に関するサービスを提供する分析サーバ装置として実装することもできる。例えば、分析サーバ装置は、学習用データを入力とし、パイプライン又は予測モデルを出力とする分析サービスを提供するサーバ装置として実装される。この場合、分析サーバ装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の分析に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【０１０８】
図１５は、分析プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【０１０９】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【０１１０】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、分析装置１０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、分析装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【０１１１】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【０１１２】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【０１１３】
１０  分析装置
１１  入力部
１２  出力部
１３  通信制御部
１４  記憶部
１５  制御部
１４１  設定情報
１４２  予測器情報
１５１  選択部
１５２  計算部
１５３  決定部
１５４  検証部
【図１】
2018190126.tif 000003
【図２】
2018190126.tif 000004
【図３】
2018190126.tif 000005
【図４】
2018190126.tif 000006
【図５】
2018190126.tif 000007
【図６】
2018190126.tif 000008
【図７】
2018190126.tif 000009
【図８】
2018190126.tif 000010
【図９】
2018190126.tif 000011
【図１０】
2018190126.tif 000012
【図１１】
2018190126.tif 000013
【図１２】
2018190126.tif 000014
【図１３】
2018190126.tif 000015
【図１４】
2018190126.tif 000016
【図１５】
2018190126.tif 000017