(57)【要約】【課題】ハイパーパラメータ値の探索を効率化する。【解決手段】記憶部１１は、大小関係が規定されないハイパーパラメータ１４と大小関係が規定されるハイパーパラメータ１５とに基づいて制御される機械学習を過去に実行した結果について、ハイパーパラメータ１４に値１４ａを設定した場合の予測性能と値１４ｂを設定した場合の予測性能との間の差を示す予測性能差情報１３を記憶する。処理部１２は、ハイパーパラメータ１４に値１４ａを設定しハイパーパラメータ１５に値１５ａを設定して機械学習を実行させることで予測性能１６を算出する。処理部１２は、予測性能１６と予測性能差情報１３とに基づいて、次に機械学習を実行するときに使用するハイパーパラメータ１４の値とハイパーパラメータ１５の値の組み合わせを選択する。【選択図】図１
2019159769.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
異なる値の間に大小関係が規定されない第１のハイパーパラメータと異なる値の間に大小関係が規定される第２のハイパーパラメータとに基づいて制御される機械学習を、複数のデータセットに対して過去に実行した結果について、前記第１のハイパーパラメータに第１の値を設定した場合の予測性能と前記第１のハイパーパラメータに第２の値を設定した場合の予測性能との間の差を示す予測性能差情報を取得し、
前記複数のデータセットと異なる他のデータセットに対して、前記第１のハイパーパラメータに前記第１の値を設定し前記第２のハイパーパラメータに第３の値を設定して前記機械学習を実行させることで第１の予測性能を算出し、
前記第１の予測性能と前記予測性能差情報とに基づいて、前記他のデータセットに対して次に前記機械学習を実行するときに使用する前記第１のハイパーパラメータの値と前記第２のハイパーパラメータの値の組み合わせを選択する、
処理を実行させる探索プログラム。
【請求項２】
前記組み合わせの選択では、前記第１の予測性能と前記予測性能差情報とに基づいて、前記第１のハイパーパラメータに前記第２の値を設定し前記第２のハイパーパラメータに前記第３の値を設定した場合に算出される第２の予測性能を推定し、前記第１の予測性能と前記第２の予測性能とに基づいて前記組み合わせを選択する、
請求項１記載の探索プログラム。
【請求項３】
前記予測性能差情報は、前記第２のハイパーパラメータに設定可能な複数の値それぞれについて、前記第１のハイパーパラメータに前記第１の値を設定した場合の予測性能と前記第２の値を設定した場合の予測性能との間の差を示し、
前記組み合わせの選択では、前記予測性能差情報が示す前記複数の値に対応する複数の差のうち前記第３の値に対応する差に基づいて前記第２の予測性能を推定する、
請求項２記載の探索プログラム。
【請求項４】
前記予測性能差情報は、前記第１のハイパーパラメータに前記第１の値を設定した場合の予測性能と前記第２の値を設定した場合の予測性能との間の差が、使用するデータセットによって変動する程度を表す分散度を更に示し、
前記組み合わせの選択では、前記分散度が大きいほど前記第２の予測性能の推定値の重みを小さくして、前記第１のハイパーパラメータに前記第２の値を設定し前記第２のハイパーパラメータに第４の値を設定した場合に算出される第３の予測性能を推定する、
請求項２記載の探索プログラム。
【請求項５】
前記コンピュータに更に、
前記複数のデータセットに対して前記機械学習を実行させることで複数の予測性能を算出し、前記複数の予測性能をデータセット毎の予測性能の分布に基づいて正規化することで前記予測性能差情報を生成する処理を実行させる、
請求項１記載の探索プログラム。
【請求項６】
前記予測性能差情報の生成では、データセット毎の予測性能の最大値および最小値に基づいて前記複数の予測性能を正規化する、
請求項５記載の探索プログラム。
【請求項７】
コンピュータが実行する探索方法であって、
異なる値の間に大小関係が規定されない第１のハイパーパラメータと異なる値の間に大小関係が規定される第２のハイパーパラメータとに基づいて制御される機械学習を、複数のデータセットに対して過去に実行した結果について、前記第１のハイパーパラメータに第１の値を設定した場合の予測性能と前記第１のハイパーパラメータに第２の値を設定した場合の予測性能との間の差を示す予測性能差情報を取得し、
前記複数のデータセットと異なる他のデータセットに対して、前記第１のハイパーパラメータに前記第１の値を設定し前記第２のハイパーパラメータに第３の値を設定して前記機械学習を実行させることで第１の予測性能を算出し、
前記第１の予測性能と前記予測性能差情報とに基づいて、前記他のデータセットに対して次に前記機械学習を実行するときに使用する前記第１のハイパーパラメータの値と前記第２のハイパーパラメータの値の組み合わせを選択する、
探索方法。
【請求項８】
異なる値の間に大小関係が規定されない第１のハイパーパラメータと異なる値の間に大小関係が規定される第２のハイパーパラメータとに基づいて制御される機械学習を、複数のデータセットに対して過去に実行した結果について、前記第１のハイパーパラメータに第１の値を設定した場合の予測性能と前記第１のハイパーパラメータに第２の値を設定した場合の予測性能との間の差を示す予測性能差情報を記憶する記憶部と、
前記複数のデータセットと異なる他のデータセットに対して、前記第１のハイパーパラメータに前記第１の値を設定し前記第２のハイパーパラメータに第３の値を設定して前記機械学習を実行させることで第１の予測性能を算出し、前記第１の予測性能と前記予測性能差情報とに基づいて、前記他のデータセットに対して次に前記機械学習を実行するときに使用する前記第１のハイパーパラメータの値と前記第２のハイパーパラメータの値の組み合わせを選択する処理部と、
を有する探索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は探索プログラム、探索方法および探索装置に関する。
【背景技術】
【０００２】
コンピュータを利用したデータ分析の１つとして、機械学習が行われることがある。機械学習では、複数の既知の事例を示す訓練データをコンピュータに入力する。コンピュータは、訓練データを分析して、要因（説明変数や独立変数と言うことがある）と結果（目的変数や従属変数と言うことがある）との間の関係を一般化したモデルを生成する。生成されたモデルを用いることで未知の事例の結果を予測することができる。機械学習では、生成されるモデルの正確さ、すなわち、未知の事例の結果を正確に予測する能力（予測性能と言うことがある）が高いことが好ましい。
【０００３】
機械学習では、同じ訓練データを使用する場合であっても、ハイパーパラメータ値を変えることで予測性能の異なるモデルが生成される。ハイパーパラメータは、機械学習の挙動を調整する設定項目である。ハイパーパラメータ値は、機械学習を通じて決定されるモデル内の係数とは異なり、モデル生成の開始前に指定される。ハイパーパラメータには、例えば、ロジスティック回帰分析、サポートベクタマシン（ＳＶＭ：Support Vector Machine）、ランダムフォレストなどの機械学習アルゴリズムを示すものが含まれる。また、ハイパーパラメータには、例えば、ＲＢＦ（Radial Basis Function）カーネルＳＶＭという機械学習アルゴリズムで使用される「Ｃ」や「γ」が含まれる。
【０００４】
ある訓練データに対して、モデルの予測性能が最も高くなるようなハイパーパラメータ値が事前にわからないこともある。そこで、予測性能が高くなるハイパーパラメータ値をコンピュータが探索することが考えられる。例えば、ハイパーパラメータ値を設定する設定装置が提案されている。提案の設定装置は、データセットからサンプリングした小さなサイズの訓練データを用いて、異なるハイパーパラメータ値に対応する複数のモデルを生成し、これら複数のモデルの予測性能を測定する。設定装置は、複数のハイパーパラメータ値を予測性能の高いグループと予測性能の低いグループとに分類し、予測性能の高いグループに分類される確率に基づいて、次に使用するハイパーパラメータ値を選択する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−２１８８６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ハイパーパラメータは、値の大小関係が規定されないハイパーパラメータと値の大小関係が規定されるハイパーパラメータの組み合わせであることがある。前者は名義尺度に相当し、カテゴリカルハイパーパラメータと言うことがある。カテゴリカルハイパーパラメータの例として、機械学習アルゴリズムや、ランダムフォレストのクラス分類方法（ジニ係数とエントロピーの二者択一）が挙げられる。後者は順序尺度や比例尺度や間隔尺度に相当し、連続量ハイパーパラメータと言うことがある。連続量ハイパーパラメータの例として、ＲＢＦカーネルＳＶＭの「Ｃ」や「γ」が挙げられる。
【０００７】
この場合、モデルの予測性能が高くなるハイパーパラメータ値を探索するにあたり、カテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の適切な組み合わせを探すことになる。連続量ハイパーパラメータについては、その性質から、近い値を用いて生成されたモデルは近い予測性能をもつ可能性が高い。そのため、カテゴリカルハイパーパラメータ値を１つに固定すると、選択可能な全ての連続量ハイパーパラメータ値を試行しなくても予測性能が高くなる連続量ハイパーパラメータ値を推定し得る。
【０００８】
これに対し、カテゴリカルハイパーパラメータについては、その性質から、近い値を用いて生成されたモデルが近い予測性能をもつという仮定は成立しない。ただし、連続量ハイパーパラメータ値が同一でカテゴリカルハイパーパラメータ値が異なるモデルの予測性能の間に、何らかの関係性が存在する場合もあり完全に無関係であるとは限らない。そこで、異なるカテゴリカルハイパーパラメータ値を用いて生成されたモデルの予測性能をどの様に利用すれば、予測性能が高くなるようなカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組み合わせを効率的に探索できるかが問題となる。
【０００９】
１つの側面では、本発明は、ハイパーパラメータ値の探索を効率化することができる探索プログラム、探索方法および探索装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
１つの態様では、コンピュータに以下の処理を実行させる探索プログラムが提供される。異なる値の間に大小関係が規定されない第１のハイパーパラメータと異なる値の間に大小関係が規定される第２のハイパーパラメータとに基づいて制御される機械学習を、複数のデータセットに対して過去に実行した結果について、第１のハイパーパラメータに第１の値を設定した場合の予測性能と第１のハイパーパラメータに第２の値を設定した場合の予測性能との間の差を示す予測性能差情報を取得する。複数のデータセットと異なる他のデータセットに対して、第１のハイパーパラメータに第１の値を設定し第２のハイパーパラメータに第３の値を設定して機械学習を実行させることで第１の予測性能を算出する。第１の予測性能と予測性能差情報とに基づいて、他のデータセットに対して次に機械学習を実行するときに使用する第１のハイパーパラメータの値と第２のハイパーパラメータの値の組み合わせを選択する。
【００１１】
また、１つの態様では、コンピュータが実行する探索方法が提供される。また、１つの態様では、記憶部と処理部とを有する探索装置が提供される。
【発明の効果】
【００１２】
１つの側面では、ハイパーパラメータ値の探索を効率化することができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態の探索装置を説明する図である。
【図２】機械学習装置のハードウェア例を示すブロック図である。
【図３】ハイパーパラメータと予測性能との関係例を示すグラフである。
【図４】予測性能差の期待値および標準偏差の例を示すグラフである。
【図５】ハイパーパラメータ探索の進行例を示す図である。
【図６】ハイパーパラメータ探索の進行例を示す図（続き）である。
【図７】共有度と推定予測性能との関係例を示す図である。
【図８】機械学習装置の機能例を示すブロック図である
【図９】サンプル履歴テーブルの例を示す図である。
【図１０】統計テーブルの例を示す図である。
【図１１】統計情報生成の手順例を示すフローチャートである。
【図１２】統計情報生成の手順例を示すフローチャート（続き）である。
【図１３】第２の実施の形態の機械学習の手順例を示すフローチャートである。
【図１４】性能改善量推定の手順例を示すフローチャートである。
【図１５】性能改善量推定の手順例を示すフローチャート（続き）である。
【図１６】第３の実施の形態の機械学習の手順例を示すフローチャートである。
【図１７】性能改善速度推定の手順例を示すフローチャートである。
【図１８】性能改善速度推定の手順例を示すフローチャート（続き）である。
【発明を実施するための形態】
【００１４】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
第１の実施の形態を説明する。
【００１５】
図１は、第１の実施の形態の探索装置を説明する図である。
第１の実施の形態の探索装置１０は機械学習の進行を管理する。機械学習では、既知の事例を示す訓練データを分析することで、未知の事例の結果を予測するモデル（学習モデルと言うことがある）を生成する。探索装置１０が自ら機械学習を行ってもよいし、探索装置１０が他の装置に機械学習を行わせてもよい。探索装置１０は、ユーザが操作するクライアントコンピュータでもよいし、クライアントコンピュータからネットワーク経由でアクセスされるサーバコンピュータでもよい。
【００１６】
探索装置１０は、記憶部１１および処理部１２を有する。記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性の半導体メモリでもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性のストレージでもよい。処理部１２は、例えば、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。ただし、処理部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの特定用途の電子回路を含んでもよい。プロセッサは、ＲＡＭなどのメモリ（記憶部１１でもよい）に記憶されたプログラムを実行する。プログラムには探索プログラムが含まれる。複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
【００１７】
機械学習によって生成されるモデルに対しては、既知の事例を示すテストデータを用いることで、未知の事例の結果を予測する精度を示す予測性能を算出することができる。予測性能を示す指標としては、例えば、正答率（Accuracy）、適合率（Precision）、Ｆ値、平均二乗誤差（ＭＳＥ：Mean Squared Error）、平均二乗誤差平方根（ＲＭＳＥ：Root Mean Squared Error）などが用いられる。機械学習では予測性能の高いモデルが生成されることが好ましい。生成されるモデルの予測性能は、訓練データとして使用するデータセット（データ母集合）や機械学習の方法に依存する。
【００１８】
第１の実施の形態の機械学習は、ハイパーパラメータ１４（第１のハイパーパラメータ）とハイパーパラメータ１５（第２のハイパーパラメータ）とに基づいてその挙動が制御される。ハイパーパラメータ１４，１５は、モデルに含まれる係数のように機械学習を通じて値が決定されるものではなく、モデル生成の開始前に値が設定されるものである。ハイパーパラメータ１４，１５の値を変えると、生成されるモデルが変わって予測性能が変わる。そこで、探索装置１０は、予測性能が高くなるようなハイパーパラメータ１４の値とハイパーパラメータ１５の値の組み合わせを、機械学習を繰り返して探索する。
【００１９】
ハイパーパラメータ１４は、異なる値の間に大小関係が規定されないハイパーパラメータである。ハイパーパラメータ１４は、カテゴリカルハイパーパラメータと言うことができ、名義尺度に相当すると言うこともできる。ハイパーパラメータ１４に設定可能な異なる値を比較しても、大小関係に意味が無く、両者の差や比にも意味が無い。よって、ハイパーパラメータ１４については、近い値を用いて生成されたモデルは近い予測性能をもつという仮定が成立しない。ハイパーパラメータ１４の例として、機械学習アルゴリズムや、ランダムフォレストのクラス分類方法（ジニ係数とエントロピーの二者択一）などが挙げられる。機械学習アルゴリズムの例としては、ロジスティック回帰分析、ＲＢＦカーネルＳＶＭ、ランダムフォレストなどが挙げられる。
【００２０】
ハイパーパラメータ１５は、異なる値の間に大小関係が規定されるハイパーパラメータである。ハイパーパラメータ１５は、連続量ハイパーパラメータと言うことができ、順序尺度や間隔尺度や比例尺度に相当すると言うこともできる。ハイパーパラメータ１５に設定可能な異なる値を比較したとき、大小関係は判定可能であるものの、両者の差や比に意味が無いことがある（順序尺度）。また、異なる値を比較したとき、両者の差（距離）は定義されるものの比に意味が無いことがある（間隔尺度）。また、異なる値を比較したとき、両者の差だけでなく比も定義されることがある（比例尺度）。ハイパーパラメータ１５は、異なる値の間の距離を算出可能であることが好ましい。ハイパーパラメータ１５に設定可能な値は、実数のような連続値でもよいし整数のような離散値でもよい。ハイパーパラメータ１５の例として、ＲＢＦカーネルＳＶＭの変数「Ｃ」と「γ」、ランダムフォレストの木の深さを示す整数などが挙げられる。
【００２１】
なお、ハイパーパラメータ１４は、単一のハイパーパラメータ要素でもよいし、上記の性質を満たす２以上のハイパーパラメータ要素の集合でもよい。よって、ハイパーパラメータ１４の値は、単一のハイパーパラメータ要素の値であるスカラ値でもよいし、２以上のハイパーパラメータ要素の値を含むベクトル値でもよい。同様に、ハイパーパラメータ１５は、単一のハイパーパラメータ要素でもよいし２以上のハイパーパラメータ要素の集合でもよい。ハイパーパラメータ１５の値は、スカラ値でもよいしベクトル値でもよい。
【００２２】
記憶部１１は、予測性能差情報１３を記憶する。予測性能差情報１３は、複数のデータセットに対して過去に機械学習を実行した結果から生成される。予測性能差情報１３は、探索装置１０によって生成されてもよいし他の装置によって生成されてもよい。
【００２３】
予測性能差情報１３は、ハイパーパラメータ１４に値１４ａ（第１の値）を設定した場合の予測性能と、ハイパーパラメータ１４に値１４ｂ（第２の値）を設定した場合の予測性能との間の差を示す。予測性能差情報１３は、ハイパーパラメータ１５の値に関係なく、値１４ａを使用した場合の予測性能と値１４ｂを使用した場合の予測性能との間の差の傾向を示す情報であってもよい。また、予測性能差情報１３は、ハイパーパラメータ１５に設定可能な値それぞれに対応させて、値１４ａを使用した場合の予測性能と値１４ｂを使用した場合の予測性能との間の差を示す情報であってもよい。
【００２４】
すなわち、予測性能差情報１３は、ハイパーパラメータ１４に値１４ａを設定しハイパーパラメータ１５に特定の値を設定した場合の予測性能と、ハイパーパラメータ１４に値１４ｂを設定しハイパーパラメータ１５に上記特定の値を設定した場合の予測性能との間の差を示してもよい。予測性能差情報１３は、データセット毎の差を上記複数のデータセットの間で平均化して求めた期待値を含んでもよい。また、予測性能差情報１３は、差のばらつきの程度を示す分散度（例えば、分散や標準偏差）を含んでもよい。
【００２５】
処理部１２は、記憶部１１に記憶された予測性能差情報１３を利用して、予測性能差情報１３の生成に用いた複数のデータセットと異なる他のデータセットに対する機械学習を制御する。このとき、処理部１２は、モデルの予測性能が高くなるハイパーパラメータ１４の値とハイパーパラメータ１５の値の組み合わせを探索する。
【００２６】
処理部１２は、ハイパーパラメータ１４に値１４ａを設定しハイパーパラメータ１５に値１５ａ（第３の値）を設定して、上記他のデータセットに対して機械学習を実行させることで予測性能１６（第１の予測性能）を算出する。例えば、値１４ａと値１５ａを使用してモデルが生成され、生成されたモデルに対して予測性能１６が算出される。すると、処理部１２は、算出した予測性能１６と予測性能差情報１３とに基づいて、上記他のデータセットに対して次に機械学習を実行するときに使用するハイパーパラメータ１４の値とハイパーパラメータ１５の値の組み合わせを選択する。この組み合わせは、値１４ａと値１５ａの組み合わせとは異なるものである。
【００２７】
例えば、処理部１２は、予測性能１６と予測性能差情報１３とに基づいて、ハイパーパラメータ１４に値１４ｂを設定しハイパーパラメータ１５に値１５ａを設定した場合の予測性能（第２の予測性能）を推定する。処理部１２は、ハイパーパラメータ１４に値１４ａを設定したときのハイパーパラメータ１５に対する予測性能の変化を、予測性能１６を用いて推定する。一方、処理部１２は、ハイパーパラメータ１４に値１４ｂを設定したときのハイパーパラメータ１５に対する予測性能の変化を、上記第２の予測性能を用いて推定する。これは、ハイパーパラメータ１４については近い値を使用しても予測性能が近似するわけではない一方、ハイパーパラメータ１５については近い値を使用すると予測性能が近似するという仮定が成立することを利用している。処理部１２は、例えば、最も予測性能の推定値が高くなるような組み合わせを選択する。
【００２８】
第１の実施の形態の探索装置１０によれば、ハイパーパラメータ１４に値１４ａを設定した場合の予測性能とハイパーパラメータ１４に値１４ｂを設定した場合の予測性能との間の差を示す予測性能差情報１３が取得される。ハイパーパラメータ１４に値１４ａを設定しハイパーパラメータ１５に値１５ａを設定して、他のデータセットに対して機械学習が試行されて予測性能１６が算出される。そして、算出された予測性能１６と予測性能差情報１３とに基づいて、上記他のデータセットに対して次に試行するハイパーパラメータ１４の値とハイパーパラメータ１５の値の組み合わせが選択される。これにより、予測性能が高くなるハイパーパラメータ値の探索が効率化される。
【００２９】
例えば、ハイパーパラメータ１４に値１４ｂを設定した場合の予測性能の推定において予測性能１６を使用せず、値１４ａに関する探索と値１４ｂに関する探索とを独立に行う方法も考えられる。しかし、この方法は、ハイパーパラメータ１４の値が異なりハイパーパラメータ１５の値が同一または近似する組み合わせを別個に試行することになり、ハイパーパラメータ１４の異なる値でハイパーパラメータ１５の予測性能が類似している場合、探索の効率性に改善の余地がある。また、ハイパーパラメータ１４に値１４ｂを設定した場合の予測性能の推定に、予測性能差情報１３を使用せずに予測性能１６をそのまま適用する方法も考えられる。しかし、この方法は、ハイパーパラメータ１４の値の違いによる予測性能のずれを考慮しておらず、予測性能の推定精度に改善の余地があり、結果として探索の効率性に改善の余地がある。これに対し、過去の機械学習から得られた予測性能差情報１３を参照することで、ハイパーパラメータ値の探索を効率化できる。
【００３０】
［第２の実施の形態］
次に、第２の実施の形態を説明する。
図２は、機械学習装置のハードウェア例を示すブロック図である。
【００３１】
機械学習装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、媒体リーダ１０６および通信インタフェース１０７を有する。上記ユニットはバスに接続されている。機械学習装置１００は、第１の実施の形態の探索装置１０に対応する。ＣＰＵ１０１は、第１の実施の形態の処理部１２に対応する。ＲＡＭ１０２またはＨＤＤ１０３は、第１の実施の形態の記憶部１１に対応する。
【００３２】
ＣＰＵ１０１は、プログラムの命令を実行するプロセッサである。ＣＰＵ１０１は、ＨＤＤ１０３に記憶されたプログラムやデータの少なくとも一部をＲＡＭ１０２にロードし、プログラムを実行する。なお、ＣＰＵ１０１は複数のプロセッサコアを含んでもよく、機械学習装置１００は複数のプロセッサを有してもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列に実行してもよい。また、複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
【００３３】
ＲＡＭ１０２は、ＣＰＵ１０１が実行するプログラムやＣＰＵ１０１が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、機械学習装置１００は、ＲＡＭ以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
【００３４】
ＨＤＤ１０３は、オペレーティングシステム（ＯＳ：Operating System）やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。プログラムには探索プログラムが含まれる。なお、機械学習装置１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
【００３５】
画像信号処理部１０４は、ＣＰＵ１０１からの命令に従って、機械学習装置１００に接続されたディスプレイ１１１に画像を出力する。ディスプレイ１１１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイ、液晶ディスプレイ（ＬＣＤ：Liquid Crystal Display）、プラズマディスプレイ、有機ＥＬ（ＯＥＬ：Organic Electro-Luminescence）ディスプレイなど、任意の種類のディスプレイを用いることができる。
【００３６】
入力信号処理部１０５は、機械学習装置１００に接続された入力デバイス１１２から入力信号を取得し、ＣＰＵ１０１に出力する。入力デバイス１１２としては、マウスやタッチパネルやタッチパッドやトラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、機械学習装置１００に、複数の種類の入力デバイスが接続されていてもよい。
【００３７】
媒体リーダ１０６は、記録媒体１１３に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体１１３として、例えば、磁気ディスク、光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）、半導体メモリなどを使用できる。磁気ディスクには、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤが含まれる。光ディスクには、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）が含まれる。
【００３８】
媒体リーダ１０６は、例えば、記録媒体１１３から読み取ったプログラムやデータを、ＲＡＭ１０２やＨＤＤ１０３などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、ＣＰＵ１０１によって実行される。なお、記録媒体１１３は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体１１３やＨＤＤ１０３を、コンピュータ読み取り可能な記録媒体と言うことがある。
【００３９】
通信インタフェース１０７は、ネットワーク１１４に接続され、ネットワーク１１４を介して他の装置と通信を行うインタフェースである。通信インタフェース１０７は、例えば、スイッチやルータなどの通信装置とケーブルで接続される。
【００４０】
次に、機械学習における予測性能およびハイパーパラメータについて説明する。
第２の実施の形態の機械学習では、既知の事例を示す複数の単位データ（インスタンスやレコードと言うことがある）を含むデータセットを予め用意しておく。機械学習装置１００または他の装置が、センサデバイスなどの各種デバイスからネットワーク１１４経由でインスタンスを収集してもよい。データセットは「ビッグデータ」と言われるサイズの大きなデータセットであってもよい。各インスタンスは、１以上の説明変数の値と目的変数の値とを含む。説明変数および目的変数それぞれを属性と言うことがあり、説明変数の値および目的変数の値それぞれを属性値と言うことがある。
【００４１】
機械学習装置１００は、データセットの中から一部のインスタンスを訓練データとしてサンプリングし、訓練データを用いてモデルを生成する。モデルは、説明変数と目的変数との間の関係を示し、１以上の係数を含む。モデルは、線形式、二次以上の多項式、指数関数、対数関数などの各種数式によって表されることがある。数式の形は、機械学習の前にユーザによって指定されてもよい。係数は、機械学習を通じて訓練データに基づいて決定される。生成されたモデルを用いることで、未知の事例の説明変数の値（要因）から、未知の事例の目的変数の値（結果）を予測することができる。モデルによって予測される結果は、０以上１以下の確率値などの連続値であってもよいし、ＹＥＳ／ＮＯの２値などの離散値であってもよい。
【００４２】
生成されたモデルに対しては予測性能を算出することができる。予測性能は、未知の事例の結果を正確に予測する能力であり、精度と言うこともできる。機械学習装置１００は、データセットの中から訓練データ以外のインスタンスをテストデータとしてサンプリングし、テストデータを用いて予測性能を算出する。テストデータのサイズは、例えば、訓練データのサイズの１／２程度とする。機械学習装置１００は、テストデータに含まれる説明変数の値をモデルに入力し、モデルが出力する目的変数の値（予測値）とテストデータに含まれる目的変数の値（実績値）とを比較する。なお、生成したモデルの予測性能を検証することを「バリデーション」と言うことがある。
【００４３】
予測性能の指標として、正答率、適合率、Ｆ値、平均二乗誤差、平均二乗誤差平方根などが挙げられる。例えば、結果がＹＥＳ／ＮＯの２値で表されるとする。また、Ｎ件のテストデータの事例のうち、予測値＝ＹＥＳかつ実績値＝ＹＥＳの件数をＴｐ、予測値＝ＹＥＳかつ実績値＝ＮＯの件数をＦｐ、予測値＝ＮＯかつ実績値＝ＹＥＳの件数をＦｎ、予測値＝ＮＯかつ実績値＝ＮＯの件数をＴｎとする。この場合、正答率は予測が当たった割合であり、（Ｔｐ＋Ｔｎ）／Ｎと算出される。適合率は「ＹＥＳ」の予測を間違えない確率であり、Ｔｐ／（Ｔｐ＋Ｆｐ）と算出される。Ｆ値は、（２×再現率×適合率）／（再現率＋適合率）と算出される。再現率は、Ｔｐ／（Ｔｐ＋Ｆｎ）と算出される。各事例の実績値をｙと表し予測値をｙ＾と表すと、平均二乗誤差はｓｕｍ（ｙ−ｙ＾）２／Ｎと算出され、平均二乗誤差平方根は（ｓｕｍ（ｙ−ｙ＾）２／Ｎ）１／２と算出される。
【００４４】
機械学習装置１００は、ハイパーパラメータθの値を変更することで機械学習の挙動を調整する。ハイパーパラメータθは、モデルに含まれる係数のように機械学習を通じて値が決定されるものではなく、モデル生成の開始前に値が指定されるものである。ハイパーパラメータθの値を変えると、生成されるモデルが変わり予測性能が変わる。第２の実施の形態では、ハイパーパラメータθは、カテゴリカルハイパーパラメータｃと連続量ハイパーパラメータｘの組である。すなわちθ＝（ｃ，ｘ）である。
【００４５】
カテゴリカルハイパーパラメータは、大小関係を定義できない値をとるハイパーパラメータである。カテゴリカルハイパーパラメータについては、近い値を用いて生成されたモデルは近い予測性能をもつという仮定が成立しない。カテゴリカルハイパーパラメータの例として、機械学習アルゴリズムやランダムフォレストのクラス分類方法が挙げられる。カテゴリカルハイパーパラメータは、２以上のハイパーパラメータ要素を含むベクトルでもよい。ただし、以下では説明を簡単にするため、カテゴリカルハイパーパラメータは単一のハイパーパラメータ要素であるスカラであると想定する場合がある。
【００４６】
連続量ハイパーパラメータは、カテゴリカルハイパーパラメータ以外のハイパーパラメータであり、大小関係を定義できる値をとるハイパーパラメータである。連続量ハイパーパラメータは、好ましくは、異なる値の間の距離を定義できるハイパーパラメータである。連続量ハイパーパラメータについては、近い値を用いて生成されたモデルは近い予測性能をもつという仮定が成立する。連続量ハイパーパラメータの値は、実数のような連続値でもよいし整数のような離散値でもよい。連続量ハイパーパラメータの例として、ＲＢＦカーネルＳＶＭの変数「Ｃ」と「γ」やランダムフォレストの木の深さが挙げられる。連続量ハイパーパラメータは、２以上のハイパーパラメータ要素を含むベクトルでもよい。ただし、以下では説明を簡単にするため、連続量ハイパーパラメータは単一のハイパーパラメータ要素であるスカラであると想定する場合がある。
【００４７】
上記のように、カテゴリカルハイパーパラメータでは機械学習アルゴリズムを指定することができる。機械学習装置１００が実行可能な機械学習アルゴリズムの例として、ロジスティック回帰分析、ＳＶＭ、ランダムフォレストなどが挙げられる。
【００４８】
ロジスティック回帰分析は、目的変数ｙの値と説明変数ｘ１，ｘ２，…，ｘｋの値をＳ字曲線にフィッティングする回帰分析である。目的変数ｙおよび説明変数ｘ１，ｘ２，…，ｘｋは、ｌｏｇ（ｙ／（１−ｙ））＝ａ１ｘ１＋ａ２ｘ２＋…＋ａｋｘｋ＋ｂの関係を満たすと仮定される。ａ１，ａ２，…，ａｋ，ｂは係数であり、回帰分析によって決定される。
【００４９】
サポートベクタマシンは、Ｎ次元空間に配置されたインスタンスの集合を、２つのクラスに最も明確に分割するような境界面を算出する機械学習アルゴリズムである。境界面は、各クラスとの距離（マージン）が最大になるように算出される。
【００５０】
ランダムフォレストは、複数のインスタンスを適切に分類するためのモデルを生成する機械学習アルゴリズムである。ランダムフォレストでは、データセットからインスタンスをランダムにサンプリングする。説明変数の一部をランダムに選択し、選択した説明変数の値に応じてサンプリングしたインスタンスを分類する。説明変数の選択とインスタンスの分類を繰り返すことで、複数の説明変数の値に基づく階層的な決定木を生成する。インスタンスのサンプリングと決定木の生成を繰り返すことで複数の決定木を取得し、複数の決定木を合成することでインスタンスを分類するための最終的なモデルを生成する。
【００５１】
次に、ハイパーパラメータの調整による予測性能の変化について説明する。
図３は、ハイパーパラメータと予測性能との関係例を示すグラフである。
曲線２１ａは、カテゴリカルハイパーパラメータ値をｃ１に固定してデータセットＤ１に対して機械学習を行ったときにおける、連続量ハイパーパラメータ値と予測性能との間の関係を示している。カテゴリカルハイパーパラメータ値とデータセットが同一でも、連続量ハイパーパラメータ値を変えると予測性能が変わる。ただし、曲線２１ａは連続的曲線であり、近い連続量ハイパーパラメータ値からは近い予測性能が得られる。
【００５２】
曲線２１ｂは、カテゴリカルハイパーパラメータ値をｃ２に固定してデータセットＤ１に対して機械学習を行ったときにおける、連続量ハイパーパラメータ値と予測性能との間の関係を示している。曲線２１ａと曲線２１ｂとは、データセットが同一であるもののカテゴリカルハイパーパラメータ値が異なる。データセットと連続量ハイパーパラメータ値が同一でも、カテゴリカルハイパーパラメータ値を変えると予測性能が変わる。ただし、曲線２１ａと曲線２１ｂとは類似した予測性能の分布を示している。
【００５３】
曲線２１ｃは、カテゴリカルハイパーパラメータ値をｃ１に固定してデータセットＤ２に対して機械学習を行ったときにおける、連続量ハイパーパラメータ値と予測性能との間の関係を示している。曲線２１ａと曲線２１ｃとは、カテゴリカルハイパーパラメータ値が同一であるもののデータセットが異なる。カテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値が同一でも、データセットを変えると予測性能が変わる。曲線２１ａと曲線２１ｃとは類似しない予測性能の分布を示している。
【００５４】
曲線２１ｄは、カテゴリカルハイパーパラメータ値をｃ２に固定してデータセットＤ２に対して機械学習を行ったときにおける、連続量ハイパーパラメータ値と予測性能との間の関係を示している。曲線２１ｂと曲線２１ｄとは、カテゴリカルハイパーパラメータ値が同一であるもののデータセットが異なる。曲線２１ｂと曲線２１ｄとは類似しない予測性能の分布を示している。一方で、曲線２１ｃと曲線２１ｄとは、データセットが同一であるもののカテゴリカルハイパーパラメータ値が異なる。曲線２１ｃと曲線２１ｄとは類似した予測性能の分布を示している。
【００５５】
このように、生成されるモデルの予測性能は、カテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値とデータセットの影響を受ける。あるデータセットからモデルを生成するとき、予測性能が最大になるカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を予め特定することは難しい。そこで、機械学習装置１００は、同一のデータセットに対して機械学習を繰り返して、最適なカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を探索する。探索では、可能な組み合わせを網羅的に試行するのではなく、予測性能が高くなる可能性がある組み合わせに絞って機械学習を試行することが好ましい。よって、最適なカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を探索する方法が問題となる。
【００５６】
あるカテゴリカルハイパーパラメータ値について幾つかの連続量ハイパーパラメータ値を試行した場合、算出された予測性能を用いて、回帰分析などにより他の連続量ハイパーパラメータ値の予測性能を推定することは可能である。これは、近い値からは近い予測性能が得られるという連続量ハイパーパラメータの性質を利用したものである。例えば、カテゴリカルハイパーパラメータ値ｃ１について幾つかの異なる連続量ハイパーパラメータ値を試行した場合、その試行結果から曲線２１ａを推定することができる。
【００５７】
一方で、あるカテゴリカルハイパーパラメータ値について予測性能の分布を推定するときに、他のカテゴリカルハイパーパラメータ値の試行結果をそのまま利用することは難しい。カテゴリカルハイパーパラメータ値が異なると予測性能が変わるためである。例えば、カテゴリカルハイパーパラメータ値ｃ１の曲線２１ａを推定するときに、カテゴリカルハイパーパラメータ値ｃ２で算出された予測性能をそのまま利用することは難しい。
【００５８】
ただし、特定の２つのカテゴリカルハイパーパラメータ値の間では、データセットが変わっても予測性能差が概ね一定範囲に収まることがある。図３の例では、カテゴリカルパラメータ値ｃ１，ｃ２それぞれの予測性能の分布自体は、データセットが変わると大きく変化する。その一方で、カテゴリカルパラメータ値ｃ１の予測性能とカテゴリカルハイパーパラメータ値ｃ２の予測性能の差は、データセットに関係なく十分小さい。予測性能の分布が近似するカテゴリカルパラメータ値の例としては、ランダムフォレストで使用する「ジニ係数」と「エントロピー」というクラス分類方法が挙げられる。
【００５９】
そこで、機械学習装置１００は、過去の機械学習の履歴から、２つのカテゴリカルハイパーパラメータ値の間の予測性能差の傾向を分析しておく。そして、機械学習装置１００は、この分析結果を利用して、あるカテゴリカルハイパーパラメータ値の予測性能から別のカテゴリカルハイパーパラメータ値の予測性能を推定する。
【００６０】
図４は、予測性能差の期待値および標準偏差の例を示すグラフである。
曲線２２ａは、カテゴリカルハイパーパラメータ値ｃ１の予測性能とカテゴリカルハイパーパラメータ値ｃ２の予測性能の差の期待値（平均値）を示している。曲線２２ｂは、カテゴリカルハイパーパラメータ値ｃ１の予測性能とカテゴリカルハイパーパラメータ値ｃ２の予測性能の差の標準偏差（分散度）を示している。予測性能差の期待値および標準偏差は、連続量ハイパーパラメータ値それぞれに対して算出される。ただし、連続量ハイパーパラメータ値に対する期待値および標準偏差の変化が小さい場合、連続量ハイパーパラメータ値に関係なく代表して１つの期待値および標準偏差を算出してもよい。
【００６１】
機械学習装置１００は、複数のデータセットそれぞれについて、カテゴリカルハイパーパラメータ値ｃ１の予測性能とカテゴリカルハイパーパラメータ値ｃ２の予測性能との差を算出する。機械学習装置１００は、複数のデータセットの間で予測性能差の平均値を算出することで曲線２２ａを求める。また、機械学習装置１００は、複数のデータセットの間で予測性能差の標準偏差を算出することで曲線２２ｂを求める。なお、使用するデータセットによってモデルの予測性能の変動範囲は異なる。このため、予測性能差の期待値と標準偏差を算出するにあたっては、機械学習装置１００は、データセット毎の予測性能の変動範囲（例えば、最大値と最小値）に基づいて予測性能を正規化しておく。
【００６２】
予測性能差の期待値および標準偏差を複数の連続量ハイパーパラメータ値それぞれに対して算出しておく場合、機械学習装置１００は、例えば、グリッド法またはランダム法によって複数の連続量ハイパーパラメータ値を選択する。グリッド法は、連続量ハイパーパラメータの空間の中から一定間隔毎に値を選択する方法である。ランダム法は、連続量ハイパーパラメータの空間の中からランダムに値を選択する方法である。ただし、機械学習装置１００は、グリッド法を採用することが好ましい。
【００６３】
次に、予測性能差の情報を利用したハイパーパラメータ探索について説明する。
図５は、ハイパーパラメータ探索の進行例を示す図である。
一例として、機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ１と連続量ハイパーパラメータ値ｘ１の組を用いて機械学習を行い、予測性能２３ａを算出する。予測性能２３ａは測定値であるため、不確かさを示す分散（エラーバー）をもたない。また、機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ２と連続量ハイパーパラメータ値ｘ２の組を用いて機械学習を行い、予測性能２３ｂを算出する。予測性能２３ｂは測定値であるため、不確かさを示す分散をもたない。
【００６４】
次に、機械学習装置１００は、予測性能２３ｂと予測性能差情報を用いて、カテゴリカルハイパーパラメータ値ｃ１と連続量ハイパーパラメータ値ｘ２の組の予測性能２３ｃを推定する。予測性能２３ｃは推定値であるため、不確かさを示す分散をもつ。予測性能２３ｃの期待値は、連続量ハイパーパラメータｘ２におけるカテゴリカルハイパーパラメータ値ｃ１から見た予測性能差を、予測性能２３ｂに加えたものである。予測性能２３ｃの標準偏差は、連続量ハイパーパラメータｘ２における予測性能差の標準偏差である。
【００６５】
すると、機械学習装置１００は、予測性能２３ａ，２３ｃを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ１の予測性能曲線を推定する。このとき、機械学習装置１００は、推定の不確かさに起因して予測性能が高くなる連続ハイパーパラメータ値を見逃してしまうリスクを下げるため、予測性能曲線の示す推定値がばらつく確率も算出しておく。例えば、機械学習装置１００は、回帰分析手法などにより予測性能曲線に対して９５％信頼区間を算出しておく。９５％信頼区間を算出するにあたっては、推定された予測性能である予測性能２３ｃの不確かさも考慮される。
【００６６】
また、機械学習装置１００は、予測性能２３ａと予測性能差情報を用いて、カテゴリカルハイパーパラメータ値ｃ２と連続量ハイパーパラメータ値ｘ１の組の予測性能２３ｄを推定する。予測性能２３ｄは推定値であるため、不確かさを示す分散をもつ。予測性能２３ｄの期待値は、連続量ハイパーパラメータｘ１におけるカテゴリカルハイパーパラメータ値ｃ２から見た予測性能差を、予測性能２３ａに加えたものである。予測性能２３ｄの標準偏差は、連続量ハイパーパラメータｘ１における予測性能差の標準偏差である。
【００６７】
すると、機械学習装置１００は、予測性能２３ｂ，２３ｄを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線を推定する。このとき、機械学習装置１００は、予測性能曲線の示す推定値がばらつく確率も算出しておく。
【００６８】
機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ１の予測性能曲線とカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線に基づいて、予測性能が高い可能性があるカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を選択する。例えば、機械学習装置１００は、算出した９５％信頼区間の上限値（ＵＣＢ：Upper Confidence Bound）が最も高いカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を選択する。ここでは、機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ２と連続量ハイパーパラメータ値ｘ３の組を選択する。
【００６９】
次に、機械学習装置１００は、選択したカテゴリカルハイパーパラメータ値ｃ２と連続量ハイパーパラメータ値ｘ３の組を用いて機械学習を行い、予測性能２３ｅを算出する。予測性能２３ｅは測定値であるため、不確かさを示す分散をもたない。すると、機械学習装置１００は、予測性能２３ｂ，２３ｄ，２３ｅを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線を更新する。
【００７０】
図６は、ハイパーパラメータ探索の進行例を示す図（続き）である。
機械学習装置１００は、前述の予測性能２３ｅと予測性能差情報を用いて、カテゴリカルハイパーパラメータ値ｃ１と連続量ハイパーパラメータ値ｘ３の組の予測性能２３ｆを推定する。予測性能２３ｆは推定値であるため、不確かさを示す分散をもつ。予測性能２３ｆの期待値は、連続量ハイパーパラメータｘ３におけるカテゴリカルハイパーパラメータ値ｃ１から見た予測性能差を、予測性能２３ｅに加えたものである。予測性能２３ｆの標準偏差は、連続量ハイパーパラメータｘ３における予測性能差の標準偏差である。機械学習装置１００は、予測性能２３ａ，２３ｃ，２３ｆを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ１の予測性能曲線を更新する。
【００７１】
次に、機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ１の予測性能曲線とカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線に基づいて、予測性能が高い可能性があるカテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を選択する。ここでは、機械学習装置１００は、カテゴリカルハイパーパラメータ値ｃ１と連続量ハイパーパラメータ値ｘ４の組を選択する。
【００７２】
機械学習装置１００は、選択したカテゴリカルハイパーパラメータ値ｃ１と連続量ハイパーパラメータ値ｘ４の組を用いて機械学習を行い、予測性能２３ｇを算出する。予測性能２３ｇは測定値であるため、不確かさを示す分散をもたない。機械学習装置１００は、予測性能２３ａ，２３ｃ，２３ｆ，２３ｇを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ１の予測性能曲線を更新する。
【００７３】
次に、機械学習装置１００は、予測性能２３ｇと予測性能差情報を用いて、カテゴリカルハイパーパラメータ値ｃ２と連続量ハイパーパラメータ値ｘ４の組の予測性能２３ｈを推定する。予測性能２３ｈは推定値であるため、不確かさを示す分散をもつ。予測性能２３ｈの期待値は、連続量ハイパーパラメータｘ４におけるカテゴリカルハイパーパラメータ値ｃ２から見た予測性能差を、予測性能２３ｇに加えたものである。予測性能２３ｈの標準偏差は、連続量ハイパーパラメータｘ４における予測性能差の標準偏差である。機械学習装置１００は、予測性能２３ｂ，２３ｄ，２３ｅ，２３ｈを用いて、回帰分析手法などによりカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線を更新する。
【００７４】
このように、１回のモデル生成および予測性能の測定によって、カテゴリカルハイパーパラメータ値ｃ１の予測性能曲線とカテゴリカルハイパーパラメータ値ｃ２の予測性能曲線の両方が更新される。これを繰り返すことで予測性能の推定精度が向上し、予測性能が最大になるハイパーパラメータ値に近づくことができる。
【００７５】
図７は、共有度と推定予測性能との関係例を示す図である。
ここでは、カテゴリカルハイパーパラメータ値ｃ２の試行結果に基づいてカテゴリカルハイパーパラメータ値ｃ１の予測性能曲線が更新されることに着目する。カテゴリカルハイパーパラメータ値ｃ１の予測性能曲線の９５％信頼区間の広さは、カテゴリカルハイパーパラメータ値ｃ１，ｃ２の間の共有度（予測性能の類似度）に依存する。共有度は、予測性能差の標準偏差に反比例していると言える。
【００７６】
共有度が強い（類似度が高い）とき、連続量ハイパーパラメータ値ｘ３に対して予測性能２４ａが推定され、連続量ハイパーパラメータ値ｘ２に対して予測性能２４ｂが推定される。予測性能２４ａ，２４ｂの分散は比較的狭い。一方、共有度が弱い（類似度が低い）とき、連続量ハイパーパラメータ値ｘ３に対して予測性能２４ｃが推定され、連続量ハイパーパラメータ値ｘ２に対して予測性能２４ｄが推定される。予測性能２４ｃ，２４ｄの分散は予測性能２４ａ，２４ｂと比べて広い。
【００７７】
よって、共有度が強いときは予測性能曲線の推定の不確かさが小さいとみなされる。一方、共有度が弱いときは予測性能曲線の推定の不確かさが大きいとみなされ、予測性能が予想外に高くなる可能性が表現される。このように、予測性能差の標準偏差に応じて、カテゴリカルハイパーパラメータ値ｃ１，ｃ２の間で機械学習の試行結果を共有して予測性能曲線を連動させる強度が自動的に調整されることになる。
【００７８】
なお、カテゴリカルハイパーパラメータ値ｃ１，ｃ２の間で機械学習の試行結果を単純に共有する方法も考えられる。この方法では、カテゴリカルハイパーパラメータ値の違いによる予測性能の変化を無視することになり、推定された予測性能の分散が考慮されない。単純共有では、連続量ハイパーパラメータ値ｘ３に対して予測性能２４ｅが推定され、連続量ハイパーパラメータ値ｘ２に対して予測性能２４ｆが推定される。予測性能２４ｅ，２４ｆの分散は０であるとみなされる。よって、単純共有では予測性能曲線の推定の不確かさが過小評価されてしまい、予測性能が予想外に高くなる可能性が表現されない。
【００７９】
また、カテゴリカルハイパーパラメータ値ｃ１，ｃ２の間で機械学習の試行結果を共有しない方法も考えられる。この方法では、異なるカテゴリカルハイパーパラメータ値の間では予測性能に全く関連性がないと仮定することになり、他のカテゴリカルハイパーパラメータ値の試行によって得られた情報が利用されない。無共有では、連続量ハイパーパラメータ値ｘ２，ｘ３に対して何ら情報がないとみなして予測性能曲線が推定される。よって、無共有では予測性能曲線の推定の不確かさが過大評価されてしまい、予測性能がばらつく可能性を早期に絞り込むことが難しい。
【００８０】
次に、機械学習装置１００の処理について説明する。
図８は、機械学習装置の機能例を示すブロック図である。
機械学習装置１００は、サンプル履歴記憶部１２１、統計情報記憶部１２２、データセット記憶部１２３および学習結果記憶部１２４を有する。また、機械学習装置１００は、サンプル履歴分析部１３１、制限時間入力部１３２、学習制御部１３３、学習実行部１３４および予測性能推定部１３５を有する。サンプル履歴記憶部１２１、統計情報記憶部１２２、データセット記憶部１２３および学習結果記憶部１２４は、例えば、ＲＡＭ１０２またはＨＤＤ１０３の記憶領域を用いて実装される。サンプル履歴分析部１３１、制限時間入力部１３２、学習制御部１３３、学習実行部１３４および予測性能推定部１３５は、例えば、ＣＰＵ１０１が実行するプログラムを用いて実装される。
【００８１】
サンプル履歴記憶部１２１は、過去に様々なデータセットに対して実行された機械学習の結果を示すサンプル履歴を記憶する。サンプル履歴を生成するための機械学習は、機械学習装置１００によって実行されてもよいし他の装置によって実行されてもよい。サンプル履歴は、ユーザからの要求に応じて実行された運用上の機械学習で生成されたものでもよいし、サンプル履歴生成のために実行された試験的な機械学習で生成されたものでもよい。ただし、ハイパーパラメータ値の網羅性の観点から、試験的な機械学習によってサンプル履歴を生成しておくことが好ましい。サンプル履歴は、１回のモデル生成毎にデータセットＩＤとハイパーパラメータ値と予測性能と実行時間とを含む。
【００８２】
統計情報記憶部１２２は、サンプル履歴から生成された統計情報を記憶する。統計情報は、２つのカテゴリカルハイパーパラメータ値と１つの連続量ハイパーパラメータ値の組み合わせ毎に、予測性能差の期待値と予測性能差の標準偏差とを含む。また、統計情報は、２つのカテゴリカルハイパーパラメータ値と１つの連続量ハイパーパラメータ値の組み合わせ毎に、実行時間差の期待値と実行時間差の標準偏差とを含む。実行時間差は、前述の予測性能差と同様の考え方に基づいて算出されるものである。ただし、後述するように第２の実施の形態では、機械学習の制御に実行時間は参照されないため、統計情報は実行時間差の期待値と実行時間差の標準偏差とを含まなくてもよい。
【００８３】
データセット記憶部１２３は、今回の機械学習に用いるデータセット（インスタンスの集合）を記憶する。データセット記憶部１２３に記憶されるデータセットは、サンプル履歴を生成するために過去に使用されたデータセットとは異なる。
【００８４】
学習結果記憶部１２４は、データセット記憶部１２３に記憶されたデータセットに対する機械学習の学習結果を記憶する。学習結果は、予測性能が最も高かったモデルと、そのモデルの生成に使用したハイパーパラメータ値と、そのモデルの予測性能とを含む。
【００８５】
サンプル履歴分析部１３１は、サンプル履歴記憶部１２１に記憶されたサンプル履歴を分析し、統計情報を生成して統計情報記憶部１２２に保存する。サンプル履歴分析部１３１は、ユーザからの要求に応じて統計情報を生成してもよいし、一定時間毎に統計情報を生成するなど継続的に統計情報を更新してもよい。
【００８６】
サンプル履歴分析部１３１は、２つのカテゴリカルハイパーパラメータ値と１つの連続量ハイパーパラメータ値の組み合わせ毎に、各データセットにおける予測性能差を算出し、複数のデータセットの間でその期待値と標準偏差とを算出する。また、サンプル履歴分析部１３１は、２つのカテゴリカルハイパーパラメータ値と１つの連続量ハイパーパラメータ値の組み合わせ毎に、各データセットにおける実行時間差を算出し、複数のデータセットの間でその期待値と標準偏差とを算出する。ただし、第２の実施の形態ではサンプル履歴分析部１３１は、実行時間差については算出しなくてもよい。
【００８７】
制限時間入力部１３２は、データセット記憶部１２３に記憶されたデータセットに対する機械学習を開始してからの経過時間の閾値として、制限時間を学習制御部１３３に対して入力する。制限時間の範囲内で、できる限り予測性能の高いモデルが生成されることになる。ハイパーパラメータ探索の性質上、制限時間が長い方がモデルの予測性能が高くなることが多い。制限時間は、例えば、今回のデータセットに対する機械学習の開始前に、ユーザによって入力デバイス１１２から入力される。
【００８８】
学習制御部１３３は、今回のデータセットに対する機械学習を制御する。学習制御部１３３は、ハイパーパラメータ値、すなわち、カテゴリカルハイパーパラメータ値と連続量ハイパーパラメータ値の組を１つ選択し、選択したハイパーパラメータ値を学習実行部１３４に通知して機械学習を実行させる。学習制御部１３３は、当該ハイパーパラメータ値を使用した機械学習が終了すると、他のハイパーパラメータ値を使用した場合の予測性能を予測性能推定部１３５に推定させる。学習制御部１３３は、現在までに達成された最大の予測性能（達成予測性能）を超える予測性能が得られる可能性のある他のハイパーパラメータ値を次に選択する。学習制御部１３３は、以上の処理を経過時間が制限時間に到達するまで繰り返し、学習結果を学習結果記憶部１２４に保存する。
【００８９】
学習実行部１３４は、学習制御部１３３から指定されたハイパーパラメータ値を使用した機械学習を実行する。学習実行部１３４が使用する機械学習アルゴリズムは、カテゴリカルハイパーパラメータ値の中で指定されることがある。機械学習アルゴリズムが指定されなかった場合、学習実行部１３４は所定の機械学習アルゴリズムを使用してもよい。
【００９０】
学習実行部１３４は、データセット記憶部１２３に記憶されたデータセットの中から一部のインスタンスを訓練データとして抽出し、他の一部のインスタンスをテストデータとして抽出する。学習実行部１３４は、抽出した訓練データと指定されたハイパーパラメータ値を用いて機械学習を実行してモデルを生成する。学習実行部１３４は、生成したモデルと抽出したテストデータを用いてバリデーションを行い、モデルの予測性能を測定する。また、学習実行部１３４は、指定されたハイパーパラメータ値を用いた機械学習を開始してから終了するまでの実行時間を測定する。学習実行部１３４は、生成したモデルと測定した予測性能と測定した実行時間とを学習制御部１３３に出力する。ただし、第２の実施の形態では学習実行部１３４は、実行時間を測定しなくてもよい。
【００９１】
予測性能推定部１３５は、今回のデータセットに対するハイパーパラメータ探索の履歴（探索履歴）に基づいて、カテゴリカルハイパーパラメータ値毎に予測性能曲線を推定し、カテゴリカルハイパーパラメータ値毎に予測性能改善量を算出する。予測性能改善量は、予測性能の推定値と現在の達成予測性能との差であり、次に特定のハイパーパラメータ値を選択した場合に期待される達成予測性能の上昇の程度を示す指標である。予測性能推定部１３５は、算出した予測性能改善量を学習制御部１３３に通知する。学習制御部１３３では、予測性能改善量が最大になるハイパーパラメータ値が次に選択される。なお、第２の実施の形態では予測性能改善量がハイパーパラメータ探索の指標として使用されるため、予測性能推定部１３５では実行時間に関する計算は行われない。
【００９２】
図９は、サンプル履歴テーブルの例を示す図である。
サンプル履歴テーブル１４１は、サンプル履歴記憶部１２１に記憶される。サンプル履歴テーブル１４１は、複数回のモデル生成の履歴を示す。サンプル履歴テーブル１４１は、データセットＩＤ、カテゴリカルハイパーパラメータ値（カテゴリカルＨＰ値）、連続量ハイパーパラメータ値（連続量ＨＰ値）、予測性能および実行時間の項目を有する。
【００９３】
データセットＩＤの項目には、モデル生成に使用したデータセットの識別子が登録される。カテゴリカルハイパーパラメータ値の項目には、モデル生成に使用したカテゴリカルハイパーパラメータ値が登録される。連続量ハイパーパラメータ値の項目には、モデル生成に使用した連続量ハイパーパラメータ値が登録される。予測性能の項目には、測定された予測性能が登録される。実行時間の項目には、モデル生成に要した時間が登録される。
【００９４】
サンプル履歴テーブル１４１は、カテゴリカルハイパーパラメータ値および連続量ハイパーパラメータ値が同一でデータセットが異なる複数のレコードを含む。また、サンプル履歴テーブル１４１は、データセットＩＤおよび連続量ハイパーパラメータ値が同一でカテゴリカルハイパーパラメータ値が異なる複数のレコードを含む。また、サンプル履歴テーブル１４１は、データセットＩＤおよびカテゴリカルハイパーパラメータ値が同一で連続量ハイパーパラメータ値が異なる複数のレコードを含む。
【００９５】
予測性能推定部１３５は、今回のデータセットに対する探索履歴としてサンプル履歴テーブル１４１と同様のテーブルを保持する。ただし、探索履歴はデータセットＩＤを含まなくてよい。よって、探索履歴は、カテゴリカルハイパーパラメータ値、連続量ハイパーパラメータ値、予測性能および実行時間をそれぞれ含む１以上のレコードを有する。なお、第２の実施の形態では探索履歴は実行時間を含まなくてもよい。
【００９６】
図１０は、統計テーブルの例を示す図である。
統計テーブル１４２は、統計情報記憶部１２２に記憶される。統計テーブル１４２は、カテゴリカルハイパーパラメータ値、連続量ハイパーパラメータ値、予測性能期待値、予測性能標準偏差、実行時間期待値および実行時間標準偏差の項目を有する。
【００９７】
カテゴリカルハイパーパラメータ値の項目には、異なる２つのカテゴリカルハイパーパラメータ値の組（ｃｉ，ｃｊ）が登録される。ここでは、２つの値の順序も区別される。よって、（ｃ１，ｃ２）と（ｃ２，ｃ１）は別の組として認識される。連続量ハイパーパラメータ値の項目には、１つの連続量ハイパーパラメータ値が登録される。
【００９８】
予測性能期待値の項目には、カテゴリカルハイパーパラメータ値ｃｉから見たカテゴリカルハイパーパラメータ値ｃｊとの間の予測性能差の期待値（平均値）が登録される。（ｃｉ，ｃｊ）の予測性能差は、カテゴリカルハイパーパラメータ値ｃｉの予測性能からカテゴリカルハイパーパラメータ値ｃｊの予測性能を引いたものに相当する。ただし、前述のように予測性能差は正規化されている。予測性能標準偏差の項目には、カテゴリカルハイパーパラメータ値ｃｉ，ｃｊの間の予測性能差の標準偏差が登録される。ただし、予測性能差のばらつきを示す指標として分散などの他の指標を用いることもできる。
【００９９】
実行時間期待値の項目には、カテゴリカルハイパーパラメータ値ｃｉから見たカテゴリカルハイパーパラメータ値ｃｊとの間の実行時間差の期待値（平均値）が登録される。（ｃｉ，ｃｊ）の実行時間差は、カテゴリカルハイパーパラメータ値ｃｉの実行時間からカテゴリカルハイパーパラメータ値ｃｊの実行時間を引いたものに相当する。ただし、実行時間差は正規化されている。実行時間標準偏差の項目には、カテゴリカルハイパーパラメータ値ｃｉ，ｃｊの間の実行時間差の標準偏差が登録される。ただし、実行時間差のばらつきを示す指標として分散などの他の指標を用いることもできる。
【０１００】
図１１は、統計情報生成の手順例を示すフローチャートである。
（Ｓ１０）サンプル履歴分析部１３１は、サンプル履歴テーブル１４１の中から１つのデータセットＩＤ（データセットＤｄのデータセットＩＤ）を選択し、選択したデータセットＩＤを含むレコードをサンプル履歴テーブル１４１から抽出する。
【０１０１】
（Ｓ１１）サンプル履歴分析部１３１は、ステップＳ１０で抽出したレコードから予測性能の最大値ｐｍａｘ＝ｍａｘｃ，ｘ（ｆ（ｘ；Ｄｄ，ｃ））と予測性能の最小値ｐｍｉｎ＝ｍｉｎｃ，ｘ（ｆ（ｘ；Ｄｄ，ｃ））を検索する。ｆ（ｘ；Ｄ，ｃ）は、カテゴリカルハイパーパラメータｃと連続量ハイパーパラメータｘとデータセットＤから特定される予測性能を表す。サンプル履歴分析部１３１は、検索した最大値ｐｍａｘと最小値ｐｍｉｎに基づいて、予測性能の正規化関数ｈｐ（）を決定する。例えば、ｈｐ（ｆ（ｘ；Ｄｄ，ｃ））＝（ｆ（ｘ；Ｄｄ，ｃ）−ｐｍｉｎ）／（ｐｍａｘ−ｐｍｉｎ）と決定する。なお、正規化関数を、予測性能の平均と標準偏差を用いて定義することもできる。また、予測性能の中央値と四分位範囲を用いて定義することもできる。また、予測性能の中央値と中央絶対偏差（ＭＡＤ：Median Absolute Deviation）を用いて定義することもできる。
【０１０２】
（Ｓ１２）サンプル履歴分析部１３１は、ステップＳ１０で抽出したレコードに含まれる各予測性能を、ステップＳ１１で決定した正規化関数ｈｐ（）を用いて正規化する。
（Ｓ１３）サンプル履歴分析部１３１は、ステップＳ１０で抽出したレコードから実行時間の最大値ｔｍａｘ＝ｍａｘｃ，ｘ（ｔ（ｘ；Ｄｄ，ｃ））と実行時間の最小値ｔｍｉｎ＝ｍｉｎｃ，ｘ（ｔ（ｘ；Ｄｄ，ｃ））を検索する。ｔ（ｘ；Ｄ，ｃ）は、カテゴリカルハイパーパラメータｃと連続量ハイパーパラメータｘとデータセットＤから特定される実行時間を表す。サンプル履歴分析部１３１は、検索した最大値ｔｍａｘと最小値ｔｍｉｎに基づいて、実行時間の正規化関数ｈｔ（）を決定する。例えば、ｈｔ（ｔ（ｘ；Ｄｄ，ｃ））＝（ｔ（ｘ；Ｄｄ，ｃ）−ｔｍｉｎ）／（ｔｍａｘ−ｔｍｉｎ）と決定する。なお、正規化関数を、実行時間の平均と標準偏差を用いて定義することもできる。また、実行時間の中央値と四分位範囲を用いて定義することもできる。また、実行時間の中央値と中央絶対偏差を用いて定義することもできる。
【０１０３】
（Ｓ１４）サンプル履歴分析部１３１は、ステップＳ１０で抽出したレコードに含まれる各実行時間を、ステップＳ１３で決定した正規化関数ｈｔ（）を用いて正規化する。なお、第２の実施の形態ではステップＳ１３，Ｓ１４を省略してもよい。
【０１０４】
（Ｓ１５）サンプル履歴分析部１３１は、ステップＳ１０で全てのデータセットＩＤを選択したか判断する。全てのデータセットＩＤを選択した場合はステップＳ１６に処理が進み、未選択のデータセットＩＤがある場合はステップＳ１０に処理が進む。
【０１０５】
図１２は、統計情報生成の手順例を示すフローチャート（続き）である。
（Ｓ１６）サンプル履歴分析部１３１は、１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｉ）を選択する。
【０１０６】
（Ｓ１７）サンプル履歴分析部１３１は、ステップＳ１６と異なる他の１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｊ）を選択する。
（Ｓ１８）サンプル履歴分析部１３１は、サンプル履歴テーブル１４１に現れる１つの連続量ハイパーパラメータ値（連続量ハイパーパラメータ値ｘｋ）を選択する。
【０１０７】
（Ｓ１９）サンプル履歴分析部１３１は、ステップＳ１２で正規化した予測性能（正規化予測性能）のうち、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｋの組に対応する正規化予測性能を抽出する。また、サンプル履歴分析部１３１は、カテゴリカルハイパーパラメータ値ｃｊと連続量ハイパーパラメータ値ｘｋの組に対応する正規化予測性能を抽出する。サンプル履歴分析部１３１は、データセットＩＤ毎に２つの正規化予測性能の差（正規化予測性能差）を算出し、正規化予測性能差の期待値ｐμｉｊ（ｘｋ）を算出する。ｐμｉｊ（ｘｋ）＝ＥＤ［ｈｐ（ｆ（ｘｋ；Ｄ，ｃｉ））−ｈｐ（ｆ（ｘｋ；Ｄ，ｃｊ））］と算出される。そして、サンプル履歴分析部１３１は、（ｃｉ，ｃｊ），ｘｋの組に対応付けて期待値ｐμｉｊ（ｘｋ）を統計テーブル１４２に登録する。
【０１０８】
（Ｓ２０）サンプル履歴分析部１３１は、正規化予測性能差の標準偏差ｐσｉｊ（ｘｋ）を算出する。ｐσｉｊ（ｘｋ）＝ＳＤＤ［ｈｐ（ｆ（ｘｋ；Ｄ，ｃｉ））−ｈｐ（ｆ（ｘｋ；Ｄ，ｃｊ））］と算出される。そして、サンプル履歴分析部１３１は、（ｃｉ，ｃｊ），ｘｋの組に対応付けて標準偏差ｐσｉｊ（ｘｋ）を統計テーブル１４２に登録する。
【０１０９】
（Ｓ２１）サンプル履歴分析部１３１は、ステップＳ１４で正規化した実行時間（正規化実行時間）のうち、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｋの組に対応する正規化実行時間を抽出する。また、サンプル履歴分析部１３１は、カテゴリカルハイパーパラメータ値ｃｊと連続量ハイパーパラメータ値ｘｋの組に対応する正規化実行時間を抽出する。サンプル履歴分析部１３１は、データセットＩＤ毎に２つの正規化実行時間の差（正規化実行時間差）を算出し、正規化実行時間差の期待値ｔμｉｊ（ｘｋ）を算出する。ｔμｉｊ（ｘｋ）＝ＥＤ［ｈｔ（ｔ（ｘｋ；Ｄ，ｃｉ））−ｈｔ（ｔ（ｘｋ；Ｄ，ｃｊ））］と算出される。そして、サンプル履歴分析部１３１は、（ｃｉ，ｃｊ），ｘｋの組に対応付けて期待値ｔμｉｊ（ｘｋ）を統計テーブル１４２に登録する。
【０１１０】
（Ｓ２２）サンプル履歴分析部１３１は、正規化実行時間差の標準偏差ｔσｉｊ（ｘｋ）を算出する。ｔσｉｊ（ｘｋ）＝ＳＤＤ［ｈｔ（ｆ（ｘｋ；Ｄ，ｃｉ））−ｈｔ（ｆ（ｘｋ；Ｄ，ｃｊ））］と算出される。そして、サンプル履歴分析部１３１は、（ｃｉ，ｃｊ），ｘｋの組に対応付けて標準偏差ｔσｉｊ（ｘｋ）を統計テーブル１４２に登録する。なお、第２の実施の形態ではステップＳ２１，Ｓ２２を省略してもよい。
【０１１１】
（Ｓ２３）サンプル履歴分析部１３１は、ステップＳ１８でサンプル履歴テーブル１４１に現れる全ての連続量ハイパーパラメータ値を選択したか判断する。全ての連続量ハイパーパラメータ値を選択した場合はステップＳ２４に処理が進み、未選択の連続量ハイパーパラメータ値が存在する場合はステップＳ１８に処理が進む。
【０１１２】
（Ｓ２４）サンプル履歴分析部１３１は、ステップＳ１７で全ての他のカテゴリカルハイパーパラメータ値を選択したか判断する。全ての他のカテゴリカルハイパーパラメータ値を選択した場合はステップＳ２５に処理が進み、未選択の他のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ１７に処理が進む。
【０１１３】
（Ｓ２５）サンプル履歴分析部１３１は、ステップＳ１６で全てのカテゴリカルハイパーパラメータ値を選択したか判断する。全てのカテゴリカルハイパーパラメータ値を選択した場合は統計情報生成が終了し、未選択のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ１６に処理が進む。
【０１１４】
図１３は、第２の実施の形態の機械学習の手順例を示すフローチャートである。
（Ｓ３０）学習制御部１３３は、データセットＤ、制限時間Ｔおよびハイパーパラメータ探索範囲Θを特定する。ハイパーパラメータ探索範囲Θは、カテゴリカルハイパーパラメータ探索範囲Ｃと連続量ハイパーパラメータ探索範囲Ｘとを含む。
【０１１５】
（Ｓ３１）予測性能推定部１３５は、探索履歴Ｓを空集合φに初期化する。
（Ｓ３２）予測性能推定部１３５は、探索履歴Ｓを参照して、カテゴリカルハイパーパラメータ探索範囲Ｃの各カテゴリカルハイパーパラメータ値について、最大の予測性能改善量ｇ（ｘ；ｃ）を算出し、その予測性能改善量が得られる連続量ハイパーパラメータ値を特定する。予測性能改善量の推定方法については後述する。
【０１１６】
（Ｓ３３）学習制御部１３３は、ステップＳ３２で算出された複数のカテゴリカルハイパーパラメータ値に対応する複数の予測性能改善量の中から、最大の予測性能改善量を選択する。学習制御部１３３は、選択した予測性能改善量が得られるカテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉを特定する。
【０１１７】
（Ｓ３４）学習実行部１３４は、データセット記憶部１２３に記憶されたデータセットの中から訓練データとテストデータとを抽出する。学習実行部１３４は、ステップＳ３３で選択されたカテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉに基づいて機械学習を実行し、訓練データからモデルを生成する。学習実行部１３４は、テストデータを用いて、生成したモデルの予測性能ｆ（ｘｃｉ；ｃｉ）を測定する。学習制御部１３３は、モデルと予測性能ｆ（ｘｃｉ；ｃｉ）を取得する。
【０１１８】
（Ｓ３５）予測性能推定部１３５は、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉと予測性能ｆ（ｘｃｉ；ｃｉ）を取得する。予測性能推定部１３５は、探索履歴Ｓに（ｃｉ，ｘｃｉ，ｆ（ｘｃｉ；ｃｉ））というレコードを追加する。
【０１１９】
（Ｓ３６）学習制御部１３３は、ステップＳ３０の実行からの経過時間が制限時間Ｔを超えたか判断する。経過時間が制限時間Ｔを超えた場合はステップＳ３７に処理が進み、経過時間が制限時間Ｔ以下である場合はステップＳ３２に処理が進む。
【０１２０】
（Ｓ３７）学習制御部１３３は、これまでに生成されたモデルのうち予測性能が最大のモデルを学習結果記憶部１２４に保存する。また、学習制御部１３３は、そのモデルの予測性能（達成予測性能）と、そのモデルの生成に使用したカテゴリカルハイパーパラメータ値および連続量ハイパーパラメータ値とを、学習結果記憶部１２４に保存する。
【０１２１】
図１４は、性能改善量推定の手順例を示すフローチャートである。
この性能改善量推定は、上記のステップＳ３２で実行される。
（Ｓ４０）予測性能推定部１３５は、１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｉ）を選択する。
【０１２２】
（Ｓ４１）予測性能推定部１３５は、探索履歴Ｓの中から、選択したカテゴリカルハイパーパラメータ値ｃｉを含むレコードの集合である探索履歴Ｓｉを検索する。
（Ｓ４２）予測性能推定部１３５は、点集合Ｒｉを空集合φに初期化する。また、予測性能推定部１３５は、探索履歴Ｓｉに含まれる予測性能ｆ（ｘ；ｃｉ）を正規化する。ここで正規化に用いる正規化関数は、探索履歴Ｓｉの予測性能の分布に基づいて決定される。例えば、探索履歴Ｓｉの中から最大値ｐｍａｘと最小値ｐｍｉｎが検索され、正規化関数がｈｐ（ｆ（ｘ；ｃｉ））＝（ｆ（ｘ；ｃｉ）−ｐｍｉｎ）／（ｐｍａｘ−ｐｍｉｎ）と決定される。ただし、他のカテゴリカルハイパーパラメータ値のレコードも含む探索履歴Ｓの予測性能の分布に基づいて正規化関数を決定してもよい。予測性能推定部１３５は、探索履歴Ｓｉに現れる連続量ハイパーパラメータ値それぞれについて、（ｘ，ｈｐ（ｆ（ｘ；ｃｉ）），０）というレコードを点集合Ｒｉに追加する。第１項は連続量ハイパーパラメータ値を表し、第２項は正規化予測性能を表し、第３項は標準偏差を表す。
【０１２３】
（Ｓ４３）予測性能推定部１３５は、ステップＳ４０と異なる他の１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｊ）を選択する。
（Ｓ４４）予測性能推定部１３５は、探索履歴Ｓの中から、選択したカテゴリカルハイパーパラメータ値ｃｊを含むレコードの集合である探索履歴Ｓｊを検索する。
【０１２４】
（Ｓ４５）予測性能推定部１３５は、探索履歴Ｓｊに含まれる予測性能ｆ（ｘ；ｃｊ）を正規化する。ここで正規化に用いる正規化関数は、探索履歴Ｓｊの予測性能の分布に基づいて決定される。例えば、探索履歴Ｓｊの中から最大値ｐｍａｘと最小値ｐｍｉｎが検索され、正規化関数がｈｐ（ｆ（ｘ；ｃｊ））＝（ｆ（ｘ；ｃｊ）−ｐｍｉｎ）／（ｐｍａｘ−ｐｍｉｎ）と決定される。ただし、探索履歴Ｓの予測性能の分布に基づいて正規化関数を決定してもよく、ステップＳ４２と同じ正規化関数を使用してもよい。
【０１２５】
また、予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、統計テーブル１４２から（ｃｉ，ｃｊ）に対応する正規化予測性能差の期待値ｐμｉｊ（ｘ）と標準偏差ｐσｉｊ（ｘ）を検索する。このとき、統計テーブル１４２の中には、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値と完全に一致するレコードが存在しない場合もある。その場合、例えば、所望の連続量ハイパーパラメータ値に最も近いレコードを使用する方法が考えられる。また、所望の連続量ハイパーパラメータ値の前後のレコードから線形補間により、所望の連続量ハイパーパラメータ値のｐμｉｊ（ｘ），ｐσｉｊ（ｘ）を推定する方法も考えられる。
【０１２６】
（Ｓ４６）予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、（ｘ，ｈｐ（ｆ（ｘ；ｃｊ））＋ｐμｉｊ（ｘ），ｐσｉｊ（ｘ））というレコードを点集合Ｒｉに追加する。第２項の正規化予測性能は、カテゴリカルハイパーパラメータ値ｃｊの正規化予測性能に正規化予測性能差の期待値を加えたものである。第３項の標準偏差は、正規化予測性能差の標準偏差である。
【０１２７】
（Ｓ４７）予測性能推定部１３５は、ステップＳ４３で全ての他のカテゴリカルハイパーパラメータ値を選択したか判断する。全ての他のカテゴリカルハイパーパラメータ値を選択した場合はステップＳ４８に処理が進み、未選択の他のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ４３に処理が進む。
【０１２８】
図１５は、性能改善量推定の手順例を示すフローチャート（続き）である。
（Ｓ４８）予測性能推定部１３５は、連続量ハイパーパラメータ探索範囲Ｘの中から連続量ハイパーパラメータ値を１つサンプリングする（連続量ハイパーパラメータ値ｘｋ）。好ましくは、探索履歴Ｓｉに現れていない連続量ハイパーパラメータ値を選択する。サンプリングは、グリッド法やランダム法などによって行う。
【０１２９】
（Ｓ４９）予測性能推定部１３５は、点集合Ｒｉが示す複数の点に基づいて、ステップＳ４８で選択した連続量ハイパーパラメータ値ｘｋに対する正規化予測性能ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値と標準偏差を推定する。点集合Ｒｉの中に０でない標準偏差が与えられた点、すなわち、推定された点が存在しない場合、ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値および標準偏差は通常の回帰分析によって算出することが可能である。一方、点集合Ｒｉの中に０でない標準偏差が与えられた点が存在する場合、この点の推定の不確かさを考慮してｈｐ（ｆ（ｘｋ；ｃｉ））の期待値および標準偏差が算出される。推定された点が存在すると、ｈｐ（ｆ（ｘｋ；ｃｉ））の標準偏差は大きくなることが多い。
【０１３０】
例えば、予測性能推定部１３５は、０でない標準偏差をもつ正規化予測性能の分布の中からサンプル値を抽出し、抽出したサンプル値を用いて回帰分析を行う。予測性能推定部１３５は、これをモンテカルロシミュレーションとして多数回繰り返し、回帰分析結果を平均化することで、ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値および標準偏差を求める。また、例えば、予測性能推定部１３５は、ガウス過程を用いた推定方法により、数式的にｈｐ（ｆ（ｘｋ；ｃｉ））の期待値および標準偏差を求める。ガウス過程を用いた推定方法については、例えば、次の文献に記載されている。P.W.Goldberg, C.K.I. Williams and C.M.Bishop, "Regression with Input-dependent Noise: A Gaussian Process Treatment", In Advances in Neural Information Processing 11 (NIPS 1997), 1997。
【０１３１】
（Ｓ５０）予測性能推定部１３５は、ステップＳ４９で推定したｈｐ（ｆ（ｘｋ；ｃｉ））の期待値と標準偏差に基づいて、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｋの組に対する予測性能改善量ｇ（ｘｋ；ｃｉ）を算出する。例えば、予測性能推定部１３５は、ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値と標準偏差から、９５％信頼区間の上限値（ＵＣＢ）を算出し、ＵＣＢから現在の達成予測性能を引いた値を予測性能改善量ｇ（ｘｋ；ｃｉ）とする。このとき、達成予測性能についても正規化しておく。ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値より大きい値を用いて予測性能改善量を算出しているのは、推定の不確かさにより、高い予測性能を達成し得るハイパーパラメータ値を誤って切り捨ててしまうことを回避するためである。
【０１３２】
なお、予測性能推定部１３５は、ＵＣＢに代えて、推定される予測性能の分布を積分して、予測性能が達成予測性能を超える確率（ＰＩ：Probability of Improvement）を算出してもよい。また、推定される予測性能の分布を積分して、予測性能が達成予測性能を超える期待値（ＥＩ：Expected Improvement）を算出してもよい。
【０１３３】
（Ｓ５１）予測性能推定部１３５は、ステップＳ４８において十分な数の連続量ハイパーパラメータ値をサンプリングしたか、すなわち、サンプリングした連続量ハイパーパラメータ値の数が所定の閾値に達したか判断する。サンプリングした連続量ハイパーパラメータ値の数が十分である場合はステップＳ５２に処理が進み、連続量ハイパーパラメータ値の数が不十分である場合はステップＳ４８に処理が進む。
【０１３４】
（Ｓ５２）予測性能推定部１３５は、ステップＳ５０で算出された複数の予測性能改善量のうち、最大の予測性能改善量を選択する。この予測性能改善量が、カテゴリカルハイパーパラメータｃｉについての予測性能改善量になる。また、予測性能推定部１３５は、この予測性能改善量が得られる連続ハイパーパラメータ値を選択する。
【０１３５】
（Ｓ５３）予測性能推定部１３５は、ステップＳ４０で全てのカテゴリカルハイパーパラメータ値を選択したか判断する。全てのカテゴリカルハイパーパラメータ値を選択した場合は性能改善量推定が終了し、未選択のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ４０に処理が進む。
【０１３６】
第２の実施の形態の機械学習装置１００によれば、過去の機械学習の履歴から、異なるカテゴリカルハイパーパラメータ値の間の予測性能差の情報が生成される。そして、新たなデータセットに対して機械学習を行うとき、予測性能差の情報に基づいて、異なるカテゴリカルハイパーパラメータ値の間でハイパーパラメータ探索の試行結果が相互に変換されて共有される。これにより、ハイパーパラメータ探索が効率化される。
【０１３７】
例えば、個々のカテゴリカルハイパーパラメータ値について独立にハイパーパラメータ探索を行う場合と比べて、推定される予測性能曲線の不確かさを早期に低減することができ、制限時間内に予測性能が十分高いハイパーパラメータ値に到達することが容易となる。また、異なるカテゴリカルハイパーパラメータ値の間で生じる予測性能差を考慮せずに試行結果を単純共有する場合と比べて、予測性能曲線の推定精度が向上する。また、予測性能差の標準偏差を利用することで、予測性能曲線の推定の不確かさを適切に反映させることができ、予測性能が高くなるハイパーパラメータ値を見逃すリスクを低減できる。
【０１３８】
［第３の実施の形態］
次に、第３の実施の形態を説明する。第２の実施の形態との違いを中心に説明し、第２の実施の形態と同様の事項については説明を省略することがある。
【０１３９】
第２の実施の形態の機械学習では、ハイパーパラメータ値の評価基準として予測性能改善量を使用したのに対し、第３の実施の形態の機械学習では、ハイパーパラメータ値の評価基準として予測性能改善速度を使用する。予測性能改善速度は、単位時間当たりの予測性能改善量であり、推定される予測性能改善量を実行時間の推定値で割ったものである。第３の実施の形態の機械学習装置は、図２，８〜１０に示した第２の実施の形態の機械学習装置１００と同様の構成によって実現できる。そこで、以下の第３の実施の形態の説明では、図２，８〜１０と同様の符号を使用することがある。
【０１４０】
図１６は、第３の実施の形態の機械学習の手順例を示すフローチャートである。
（Ｓ６０）学習制御部１３３は、データセットＤ、制限時間Ｔおよびハイパーパラメータ探索範囲Θを特定する。ハイパーパラメータ探索範囲Θは、カテゴリカルハイパーパラメータ探索範囲Ｃと連続量ハイパーパラメータ探索範囲Ｘとを含む。
【０１４１】
（Ｓ６１）予測性能推定部１３５は、探索履歴Ｓを空集合φに初期化する。
（Ｓ６２）予測性能推定部１３５は、探索履歴Ｓを参照して、カテゴリカルハイパーパラメータ探索範囲Ｃの各カテゴリカルハイパーパラメータ値について、最大の予測性能改善速度ｖ（ｘ；ｃ）を算出し、その予測性能改善速度が得られる連続量ハイパーパラメータ値を特定する。予測性能改善速度の推定方法については後述する。
【０１４２】
（Ｓ６３）学習制御部１３３は、ステップＳ６２で算出された複数のカテゴリカルハイパーパラメータ値に対応する複数の予測性能改善速度の中から、最大の予測性能改善速度を選択する。学習制御部１３３は、選択した予測性能改善速度が得られるカテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉを特定する。
【０１４３】
（Ｓ６４）学習実行部１３４は、データセット記憶部１２３に記憶されたデータセットの中から訓練データとテストデータとを抽出する。学習実行部１３４は、ステップＳ６３で選択されたカテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉに基づいて機械学習を実行し、訓練データからモデルを生成する。学習実行部１３４は、テストデータを用いて、生成したモデルの予測性能ｆ（ｘｃｉ；ｃｉ）を測定する。また、学習実行部１３４は、実行時間ｔ（ｘｃｉ；ｃｉ）を測定する。学習制御部１３３は、モデルと予測性能ｆ（ｘｃｉ；ｃｉ）と実行時間ｔ（ｘｃｉ；ｃｉ）を取得する。
【０１４４】
（Ｓ６５）予測性能推定部１３５は、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｃｉと予測性能ｆ（ｘｃｉ；ｃｉ）と実行時間ｔ（ｘｃｉ；ｃｉ）を取得する。予測性能推定部１３５は、探索履歴Ｓに（ｃｉ，ｘｃｉ，ｆ（ｘｃｉ；ｃｉ），ｔ（ｘｃｉ；ｃｉ））というレコードを追加する。
【０１４５】
（Ｓ６６）学習制御部１３３は、ステップＳ６０の実行からの経過時間が制限時間Ｔを超えたか判断する。経過時間が制限時間Ｔを超えた場合はステップＳ６７に処理が進み、経過時間が制限時間Ｔ以下である場合はステップＳ６２に処理が進む。
【０１４６】
（Ｓ６７）学習制御部１３３は、これまでに生成されたモデルのうち予測性能が最大のモデルを学習結果記憶部１２４に保存する。また、学習制御部１３３は、そのモデルの予測性能（達成予測性能）と、そのモデルの生成に使用したカテゴリカルハイパーパラメータ値および連続量ハイパーパラメータ値とを、学習結果記憶部１２４に保存する。学習制御部１３３は、そのモデルの生成に要した実行時間を更に保存してもよい。
【０１４７】
図１７は、性能改善速度推定の手順例を示すフローチャートである。
（Ｓ７０）予測性能推定部１３５は、１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｉ）を選択する。
【０１４８】
（Ｓ７１）予測性能推定部１３５は、探索履歴Ｓの中から、選択したカテゴリカルハイパーパラメータ値ｃｉを含むレコードの集合である探索履歴Ｓｉを検索する。
（Ｓ７２）予測性能推定部１３５は、点集合ｐＲｉを空集合φに初期化する。また、予測性能推定部１３５は、探索履歴Ｓｉに含まれる予測性能ｆ（ｘ；ｃｉ）を正規化する。予測性能推定部１３５は、探索履歴Ｓｉに現れる連続量ハイパーパラメータ値それぞれについて（ｘ，ｈｐ（ｆ（ｘ；ｃｉ）），０）というレコードを点集合ｐＲｉに追加する。
【０１４９】
（Ｓ７３）予測性能推定部１３５は、点集合ｔＲｉを空集合φに初期化する。また、予測性能推定部１３５は、探索履歴Ｓｉに含まれる実行時間ｔ（ｘ；ｃｉ）を正規化する。ここで正規化に用いる正規化関数は、探索履歴Ｓｉの実行時間の分布に基づいて決定される。例えば、探索履歴Ｓｉの中から最大値ｔｍａｘと最小値ｔｍｉｎが検索され、正規化関数がｈｔ（ｔ（ｘ；ｃｉ））＝（ｔ（ｘ；ｃｉ）−ｔｍｉｎ）／（ｔｍａｘ−ｔｍｉｎ）と決定される。ただし、他のカテゴリカルハイパーパラメータ値のレコードも含む探索履歴Ｓの実行時間の分布に基づいて正規化関数を決定してもよい。予測性能推定部１３５は、探索履歴Ｓｉに現れる連続量ハイパーパラメータ値それぞれについて（ｘ，ｈｔ（ｔ（ｘ；ｃｉ）），０）というレコードを点集合ｔＲｉに追加する。第１項は連続量ハイパーパラメータ値を表し、第２項は正規化実行時間を表し、第３項は標準偏差を表す。
【０１５０】
（Ｓ７４）予測性能推定部１３５は、ステップＳ７０と異なる他の１つのカテゴリカルハイパーパラメータ値（カテゴリカルハイパーパラメータ値ｃｊ）を選択する。
（Ｓ７５）予測性能推定部１３５は、探索履歴Ｓの中から、選択したカテゴリカルハイパーパラメータ値ｃｊを含むレコードの集合である探索履歴Ｓｊを検索する。
【０１５１】
（Ｓ７６）予測性能推定部１３５は、探索履歴Ｓｊに含まれる予測性能ｆ（ｘ；ｃｊ）を正規化する。また、予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、統計テーブル１４２から（ｃｉ，ｃｊ）に対応する正規化予測性能差の期待値ｐμｉｊ（ｘ）と標準偏差ｐσｉｊ（ｘ）を検索する。
【０１５２】
（Ｓ７７）予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、（ｘ，ｈｐ（ｆ（ｘ；ｃｊ））＋ｐμｉｊ（ｘ），ｐσｉｊ（ｘ））というレコードを点集合ｐＲｉに追加する。第２項の正規化予測性能は、カテゴリカルハイパーパラメータ値ｃｊの正規化予測性能に正規化予測性能差の期待値を加えたものである。第３項の標準偏差は、正規化予測性能差の標準偏差である。
【０１５３】
（Ｓ７８）予測性能推定部１３５は、探索履歴Ｓｊに含まれる実行時間ｔ（ｘ；ｃｊ）を正規化する。ここで正規化に用いる正規化関数は、探索履歴Ｓｊの実行時間の分布に基づいて決定される。例えば、探索履歴Ｓｊの中から最大値ｔｍａｘと最小値ｔｍｉｎが検索され、正規化関数がｈｔ（ｔ（ｘ；ｃｊ））＝（ｔ（ｘ；ｃｊ）−ｔｍｉｎ）／（ｔｍａｘ−ｔｍｉｎ）と決定される。ただし、探索履歴Ｓの予測性能の分布に基づいて正規化関数を決定してもよく、ステップＳ７３と同じ正規化関数を使用してもよい。
【０１５４】
また、予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、統計テーブル１４２から（ｃｉ，ｃｊ）に対応する正規化実行時間差の期待値ｔμｉｊ（ｘ）と標準偏差ｔσｉｊ（ｘ）を検索する。このとき、統計テーブル１４２の中には、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値と完全に一致するレコードが存在しない場合もある。その場合、例えば、所望の連続量ハイパーパラメータ値に最も近いレコードを使用する方法が考えられる。また、所望の連続量ハイパーパラメータ値の前後のレコードから線形補間により、所望の連続量ハイパーパラメータ値のｔμｉｊ（ｘ），ｔσｉｊ（ｘ）を推定する方法も考えられる。
【０１５５】
（Ｓ７９）予測性能推定部１３５は、探索履歴Ｓｊに現れる連続量ハイパーパラメータ値それぞれについて、（ｘ，ｈｔ（ｔ（ｘ；ｃｊ））＋ｔμｉｊ（ｘ），ｔσｉｊ（ｘ））というレコードを点集合ｔＲｉに追加する。第２項の正規化予測性能は、カテゴリカルハイパーパラメータ値ｃｊの正規化実行時間に正規化実行時間差の期待値を加えたものである。第３項の標準偏差は、正規化実行時間差の標準偏差である。
【０１５６】
（Ｓ８０）予測性能推定部１３５は、ステップＳ７４で全ての他のカテゴリカルハイパーパラメータ値を選択したか判断する。全ての他のカテゴリカルハイパーパラメータ値を選択した場合はステップＳ８１に処理が進み、未選択の他のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ７４に処理が進む。
【０１５７】
図１８は、性能改善速度推定の手順例を示すフローチャート（続き）である。
（Ｓ８１）予測性能推定部１３５は、連続量ハイパーパラメータ探索範囲Ｘの中から連続量ハイパーパラメータ値を１つサンプリングする（連続量ハイパーパラメータ値ｘｋ）。好ましくは、探索履歴Ｓｉに現れていない連続量ハイパーパラメータ値を選択する。
【０１５８】
（Ｓ８２）予測性能推定部１３５は、点集合ｐＲｉが示す複数の点に基づいて、ステップＳ８１で選択した連続量ハイパーパラメータ値ｘｋに対する正規化予測性能ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値と標準偏差を推定する。
【０１５９】
（Ｓ８３）予測性能推定部１３５は、ステップＳ８２で推定したｈｐ（ｆ（ｘｋ；ｃｉ））の期待値と標準偏差に基づいて、カテゴリカルハイパーパラメータ値ｃｉと連続量ハイパーパラメータ値ｘｋの組に対する予測性能改善量ｇ（ｘｋ；ｃｉ）を算出する。
【０１６０】
（Ｓ８４）予測性能推定部１３５は、点集合ｔＲｉが示す複数の点に基づいて、ステップＳ８１で選択した連続量ハイパーパラメータ値ｘｋに対する正規化実行時間ｈｔ（ｔ（ｘｋ；ｃｉ））の期待値を推定する。正規化実行時間ｈｔ（ｔ（ｘｋ；ｃｉ））の期待値の推定は、ステップＳ８２の正規化予測性能ｈｐ（ｆ（ｘｋ；ｃｉ））の期待値の推定と同様の方法で行うことができる。ただし、正規化実行時間ｈｔ（ｔ（ｘｋ；ｃｉ））の期待値の推定では、推定された点の不確かさ（標準偏差）を考慮しなくてもよい。
【０１６１】
（Ｓ８５）予測性能推定部１３５は、ステップＳ８３で算出した予測性能改善量ｇ（ｘｋ；ｃｉ）を、ステップＳ８４で算出した正規化実行時間の期待値で割ることで、予測性能改善速度ｖ（ｘｋ；ｃｉ）を算出する。
【０１６２】
（Ｓ８６）予測性能推定部１３５は、ステップＳ８１において十分な数の連続量ハイパーパラメータ値をサンプリングしたか、すなわち、サンプリングした連続量ハイパーパラメータ値の数が所定の閾値に達したか判断する。サンプリングした連続量ハイパーパラメータ値の数が十分である場合はステップＳ８７に処理が進み、連続量ハイパーパラメータ値の数が不十分である場合はステップＳ８１に処理が進む。
【０１６３】
（Ｓ８７）予測性能推定部１３５は、ステップＳ８５で算出された複数の予測性能改善速度のうち、最大の予測性能改善速度を選択する。この予測性能改善速度が、カテゴリカルハイパーパラメータｃｉについての予測性能改善速度になる。また、予測性能推定部１３５は、この予測性能改善速度が得られる連続ハイパーパラメータ値を選択する。
【０１６４】
（Ｓ８８）予測性能推定部１３５は、ステップＳ７０で全てのカテゴリカルハイパーパラメータ値を選択したか判断する。全てのカテゴリカルハイパーパラメータ値を選択した場合は性能改善量推定が終了し、未選択のカテゴリカルハイパーパラメータ値が存在する場合はステップＳ７０に処理が進む。
【０１６５】
第３の実施の形態の機械学習装置によれば、第２の実施の形態と同様の効果が得られる。更に、第３の実施の形態では、推定される予測性能改善速度が最大のハイパーパラメータ値が次に選択される。よって、制限時間が短い場合でも、予測性能が高くなるハイパーパラメータ値を効率的に探索することができる。
【符号の説明】
【０１６６】
１０  探索装置
１１  記憶部
１２  処理部
１３  予測性能差情報
１４，１５  ハイパーパラメータ
１４ａ，１４ｂ，１５ａ  値
１６  予測性能
【図１】
2019159769.tif 000003
【図２】
2019159769.tif 000004
【図３】
2019159769.tif 000005
【図４】
2019159769.tif 000006
【図５】
2019159769.tif 000007
【図６】
2019159769.tif 000008
【図７】
2019159769.tif 000009
【図８】
2019159769.tif 000010
【図９】
2019159769.tif 000011
【図１０】
2019159769.tif 000012
【図１１】
2019159769.tif 000013
【図１２】
2019159769.tif 000014
【図１３】
2019159769.tif 000015
【図１４】
2019159769.tif 000016
【図１５】
2019159769.tif 000017
【図１６】
2019159769.tif 000018
【図１７】
2019159769.tif 000019
【図１８】
2019159769.tif 000020