JP2017228068A - 機械学習管理プログラム、機械学習管理方法および機械学習管理装置 - Google Patents

機械学習管理プログラム、機械学習管理方法および機械学習管理装置 Download PDF

Info

Publication number
JP2017228068A
JP2017228068A JP2016123405A JP2016123405A JP2017228068A JP 2017228068 A JP2017228068 A JP 2017228068A JP 2016123405 A JP2016123405 A JP 2016123405A JP 2016123405 A JP2016123405 A JP 2016123405A JP 2017228068 A JP2017228068 A JP 2017228068A
Authority
JP
Japan
Prior art keywords
value
machine learning
prediction performance
dispersion
degree
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
JP2016123405A
Other languages
English (en)
Other versions
JP6703264B2 (ja
Inventor
晃 浦
Akira Ura
晃 浦
小林 健一
Kenichi Kobayashi
健一 小林
晴康 上田
Haruyasu Ueda
晴康 上田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016123405A priority Critical patent/JP6703264B2/ja
Priority to US15/597,976 priority patent/US11334813B2/en
Publication of JP2017228068A publication Critical patent/JP2017228068A/ja
Application granted granted Critical
Publication of JP6703264B2 publication Critical patent/JP6703264B2/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
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)
  • Computational Linguistics (AREA)

Abstract

【課題】機械学習において適切なパラメータ値を効率的に探索する。
【解決手段】演算部12は、パラメータ値13aとサイズ14aの訓練データとを用いて学習されたモデルにおける予測性能の測定値15aを取得し、パラメータ値13aとサイズ14bの訓練データとを用いて学習されるモデルにおける予測性能の期待値16aと分散度17aとを算出する。演算部12は、パラメータ値13bとサイズ14aの訓練データとを用いて学習されたモデルにおける予測性能の測定値15bを取得し、パラメータ値13bとサイズ14bの訓練データとを用いて学習されるモデルにおける予測性能の期待値16bと分散度17bとを算出する。演算部12は、期待値16a,16bおよび分散度17a,17bに基づいて、パラメータ値13cとサイズ14bの訓練データとを用いて学習されるモデルにおける予測性能の期待値16cと分散度17cとを算出する。
【選択図】図1

Description

本発明は機械学習管理プログラム、機械学習管理方法および機械学習管理装置に関する。
コンピュータを利用したデータ分析の1つとして、機械学習が行われることがある。機械学習では、幾つかの既知の事例を示す訓練データをコンピュータに入力する。コンピュータは、訓練データを分析して、要因(説明変数や独立変数と言うことがある)と結果(目的変数や従属変数と言うことがある)との間の関係を一般化したモデルを学習する。学習されたモデルを用いることで、未知の事例についての結果を予測することができる。例えば、複数人の生活習慣と病気の有無を調査した訓練データから、任意の人の病気の発症リスクを予測するモデルを学習できる。また、過去の商品・サービスの需要量を示す訓練データから、将来の商品・サービスの需要量を予測するモデルを学習できる。
機械学習では、学習されるモデルの正確さ、すなわち、未知の事例の結果を正確に予測する能力(予測性能と言うことがある)が高いことが好ましい。予測性能は、学習に用いる訓練データのサイズが大きいほど高くなる。一方、訓練データのサイズが大きいほど、モデルの学習時間も長くなる。そこで、実用上十分な予測性能をもつモデルを効率的に得られるようにする方法として、プログレッシブサンプリング法が提案されている。
プログレッシブサンプリング法では、コンピュータは、まず小さなサイズの訓練データを用いてモデルを学習する。コンピュータは、訓練データとは異なる既知の事例を示すテストデータを用いて、モデルによって予測した結果と既知の結果とを比較し、学習されたモデルの予測性能を評価する。予測性能が十分でない場合、コンピュータは、前回よりもサイズが大きい訓練データを用いてモデルを再学習する。以上を予測性能が十分に高くなるまで繰り返すことで、過度にサイズの大きな訓練データを使用することを抑制でき、モデルの学習時間を短縮することができる。
なお、サポートベクタマシン(SVM:Support Vector Machine)を用いて動画像からシーン境界を検出するにあたり、SVMの予測性能を向上させる再学習方法が提案されている。提案の再学習方法は、動画像である初期訓練データを用いてSVMを学習し、初期訓練データの明度やコントラストを変換した追加訓練データを生成し、初期訓練データと追加訓練データの両方を用いてSVMを再学習する。
また、訓練データの確率分布とテストデータの確率分布とが異なる場合であってもモデルを効率的に学習できる学習装置が提案されている。提案の学習装置は、訓練データの生成確率とテストデータの生成確率との比を重要度として算出する。学習装置は、重要度に依存する損失関数である重み付き損失関数を用いてモデルを学習する。
また、一部の説明変数の値が欠損している訓練データからモデルを学習できる予測モデル学習装置が提案されている。提案の予測モデル学習装置は、説明変数の値の欠損パターンに応じて訓練データを複数のグループに分割し、グループ毎にモデルを学習する。予測モデル学習装置は、複数のモデルの使用割合を算出し、学習した複数のモデルと算出した使用割合とに基づいて最終的なモデルを決定する。
特開2009−217348号公報 特開2010−92266号公報 特開2015−60237号公報
Foster Provost, David Jensen and Tim Oates, "Efficient Progressive Sampling", Proc. of the 5th International Conference on Knowledge Discovery and Data Mining, pp. 23-32, Association for Computing Machinery (ACM), 1999.
ところで、機械学習アルゴリズムには、その挙動を調整するパラメータ(ハイパーパラメータと言うこともある)が存在することがある。例えば、機械学習アルゴリズムの1つであるRBF(Radial Basis Function)カーネルSVMには、「C」と「γ」というパラメータが存在する。パラメータ値を変更することで、当該機械学習アルゴリズムの挙動を変更することができる。
パラメータ値を変更すると、機械学習アルゴリズムによって生成されるモデルが変わり、生成されるモデルの予測性能が変化することがある。ただし、どの様なパラメータ値を用いれば予測性能の高いモデルを生成できるかは、機械学習に用いる訓練データの特性に依存するため、最初から最適なパラメータ値を選択することは難しい。そのため、機械学習アルゴリズムのパラメータ値を変更可能である場合、機械学習を繰り返して、訓練データに合った適切なパラメータ値を探索することになる。
このとき、どの様にすれば適切なパラメータ値を効率的に探索できるかが問題となる。特に、プログレッシブサンプリング法のように機械学習に用いる訓練データのサイズも変更可能である場合に、適切なパラメータ値を探索する方法が問題となる。
1つの側面では、本発明は、機械学習において適切なパラメータ値を効率的に探索できる機械学習管理プログラム、機械学習管理方法および機械学習管理装置を提供することを目的とする。
1つの態様では、コンピュータに以下の処理を実行させる機械学習管理プログラムが提供される。機械学習アルゴリズムに適用可能な複数のパラメータ値のうちの第1のパラメータ値と第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第1の測定値を取得し、第1の測定値に基づいて、第1のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第1の期待値と第1の分散度とを算出する。複数のパラメータ値のうちの第2のパラメータ値と第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第2の測定値を取得し、第2の測定値に基づいて、第2のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第2の期待値と第2の分散度とを算出する。第1の期待値、第1の分散度、第2の期待値および第2の分散度に基づいて、複数のパラメータ値のうちの第3のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第3の期待値と第3の分散度とを算出する。
また、1つの態様では、コンピュータが実行する機械学習管理方法が提供される。また、1つの態様では、記憶部と演算部とを有する機械学習管理装置が提供される。
1つの側面では、機械学習において適切なパラメータ値を効率的に探索できる。
第1の実施の形態の機械学習管理装置の例を示す図である。 機械学習装置のハードウェア例を示すブロック図である。 サンプルサイズと予測性能の関係例を示すグラフである。 ハイパーパラメータと予測性能の関係例を示すグラフである。 予測性能の変化の三次元表示例を示すグラフである。 プログレッシブサンプリング法の第1の進行例を示す図である。 第1の学習進行画面の例を示す図である。 予測性能の第1の推定方法の例を示す図である。 予測性能の標準偏差の第1の推定例を示す図である。 予測性能の第2の推定方法の例を示す図である。 機械学習装置の機能例を示すブロック図である。 学習結果テーブルの例を示す図である。 中間推定テーブルの例を示す図である。 推定テーブルの例を示す図である。 機械学習の第1の手順例を示すフローチャートである。 性能改善量推定の第1の手順例を示すフローチャートである。 時間推定の手順例を示すフローチャートである。 ステップ実行の手順例を示すフローチャートである。 性能改善量推定の第2の手順例を示すフローチャートである。 予測性能の標準偏差の第2の推定例を示す図である。 プログレッシブサンプリング法の第2の進行例を示す図である。 機械学習の第2の進行画面例を示す図である。 機械学習の第2の手順例を示すフローチャートである。 予測性能の上限値と推定値と標準誤差の関係例を示すグラフである。 推定式生成の手順例を示すフローチャートである。
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
図1は、第1の実施の形態の機械学習管理装置の例を示す図である。
第1の実施の形態の機械学習管理装置10は、機械学習の進行を管理する。機械学習管理装置10が管理する機械学習は、既知の事例を示す訓練データから、未知の事例の結果を予測するモデルを生成する。機械学習の結果は、病気の発症リスクの予測、将来の商品・サービスの需要量の予測、工場における新製品の歩留まりの予測など、様々な用途に利用することができる。機械学習管理装置10が自ら機械学習を行ってもよいし、機械学習管理装置10が他の装置に機械学習を行わせてもよい。機械学習管理装置10は、ユーザが操作するクライアントコンピュータでもよいし、クライアントコンピュータからネットワーク経由でアクセスされるサーバコンピュータでもよい。
機械学習管理装置10は、記憶部11および演算部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性の半導体メモリでもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性のストレージでもよい。演算部12は、例えば、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。ただし、演算部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの特定用途の電子回路を含んでもよい。プロセッサは、RAMなどのメモリ(記憶部11でもよい)に記憶されたプログラムを実行する。プログラムには、機械学習管理プログラムが含まれる。複数のプロセッサの集合(マルチプロセッサ)を「プロセッサ」と呼ぶこともある。
機械学習には、ロジスティック回帰分析、SVM、ランダムフォレストなどの機械学習アルゴリズムが用いられる。機械学習アルゴリズムに適用するパラメータ(ハイパーパラメータと言うこともある)の値を変更することで、その機械学習アルゴリズムの挙動を変更することができる。ここで言うパラメータは、モデルに含まれる係数とは異なって機械学習を通じて値が決定されるものではなく、機械学習アルゴリズムの開始前に値が与えられるものである。パラメータの例として、ランダムフォレストにおける決定木の生成本数、回帰分析のフィッティング精度、モデルに含まれる多項式の次数などが挙げられる。
記憶部11は、既に生成されたモデル(既に行った機械学習の結果)について測定した予測性能の測定値を記憶する。予測性能を示す指標として、例えば、正答率(Accuracy)、適合率(Precision)、平均二乗誤差(RMSE:Root Mean Squared Error)などを用いることができる。記憶部11が記憶する測定値には、測定値15a(第1の測定値)と測定値15b(第2の測定値)が含まれる。測定値15aは、機械学習アルゴリズムにパラメータ値13a(第1のパラメータ値)を適用し、サイズ14a(第1のサイズ)の訓練データを用いて学習されたモデルの予測性能を示す。測定値15bは、機械学習アルゴリズムにパラメータ値13b(第2のパラメータ値)を適用し、サイズ14aの訓練データを用いて学習されたモデルの予測性能を示す。
演算部12は、測定値15aに基づいて、予測性能の期待値16a(第1の期待値)および分散度17a(第1の分散度)を算出する。期待値16aおよび分散度17aは、機械学習アルゴリズムにパラメータ値13aを適用し、サイズ14b(第2のサイズ)の訓練データを用いて学習されるモデルの予測性能の推定を示す。このとき、パラメータ値13aおよびサイズ14bの組に対応する機械学習は未実行であってよい。また、演算部12は、測定値15bに基づいて、予測性能の期待値16b(第2の期待値)および分散度17b(第2の分散度)を算出する。期待値16bおよび分散度17bは、機械学習アルゴリズムにパラメータ値13bを適用し、サイズ14bの訓練データを用いて学習されるモデルの予測性能の推定を示す。このとき、パラメータ値13bおよびサイズ14bの組に対応する機械学習は未実行であってよい。
サイズ14bは、好ましくはサイズ14aよりも大きい。例えば、サイズ14aが800個、サイズ14bが1600個などである。期待値16a,16bおよび分散度17a,17bは、例えば、回帰分析によって算出される。期待値16a,16bは、例えば、予測性能の推定値の平均である。分散度17a,17bは、例えば、予測性能の推定値のばらつき程度を示す値であり、統計上の分散や標準偏差などである。
すなわち、演算部12は、パラメータ値が同じでサイズが異なる予測性能の間の関係を分析し、訓練データのサイズを変えた場合の予測性能の変化を推定する。ただし、測定値が少ないうちは期待値16a,16bの推定精度が低くなることがある。また、測定値15a,15bには理論値からの乖離を示す誤差が含まれており、特にサイズ14aが小さい場合には訓練データのサンプリングの偏りに起因する誤差が含まれている。よって、予測性能が期待値16a,16bより大きくなる可能性を考慮するため、演算部12は、期待値16a,16bに加えて分散度17a,17bを算出する。
演算部12は、期待値16a,16bおよび分散度17a,17bに基づいて、予測性能の期待値16c(第3の期待値)および分散度17c(第3の分散度)を算出する。期待値16cおよび分散度17cは、機械学習アルゴリズムにパラメータ値13c(第3のパラメータ値)を適用し、サイズ14bの訓練データを用いて学習されるモデルの予測性能の推定を示す。このとき、パラメータ値13cおよびサイズ14bの組に対応する機械学習は未実行であってよい。期待値16cおよび分散度17cは、例えば、パラメータ値13a,13b,13cの近さに基づいて回帰分析により算出される。期待値16cは、例えば、予測性能の推定値の平均である。分散度17cは、例えば、予測性能の推定値のばらつき程度を示す値であり、統計上の分散や標準偏差などである。
すなわち、演算部12は、サイズが同じでパラメータ値が異なる予測性能の間の関係を分析し、パラメータ値を変えた場合の予測性能の変化を推定する。ここで分析に用いるデータには、既に実行された機械学習についての測定値だけでなく推定値も含まれる。分散度17a,17bを算出したときと同様、予測性能が期待値16cより大きくなる可能性を考慮するため、演算部12は、期待値16cに加えて分散度17cを算出する。
分散度17cを算出するにあたり、演算部12は、期待値16a,16bに加えて分散度17a,17bも考慮する。期待値16a,16bのみから回帰分析により分散度17cを算出するなど、分散度17a,17bを考慮せずに分散度17cを算出してしまうと、期待値16a,16bに推定誤差が含まれることを無視することになる。その結果、分散度17a,17bが大きい場合でも、分散度17cが不当に小さくなるおそれがある。そこで、演算部12は、分散度17a,17bを使用して分散度17cを算出する。
例えば、演算部12は、パラメータ値13aについて、期待値16aと分散度17aに基づいて予測性能のサンプル値を抽出し、パラメータ値13bについて、期待値16bと分散度17bに基づいて予測性能のサンプル値を抽出する。演算部12は、抽出したサンプル値を用いて回帰分析を行い、パラメータ値13cについての推定値のばらつき程度を算出する。サンプル値の抽出は、モンテカルロシミュレーションによって行ってもよい。また、例えば、演算部12は、ガウス過程を用いた推定方法により、所定の計算式に従って、期待値16a,16bおよび分散度17a,17bから期待値16cおよび分散度17cを直接算出する。分散度17a,17bを考慮して算出される分散度17cは、分散度17a,17bを考慮しないで算出される分散度よりも大きくなる。
演算部12は、算出された期待値16a,16b,16cおよび分散度17a,17b,17cに基づいて、次に行う機械学習で使用するパラメータ値を選択するようにしてもよい。例えば、演算部12は、期待値16cと分散度17cに基づいて、期待値16cより大きい予測性能の指標値を算出する。指標値は、例えば、95%予測区間の上限値(UCB:Upper Confidence Bound)である。演算部12は、算出した指標値に基づいて、パラメータ値13cとサイズ14bの組に対応する機械学習を行うか否か判定する。
なお、図1ではパラメータ値13aの期待値16aおよび分散度17aと、パラメータ値13bの期待値16bおよび分散度17bから、パラメータ値13cの期待値16cおよび分散度17cを算出している。これに対し、3以上のパラメータ値の期待値および分散度から、期待値16cおよび分散度17cを算出することも可能である。また、別のパラメータ値とサイズ14bの組について、機械学習を実行済みであり予測性能の測定値が存在する場合、期待値16a,16bおよび分散度17a,17bに加えて当該測定値を用いて、期待値16cおよび分散度17cを算出してもよい。
第1の実施の形態の機械学習管理装置10によれば、パラメータ値13aとサイズ14aの組に対応する測定値15aに基づいて、パラメータ値13aとサイズ14bの組に対応する期待値16aおよび分散度17aが算出される。また、パラメータ値13bとサイズ14aの組に対応する測定値15bに基づいて、パラメータ値13bとサイズ14bの組に対応する期待値16bおよび分散度17bが算出される。そして、期待値16a,16bおよび分散度17a,17bに基づいて、パラメータ値13cとサイズ14bの組に対応する期待値16cおよび分散度17cが算出される。
これにより、パラメータ値13cを用いた機械学習が未実行であっても、その機械学習によって生成されるモデルの予測性能を推定することが可能となる。よって、モデルの予測性能が高くなるような適切なパラメータ値を効率的に探索することができる。また、分散度17a,17bを用いて分散度17cを算出するため、分散度17cが過剰に小さく算出されてしまうことを抑制できる。よって、パラメータ値13cを使用することで予測性能が高くなる可能性が過小評価されてしまうことを抑制できる。
[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、機械学習装置のハードウェア例を示すブロック図である。
機械学習装置100は、CPU101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106および通信インタフェース107を有する。CPU101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106および通信インタフェース107は、バス108に接続されている。なお、機械学習装置100は、第1の実施の形態の機械学習管理装置10に対応する。CPU101は、第1の実施の形態の演算部12に対応する。RAM102またはHDD103は、第1の実施の形態の記憶部11に対応する。
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。なお、CPU101は複数のプロセッサコアを備えてもよく、機械学習装置100は複数のプロセッサを備えてもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列に実行してもよい。また、複数のプロセッサの集合(マルチプロセッサ)を「プロセッサ」と呼んでもよい。
RAM102は、CPU101が実行するプログラムやCPU101が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、機械学習装置100は、RAM以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。プログラムには、機械学習管理プログラムが含まれる。なお、機械学習装置100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
画像信号処理部104は、CPU101からの命令に従って、機械学習装置100に接続されたディスプレイ111に画像を出力する。ディスプレイ111としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、プラズマディスプレイ(PDP:Plasma Display Panel)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイなどを用いることができる。
入力信号処理部105は、機械学習装置100に接続された入力デバイス112から入力信号を取得し、CPU101に出力する。入力デバイス112としては、マウスやタッチパネルやタッチパッドやトラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、機械学習装置100に、複数の種類の入力デバイスが接続されていてもよい。
媒体リーダ106は、記録媒体113に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体113として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)、半導体メモリなどを使用できる。媒体リーダ106は、例えば、記録媒体113から読み取ったプログラムやデータをRAM102またはHDD103に格納する。
通信インタフェース107は、ネットワーク114に接続され、ネットワーク114を介して他の情報処理装置と通信を行うインタフェースである。通信インタフェース107は、スイッチなどの通信装置とケーブルで接続される有線通信インタフェースでもよいし、基地局と無線リンクで接続される無線通信インタフェースでもよい。
次に、機械学習におけるサンプルサイズと予測性能とハイパーパラメータの関係、および、プログレッシブサンプリング法について説明する。
第2の実施の形態の機械学習では、既知の事例を示す複数の単位データを含むデータを予め収集しておく。機械学習装置100または他の情報処理装置が、センサデバイスなどの各種デバイスからネットワーク114経由でデータを収集してもよい。収集されるデータは、「ビッグデータ」と呼ばれるサイズの大きなデータであってもよい。各単位データは、通常は、2以上の説明変数の値と1つの目的変数の値とを含む。例えば、商品の需要予測を行う機械学習では、気温や湿度など商品需要に影響を与える要因を説明変数とし、商品需要量を目的変数とした実績データを収集する。
機械学習装置100は、収集されたデータの中から一部の単位データを訓練データとしてサンプリングし、訓練データを用いてモデルを学習する。モデルは、説明変数と目的変数との間の関係を示し、通常は、2以上の説明変数と2以上の係数と1つの目的変数とを含む。モデルは、例えば、線形式・二次以上の多項式・指数関数・対数関数などの各種数式によって表される。数式の形は、機械学習の前にユーザによって指定されてもよい。係数は、機械学習を通じて訓練データに基づいて決定される。
学習されたモデルを用いることで、未知の事例の説明変数の値(要因)から、未知の事例の目的変数の値(結果)を予測することができる。例えば、来期の気象予報から来期の商品需要量を予測できる。モデルによって予測される結果は、0以上1以下の確率値などの連続値であってもよいし、YES/NOの2値などの離散値であってもよい。
学習されたモデルに対しては「予測性能」を算出することができる。予測性能は、未知の事例の結果を正確に予測する能力であり、「精度」と言うこともできる。機械学習装置100は、収集されたデータの中から訓練データ以外の単位データをテストデータとしてサンプリングし、テストデータを用いて予測性能を算出する。テストデータのサイズは、例えば、訓練データのサイズの1/2程度とする。機械学習装置100は、テストデータに含まれる説明変数の値をモデルに入力し、モデルが出力する目的変数の値(予測値)とテストデータに含まれる目的変数の値(実績値)とを比較する。なお、学習したモデルの予測性能を検証することを「バリデーション」と言うことがある。
予測性能の指標としては、正答率(Accuracy)、適合率(Precision)、平均二乗誤差(RMSE)などが挙げられる。例えば、結果がYES/NOの2値で表されるとする。また、N件のテストデータの事例のうち、予測値=YES・実績値=YESの件数をTp、予測値=YES・実績値=NOの件数をFp、予測値=NO・実績値=YESの件数をFn、予測値=NO・実績値=NOの件数をTnとする。この場合、正答率は予測が当たった割合であり、(Tp+Tn)/Nと算出される。適合率は「YES」の予測を間違えない確率であり、Tp/(Tp+Fp)と算出される。平均二乗誤差は、各事例の実績値をyと表し予測値をy^と表すと、(sum(y−y^)2/N)1/2と算出される。
第2の実施の形態では、機械学習に特定の1つの機械学習アルゴリズムを使用する場合を考える。使用する機械学習アルゴリズムは、ユーザによって指定されてもよいし、機械学習装置100が選択してもよい。機械学習装置100は、複数の機械学習アルゴリズムを使い分けるようにしてもよい。機械学習アルゴリズムとしては、ロジスティック回帰分析、SVM、ランダムフォレストなどが挙げられる。
ロジスティック回帰分析は、目的変数yの値と説明変数x1,x2,…,xkの値をS字曲線にフィッティングする回帰分析である。目的変数yおよび説明変数x1,x2,…,xkは、log(y/(1−y))=a11+a22+…+akk+bの関係を満たすと仮定される。a1,a2,…,ak,bは係数であり、回帰分析によって決定される。
サポートベクタマシンは、N次元空間に配置された単位データの集合を、2つのクラスに最も明確に分割するような境界面を算出する機械学習アルゴリズムである。境界面は、各クラスとの距離(マージン)が最大になるように算出される。
ランダムフォレストは、複数の単位データを適切に分類するためのモデルを生成する機械学習アルゴリズムである。ランダムフォレストでは、母集合から単位データをランダムにサンプリングする。説明変数の一部をランダムに選択し、選択した説明変数の値に応じてサンプリングした単位データを分類する。説明変数の選択と単位データの分類を繰り返すことで、複数の説明変数の値に基づく階層的な決定木を生成する。単位データのサンプリングと決定木の生成を繰り返すことで複数の決定木を取得し、それら複数の決定木を合成することで、単位データを分類するための最終的なモデルを生成する。
機械学習アルゴリズムは、その挙動を調整するためのハイパーパラメータをもつ。ハイパーパラメータは、モデルに含まれる係数とは異なって機械学習を通じて値が決定されるものではなく、機械学習アルゴリズムの実行前に値が与えられるものである。ハイパーパラメータの例として、ランダムフォレストにおける決定木の生成本数、回帰分析のフィッティング精度、モデルに含まれる多項式の次数などが挙げられる。一般的に、同じハイパーパラメータ値を使用する場合には、訓練データとしてサンプリングする単位データの数(サンプルサイズ)が多いほどモデルの予測性能は高くなる。
図3は、サンプルサイズと予測性能の関係例を示すグラフである。
曲線21aは、ハイパーパラメータθの値が2.1である場合のサンプルサイズと予測性能の関係を示す。曲線21bは、ハイパーパラメータθの値が3.4である場合のサンプルサイズと予測性能の関係を示す。曲線21cは、ハイパーパラメータθの値が9.5である場合のサンプルサイズと予測性能の関係を示す。
曲線21a,21b,21cが示すように、任意のハイパーパラメータ値について、サンプルサイズが大きいほどモデルの予測性能は高くなる。予測性能が低いうちはサンプルサイズの増加に応じて予測性能が大きく上昇する。一方、予測性能には上限があり、予測性能が上限に近づくとサンプルサイズの増加量に対する予測性能の上昇量の比は逓減する。また、サンプルサイズが大きいほど、機械学習に要する学習時間も長くなる。このため、サンプルサイズを過度に大きくすると、学習時間の点で機械学習が非効率になる。
予測性能の上限は、機械学習アルゴリズムに適用するハイパーパラメータθの値によって異なる。図3の例では、θ=3.4の場合の予測性能の上限はθ=9.5の場合よりも高く、θ=2.1の場合の予測性能の上限はθ=3.4の場合よりも更に高い。
ただし、サンプルサイズと予測性能の間の関係は、ハイパーパラメータ値が同じであっても、機械学習に用いる訓練データの特性(訓練データの種類)に応じて変わる。また、異なるハイパーパラメータ値の間の予測性能の大小関係も、機械学習に用いる訓練データの特性に応じて変わる。このため、機械学習を開始する前に、予測性能が最大になるハイパーパラメータ値を特定することは難しく、上限に近い予測性能を達成できる最小のサンプルサイズを特定することも難しい。よって、幾つかのハイパーパラメータ値とサンプルサイズの組について機械学習を試行し、予測性能の高いモデルを効率的に生成できるハイパーパラメータ値とサンプルサイズの組を探索することになる。
図4は、ハイパーパラメータと予測性能の関係例を示すグラフである。
曲線22a,22b,22cは、予測性能の変化を図3とは異なる座標軸を用いて表したものである。曲線22aは、サンプルサイズsが200である場合のハイパーパラメータθと予測性能の関係を示す。曲線22bは、サンプルサイズsが800である場合のハイパーパラメータθと予測性能の関係を示す。曲線22cは、サンプルサイズsが3200である場合のハイパーパラメータθと予測性能の関係を示す。
曲線22a,22b,22cが示す例によれば、同じサンプルサイズの中では、θ=7.6の場合の予測性能はθ=9.5の場合よりも高い。θ=5.2の場合の予測性能は、θ=7.6の場合よりも更に高い。θ=3.4の場合の予測性能は、θ=5.2の場合よりも更に高い。θ=2.1の場合の予測性能は、θ=3.4の場合よりも更に高い。サンプルサイズが大きくなると、θ=2.1,θ=3.4,θ=5.2,θ=7.6,θ=9.5の場合の予測性能は全体として高くなる。
なお、図4では、異なるハイパーパラメータ値の間の予測性能の大小関係は、全てのサンプルサイズにおいて同じになっている。これに対し、サンプルサイズによって予測性能の大小関係が変わることもあり得る。例えば、サンプルサイズs=200ではθ=9.5の場合の予測性能がθ=7.6の場合より高く、サンプルサイズs=800ではθ=9.5の場合の予測性能がθ=7.6の場合より低くなるということもあり得る。
図5は、予測性能の変化の三次元表示例を示すグラフである。
曲線23aは、ハイパーパラメータθの値が2.1である場合のサンプルサイズと予測性能の関係を示しており、図3の曲線21aに相当する。曲線23bは、ハイパーパラメータθの値が3.4である場合のサンプルサイズと予測性能の関係を示しており、図3の曲線21bに相当する。曲線23cは、ハイパーパラメータθの値が9.5である場合のサンプルサイズと予測性能の関係を示しており、図3の曲線21cに相当する。なお、図4の曲線22aは、図5のサンプルサイズs=200の面を切り取ったものに相当する。図4の曲線22bは、サンプルサイズs=800の面を切り取ったものに相当する。図4の曲線22cは、サンプルサイズs=3200の面を切り取ったものに相当する。
このようなハイパーパラメータθとサンプルサイズsと予測性能の関係は、機械学習を開始していない時点では不明である。そこで、機械学習装置100は、小さなサンプルサイズで機械学習を試行し、その学習結果から図5のような曲線を推定し、機械学習に用いるハイパーパラメータ値とサンプルサイズの組を絞り込んでいく。そのために、機械学習装置100は、プログレッシブサンプリング法を応用して、複数のハイパーパラメータ値の中から最適なハイパーパラメータ値を探索できるようにする。
図6は、プログレッシブサンプリング法の第1の進行例を示す図である。
機械学習装置100は、1つのハイパーパラメータ値と1つのサンプルサイズの組に対応する1回の機械学習(1つの学習ステップ)を順次実行していく。機械学習装置100は、1つの学習ステップが終わる毎に、これまでに実行した学習ステップの結果に基づいて、次に実行する学習ステップのハイパーパラメータ値とサンプルサイズを動的に選択する。機械学習装置100は、機械学習アルゴリズムに適用可能な複数のハイパーパラメータ値と複数のサンプルサイズの組を網羅的に実行するのではなく、実行するハイパーパラメータ値とサンプルサイズの組を絞り込むようにする。
図6の例では、機械学習装置100は、まず学習ステップ24aを実行する。学習ステップ24aでは、θ=2.1かつs=100に設定して機械学習を行う。ただし、機械学習装置100は、サンプルサイズの増加に対する予測性能の変化を適切に推定できるように、サンプルサイズが小さいうちはハイパーパラメータ値が同じでサンプルサイズが異なる機械学習をまとめて実行することとする。よって、学習ステップ24aでは、θ=2.1かつs=100,s=200,s=400,s=800の機械学習を連続的に行う。
次に、機械学習装置100は、学習ステップ24bを実行する。学習ステップ24bでは、θ=9.5かつs=100,s=200,s=400,s=800に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ24cを実行する。学習ステップ24cでは、θ=5.2かつs=100,s=200,s=400,s=800に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ24dを実行する。学習ステップ24dでは、θ=3.4かつs=100,s=200,s=400,s=800に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ24eを実行する。学習ステップ24eでは、θ=7.6かつs=100,s=200,s=400,s=800に設定して機械学習を行う。
次に、機械学習装置100は、学習ステップ24fを実行する。学習ステップ24fでは、θ=2.1かつs=1600に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ24gを実行する。学習ステップ24gでは、θ=5.2かつs=1600に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ24hを実行する。学習ステップ24hでは、θ=2.1かつs=3200に設定して機械学習を行う。θ=3.4,θ=7.6,θ=9.5かつs=1600に設定した機械学習は、予測性能が向上する可能性が小さければ実行しなくてよい。
1つの学習ステップの中では、機械学習装置100は、訓練データを用いてモデルを生成し、テストデータを用いてモデルの予測性能を評価する。1つの学習ステップ内での手順(バリデーション方法)として、例えば、機械学習装置100は、クロスバリデーションやランダムサブサンプリングバリデーションなどを用いることができる。
クロスバリデーションでは、機械学習装置100は、サンプリングしたデータをM個(Mは2以上の整数)のブロックに分割し、このうちM−1個のブロックを訓練データとして使用して1個のブロックをテストデータとして使用する。機械学習装置100は、テストデータとして使用するブロックを変えながらモデルの学習と予測性能の評価をM回繰り返す。1つの学習ステップの結果として、例えば、M個のモデルのうち最も予測性能の高いモデルと、M回の予測性能の平均値とが出力される。クロスバリデーションは、限定された量のデータを活用して予測性能の評価を可能とする。
ランダムサブサンプリングバリデーションでは、機械学習装置100は、データの母集合から訓練データとテストデータをランダムにサンプリングし、訓練データを用いてモデルを学習し、テストデータを用いてモデルの予測性能を算出する。機械学習装置100は、サンプリングとモデルの生成と予測性能の評価とをM回繰り返す。各サンプリングは、非復元抽出サンプリングである。すなわち、1回のサンプリングの中で、訓練データ内に同じ単位データは重複して含まれず、テストデータ内に同じ単位データは重複して含まれない。また、1回のサンプリングの中で、訓練データとテストデータに同じ単位データは重複して含まれない。ただし、M回のサンプリングの間で、同じ単位データが選択されることはあり得る。1つの学習ステップの結果として、例えば、M個のモデルのうち最も予測性能の高いモデルと、M回の予測性能の平均値とが出力される。
次の学習ステップで用いるハイパーパラメータ値とサンプルサイズの組を選択する方法として、機械学習装置100は、ハイパーパラメータ値毎に予測性能の改善速度を推定し、改善速度が最大のハイパーパラメータ値を選択する。機械学習装置100は、選択したハイパーパラメータ値について、実行済みのサンプルサイズより1段階大きいサンプルサイズを選択し、選択したハイパーパラメータ値とサンプルサイズの組を用いて学習ステップを実行する。改善速度は、学習ステップを1つ進める毎に見直される。
改善速度の推定値は、性能改善量の推定値を実行時間の推定値で割ったものである。性能改善量の推定値は、サンプルサイズを大きくした場合の予測性能の推定値と、複数のハイパーパラメータ値を通じて現在までに達成された予測性能の最大値(達成予測性能)との差である。実行時間の推定値は、サンプルサイズを大きくした場合の機械学習に要する時間の推定値である。実行したことのあるハイパーパラメータ値については、小さなサンプルサイズでの予測性能の測定値と実行時間の測定値とに基づいて、大きなサンプルサイズでの予測性能の推定値と実行時間の推定値とが算出される。実行したことのないハイパーパラメータ値については、他のハイパーパラメータ値についての予測性能と実行時間とに基づいて、予測性能の推定値と実行時間の推定値とが算出される。
機械学習装置100は、未実行のハイパーパラメータ値とサンプルサイズの組それぞれについて、予測性能の推定値と実行時間の推定値とを算出する。機械学習装置100は、予測性能の推定値と現在の達成予測性能から性能改善量の推定値を算出する。また、機械学習装置100は、未実行のサンプルサイズの実行時間の推定値を累積して累積実行時間の推定値を算出する。これにより、未実行のハイパーパラメータ値とサンプルサイズの組それぞれについて、性能改善量の推定値と累積実行時間の推定値が算出される。
機械学習装置100は、未実行のハイパーパラメータ値とサンプルサイズの組それぞれについて、性能改善量の推定値を累積実行時間の推定値で割った指標値を算出する。機械学習装置100は、ハイパーパラメータ値が同じでサンプルサイズが異なる複数の指標値の中から1つの指標値を選択し、選択した指標値を当該ハイパーパラメータ値の改善速度の推定値とする。例えば、機械学習装置100は、閾値を超える指標値のうちサンプルサイズが最小である指標値を、改善速度の推定値として選択する。また、例えば、機械学習装置100は、最大のサンプルサイズの指標値を、改善速度の推定値として選択する。
図6の例では、機械学習装置100は、学習ステップ24aを実行した後に各ハイパーパラメータ値の改善速度を算出し、改善速度が最大であるθ=9.5を選択している。また、機械学習装置100は、学習ステップ24bを実行した後に各ハイパーパラメータ値の改善速度を更新し、改善速度が最大であるθ=5.2を選択している。同様に、機械学習装置100は、学習ステップ24cを実行した後に改善速度が最大のθ=3.4を選択し、学習ステップ24dを実行した後に改善速度が最大のθ=7.6を選択している。また、機械学習装置100は、学習ステップ24eを実行した後に改善速度が最大のθ=2.1を選択し、学習ステップ24fを実行した後に改善速度が最大のθ=5.2を選択し、学習ステップ24gを実行した後に改善速度が最大のθ=2.1を選択している。
なお、性能改善量を推定するにあたっては、統計誤差を考慮し、予測性能が今後上昇する可能性のあるハイパーパラメータ値を早期に切り捨ててしまうリスクを低減することが好ましい。そこで、例えば、機械学習装置100は、回帰分析によって予測性能の期待値とその95%予測区間を算出し、95%予測区間の上限値(UCB:Upper Confidence Bound)を、性能改善量を算出する際の予測性能を推定値として用いることが考えられる。95%予測区間は、測定される予測性能(測定値)のばらつきを示すものであり、新たな予測性能が95%の確率でこの区間に収まると予想されることを示す。すなわち、統計上の期待値よりも統計誤差に応じた幅だけ大きい値を使用することになる。
ただし、UCBに代えて、機械学習装置100は、推定される予測性能の分布を積分して、予測性能が達成予測性能を超える確率(PI:Probability of Improvement)を算出してもよい。また、機械学習装置100は、推定される予測性能の分布を積分して、予測性能が達成予測性能を超える期待値(EI:Expected Improvement)を算出してもよい。
図7は、第1の学習進行画面の例を示す図である。
機械学習装置100は、機械学習が行われている間、ディスプレイ111に学習進行画面25を表示する。学習進行画面25は、学習ステップの実行順序を示す。学習進行画面25は、複数のハイパーパラメータ値に対応する複数の行と、複数のサンプルサイズに対応する複数の列とによって形成される表を有する。学習進行画面25の表には、機械学習の進行に伴い、学習ステップの実行順序を示す数値が記入されていく。
例えば、学習進行画面25には、θ=2.1かつs=800以下の学習ステップの順序が「1」と表示される。同様に、学習進行画面25には、θ=9.5かつs=800以下の学習ステップの順序が「2」と表示される。θ=5.2かつs=800以下の学習ステップの順序が「3」と表示される。θ=3.4かつs=800以下の学習ステップの順序が「4」と表示される。θ=7.6かつs=800以下の学習ステップの順序が「5」と表示される。θ=2.1かつs=1600の学習ステップの順序が「6」と表示される。θ=5.2かつs=1600の学習ステップの順序が「7」と表示される。θ=2.1かつs=3200の学習ステップの順序が「8」と表示される。θ=3.4かつs=1600の学習ステップの順序が「9」と表示される。
次に、予測性能の推定方法について説明する。
図8は、予測性能の第1の推定方法の例を示す図である。
第1の推定方法は、予測性能の単純な推定方法の例である。行列26は、第1の推定方法を示す。ここでは、θ=2.1かつs=100〜3200の学習ステップと、θ=9.5かつs=100〜800の学習ステップが実行済みであるとする。また、θ=2.1かつs=6400の学習ステップと、θ=3.4かつs=100〜6400の学習ステップと、θ=9.5かつs=1600〜6400の学習ステップが未実行であるとする。
図8の行列26に示すように、θ=2.1かつs=6400の予測性能の推定値は、θ=2.1の学習ステップを1つ以上実行済みであるため、ハイパーパラメータ値が同じでサンプルサイズが異なる予測性能の測定値から回帰分析により算出することができる。前述のように、性能改善量は誤差による上振れを考慮して算出されるため、予測性能の平均に加えて標準偏差も算出される。予測性能の平均は、期待値を表していると言える。予測性能の標準偏差は、ばらつき度(分散度)を表していると言える。図8の例では、θ=2.1かつs=100〜3200の予測性能の測定値から、θ=2.1かつs=6400の予測性能の平均が0.94、標準偏差が0.02と算出されている。
同様に、θ=9.5かつs=1600〜6400の予測性能の推定値は、θ=9.5の学習ステップを1つ以上実行済みであるため、ハイパーパラメータ値が同じでサンプルサイズが異なる予測性能の測定値から回帰分析により算出することができる。図8の例では、θ=9.5かつs=100〜800の予測性能の測定値から、θ=9.5かつs=1600〜6400の予測性能の平均が0.72、標準偏差が0.01と算出されている。
θ=3.4かつs=100〜800の予測性能の推定値は、θ=3.4の学習ステップを1つも実行していないため、サンプルサイズが同じでハイパーパラメータ値が異なる予測性能の測定値から回帰分析により算出することができる。ここでも、予測性能の平均に加えて標準偏差が算出される。図8の例では、θ=2.1,θ=9.5かつs=100の予測性能の測定値から、θ=3.4かつs=100の予測性能の平均が0.70、標準偏差が0.03と算出されている。また、θ=3.4かつs=200の予測性能の平均が0.77、標準偏差が0.03と算出されている。また、θ=3.4かつs=400の予測性能の平均が0.82、標準偏差が0.03と算出されている。また、θ=3.4かつs=800の予測性能の平均が0.85、標準偏差が0.03と算出されている。
θ=3.4かつs=1600〜6400の予測性能の推定値は、θ=3.4の学習ステップを1つも実行していないため、サンプルサイズが同じでハイパーパラメータ値が異なる予測性能の測定値や推定値から回帰分析により算出することができる。実行済みの学習ステップについては測定値が用いられ、未実行の学習ステップについては推定値が用いられる。これにより、大きいサンプルサイズについての予測性能を推定することができる。ただし、第1の推定方法では、回帰分析の説明変数の値として、未実行の学習ステップについては推定した平均を使用し、標準偏差は考慮しないものとする。
図8の例では、θ=2.1かつs=1600の測定値0.92と、θ=9.5かつs=1600の平均0.72から、θ=3.4かつs=1600の予測性能の平均が0.88、標準偏差が0.03と算出されている。θ=2.1かつs=3200の測定値0.93と、θ=9.5かつs=3200の平均0.72から、θ=3.4かつs=3200の予測性能の平均が0.89、標準偏差が0.03と算出されている。θ=2.1かつs=6400の平均0.94と、θ=9.5かつs=6400の平均0.72から、θ=3.4かつs=6400の予測性能の平均が0.90、標準偏差が0.03と算出されている。
しかし、上記の第1の推定方法では、未実行のハイパーパラメータ値についての予測性能のばらつき度が過小に評価されやすいという問題がある。図8の例では、θ=3.4かつs=1600〜6400の予測性能の標準偏差が過小に算出されているおそれがある。
図9は、予測性能の標準偏差の第1の推定例を示す図である。
推定値27aは、第1のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、小さいサンプルサイズについての測定値から推定したものである。推定値27bは、第2のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、小さいサンプルサイズについての測定値から推定したものである。推定値27cは、第3のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、上記の第1の推定方法によって、推定値27a,27bの平均から回帰分析により推定したものである。推定値27a,27b,27cは、予測性能の平均と標準偏差をもつ。
推定値27cの標準偏差は、推定値27a,27bの平均からの回帰分析による統計誤差を織り込んでいる一方、推定値27a,27bがもつ標準偏差を織り込んでいない。このため、推定値27a,27bの標準偏差が大きいにもかかわらず、推定値27cの標準偏差が小さくなることがあり、推定値27cのばらつき度が過小評価されることがある。
推定値27a,27bの標準偏差を考慮すると、第3のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能の推定値は、推定値27dのようになる可能性がある。推定値27dは、推定値27aが上振れしかつ推定値27bが上振れした場合を考慮して、平均から上方向の大きい分布をもつ。また、推定値27dは、推定値27aが下振れしかつ推定値27bが下振れした場合を考慮して、平均から下方向の大きい分布をもつ。推定値27dの標準偏差は推定値27cの標準偏差より大きい。
このため、性能改善量の算出にあたって推定値27cを用いると、第3のハイパーパラメータ値についての予測性能が大きく上昇する可能性があるにもかかわらず、第3のハイパーパラメータ値の学習ステップが実行されなくなってしまうことがある。これに対し、性能改善量の算出にあたって推定値27dを用いると、第3のハイパーパラメータ値についての予測性能の上昇可能性が適切に評価されるようになる。
図10は、予測性能の第2の推定方法の例を示す図である。
第2の実施の形態では、機械学習装置100は、モンテカルロシミュレーションを利用して予測性能を推定する。行列28は、予測性能の第2の推定方法を示す。図8と同様、θ=2.1かつs=100〜3200の学習ステップと、θ=9.5かつs=100〜800の学習ステップが実行済みであるとする。また、θ=2.1かつs=6400の学習ステップと、θ=3.4かつs=100〜6400の学習ステップと、θ=9.5かつs=1600〜6400の学習ステップが未実行であるとする。
機械学習装置100は、予測性能の測定値を用いた回帰分析を優先的に行う。図8と同様に、機械学習装置100は、θ=2.1かつs=6400の予測性能の推定値を、θ=2.1かつs=100〜3200の予測性能の測定値から算出する。また、機械学習装置100は、θ=9.5かつs=1600〜6400の予測性能の推定値を、θ=9.5かつs=100〜800の予測性能の測定値から算出する。また、機械学習装置100は、θ=3.4かつs=100〜800の予測性能の推定値を、θ=2.1,θ=9.5かつs=100〜800の予測性能の測定値から算出する。
測定値を用いた回帰分析が完了すると、機械学習装置100は、推定した予測性能の平均と標準偏差を用いた回帰分析を行う。機械学習装置100は、平均と標準偏差に従う正規分布を仮定して、推定した箇所それぞれについて予測性能のサンプル値をランダムに抽出する。機械学習装置100は、抽出したサンプル値を用いて回帰分析を行い、推定すべき箇所の予測性能の平均と標準偏差を算出する。機械学習装置100は、サンプル値の抽出をN回(例えば、1000回や10000回など)繰り返して、N回の回帰分析結果(N通りの予測性能の平均と標準偏差)を取得する。
機械学習装置100は、N回の回帰分析結果を合成することで、推定すべき箇所の予測性能の平均と標準偏差を求める。例えば、機械学習装置100は、N通りの予測性能の平均値の平均を、最終的な予測性能の平均とする。また、機械学習装置100は、N通りの予測性能の平均値の分散に、N通りの予測性能の分散の平均を加えたものを、最終的な予測性能の分散とする。また、例えば、機械学習装置100は、N通りの予測性能の平均と分散からN個のヒストグラム(確率分布)を算出し、N個のヒストグラムを足し合わせたヒストグラムを求めて、最終的な予測性能の平均と標準偏差を求める。
図10の例では、機械学習装置100は、θ=2.1かつs=6400についてサンプル値0.93を抽出する。また、機械学習装置100は、θ=9.5かつs=1600についてサンプル値0.73を抽出し、θ=9.5かつs=3200についてサンプル値0.72を抽出し、θ=9.5かつs=6400についてサンプル値0.71を抽出する。そして、機械学習装置100は、測定値およびサンプル値を用いて、θ=3.4かつs=1600の予測性能の平均を0.885、標準偏差を0.03と算出する。また、機械学習装置100は、θ=3.4かつs=3200の予測性能の平均を0.89、標準偏差を0.03と算出する。また、機械学習装置100は、θ=3.4かつs=6400の予測性能の平均を0.89、標準偏差を0.03と算出する。
同様に、機械学習装置100は、θ=2.1かつs=6400についてサンプル値0.96を抽出する。また、機械学習装置100は、θ=9.5かつs=1600についてサンプル値0.72を抽出し、θ=9.5かつs=3200についてサンプル値0.72を抽出し、θ=9.5かつs=6400についてサンプル値0.73を抽出する。そして、機械学習装置100は、上記と同様にして回帰分析を行い、θ=3.4かつs=1600,s=3200,s=6400の予測性能の平均と標準偏差を算出する。機械学習装置100は、上記をN回繰り返してN通りの回帰分析結果を得る。
機械学習装置100は、N通りの回帰分析結果を統合して、θ=3.4かつs=1600,s=3200,s=6400の最終的な平均と標準偏差を確定する。図10の例では、θ=3.4かつs=1600の予測性能の平均を0.88、標準偏差を0.032と算出する。また、機械学習装置100は、θ=3.4かつs=3200の予測性能の平均を0.892、標準偏差を0.031と算出する。また、機械学習装置100は、θ=3.4かつs=6400の予測性能の平均を0.903、標準偏差を0.04と算出する。図8の例と比べて、図10の例では算出された標準偏差が大きくなっている。
次に、機械学習装置100の機能および処理手順について説明する。
図11は、機械学習装置の機能例を示すブロック図である。
機械学習装置100は、データ記憶部121、管理テーブル記憶部122、学習結果記憶部123、制限時間入力部124、ステップ実行部125、時間推定部126、性能改善量推定部127および学習制御部128を有する。データ記憶部121、管理テーブル記憶部122および学習結果記憶部123は、例えば、RAM102またはHDD103に確保した記憶領域を用いて実装できる。制限時間入力部124、ステップ実行部125、時間推定部126、性能改善量推定部127および学習制御部128は、例えば、CPU101が実行するプログラムモジュールを用いて実装できる。
データ記憶部121は、機械学習に使用できるデータの集合を記憶する。データの集合は、それぞれが目的変数の値(結果)と1または2以上の説明変数の値(要因)とを含む単位データの集合である。データ記憶部121に記憶されたデータは、機械学習装置100または他の情報処理装置が各種デバイスから収集したものでもよいし、機械学習装置100または他の情報処理装置に対してユーザが入力したものでもよい。
管理テーブル記憶部122は、機械学習の進行を管理するテーブルを記憶する。テーブルは、学習制御部128によって更新される。テーブルの詳細は後述する。
学習結果記憶部123は、機械学習の結果を記憶する。機械学習の結果には、目的変数と1または2以上の説明変数との間の関係を示すモデルが含まれる。例えば、各説明変数の重みを示す係数が、機械学習によって決定される。また、機械学習の結果には、学習されたモデルの予測性能が含まれる。また、機械学習の結果には、モデルの学習に用いたハイパーパラメータ値とサンプルサイズの情報が含まれる。
制限時間入力部124は、機械学習の制限時間の情報を取得し、制限時間を学習制御部128に通知する。制限時間の情報は、入力デバイス112を通じてユーザから入力されてもよい。また、制限時間の情報は、RAM102またはHDD103に記憶された設定ファイルから読み出すようにしてもよい。また、制限時間の情報は、ネットワーク114を介して他の情報処理装置から受信してもよい。
ステップ実行部125は、機械学習アルゴリズムに適用するハイパーパラメータ値を変更して、機械学習アルゴリズムを実行することができる。ステップ実行部125は、学習制御部128から、ハイパーパラメータ値とサンプルサイズの指定を受け付ける。すると、ステップ実行部125は、データ記憶部121に記憶されたデータを用いて、指定されたハイパーパラメータ値とサンプルサイズの組についての学習ステップを実行する。すなわち、ステップ実行部125は、指定されたサンプルサイズに基づいて、データ記憶部121から訓練データとテストデータを抽出する。ステップ実行部125は、指定されたハイパーパラメータ値を機械学習アルゴリズムに適用し、訓練データを用いてモデルを学習し、テストデータを用いてモデルの予測性能を測定する。
モデルの学習と予測性能の算出について、ステップ実行部125は、クロスバリデーションやランダムサブサンプリングバリデーションなどの各種のバリデーション方法を使用できる。使用するバリデーション方法は、ステップ実行部125に予め設定されてもよい。また、ステップ実行部125は、1つの学習ステップに要した実行時間を測定する。ステップ実行部125は、モデルと予測性能と実行時間を学習制御部128に出力する。
時間推定部126は、学習制御部128から、実行済みのハイパーパラメータ値とサンプルサイズの組について実行時間の測定値を取得する。すると、時間推定部126は、未実行のハイパーパラメータ値とサンプルサイズの組について実行時間を推定する。予測性能の推定と同様、実行したことのあるハイパーパラメータ値については、時間推定部126は、小さいサンプルサイズの実行時間の測定値を用いて大きいサンプルサイズの実行時間を推定する。実行したことのないハイパーパラメータ値については、時間推定部126は、サンプルサイズが同じでハイパーパラメータ値が異なる実行時間の測定値や推定値を用いて実行時間を推定する。ただし、時間推定部126は、実行時間の推定値として平均(期待値)を算出すればよく、標準偏差は算出しなくてよい。
そして、時間推定部126は、未実行のハイパーパラメータ値とサンプルサイズの組それぞれについて、算出した実行時間を累積実行時間に変換する。累積実行時間は、ハイパーパラメータ値が同じでサンプルサイズが異なる実行時間の推定値(未実行のものに限る)を、サンプルサイズの小さい方から累積したものである。これは、改善速度を算出するにあたり、分母の実行時間を分子の性能改善量と対応させるためである。時間推定部126は、推定した累積実行時間を学習制御部128に出力する。
性能改善量推定部127は、学習制御部128から、実行済みのハイパーパラメータ値とサンプルサイズの組について予測性能の測定値を取得する。すると、性能改善量推定部127は、未実行のハイパーパラメータ値とサンプルサイズの組について予測性能を推定する。前述のように、実行したことのあるハイパーパラメータ値については、性能改善量推定部127は、小さいサンプルサイズの予測性能の測定値を用いて大きいサンプルサイズの予測性能の平均と標準偏差を算出する。実行したことのないハイパーパラメータ値については、性能改善量推定部127は、サンプルサイズが同じでハイパーパラメータ値が異なる予測性能の測定値や推定値を用いて、予測性能の平均と標準偏差を算出する。
そして、性能改善量推定部127は、未実行のハイパーパラメータ値とサンプルサイズの組それぞれについて、算出した推定値を性能改善量に変換する。性能改善量は、UCBなど予測性能の平均と標準偏差から求まる指標値と、現在の達成予測性能との差である。ただし、UCBなどの指標値が達成予測性能未満である場合、性能改善量はゼロである。性能改善量推定部127は、推定した性能改善量を学習制御部128に出力する。
学習制御部128は、複数のハイパーパラメータ値を用いた機械学習を制御する。学習制御部128は、1つの学習ステップ毎に、機械学習アルゴリズムに適用可能なハイパーパラメータ値の空間の中からハイパーパラメータの部分集合を抽出する。抽出する部分集合には、まだ実行したことのないハイパーパラメータ値が含まれるようにする。また、抽出する部分集合には、実行したことのあるハイパーパラメータ値が存在する場合には、実行したことのあるハイパーパラメータ値の少なくとも一部が含まれるようにする。
学習制御部128は、抽出した部分集合に属するハイパーパラメータ値について、時間推定部126に累積実行時間を推定させ、性能改善量推定部127に性能改善量を推定させる。学習制御部128は、抽出した部分集合に属するハイパーパラメータ値それぞれについて、累積実行時間と性能改善量から予測性能の改善速度を算出する。学習制御部128は、抽出した部分集合に属するハイパーパラメータ値の中から改善速度が最大のものを選択し、選択したハイパーパラメータ値について未実行の最小のサンプルサイズを特定する。学習制御部128は、選択したハイパーパラメータ値とサンプルサイズをステップ実行部125に通知して、学習ステップを実行させる。
学習制御部128は、ハイパーパラメータ値の部分集合の抽出、改善速度の更新およびハイパーパラメータ値の選択を、改善速度が十分に小さくなるか累積の学習時間が制限時間を超えるまで繰り返す。学習制御部128は、機械学習の停止までに得られたモデルのうち予測性能が最大のモデルを学習結果記憶部123に保存する。また、学習制御部128は、測定された予測性能と、モデル生成に用いたハイパーパラメータ値の情報と、モデル生成に用いたサンプルサイズの情報を、学習結果記憶部123に保存する。
図12は、学習結果テーブルの例を示す図である。
学習結果テーブル131は、管理テーブル記憶部122に記憶されている。学習結果テーブル131は、複数のハイパーパラメータ値と複数のサンプルサイズの組み合わせそれぞれに対して、予測性能μと実行時間uを記憶する。学習結果テーブル131に記憶される予測性能μは、ステップ実行部125によって測定された予測性能の測定値である。学習結果テーブル131に記憶される実行時間uは、ステップ実行部125によって測定された1つの学習ステップの実行時間の測定値である。
図12において、μi,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する予測性能を示す。ui,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する実行時間を示す。i=1〜5は、θ=2,1,θ=3.4,θ=5.2,θ=7.6,θ=9.5に対応する。j=1〜7は、s=100,s=200,s=400,s=800,s=1600,s=3200,s=6400に対応する。
図13は、中間推定テーブルの例を示す図である。
中間推定テーブル132は、時間推定部126および性能改善量推定部127によって使用される。中間推定テーブル132が管理テーブル記憶部122に記憶されていてもよい。中間推定テーブル132は、複数のハイパーパラメータ値と複数のサンプルサイズの組み合わせそれぞれに対して、予測性能の平均μ、予測性能の標準偏差σおよび実行時間uを記憶する。中間推定テーブル132に記憶される予測性能の平均μは、性能改善量推定部127によって推定された予測性能の平均である。中間推定テーブル132に記憶される予測性能の標準偏差σは、性能改善量推定部127によって推定された予測性能の標準偏差である。中間推定テーブル132に記憶される実行時間uは、時間推定部126によって推定された1つの学習ステップの実行時間である。
図13において、μi,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する予測性能の平均を示す。σi,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する予測性能の標準偏差を示す。ui,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する実行時間を示す。
図14は、推定テーブルの例を示す図である。
推定テーブル133は、管理テーブル記憶部122に記憶されている。推定テーブル133は、複数のハイパーパラメータ値と複数のサンプルサイズの組み合わせそれぞれに対して、性能改善量gと累積実行時間tを記憶する。また、推定テーブル133は、複数のサンプルサイズそれぞれに対して、改善速度vを記憶する。
推定テーブル133に記憶される性能改善量gは、中間推定テーブル132に基づいて性能改善量推定部127によって算出された性能改善量である。推定テーブル133に記憶される累積実行時間tは、中間推定テーブル132に基づいて時間推定部126によって算出された累積実行時間である。推定テーブル133に記憶される改善速度vは、学習制御部128によって算出された改善速度である。図14において、gi,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する性能改善量を示す。ti,jは、i番目のハイパーパラメータ値とj番目のサンプルサイズの組に対応する累積実行時間を示す。viは、i番目のハイパーパラメータ値に対応する改善速度を示す。
図15は、機械学習の第1の手順例を示すフローチャートである。
(S10)学習制御部128は、機械学習アルゴリズムに適用可能なハイパーパラメータ値の空間の中から、ハイパーパラメータ値の部分集合を抽出する。
このとき、学習制御部128は、まだ実行したことのないハイパーパラメータ値をランダムに所定数(例えば、30個)抽出して部分集合に挿入する。また、実行したことのあるハイパーパラメータ値が存在する場合、学習制御部128は、実行したことのあるハイパーパラメータ値の少なくとも一部を部分集合に挿入する。例えば、学習制御部128は、実行したことのあるハイパーパラメータ値の全部を部分集合に挿入する。また、例えば、学習制御部128は、実行したことのあるハイパーパラメータ値をランダムに所定数(例えば、30個)抽出して部分集合に挿入する。また、例えば、学習制御部128は、実行したことのあるハイパーパラメータ値の中から、前回算出した改善速度が大きい方から所定数のハイパーパラメータ値を選択して部分集合に挿入する。
(S11)性能改善量推定部127は、ステップS10で抽出した部分集合に属するハイパーパラメータ値とサンプルサイズの組のうち未実行の組(θi,sj)それぞれについて、性能改善量gi,jを算出する。性能改善量推定の手順は後述する。
(S12)時間推定部126は、ステップS10で抽出した部分集合に属するハイパーパラメータ値とサンプルサイズの組のうち未実行の組(θi,sj)それぞれについて、累積実行時間ti,jを算出する。時間推定の手順は後述する。
(S13)学習制御部128は、ステップS11で算出された性能改善量gi,jとステップS12で算出された累積実行時間ti,jに基づいて、ステップS10で抽出した部分集合に属するハイパーパラメータ値それぞれの改善速度viを算出する。
例えば、学習制御部128は、未実行の組(θi,sj)それぞれについてgi,j/ti,jを算出する。学習制御部128は、部分集合に属するハイパーパラメータ値それぞれについて、閾値Rより大きいもののうちサンプルサイズが最小のgi,j/ti,jを、当該ハイパーパラメータ値の改善速度viとして選択する。閾値Rは、例えば、0.001/3600とする。また、例えば、学習制御部128は、部分集合に属するハイパーパラメータ値それぞれについて、最大のサンプルサイズsMに対してgi,M/ti,Mを算出し、gi,M/ti,Mを当該ハイパーパラメータ値の改善速度viとして選択する。
(S14)学習制御部128は、ステップS10で抽出した部分集合の中から、ステップS13で算出した改善速度が最大のハイパーパラメータ値を選択する。以下では、最大の改善速度をvmax、vmaxをもつハイパーパラメータ値をθmaxと表記する。
(S15)学習制御部128は、ステップS14で求めた改善速度vmaxが閾値R未満であるか、または、機械学習を開始してから(最初の学習ステップを開始してから)の経過時間が制御時間を超えたか判断する。条件に該当する場合はステップS18に処理が進み、条件に該当しない場合はステップS16に処理が進む。
(S16)学習制御部128は、学習結果テーブル131を参照して、ハイパーパラメータ値θmaxについて未実行のサンプルサイズのうち最小のものを特定する。以下では、最小のサンプルサイズをsminと表記する。
(S17)ステップ実行部125は、ステップS14で選択したハイパーパラメータ値θmaxとステップS16で特定したサンプルサイズsminを用いて、学習ステップを実行する。ステップ実行の手順は後述する。そして、ステップS10に処理が進む。
(S18)学習制御部128は、最終的な学習結果を学習結果記憶部123に保存して機械学習を終了する。このとき、学習制御部128は、これまでに生成されたモデルのうち予測性能が最大のモデルを学習結果記憶部123に保存する。また、学習制御部128は、保存したモデルの予測性能の情報と、保存したモデルの学習に用いたハイパーパラメータ値の情報と、保存したモデルの学習に用いたサンプルサイズの情報を保存する。
図16は、性能改善量推定の第1の手順例を示すフローチャートである。
(S20)性能改善量推定部127は、学習制御部128から学習結果テーブル131を取得する。性能改善量推定部127は、学習結果テーブル131を参照して、実行したことのあるハイパーパラメータ値を1つ選択する(ハイパーパラメータ値θi)。なお、該当するハイパーパラメータ値がない場合、ステップS20〜S24がスキップされる。
(S21)性能改善量推定部127は、学習結果テーブル131から、ハイパーパラメータ値θiについての予測性能の測定値を取得する。
(S22)性能改善量推定部127は、ステップS21で取得した予測性能の測定値を用いて回帰分析により、サンプルサイズから予測性能を推定する推定式を算出する。推定式の形は、例えば、μ=β1−α1×s-γ1である。性能改善量推定部127は、例えば、非線形回帰分析により係数α1,β1,γ1の値を決定する。
(S23)性能改善量推定部127は、ハイパーパラメータ値θiについて未実行の1以上のサンプルサイズを特定する(サンプルサイズsj)。性能改善量推定部127は、ステップS22で算出した推定式と確率分布に基づいて、ハイパーパラメータ値θiとサンプルサイズsjの組に対応する予測性能の平均μi,jと標準偏差σi,jを算出する。性能改善量推定部127は、中間推定テーブル132にμi,jとσi,jを登録する。
(S24)性能改善量推定部127は、ステップS20で該当するハイパーパラメータ値(実行したことのあるハイパーパラメータ値)を全て選択したか判断する。該当する全てのハイパーパラメータ値を選択した場合はステップS25に処理が進み、未選択のハイパーパラメータ値がある場合はステップS20に処理が進む。
(S25)性能改善量推定部127は、サンプルサイズを1つ選択する(サンプルサイズsj)。サンプルサイズの候補は、例えば、s=100,s=200,s=400,s=800,s=1600,s=3200,s=6400,s=12800のように等比数列とする。第2の実施の形態ではサンプルサイズの増加速度を2倍としたが、4倍など他の倍率にしてもよい。なお、実行したことのないハイパーパラメータ値が存在しない場合、ステップS25〜S30がスキップされる。
(S26)性能改善量推定部127は、学習結果テーブル131から、サンプルサイズsjについての予測性能の測定値を取得する。また、性能改善量推定部127は、ステップS23で更新された中間推定テーブル132から、サンプルサイズsjについての予測性能の平均μと標準偏差σを取得する。
(S27)性能改善量推定部127は、実行したことのある1以上のハイパーパラメータ値θiとステップS25で選択したサンプルサイズsjの組それぞれについて、N通りのサンプル値を抽出する。(θi,sj)の学習ステップが実行済みである場合、性能改善量推定部127は、N個のサンプル値として測定値を用いればよい。(θi,sj)の学習ステップが未実行である場合、性能改善量推定部127は、平均μi,jと標準偏差σi,jが示す確率分布に基づいて、ランダムにN個のサンプル値を抽出する。
(S28)性能改善量推定部127は、ステップS27で抽出したサンプル値を用いて回帰分析をN回行い、ハイパーパラメータ値から予測性能を推定する推定式をN個算出する。性能改善量推定部127は、N個の推定式を用いて、未実行のハイパーパラメータ値θiとステップS25で選択したサンプルサイズsjの組について、予測性能のN通りの平均μi,jとN通りの標準偏差σi,jとを算出する。
(S29)性能改善量推定部127は、ステップS28で算出したN通りの平均μi,jとN通りの標準偏差σi,jとを統合して、未実行のハイパーパラメータ値θiとステップS25で選択したサンプルサイズsjの組について、最終的な予測性能の平均と標準偏差を確定する。性能改善量推定部127は、確定した平均と標準偏差を中間推定テーブル132に登録する。例えば、N個のμi,jの平均を確定した平均とし、N個のμi,jの分散にN個の分散σ2 i,j(標準偏差の二乗)の平均を加えたものを確定した分散とする。また、例えば、N個のμi,jとσi,jによって表されるヒストグラムを足し合わせた統合ヒストグラムを算出し、統合ヒストグラムの平均と標準偏差を求める。
(S30)性能改善量推定部127は、ステップS25で全てのサンプルサイズを選択したか判断する。全てのサンプルサイズを選択した場合はステップS31に処理が進み、未選択のサンプルサイズがある場合はステップS25に処理が進む。
(S31)性能改善量推定部127は、未実行である(θi,sj)の平均μi,jと標準偏差σi,jを中間推定テーブル132から取得し、μi,jとσi,jに基づいて性能改善量gi,jを算出する。例えば、性能改善量推定部127は、μi,jとσi,jに基づいて推定値の95%予測区間を算出し、95%予測区間の上限値であるUCBを求める。性能改善量推定部127は、UCBから達成予測性能を引いた差を性能改善量gi,jとする。ただし、UCBが達成予測性能未満である場合、性能改善量をゼロとする。性能改善量推定部127は、性能改善量gi,jを学習制御部128に通知する。性能改善量gi,jは、学習制御部128によって推定テーブル133に登録される。
図17は、時間推定の手順例を示すフローチャートである。
(S40)時間推定部126は、学習制御部128から学習結果テーブル131を取得する。時間推定部126は、学習結果テーブル131を参照して、実行したことのあるハイパーパラメータ値を1つ選択する(ハイパーパラメータ値θi)。なお、該当するハイパーパラメータ値がない場合、ステップS40〜S44がスキップされる。
(S41)時間推定部126は、学習結果テーブル131から、ハイパーパラメータ値θiについての実行時間の測定値を取得する。
(S42)時間推定部126は、ステップS41で取得した実行時間の測定値を用いて回帰分析により、サンプルサイズから実行時間を推定する推定式を算出する。推定式の形は、例えば、u=β2+α2×sである。時間推定部126は、例えば、線形回帰分析により係数α2,β2の値を決定する。
(S43)時間推定部126は、ハイパーパラメータ値θiについて未実行の1以上のサンプルサイズを特定する(サンプルサイズsj)。時間推定部126は、ステップS42で算出した推定式に基づいて、ハイパーパラメータ値θiとサンプルサイズsjの組に対応する実行時間ui,jを算出する。実行時間の推定値については推定される平均(期待値)を求めればよく、標準偏差は求めなくてよい。時間推定部126は、中間推定テーブル132にui,jを登録する。
(S44)時間推定部126は、ステップS40で該当するハイパーパラメータ値(実行したことのあるハイパーパラメータ値)を全て選択したか判断する。該当する全てのハイパーパラメータ値を選択した場合はステップS45に処理が進み、未選択のハイパーパラメータ値がある場合はステップS40に処理が進む。
(S45)時間推定部126は、サンプルサイズを1つ選択する(サンプルサイズsj)。なお、実行したことのないハイパーパラメータ値が存在しない場合、ステップS45〜S48がスキップされる。
(S46)時間推定部126は、学習結果テーブル131から、サンプルサイズsjについての実行時間の測定値を取得する。また、時間推定部126は、中間推定テーブル132から、サンプルサイズsjについての実行時間の推定値を取得する。
(S47)時間推定部126は、ステップS46で取得した実行時間の測定値や推定値を用いて回帰分析を行い、ハイパーパラメータ値から実行時間を推定する推定式を算出する。時間推定部126は、推定式を用いて、未実行のハイパーパラメータ値θiとステップS45で選択したサンプルサイズsjの組について実行時間ui,jを算出する。
(S48)時間推定部126は、ステップS45で全てのサンプルサイズを選択したか判断する。全てのサンプルサイズを選択した場合はステップS49に処理が進み、未選択のサンプルサイズがある場合はステップS45に処理が進む。
(S49)時間推定部126は、未実行である(θi,sj)の実行時間ui,jを中間推定テーブル132から取得し、累積実行時間ti,jを算出する。累積実行時間ti,jは、ハイパーパラメータ値がθiでありサンプルサイズがsj以下(未実行のものに限る)である実行時間ui,jを合計したものである。すなわち、累積実行時間ti,jは、ハイパーパラメータ値θiの学習ステップのみを継続した場合に、現在から(θi,sj)の学習ステップが終了するまでに要すると推定される時間である。時間推定部126は、推定した累積実行時間ti,jを学習制御部128に通知する。累積実行時間ti,jは、学習制御部128によって推定テーブル133に登録される。
図18は、ステップ実行の手順例を示すフローチャートである。
ここでは、バリデーション方法として、データ集合Dのサイズに応じて、ランダムサブサンプリングバリデーションまたはクロスバリデーションを実行する場合を考える。ただし、ステップ実行部125は、他のバリデーション方法を用いてもよい。
(S50)ステップ実行部125は、学習制御部128から指定されたハイパーパラメータ値θiとサンプルサイズsjとを特定する。また、ステップ実行部125は、データ記憶部121に記憶されているデータ集合Dを特定する。
(S51)ステップ実行部125は、サンプルサイズsjが、データ集合Dのサイズの2/3よりも大きいか判断する。サンプルサイズsjが2/3×|D|よりも大きい場合、ステップ実行部125は、データ量が不足しているためクロスバリデーションを選択する。そして、ステップS58に処理が進む。サンプルサイズsjが2/3×|D|以下である場合、ステップ実行部125は、データ量が十分あるためランダムサブサンプリングバリデーションを選択する。そして、ステップS52に処理が進む。
(S52)ステップ実行部125は、データ集合Dからサンプルサイズsjの訓練データDtをランダムに抽出する。訓練データの抽出は、非復元抽出サンプリングとして行う。よって、訓練データには、互いに異なるsj個の単位データが含まれる。
(S53)ステップ実行部125は、データ集合Dのうち訓練データDtを除いた部分から、サイズsj/2のテストデータDsをランダムに抽出する。テストデータの抽出は、非復元抽出サンプリングとして行う。よって、テストデータには、訓練データDtと異なりかつ互いに異なるsj/2個の単位データが含まれる。なお、ここでは訓練データDtのサイズとテストデータDsのサイズの比を2:1としたが、比を変更してもよい。
(S54)ステップ実行部125は、ハイパーパラメータ値θiとステップS52で抽出した訓練データDtとを用いてモデルmを学習する。
(S55)ステップ実行部125は、学習したモデルmとステップS53で抽出したテストデータDsとを用いて、モデルmの予測性能μを算出する。予測性能μを表す指標として、正答率、適合率、RMSEなど任意の指標を用いることができる。
(S56)ステップ実行部125は、上記ステップS52〜S55の繰り返し回数と閾値Mとを比較し、前者が後者未満であるか判断する。閾値Mは、予めステップ実行部125に設定されていてもよい。例えば、閾値M=10とする。繰り返し回数が閾値M未満の場合はステップS52に処理が進み、それ以外の場合はステップS57に処理が進む。
(S57)ステップ実行部125は、ステップS55で算出されたM個の予測性能μの平均値を算出し、予測性能の測定値として出力する。また、ステップ実行部125は、ステップS50が開始されてからステップS52〜S56の繰り返しが終了するまでの実行時間uを算出し、実行時間の測定値として出力する。また、ステップ実行部125は、ステップS54で学習されたM個のモデルmのうち予測性能が最大のモデルを出力する。そして、ランダムサブサンプリングバリデーションによる1つの学習ステップが終了する。
(S58)ステップ実行部125は、上記のランダムサブサンプリングバリデーションに代えて、前述したクロスバリデーションを実行する。例えば、ステップ実行部125は、データ集合Dからサンプルサイズsjのサンプルデータをランダムに抽出し、抽出したサンプルデータをM個のブロックに均等に分割する。ステップ実行部125は、M−1個のブロックを訓練データとして使用し1個のブロックをテストデータとして使用することを、テストデータのブロックを変えながらM回繰り返す。ステップ実行部125は、M個の予測性能の平均値と、実行時間と、予測性能が最大のモデルを出力する。
第2の実施の形態の機械学習装置100によれば、学習ステップを1つ進める毎に、複数のハイパーパラメータ値それぞれについて予測性能の改善速度が推定され、次の学習ステップでは改善速度が最大のハイパーパラメータ値が選択される。これにより、予測性能を効率的に向上できるハイパーパラメータ値が優先的に使用され、予測性能を向上できる見込みが小さいハイパーパラメータ値は全く使用されないか小さなサンプルサイズでのみ使用されることとなる。よって、全体の機械学習時間を短縮することができる。
また、改善速度が最大のハイパーパラメータ値が優先的に使用されるため、機械学習時間に制限があり機械学習を途中で打ち切った場合であっても、終了時刻までに得られたモデルが、制限時間内に得られる最善のモデルとなる。また、少しでも予測性能の向上に寄与するハイパーパラメータ値は、実行順序が後になる可能性はあるものの実行される余地が残される。このため、予測性能の上限が高いハイパーパラメータ値をサンプルサイズが小さいうちに切り捨ててしまうリスクを低減できる。このように、複数のハイパーパラメータ値を利用してモデルの予測性能を効率的に向上させることができる。
また、小さいサンプルサイズで実行されたハイパーパラメータ値については、サンプルサイズ間の関係に基づいて、大きなサンプルサイズにおける予測性能と実行時間が推定される。一方、一度も使用されていないハイパーパラメータ値については、ハイパーパラメータ間の関係に基づいて予測性能と実行時間が推定される。このとき、別のハイパーパラメータ値の予測性能と実行時間は、測定値でもよいし推定値でもよい。よって、様々なハイパーパラメータ値とサンプルサイズの組について推定値を算出することができる。その結果、予測性能が高くなる可能性のあるパラメータ値を効率的に探索することができる。
また、他のハイパーパラメータ値の予測性能が推定値として与えられる場合、その推定値の平均だけではなく標準偏差も考慮される。よって、一度も使用されていないハイパーパラメータ値についての予測性能の標準偏差が過剰に小さく算出されてしまうことを抑制でき、予測性能が高くなる可能性が過小評価されてしまうことを抑制できる。
[第3の実施の形態]
次に、第3の実施の形態を説明する。第2の実施の形態と同様の内容については説明を省略し、第2の実施の形態と異なる内容を中心に説明する。
第3の実施の形態は、未実行のハイパーパラメータ値についての予測性能の推定方法が第2の実施の形態と異なる。第3の実施の形態の機械学習装置は、図2と同様のハードウェアを用いて実装できる。また、第3の実施の形態の機械学習装置は、図11と同様のソフトウェアモジュールを用いて実装できる。以下、図2および図11と同様の符号を用いて、第3の実施の形態の機械学習装置を説明する。
図19は、性能改善量推定の第2の手順例を示すフローチャートである。
図19のステップS60〜S69のうちステップS60〜S66,S68,S69の処理は、図16のステップS20〜S26,S30,S31と同様である。図16のステップS27〜S29では、(θi,sj)の予測性能の平均μと標準偏差σをモンテカルロシミュレーションにより推定した。これに対し、図19のステップS67では、サンプルサイズが同じでハイパーパラメータ値が異なる予測性能の測定値や推定値から、(θi,sj)の予測性能の平均μと標準偏差σを数式により直接算出する。
以下、予測性能の平均μと標準偏差σを算出する数式について説明する。以下では、ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の平均をμ(θ,s)と表記することがある。また、ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の標準偏差をσ(θ,s)と表記することがある。
ここでは、ある1つのハイパーパラメータ値が未実行であり、n個のハイパーパラメータ値θ=θ1,θ=θ2,…,θ=θnが小さなサンプルサイズで実行済みであるものとする。そして、大きなサンプルサイズsについて、n個のハイパーパラメータ値の予測性能が既に推定されており、その推定値を用いて未実行の1つのハイパーパラメータ値の予測性能を推定することとする。予測性能の推定にあたっては、シミュレーションに代えてガウス過程を用いる。なお、n個のハイパーパラメータ値のうち一部のハイパーパラメータ値の予測性能が、推定値ではなく測定値であってもよい。その場合、予測性能の平均として測定値を用い、予測性能の標準偏差をゼロとして以下の計算を行ってもよい。
ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の平均μ(θ,s)は、列ベクトルκ(θ)と行列Kと列ベクトルμ(s)を用いて、数式(1)のように算出できる。ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の分散σ2(θ,s)は、分散σ2 G(θ,s)と行ベクトルh2(θ)と列ベクトルσ2(s)を用いて、数式(2)のように算出できる。分散σ2 G(θ,s)は、カーネル関数k(・,・)と列ベクトルκ(θ)と行列Kを用いて、数式(2)のように展開できる。
Figure 2017228068
Figure 2017228068
数式(1)および数式(2)で使用する列ベクトルκ(θ)は、数式(3)に示すように、k(θ,θ1),k(θ,θ2),…,k(θ,θn)を要素とする長さnの列ベクトルである。後述するように、k(θ,θj)は、ハイパーパラメータ値θとハイパーパラメータ値θjとの間の近さに関する値である。数式(1)および数式(2)で使用する行列Kは、数式(4)に示すように、k(θi,θj)をi行j列の要素とするn行n列の行列である。後述するように、k(θi,θj)は、ハイパーパラメータ値θiとハイパーパラメータ値θjとの間の近さに関する値である。
Figure 2017228068
Figure 2017228068
数式(1)で使用する列ベクトルμ(s)は、数式(5)に示すように、μ(θ1,s),μ(θ2,s),…,μ(θn,s)を要素とする長さnの列ベクトルである。すなわち、列ベクトルμ(s)は、n個のハイパーパラメータ値についての予測性能の平均を列挙したものである。数式(2)で使用する列ベクトルσ2(s)は、数式(6)に示すように、σ2(θ1,s),σ2(θ2,s),…,σ2(θn,s)を要素とする長さnの列ベクトルである。すなわち、列ベクトルσ2(s)は、n個のハイパーパラメータ値についての予測性能の分散を列挙したものである。数式(2)で使用する行ベクトルh2(θ)は、κ(θ)T-1の各要素を二乗した行ベクトルである。
Figure 2017228068
Figure 2017228068
数式(2)、数式(3)および数式(4)で使用するk(・,・)は、カーネル関数である。ガウス過程で使用可能なカーネル関数としては、様々なものが存在する。例えば、数式(7)または数式(8)のようなカーネル関数を用いることができる。なお、数式(7)に含まれる係数bや数式(8)に含まれる係数bdは、ユーザが指定してもよいし、機械学習装置100が最適な値を探索するようにしてもよい。数式(8)はハイパーパラメータ値θがD次元ベクトルである場合を想定しており、数式(8)に含まれるθdはハイパーパラメータ値θのd番目の数値を意味する。
Figure 2017228068
Figure 2017228068
以上のような数式を用いて、予測性能の平均μと標準偏差σを直接算出できる。ただし、上記ではn個のハイパーパラメータ値についての予測性能の推定結果を等しく扱った。これに対し、n個のハイパーパラメータ値についての予測性能の推定結果のうち、標準偏差が小さい推定結果を重視し(重みを大きくし)、標準偏差が大きい推定結果を軽視する(重みを小さくする)こともできる。これは、入力によって大きさが異なるノイズを考慮したガウス過程を用いて、予測性能の平均μと標準偏差σを推定することに相当する。
図20は、予測性能の標準偏差の第2の推定例を示す図である。
推定値31aは、第1のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、小さいサンプルサイズについての測定値から推定したものである。推定値31bは、第2のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、小さいサンプルサイズについての測定値から推定したものである。推定値31cは、第3のハイパーパラメータ値かつ特定のサンプルサイズについての予測性能を、小さいサンプルサイズについての測定値から推定したものである。
推定値31a,31cの標準偏差は比較的小さく、推定値31bの標準偏差は推定値31a,31cより大きい。推定値31a,31b,31cの推定結果を等しく扱った場合、ハイパーパラメータθから予測性能を推定する曲線は曲線31dのように算出される。一方、推定値31a,31b,31cの推定結果を標準偏差に応じて重み付けした場合、ハイパーパラメータθから予測性能を推定する曲線は曲線31eのように算出される。推定値31a,31b,31cの推定結果を重み付けした方が、傾斜の小さい自然な曲線が算出され、予測性能の推定精度が向上する可能性がある。
以下、予測性能の平均μと標準偏差σを算出する他の数式について説明する。
ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の平均μ(θ,s)は、列ベクトルκ(θ)と行列Kと行列KNと列ベクトルμ(s)を用いて、数式(9)のように算出できる。ハイパーパラメータ値θとサンプルサイズsに対応する予測性能の分散σ2(θ,s)は、カーネル関数k(・,・)とr(θ)と列ベクトルκ(θ)と行列Kと行列KNを用いて、数式(10)のように算出できる。
Figure 2017228068
Figure 2017228068
数式(9)および数式(10)で使用する行列KNは、数式(11)に示すように、列ベクトルσ2(s)の要素を対角線上に並べたn行n列の行列である。KNの非対角要素はゼロである。数式(10)で使用するr(θ)は、列ベクトルκz(θ)と行列Kzと列ベクトルzを用いて、数式(12)のように算出できる。
Figure 2017228068
Figure 2017228068
列ベクトルκz(θ)は、κ(θ)と異なるカーネル関数を用いてκ(θ)と同様の方法で算出した列ベクトルである。行列Kzは、Kと異なるカーネル関数を用いてKと同様の方法で算出した行列である。列ベクトルκz(θ)および行列Kzに使用するカーネル関数の形は、k(・,・)と異なってもよい。また、列ベクトルκz(θ)および行列Kzに使用するカーネル関数は、k(・,・)と形が同じで係数が異なるものでもよい。列ベクトルzは、σ2(s)の各要素を対数化した列ベクトルである。
第3の実施の形態によれば、第2の実施の形態と同様の効果が得られる。更に、第3の実施の形態によれば、モンテカルロシミュレーションによらず、未実行のハイパーパラメータ値についての予測性能の平均と標準偏差を直接算出することができる。よって、予測性能の推定の計算量を削減することができる。
[第4の実施の形態]
次に、第4の実施の形態を説明する。第2の実施の形態と同様の内容については説明を省略し、第2の実施の形態と異なる内容を中心に説明する。
第4の実施の形態は、次に実行するハイパーパラメータ値とサンプルサイズの組を選択する方法が第2の実施の形態と異なる。第4の実施の形態の機械学習装置は、図2と同様のハードウェアを用いて実装できる。また、第4の実施の形態の機械学習装置は、図11と同様のソフトウェアモジュールを用いて実装できる。以下、図2および図11と同様の符号を用いて、第4の実施の形態の機械学習装置を説明する。
図21は、プログレッシブサンプリング法の第2の進行例を示す図である。
第4の実施の形態では、機械学習装置100は、1つのハイパーパラメータ値を選択すると、選択したハイパーパラメータ値の改善速度が閾値R未満に低下するまで、そのハイパーパラメータ値を用いた学習ステップを連続的に実行していく。
図21の例では、機械学習装置100は、まず学習ステップ32aを実行する。学習ステップ32aでは、θ=2.1かつs=100〜800に設定して機械学習を行う。学習ステップ32aが終わると、機械学習装置100は、θ=2.1の改善速度を再計算し、改善速度が閾値R以上であることを確認する。すると、機械学習装置100は、引き続きθ=2.1を選択し、1段階大きなサンプルサイズs=1600を選択する。
次に、機械学習装置100は、学習ステップ32bを実行する。学習ステップ32bでは、θ=2.1かつs=1600に設定して機械学習を行う。学習ステップ32bが終わると、機械学習装置100は、θ=2.1の改善速度を再計算し、改善速度が閾値R以上であることを確認する。すると、機械学習装置100は、引き続きθ=2.1を選択し、1段階大きなサンプルサイズs=3200を選択する。
次に、機械学習装置100は、学習ステップ32cを実行する。学習ステップ32cでは、θ=2.1かつs=3200に設定して機械学習を行う。同様にして、機械学習装置100は、学習ステップ32dを実行する。学習ステップ32dでは、θ=2.1かつs=6400に設定して機械学習を行う。次に、機械学習装置100は、学習ステップ32eを実行する。学習ステップ32eでは、θ=2.1かつs=12800に設定して機械学習を行う。学習ステップ32eが終わると、機械学習装置100は、θ=2.1の改善速度を再計算し、改善速度が閾値R未満であることを検出する。すると、機械学習装置100は、θ=2.1を用いた機械学習を終了すると判断する。
次に、機械学習装置100は、学習ステップ32fを実行する。学習ステップ32fでは、θ=9.5かつs=100〜800に設定して機械学習を行う。学習ステップ32fが終わると、機械学習装置100は、θ=9.5の改善速度を再計算し、改善速度が閾値R未満であることを確認する。すると、機械学習装置100は、θ=9.5を用いた機械学習を終了すると判断する。
次に、機械学習装置100は、学習ステップ32gを実行する。学習ステップ32gでは、θ=5.2かつs=100〜800に設定して機械学習を行う。学習ステップ32gが終わると、機械学習装置100は、θ=5.2の改善速度を再計算し、改善速度が閾値R以上であることを確認する。すると、機械学習装置100は、引き続きθ=5.2を選択し、1段階大きなサンプルサイズs=1600を選択する。
次に、機械学習装置100は、学習ステップ32hを実行する。学習ステップ32hでは、θ=5.2かつs=1600に設定して機械学習を行う。同様にして、機械学習装置100は、学習ステップ32iを実行する。学習ステップ32iでは、θ=5.2かつs=3200に設定して機械学習を行う。学習ステップ32iが終わると、機械学習装置100は、θ=5.2の改善速度を再計算し、改善速度が閾値R未満であることを検出する。すると、機械学習装置100は、θ=5.2を用いた機械学習を終了すると判断する。
図22は、機械学習の第2の進行画面例を示す図である。
機械学習装置100は、機械学習が行われている間、ディスプレイ111に学習進行画面33を表示する。学習進行画面33は、学習ステップの実行順序を示す。学習進行画面33は、複数のハイパーパラメータ値に対応する複数の行と、複数のサンプルサイズに対応する複数の列とによって形成される表を有する。学習進行画面33の表には、機械学習の進行に伴い、学習ステップの実行順序を示す数値が記入されていく。
例えば、学習進行画面33には、θ=2.1かつs=800以下の学習ステップの順序が「1」と表示される。同様に、学習進行画面33には、θ=2.1かつs=1600の学習ステップの順序が「2」と表示される。θ=2.1かつs=3200の学習ステップの順序が「3」と表示される。θ=2.1かつs=6400の学習ステップの順序が「4」と表示される。θ=2.1かつs=12800の学習ステップの順序が「5」と表示される。θ=9.5かつs=800以下の学習ステップの順序が「6」と表示される。θ=5.2かつs=800以下の学習ステップの順序が「7」と表示される。θ=5.2かつs=1600の学習ステップの順序が「8」と表示される。θ=5.2かつs=3200の学習ステップの順序が「9」と表示される。
図23は、機械学習の第2の手順例を示すフローチャートである。
(S70)学習制御部128は、機械学習アルゴリズムに適用可能なハイパーパラメータ値の空間の中から、ハイパーパラメータ値の部分集合を抽出する。このとき、学習制御部128は、まだ実行したことのないハイパーパラメータ値をランダムに所定数(例えば、30個)抽出して部分集合に挿入する。第4の実施の形態では、実行したことのあるハイパーパラメータ値については部分集合に挿入しなくてよい。
(S71)性能改善量推定部127は、ステップS70で抽出した部分集合に属するハイパーパラメータ値とサンプルサイズの組のうち未実行の組(θi,sj)それぞれについて、性能改善量gi,jを算出する。
(S72)時間推定部126は、ステップS70で抽出した部分集合に属するハイパーパラメータ値とサンプルサイズの組のうち未実行の組(θi,sj)それぞれについて、累積実行時間ti,jを算出する。
(S73)学習制御部128は、ステップS71で算出された性能改善量gi,jとステップS72で算出された累積実行時間ti,jに基づいて、ステップS70で抽出した部分集合に属するハイパーパラメータ値それぞれの改善速度viを算出する。
(S74)学習制御部128は、ステップS70で抽出した部分集合の中から、ステップS73で算出した改善速度が最大のハイパーパラメータ値を選択する。
(S75)学習制御部128は、ステップS74で求めた改善速度vmaxが閾値R未満であるか、または、機械学習を開始してから(最初の学習ステップを開始してから)の経過時間が制御時間を超えたか判断する。条件に該当する場合はステップS80に処理が進み、条件に該当しない場合はステップS76に処理が進む。
(S76)学習制御部128は、ステップS74に該当するハイパーパラメータ値θmaxについて、未実行のサンプルサイズのうち最小のものを特定する。
(S77)ステップ実行部125は、選択したハイパーパラメータ値θmaxと特定したサンプルサイズsminを用いて、学習ステップを実行する。
(S78)性能改善量推定部127は、ハイパーパラメータ値θmaxについて、未実行であるサンプルサイズsjの性能改善量gmax,jを再計算する。時間推定部126は、ハイパーパラメータ値θmaxについて、未実行であるサンプルサイズsjの累積実行時間tmax,jを再計算する。学習制御部128は、更新された性能改善量gmax,jと累積実行時間tmax,jに基づいて、ハイパーパラメータ値θmaxの改善速度vmaxを再計算する。
(S79)学習制御部128は、ステップS78で更新した改善速度vmaxが閾値R未満であるか判断する。改善速度vmaxが閾値R未満である場合はステップS70に処理が進み、改善速度vmaxが閾値R以上である場合はステップS76に処理が進む。
(S80)学習制御部128は、最終的な学習結果を学習結果記憶部123に保存して機械学習を終了する。このとき、学習制御部128は、これまでに生成されたモデルのうち予測性能が最大のモデルを学習結果記憶部123に保存する。また、学習制御部128は、保存したモデルの予測性能の情報と、保存したモデルの学習に用いたハイパーパラメータ値の情報と、保存したモデルの学習に用いたサンプルサイズの情報を保存する。
第4の実施の形態によれば、第2の実施の形態と同様の効果が得られる。更に、第4の実施の形態によれば、1つのハイパーパラメータ値を用いて大きなサンプルサイズの学習ステップが早期に実行され、達成予測性能が早期に上昇する。よって、多数のハイパーパラメータ値について小さなサンプルサイズの学習ステップが実行され難くなり、最終的なモデルの予測性能の向上に寄与しない無駄な学習ステップを削減することができる。
[第5の実施の形態]
次に、第5の実施の形態を説明する。第2の実施の形態と同様の内容については説明を省略し、第2の実施の形態と異なる内容を中心に説明する。
第5の実施の形態は、予測性能の測定値から大きなサンプルサイズの予測性能の推定値を算出する方法が第2の実施の形態と異なる。第5の実施の形態の機械学習装置は、図2と同様のハードウェアを用いて実装できる。また、第5の実施の形態の機械学習装置は、図11と同様のソフトウェアモジュールを用いて実装できる。以下、図2および図11と同様の符号を用いて、第5の実施の形態の機械学習装置を説明する。
図24は、予測性能の上限値と推定値と標準誤差の関係例を示すグラフである。
あるサンプルサイズについて算出された予測性能の測定値は、ハイパーパラメータ値とデータの母集合の特性とから決まる理論値から乖離するリスクがある。すなわち、同じデータの母集合を使用しても、訓練データおよびテストデータの選択の偶然性によって、予測性能の測定値にばらつきが生じる。予測性能の測定値のばらつき度は、サンプルサイズが小さいほど大きく、サンプルサイズが大きいほど小さくなる傾向にある。
図24では、同じハイパーパラメータ値および同じデータの母集合を用いて、サンプルサイズ1つ当たり50回ずつ学習ステップを実行している。図24の例では、サンプルサイズが「100」の場合の予測性能の測定値は、約0.58〜0.68であり広範囲に広がっている。サンプルサイズが「400」の場合の予測性能の実測値は、約0.69〜0.75であり、サンプルサイズが「100」の場合よりもその範囲が狭くなっている。以降、サンプルサイズが大きくなるに従い、予測性能の測定値の範囲は狭くなる。サンプルサイズが十分に大きくなると、予測性能の測定値は約0.76に収束している。
機械学習装置100は、予測性能の推定のため、実行したことのあるハイパーパラメータ値について、小さなサンプルサイズにおける予測性能の測定値を用いて予測性能曲線を算出する。しかし、小さなサンプルサイズにおける予測性能の測定値は、理論値から大きく乖離することがある。このため、算出される予測性能曲線の精度が問題となる。そこで、第5の実施の形態では、以下の性質を利用して予測性能曲線を算出する。
曲線34aは、ハイパーパラメータ値とデータの母集合の特性とから決まる予測性能の論理値を示す曲線、すなわち、理想的な予測性能曲線である。曲線34aが示す予測性能の上限を上限値34bとする。また、あるサンプルサイズに対応する曲線34a上の予測性能の値を推定値34cとする。この場合に、当該サンプルサイズにおける予測性能の測定値の標準誤差は、多くの場合、上限値34bと推定値34cの差に比例するという性質をもつ。測定値の標準誤差は、推定値34cと測定値の差(残差)の標準偏差である。この性質は、任意のサンプルサイズに対して成立する。
すなわち、サンプルサイズが小さい場合、予測性能の測定値の標準誤差は大きい。また、サンプルサイズが小さい場合、予測性能の推定値(理論値)と上限値34bとの差も大きい。一方、サンプルサイズが大きい場合、予測性能の測定値の標準誤差は小さい。また、サンプルサイズが大きい場合、予測性能の推定値と上限値34bとの差も小さい。多くの場合、全てのサンプルサイズに対して、予測性能の測定値の標準誤差と、予測性能の推定値と上限値34bとの差が、比例するという関係をもつ。
機械学習装置100は、この性質を利用して予測性能の測定値から曲線34aを算出する。機械学習装置100は、予測性能曲線を示す推定式として次の推定式を使用する:μ=c−exp(a×f(s)+b)。sは当初の説明変数でありサンプルサイズを表す。μは当初の目的変数であり予測性能を表す。a,b,cは未知の係数であり、回帰分析を通じてその値が決定される。係数cは、予測性能の上限値を表す。f(s)は、サンプルサイズを示す説明変数sを引数として含み未知の係数を含まない関数である。以下では一例として、f(s)=log(s)であると仮定する。
上記の推定式は、次のように変形することができる:log(c−μ)=a×log(s)+b。ここで、機械学習装置100は、回帰分析に用いる説明変数および目的変数を次のように変換する:x=log(s);y=log(c−μ)。これにより、上記の推定式は次のように表現される:y=a×x+b。機械学習装置100は、(s,μ)について回帰分析を行う代わりに、(x,y)について線形回帰分析を行う。
(s,μ)に対する回帰分析は非線形回帰分析である一方、(x,y)に対する回帰分析は線形回帰分析である。また、前述のように予測性能の標準誤差が上限値と推定値の差に比例するため、任意のx=log(s)に対してy=log(c−μ)の標準誤差が概ね一定になり、x,yについて等分散性が成立する。このように、線形性および等分散性が成立するため、変数変換後の回帰分析によれば変数変換前の回帰分析よりも適切な予測性能曲線が得られる可能性が高くなる。
ただし、変換後の目的変数y=log(c−μ)は、回帰分析によって値が決定されるべき未知の係数cを含んでいる。そこで、機械学習装置100は、試行錯誤により適切な係数cの値を探索する。すなわち、機械学習装置100は、最初に係数cの値を仮定して線形回帰分析を行い、係数a,bの値を算出する。機械学習装置100は、この係数a,b,cの値によって特定される予測性能曲線を評価し、係数cの値を変更して再び線形回帰分析を行う。機械学習装置100は、評価値が十分に良好な予測性能曲線が得られるまで、係数cの値の変更と係数a,bの値の算出とを繰り返す。
図25は、推定式生成の手順例を示すフローチャートである。
(S90)性能改善量推定部127は、ハイパーパラメータ値θiについてこれまで実行した学習ステップの結果を示す測定データ(s,μ)の集合を取得する。
(S91)性能改善量推定部127は、係数集合{a,b,c}を特定する。
(S92)性能改善量推定部127は、係数cの初期値として、取得した予測性能の測定値の中の最大値に所定値(例えば、10-8)を加えた値を設定する。
(S93)性能改善量推定部127は、現在の係数cの値を用いて、測定データ(s,μ)の集合を変換後データ(x,y)の集合に変換する。具体的には、性能改善量推定部127は、x=log(s);y=log(c−μ)と変換する。
(S94)性能改善量推定部127は、変換後データ(x,y)の集合を用いて、線形回帰分析によりy=a×x+bの係数a,bの値を算出する。例えば、性能改善量推定部127は、最小二乗法により残差二乗和が最小になる係数a,bの値を算出する。
(S95)性能改善量推定部127は、係数a,b,cの値を用いて、測定データ(s,μ)それぞれについて推定値μ0=c−exp(a×log(s)+b)を算出する。
(S96)性能改善量推定部127は、予測性能の測定値μと推定値μ0から重み付き残差二乗和を算出し、係数a,b,cの値に対する評価値Gとする。具体的には、性能改善量推定部127は、G=sum{(μ0−μ)2×w}を算出する。重みwの値は、全ての測定値μについて共通でもよいし測定値μによって異なってもよい。例えば、重みwの値は、サンプルサイズsでもよいし、サンプルサイズsに応じた値でもよい。
(S97)性能改善量推定部127は、係数cの最適化が完了したか判断する。例えば、評価値Gが閾値未満になった場合や、評価値Gが過去と比べて改善しなくなった場合に、最適化が完了したと判断してもよい。また、例えば、ステップS93〜S96の繰り返し回数が閾値に達した場合や、係数cの最適化を開始してから所定時間経過した場合に、最適化が完了したと判断してもよい。最適化が完了した場合は推定式生成が終了する。最適化が完了していない場合はステップS98に処理が進む。
(S98)性能改善量推定部127は、係数cの値を変更する。性能改善量推定部127は、ランダムに係数cの値を選択してもよいし、現在の値から所定量だけ離れた値を選択してもよい。また、性能改善量推定部127は、過去の評価値Gから、評価値Gが改善すると期待される係数cの値を予測してもよい。そして、ステップS93に処理が進む。
第5の実施の形態によれば、第2の実施の形態と同様の効果が得られる。更に、第5の実施の形態によれば、サンプルサイズから予測性能を推定する推定式の信頼性が向上する。また、小さなサンプルサイズについての少量の測定値からでも、大きなサンプルサイズについての予測性能を精度よく推定することができる。
なお、以上説明した第1から第5の実施の形態は、任意に組み合わせ可能である。
また、前述のように、第1の実施の形態の情報処理は、機械学習管理装置10にプログラムを実行させることで実現できる。第2から第5の実施の形態の情報処理は、機械学習装置100にプログラムを実行させることで実現できる。
プログラムは、コンピュータ読み取り可能な記録媒体(例えば、記録媒体113)に記録しておくことができる。記録媒体として、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどを使用できる。磁気ディスクには、FDおよびHDDが含まれる。光ディスクには、CD、CD−R(Recordable)/RW(Rewritable)、DVDおよびDVD−R/RWが含まれる。プログラムは、可搬型の記録媒体に記録されて配布されることがある。その場合、可搬型の記録媒体から他の記録媒体(例えば、HDD103)にプログラムをコピーして実行してもよい。
10 機械学習管理装置
11 記憶部
12 演算部
13a,13b,13c パラメータ値
14a,14b サイズ
15a,15b 測定値
16a,16b,16c 期待値
17a,17b,17c 分散度

Claims (7)

  1. コンピュータに、
    機械学習アルゴリズムに適用可能な複数のパラメータ値のうちの第1のパラメータ値と第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第1の測定値を取得し、前記第1の測定値に基づいて、前記第1のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第1の期待値と第1の分散度とを算出し、
    前記複数のパラメータ値のうちの第2のパラメータ値と前記第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第2の測定値を取得し、前記第2の測定値に基づいて、前記第2のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第2の期待値と第2の分散度とを算出し、
    前記第1の期待値、前記第1の分散度、前記第2の期待値および前記第2の分散度に基づいて、前記複数のパラメータ値のうちの第3のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第3の期待値と第3の分散度とを算出する、
    処理を実行させる機械学習管理プログラム。
  2. 前記第3の分散度は、前記第1の分散度および前記第2の分散度を用いず前記第1の期待値および前記第2の期待値を用いて回帰分析により算出される分散度より大きい、
    請求項1記載の機械学習管理プログラム。
  3. 前記第3の分散度の算出では、
    前記第1の期待値と前記第1の分散度とに基づいて、予測性能の第1のサンプル値を抽出し、また、前記第2の期待値と前記第2の分散度とに基づいて、予測性能の第2のサンプル値を抽出し、前記第1のサンプル値および前記第2のサンプル値を用いて前記第3の分散度を算出する、
    請求項1記載の機械学習管理プログラム。
  4. 前記第3の分散度の算出では、
    前記第1の期待値および前記第2の期待値の変動によって生じる前記第3の期待値の変動を示す第1の分散成分と、前記第1の期待値および前記第2の期待値から前記第3の期待値を推定することで生じる統計誤差を示す第2の分散成分とを算出し、前記第1の分散成分と前記第2の分散成分とを合成して前記第3の分散度を算出する、
    請求項1記載の機械学習管理プログラム。
  5. 前記コンピュータに更に、
    前記第3の期待値と前記第3の分散度とに基づいて、前記第3の期待値より大きい予測性能の指標値を算出し、前記指標値に基づいて、前記第3のパラメータ値と前記第2のサイズの訓練データとを用いた機械学習を行うか否か判定する、
    処理を実行させる請求項1記載の機械学習管理プログラム。
  6. コンピュータが実行する機械学習管理方法であって、
    機械学習アルゴリズムに適用可能な複数のパラメータ値のうちの第1のパラメータ値と第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第1の測定値を取得し、前記第1の測定値に基づいて、前記第1のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第1の期待値と第1の分散度とを算出し、
    前記複数のパラメータ値のうちの第2のパラメータ値と前記第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第2の測定値を取得し、前記第2の測定値に基づいて、前記第2のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第2の期待値と第2の分散度とを算出し、
    前記第1の期待値、前記第1の分散度、前記第2の期待値および前記第2の分散度に基づいて、前記複数のパラメータ値のうちの第3のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第3の期待値と第3の分散度とを算出する、
    機械学習管理方法。
  7. 機械学習アルゴリズムに適用可能な複数のパラメータ値のうちの第1のパラメータ値と第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第1の測定値と、前記複数のパラメータ値のうちの第2のパラメータ値と前記第1のサイズの訓練データとを用いて学習されたモデルにおける予測性能の第2の測定値とを記憶する記憶部と、
    前記第1の測定値に基づいて、前記第1のパラメータ値と第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第1の期待値と第1の分散度とを算出し、前記第2の測定値に基づいて、前記第2のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第2の期待値と第2の分散度とを算出し、前記第1の期待値、前記第1の分散度、前記第2の期待値および前記第2の分散度に基づいて、前記複数のパラメータ値のうちの第3のパラメータ値と前記第2のサイズの訓練データとを用いて学習されるモデルにおける予測性能の第3の期待値と第3の分散度とを算出する演算部と、
    を有する機械学習管理装置。
JP2016123405A 2016-06-22 2016-06-22 機械学習管理プログラム、機械学習管理方法および機械学習管理装置 Active JP6703264B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016123405A JP6703264B2 (ja) 2016-06-22 2016-06-22 機械学習管理プログラム、機械学習管理方法および機械学習管理装置
US15/597,976 US11334813B2 (en) 2016-06-22 2017-05-17 Method and apparatus for managing machine learning process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016123405A JP6703264B2 (ja) 2016-06-22 2016-06-22 機械学習管理プログラム、機械学習管理方法および機械学習管理装置

Publications (2)

Publication Number Publication Date
JP2017228068A true JP2017228068A (ja) 2017-12-28
JP6703264B2 JP6703264B2 (ja) 2020-06-03

Family

ID=60676970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016123405A Active JP6703264B2 (ja) 2016-06-22 2016-06-22 機械学習管理プログラム、機械学習管理方法および機械学習管理装置

Country Status (2)

Country Link
US (1) US11334813B2 (ja)
JP (1) JP6703264B2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101877235B1 (ko) * 2018-03-29 2018-07-11 한국과학기술정보연구원 특허수명예측장치 및 그 동작 방법
JP2019061623A (ja) * 2017-09-28 2019-04-18 日本電信電話株式会社 パラメータ推定装置、方法、及びプログラム
JP2019133540A (ja) * 2018-02-02 2019-08-08 公益財団法人がん研究会 構造化診療データ統合管理データベースを用いた匿名化医療情報検索支援システム
JP2019159769A (ja) * 2018-03-13 2019-09-19 富士通株式会社 探索プログラム、探索方法および探索装置
WO2019234907A1 (ja) * 2018-06-08 2019-12-12 日本電気株式会社 制御装置、制御方法、及び、制御プログラムが記録された記録媒体
JP2020027319A (ja) * 2018-08-09 2020-02-20 株式会社豊田中央研究所 評価装置、評価方法、および、コンピュータプログラム
CN112088383A (zh) * 2018-05-10 2020-12-15 松下半导体解决方案株式会社 神经网络构筑装置、信息处理装置、神经网络构筑方法及程序
KR20210057430A (ko) * 2019-11-12 2021-05-21 한국전자기술연구원 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치
JP2021086381A (ja) * 2019-11-27 2021-06-03 オムロン株式会社 学習装置、学習方法およびプログラム
JP2021532488A (ja) * 2018-07-30 2021-11-25 データロボット, インコーポレイテッド データセットのための機械学習モデルの好適性の決定
JP2022522641A (ja) * 2019-03-07 2022-04-20 インターナショナル・ビジネス・マシーンズ・コーポレーション トレーニング・データと性能トレンドとの相関付けに基づいたコンピュータ・モデル機械学習
CN114925845A (zh) * 2021-02-02 2022-08-19 四川大学 一种嵌入原子势函数的机器学习构建方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11410044B2 (en) * 2017-05-20 2022-08-09 Google Llc Application development platform and software development kits that provide comprehensive machine learning services
US10802880B2 (en) * 2017-09-19 2020-10-13 Huawei Technologies Co., Ltd. System and method for distributed resource requirement and allocation
CN109754105B (zh) * 2017-11-07 2024-01-05 华为技术有限公司 一种预测方法及终端、服务器
TWI689816B (zh) * 2018-03-06 2020-04-01 群聯電子股份有限公司 區塊管理方法、記憶體控制電路單元與記憶體儲存裝置
JP6753893B2 (ja) * 2018-05-16 2020-09-09 ファナック株式会社 熱変位補正装置
EP3798935A4 (en) * 2018-05-22 2021-08-18 Fujitsu Limited PARAMETER SELECTION PROCESS, PARAMETER SELECTION PROGRAM AND INFORMATION PROCESSING DEVICE
EP3575813B1 (en) * 2018-05-30 2022-06-29 Siemens Healthcare GmbH Quantitative mapping of a magnetic resonance imaging parameter by data-driven signal-model learning
CN109272340B (zh) * 2018-07-19 2023-04-18 平安科技(深圳)有限公司 参数阈值确定方法、装置及计算机存储介质
US11392859B2 (en) * 2019-01-11 2022-07-19 Microsoft Technology Licensing, Llc Large-scale automated hyperparameter tuning
KR20220011630A (ko) * 2019-04-22 2022-01-28 오르빗 제노믹스, 인크. 미소부수체 분석을 위한 방법 및 시스템
US11333547B2 (en) * 2019-10-25 2022-05-17 Blackberry Limited Method and system for shipping container loading and unloading estimation
US11455554B2 (en) * 2019-11-25 2022-09-27 International Business Machines Corporation Trustworthiness of artificial intelligence models in presence of anomalous data
JP7471094B2 (ja) * 2020-01-30 2024-04-19 キヤノンメディカルシステムズ株式会社 学習支援装置及び方法
KR102263768B1 (ko) * 2020-11-09 2021-06-11 주식회사 고스트패스 사용자 생체 정보를 이용하는 본인 인증 시스템
US20220245393A1 (en) * 2021-02-03 2022-08-04 International Business Machines Corporation Dynamic evaluation of model acceptability

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140344193A1 (en) * 2013-05-15 2014-11-20 Microsoft Corporation Tuning hyper-parameters of a computer-executable learning algorithm
US20140358831A1 (en) * 2013-05-30 2014-12-04 President And Fellows Of Harvard College Systems and methods for bayesian optimization using non-linear mapping of input

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5196425B2 (ja) 2008-03-07 2013-05-15 Kddi株式会社 サポートベクトルマシンの再学習方法
JP2010092266A (ja) 2008-10-08 2010-04-22 Nec Corp 学習装置、学習方法及びプログラム
US8756175B1 (en) * 2012-02-22 2014-06-17 Google Inc. Robust and fast model fitting by adaptive sampling
JP6201556B2 (ja) 2013-09-17 2017-09-27 日本電気株式会社 予測モデル学習装置、予測モデル学習方法およびコンピュータプログラム
US20160132787A1 (en) * 2014-11-11 2016-05-12 Massachusetts Institute Of Technology Distributed, multi-model, self-learning platform for machine learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140344193A1 (en) * 2013-05-15 2014-11-20 Microsoft Corporation Tuning hyper-parameters of a computer-executable learning algorithm
US20140358831A1 (en) * 2013-05-30 2014-12-04 President And Fellows Of Harvard College Systems and methods for bayesian optimization using non-linear mapping of input

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
小林 健一 他: "サブサンプリングを用いた高時間効率な学習アルゴリズム選択", 情報処理学会 研究報告 コンピュータビジョンとイメージメディア(CVIM)2015-CVIM-198, JPN6020002325, 7 September 2015 (2015-09-07), JP, pages 1 - 8, ISSN: 0004200266 *
栗田 多喜夫: "パターン認識と機械学習", 電子情報通信学会技術研究報告, vol. 第110巻 第81号, JPN6020002328, 10 June 2010 (2010-06-10), JP, pages 61 - 66, ISSN: 0004200268 *
黒松 信行 他: "機械仕掛けの機械学習wizz", 情報処理学会 研究報告 ハイパフォーマンスコンピューティング(HPC) 2015-HPC-150, JPN6020002326, 28 July 2015 (2015-07-28), JP, pages 1 - 7, ISSN: 0004200267 *

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019061623A (ja) * 2017-09-28 2019-04-18 日本電信電話株式会社 パラメータ推定装置、方法、及びプログラム
JP2019133540A (ja) * 2018-02-02 2019-08-08 公益財団法人がん研究会 構造化診療データ統合管理データベースを用いた匿名化医療情報検索支援システム
JP7071624B2 (ja) 2018-03-13 2022-05-19 富士通株式会社 探索プログラム、探索方法および探索装置
JP2019159769A (ja) * 2018-03-13 2019-09-19 富士通株式会社 探索プログラム、探索方法および探索装置
KR101877235B1 (ko) * 2018-03-29 2018-07-11 한국과학기술정보연구원 특허수명예측장치 및 그 동작 방법
CN112088383A (zh) * 2018-05-10 2020-12-15 松下半导体解决方案株式会社 神经网络构筑装置、信息处理装置、神经网络构筑方法及程序
WO2019234907A1 (ja) * 2018-06-08 2019-12-12 日本電気株式会社 制御装置、制御方法、及び、制御プログラムが記録された記録媒体
JP7078912B2 (ja) 2018-06-08 2022-06-01 日本電気株式会社 制御装置、制御方法、及び、制御プログラム
JPWO2019234907A1 (ja) * 2018-06-08 2021-06-03 日本電気株式会社 制御装置、制御方法、及び、制御プログラム
JP7486472B2 (ja) 2018-07-30 2024-05-17 データロボット, インコーポレイテッド データセットのための機械学習モデルの好適性の決定
JP2021532488A (ja) * 2018-07-30 2021-11-25 データロボット, インコーポレイテッド データセットのための機械学習モデルの好適性の決定
JP2020027319A (ja) * 2018-08-09 2020-02-20 株式会社豊田中央研究所 評価装置、評価方法、および、コンピュータプログラム
JP2022522641A (ja) * 2019-03-07 2022-04-20 インターナショナル・ビジネス・マシーンズ・コーポレーション トレーニング・データと性能トレンドとの相関付けに基づいたコンピュータ・モデル機械学習
US11809966B2 (en) 2019-03-07 2023-11-07 International Business Machines Corporation Computer model machine learning based on correlations of training data with performance trends
JP7413392B2 (ja) 2019-03-07 2024-01-15 インターナショナル・ビジネス・マシーンズ・コーポレーション トレーニング・データと性能トレンドとの相関付けに基づいたコンピュータ・モデル機械学習
KR102453336B1 (ko) * 2019-11-12 2022-10-12 한국전자기술연구원 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치
US11922302B2 (en) 2019-11-12 2024-03-05 Korea Electronics Technology Institute Hyper-parameter optimization method for spiking neural network and the processing apparatus thereof
KR20210057430A (ko) * 2019-11-12 2021-05-21 한국전자기술연구원 스파이킹 뉴럴 네트워크를 위한 하이퍼 파라미터 최적화 방법과 장치 및 이를 이용한 연산 장치
JP2021086381A (ja) * 2019-11-27 2021-06-03 オムロン株式会社 学習装置、学習方法およびプログラム
JP7392425B2 (ja) 2019-11-27 2023-12-06 オムロン株式会社 学習装置、学習方法およびプログラム
CN114925845A (zh) * 2021-02-02 2022-08-19 四川大学 一种嵌入原子势函数的机器学习构建方法
CN114925845B (zh) * 2021-02-02 2023-08-08 四川大学 一种嵌入原子势函数的机器学习构建方法

Also Published As

Publication number Publication date
JP6703264B2 (ja) 2020-06-03
US11334813B2 (en) 2022-05-17
US20170372229A1 (en) 2017-12-28

Similar Documents

Publication Publication Date Title
JP6703264B2 (ja) 機械学習管理プログラム、機械学習管理方法および機械学習管理装置
JP6555015B2 (ja) 機械学習管理プログラム、機械学習管理装置および機械学習管理方法
JP6974712B2 (ja) 探索方法、探索装置および探索プログラム
JP6697159B2 (ja) 機械学習管理プログラム、機械学習管理装置および機械学習管理方法
JP6536295B2 (ja) 予測性能曲線推定プログラム、予測性能曲線推定装置および予測性能曲線推定方法
TWI818999B (zh) 針對新場景的預測模型訓練方法及裝置
JP6839342B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6849915B2 (ja) 比較プログラム、比較方法および比較装置
JP7071624B2 (ja) 探索プログラム、探索方法および探索装置
JP6947981B2 (ja) 推定方法、推定装置および推定プログラム
JP5123759B2 (ja) パターン検出器の学習装置、学習方法及びプログラム
EP3779806A1 (en) Automated machine learning pipeline identification system and method
JP7231829B2 (ja) 機械学習プログラム、機械学習方法および機械学習装置
EP4170558A1 (en) Program, data processing method, and data processing device
JP5135803B2 (ja) 最適パラメータ探索プログラム、最適パラメータ探索装置および最適パラメータ探索方法
JP6233432B2 (ja) 混合モデルの選択方法及び装置
JP2018190130A (ja) 分析装置、分析方法及び分析プログラム
JP2021124949A (ja) 機械学習モデル圧縮システム、プルーニング方法及びプログラム
JP4881272B2 (ja) 顔画像検出装置、顔画像検出方法、及び顔画像検出プログラム
JP5379749B2 (ja) 文書分類装置、文書分類方法、そのプログラムおよび記録媒体
US20210319259A1 (en) Method and apparatus for extracting a pattern of time series data
US20230419189A1 (en) Programmatic selector for choosing a well-suited stacked machine learning ensemble pipeline and hyperparameter values
US20230334297A1 (en) Information processing apparatus, information processing method, and computer readable medium
Tirvan Sensitivity Assessing to Data Volume for forecasting: introducing similarity methods as a suitable one in Feature selection methods
CN114692886A (zh) 模型训练方法及系统、存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200325

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200325

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200325

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: 20200407

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200420

R150 Certificate of patent or registration of utility model

Ref document number: 6703264

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150