(57)【特許請求の範囲】
【請求項１】
複数のアルゴリズムを用いて、所定の問題について設定された第１損失関数の値を小さくするように所定の学習モデルの機械学習をそれぞれ行う学習部と、
前記機械学習に基づき、前記第１損失関数の大域的形状を表す第１形状情報と、前記学習モデルの性能とを、アルゴリズムごとに算出する算出部と、
前記複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が前記学習部により実行され、前記算出部により算出された前記第２損失関数の大域的形状を表す第２形状情報を取得する取得部と、
前記第１形状情報及び前記学習モデルの性能を学習データとする教師あり学習によって生成された予測モデルを用いて、前記第２形状情報に基づいて、前記第２損失関数の値を小さくするように前記学習モデルの機械学習を実行した場合の前記学習モデルの性能を、前記複数のアルゴリズムそれぞれについて予測する予測部と、
を備える解析装置。
【請求項２】
前記学習部は、１又は複数のハイパーパラメータを含む前記複数のアルゴリズムを用いて、前記第１損失関数の値を小さくし、前記１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、前記所定の学習モデルの機械学習をそれぞれ行い、
前記算出部は、機械学習に基づき、前記第１損失関数の大域的形状を表す第１形状情報と、前記学習モデルの性能とを、最適化アルゴリズムごとに算出する、
請求項１に記載の解析装置。
【請求項３】
前記学習データを用いた教師あり学習によって、前記予測モデルを生成する生成部をさらに備える、
請求項１又は２に記載の解析装置。
【請求項４】
前記学習部は、前記学習モデルのパラメータについて複数の初期値を設定し、前記複数のアルゴリズムを用いて、前記第１損失関数の値を小さくするように前記所定の学習モデルの機械学習を並列実行し、
前記算出部は、前記機械学習に基づき、前記第１形状情報と、前記学習モデルの性能とを、アルゴリズムごとに並列して算出する、
請求項１から３のいずれか一項に記載の解析装置。
【請求項５】
前記学習モデルは、ニューラルネットワークを用いたモデルを含む、
請求項１から４のいずれか一項に記載の解析装置。
【請求項６】
前記複数のアルゴリズムは、前記ニューラルネットワークのパラメータを誤差逆伝播法によって更新するアルゴリズムを含む、
請求項５に記載の解析装置。
【請求項７】
前記所定の問題及び前記新たな問題は、画像データ、系列データ及びテキストデータの少なくともいずれかについて、分類、生成及び最適化の少なくともいずれかを行う問題を含む、
請求項１から６のいずれか一項に記載の解析装置。
【請求項８】
前記複数のアルゴリズムは、前記学習モデルのパラメータを、量子ゲート方式又は量子アニーリング方式の量子コンピュータによって更新するアルゴリズムを含む、
請求項１から７のいずれか一項に記載の解析装置。
【請求項９】
前記学習部は、１又は複数のハイパーパラメータを含む複数の前処理アルゴリズムを用いて、前記機械学習に用いる学習データの前処理を行い、前記複数のアルゴリズムを用いて、前記第１損失関数の値を小さくし、前記１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、前記所定の学習モデルについて、前処理された前記学習データを用いた機械学習をそれぞれ行い、
前記算出部は、前処理された前記学習データを用いた機械学習に基づき、前記第１損失関数の大域的形状を表す第１形状情報と、前記学習モデルの性能とを、前記複数の前処理アルゴリズムごとに算出する、  請求項１から８のいずれか一項に記載の解析装置。
【請求項１０】
前記複数の前処理アルゴリズムは、前記学習データを教師なし学習を用いて分類し、分類に応じた前処理を行うアルゴリズムを含む、
請求項９に記載の解析装置。
【請求項１１】
前記複数のアルゴリズムに含まれる１又は複数のハイパーパラメータと、前記複数の前処理アルゴリズムに含まれる１又は複数のハイパーパラメータとを調整可能に表示し、前記学習モデルの性能を、前記複数のアルゴリズム及び前記複数の前処理アルゴリズムそれぞれについて表示する、
請求項９又は１０に記載の解析装置。
【請求項１２】
解析装置に備えられたプロセッサによって、
複数のアルゴリズムを用いて、所定の問題について設定された第１損失関数の値を小さくするように所定の学習モデルの機械学習をそれぞれ行うことと、
前記機械学習に基づき、前記第１損失関数の大域的形状を表す第１形状情報と、前記学習モデルの性能とを、アルゴリズムごとに算出することと、
前記複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が実行され、前記第２損失関数の大域的形状を表す第２形状情報を取得することと、
前記第１形状情報及び前記学習モデルの性能を学習データとする教師あり学習によって生成された予測モデルを用いて、前記第２形状情報に基づいて、前記第２損失関数の値を小さくするように前記学習モデルの機械学習を実行した場合の前記学習モデルの性能を、前記複数のアルゴリズムそれぞれについて予測することと、
を実行する解析方法。
【請求項１３】
解析装置に備えられたプロセッサに、
複数のアルゴリズムを用いて、所定の問題について設定された第１損失関数の値を小さくするように所定の学習モデルの機械学習をそれぞれ行うことと、
前記機械学習に基づき、前記第１損失関数の大域的形状を表す第１形状情報と、前記学習モデルの性能とを、アルゴリズムごとに算出することと、
前記複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が実行され、当該機械学習に基づき、前記第２損失関数の大域的形状を表す第２形状情報を取得することと、
前記第１形状情報及び前記学習モデルの性能を学習データとする教師あり学習によって生成された予測モデルを用いて、前記第２形状情報に基づいて、前記第２損失関数の値を小さくするように前記学習モデルの機械学習を実行した場合の前記学習モデルの性能を、前記複数のアルゴリズムそれぞれについて予測することと、
を実行させる解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解析装置、解析方法及び解析プログラムに関する。
【背景技術】
【０００２】
近年、いわゆる人工知能を様々な問題に応用する試みがなされている。例えば、下記特許文献１には、様々な現実的な事象における問題の解決に用いることを目的としたモデル選択装置が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１９−２２００６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、学習モデルの学習処理を行うためのアルゴリズムは複数知られており、問題に応じて学習処理のアルゴリズムを適切に選択しなければ、学習モデルの性能を十分に引き出せない場合がある。一般的には、学習モデルを設定する者の経験則に基づき、所定の問題に所定のアルゴリズムを用いることが行われており、選択されたアルゴリズムが適切であるかどうかの性能評価をする手段がなかった。
【０００５】
そこで、本発明は、複数のアルゴリズムで学習処理を行った場合における学習モデルの性能を予測する解析装置、解析方法及び解析プログラムを提供する。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る解析装置は、複数のアルゴリズムを用いて、所定の問題について設定された第１損失関数の値を小さくするように所定の学習モデルの機械学習をそれぞれ行う学習部と、機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデルの性能とを、アルゴリズムごとに算出する算出部と、複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が学習部により実行され、算出部により算出された第２損失関数の大域的形状を表す第２形状情報を取得する取得部と、第１形状情報及び学習モデルの性能を学習データとする教師あり学習によって生成された予測モデルを用いて、第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数のアルゴリズムそれぞれについて予測する予測部と、を備える。
【０００７】
この態様によれば、複数のアルゴリズムのうち少なくとも１つのアルゴリズムを用いて学習モデルの機械学習を実行することで、他のアルゴリズムを用いて学習モデルの機械学習を実行した場合に得られる学習モデルの性能を予測することができる。
【発明の効果】
【０００８】
本発明によれば、複数のアルゴリズムで学習処理を行った場合における学習モデルの性能を予測する解析装置、解析方法及び解析プログラムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係る解析装置の機能ブロックを示す図である。
【図２】本実施形態に係る解析装置の物理的構成を示す図である。
【図３】本実施形態に係る解析装置によって学習処理を行った学習モデルの性能を示す図である。
【図４】本実施形態に係る解析装置により算出される形状情報を示す図である。
【図５】本実施形態に係る解析装置により算出される学習データを示す図である。
【図６】本実施形態に係る解析装置により実行される予測処理のフローチャートである。
【図７】本実施形態に係る解析装置により実行される予測モデル生成処理のフローチャートである。
【図８】本実施形態に係る解析装置によって学習処理を行った学習モデルの性能を示す図である。
【図９】本実施形態に係る解析装置により表示されるハイパーパラメータ調整画面を示す図である。
【図１０】本実施形態に係る解析装置により実行される予測処理のフローチャートである。
【発明を実施するための形態】
【００１０】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【００１１】
図１は、本発明の実施形態に係る解析装置１０の機能ブロックの一例を示す図である。解析装置１０は、学習部１１、算出部１２、取得部１３、予測部１４、記憶部１５及び生成部１６を備える。解析装置１０は、汎用のコンピュータで構成されてもよい。
【００１２】
学習部１１は、複数のアルゴリズムを用いて、所定の問題について設定された第１損失関数の値を小さくするように所定の学習モデルの機械学習をそれぞれ行う。ここで、所定の問題は、例えば画像データ、系列データ及びテキストデータの少なくともいずれかについて、分類、生成及び最適化の少なくともいずれかを行う問題を含む。ここで、画像データは、静止画のデータと、動画のデータとを含む。系列データは、音声データや株価のデータを含む。また、所定の学習モデルは、画像認識モデル、系列データ解析モデル、ロボットの制御モデル、強化学習モデル、音声認識モデル、音声生成モデル、画像生成モデル、自然言語処理モデル等を含み、例えば、ＣＮＮ（Convolutional Neural Network）、ＲＮＮ（Recurrent Neural Network）、ＬＳＴＭ（Long Short-Term Memory）、双方向ＬＳＴＭ、ＤＱＮ（Deep Q-Network）、ＶＡＥ（Variational AutoEncoder）、ＧＡＮｓ（Generative Adversarial Networks）、ＷａｖｅＮｅｔ、ＢＥＲＴ（Bidirectional Encoder Representations from Transformers）、Ｗｏｒｄ２Ｖｅｃ、ランダムフォレスト、サポートベクターマシン、ロジスティック回帰、勾配ブースティング決定木及び主成分分析等のいずれかであり、その他学習に適用可能なモデルを含む。また、学習モデルは、既存の学習済みモデルを枝刈り（Pruning）、量子化（Quantization）又は蒸留（Distillation）して得られるモデルを含む。なお、これらは一例に過ぎず、学習部１１は、これら以外の問題について、学習モデルの機械学習を行ってもよい。
【００１３】
また、複数のアルゴリズムは、学習モデル１２ａの機械学習を行うアルゴリズムであり、学習モデル１２ａがニューラルネットワークを含む場合、誤差逆伝播法によりニューラルネットワークのパラメータを更新し、最適化するアルゴリズムであってよい。複数のアルゴリズムは、確率的勾配降下法（stochastic gradient descent：ＳＧＤ）、モーメンタムＳＧＤ、ＡｄａＧｒａｄ、ＲＭＳＰｒｏｐ、ＡｄａＤｅｌｔａ及びＡＤＡＭ等を含む。また、複数のアルゴリズムは、学習モデル１２ａのパラメータを、量子ゲート方式又は量子アニーリング方式の量子コンピュータによって更新するアルゴリズムを含む。例えば、複数の弱学習器を組み合わせた１つの強学習器によって学習モデル１２ａを構成する場合、Hartmut Neven, Vasil S. Denchev, Geordie Rose, William G. Macready, "QBoost: Large Scale Classifier Training with Adiabatic Quantum Optimization", Proceedings of the Asian Conference on Machine Learning, PMLR 25:333-348, 2012.に記載のアルゴリズムを用いてよい。また、Jacob Biamonte, Peter Wittek, Nicola Pancotti, Patrick Rebentrost, Nathan Wiebe and Seth Lloyd, "Quantum Machine Learning", Nature volume 549, pages 195-202, 2017.に記載のアルゴリズムを用いてもよい。なお、これらは一例に過ぎず、複数のアルゴリズムは、これら以外のアルゴリズムを含んでよい。また、量子コンピュータは、超伝導線路により量子ビットを構成するものであったり、イオントラップにより量子ビットを構成するものであったり、光回路によって量子ビットを構成するものであったりしてよく、ハードウェア構成は任意である。さらに、複数のアルゴリズムは、学習モデル１２ａのパラメータを、量子コンピュータ及び古典コンピュータのハイブリッド型コンピュータによって更新するアルゴリズムを含んでもよい。
【００１４】
算出部１２は、機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデル１２ａの性能とを、アルゴリズムごとに算出する。所定の問題について設定された第１損失関数は、学習モデル１２ａの出力とラベルデータとに関する２乗誤差関数であったり、クロスエントロピー関数であったりしてよい。学習モデル１２ａが含む複数のパラメータをθと表すとき、第１損失関数は、複数のパラメータθに関する関数Ｌ（θ）と表せる。本明細書では、関数Ｌ（θ）の値を、第１損失関数の大域的形状を表す第１形状情報と呼ぶ。例えば、算出部１２は、学習モデル１２ａの機械学習に基づき、パラメータθに対する関数Ｌ（θ）の値を記録していき、第１損失関数の大域的形状を表す第１形状情報Ｌ（θ）を算出する。
【００１５】
また、学習モデル１２ａの性能は、例えば、Ｆ値で表したり、Ｆ値／（学習処理の計算時間）で表したり、第１損失関数の値で表したりしてよい。なお、Ｆ値は、適合率（precision）をＰと表し、再現率（recall）をＲと表すとき、２ＰＲ／（Ｐ＋Ｒ）により算出される値である。算出部１２は、学習モデル１２ａの機械学習に基づき、Ｆ値等で表される学習モデル１２ａの性能を算出する。
【００１６】
学習部１１は、学習モデル１２ａのパラメータについて複数の初期値を設定し、複数のアルゴリズムを用いて、第１損失関数の値を小さくするように所定の学習モデル１２ａの機械学習を個別に実行又は並列に実行してもよい。並列実行の場合、算出部１２は、機械学習に基づき、第１形状情報と、学習モデル１２ａの性能とを、アルゴリズムごとに並列して算出する。
【００１７】
学習モデル１２ａのパラメータについて複数の初期値を設定する理由は、複数の初期値を用いて学習モデル１２ａの機械学習を実行することで、損失関数の極小値に対応するパラメータが選ばれてしまうおそれを少なくすることができるからである。これにより、大域的に最適な損失関数の最小値に対応するパラメータを選ぶことができる確率を上げることができる。また、学習モデル１２ａの機械学習を複数の初期値についてそれぞれ並列実行する場合、大域的な最適解をより高速に求めることができる。
【００１８】
取得部１３は、複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が学習部１１により実行され、算出部１２により算出された第２損失関数の大域的形状を表す第２形状情報を取得する。ここで、新たな問題は、画像データ、系列データ及びテキストデータの少なくともいずれかについて、分類、生成及び最適化の少なくともいずれかを行う問題を含む。また、第２損失関数は、学習モデル１２ａの出力とラベルデータとに関する２乗誤差関数であったり、クロスエントロピー関数であったりしてよく、第２形状情報は、複数のパラメータθに関する第２損失関数の関数形Ｌ（θ）であってよい。
【００１９】
予測部１４は、第１形状情報及び学習モデル１２ａの性能を学習データとする教師あり学習によって生成された予測モデル１４ａを用いる。また、予測部１４は、この予測モデル１４ａを用いて、第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデル１２ａの機械学習を実行した場合の学習モデル１２ａの性能を、複数のアルゴリズムそれぞれについて予測する。例えば、予測部１４は、予測モデル１４ａに、所定のアルゴリズムの第２形状情報を入力することで、その他のアルゴリズムを含む複数のアルゴリズムそれぞれについて、機械学習を実行した場合の学習モデル１２ａの性能を出力する。
【００２０】
新たな問題について、いずれのアルゴリズムを用いれば学習モデル１２ａの性能を適切に引き出すことができるかを試行錯誤によって決定する場合、アルゴリズムの選定に時間を要する場合がある。本実施形態に係る解析装置１０によれば、複数のアルゴリズムのうち少なくとも１つのアルゴリズムを用いて学習モデル１２ａの機械学習を実行することで、他のアルゴリズムを用いて学習モデル１２ａの機械学習を実行した場合に得られる学習モデル１２ａの性能を予測することができる。そのため、新たな問題が与えられた場合に、いずれのアルゴリズムを用いるべきか迅速に決定することができ、学習モデル１２ａの性能を適切に引き出すことができるようになる。
【００２１】
学習部１１は、１又は複数のハイパーパラメータを含む複数のアルゴリズムを用いて、第１損失関数の値を小さくし、１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、所定の学習モデル１２ａの機械学習をそれぞれ行ってもよい。この場合、算出部１２は、機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデル１２ａの性能とを、複数の最適化アルゴリズムごとに算出する。ここで、ハイパーパラメータは、例えばアルゴリズムがＳＧＤの場合、学習係数を含む。他のアルゴリズムに関しても、同様に、学習係数やモーメンタム係数といったハイパーパラメータが設定される。また、複数の最適化アルゴリズムは、例えば、ランダムサーチ、ベイジアン最適化、ＣＭＡ−ＥＳ、座標降下法及びネルダー−ミード法等を含む。学習部１１は、複数のアルゴリズムに関して１又は複数のハイパーパラメータを最適化する最適化アルゴリズムを用いた場合について、学習モデル１２ａの機械学習を実行した場合の学習モデル１２ａの性能を予測する。これにより、複数のアルゴリズムのうちいずれを選択すべきか予測するだけでなく、どのようなハイパーパラメータの最適化法を用いるべきであるか予測することができ、ハイパーパラメータチューニングに要する時間を短縮することができる。
【００２２】
記憶部１５は、第１形状情報及び学習モデル１２ａの性能を含む学習データ１５ａを記憶する。学習データ１５ａは、あるアルゴリズムによって学習モデル１２ａの機械学習を実行した場合における損失関数の大域的形状を表す第１形状情報と、その機械学習の結果得られた学習モデル１２ａの性能とを含む。
【００２３】
生成部１６は、学習データ１５ａを用いた教師あり学習によって、予測モデル１４ａを生成する。予測モデル１４ａは、例えばニューラルネットワークで構成されてよく、新たな問題について設定された第２損失関数の大域的形状を表す第２形状情報を入力として、複数のアルゴリズムを用いて、新たな問題について設定された第２損失関数の値を小さくするように学習モデル１２ａの機械学習を実行した場合の学習モデル１２ａの性能を予測するモデルである。
【００２４】
図２は、本実施形態に係る解析装置１０の物理的構成の一例を示す図である。解析装置１０は、演算部に相当するＣＰＵ（Central Processing Unit）１０ａと、記憶部に相当するＲＡＭ（Random Access Memory）１０ｂと、記憶部に相当するＲＯＭ（Read only Memory）１０ｃと、通信部１０ｄと、入力部１０ｅと、表示部１０ｆと、を有する。これらの各構成は、バスを介して相互にデータ送受信可能に接続される。なお、本例では解析装置１０が一台のコンピュータで構成される場合について説明するが、解析装置１０は、複数のコンピュータ又は複数の演算部が組み合わされて実現されてもよい。また、図２で示す構成は一例であり、解析装置１０はこれら以外の構成を有してもよいし、これらの構成のうち一部を有さなくてもよい。
【００２５】
ＣＰＵ１０ａは、ＲＡＭ１０ｂ又はＲＯＭ１０ｃに記憶されたプログラムの実行に関する制御やデータの演算、加工を行う制御部である。ＣＰＵ１０ａは、複数のアルゴリズムを用いて、新たな問題について設定された第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数のアルゴリズムそれぞれについて予測するプログラム（解析プログラム）を実行する演算部である。ＣＰＵ１０ａは、入力部１０ｅや通信部１０ｄから種々のデータを受け取り、データの演算結果を表示部１０ｆに表示したり、ＲＡＭ１０ｂに格納したりする。
【００２６】
ＲＡＭ１０ｂは、記憶部のうちデータの書き換えが可能なものであり、例えば半導体記憶素子で構成されてよい。ＲＡＭ１０ｂは、ＣＰＵ１０ａが実行するプログラム、所定の問題について設定された損失関数の大域的形状及び学習モデルの性能を含む学習データといったデータを記憶してよい。なお、これらは例示であって、ＲＡＭ１０ｂには、これら以外のデータが記憶されていてもよいし、これらの一部が記憶されていなくてもよい。
【００２７】
ＲＯＭ１０ｃは、記憶部のうちデータの読み出しが可能なものであり、例えば半導体記憶素子で構成されてよい。ＲＯＭ１０ｃは、例えば解析プログラムや、書き換えが行われないデータを記憶してよい。
【００２８】
通信部１０ｄは、解析装置１０を他の機器に接続するインターフェースである。通信部１０ｄは、インターネット等の通信ネットワークに接続されてよい。
【００２９】
入力部１０ｅは、ユーザからデータの入力を受け付けるものであり、例えば、キーボード及びタッチパネルを含んでよい。
【００３０】
表示部１０ｆは、ＣＰＵ１０ａによる演算結果を視覚的に表示するものであり、例えば、ＬＣＤ（Liquid Crystal Display）により構成されてよい。表示部１０ｆは、例えば、損失関数の大域的形状を表示してよい。
【００３１】
解析プログラムは、ＲＡＭ１０ｂやＲＯＭ１０ｃ等のコンピュータによって読み取り可能な記憶媒体に記憶されて提供されてもよいし、通信部１０ｄにより接続される通信ネットワークを介して提供されてもよい。解析装置１０では、ＣＰＵ１０ａが解析プログラムを実行することにより、図１を用いて説明した様々な動作が実現される。なお、これらの物理的な構成は例示であって、必ずしも独立した構成でなくてもよい。例えば、解析装置１０は、ＣＰＵ１０ａとＲＡＭ１０ｂやＲＯＭ１０ｃが一体化したＬＳＩ（Large-Scale Integration）を備えていてもよい。また、解析装置１０は、ＧＰＵ（Graphical Processing Unit）やＡＳＩＣ（Application Specific Integrated Circuit）を備えていてもよい。
【００３２】
図３は、本実施形態に係る解析装置１０によって学習処理を行った学習モデルの性能の一例を示す図である。同図では、ＳＧＤ、モーメンタムＳＧＤ（Momentum SGD）、ＡｄａＧｒａｄ、ＲＭＳＰｒｏｐ、ＡｄａＤｅｌｔａ、ＡＤＡＭ、量子ゲート方式及び量子アニーリング方式というアルゴリズムを用い、それぞれ、ランダムサーチ（Random Search）、ベイジアン最適化（Bayesian Optimization）、ＣＭＡ−ＥＳ、座標降下法（Coordinate Search）及びネルダー−ミード法（Nelder-Mead）によって１又は複数のハイパーパラメータを最適化した場合における学習モデルの性能を示している。例えば、ａ１〜ａ５は、アルゴリズムとしてＳＧＤを用いて、ランダムサーチ、ベイジアン最適化、ＣＭＡ−ＥＳ、座標降下法又はネルダー−ミード法によって１又は複数のハイパーパラメータを最適化した場合における学習モデルの性能を表す数値である。なお、ｂ１〜ｂ５、ｃ１〜ｃ５、ｄ１〜ｄ５、ｅ１〜ｅ５、ｆ１〜ｆ５、ｇ１〜ｇ５及びｈ１〜ｈ５は、同様に学習モデルの性能を表す数値である。
【００３３】
図４は、本実施形態に係る解析装置１０により算出される形状情報の一例を示す図である。同図では、簡単のため、学習モデルのパラメータとしてθ１及びθ２を示し、損失関数の値Ｌ（θ）を示している。同図に示すように、損失関数の大域的形状は、複数の極小点を含み、最小点の探索が困難な場合がある。本実施形態に係る解析装置１０は、このような損失関数の大域的形状を、学習モデル及び学習アルゴリズムの特徴量と捉え、損失関数の大域的形状から、複数のアルゴリズムを用いて学習モデルの学習処理を行った場合に関する学習モデルの性能を予測する。
【００３４】
図５は、本実施形態に係る解析装置１０により算出される学習データの一例を示す図である。同図では、ＳＧＤ、モーメンタムＳＧＤ（Momentum SGD）、ＡｄａＧｒａｄ、ＲＭＳＰｒｏｐ、ＡｄａＤｅｌｔａ、ＡＤＡＭ、量子ゲート方式及び量子アニーリング方式というアルゴリズムについて、第１形状情報及び学習モデルの性能を示している。例えば、Ｌａ（θ）は、アルゴリズムとしてＳＧＤを用いた場合における第１形状情報を表し、Ｓａは、アルゴリズムとしてＳＧＤを用いた場合における学習モデルの性能を表す数値である。同様に、Ｌｂ（θ）、Ｌｃ（θ）、Ｌｄ（θ）、Ｌｅ（θ）、Ｌｆ（θ）、Ｌｇ（θ）及びＬｈ（θ）は、アルゴリズムとしてＡｄａＧｒａｄ、ＲＭＳＰｒｏｐ、ＡｄａＤｅｌｔａ、ＡＤＡＭ、量子ゲート方式又は量子アニーリング方式を用いた場合における第１形状情報を表す。また、Ｓｂ、Ｓｃ、Ｓｄ、Ｓｅ、Ｓｆ、Ｓｇ及びＳｈは、アルゴリズムとしてＡｄａＧｒａｄ、ＲＭＳＰｒｏｐ、ＡｄａＤｅｌｔａ、ＡＤＡＭ、量子ゲート方式又は量子アニーリング方式を用いた場合における学習モデルの性能を表す数値である。なお、学習モデルの性能は、図３に示すように、ハイパーパラメータの最適化アルゴリズムごとに算出し、それらを学習データとしてもよい。
【００３５】
図６は、本実施形態に係る解析装置１０により実行される予測処理の一例を示すフローチャートである。はじめに、解析装置１０は、所定の問題及び所定の学習モデルの指定を他の情報処理装置から受け付ける（Ｓ１０）。所定の問題及び所定の学習モデルの指定は、ユーザ入力されてよい。
【００３６】
次に、解析装置１０は、学習モデルのパラメータについて複数の初期値を設定し（Ｓ１１）、１又は複数のハイパーパラメータを含む複数のアルゴリズムを用いて、第１損失関数の値を小さくし、１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、所定の学習モデルの機械学習をそれぞれ並列実行する（Ｓ１２）。
【００３７】
また、解析装置１０は、機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデルの性能とを、アルゴリズムごとに並列して算出する（Ｓ１３）。そして、解析装置１０は、第１形状情報及び学習モデルの性能を学習データとして記憶部１５に記憶する（Ｓ１４）。
【００３８】
その後、解析装置１０は、新たな問題の指定を他の情報処理装置から受け付ける（Ｓ１５）。新たな問題の指定は、ユーザ入力されてよい。
【００３９】
解析装置１０は、複数のアルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が学習部１１により実行され、算出部１２により算出された第２損失関数の大域的形状を表す第２形状情報を取得する（Ｓ１６）。そして、解析装置１０は、予測モデルを用いて、第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数のアルゴリズムそれぞれについて予測する（Ｓ１７）。
【００４０】
図７は、本実施形態に係る解析装置１０により実行される予測モデル生成処理の一例を示すフローチャートである。はじめに、解析装置１０は、第１形状情報及び学習モデルの性能を含む学習データを取得する（Ｓ２０）。なお、学習データは、インターネット等の通信ネットワークを介して、外部記憶装置から取得してもよい。
【００４１】
その後、解析装置１０は、学習データを用いた教師あり学習によって、第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数のアルゴリズムそれぞれについて予測する予測モデルを生成する（Ｓ２１）。そして、解析装置１０は、生成された予測モデルを記憶する。
【００４２】
図８は、本実施形態に係る解析装置１０によって学習処理を行った学習モデルの性能を示す図である。同図では、階層型クラスタリング、非階層型クラスタリング、トピックモデル、自己組織化マップ、アソシエーション分析、協調フィルタリング、正準相関分析、量子ゲート方式及び量子アニーリング方式という教師なし学習を用いて学習データを分類し、分類に応じた前処理アルゴリズムを適用して、それぞれ、ランダムサーチ（Random Search）、ベイジアン最適化（Bayesian Optimization）、ＣＭＡ−ＥＳ、座標降下法（Coordinate Search）及びネルダー−ミード法（Nelder-Mead）によって１又は複数のハイパーパラメータを最適化した場合における学習モデルの性能を示している。Ｇ１〜Ｇ５は、教師なし学習として階層型クラスタリングを用いて、ランダムサーチ、ベイジアン最適化、ＣＭＡ−ＥＳ、座標降下法又はネルダー−ミード法によって、階層型クラスタリングに含まれる１又は複数のハイパーパラメータを最適化した場合における学習モデルの性能を表す数値である。なお、Ｇ６〜Ｇ４５は、同様に学習モデルの性能を表す数値である。
【００４３】
学習部１１は、１又は複数のハイパーパラメータを含む複数の前処理アルゴリズムを用いて、機械学習に用いる学習データの前処理を行い、複数のアルゴリズムを用いて、第１損失関数の値を小さくし、１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、所定の学習モデルについて、前処理された学習データを用いた機械学習をそれぞれ行う。そして、算出部１２は、前処理された学習データを用いた機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデルの性能とを、複数の前処理アルゴリズムごとに算出する。
【００４４】
複数の前処理アルゴリズムは、欠損値処理、外れ値の対応、連続値の離散化、データ操作、次元削減、ワンホットベクトル化、データ拡張、特徴量エンジニアリング及びビン分割を含んでよい。複数の前処理アルゴリズムは、学習データを教師なし学習を用いて分類し、分類に応じた前処理を行うアルゴリズムを含む。すなわち、複数の前処理アルゴリズムは、階層型クラスタリング、非階層型クラスタリング、トピックモデル、自己組織化マップ、アソシエーション分析、協調フィルタリング、正準相関分析、量子ゲート方式及び量子アニーリング方式といった教師なし学習を用いて学習データを分類し、分類に応じて欠損値処理、説明変数の絞り込み、ワンホットベクトル化及びビン分割の少なくともいずれかを行うアルゴリズムを含む。
【００４５】
図９は、本実施形態に係る解析装置１０により表示されるハイパーパラメータ調整画面を示す図である。同図では、学習アルゴリズムのハイパーパラメータを調整するためのスライドバーと、前処理アルゴリズムのハイパーパラメータを調整するためのスライドバーと、縦軸に学習アルゴリズムの種類を数値で表し、横軸に前処理アルゴリズムの種類を数値で表して、（Ｌ−損失関数）の値のヒートマップを表示している。ここで、Ｌは、損失関数の最大値である。なお、（Ｌ−損失関数）の値は、学習モデルの性能を表す値の一例であり、解析装置１０は、損失関数の値のヒートマップに替えて、学習モデルの性能を示すＦ値やＦ値／（学習処理の計算時間）のヒートマップを表示してもよい。
【００４６】
解析装置１０は、複数のアルゴリズムに含まれる１又は複数のハイパーパラメータと、複数の前処理アルゴリズムに含まれる１又は複数のハイパーパラメータとを調整可能に表示し、学習モデルの性能を、複数のアルゴリズム及び複数の前処理アルゴリズムそれぞれについて表示する。解析装置１０のユーザは、学習アルゴリズムのハイパーパラメータ及び前処理アルゴリズムのハイパーパラメータを調整しつつ、ヒートマップにより示される最も損失関数の値が小さくなる点（最尤点）を確認し、その点に対応する学習アルゴリズム及び前処理アルゴリズムを選択することで、複数の学習アルゴリズム及び複数の前処理アルゴリズムの中から最適なアルゴリズムを効率良く選択することができる。
【００４７】
図１０は、本実施形態に係る解析装置１０により実行される予測処理のフローチャートである。はじめに、解析装置１０は、学習アルゴリズムのハイパーパラメータの指定及び前処理アルゴリズムのハイパーパラメータの指定を受け付ける（Ｓ３０）。
【００４８】
その後、解析装置１０は、学習データを教師なし学習を用いて分類する（Ｓ３１）。そして、解析装置１０は、１又は複数のハイパーパラメータを含む複数の前処理アルゴリズムを用いて、機械学習に用いる学習データの前処理を行い、複数のアルゴリズムを用いて、第１損失関数の値を小さくし、１又は複数のハイパーパラメータを複数の最適化アルゴリズムを用いて最適化して、所定の学習モデルについて、前処理された学習データを用いた機械学習をそれぞれ実行する（Ｓ３２）。
【００４９】
解析装置１０は、前処理された学習データを用いた機械学習に基づき、第１損失関数の大域的形状を表す第１形状情報と、学習モデルの性能とを、複数の前処理アルゴリズムごとに算出する（Ｓ３３）。そして、解析装置１０は、第１形状情報及び学習モデルの性能を学習データとして記憶する（Ｓ３４）。
【００５０】
その後、解析装置１０は、新たな問題の指定を受け付ける（Ｓ３５）。そして、解析装置１０は、複数の前処理アルゴリズムのうち少なくともいずれかを用いて、新たな問題について設定された第２損失関数の値を小さくするような機械学習が学習部により実行され、算出部により算出された第２損失関数の大域的形状を表す第２形状情報を取得する（Ｓ３６）。
【００５１】
最後に、解析装置１０は、予測モデルを用いて、第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数の前処理アルゴリズムそれぞれについて予測する（Ｓ３７）。
【００５２】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【００５３】
１０…解析装置、１０ａ…ＣＰＵ、１０ｂ…ＲＡＭ、１０ｃ…ＲＯＭ、１０ｄ…通信部、１０ｅ…入力部、１０ｆ…表示部、１１…学習部、１２…算出部、１２ａ…学習モデル、１３…取得部、１４…予測部、１４ａ…予測モデル、１５…記憶部、１５ａ…学習データ、１６…生成部
【要約】
【課題】複数のアルゴリズムで学習処理を行った場合における学習モデルの性能を予測する解析装置、解析方法及び解析プログラムを提供する。
【解決手段】解析装置１０は、所定の問題について設定された第１損失関数の大域的形状を表す第１形状情報及び学習モデルの性能を学習データとする教師あり学習によって生成された予測モデルを用いて、新たな問題について設定された第２損失関数の大域的形状を表す第２形状情報に基づいて、第２損失関数の値を小さくするように学習モデルの機械学習を実行した場合の学習モデルの性能を、複数のアルゴリズムそれぞれについて予測する。
【選択図】図１【図１】
0006774129.tif 000002
【図２】
0006774129.tif 000003
【図３】
0006774129.tif 000004
【図４】
0006774129.tif 000005
【図５】
0006774129.tif 000006
【図６】
0006774129.tif 000007
【図７】
0006774129.tif 000008
【図８】
0006774129.tif 000009
【図９】
0006774129.tif 000010
【図１０】
0006774129.tif 000011