(57)【要約】      （修正有）【課題】より性能の高い回帰モデルを構築できる、情報処理装置、回帰モデル生成方法及び回帰モデル生成プログラムを提供する。【解決手段】情報処理装置は、複数のデータから回帰モデルを生成するためのデータを取得し、取得したデータ集合を用いて回帰モデルを生成し、生成した回帰モデルから最適解を求め、最適解に基づいたデータの取得と取得されたデータ集合を用いた回帰モデルの生成とを繰り返す処理を実行する。そして、情報処理装置は、繰り返して回帰モデルを生成する処理が所定の条件を満たした場合、繰り返し処理に用いたデータ集合とは異なる基準で取得されたデータ集合を用いて回帰モデルを生成する。【選択図】図２
2022003484.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段（２０）と、
前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段（２２）と、
前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段（２４）と、
を備え、
前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する情報処理装置（１０）であって、
前記処理が所定の条件を満たした場合、前記繰り返し処理に用いた前記データ集合とは異なる基準で取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成する、情報処理装置。
【請求項２】
前記データ取得手段は、前記所定の条件を満たした場合に、ランダムに前記データを取得し、
前記回帰モデル生成手段は、前記データ取得手段によってランダムに取得された前記データを前記データ集合に追加して、前記回帰モデルを生成する、
請求項１記載の情報処理装置。
【請求項３】
前記所定の条件を、前記データの取得回数が所定回数に達する毎とする、請求項１又は請求項２記載の情報処理装置。
【請求項４】
前記所定の条件を、生成された前記回帰モデルの性能に基づく条件とする、請求項１から請求項３の何れか１項記載の情報処理装置。
【請求項５】
前記所定の条件を、前記データ取得手段によって取得された前記データが既に取得された前記データ集合に含まれる場合とする、請求項１から請求項４の何れか１項記載の情報処理装置。
【請求項６】
前記所定の条件を満たした場合に、前記データ集合の部分集合を用いて前記回帰モデルを生成する、請求項１から請求項５の何れか１項記載の情報処理装置。
【請求項７】
前記所定の条件は、前記データの取得回数に応じて変化する、請求項１から請求項６の何れか１項記載の情報処理装置。
【請求項８】
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得する第１工程と、
前記第１工程によって取得したデータ集合を用いて、前記回帰モデルを生成する第２工程と、
前記第２工程によって生成した前記回帰モデルから最適解を求める第３工程と、
を有し、
前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する回帰モデル生成方法であって、
前記処理が所定の条件を満たした場合、前記繰り返し処理に用いた前記データ集合とは異なる基準で取得された前記データ集合を用いて、前記第２工程が前記回帰モデルを生成する、回帰モデル生成方法。
【請求項９】
コンピュータを、
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段と、
前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段と、
前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段と、
して機能させ、前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する回帰モデル生成プログラムであって、
前記処理が所定の条件を満たした場合、前記繰り返し処理に用いた前記データ集合とは異なる基準で取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成する、回帰モデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、回帰モデル生成方法、及び回帰モデル生成プログラムに関する。
【背景技術】
【０００２】
近年、機械学習が広まり、例えば組合せ最適解を求めるための一例としてブラックボックス最適化が用いられている。
【０００３】
ブラックボックス最適化を用いた機械学習の一例として、非特許文献１には、量子コンピュータを用いた量子アニーリング（Quantum Annealing、以下「ＱＡ」ともいう、）とファクトライゼーション マシーン（Factorization Machines、以下「ＦＭ」ともいう。）とを組み合わせた手法（以下「ＦＭＱＡ」という。）が記載されている。
【０００４】
図６は、非特許文献１に記載されているＦＭＱＡを用いた回帰モデルの構築に関する概略図である。図６に示されるようＦＭＱＡでは、複数の説明変数と目的変数の対からなるデータを取得し、そのデータ集合に基づいてＦＭによって回帰モデル（最適化関数）を生成する。そして、ＦＭＱＡでは、生成した回帰モデルからＱＡによって最適な説明変数の値を最適解として求め、この最適解に基づいて再びデータの取得を行い、回帰モデルの生成を行う。このように、ＦＭＱＡでは、データの取得、回帰モデルの生成、最適解の算出、最適解に基づくデータの取得が繰り返し行われ、より性能の高い回帰モデルが構築される。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Koki Kitai, Jiang Guo, Shenghong Ju, Shu Tanaka, Koji Tsuda, Junichiro Shiomi, Ryo Tamura "Designing metamaterials with quantum annealing and factorization machines", PHYSICAL REVIEW RESEARCH 2 (2020),013319-1 - 013319-10
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、ＦＭは、いわゆるloss（損失）を最小化するように毎回の回帰モデルを生成するものであり、回帰モデルの生成に用いるデータ集合が同じであれば、生成される回帰モデルも同じとなる決定的アルゴリズムである。このため、ＦＭでは、初期データ集合の偏りなどが原因となり、十分にパラメータ空間を探索できずに局所最適解から抜け出すことができない場合がある。例えば、回帰モデルから最適解を求め、この最適解に基づいて新たなデータを取得するに際し、取得したデータが既に取得済みのデータ集合に含まれる場合、決定的アルゴリムでは、それ以上回帰モデルの性能を向上させることができない。
【０００７】
本発明は上記背景に鑑み、より性能の高い回帰モデルを構築できる、情報処理装置、回帰モデル生成方法、及び回帰モデル生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は上記課題を解決するために以下の技術的手段を採用する。特許請求の範囲及びこの項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示す一例であって、本発明の技術的範囲を限定するものではない。
【０００９】
本発明の一態様の情報処理装置（１０）は、複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段（２０）と、前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段（２２）と、前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段（２４）と、を備え、前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する情報処理装置であって、前記処理が所定の条件を満たした場合、前記繰り返し処理に用いた前記データ集合とは異なる基準で取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成する。なお、最適解演算手段によって求められる最適解とは、例えば、回帰モデルから求められる最適な説明変数の値である。
【００１０】
また、上記態様の情報処理装置において、前記回帰モデル生成手段による前記回帰モデルの生成に用いられるアルゴリズムは、前記回帰モデルの生成に用いる前記データ集合が同じであれば、生成される前記回帰モデルも同じとなる決定的アルゴリズムとしてもよい。
【発明の効果】
【００１１】
本発明によれば、より性能の高い回帰モデルを構築できる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態の情報処理装置の構成を示す概略構成図である。
【図２】本実施形態の回帰モデル生成処理の流れを示すフローチャートである。
【図３】本実施形態の回帰モデル生成処理を行った場合と行わなかった場合との比較を示す図である。
【図４】本実施形態の変形例２の回帰モデル生成処理の流れを示すフローチャートである。
【図５】本実施形態の変形例３の回帰モデル生成処理の流れを示すフローチャートである。
【図６】ＦＭＱＡを用いた回帰モデルの構築に関する概略図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施形態を説明する。なお、以下に説明する実施形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施形態に応じた具体的構成が適宜採用されてよい。
【００１４】
図１は、本実施形態の情報処理装置１０の電気的構成を示すブロック図である。本実施形態の情報処理装置１０は、量子コンピュータ等で構成される演算部１２、各種プログラム及び各種データ等が予め記憶されたＲＯＭ（Read Only Memory）１４、演算部１２による各種プログラムの実行時のワークエリア等として用いられるＲＡＭ（Random Access Memory）１６、各種プログラムや各種データ等を記憶する大容量記憶装置１８を備えている。
【００１５】
なお、量子コンピュータとは、電子や光子などの量子力学の原理が妥当する物質を利用して、情報の基本単位（これを量子ビットという）を構成し、この量子ビットを用いて計算を行うコンピュータをいう。また、演算部１２は、量子コンピュータに限らず、古典ビット（例えばＣＭＯＳトランジスタ）により演算を行う任意のコンピュータであってもよい。また、量子コンピュータと上記任意のコンピュータとが併用されて、情報処理装置１０が構成されてもよい。すなわち、情報処理装置１０の演算部１２の全てまたは一部分が、量子コンピュータとされてもよい。例えば、後述する最適解演算部２４を量子コンピュータとする一方、データ取得部２０、最適解演算部２４、繰返制御部２６、及び条件判定部２８を任意のコンピュータとしてもよい。
【００１６】
大容量記憶装置１８は、後述する回帰モデル生成処理を実行するためのプログラム、及び回帰モデルを構築するための複数のデータ等を記憶している。なお、大容量記憶装置１８は、例えばＨＤＤ（Hard Disk Drive）や半導体記憶装置であるが、特に限定されない。
【００１７】
さらに、情報処理装置１０は、キーボード及びマウス等から構成され、各種操作の入力を受け付ける操作入力部、各種画像を表示する、例えば液晶ディスプレイ装置等の画像表示部、通信回線を介して他の情報処理装置等と接続され、他の情報処理装置等との間で各種データの送受信を行う外部インタフェースを備えている。
【００１８】
本実施形態の情報処理装置１０は、逐次的にデータを取得することで組合せ最適化問題を解くための回帰モデルを少ないデータ取得回数で精度よく構築するものである。
【００１９】
本実施形態の演算部１２は、図１に示されるように、データ取得部２０、回帰モデル生成部２２、最適解演算部２４、繰返制御部２６、及び条件判定部２８を備える。
【００２０】
データ取得部２０は、回帰モデル（最適化関数）を生成するためのデータを取得する。なお、取得されるデータは、１又は複数である。また、本実施形態のデータは、一例として、説明変数と目的変数の対からなるデータである。このため、データ取得部２０によるデータの取得とは、説明変数を取得すると共に、取得した説明変数と対となる目的変数も取得することである。
【００２１】
回帰モデル生成部２２は、データ取得部２０によってそれまでに取得されたデータ集合（説明変数とこれに対となる目的変数の集合）を用いて、回帰モデルを生成する。本実施形態の回帰モデル生成部２２による回帰モデルの生成に用いられるアルゴリズムは、回帰モデルの生成に用いるデータ集合が同じであれば、生成される回帰モデルも同じとなる決定的アルゴリズムである。本実施形態の決定的アルゴリズムは、一例として、ファクトライゼーション マシーン（Factorization Machines、以下「ＦＭ」ともいう。）とする。
【００２２】
最適解演算部２４は、回帰モデル生成部２２によって生成された回帰モデルから最適解を求める。本実施形態の最適解演算部２４は、生成された回帰モデルから適切な説明変数の値を最適解として求める。適切な説明変数の値とは、回帰モデル（最適化関数）によって算出される目的変数の値を最大化または最小化する説明変数の値である。
【００２３】
本実施形態の最適解演算部２４は、一例として、量子アニーリング（Quantum Annealing、以下「ＱＡ」ともいう、）を用いて回帰モデルから最適解を求めるが、最適解を求めるための手法はＱＡに限られない。
【００２４】
繰返制御部２６は、データ取得部２０、回帰モデル生成部２２及び最適解演算部２４での処理を複数回繰り返し行うように制御する。すなわち、回帰モデル生成部２２は、データ取得部２０で取得されたデータ集合を用いて回帰モデルを生成し、最適解演算部２４はその時点で生成された回帰モデルの最適解を求める。データ取得部２０は、求められた最適解に基づいて、回帰モデルを生成するためのデータを取得する。なお、データ取得部２０によるデータの取得は、最適解に基づくものであれば特に限定されない。そして、回帰モデル生成部２２は、新たなデータ含むデータ集合を用いて新たな回帰モデルを生成する。
【００２５】
このように、本実施形態の情報処理装置１０は、最適解に基づいたデータ取得部２０によるデータの取得と、取得されたデータ集合を用いた回帰モデルの生成とを繰り返す処理（以下「回帰モデル生成処理」という。）を実行することで、回帰モデルを構築する（図５参照）。
【００２６】
条件判定部２８は、データ取得部２０によるデータ取得の方法を変更する所定の条件（以下「データ取得変更条件」という。）を満たしたか否か判定する。データ取得の方法の変更とは、一例として、後述するように最適解に基づくデータの取得から、ランダムなデータの取得に変更することをいう。また、条件判定部２８は演算部１２内のすべての処理それぞれの後にデータ取得変更条件の判定を行ってもよい。
【００２７】
ここでＦＭは、決定的アルゴリズムであるため、初期データ集合の偏りなどが原因となり、十分にパラメータ空間を探索できずに局所最適解から抜け出すことができない場合がある。例えば、回帰モデルから最適解を求め、この最適解から次のデータを取得するに際し、取得したデータが既に取得済みのデータ集合に含まれる場合、決定的アルゴリムでは、それ以上回帰モデルの性能を向上させることができない。
【００２８】
そこで、本実施形態の情報処理装置１０は、回帰モデル生成処理がデータ取得変更条件を満たした場合、前回の繰り返し処理に用いたデータ集合とは異なる基準で取得されたデータ集合を用いて、回帰モデル生成部２２が回帰モデルを生成する。
【００２９】
本実施形態における異なる基準でデータを取得するとは、前回生成された回帰モデルから求められた最適解に基づくことなく、データを取得することである。すなわち、異なる基準でデータを取得することによって、それまでの回帰モデルの最適解にとらわれないデータの取得が可能となる。これにより、生成される回帰モデルの最適解が局所最適解から抜け出すことができる回帰モデルを生成することが可能となる。従って、本実施形態の情報処理装置１０は、より性能の高い回帰モデルを構築できる。
【００３０】
なお、本実施形態の情報処理装置１０は、回帰モデル生成処理がデータ取得変更条件を満たした場合に、データ取得部２０がデータをランダムに取得し、回帰モデル生成部２２は、データ取得部２０によってランダムに取得されたデータをそれまでに取得したデータ集合に追加して、回帰モデルを生成する。これにより、回帰モデル生成処理がデータ取得変更条件を満たした場合、前回の繰り返し処理に用いたデータ集合とは異なる基準で取得されたデータ集合を用いて、回帰モデルが生成される。
【００３１】
なお、本実施形態においてデータは、説明変数と目的変数が対となって構成されている。このためデータ取得変更条件を満たした場合、データ取得部２０は、説明変数をランダムに取得すると共に、取得した説明変数と対となる目的変数も取得する。そして、回帰モデル生成部２２は、それまでに取得したデータ集合にデータ取得部２０によってランダムに取得されたデータを追加して、回帰モデルを生成する。
【００３２】
このように、本実施形態の情報処理装置１０は、データ取得部２０によってランダムに取得されたデータを追加したデータ集合を用いて、ＦＭが回帰モデルを生成することにより、データの取得に無作為性が導入されることとなる。その結果、決定的アルゴリズムであるＦＭは、確率的アルゴリズムの特性を有することとなり、回帰モデルが局所最適解にはまり込むことを抑制できる。
【００３３】
また、本実施形態では、データ取得変更条件を、データの取得回数（以下「データ取得回数」という。）が所定回数に達する毎とする。この所定回数は、任意に設定され、例えば、最適解に基づいたデータ取得とランダムなデータ取得を交互に繰り返して回帰モデルが生成されてもよい。これにより、データ取得部２０がデータをランダムに取得するための条件を簡易に設定できる。
【００３４】
また、この所定回数は、データ取得部２０によるデータの取得回数に応じて変化してもよい。例えば、データ取得回数が少ない場合にはデータ取得条件となる所定回数を少なくし、データ取得回数が多くなるに従いデータ取得条件となる所定回数を多くしてもよい。より具体的には、データ取得回数が０回から５０回までの間では所定回数を１０回とし、データ取得回数が５１回から１００回までの間では所定回数を５回とする。さらに、データ取得回数が１０１回以上では所定回数を２回、換言すると、回帰モデルに基づくデータの取得とランダムなデータの取得とを交互に行うとする。なお、これに限らず、例えば、データ取得回数が少ない場合にはデータ取得条件となる所定回数を多くし、データ取得回数が多くなるに従いデータ取得条件となる所定回数を少なくしてもよい。
【００３５】
次に、本実施形態の回帰モデル生成処理の流れについて図２に示すフローチャートを用いて説明する。また、回帰モデル生成処理は、情報処理装置１０が備える大容量記憶装置１８等の記録媒体に格納されたプログラムによって実行される。なお、このプログラムが実行されることで、プログラムに対応する方法が実行される。
【００３６】
まず、ステップＳ１００では、データ取得部２０が、回帰モデルを生成するための最初のデータ集合（以下「初期データ集合」という。）を取得する。
【００３７】
次のステップＳ１０２では、回帰モデル生成部２２が、データ取得部２０によって取得されたデータ集合を用いてＦＭにより回帰モデルを生成する。
【００３８】
次のステップＳ１０４では、回帰モデル生成処理がデータ取得変更条件を満たしたか否かを条件判定部２８が判定する。すなわち、本実施形態のステップＳ１０４では、データ取得回数が所定回数に達したか否かを判定する。なお、肯定判定の場合はステップＳ１０６へ移行し、否定判定の場合はステップＳ１０８へ移行する。
【００３９】
ステップＳ１０６では、データ取得部２０が、データをランダムに取得し、ステップＳ１１２へ移行する。ステップＳ１０６からステップＳ１１２を経て移行した場合のステップＳ１０２では、それまでに取得されたデータ集合にステップＳ１０６でランダムに取得されたデータを追加して、回帰モデル生成部２２が新たな回帰モデルを生成する。
【００４０】
なお、ステップＳ１０６でランダムに取得されたデータが、既に取得されたデータ集合に含まれる場合には、データ取得部２０が新たにランダムにデータを取得し直してもよい。
【００４１】
一方、ステップＳ１０８では、最適解演算部２４が、ステップＳ１０２で生成された回帰モデルの最適解を求める。
【００４２】
次のステップＳ１１０では、データ取得部２０が、ステップＳ１０８で求められた最適解に基づいてデータを取得し、ステップＳ１１２へ移行する。ステップＳ１１０からステップＳ１１２を経て移行した場合のステップＳ１０２では、それまでに取得されたデータ集合にステップＳ１１０で新たに取得されたデータを追加して、回帰モデル生成部２２が新たな回帰モデルを生成する。
【００４３】
ステップＳ１１２では、終了条件を満たしたか否かを繰返制御部２６が判定し、肯定判定の場合は本回帰モデル生成処理を終了し、否定判定の場合はステップＳ１０２へ移行する。なお、終了条件は、例えば、回帰モデルの生成の回数が所定回数に達した場合や、回帰モデルの性能が所定の基準を満たした場合である。
【００４４】
図３は、本実施形態の回帰モデル生成処理を行った場合と行わなかった場合との比較を示す図である。図３の横軸は、回帰モデル生成処理の繰り返し回数を示しており、図３の縦軸は生成された回帰モデルの性能の評価指標としてlossを示しており、lossが小さいほど回帰モデルの性能が良いとされる。なお、破線ａは、得られるであろう最良の回帰モデルに対応するlossの値（以下「最適loss値」という。）である。
【００４５】
そして、性能線Ａは、回帰モデルの生成にあたり、回帰モデルの最適解に基づいて取得されたデータとランダムに取得されたデータを交互に追加したデータ集合を用いた回帰モデルの生成を行った場合の回帰モデルの性能を示す。すなわち、性能線Ａではデータ取得変更条件が、２回の繰り返し毎とされている。一方、性能線Ｂはランダムにデータを取得することなく、回帰モデルの最適解に基づいて取得されたデータのみからなるデータ集合を用いて生成された回帰モデルの性能を示す。
【００４６】
図３の例では、繰返回数が４０回ぐらいまでは、性能線Ａ及び性能線Ｂ共に大きな違いはないが、繰返回数が増えるにしたがって、性能線Ａ、すなわちランダムに取得されたデータを含むデータ集合を用いて生成された回帰モデルの方がより高い性能を示していることが分かる。従って、本実施形態の情報処理装置１０は、より性能の高い回帰モデルを構築できる。
【００４７】
（変形例）
次に、本実施形態の変形例１〜４について説明する。なお、上述した実施形態及び変形例１〜４は適宜組み合わされてもよい。
【００４８】
（変形例１）
変形例１のデータ取得条件は、生成された回帰モデルの性能に基づく条件とする。すなわち、生成される回帰モデルの性能に基づいてデータ取得条件が設定されることで、期待する性能を有する回帰モデルを生成可能となる。
【００４９】
なお、本変形例のデータ取得変更条件は、一例として、繰り返して生成された回帰モデルの性能が向上しなくなった場合とする。回帰モデルの性能が向上しなくなった場合とは、回帰モデルによって求められる最適解が局所最適解にはまり込んだ可能性を示している。このような場合に、ランダムに取得されたデータを含むデータ集合を用いて回帰モデルを生成することにより、局所最適解から抜け出し、生成される回帰モデルの性能の向上が期待できる。
【００５０】
なお、本変形例における回帰モデル生成処理は、図２に示される回帰モデル生成処理と同様である。また、回帰モデルの性能が向上しなくなった場合とは、例えば、新たな回帰モデルを生成しても、loss等の評価指標が向上しなくなった場合である。
【００５１】
また、本変形例のデータ取得変更条件は、生成された回帰モデルの性能が所定の性能（以下「基準性能」という。）に達していない場合とされてもよい。例えば、基準性能を図３で示される最適loss値の５０％増とする。これにより、回帰モデルのlossが最適loss値の５０％増に達するまで、回帰モデルを生成するためのデータがランダムに取得される。なお、最適loss値の５０％増に達した後には、他のデータ取得変更条件が適用されてもよい。また、最適loss値は、任意に設定されてもよいし、理論的に算出されてもよい。また、基準性能は、最適loss値以外の指標に基づいて設定されてもよい。
【００５２】
（変形例２）
変形例２のデータ取得変更条件は、データ取得部２０によって取得されたデータが既に取得されたデータ集合に含まれる場合である。このような場合において、決定的アルゴリズムで生成される回帰モデルは、既に生成された回帰モデルと同じとなり、それ以上の性能の向上は期待できなくなる。
【００５３】
そこで、データ取得部２０によって取得されたデータが既に取得されたデータ集合に含まれる場合に、ランダムに取得されたデータを追加して回帰モデルを生成することで、新たな回帰モデルが生成されるので、生成される回帰モデルの性能の向上が期待できる。
【００５４】
図４は、本変形例の回帰モデル生成処理の流れを示すフローチャートである。
【００５５】
まず、ステップＳ１００では、データ取得部２０が、回帰モデルを生成するための初期データを取得する。次のステップＳ１０２では、回帰モデル生成部２２が、データ取得部２０によって取得されたデータを追加してＦＭにより回帰モデルを生成する。
【００５６】
次のステップＳ１０４では、最適解演算部２４が、ステップＳ１０２で生成された回帰モデルの最適解を求める。
【００５７】
次のステップＳ１２０では、データ取得部２０が、ステップＳ１０４で求められた最適解に基づいてデータを取得する。
【００５８】
次のステップＳ１２２では、回帰モデル生成処理がデータ取得変更条件を満たしたか否かを条件判定部２８が判定する。すなわち、ステップＳ１２２では、ステップＳ１２０で取得されたデータが、既に取得されたデータ集合に含まれるか否かを判定する。
【００５９】
なお、ステップＳ１２２において肯定判定の場合はステップＳ１２４へ移行し、否定判定の場合はステップＳ１２６へ移行する。ステップＳ１２２から否定判定によってステップＳ１２６を経て移行した場合のステップＳ１０２では、それまでに取得されたデータ集合にステップＳ１２０で新たに取得されたデータを追加して、回帰モデル生成部２２が新たな回帰モデルを生成する。
【００６０】
ステップＳ１２４では、データ取得部２０が、データをランダムに取得し、ステップＳ１２６へ移行する。ステップＳ１２４からステップＳ１２６を経て移行した場合のステップＳ１０２では、それまでに取得されたデータ集合にステップＳ１２４でランダムに取得されたデータを追加して、回帰モデル生成部２２が新たな回帰モデルを生成する。
【００６１】
ステップＳ１２６では、終了条件を満たしたか否かを繰返制御部２６が判定し、肯定判定の場合は本回帰モデル生成処理を終了し、否定判定の場合はステップＳ１０２へ移行する。
【００６２】
（変形例３）
変形例３では、回帰モデル生成処理がデータ取得変更条件を満たした場合、それまでに取得したデータ集合の部分集合を用いて回帰モデルを生成する。本変形例の部分集合は、既に取得したデータ集合の中からランダムに決定される。
【００６３】
このように、上記第１実施形態及び変形例１，２では、回帰モデルを生成するためのデータ取得のランダム性に関するのであるが、本変形例は、回帰モデルを生成するためのデータ集合のランダム性に関するものである。
【００６４】
本変形例のように、それまでに取得したデータ集合のうちランダムに取得した部分集合を用いて回帰モデルを生成する方法は、確率的勾配降下法（Stochastic Gradient Descent、SGD））の概念と同様である。
【００６５】
これにより、本変形例では、異なる基準で取得されたデータ集合から回帰モデルが生成されるので、ＦＭに確率的アルゴリズムの特徴を備えることができる。
【００６６】
図５は、本変形例の回帰モデル生成処理の流れを示すフローチャートである。
【００６７】
図５に示されるように、ステップＳ１０４で肯定判定となった場合、ステップＳ１０５では、回帰モデル生成部２２がデータ集合の部分集合を取得する。そして、ステップＳ１０５からステップＳ１１２を経て移行した場合のステップＳ１０２では、それまでに取得されたデータ集合を用いることなく、ステップＳ１０５で取得した部分集合を用いて、回帰モデル生成部２２が新たな回帰モデルを生成する。
【００６８】
また、部分集合を用いて回帰モデルを生成した後に、さらにステップＳ１０８，Ｓ１１０によって新たなデータを取得した場合、ステップ１０２では、新たに取得されたデータをそれまでに取得したデータ集合に追加して回帰モデルを生成する。
【００６９】
なお、部分集合を用いて回帰モデルを生成した後に、ステップＳ１０８，Ｓ１１０によって取得されたデータがそれまでに取得したデータに含まれている場合には、変形例２で説明したように、データ取得変更条件を満たすとしてランダムにデータを取得し、このデータを部分集合に追加して回帰モデルを生成してもよい。
【００７０】
なお、本変形例では、部分集合はデータ集合からランダムに取得されるのではなく、データ集合の中から所定の基準で予め定められてもよい。
【００７１】
（変形例４）
変形例４では、データ取得変更条件がデータ取得回数に応じて変化する。これにより、データ取得回数に応じて偏りなく、ランダムなデータの取得が行われる。
【００７２】
例えば、データ取得変更条件を、回帰モデルの性能が所定の性能に達した場合とすると、回帰モデルの生成の繰り返し数が多い場合（繰り返しの終盤）でないと、ランダムなデータの取得は行われない。そこで、回帰モデルの生成の繰り返し数が少ない場合であってもランダムなデータの取得が行われるように、例えば、データ取得回数が１００回未満では、データ取得回数が所定回数に達する毎にランダムなデータの取得が行われるとする。
【００７３】
また、データ取得変更条件を、回帰モデルの性能が所定の性能に達していない場合とすると、回帰モデルの生成の繰り返し数が少ない場合（繰り返しの序盤）でないと、ランダムなデータの取得は行われない。そこで、回帰モデルの生成の繰り返し数が多い場合であってもランダムなデータの取得が行われるように、例えば、データ取得回数が１００回以上では、データ取得回数が所定回数に達する毎にランダムなデータの取得が行われるとする。
【００７４】
以上、本発明を、上記実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更又は改良を加えることができ、該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。
【００７５】
上記実施形態では、回帰モデル生成処理がデータ取得変更条件を満たした場合に、回帰モデル生成部２２が回帰モデルの生成に用いるデータ集合にランダムさを導入する形態について説明したが、本発明はこれに限定されない。回帰モデル生成処理がデータ取得変更条件を満たした場合、異なる基準で取得されたデータ集合を用いて回帰モデルの生成が行われれば良く、例えば、複数のデータ集合を用意し、それらをランダムあるいは予め定められた順番で回帰モデル生成部２２による回帰モデルの生成に用いてもよい。
【００７６】
また、上記実施形態では、回帰モデルを生成するアルゴリズムをＦＭ（Factorization Machine）とする形態について説明したが、本発明はこれに限定されず、回帰モデルを生成するアルゴリズムは、決定的アルゴリズムであれば他のアルゴリズムでもよい。
【符号の説明】
【００７７】
１０・・・情報処理装置、２０・・・データ取得部、２２・・・回帰モデル生成部、
２４・・・最適解演算部
【図１】
2022003484.tif 000003
【図２】
2022003484.tif 000004
【図３】
2022003484.tif 000005
【図４】
2022003484.tif 000006
【図５】
2022003484.tif 000007
【図６】
2022003484.tif 000008