JP6464057B2 - 予測装置、方法、及びプログラム - Google Patents

予測装置、方法、及びプログラム Download PDF

Info

Publication number
JP6464057B2
JP6464057B2 JP2015166038A JP2015166038A JP6464057B2 JP 6464057 B2 JP6464057 B2 JP 6464057B2 JP 2015166038 A JP2015166038 A JP 2015166038A JP 2015166038 A JP2015166038 A JP 2015166038A JP 6464057 B2 JP6464057 B2 JP 6464057B2
Authority
JP
Japan
Prior art keywords
matrix
vector
eigenvalue
function
secondary weight
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.)
Active
Application number
JP2015166038A
Other languages
English (en)
Other versions
JP2017045191A (ja
Inventor
ブロンデル マチュー
ブロンデル マチュー
昭典 藤野
昭典 藤野
上田 修功
修功 上田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015166038A priority Critical patent/JP6464057B2/ja
Publication of JP2017045191A publication Critical patent/JP2017045191A/ja
Application granted granted Critical
Publication of JP6464057B2 publication Critical patent/JP6464057B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、予測装置、方法、及びプログラムに係り、特に、入力された特徴ベクトルに対する目的変数を予測する予測装置、方法、及びプログラムに関する。
統計的手法に基づく予測技術では、データと目的変数の依存関係を表すモデルを特徴ベクトルとモデルパラメータの関数として与え、モデルを用いて特徴ベクトルに対する目的変数の値を推定する。モデルパラメータの値は、一般的に、目的変数が判明しているデータを用いて求める。1次特徴と2次特徴とが扱えるモデルの例として、factorization machines(FM)がある(非特許文献1、2)。FMでは、以下の式(1)に示すモデル関数を用いる。なお、記号の後に付された「^」は、当該記号が行列、多次元配列、又はベクトルであることを表している。
ここで、x^=[x,...,x∈Rは入力特徴ベクトル、w^∈Rは1次重みベクトル、V^V^は低ランクの2次重み行列(V^∈Rd×k)、k≪dはハイパーパラメータである。また、Τはベクトル転置を示す。
非特許文献1、2では、w^とV^との推定値を以下の目的関数を最小化することで得る。
ここで、(x^,y),...,(x^,y)は目的変数が判明している訓練データであり、l(y,y)は2回微分可能凸の損失関数を表し、α>0とβ>0はハイパーパラメータである。
S. Rendle,"Factorization machines with libfm",ACM Transactions on Intelligent Systems and Technology, (2012), vol. 3, p.57-78. S. Rendle,"Factorization machines",Proceedings of International Conference on Data Mining, (2010), p.995-1000.
従来のFMでは、w^とV^とを上記式(2)を最小化することによって得られる。しかし、上記式(2)はV^に対して非凸であるため、最適なパラメータが得られる保証はない。また、2次の重み行列V^V^が非負定値である必要があり、対角成分が無視されているために、データに適合しない可能性があるなどの問題点がある。2次重み行列が非負定値でなくても良く、対角成分が使われても良く、最適なパラメータ値が得られるアルゴリズムを開発し、パラメータ値を少ない計算量で求めることが課題である。
本発明では、上記事情に鑑みて成されたものであり、目的変数を精度よく予測することができる予測装置、方法、及びプログラムを提供することを目的とする。
上記目的を達成するために、第1の発明に係る予測装置は、特徴ベクトルから目的変数を予測するためのモデル関数であり、かつ前記特徴ベクトルの1次特徴に対する1次重みベクトルw^と前記特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含む前記モデル関数と、前記モデル関数による予測値の誤差を表す損失関数、及び前記2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、前記モデル関数のモデルパラメータとに基づいて、入力された特徴ベクトルに対する目的変数を予測する予測部、を含んで構成されている。
第2の発明に係る予測方法は、予測部を含む予測装置における予測方法であって、前記予測部が、特徴ベクトルから目的変数を予測するためのモデル関数であり、かつ前記特徴ベクトルの1次特徴に対する1次重みベクトルw^と前記特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含む前記モデル関数と、前記モデル関数による予測値の誤差を表す損失関数、及び前記2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、前記モデル関数のモデルパラメータとに基づいて、入力された特徴ベクトルに対する目的変数を予測するステップを含む。
また、第1及び第2の発明において、前記モデルパラメータは、訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記訓練データを用いた前記損失関数と前記1次重みベクトルw^のノルムとを含む第1の目的関数が最適化されるように前記1次重みベクトルw^が更新され、前記訓練データに基づいて、前記2次重み行列の固有ベクトルp^が各列ベクトルである行列P^と前記2次重み行列の固有値のベクトルλ^とから求められる2次重み行列Zλ^を用いた前記損失関数の勾配から固有ベクトルp^が計算され、前記計算された固有ベクトルp^と前記2次重み行列Zλ^とから求められる2次重み行列を用いた前記損失関数と固有値λとから固有値λが計算され、前記固有ベクトルp^から前記固有ベクトルp^が各列ベクトルである行列P^が生成され、前記固有値λから前記固有値λを要素とする固有値のベクトルλ^が生成され、前記固有値のベクトルλ^のノルムと前記2次重み行列Zλ^を用いた前記損失関数との和から前記固有値のベクトルλ^が調整され、又は前記行列P^と所定の行列A^から生成されるP^A^P^を2次重み行列として用いた前記損失関数が最適化されることにより前記行列A^が生成され、前記行列A^を固有値分解することにより行列Q^及び行列Σ^が生成され、前記行列Q^から前記行列P^が調整され、前記行列Σ^から前記固有値のベクトルλ^が調整されることによって、前記損失関数と前記核ノルムとを含む第2の目的関数が最適化されることにより、前記行列P^と前記固有値のベクトルλ^とから生成される前記2次重み行列Z^が更新されることが繰り返されることによって推定された前記モデルパラメータであるようにすることができる。
また、第1及び第2の発明において、訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記目的関数を最適化することにより前記モデルパラメータを推定する学習部を更に含むようにすることができる。
また、本発明のプログラムは、コンピュータを、上記の予測装置を構成する各部として機能させるためのプログラムである。
以上説明したように、本発明の予測装置、方法、及びプログラムによれば、特徴ベクトルの1次特徴に対する1次重みベクトルw^と特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含むモデル関数と、モデル関数による予測値の誤差を表す損失関数、及び2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、モデル関数のモデルパラメータとに基づいて、入力された特徴ベクトルに対する目的変数を予測することにより、目的変数を精度よく予測することができる、という効果が得られる。
本発明の実施の形態の概要を説明するための図である。 本実施の形態において用いるアルゴリズムの例を示す図である。 本実施の形態において用いるアルゴリズムの例を示す図である。 本発明の実施の形態に係る予測装置の機能的構成を示すブロック図である。 本実施の形態に係る予測装置における学習処理ルーチンを示すフローチャート図である。 本実施の形態に係る予測装置におけるモデルパラメータ推定処理ルーチンを示すフローチャート図である。 本実施の形態に係る予測装置における予測処理ルーチンを示すフローチャート図である。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
<本実施の形態の概要>
本実施の形態では、特徴ベクトルで表現可能なデータに対応する目的変数(例えば、種別を表すカテゴリ)を予測する際に、目的変数が判明している訓練データを用いて、1次特徴と2次特徴とが扱えるモデル関数のモデルパラメータを推定し、当該モデル関数を用いて新たなデータに対応する目的変数を自動で予測する予測装置に本発明を適用した場合を例に説明する。
図1に、本実施の形態の概要を説明するための図を示す。図1に示すように、本実施の形態は、「モデルパラメータの推定」と「新規のデータに対する目的変数予測」との処理を含む。
本実施の形態の「モデルパラメータの推定」では、上記図1に示すように、目的変数が判明しているデータである訓練データから、モデルパラメータである、1次重みベクトルw^及び2次重み行列Z^を推定する。
そして、本実施の形態における「新規のデータに対する目的変数予測」では、上記図1に示すように、目的変数が判明していない新規のデータである特徴ベクトルx^と、モデルパラメータである、1次重みベクトルw^及び2次重み行列Z^を用いて、当該特徴ベクトルx^の目的変数を予測する。
<本実施の形態の原理>
次に、本実施の形態における原理について説明する。本実施の形態においては、目的変数である上記式(2)を最小化する2次重み行列V^V^を直接求めるのではなく、上記式(2)中の第3項の代わりに、凸関数である核ノルムを用いた2次重み行列の正則化を導入した目的関数の最小化により、2次重み行列を求める。
本実施の形態において、モデル関数は、特徴ベクトルから目的変数を予測するためのものであり、かつ特徴ベクトルの1次特徴に対する1次重みベクトルw^と特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含む。具体的に、本実施の形態では、上記式(1)のモデル関数を、以下の式(3)に示すモデル関数に変える。
ここで、Z^∈Rd×dは2次重み行列を表す。
本実施の形態では、モデルパラメータである、1次重みベクトルw^及び2次重み行列Z^を、以下の式(4)に示す目的関数を最小化することで得る。
ここで、
はZの核ノルム(nuclear norm)である。
また、λ^はZ^の固有値を表すベクトルである。従って、本実施の形態における目的関数は、上記式(4)に示すように、モデル関数による予測値の誤差を表す損失関数、及び2次重み行列Z^の核ノルムを含む。
ここで、任意の対象行列Z^∈Rd×dに対して、固有値分解
が存在している。なお、P^は正規直交行列、p^∈RはP^のs番目の列、Λ^=diag(λ^)は対角行列、λはλ^の要素である。この分解によって、以下の式(5)を用いて予測値を計算することができる。
また、上記式(5)の計算コストはオーダーO(rank(Z)d)である。
なお、別法として、上記式(3)の代わりに、以下の式(6)に示すモデル関数も用いることができる。
上記式(3)は対角成分を利用しているのに対して、上記式(6)は対角成分を無視している。上記式(6)をモデル関数として用いた場合には、上記式(5)の予測式は以下の式(7)に示すようになる。
ここで、
はp^とx^との要素毎の積を表す。上記式(7)の計算コストもオーダーO(rank(Z^)d)である。
本実施の形態では、モデル関数として上記式(3)に示すモデル関数を用い、目的関数として上記式(4)に示す目的関数を用いる場合を例に説明する。
本実施の形態では、1次重みベクトルw^と2次重み行列Z^=P^Λ^P^とを求めるために、図2に示すアルゴリズム1を用いる。図2に示すように、Step1では2次重み行列Z^を固定し、1次重みベクトルw^のみを更新する。図2に示す式(8)を最小化するには、L‐BFGS(例えば、以下に示す非特許文献3)、conjugate gradient(例えば、以下に示す非特許文献4)等を用いることができる。Step2では、1次重みベクトルw^を固定し、2次重み行列Z^=P^Λ^P^のみを更新する。
上記図2に示す式(9)を最小化するには、図3に示すアルゴリズム2を用いる。本実施の形態では、上記図2に示すアルゴリズム1に示す処理と、上記図3に示すアルゴリズム2の処理とを、収束するまで繰り返す。上記図2に示すアルゴリズム1を用いると、上記式(4)による最適なモデルパラメータが得られる保証がある。
また、上記図3に示すアルゴリズム2では、Step1をべき乗法又はランチョス法によって行うことができる。Step2は1変量の問題であり、lが2乗損失関数の場合、解析的に解くことができる。lが他の損失関数の場合は、数値的に解ける。また、Step4の式(10)をcoordinate descent(例えば、以下に示す非特許文献7)を用いて効率的に解くことができる。また、Step4の式(11)をFISTA(例えば、以下に示す非特許文献5)やADMM(例えば、以下に示す非特許文献6)で効率的に解くことができる。
[非特許文献3]D. Liu and J. Nocedal,“On the limited memory BFGS method for large scale optimization”, Mathematical programming, (1989), vol. 45, p.503-528.
[非特許文献4]M. Hestenes and E. Stiefel,“Methods of Conjugate Gradients for Solving Linear Systems”, Journal of Research of the National Bureau of Standards, (1952)
[非特許文献5]A. Beck and M. Teboulle,“A fast iterative shrinkage-thresholding algorithm for linear inverse problems”, SIAM journal on imaging sciences , (2009), vol. 2, p.183-202.
[非特許文献6]S. Boyd, N. Parikh, E. Chu, B. Peleato and J. Eckstein,“Distributed optimization and statistical learning via the alternat-ing direction method of multipliers”, Foundations and Trends in Machine Learning, (2011), vol. 3, p.1-122.
[非特許文献7]Dudik, M., Harchaoui, Z., Malick, J.,“Lifted coordinate descent for learning with trace-norm regularization.”, AISTATS, (2012), vol. 22, p.327-336
<本発明の実施の形態に係る予測装置の構成>
次に、本発明の実施の形態に係る予測装置の構成について説明する。図4は、本発明の実施の形態に係る予測装置100を示すブロック図である。この予測装置100は、CPUと、RAMと、後述する各処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図4に示すように、本実施の形態に係る予測装置100は、入力部10と、演算部20と、出力部30と、を含んで構成されている。
入力部10は、訓練用特徴ベクトルと当該訓練用特徴ベクトルに対する目的変数との複数のペア(x^,y),...,(x^,y)である訓練データを受け付け、訓練データ記憶部22に記憶する。また、入力部10は、目的変数の予測対象となる特徴ベクトルx^を受け付ける。また、入力部10は、パラメータ推定処理において、diagonal refitting及びfully-corrective refittingの何れの処理を用いるかを表す処理情報を受け付ける。処理情報は、ユーザによって予め定められる。
演算部20は、学習部21と、予測部28とを含んで構成されている。
学習部21は、入力部10によって受け付けた訓練データに基づいて、モデルパラメータを推定する。また、学習部21は、訓練データ記憶部22と、パラメータ推定部24と、モデルパラメータ記憶部26とを含んで構成されている。
訓練データ記憶部22には、入力部10において受け付けた訓練データが記憶されている。
パラメータ推定部24は、訓練データ記憶部22に記憶されている訓練データに基づいて、上記(4)式に示す目的関数を最適化することによりモデルパラメータを推定する。上記式(4)に示す2次重み行列Z^の核ノルムを含む目的関数が最適化されるようにモデルパラメータを推定することにより、低ランクの2次重み行列Z^を得ることができる。なお、モデルパラメータの推定処理では、2次重み行列Z^はZ^=P^Λ^P^の形式で扱われる。
具体的には、パラメータ推定部24は、訓練データ記憶部22に記憶されている訓練データに基づいて、上記図2の式(8)に示す、訓練データを用いた損失関数と1次重みベクトルw^のノルムとを含む第1の目的関数が最適化されるように、1次重みベクトルw^を更新する。
次に、パラメータ推定部24は、訓練データ記憶部22に記憶されている訓練データに基づいて、上記図2の式(9)に示す、訓練データを用いた損失関数と核ノルムとを含む第2の目的関数が最適化されるように、行列P^と固有値のベクトルλ^とから生成される2次重み行列Z^を更新する。
パラメータ推定部24は、予め定められた終了条件が満たされるまで、1次重みベクトルw^の更新と、2次重み行列Z^の更新とを繰り返すことにより、モデルパラメータである1次重みベクトルw^及び2次重み行列Z^を推定する。
本実施の形態では、2次重み行列Z^の更新には、上記図3のアルゴリズム2を用いる。
パラメータ推定部24は、上記図3のアルゴリズム2のStep1に示すように、訓練データに基づいて、2次重み行列の固有ベクトルp^が各列ベクトルである行列P^と2次重み行列の固有値のベクトルλ^とから求められる2次重み行列Zλ^を用いた損失関数の勾配から、固有ベクトルp^を計算する。
そして、パラメータ推定部24は、上記図3のアルゴリズム2のStep2に示すように、計算された固有ベクトルp^と2次重み行列Zλ^とから求められる2次重み行列を用いた損失関数と固有値λとから、固有値λを計算する。
次に、パラメータ推定部24は、上記図3のアルゴリズム2のStep3に示すように、計算された固有ベクトルp^から固有ベクトルp^が各列ベクトルである行列P^を生成し、計算された固有値λから固有値λを要素とする固有値のベクトルλ^を生成する。
次に、パラメータ推定部24は、入力部10において受け付けた処理情報に応じて、上記図3のアルゴリズム2のStep4に示すようにdiagonal refittingあるいはfully-corrective refittingを用いてパラメータ調整を行う。Step4(diagonal refitting case)を用いた場合、パラメータ推定部24は、現在の繰り返しにおける固有値のベクトルλ^をλ^に格納する。そして、パラメータ推定部24は、アルゴリズム2のStep4(diagonal refitting case)に示すように、固有値のベクトルλ^のノルムと2次重み行列Zλ^を用いた損失関数との和から、固有値のベクトルλ^を調整する。
Step4(fully-corrective refitting case)を用いた場合、パラメータ推定部24は、行列P^と所定の行列A^から生成されるP^A^P^を2次重み行列として用いた損失関数を最適化することにより行列A^を生成する。そして、パラメータ推定部24は、生成された行列A^を固有値分解することにより行列Q^及び行列Σ^を生成する。そして、パラメータ推定部24は、行列Q^から行列P^を調整し、行列Σ^から固有値のベクトルλ^を調整する。
パラメータ推定部24は、予め定められた収束条件を満たすまで、上記Step1〜Step4の処理を繰り返す。
そして、パラメータ推定部24は、推定されたモデルパラメータを、モデルパラメータ記憶部26に記憶する。
モデルパラメータ記憶部26には、パラメータ推定部24において推定されたモデルパラメータが記憶されている。
予測部28は、上記式(3)に示すモデル関数と、モデルパラメータ記憶部26に記憶されているモデルパラメータとに基づいて、上記(5)に従って、入力部10において受け付けた特徴ベクトルに対する目的変数を予測する。
出力部30は、予測部28によって予測された目的変数を、結果として出力する。
<本発明の実施の形態に係る予測装置のモデルパラメータ推定の作用>
次に、本発明の実施の形態に係る予測装置100の作用について説明する。まず、訓練データと処理情報との入力を受け付けると、予測装置100は、図5に示す学習処理ルーチンを実行する。また、学習処理ルーチンが終了すると、予測装置100は、入力部10から予測対象となる特徴ベクトルx^を受け付け、図7に示す予測処理ルーチンを実行する。
まず、図5に示す学習処理ルーチンについて説明する。
<学習処理ルーチン>
ステップS100において、入力部10は、訓練データの入力を受け付け、訓練データ記憶部22に格納する。
次に、ステップS102において、学習部21は、上記ステップS100で訓練データ記憶部22に格納された訓練データに基づいて、モデルパラメータを推定する。ステップS102は、図6に示すモデルパラメータ推定処理ルーチンによって実現される。
<モデルパラメータ推定処理ルーチン>
ステップS200において、パラメータ推定部24は、訓練データ記憶部22に格納された訓練データを取得する。また、パラメータ推定部24は、入力された処理情報を取得する。
ステップS202において、パラメータ推定部24は、モデルパラメータである、1次重みベクトルw^及び2次重み行列Z^を初期化する。
ステップS204において、パラメータ推定部24は、上記ステップS200で取得された訓練データに基づいて、上記図2の式(8)に示す、訓練データを用いた損失関数と上記ステップS202で初期化された1次重みベクトルw^のノルム又は前回の本ステップS204で更新された1次重みベクトルw^のノルムとを含む第1の目的関数が最適化されるように、1次重みベクトルw^を更新する。
ステップS206において、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、上記ステップS200で取得された訓練データに基づいて、2次重み行列の固有ベクトルp^が各列ベクトルである行列P^と2次重み行列の固有値のベクトルλ^とから求められる2次重み行列Zλ^を用いた損失関数の勾配から、固有ベクトルp^を計算する。
ステップS208において、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、上記ステップS200で取得された訓練データに基づいて、上記ステップS206で計算された固有ベクトルp^と2次重み行列Zλ^とから求められる2次重み行列を用いた損失関数と固有値λとから、固有値λを計算する。
ステップS210において、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、上記ステップS206で計算された固有ベクトルp^から、固有ベクトルp^が各列ベクトルである行列P^を生成し、上記ステップS208で計算された固有値λから、固有値λを要素とする固有値のベクトルλ^を生成する。
ステップS211において、パラメータ推定部24は、上記ステップS200で取得した処理情報に応じて、上記図3のアルゴリズム2のStep4に示すdiagonal refitting及びfully-corrective refittingの何れかの処理を選択する。diagonal refittingの処理が選択された場合には、ステップS212へ進む。一方、fully-corrective refittingの処理が選択された場合には、ステップS214へ進む。
ステップS212において、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、現在の繰り返しにおける固有値のベクトルλ^をλ^に格納する。そして、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、上記ステップS200で取得された訓練データに基づいて、固有値のベクトルλ^のノルムと2次重み行列Zλ^を用いた損失関数との和から、上記ステップS210で生成された固有値のベクトルλ^を調整する。
ステップS214において、パラメータ推定部24は、上記図3のアルゴリズム2に示すように、上記ステップS200で取得された訓練データに基づいて、行列P^と所定の行列A^から生成されるP^A^P^を2次重み行列として用いた損失関数を最適化することにより行列A^を生成する。そして、パラメータ推定部24は、生成された行列A^を固有値分解することにより行列Q^及び行列Σ^を生成する。そして、パラメータ推定部24は、行列Q^に基づき上記ステップS210で生成された行列P^を調整し、行列Σ^に基づき上記ステップS210で生成された固有値のベクトルλ^を調整する。
ステップS216において、パラメータ推定部24は、予め定められた収束条件が満たされたか否かを判定する。収束条件が満たされた場合には、ステップS218へ進む。収束条件が満たされていない場合には、ステップS206へ戻る。
ステップS218において、パラメータ推定部24は、上記ステップS210で生成された行列P^及び上記ステップS212で調整された固有値のベクトルλ^、又は上記ステップS214で調整された行列P^及び固有値のベクトルλ^に基づいて、2次重み行列Z^を更新する。
ステップS220において、パラメータ推定部24は、予め定められた終了条件が満たされたか否かを判定する。終了条件が満たされた場合には、ステップS222へ進む。終了条件が満たされていない場合には、ステップS204へ戻る。
ステップS222において、パラメータ推定部24は、上記ステップS204で得られた1次重みベクトルw^と、上記ステップS218で得られた2次重み行列Z^とを結果として出力して、モデルパラメータ推定処理ルーチンを終了する。
次に、学習処理ルーチンに戻り、ステップS104において、パラメータ推定部24は、上記ステップS102で出力された1次重みベクトルw^及び2次重み行列Z^を、モデルパラメータとしてモデルパラメータ記憶部26に格納して、学習処理ルーチンを終了する。
次に、図7に示す予測処理ルーチンについて説明する。予測装置100の入力部10が、予測対象の特徴ベクトルの入力を受け付けると、予測装置100は、図7に示す予測処理ルーチンを実行する。
<予測処理ルーチン>
ステップS300において、予測部28は、モデルパラメータ記憶部26に記憶されているモデルパラメータを読み込む。
ステップS302において、予測部28は、上記式(3)に示すモデル関数と、上記ステップS300で読み込まれたモデルパラメータとに基づいて、上記(5)に従って、入力部10において受け付けた特徴ベクトルに対する目的変数を予測する。
ステップS304において、出力部30は、上記ステップS302で予測された目的変数を結果として出力して、予測処理ルーチンを終了する。
以上説明したように、本発明の実施の形態に係る予測装置によれば、特徴ベクトルの1次特徴に対する1次重みベクトルw^と特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含むモデル関数と、モデル関数による予測値の誤差を表す損失関数、及び2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、モデル関数のモデルパラメータとに基づいて、入力された特徴ベクトルに対する目的変数を予測することにより、目的変数を精度よく予測することができる。
また、訓練データに基づいて、モデル関数による予測値の誤差を表す損失関数、及び2次重み行列Z^の核ノルムを含む目的関数を最適化することにより、目的変数を精度よく予測するためのモデルパラメータを推定することができる。
また、本実施の形態では、2次重み行列Z^の核ノルムを含む目的関数を定義することにより、目的関数が凸となり、モデル関数の最適なモデルパラメータの値を得る保証がある。また、2次重み行列に対する制約(非負定値であることと対角成分が無視されること)がないため、個々のデータにより適したモデルパラメータが得られることが期待できる。
また、2次重み行列Z^の核ノルムを含む目的関数が最適化されるようにモデルパラメータを推定することにより、低ランクの2次重み行列Z^を得ることができる。
なお、上記図3に示すStep4のfully-corrective refittingの処理を用いた場合には、処理の繰り返し回数は少なくなるが、各繰り返しにおける計算コストは高くなる。一方、diagonal refittingの処理を用いた場合には、各繰り返しにおける計算コストは低くなるが、処理の繰り返し回数は多くなる。
また、diagonal refittingの処理を用いた場合と、fully-corrective refittingの処理を用いた場合と、他の従来の計算手法とを比較した結果、fully-corrective refittingの処理を用いた場合に、目的関数の値及びテストデータに対するRMSE(Root mean squared error)の値が最も良いという結果が得られた。
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
例えば、上記の実施の形態では、上記図3に示すStep4において、パラメータ推定部24は、ユーザによって予め定められた処理情報に応じて、diagonal refitting及びfully-corrective refittingの何れかの処理を選択する場合を例に説明したが、これに限定されるものではない。例えば、diagonal refitting及びfully-corrective refittingの何れの処理を実行するのかが予め定められていてもよい。
上述の予測装置100では、訓練データ記憶部22及びモデルパラメータ記憶部26を備えている場合について説明したが、例えば訓練データ記憶部22及びモデルパラメータ記憶部26の少なくとも1つが予測装置100の外部装置に設けられ、予測装置100は、外部装置と通信手段を用いて通信することにより、訓練データ記憶部22及びモデルパラメータ記憶部26の少なくとも1つを参照するようにしてもよい。
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
10 入力部
20 演算部
21 学習部
22 訓練データ記憶部
24 パラメータ推定部
26 モデルパラメータ記憶部
28 予測部
30 出力部
100 予測装置

Claims (5)

  1. 特徴ベクトルから目的変数を予測するためのモデル関数であり、かつ前記特徴ベクトルの1次特徴に対する1次重みベクトルw^と前記特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含む前記モデル関数と、
    前記モデル関数による予測値の誤差を表す損失関数、及び前記2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、前記モデル関数のモデルパラメータとに基づいて、
    入力された特徴ベクトルに対する目的変数を予測する予測部
    を含み、
    前記モデルパラメータは、
    訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記訓練データを用いた前記損失関数と前記1次重みベクトルw^のノルムとを含む第1の目的関数が最適化されるように前記1次重みベクトルw^が更新され、
    前記訓練データに基づいて、
    前記2次重み行列の固有ベクトルp^が各列ベクトルである行列P^と前記2次重み行列の固有値のベクトルλ^とから求められる2次重み行列Z λ ^を用いた前記損失関数の勾配から固有ベクトルp^が計算され、前記計算された固有ベクトルp^と前記2次重み行列Z λ ^とから求められる2次重み行列を用いた前記損失関数と固有値λとから固有値λが計算され、
    前記固有ベクトルp^から前記固有ベクトルp^が各列ベクトルである行列P^が生成され、前記固有値λから前記固有値λを要素とする固有値のベクトルλ^が生成され、
    前記固有値のベクトルλ^のノルムと前記2次重み行列Z λ ^を用いた前記損失関数との和から前記固有値のベクトルλ^が調整され、又は
    前記行列P^と所定の行列A^から生成されるP^A^P^ を2次重み行列として用いた前記損失関数が最適化されることにより前記行列A^が生成され、前記行列A^を固有値分解することにより行列Q^及び行列Σ^が生成され、前記行列Q^から前記行列P^が調整され、前記行列Σ^から前記固有値のベクトルλ^が調整されることによって、
    前記損失関数と前記核ノルムとを含む第2の目的関数が最適化されることにより、前記行列P^と前記固有値のベクトルλ^とから生成される前記2次重み行列Z^が更新されることが繰り返されることによって推定された前記モデルパラメータである、
    予測装置。
  2. 訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記目的関数を最適化することにより前記モデルパラメータを推定する学習部を更に含む
    請求項1に記載の予測装置。
  3. 予測部を含む予測装置における予測方法であって、
    前記予測部が、特徴ベクトルから目的変数を予測するためのモデル関数であり、かつ前記特徴ベクトルの1次特徴に対する1次重みベクトルw^と前記特徴ベクトルの2次特徴に関する対角成分を含む全ての要素からなる2次重み行列Z^とを含む前記モデル関数と、
    前記モデル関数による予測値の誤差を表す損失関数、及び前記2次重み行列Z^の核ノルムを含む目的関数を最適化することにより予め推定された、前記モデル関数のモデルパラメータとに基づいて、
    入力された特徴ベクトルに対する目的変数を予測するステップ
    を含み、
    前記モデルパラメータは、
    訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記訓練データを用いた前記損失関数と前記1次重みベクトルw^のノルムとを含む第1の目的関数が最適化されるように前記1次重みベクトルw^が更新され、
    前記訓練データに基づいて、
    前記2次重み行列の固有ベクトルp^が各列ベクトルである行列P^と前記2次重み行列の固有値のベクトルλ^とから求められる2次重み行列Z λ ^を用いた前記損失関数の勾配から固有ベクトルp^が計算され、前記計算された固有ベクトルp^と前記2次重み行列Z λ ^とから求められる2次重み行列を用いた前記損失関数と固有値λとから固有値λが計算され、
    前記固有ベクトルp^から前記固有ベクトルp^が各列ベクトルである行列P^が生成され、前記固有値λから前記固有値λを要素とする固有値のベクトルλ^が生成され、
    前記固有値のベクトルλ^のノルムと前記2次重み行列Z λ ^を用いた前記損失関数との和から前記固有値のベクトルλ^が調整され、又は
    前記行列P^と所定の行列A^から生成されるP^A^P^ を2次重み行列として用いた前記損失関数が最適化されることにより前記行列A^が生成され、前記行列A^を固有値分解することにより行列Q^及び行列Σ^が生成され、前記行列Q^から前記行列P^が調整され、前記行列Σ^から前記固有値のベクトルλ^が調整されることによって、
    前記損失関数と前記核ノルムとを含む第2の目的関数が最適化されることにより、前記行列P^と前記固有値のベクトルλ^とから生成される前記2次重み行列Z^が更新されることが繰り返されることによって推定された前記モデルパラメータである、
    予測方法。
  4. 学習部が、訓練用特徴ベクトルと前記訓練用特徴ベクトルに対する目的変数との複数のペアである訓練データに基づいて、前記目的関数を最適化することにより前記モデルパラメータを推定するステップを更に含む請求項に記載の予測方法。
  5. コンピュータを、請求項1又は請求項2に記載の予測装置を構成する各部として機能させるためのプログラム。
JP2015166038A 2015-08-25 2015-08-25 予測装置、方法、及びプログラム Active JP6464057B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015166038A JP6464057B2 (ja) 2015-08-25 2015-08-25 予測装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015166038A JP6464057B2 (ja) 2015-08-25 2015-08-25 予測装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2017045191A JP2017045191A (ja) 2017-03-02
JP6464057B2 true JP6464057B2 (ja) 2019-02-06

Family

ID=58211397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015166038A Active JP6464057B2 (ja) 2015-08-25 2015-08-25 予測装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6464057B2 (ja)

Also Published As

Publication number Publication date
JP2017045191A (ja) 2017-03-02

Similar Documents

Publication Publication Date Title
EP3504666B1 (en) Asychronous training of machine learning model
Markovsky et al. Overview of total least-squares methods
Yuan et al. A novel adaptive importance sampling algorithm based on Markov chain and low-discrepancy sequence
Alexandru et al. Fast estimator of Jacobians in the Monte Carlo integration on Lefschetz thimbles
Csáji et al. Non-asymptotic confidence regions for the least-squares estimate
Billups et al. Derivative-free optimization of expensive functions with computational error using weighted regression
JP7267966B2 (ja) 情報処理装置及び情報処理方法
Kumar et al. Calibrating transient models with multiple responses using Bayesian inverse techniques
JP2019215750A (ja) 解析装置、解析方法、およびプログラム
Bilionis et al. Multidimensional adaptive relevance vector machines for uncertainty quantification
JP2019185163A (ja) データ予測装置、方法、及びプログラム
JP7497516B2 (ja) 等式制約を代数モデルに課すための射影方法
JP7396024B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6464057B2 (ja) 予測装置、方法、及びプログラム
CN109728958B (zh) 一种网络节点信任预测方法、装置、设备及介质
Necoara et al. DuQuad: A toolbox for solving convex quadratic programs using dual (augmented) first order algorithms
JP2021125136A (ja) 最適化装置及び最適化方法
Chu et al. Application of Latin hypercube sampling based kriging surrogate models in reliability assessment
Yaghoubi et al. Reduced order surrogate modeling technique for linear dynamic systems
Ling et al. Efficient robust design optimization using Gaussian process and intelligent sampling
Guo et al. Surrogate modeling with high-dimensional input and output
Graff et al. Reduced-order modeling using dynamic mode decomposition and least angle regression
Sagnol et al. Using sparse kernels to design computer experiments with tunable precision
Lu et al. Model reduction via dynamic mode decomposition
Siem et al. Kriging models that are robust with respect to simulation errors

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180612

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180806

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190107

R150 Certificate of patent or registration of utility model

Ref document number: 6464057

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150