JPWO2018002967A1 - 情報処理システム、情報処理方法、及び、プログラム - Google Patents

情報処理システム、情報処理方法、及び、プログラム Download PDF

Info

Publication number
JPWO2018002967A1
JPWO2018002967A1 JP2018524580A JP2018524580A JPWO2018002967A1 JP WO2018002967 A1 JPWO2018002967 A1 JP WO2018002967A1 JP 2018524580 A JP2018524580 A JP 2018524580A JP 2018524580 A JP2018524580 A JP 2018524580A JP WO2018002967 A1 JPWO2018002967 A1 JP WO2018002967A1
Authority
JP
Japan
Prior art keywords
analysis pipeline
parameter
pipeline
analysis
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018524580A
Other languages
English (en)
Other versions
JP6648828B2 (ja
Inventor
浩嗣 玉野
浩嗣 玉野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2018002967A1 publication Critical patent/JPWO2018002967A1/ja
Application granted granted Critical
Publication of JP6648828B2 publication Critical patent/JP6648828B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

様々なバリデーション方法に対して、分析パイプラインに係るパラメータの調整ができる情報処理システムを提供する。分析パイプライン調整システム(100)は、初期化部(110)、及び、調整部(150)を含む。初期化部(110)は、入力された分析パイプラインを用いて分析パイプラインモデルの生成、及び、評価値の算出を、所定のバリデーション方法に従って行い、出力する、バリデーションモジュールの入力を受け付ける。調整部(150)は、パラメータセットの探索範囲内で、所定の探索方法に従って、パイプラインパラメータの値が適用された分析パイプラインをバリデーションモジュールに入力して実行し、評価値が最適化されるパラメータセットの値を探索する。

Description

本発明は、情報処理システム、情報処理方法、及び、プログラムに関し、特に、分析パイプラインを生成する情報処理システム、情報処理方法、及び、記録媒体に関する。
機械学習やデータマイニングにおけるデータ分析の手順は、大まかに、分析対象のデータの前処理、及び、前処理されたデータを分析用のエンジンに入力することで行われる学習処理により構成される。前処理では、データ中の異常値や欠損値の除去、標準化や規格化等のスケール変換、必要な属性の生成等が行われる。エンジンでは、学習処理として、目的に応じて、回帰分析、判別分析、クラスタリング等が行われる。
このようなデータ分析の一連の処理は、例えば、欠損値の除去→標準化→回帰分析のような処理の列、つまり、パイプラインとして表現できる。以降、このようなデータ分析の一連の処理を分析パイプラインと呼ぶ。
分析パイプライン中の処理には、人が調整できるパラメータを持つ処理がある。例えば、異常値除去の処理には、異常とみなすべき値がパラメータとして設定される。また、判別分析の処理には、判別分析で決定木が用いられる場合、学習する木の最大の高さが、パラメータとして設定される。以降、これら分析パイプラインの前処理、及び、学習処理に係るパラメータをパイプラインパラメータとも呼ぶ。
パイプラインパラメータに適切な値に設定することは、分析の精度を向上させるために重要である。例えば、決定木の高さを高く過ぎると、学習により生成されたモデルが、データにオーバーフィットしてしまい、一方で低くし過ぎると、学習により生成されたモデルが、データにアンダーフィットしてしまう。したがって、分析対象のデータに対して適切な値が設定されるように、パラメータを調整する必要がある。
一般に、このような、パイプラインパラメータの人による調整は手間がかかる。このため、適切なパラメータの値を探索し、調整するシステムが用いられている。パラメータの値の探索方法の内、最も単純、かつ、一般的な方法としてGrid Searchが知られている。Grid Searchでは、各パラメータの候補値で格子が生成され、全ての格子点について探索が行われ、最適なパラメータの値の組が求められる。例えば、2つのパラメータa、bが、それぞれa=[1, 10, 100]、b=[1, 0.1, 0.01]のような候補値を持つ場合、9通り(3×3通り)の値の組み合わせについて探索が行われる。Grid Searchは、単純でわかりやすい一方、探索する格子点が膨大になりやすく、時間がかかる。Grid Searchのこうした問題を解決した方法として、Random Searchや、ベイズ最適化を応用した方法等も提案されている。
また、パイプラインパラメータの調整では、パラメータの値の探索とともに、生成されたモデルのバリデーションも併せて行う必要がある。機械学習の一般的なバリデーション方法としては、分析対象のデータを学習データとテストデータの2つに分割し、学習データでモデルを生成し、テストデータで評価値を算出する方法が知られている。この方法では、テストデータで、生成されたモデルを用いた予測が行われ、その予測精度がモデルの評価値として算出される。以下、この方法をSingle Validationと記載する。さらに、同じ分析対象のデータにおいて、学習データ、テストデータとして用いられるデータを変えながら、同様のモデル生成、評価値の算出を繰り返す、Cross Validation(交差検定)も知られている。
これらの探索方法、及び、バリデーション方法を用いてパラメータの調整を行うシステムは、以下のような文献に記載されている。例えば、非特許文献1には、探索方法とバリデーション方法に、Grid SearchとCross Validationを用いたGridSearchCV、Random SearchとCross Validationを用いたRandomSearchCVが記載されている。非特許文献2には、探索方法とバリデーション方法に、Grid SearchとCross Validationを用いたCrossValidatorが記載されている。
また、非特許文献3には、探索方法として、上述のRandom Searchが記載されている。非特許文献4には、探索方法として、ベイズ最適化を応用した方法が記載されている。
"scikit-learn: machine learning in Python"、[online]、[2016年5月26日検索]、インターネット〈URL:http://scikit-learn.org/stable/〉 "Overview: estimators, transformers and pipelines - spark.ml"、[online]、[2016年5月26日検索]、インターネット〈URL:http://spark.apache.org/docs/latest/ml-guide.html〉 James Bergstra、Yoshua Bengio、"Random Search for Hyper-Parameter Optimization"、Journal of Machine Learning Research 13、pages 281-305、2012 Jasper Snoek、Hugo Larochelle、Ryan P. Adams、"Practical Bayesian Optimization of Machine Learning Algorithms"、Advances in Neural Information Processing Systems 25 (NIPS 2012)、2012
しかしながら、非特許文献1に記載されているGridSearchCVやRandomSearchCV、非特許文献2に記載されているCrossValidatorには、以下の問題がある。すなわち、これらのシステムでは、探索方法やバリデーション方法が固定であるため、例えば、様々なバリデーション方法でパイプラインパラメータを調整する場合、バリデーション方法ごとにシステムを使い分ける必要がある。バリデーション方法としては、上述のSingle ValidationやCross Validationだけでなく、分析ビジネスの現場では、より実際の利用シーンに合わせた、独自のバリデーション方法が用いられている。例えば、時系列データの予測では、バリデーション方法として、3か月おきに、再学習されたモデルを用いて1年間の予測を行い、そのモデルの年間平均精度を求める方法等が用いられる。したがって、バリデーション方法ごとにパラメータを調整するシステムを用意することは現実的ではない。
本発明の目的は、上述の課題を解決し、様々なバリデーション方法に対して、分析パイプラインに係るパラメータの調整ができる情報処理システム、情報処理方法、及び、記録媒体を提供することにある。
本発明の一態様における情報処理システムは、分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成する情報処理システムであって、入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付ける、初期化手段と、前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する、調整手段と、を備える。
本発明の一態様における情報処理方法は、分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成する情報処理方法であって、入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付け、前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する。
本発明の一態様におけるコンピュータが読み取り可能な記録媒体は、分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成するプログラムを格納する記録媒体であって、コンピュータに、入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付け、前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する、処理を実行させるプログラムを格納する。
本発明の効果は、様々なバリデーション方法に対して、分析パイプラインに係るパラメータの調整ができることである。
本発明の第1の実施の形態の特徴的な構成を示すブロック図である。 本発明の第1の実施の形態における、分析パイプライン調整システム100の構成を示すブロック図である。 本発明の第1の実施の形態における、コンピュータにより実現された分析パイプライン調整システム100の構成を示すブロック図である。 本発明の第1の実施の形態における、分析パイプラインの例を示す図である。 本発明の第1の実施の形態における、分析パイプラインの各ブロックの入出力データの例を示す図である。 本発明の第1の実施の形態における、分析パイプラインモデルの例を示す図である。 本発明の第1の実施の形態における、分析パイプラインモデルの出力データの例を示す図である。 本発明の第1の実施の形態における、分析パイプライン調整システム100の動作を示すフローチャートである。 本発明の第1の実施の形態における、目的関数の処理を示すフローチャートである。 本発明の第1の実施の形態における、探索範囲の例を示す図である。 本発明の第1の実施の形態における、探索範囲の他の例を示す図である。 本発明の第1の実施の形態における、目的関数の他の処理を示すフローチャートである。 本発明の第1の実施の形態における、探索範囲の他の例を示す図である。 本発明の第1の実施の形態における、探索範囲の他の例を示す図である。 本発明の第2の実施の形態における、分析パイプラインの例を示す図である。 本発明の第2の実施の形態における、分析パイプライン調整システム100の動作を示すフローチャートである。 本発明の第2の実施の形態における、目的関数の処理を示すフローチャートである。 本発明の第2の実施の形態における、探索範囲の例を示す図である。
本発明を実施するための形態について図面を参照して詳細に説明する。なお、各図面、及び、明細書記載の各実施形態において、同様の構成要素には同一の符号を付与し、説明を適宜省略する。
(第1の実施の形態)
本発明の第1の実施の形態について説明する。
はじめに、本発明の実施の形態における、分析パイプライン、及び、分析パイプラインモデルについて説明する。
図4は、本発明の第1の実施の形態における、分析パイプラインの例を示す図である。分析パイプラインは、データの前処理を行うブロック、及び、前処理が行われたデータを用いて学習処理を行うブロックを含む。前処理では、異常値や欠損値の除去、スケール変換、属性の生成等が行われる。学習処理では回帰式や決定木等、予測や分類を行うためのモデル(学習済みモデル)の生成(回帰式における係数や、決定木の構造、判定条件等のモデルパラメータの算出)が行われる。図4の分析パイプライン「Pipeline1」は、人間の身長、体重から、LDL(Low Density Lipoprotein)コレステロールを予測するための分析パイプラインモデルを生成する分析パイプラインである。ここで、分析パイプライン「Pipeline1」には、データの前処理を行うブロックとして、BMI(Body Mass Index)を算出するブロック「BMI」、及び、体重のd乗を算出するブロック「Pow(体重)」が設定されている。また、学習処理を行うブロックとして、前処理が行われたデータから、LDLコレステロールを予測するためのリッジ回帰モデルを、正則化パラメータλで生成するブロック「リッジ回帰(LDL)」が設定されている。
図5は、本発明の第1の実施の形態における、分析パイプラインの各ブロックの入出力データの例を示す図である。例えば、図5のデータ「data1」が図4の分析パイプラインに入力されると、データ「data1」がブロック「BMI」に入力され、「data2」のようなデータが出力される。さらに、データ「data2」がブロック「Pow(体重)」に入力され、「data3」のような、データが出力される。そして、データ「data3」がブロック「リッジ回帰(LDL)」に入力され、LDLコレステロールを予測するための学習済みモデル「リッジ回帰モデル(LDL)」が生成される。
図6は、本発明の第1の実施の形態における、分析パイプラインモデルの例を示す図である。分析パイプラインモデルは、分析パイプラインと同様の、データの前処理を行うブロック、及び、分析パイプラインにより生成された、学習済みモデルの処理を行うブロックを含む。学習済みモデルでは、前処理が行われたデータを用いて予測や分類が行われる。図6の分析パイプラインモデル「PipelineModel1」は、図4の分析パイプライン「Pipeline1」により生成された分析パイプラインモデルである。分析パイプラインモデル「PipelineModel1」には、データの前処理を行うブロックとして、BMIを算出するブロック「BMI」、及び、体重のd乗を算出するブロック「Pow(体重^d)」が設定されている。
また、学習済みモデルの処理を行うブロックとして、ブロック「リッジ回帰モデル(LDL)」が設定されている。
図7は、本発明の第1の実施の形態における、分析パイプラインモデルの出力データの例を示す図である。例えば、図5のデータ「data1」が図6の分析パイプラインモデルに入力されると、前処理済みのデータ「data3」がブロック「リッジ回帰モデル(LDL)」に入力される。そして、図7のデータ「data4」のように、LDLコレステロールの予測値のカラムが追加されたデータが出力される。
分析パイプラインは、前処理、及び、学習処理の内の少なくとも一方に係るパイプラインパラメータを持つ。図4の分析パイプラインでは、前処理のブロック「Pow(体重)」における次数dと、学習処理のブロック「リッジ回帰(LDL)」における正則化パラメータλの値がパイプラインパラメータの値として設定される。
なお、分析パイプライン、及び、分析パイプラインモデルは、例えば、CPU(Central Processing Unit)上で実行されるプログラムである。
次に、本発明の第1の実施の形態の構成を説明する。図2は、本発明の第1の実施の形態における、分析パイプライン調整システム100の構成を示すブロック図である。分析パイプライン調整システム100は、本発明の情報処理システムの一実施形態である。
図2を参照すると、分析パイプライン調整システム100は、初期化部110、バリデーションモジュール記憶部120、探索モジュール記憶部130、分析パイプライン記憶部140、及び、調整部150を含む。
初期化部110は、ユーザ等から、分析対象のデータ、分析において利用する(利用対象の)分析パイプライン、バリデーションモジュール、及び、探索モジュールの入力を受け付ける。バリデーションモジュール、探索モジュール、及び、分析パイプラインは、例えば、CPU上で実行されるプログラムである。なお、初期化部110は、記憶部(図示せず)等に記憶された複数の分析パイプラインや各モジュールの内、利用対象の分析パイプラインや各モジュールの識別子の入力を受け付けてもよい。
図2に示すように、探索モジュールは、調整部150により実行され、バリデーションモジュールは、目的関数を介して、探索モジュールにより実行される。これら、バリデーションモジュール、目的関数、及び、探索モジュールの入出力、及び、処理は、以下のように定義される。
<バリデーションモジュール>
バリデーションモジュールには、目的関数から、分析対象のデータと、1以上のパイプラインパラメータの値が設定(適用)された分析パイプラインと、が入力される。
バリデーションモジュールは、入力されたデータ、及び、分析パイプラインを用いて、当該バリデーションモジュールに対応する所定のバリデーション方法に従って、分析パイプラインモデルの生成、及び、生成した分析パイプラインモデルの評価値を算出する。
バリデーションモジュールは、生成した分析パイプラインモデル、及び、算出した評価値を、目的関数へ返却(出力)する。
ここで、所定のバリデーション方法としては、例えば、上述のSingle ValidationやCross Validation等が用いられる。また、評価値としては、例えば、生成した分析パイプラインモデルによる予測値と実際の値とから算出した平均二乗誤差(RMSE(Root Mean Squared Error))等が用いられる。
<目的関数>
目的関数には、探索モジュールから、引数xが指定(入力)される。引数xには、1以上のパラメータの集合(以下、パラメータセットとも記載する)の各パラメータの値(以下、パラメータセットの値とも記載する)が設定される。パラメータセットには、上述の、1以上のパイプラインパラメータが含まれる。
図9は、本発明の第1の実施の形態における、目的関数の処理を示すフローチャートである。目的関数は、引数xとして指定されたパラメータセットに含まれるパイプラインパラメータの値を、利用対象の分析パイプラインに設定(適用)する(ステップS210)。目的関数は、分析対象のデータと、パイプラインパラメータの値が設定(適用)された分析パイプラインと、を利用対象のバリデーションモジュールに入力し、当該バリデーションモジュールを実行する(ステップS220)。
目的関数は、バリデーションモジュールの実行の結果得られた、評価値、及び、分析パイプラインモデルを戻り値として、探索モジュールへ返却(出力)する(ステップS230)。
<探索モジュール>
探索モジュールには、調整部150から、目的関数が入力される。また、探索モジュールには、初期化部110により、目的関数の引数x(パラメータセットの値)の探索範囲が設定される。探索範囲には、利用対象の探索モジュールの探索方法や、利用対象の分析パイプライン、バリデーションモジュールに対応した値の範囲が設定される。なお、探索範囲は、初期化部110の代わりに、調整部150により入力されてもよい。また、探索範囲は、ユーザ等から入力される探索モジュールに、予め、設定されていてもよい。
探索モジュールは、探索範囲内の値を引数xに指定して、入力された目的関数を実行する。探索モジュールは、当該探索モジュールに対応する所定の探索方法に従って、目的関数の戻り値に含まれる評価値が最適化される(最小、または、最大になる)引数x(パラメータセットの値)を探索する。探索モジュールは、評価値が最適化されたときの目的関数の戻り値(評価値、及び、分析パイプラインモデル)を、調整部150へ返却(出力)する。
ここで、所定の探索方法としては、例えば、上述のGrid SearchやRandom Search等が用いられる。また、探索モジュールが目的関数を実行できれば、目的関数の入力は省略されてもよい。また、探索モジュールは、評価値が最適化されたときの引数x(パラメータセットの値)も、目的関数からの戻り値とともに調整部150へ返却(出力)してもよい。
このようなバリデーションモジュール、目的関数、及び、探索モジュールの定義により、バリデーションモジュールは、探索モジュールに依存しないように実現できる。また、探索モジュールも、利用対象の分析パイプラインやバリデーションモジュールに依存しないように実現できる。
バリデーションモジュール記憶部120は、利用対象のバリデーションモジュールを記憶する。
探索モジュール記憶部130は、利用対象の探索モジュールを記憶する。
分析パイプライン記憶部140は、利用対象の分析パイプラインを記憶する。
調整部150は、分析対象のデータ、利用対象の分析パイプライン、及び、バリデーションモジュールに対応した、上述の目的関数を生成する。調整部150は、生成した目的関数を利用対象の探索モジュールに入力し、当該探索モジュールを実行する。調整部150は、探索モジュールの実行の結果得られた分析パイプラインモデルを、ユーザ等へ出力する。
なお、分析パイプライン調整システム100は、CPUとプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。
図3は、本発明の第1の実施の形態における、コンピュータにより実現された分析パイプライン調整システム100の構成を示すブロック図である。
この場合、分析パイプライン調整システム100は、CPU101、ハードディスクやメモリ等の記憶デバイス102(記憶媒体)、キーボード、ディスプレイ等の入出力デバイス103、及び、他の装置等と通信を行う通信デバイス104を含む。CPU101は、初期化部110、及び、調整部150を実現するためのプログラムを実行する。記憶デバイス102は、バリデーションモジュール記憶部120、探索モジュール記憶部130、及び、分析パイプライン記憶部140の情報を記憶する。入出力デバイス103は、ユーザからの利用対象のバリデーションモジュール、探索モジュール、及び、分析パイプラインの入力の受け付け、及び、ユーザへの分析パイプラインモデルの出力を行う。また、通信デバイス104が、他の装置等から利用対象のバリデーションモジュール、探索モジュール、及び、分析パイプラインを受信する、或いは、他の装置等へ分析パイプラインモデルを送信してもよい。
また、図2における分析パイプライン調整システム100の各構成要素の一部又は全部は、汎用または専用の回路(circuitry)やプロセッサ、これらの組み合わせによって実現されてもよい。これらの回路やプロセッサは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、分析パイプライン調整システム100の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
図2における分析パイプライン調整システム100の各構成要素の一部又は全部が、複数の情報処理装置や回路等により実現される場合、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
次に、本発明の第1の実施の形態の動作について説明する。
ここでは、分析対象のデータが、図5のデータ「data1」であると仮定する。また、利用対象の分析パイプラインが、図4の「Pipeline1」、バリデーションモジュールが、Single Validationを行う「SingleValidation1」、探索モジュールが、Grid Searchを行う「GridSearch1」であると仮定する。
さらに、バリデーションモジュール記憶部120、探索モジュール記憶部130、分析パイプライン記憶部140には、それぞれ、利用対象のバリデーションモジュール、探索モジュール、分析パイプラインが、予めユーザ等により保存されていると仮定する。
図8は、本発明の第1の実施の形態における、分析パイプライン調整システム100の動作を示すフローチャートである。
はじめに、初期化部110は、ユーザ等から、分析対象のデータ、利用対象のバリデーションモジュール、探索モジュール、及び、分析パイプラインの入力を受け付ける(ステップS110)。
例えば、初期化部110は、分析対象のデータ「data1」、利用対象のバリデーションモジュール「SingleValidation1」、探索モジュール「GridSearch1」、及び、分析パイプライン「Pipeline1」の入力を受け付ける。
初期化部110は、バリデーションモジュール、探索モジュール、分析パイプラインを、バリデーションモジュール記憶部120、探索モジュール記憶部130、分析パイプライン記憶部140に保存する(ステップS120)。ここで、初期化部110は、バリデーションモジュール、探索モジュールに必要な設定を行ってもよい。
例えば、初期化部110はバリデーションモジュール「SingleValidation1」を、評価値としてRMSEを算出し、データの分割比率として学習用データ8割、テスト用データ2割を用いるように設定する。
図10は、本発明の第1の実施の形態における、探索範囲の例を示す図である。また、初期化部110は、例えば、探索モジュール「GridSearch1」の探索範囲として、利用対象の分析パイプライン「Pipeline1」に対応した、図10のような「grid1」を設定する。
図10において、「“Pow.d”: [2, 3]」は、分析パイプラインのブロック「Pow」に設定される次数dの値の候補として、2と3があることを示している。また、「“リッジ回帰.λ”:[10^-6, 10^-7, 10^-8]」は、ブロック「リッジ回帰」の正則化パラメータλの値の候補として、10^-6、10^-7、10^-8(^はべき乗を示す)があることを示している。この場合、パラメータセット(次数d、正則化パラメータλ)の値の探索範囲として、6通りの値の組み合わせが存在する。
次に、調整部150は、分析パイプライン記憶部140、及び、バリデーションモジュール記憶部120から、利用対象の分析パイプライン、及び、バリデーションモジュールを取得する。調整部150は、分析対象のデータ、利用対象の分析パイプライン、及び、バリデーションモジュールに対して、目的関数を生成する(ステップS130)。
例えば、調整部150は、データ「data1」、分析パイプライン「Pipeline1」、及び、バリデーションモジュール「SingleValidation1」に対して、図9のような処理を行う目的関数f1(x)を生成する。
次に、調整部150は、探索モジュール記憶部130から、利用対象の探索モジュールを取得する。調整部150は、生成した目的関数を利用対象の探索モジュールに入力し、当該探索モジュールを実行する(ステップS140)。
例えば、調整部150は、目的関数f1(x)を探索モジュール「GridSearch1」に入力し、実行する。
探索モジュール「GridSearch1」は、探索範囲「grid1」で指定される6通りのパラメータセット(次数d、正則化パラメータλ)の値の組み合わせの各々について、目的関数f1(x)を実行する。
例えば、探索モジュール「GridSearch1」は、探索範囲「grid1」に含まれる、パラメータセットの値「次数d=2、正則化パラメータλ=10^-6」を引数xに設定し、入力された目的関数f1(x)を実行する。
目的関数f1(x)は、引数xとして指定されたパイプラインパラメータの値「次数d=2、正則化パラメータλ=10^-6」を、分析パイプライン「Pipeline1」に設定する。そして、目的関数f1(x)は、データ「data1」と分析パイプライン「Pipeline1」を、バリデーションモジュール「SingleValidation1」に入力し、実行する。
バリデーションモジュール「SingleValidation1」は、データ「data1」、及び、分析パイプライン「Pipeline1」を用いて、分析パイプラインモデル「PipelineModel1」を生成する。ここで、バリデーションモジュール「SingleValidation1」は、データ「data1」の8割を学習用データとして用いて、分析パイプラインモデル「PipelineModel1」を生成する。そして、バリデーションモジュール「SingleValidation1」は、データ「data1」の残りの2割をテスト用データとして用いて、評価値(RMSE)を算出する。バリデーションモジュール「SingleValidation1」は、分析パイプラインモデル「PipelineModel1」、及び、評価値(RMSE)を返却する。
目的関数f1(x)は、バリデーションモジュール「SingleValidation1」の実行の結果得られた、評価値(RMSE)、及び、分析パイプラインモデル「PipelineModel1」を、戻り値として返却する。
探索モジュール「GridSearch1」は、探索範囲「grid1」で指定される6通りのパラメータセットの値の組み合わせの内、戻り値に含まれる評価値(RMSE)が最小となる組み合わせに対する分析パイプラインモデルを調整部150へ返却する。
次に、調整部150は、探索モジュールから返却された分析パイプラインモデルを、ユーザ等へ出力する(ステップS150)。
例えば、調整部150は、探索モジュールから返却された分析パイプラインモデル「PipelineModel1」を出力する。
以後、ユーザ等は、生成された分析パイプラインモデル「PipelineModel1」を用いて、新たなデータに対して、予測や分析を行うことができる。
以上により、本発明の第1の実施の形態の動作が完了する。
なお、ここでは、バリデーションモジュール、及び、探索モジュールとして、Single Validationを行うバリデーションモジュール、及び、Grid Searchを行う探索モジュールが用いられる場合を例に説明した。しかしながら、これに限らず、バリデーションモジュールや探索モジュールの入出力、及び、処理が、上述の定義に従っていれば、他のバリデーションモジュールや探索モジュールが用いられてもよい。
例えば、バリデーションモジュールとして、Cross Validationを行う「CrossValidation1」、探索モジュールとして、Random Searchを行う「RandomSearch1」が用いられてもよい。
この場合、バリデーションモジュール「CrossValidation1」は、例えば、データ「data1」を10分割して交差検定を行い、評価値(RMSE)の平均と、評価値(RMSE)が最小となる分析パイプラインモデル「PipelineModel1」を返却する。
図11は、本発明の第1の実施の形態における、探索範囲の他の例を示す図である。また、探索モジュール「RandomSearch1」には、初期化部110により、例えば、図11のような探索範囲「dist1」が設定される。図11において、「“Pow.d”: discrete([2, 3], [0.40, 0.6])」は、40%の確率で2、60%の確率で3となる多項分布を表し、「Norm(10^-7, 10^-8)」は、平均が10^-7、標準偏差が10^-8の正規分布を表す。探索モジュール「RandomSearch1」は、探索範囲「dist1」で表される分布に従って、パラメータセットの値の所定数(例えば100通り)の組み合わせをサンプリングして、各組み合わせについて、目的関数f1(x)を実行する。そして、探索モジュール「RandomSearch1」は、パラメータセットの値の所定数の組み合わせの内、戻り値に含まれる評価値(RMSE)が最小となる組み合わせに対する分析パイプラインモデル「PipelineModel1」を、調整部150へ返却する。
また、ここでは、パラメータセットが、分析パイプラインにおける前処理や学習処理に係るパラメータ(パイプラインパラメータ)であることを例に説明した。しかしながら、これに限らず、パラメータセットは、バリデーションモジュールにおけるバリデーション処理に係るパラメータを含んでいてもよい。
図12は、本発明の第1の実施の形態における、目的関数の他の処理を示すフローチャートである。この場合、目的関数は、引数xとして指定されたパラメータセットの値の組み合わせに含まれる、パイプラインパラメータの値を、分析パイプライン設定(適用)する(ステップS310)。また、目的関数は、パラメータセットの値の組み合わせに含まれる、バリデーション処理に係るパラメータの値を、利用対象のバリデーションモジュールに設定(適用)する(ステップS320)。目的関数は、分析対象のデータと、パイプラインパラメータの値が設定(適用)された分析パイプラインとを、利用対象のバリデーションモジュールに入力し、当該バリデーションモジュールを実行する(ステップS330)。目的関数は、バリデーションモジュールの実行の結果得られた、評価値、及び、分析パイプラインモデルを戻り値として、探索モジュールへ返却(出力)する(ステップS340)。
なお、目的関数は、例えば、パラメータセットの値の組み合わせをkey、valueのリストとして、バリデーションモジュールに入力してもよい。この場合、バリデーションモジュールは、リストの中から自バリデーションモジュールに設定(適用)可能なパラメータのkeyがあれば、対応するvalueの値を設定(適用)する。これにより、異なるバリデーションモジュールであっても、同一のインターフェースで、バリデーション処理の挙動を変更できる。
バリデーション処理に係るパラメータの値としては、例えば、学習用データの絞り込み割合を指定するパラメータ値が用いられる。
図13は、本発明の第1の実施の形態における、探索範囲の他の例を示す図である。例えば、Grid Searchを行う探索モジュール「GridSearch2」に、初期化部110により、図13のような探索範囲「grid2」が設定されていると仮定する。
図13において、「“SV.num_train_ratio”: [1.0, 0.8]」は、SingleValidationを行うバリデーションモジュールに設定(適用)される、学習用データの絞り込み割合num_train_ratioの値の候補として、1.0と0.8があることを示している。バリデーションモジュールは、絞り込み割合num_train_ratioが1.0であれば、学習用データの全てを用いて学習を行う。また、バリデーションモジュールは、絞り込み割合num_train_ratioが0.8であれば、学習用データの8割を選んで(絞り込んで)学習を行う。絞り込みの対象としては、例えば、データを時系列順に学習用データとテスト用データに分割する場合、テスト用データに近い時刻の8割のデータが選ばれる。
この場合、パラメータセット(次数d、正則化パラメータλ、及び、絞り込み割合num_train_ratio)の値の探索範囲として、8通りの値の組み合わせが存在する。
調整部150は、データ「data1」、分析パイプライン「Pipeline1」、及び、バリデーションモジュール「SingleValidation1」に対して、図12のような処理を行う目的関数f2(x)を生成する。
探索モジュール「GridSearch2」は、探索範囲「grid2」で指定される8通りのパラメータセットの値の組み合わせの各々について、目的関数f2(x)を通して、バリデーションモジュール「SingleValidation1」を実行し、分析パイプラインモデルを求める。
また、バリデーション処理に係るパラメータ値として、全データによる再学習(Refit処理)を指定するパラメータ(Refitフラグ)の値が用いられてもよい。
図14は、本発明の第1の実施の形態における、探索範囲の他の例を示す図である。例えば、Grid Searchを行う探索モジュール「GridSearch3」に、初期化部110により、図14のような探索範囲「grid3」が設定されていると仮定する。
図14において、「“SV.refit”: [true, false]」は、SingleValidationを行うバリデーションモジュールに設定(適用)されるRefitフラグ「refit」の値の候補として、trueとfalseがあることを示している。バリデーションモジュールは、Refitフラグがfalseであれば、学習用データを用いた学習、及び、テスト用データを用いた評価値の算出を行い、得られた分析パイプラインモデルをを返却する。一方、バリデーションモジュールは、Refitフラグがtrueであれば、学習用データを用いた学習、テスト用データを用いた評価値の算出を行った後で、全データ(学習用データ、及び、テスト用データ)を用いた学習を再度行い、分析パイプラインモデルを更新する。バリデーションモジュールは、再学習により更新された分析パイプラインモデルをを返却する。
この場合、パラメータセット(次数d、正則化パラメータλ、及び、Refitフラグ)の値の探索範囲として、8通りの値の組み合わせが存在する。
探索モジュール「GridSearch3」は、探索範囲「grid3」で指定される8通りのパラメータセットの値の組み合わせの各々について、目的関数f2(x)を通して、バリデーションモジュール「SingleValidation1」を実行し、分析パイプラインモデルを求める。
このように、パラメータセットにバリデーションモジュールにおけるバリデーション処理に係るパラメータを含めることで、学習データに係る条件や再学習に係る条件も含めてパラメータを調整でき、より精度の高い分析パイプラインモデルを得ることができる。
次に、本発明の第1の実施の形態の特徴的な構成を説明する。図1は、本発明の第1の実施の形態の特徴的な構成を示すブロック図である。分析パイプライン調整システム100(情報処理システム)は、初期化部110、及び、調整部150を含む。
初期化部110は、入力された分析パイプラインを用いて分析パイプラインモデルの生成、及び、評価値の算出を、所定のバリデーション方法に従って行い、出力する、バリデーションモジュールの入力を受け付ける。
調整部150は、パラメータセットの探索範囲内で、所定の探索方法に従って、パイプラインパラメータの値が適用された分析パイプラインをバリデーションモジュールに入力して実行し、評価値が最適化されるパラメータセットの値を探索する。調整部150は、最適化されたときの分析パイプラインモデルを出力する。
次に、本発明の第1の実施の形態の効果を説明する。
本発明の第1の実施によれば、様々なバリデーション方法に対して、分析パイプラインに係るパラメータの調整ができる。その理由は、以下による。すなわち、初期化部110が、入力された分析パイプラインを用いて分析パイプラインモデルの生成、及び、評価値の算出を、所定のバリデーション方法に従って行い、出力する、バリデーションモジュールの入力を受け付ける。そして、調整部150が、パラメータセットの探索範囲内で、所定の探索方法に従って、パイプラインパラメータの値が適用された分析パイプラインをバリデーションモジュールに入力、実行し、評価値が最適化されるパラメータセットの値を探索するためである。
また、本発明の第1の実施によれば、様々なバリデーション方法、及び、探索方法の組み合わせに対して、分析パイプラインに係るパラメータの調整ができる。その理由は、以下による。すなわち、初期化部110が、パラメータセットの探索範囲内で、所定の探索方法に従って、パラメータセットの値を目的関数に入力して実行し、評価値が最適化されるパラメータセットの値を探索する探索モジュールの入力を受け付ける。ここで、目的関数は、入力されたパラメータセットに含まれるパイプラインパラメータの値が適用された分析パイプラインをバリデーションモジュールに入力して実行することにより得られた評価値、及び、分析パイプラインモデルを出力する関数である。そして、調整部150が、目的関数を生成して、探索モジュールを実行するためである。
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。
本発明の第2の実施の形態においては、利用対象の分析パイプラインもパラメータとして指定する点において、本発明の第1の実施の形態と異なる。
はじめに、本発明の第2の実施の形態の構成について説明する。
本発明の第2の実施の形態における分析パイプライン調整システム100の構成を示すブロック図は、本発明の第1の実施の形態(図2)と同様となる。
本発明の第2の実施の形態では、分析パイプライン記憶部140が、複数の分析パイプラインを記憶する。また、本発明の第2の実施の形態では、パラメータセットが、利用対象の分析パイプラインの識別子を含む。
図17は、本発明の第2の実施の形態における、目的関数の処理を示すフローチャートである。目的関数は、引数xとして指定されたパラメータセットに含まれる識別子の分析パイプラインを分析パイプライン記憶部140から取得する(ステップS510)。目的関数は、パラメータセットに含まれるパイプラインパラメータの値を、取得した分析パイプラインに設定(適用)する(ステップS520)。目的関数は、分析対象のデータと、パイプラインパラメータの値が設定(適用)された分析パイプラインとを、利用対象のバリデーションモジュールに入力し、当該バリデーションモジュールを実行する(ステップS530)。目的関数は、バリデーションモジュールの実行の結果得られた、評価値、及び、分析パイプラインモデルを戻り値として、探索モジュールへ返却(出力)する(ステップS540)。
なお、分析パイプライン記憶部140が複数の分析パイプラインを記憶する代わりに、目的関数が、パラメータセットに含まれる識別子の分析パイプラインを、当該分析パイプラインに係る情報をもとに生成してもよい。
次に、本発明の第2の実施の形態の動作について説明する。
図15は、本発明の第2の実施の形態における、分析パイプラインの例を示す図である。図15の分析パイプライン「Pipeline2」は、図4の分析パイプライン「Pipeline1」と同様に、人間の身長、体重から、LDL(Low Density Lipoprotein)コレステロールを予測するための分析パイプラインモデルを生成する分析パイプラインである。ここで、分析パイプライン「Pipeline2」には、データの前処理を行うブロックとして、BMIを算出するブロック「BMI」、及び、身長のd乗を算出するブロック「Pow(身長)」が設定されている。また、学習処理を行うブロックとして、前処理が行われたデータから、LDLコレステロールを判定するための決定木モデルを、木の高さhで生成するブロック「決定木(LDL)」が設定されている。
ここでは、分析対象のデータが、図5のデータ「data1」であると仮定する。また、分析パイプラインが、図4の「Pipeline1」、または、図15の「Pipeline2」、バリデーションモジュールが、Single Validationを行う「SingleValidation1」、探索モジュールが、Grid Searchを行う「GridSearch4」であると仮定する。また、利用対象の分析パイプライン「Pipeline1」、「Pipeline2」は、例えば、予め、ユーザ等により指定されていると仮定する。。
図16は、本発明の第2の実施の形態における、分析パイプライン調整システム100の動作を示すフローチャートである。
はじめに、初期化部110は、ユーザ等から、分析対象のデータ、利用対象のバリデーションモジュール、及び、探索モジュールの入力を受け付ける(ステップS410)。
例えば、初期化部110は、分析対象のデータ「data1」、利用対象のバリデーションモジュール「SingleValidation1」、及び、探索モジュール「GridSearch4」の入力を受け付ける。
初期化部110は、バリデーションモジュール、及び、探索モジュールを、それぞれ、バリデーションモジュール記憶部120、及び、探索モジュール記憶部130に保存する(ステップS420)。ここで、初期化部110は、バリデーションモジュール、探索モジュールに必要な設定を行ってもよい。
図18は、本発明の第2の実施の形態における、探索範囲の例を示す図である。初期化部110は、例えば、探索モジュール「GridSearch4」の探索範囲として、利用対象の分析パイプライン「Pipeline1」、「Pipeline2」に対応した、図18のような「grid4」を設定する。
図18において、「“pipeline”: [“Pipeline1”]」、「“pipeline”: [“Pipeline2”]」は、それぞれ、図4、図15の分析パイプラインの識別子を示す。なお、分析パイプラインの識別子の代わりに、分析パイプラインが格納されたファイルパスが設定されていてもよい。
この場合、分析パイプライン「Pipeline1」について、パラメータセット(次数d、正則化パラメータλ)の値の探索範囲として、4通りの値の組み合わせが存在する。また、分析パイプライン「Pipeline2」について、パラメータセット(次数d、決定木の高さh)の値の探索範囲として、4通りの組み合わせが存在する。すなわちパラメータセットの値の探索範囲として、8通りの組み合わせが存在する。
次に、調整部150は、バリデーションモジュール記憶部120から、利用対象のバリデーションモジュールを取得する。調整部150は、分析対象のデータ、利用対象のバリデーションモジュールに対して、目的関数を生成する(ステップS430)。
例えば、調整部150は、データ「data1」、バリデーションモジュール「SingleValidation1」に対して、図17のような処理を行う目的関数f3(x)を生成する。
次に、調整部150は、探索モジュール記憶部130から、利用対象の探索モジュールを取得する。調整部150は、生成した目的関数を利用対象の探索モジュールに入力し、当該探索モジュールを実行する(ステップS440)。
例えば、調整部150は、目的関数f3(x)を探索モジュール「GridSearch4」に入力し、実行する。
探索モジュール「GridSearch4」は、探索範囲「grid4」で指定される8通りのパラメータセットの値の組み合わせの各々について、目的関数f3(x)を実行する。
例えば、探索モジュール「GridSearch4」は、探索範囲「grid4」に含まれる、パラメータセットの値「分析パイプライン=「pipline2」、次数d=3、決定木の高さh=10」を引数xに設定し、入力された目的関数f3(x)を実行する。
目的関数f3(x)は、引数xとして指定された分析パイプライン「pipline2」を取得し、パイプラインパラメータの値「次数d=3、決定木の高さh=10」を分析パイプライン「pipline2」に設定する。そして、目的関数f3(x)は、データ「data1」と分析パイプライン「pipline2」を、バリデーションモジュール「SingleValidation1」に入力し、実行する。
バリデーションモジュール「SingleValidation1」は、データ「data1」、及び、分析パイプライン「Pipeline2」を用いて、分析パイプラインモデルを生成する。
目的関数f3(x)は、バリデーションモジュール「SingleValidation2」の実行の結果得られた、評価値(RMSE)、及び、分析パイプラインモデルを、戻り値として返却する。
探索モジュール「GridSearch4」は、探索範囲「grid4」で指定される8通りのパラメータセットの値の組み合わせの内、戻り値に含まれる評価値(RMSE)が最小となる組み合わせに対する分析パイプラインモデルを、調整部150へ返却する。
次に、調整部150は、探索モジュールから返却された分析パイプラインモデルを、ユーザ等へ出力する(ステップS450)。
以上により、本発明の第2の実施の形態の動作が完了する。
なお、本発明の第2の実施の形態においても、本発明の第1の実施の形態と同様に、パラメータセットが、学習用データの絞り込み割合や、全データによる再学習を示すフラグ等、バリデーション処理に係るパラメータを含んでいてもよい。
次に、本発明の第2の実施の形態の効果を説明する。
本発明の第2の実施の形態によれば、本発明の第1の実施の形態に比べて、より精度の高い分析パイプラインを得ることができる。その理由は、パラメータセットが、さらに、分析パイプラインの識別子を含むためである。これにより、分析パイプラインに係る条件も含めてパラメータを調整でき、より精度の高い分析パイプラインモデルを得ることができる。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
100 分析パイプライン調整システム
101 CPU
102 記憶デバイス
103 入出力デバイス
104 通信デバイス
110 初期化部
120 バリデーションモジュール記憶部
130 探索モジュール記憶部
140 分析パイプライン記憶部
150 調整部

Claims (10)

  1. 分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成する情報処理システムであって、
    入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付ける、初期化手段と、
    前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する、調整手段と、
    を備えた情報処理システム。
  2. 目的関数を、入力された前記パラメータセットに含まれる前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより得られた前記評価値、及び、前記分析パイプラインモデルを出力する関数と定義した場合に、
    さらに、前記初期化手段は、前記パラメータセットの探索範囲内で、所定の探索方法に従って、前記パラメータセットの値を前記目的関数に入力して実行することにより得られる前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する探索モジュールの入力を受け付け、
    前記調整手段は、前記目的関数を生成して、前記探索モジュールを実行することにより得られた前記分析パイプラインモデルを出力する、
    請求項1に記載の情報処理システム。
  3. 前記パラメータセットは、さらに、前記分析パイプラインの識別子を含み、
    前記バリデーションモジュールを実行する場合、前記パラメータセットに含まれる前記パイプラインパラメータの値が適用された、前記分析パイプラインの識別子で示される前記分析パイプラインが入力される、
    請求項1または2に記載の情報処理システム。
  4. 前記パラメータセットは、さらに、前記所定のバリデーション方法に係るパラメータを含み、
    前記バリデーションモジュールは、入力された前記所定のバリデーション方法に係るパラメータの値に応じた前記所定のバリデーション方法に従って前記分析パイプラインモデルの生成、及び、当該分析パイプラインモデルの前記評価値の算出を行い、
    前記バリデーションモジュールを実行する場合、前記パラメータセットに含まれる前記パイプラインパラメータの値が適用された前記分析パイプラインに加えて、前記所定のバリデーション方法に係るパラメータの値が入力される、
    請求項1乃至3のいずれかに記載の情報処理システム。
  5. 前記所定のバリデーション方法に係るパラメータは、学習用データの絞り込み割合を指定するパラメータであり、
    前記バリデーションモジュールは、前記分析対象のデータを、前記分析パイプラインモデルを生成するための学習用データと前記分析パイプラインモデルの前記評価値を算出するためのテスト用データとに分割したときに、さらに、前記学習用データの絞り込み割合を指定するパラメータの値に従って、前記学習用データとして分割されたデータの絞り込みを行う、
    請求項4に記載の情報処理システム。
  6. 前記所定のバリデーション方法に係るパラメータは、再学習を指定するパラメータであり、
    前記バリデーションモジュールは、前記分析対象のデータの内、学習用データを用いた前記学習処理により前記分析パイプラインモデルを生成し、テスト用データを用いて前記分析パイプラインモデルの前記評価値を算出した後で、さらに、前記再学習を指定するパラメータの値に従って、前記学習用データと前記テスト用データとを用いた前記学習処理を再度行うことで、前記分析パイプラインモデルを更新する、
    請求項4に記載の情報処理システム。
  7. 分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成する情報処理方法であって、
    入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付け、
    前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する、
    情報処理方法。
  8. 目的関数を、入力された前記パラメータセットに含まれる前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより得られた前記評価値、及び、前記分析パイプラインモデルを出力する関数と定義した場合に、
    さらに、前記パラメータセットの探索範囲内で、所定の探索方法に従って、前記パラメータセットの値を前記目的関数に入力して実行することにより得られる前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する探索モジュールの入力を受け付け、
    前記分析パイプラインモデルを出力する場合、前記目的関数を生成して、前記探索モジュールを実行することにより得られた前記分析パイプラインモデルを出力する、
    請求項7に記載の情報処理方法。
  9. 分析対象のデータに対する前処理と学習処理とを含み、前記前処理と前記学習処理との内の少なくとも一方に係るパラメータであるパイプラインパラメータの値が適用された分析パイプラインを用いて、前記前処理と前記学習処理により学習された学習済みモデルとを含む分析パイプラインモデルを生成するプログラムを格納する記録媒体であって、
    コンピュータに、
    入力された前記分析パイプラインを用いて前記分析パイプラインモデルの生成、及び、生成した前記分析パイプラインモデルの評価値の算出を、所定のバリデーション方法に従って行い、生成した前記分析パイプラインモデル、及び、算出した前記評価値を出力するバリデーションモジュールの入力を受け付け、
    前記パイプラインパラメータを含むパラメータセットの探索範囲内で、所定の探索方法に従って、前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより、前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する、
    処理を実行させるプログラムを格納する、コンピュータが読み取り可能な記録媒体。
  10. 目的関数を、入力された前記パラメータセットに含まれる前記パイプラインパラメータの値が適用された前記分析パイプラインを前記バリデーションモジュールに入力して実行することにより得られた前記評価値、及び、前記分析パイプラインモデルを出力する関数と定義した場合に、
    さらに、前記パラメータセットの探索範囲内で、所定の探索方法に従って、前記パラメータセットの値を前記目的関数に入力して実行することにより得られる前記評価値が最適化される前記パラメータセットの値を探索し、最適化されたときの前記分析パイプラインモデルを出力する探索モジュールの入力を受け付け、
    前記分析パイプラインモデルを出力する場合、前記目的関数を生成して、前記探索モジュールを実行することにより得られた前記分析パイプラインモデルを出力する、
    処理を実行させる、請求項9に記載のプログラムを格納する、コンピュータが読み取り可能な記録媒体。
JP2018524580A 2016-06-30 2016-06-30 情報処理システム、情報処理方法、及び、プログラム Active JP6648828B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/003137 WO2018002967A1 (ja) 2016-06-30 2016-06-30 情報処理システム、情報処理方法、及び、記録媒体

Publications (2)

Publication Number Publication Date
JPWO2018002967A1 true JPWO2018002967A1 (ja) 2019-04-25
JP6648828B2 JP6648828B2 (ja) 2020-02-14

Family

ID=60785368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018524580A Active JP6648828B2 (ja) 2016-06-30 2016-06-30 情報処理システム、情報処理方法、及び、プログラム

Country Status (3)

Country Link
US (1) US20190180180A1 (ja)
JP (1) JP6648828B2 (ja)
WO (1) WO2018002967A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10698625B2 (en) * 2017-05-15 2020-06-30 Accenture Global Solutions Limited Data pipeline architecture for analytics processing stack
KR102262279B1 (ko) * 2019-10-02 2021-06-08 (주)디지탈쉽 이상치 탐지를 위한 데이터 처리 방법 및 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187099A (ja) * 2008-02-04 2009-08-20 Fuji Xerox Co Ltd 情報処理装置およびプログラム
JP5182267B2 (ja) * 2009-10-28 2013-04-17 株式会社豊田中央研究所 識別器構築装置、識別器、プログラム
US9020871B2 (en) * 2010-06-18 2015-04-28 Microsoft Technology Licensing, Llc Automated classification pipeline tuning under mobile device resource constraints
BR112015029806A2 (pt) * 2013-05-30 2020-04-28 President And Fellows Of Harvard College sistemas e métodos para realizar otimização bayesiana
US10318883B2 (en) * 2015-03-26 2019-06-11 International Business Machines Corporation Identifying optimum times at which to retrain a logistic regression model

Also Published As

Publication number Publication date
JP6648828B2 (ja) 2020-02-14
WO2018002967A1 (ja) 2018-01-04
US20190180180A1 (en) 2019-06-13

Similar Documents

Publication Publication Date Title
Probst et al. Tunability: Importance of hyperparameters of machine learning algorithms
US10380498B1 (en) Platform services to enable one-click execution of the end-to-end sequence of modeling steps
US11693917B2 (en) Computational model optimizations
Onchis et al. Stable and explainable deep learning damage prediction for prismatic cantilever steel beam
US20080228744A1 (en) Method and a system for automatic evaluation of digital files
EP3893169A2 (en) Method, apparatus and device for generating model and storage medium
Jahanshahloo et al. A linear bilevel programming problem for obtaining the closest targets and minimum distance of a unit from the strong efficient frontier
US20240193485A1 (en) System and method of operationalizing automated feature engineering
Yang et al. A pattern fusion model for multi-step-ahead CPU load prediction
JP2024516656A (ja) 産業特定機械学習アプリケーション
Kabaldin et al. CNC machine tools and digital twins
JP6648828B2 (ja) 情報処理システム、情報処理方法、及び、プログラム
de Paula et al. A gpu-based implementation of the firefly algorithm for variable selection in multivariate calibration problems
Yerlikaya-Özkurt et al. A review and new contribution on conic multivariate adaptive regression splines (CMARS): a powerful tool for predictive data mining
Dorado-Moreno et al. Ordinal multi-class architecture for predicting wind power ramp events based on reservoir computing
Heruwidagdo et al. Performance of Information Technology Infrastructure Prediction using Machine Learning
Băroiu et al. A Descriptive-Predictive–Prescriptive Framework for the Social-Media–Cryptocurrencies Relationship
Selvam et al. tofee-tree: au to matic fe ature e ngineering framework for modeling tre nd-cycl e in time series forecasting
Uniyal et al. Wine Quality Evaluation Using Machine Learning Algorithms
Raghava et al. Machine learning methods for software defect prediction a revisit
US11953862B2 (en) Optimal control configuration engine in a material processing system
US20220207391A1 (en) Integrated feature engineering
WO2024070170A1 (ja) 試作条件提案システム、試作条件提案方法
Sivakumar et al. Feature selection based on filter approach using mutual information with Genetic algorithm
Särkkä et al. Comparison of missing data handling methods for variant pathogenicity predictors

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191230

R150 Certificate of patent or registration of utility model

Ref document number: 6648828

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150