(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-25
(45)【発行日】2024-04-02
(54)【発明の名称】情報処理装置、回帰モデル生成方法、及び回帰モデル生成プログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240326BHJP
G06F 17/18 20060101ALI20240326BHJP
【FI】
G06N20/00
G06F17/18 Z
(21)【出願番号】P 2020108027
(22)【出願日】2020-06-23
【審査請求日】2022-09-13
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】100113549
【氏名又は名称】鈴木 守
(74)【代理人】
【識別番号】100115808
【氏名又は名称】加藤 真司
(74)【代理人】
【識別番号】100169199
【氏名又は名称】石本 貴幸
(72)【発明者】
【氏名】門脇 正史
【審査官】大塚 俊範
(56)【参考文献】
【文献】KITAI, K. et al.,Designing metamaterials with quantum annealing and factorization machines,Physical Review Research,2020年03月16日,Vol. 2, Iss. 1,pp. 013319-1 - 013319-10,[online], [retrieved on 2023-09-15]. Retrieved from <https://journals.aps.org/prresearch/abstract/10.1103/PhysRevResearch.2.013319> <doi: 10.1103/PhysRevResearch.2.013319>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
G06F 17/18
(57)【特許請求の範囲】
【請求項1】
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段(20)と、
前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段(22)と、
前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段(24)と、
を備え、
前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する情報処理装置(10)であって、
前記処理が所定の条件を満たした場合、
前回生成された前記回帰モデルから求められた前記最適解に基づくことなく取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成
し、
前記所定の条件は、前記データの取得回数が所定回数に達する毎とする、
情報処理装置。
【請求項2】
前記データ取得手段は、前記所定の条件を満たした場合に、ランダムに前記データを取得し、
前記回帰モデル生成手段は、前記データ取得手段によってランダムに取得された前記データを前記データ集合に追加して、前記回帰モデルを生成する、
請求項1記載の情報処理装置。
【請求項3】
前記所定回数は、前記データ取得手段による前記データの取得回数に応じて変化する、請求項1又は請求項2記載の情報処理装置。
【請求項4】
前記所定の条件を、生成された前記回帰モデルの性能に基づく条件とする、請求項1から請求項3の何れか1項記載の情報処理装置。
【請求項5】
前記所定の条件を、前記データ取得手段によって取得された前記データが既に取得された前記データ集合に含まれる場合とする、請求項1から請求項4の何れか1項記載の情報処理装置。
【請求項6】
前記所定の条件を満たした場合に、前記データ集合の部分集合を用いて前記回帰モデルを生成する、請求項1から請求項5の何れか1項記載の情報処理装置。
【請求項7】
前記所定の条件は、前記データの取得回数に応じて変化する、請求項1から請求項6の何れか1項記載の情報処理装置。
【請求項8】
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを
データ取得手段が取得する第1工程と、
前記第1工程によって取得したデータ集合を用いて、前記回帰モデルを
回帰モデル生成手段が生成する第2工程と、
前記第2工程によって生成した前記回帰モデルから最適解を
最適解演算手段が求める第3工程と、
を有し、
前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する回帰モデル生成方法であって、
前記処理が所定の条件を満たした場合、
前回生成された前記回帰モデルから求められた前記最適解に基づくことなく取得された前記データ集合を用いて、前記第2工程が前記回帰モデルを生成
し、
前記所定の条件は、前記データの取得回数が所定回数に達する毎とする、
回帰モデル生成方法。
【請求項9】
コンピュータを、
複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段と、
前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段と、
前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段と、
して機能させ、前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する回帰モデル生成プログラムであって、
前記処理が所定の条件を満たした場合、
前回生成された前記回帰モデルから求められた前記最適解に基づくことなく取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成
し、
前記所定の条件は、前記データの取得回数が所定回数に達する毎とする、
回帰モデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、回帰モデル生成方法、及び回帰モデル生成プログラムに関する。
【背景技術】
【0002】
近年、機械学習が広まり、例えば組合せ最適解を求めるための一例としてブラックボックス最適化が用いられている。
【0003】
ブラックボックス最適化を用いた機械学習の一例として、非特許文献1には、量子コンピュータを用いた量子アニーリング(Quantum Annealing、以下「QA」ともいう、)とファクトライゼーション マシーン(Factorization Machines、以下「FM」ともいう。)とを組み合わせた手法(以下「FMQA」という。)が記載されている。
【0004】
図6は、非特許文献1に記載されているFMQAを用いた回帰モデルの構築に関する概略図である。
図6に示されるようFMQAでは、複数の説明変数と目的変数の対からなるデータを取得し、そのデータ集合に基づいてFMによって回帰モデル(最適化関数)を生成する。そして、FMQAでは、生成した回帰モデルからQAによって最適な説明変数の値を最適解として求め、この最適解に基づいて再びデータの取得を行い、回帰モデルの生成を行う。このように、FMQAでは、データの取得、回帰モデルの生成、最適解の算出、最適解に基づくデータの取得が繰り返し行われ、より性能の高い回帰モデルが構築される。
【先行技術文献】
【非特許文献】
【0005】
【文献】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
【発明の概要】
【発明が解決しようとする課題】
【0006】
ここで、FMは、いわゆるloss(損失)を最小化するように毎回の回帰モデルを生成するものであり、回帰モデルの生成に用いるデータ集合が同じであれば、生成される回帰モデルも同じとなる決定的アルゴリズムである。このため、FMでは、初期データ集合の偏りなどが原因となり、十分にパラメータ空間を探索できずに局所最適解から抜け出すことができない場合がある。例えば、回帰モデルから最適解を求め、この最適解に基づいて新たなデータを取得するに際し、取得したデータが既に取得済みのデータ集合に含まれる場合、決定的アルゴリムでは、それ以上回帰モデルの性能を向上させることができない。
【0007】
本発明は上記背景に鑑み、より性能の高い回帰モデルを構築できる、情報処理装置、回帰モデル生成方法、及び回帰モデル生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は上記課題を解決するために以下の技術的手段を採用する。特許請求の範囲及びこの項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示す一例であって、本発明の技術的範囲を限定するものではない。
【0009】
本発明の一態様の情報処理装置(10)は、複数のデータで構成されるデータ集合を用いて回帰モデルを生成するためのデータを取得するデータ取得手段(20)と、前記データ取得手段によって取得されたデータ集合を用いて、前記回帰モデルを生成する回帰モデル生成手段(22)と、前記回帰モデル生成手段によって生成された前記回帰モデルから最適解を求める最適解演算手段(24)と、を備え、前記最適解に基づいた前記データの取得と、取得された前記データ集合を用いた前記回帰モデルの生成とを繰り返す処理を実行する情報処理装置であって、前記処理が所定の条件を満たした場合、前記繰り返し処理に用いた前記データ集合とは異なる基準で取得された前記データ集合を用いて、前記回帰モデル生成手段が前記回帰モデルを生成する。なお、最適解演算手段によって求められる最適解とは、例えば、回帰モデルから求められる最適な説明変数の値である。
【0010】
また、上記態様の情報処理装置において、前記回帰モデル生成手段による前記回帰モデルの生成に用いられるアルゴリズムは、前記回帰モデルの生成に用いる前記データ集合が同じであれば、生成される前記回帰モデルも同じとなる決定的アルゴリズムとしてもよい。
【発明の効果】
【0011】
本発明によれば、より性能の高い回帰モデルを構築できる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態の情報処理装置の構成を示す概略構成図である。
【
図2】本実施形態の回帰モデル生成処理の流れを示すフローチャートである。
【
図3】本実施形態の回帰モデル生成処理を行った場合と行わなかった場合との比較を示す図である。
【
図4】本実施形態の変形例2の回帰モデル生成処理の流れを示すフローチャートである。
【
図5】本実施形態の変形例3の回帰モデル生成処理の流れを示すフローチャートである。
【
図6】FMQAを用いた回帰モデルの構築に関する概略図である。
【発明を実施するための形態】
【0013】
以下、図面を参照して本発明の実施形態を説明する。なお、以下に説明する実施形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施形態に応じた具体的構成が適宜採用されてよい。
【0014】
図1は、本実施形態の情報処理装置10の電気的構成を示すブロック図である。本実施形態の情報処理装置10は、量子コンピュータ等で構成される演算部12、各種プログラム及び各種データ等が予め記憶されたROM(Read Only Memory)14、演算部12による各種プログラムの実行時のワークエリア等として用いられるRAM(Random Access Memory)16、各種プログラムや各種データ等を記憶する大容量記憶装置18を備えている。
【0015】
なお、量子コンピュータとは、電子や光子などの量子力学の原理が妥当する物質を利用して、情報の基本単位(これを量子ビットという)を構成し、この量子ビットを用いて計算を行うコンピュータをいう。また、演算部12は、量子コンピュータに限らず、古典ビット(例えばCMOSトランジスタ)により演算を行う任意のコンピュータであってもよい。また、量子コンピュータと上記任意のコンピュータとが併用されて、情報処理装置10が構成されてもよい。すなわち、情報処理装置10の演算部12の全てまたは一部分が、量子コンピュータとされてもよい。例えば、後述する最適解演算部24を量子コンピュータとする一方、データ取得部20、最適解演算部24、繰返制御部26、及び条件判定部28を任意のコンピュータとしてもよい。
【0016】
大容量記憶装置18は、後述する回帰モデル生成処理を実行するためのプログラム、及び回帰モデルを構築するための複数のデータ等を記憶している。なお、大容量記憶装置18は、例えばHDD(Hard Disk Drive)や半導体記憶装置であるが、特に限定されない。
【0017】
さらに、情報処理装置10は、キーボード及びマウス等から構成され、各種操作の入力を受け付ける操作入力部、各種画像を表示する、例えば液晶ディスプレイ装置等の画像表示部、通信回線を介して他の情報処理装置等と接続され、他の情報処理装置等との間で各種データの送受信を行う外部インタフェースを備えている。
【0018】
本実施形態の情報処理装置10は、逐次的にデータを取得することで組合せ最適化問題を解くための回帰モデルを少ないデータ取得回数で精度よく構築するものである。
【0019】
本実施形態の演算部12は、
図1に示されるように、データ取得部20、回帰モデル生成部22、最適解演算部24、繰返制御部26、及び条件判定部28を備える。
【0020】
データ取得部20は、回帰モデル(最適化関数)を生成するためのデータを取得する。なお、取得されるデータは、1又は複数である。また、本実施形態のデータは、一例として、説明変数と目的変数の対からなるデータである。このため、データ取得部20によるデータの取得とは、説明変数を取得すると共に、取得した説明変数と対となる目的変数も取得することである。
【0021】
回帰モデル生成部22は、データ取得部20によってそれまでに取得されたデータ集合(説明変数とこれに対となる目的変数の集合)を用いて、回帰モデルを生成する。本実施形態の回帰モデル生成部22による回帰モデルの生成に用いられるアルゴリズムは、回帰モデルの生成に用いるデータ集合が同じであれば、生成される回帰モデルも同じとなる決定的アルゴリズムである。本実施形態の決定的アルゴリズムは、一例として、ファクトライゼーション マシーン(Factorization Machines、以下「FM」ともいう。)とする。
【0022】
最適解演算部24は、回帰モデル生成部22によって生成された回帰モデルから最適解を求める。本実施形態の最適解演算部24は、生成された回帰モデルから適切な説明変数の値を最適解として求める。適切な説明変数の値とは、回帰モデル(最適化関数)によって算出される目的変数の値を最大化または最小化する説明変数の値である。
【0023】
本実施形態の最適解演算部24は、一例として、量子アニーリング(Quantum Annealing、以下「QA」ともいう、)を用いて回帰モデルから最適解を求めるが、最適解を求めるための手法はQAに限られない。
【0024】
繰返制御部26は、データ取得部20、回帰モデル生成部22及び最適解演算部24での処理を複数回繰り返し行うように制御する。すなわち、回帰モデル生成部22は、データ取得部20で取得されたデータ集合を用いて回帰モデルを生成し、最適解演算部24はその時点で生成された回帰モデルの最適解を求める。データ取得部20は、求められた最適解に基づいて、回帰モデルを生成するためのデータを取得する。なお、データ取得部20によるデータの取得は、最適解に基づくものであれば特に限定されない。そして、回帰モデル生成部22は、新たなデータ含むデータ集合を用いて新たな回帰モデルを生成する。
【0025】
このように、本実施形態の情報処理装置10は、最適解に基づいたデータ取得部20によるデータの取得と、取得されたデータ集合を用いた回帰モデルの生成とを繰り返す処理(以下「回帰モデル生成処理」という。)を実行することで、回帰モデルを構築する(
図5参照)。
【0026】
条件判定部28は、データ取得部20によるデータ取得の方法を変更する所定の条件(以下「データ取得変更条件」という。)を満たしたか否か判定する。データ取得の方法の変更とは、一例として、後述するように最適解に基づくデータの取得から、ランダムなデータの取得に変更することをいう。また、条件判定部28は演算部12内のすべての処理それぞれの後にデータ取得変更条件の判定を行ってもよい。
【0027】
ここでFMは、決定的アルゴリズムであるため、初期データ集合の偏りなどが原因となり、十分にパラメータ空間を探索できずに局所最適解から抜け出すことができない場合がある。例えば、回帰モデルから最適解を求め、この最適解から次のデータを取得するに際し、取得したデータが既に取得済みのデータ集合に含まれる場合、決定的アルゴリムでは、それ以上回帰モデルの性能を向上させることができない。
【0028】
そこで、本実施形態の情報処理装置10は、回帰モデル生成処理がデータ取得変更条件を満たした場合、前回の繰り返し処理に用いたデータ集合とは異なる基準で取得されたデータ集合を用いて、回帰モデル生成部22が回帰モデルを生成する。
【0029】
本実施形態における異なる基準でデータを取得するとは、前回生成された回帰モデルから求められた最適解に基づくことなく、データを取得することである。すなわち、異なる基準でデータを取得することによって、それまでの回帰モデルの最適解にとらわれないデータの取得が可能となる。これにより、生成される回帰モデルの最適解が局所最適解から抜け出すことができる回帰モデルを生成することが可能となる。従って、本実施形態の情報処理装置10は、より性能の高い回帰モデルを構築できる。
【0030】
なお、本実施形態の情報処理装置10は、回帰モデル生成処理がデータ取得変更条件を満たした場合に、データ取得部20がデータをランダムに取得し、回帰モデル生成部22は、データ取得部20によってランダムに取得されたデータをそれまでに取得したデータ集合に追加して、回帰モデルを生成する。これにより、回帰モデル生成処理がデータ取得変更条件を満たした場合、前回の繰り返し処理に用いたデータ集合とは異なる基準で取得されたデータ集合を用いて、回帰モデルが生成される。
【0031】
なお、本実施形態においてデータは、説明変数と目的変数が対となって構成されている。このためデータ取得変更条件を満たした場合、データ取得部20は、説明変数をランダムに取得すると共に、取得した説明変数と対となる目的変数も取得する。そして、回帰モデル生成部22は、それまでに取得したデータ集合にデータ取得部20によってランダムに取得されたデータを追加して、回帰モデルを生成する。
【0032】
このように、本実施形態の情報処理装置10は、データ取得部20によってランダムに取得されたデータを追加したデータ集合を用いて、FMが回帰モデルを生成することにより、データの取得に無作為性が導入されることとなる。その結果、決定的アルゴリズムであるFMは、確率的アルゴリズムの特性を有することとなり、回帰モデルが局所最適解にはまり込むことを抑制できる。
【0033】
また、本実施形態では、データ取得変更条件を、データの取得回数(以下「データ取得回数」という。)が所定回数に達する毎とする。この所定回数は、任意に設定され、例えば、最適解に基づいたデータ取得とランダムなデータ取得を交互に繰り返して回帰モデルが生成されてもよい。これにより、データ取得部20がデータをランダムに取得するための条件を簡易に設定できる。
【0034】
また、この所定回数は、データ取得部20によるデータの取得回数に応じて変化してもよい。例えば、データ取得回数が少ない場合にはデータ取得条件となる所定回数を少なくし、データ取得回数が多くなるに従いデータ取得条件となる所定回数を多くしてもよい。より具体的には、データ取得回数が0回から50回までの間では所定回数を10回とし、データ取得回数が51回から100回までの間では所定回数を5回とする。さらに、データ取得回数が101回以上では所定回数を2回、換言すると、回帰モデルに基づくデータの取得とランダムなデータの取得とを交互に行うとする。なお、これに限らず、例えば、データ取得回数が少ない場合にはデータ取得条件となる所定回数を多くし、データ取得回数が多くなるに従いデータ取得条件となる所定回数を少なくしてもよい。
【0035】
次に、本実施形態の回帰モデル生成処理の流れについて
図2に示すフローチャートを用いて説明する。また、回帰モデル生成処理は、情報処理装置10が備える大容量記憶装置18等の記録媒体に格納されたプログラムによって実行される。なお、このプログラムが実行されることで、プログラムに対応する方法が実行される。
【0036】
まず、ステップS100では、データ取得部20が、回帰モデルを生成するための最初のデータ集合(以下「初期データ集合」という。)を取得する。
【0037】
次のステップS102では、回帰モデル生成部22が、データ取得部20によって取得されたデータ集合を用いてFMにより回帰モデルを生成する。
【0038】
次のステップS104では、回帰モデル生成処理がデータ取得変更条件を満たしたか否かを条件判定部28が判定する。すなわち、本実施形態のステップS104では、データ取得回数が所定回数に達したか否かを判定する。なお、肯定判定の場合はステップS106へ移行し、否定判定の場合はステップS108へ移行する。
【0039】
ステップS106では、データ取得部20が、データをランダムに取得し、ステップS112へ移行する。ステップS106からステップS112を経て移行した場合のステップS102では、それまでに取得されたデータ集合にステップS106でランダムに取得されたデータを追加して、回帰モデル生成部22が新たな回帰モデルを生成する。
【0040】
なお、ステップS106でランダムに取得されたデータが、既に取得されたデータ集合に含まれる場合には、データ取得部20が新たにランダムにデータを取得し直してもよい。
【0041】
一方、ステップS108では、最適解演算部24が、ステップS102で生成された回帰モデルの最適解を求める。
【0042】
次のステップS110では、データ取得部20が、ステップS108で求められた最適解に基づいてデータを取得し、ステップS112へ移行する。ステップS110からステップS112を経て移行した場合のステップS102では、それまでに取得されたデータ集合にステップS110で新たに取得されたデータを追加して、回帰モデル生成部22が新たな回帰モデルを生成する。
【0043】
ステップS112では、終了条件を満たしたか否かを繰返制御部26が判定し、肯定判定の場合は本回帰モデル生成処理を終了し、否定判定の場合はステップS102へ移行する。なお、終了条件は、例えば、回帰モデルの生成の回数が所定回数に達した場合や、回帰モデルの性能が所定の基準を満たした場合である。
【0044】
図3は、本実施形態の回帰モデル生成処理を行った場合と行わなかった場合との比較を示す図である。
図3の横軸は、回帰モデル生成処理の繰り返し回数を示しており、
図3の縦軸は生成された回帰モデルの性能の評価指標としてlossを示しており、lossが小さいほど回帰モデルの性能が良いとされる。なお、破線aは、得られるであろう最良の回帰モデルに対応するlossの値(以下「最適loss値」という。)である。
【0045】
そして、性能線Aは、回帰モデルの生成にあたり、回帰モデルの最適解に基づいて取得されたデータとランダムに取得されたデータを交互に追加したデータ集合を用いた回帰モデルの生成を行った場合の回帰モデルの性能を示す。すなわち、性能線Aではデータ取得変更条件が、2回の繰り返し毎とされている。一方、性能線Bはランダムにデータを取得することなく、回帰モデルの最適解に基づいて取得されたデータのみからなるデータ集合を用いて生成された回帰モデルの性能を示す。
【0046】
図3の例では、繰返回数が40回ぐらいまでは、性能線A及び性能線B共に大きな違いはないが、繰返回数が増えるにしたがって、性能線A、すなわちランダムに取得されたデータを含むデータ集合を用いて生成された回帰モデルの方がより高い性能を示していることが分かる。従って、本実施形態の情報処理装置10は、より性能の高い回帰モデルを構築できる。
【0047】
(変形例)
次に、本実施形態の変形例1~4について説明する。なお、上述した実施形態及び変形例1~4は適宜組み合わされてもよい。
【0048】
(変形例1)
変形例1のデータ取得条件は、生成された回帰モデルの性能に基づく条件とする。すなわち、生成される回帰モデルの性能に基づいてデータ取得条件が設定されることで、期待する性能を有する回帰モデルを生成可能となる。
【0049】
なお、本変形例のデータ取得変更条件は、一例として、繰り返して生成された回帰モデルの性能が向上しなくなった場合とする。回帰モデルの性能が向上しなくなった場合とは、回帰モデルによって求められる最適解が局所最適解にはまり込んだ可能性を示している。このような場合に、ランダムに取得されたデータを含むデータ集合を用いて回帰モデルを生成することにより、局所最適解から抜け出し、生成される回帰モデルの性能の向上が期待できる。
【0050】
なお、本変形例における回帰モデル生成処理は、
図2に示される回帰モデル生成処理と同様である。また、回帰モデルの性能が向上しなくなった場合とは、例えば、新たな回帰モデルを生成しても、loss等の評価指標が向上しなくなった場合である。
【0051】
また、本変形例のデータ取得変更条件は、生成された回帰モデルの性能が所定の性能(以下「基準性能」という。)に達していない場合とされてもよい。例えば、基準性能を
図3で示される最適loss値の50%増とする。これにより、回帰モデルのlossが最適loss値の50%増に達するまで、回帰モデルを生成するためのデータがランダムに取得される。なお、最適loss値の50%増に達した後には、他のデータ取得変更条件が適用されてもよい。また、最適loss値は、任意に設定されてもよいし、理論的に算出されてもよい。また、基準性能は、最適loss値以外の指標に基づいて設定されてもよい。
【0052】
(変形例2)
変形例2のデータ取得変更条件は、データ取得部20によって取得されたデータが既に取得されたデータ集合に含まれる場合である。このような場合において、決定的アルゴリズムで生成される回帰モデルは、既に生成された回帰モデルと同じとなり、それ以上の性能の向上は期待できなくなる。
【0053】
そこで、データ取得部20によって取得されたデータが既に取得されたデータ集合に含まれる場合に、ランダムに取得されたデータを追加して回帰モデルを生成することで、新たな回帰モデルが生成されるので、生成される回帰モデルの性能の向上が期待できる。
【0054】
図4は、本変形例の回帰モデル生成処理の流れを示すフローチャートである。
【0055】
まず、ステップS100では、データ取得部20が、回帰モデルを生成するための初期データを取得する。次のステップS102では、回帰モデル生成部22が、データ取得部20によって取得されたデータを追加してFMにより回帰モデルを生成する。
【0056】
次のステップS104では、最適解演算部24が、ステップS102で生成された回帰モデルの最適解を求める。
【0057】
次のステップS120では、データ取得部20が、ステップS104で求められた最適解に基づいてデータを取得する。
【0058】
次のステップS122では、回帰モデル生成処理がデータ取得変更条件を満たしたか否かを条件判定部28が判定する。すなわち、ステップS122では、ステップS120で取得されたデータが、既に取得されたデータ集合に含まれるか否かを判定する。
【0059】
なお、ステップS122において肯定判定の場合はステップS124へ移行し、否定判定の場合はステップS126へ移行する。ステップS122から否定判定によってステップS126を経て移行した場合のステップS102では、それまでに取得されたデータ集合にステップS120で新たに取得されたデータを追加して、回帰モデル生成部22が新たな回帰モデルを生成する。
【0060】
ステップS124では、データ取得部20が、データをランダムに取得し、ステップS126へ移行する。ステップS124からステップS126を経て移行した場合のステップS102では、それまでに取得されたデータ集合にステップS124でランダムに取得されたデータを追加して、回帰モデル生成部22が新たな回帰モデルを生成する。
【0061】
ステップS126では、終了条件を満たしたか否かを繰返制御部26が判定し、肯定判定の場合は本回帰モデル生成処理を終了し、否定判定の場合はステップS102へ移行する。
【0062】
(変形例3)
変形例3では、回帰モデル生成処理がデータ取得変更条件を満たした場合、それまでに取得したデータ集合の部分集合を用いて回帰モデルを生成する。本変形例の部分集合は、既に取得したデータ集合の中からランダムに決定される。
【0063】
このように、上記第1実施形態及び変形例1,2では、回帰モデルを生成するためのデータ取得のランダム性に関するのであるが、本変形例は、回帰モデルを生成するためのデータ集合のランダム性に関するものである。
【0064】
本変形例のように、それまでに取得したデータ集合のうちランダムに取得した部分集合を用いて回帰モデルを生成する方法は、確率的勾配降下法(Stochastic Gradient Descent、SGD))の概念と同様である。
【0065】
これにより、本変形例では、異なる基準で取得されたデータ集合から回帰モデルが生成されるので、FMに確率的アルゴリズムの特徴を備えることができる。
【0066】
図5は、本変形例の回帰モデル生成処理の流れを示すフローチャートである。
【0067】
図5に示されるように、ステップS104で肯定判定となった場合、ステップS105では、回帰モデル生成部22がデータ集合の部分集合を取得する。そして、ステップS105からステップS112を経て移行した場合のステップS102では、それまでに取得されたデータ集合を用いることなく、ステップS105で取得した部分集合を用いて、回帰モデル生成部22が新たな回帰モデルを生成する。
【0068】
また、部分集合を用いて回帰モデルを生成した後に、さらにステップS108,S110によって新たなデータを取得した場合、ステップ102では、新たに取得されたデータをそれまでに取得したデータ集合に追加して回帰モデルを生成する。
【0069】
なお、部分集合を用いて回帰モデルを生成した後に、ステップS108,S110によって取得されたデータがそれまでに取得したデータに含まれている場合には、変形例2で説明したように、データ取得変更条件を満たすとしてランダムにデータを取得し、このデータを部分集合に追加して回帰モデルを生成してもよい。
【0070】
なお、本変形例では、部分集合はデータ集合からランダムに取得されるのではなく、データ集合の中から所定の基準で予め定められてもよい。
【0071】
(変形例4)
変形例4では、データ取得変更条件がデータ取得回数に応じて変化する。これにより、データ取得回数に応じて偏りなく、ランダムなデータの取得が行われる。
【0072】
例えば、データ取得変更条件を、回帰モデルの性能が所定の性能に達した場合とすると、回帰モデルの生成の繰り返し数が多い場合(繰り返しの終盤)でないと、ランダムなデータの取得は行われない。そこで、回帰モデルの生成の繰り返し数が少ない場合であってもランダムなデータの取得が行われるように、例えば、データ取得回数が100回未満では、データ取得回数が所定回数に達する毎にランダムなデータの取得が行われるとする。
【0073】
また、データ取得変更条件を、回帰モデルの性能が所定の性能に達していない場合とすると、回帰モデルの生成の繰り返し数が少ない場合(繰り返しの序盤)でないと、ランダムなデータの取得は行われない。そこで、回帰モデルの生成の繰り返し数が多い場合であってもランダムなデータの取得が行われるように、例えば、データ取得回数が100回以上では、データ取得回数が所定回数に達する毎にランダムなデータの取得が行われるとする。
【0074】
以上、本発明を、上記実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更又は改良を加えることができ、該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。
【0075】
上記実施形態では、回帰モデル生成処理がデータ取得変更条件を満たした場合に、回帰モデル生成部22が回帰モデルの生成に用いるデータ集合にランダムさを導入する形態について説明したが、本発明はこれに限定されない。回帰モデル生成処理がデータ取得変更条件を満たした場合、異なる基準で取得されたデータ集合を用いて回帰モデルの生成が行われれば良く、例えば、複数のデータ集合を用意し、それらをランダムあるいは予め定められた順番で回帰モデル生成部22による回帰モデルの生成に用いてもよい。
【0076】
また、上記実施形態では、回帰モデルを生成するアルゴリズムをFM(Factorization Machine)とする形態について説明したが、本発明はこれに限定されず、回帰モデルを生成するアルゴリズムは、決定的アルゴリズムであれば他のアルゴリズムでもよい。
【符号の説明】
【0077】
10・・・情報処理装置、20・・・データ取得部、22・・・回帰モデル生成部、
24・・・最適解演算部