(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-28
(45)【発行日】2023-12-06
(54)【発明の名称】推定装置、推定システム、推定方法及びプログラム
(51)【国際特許分類】
G06N 99/00 20190101AFI20231129BHJP
【FI】
G06N99/00 180
(21)【出願番号】P 2022518485
(86)(22)【出願日】2020-04-28
(86)【国際出願番号】 JP2020018115
(87)【国際公開番号】W WO2021220399
(87)【国際公開日】2021-11-04
【審査請求日】2022-09-07
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】金 秀明
【審査官】土谷 慎吾
(56)【参考文献】
【文献】特開2019-008637(JP,A)
【文献】澤村康匡、外2名,ナイストロム法を用いた時系列データの高速類似検索法の検討,FIT2006 第5回情報科学技術フォーラム 一般講演論文集 第3分冊,2006年08月21日,pp.51-54
(58)【調査した分野】(Int.Cl.,DB名)
G06N 99/00
(57)【特許請求の範囲】
【請求項1】
所定の次元の空間領域で観測されたイベントを表す観測点の集合と、前記観測が行われた回数を表す観測回数と、所定の条件を満たす第1の関数と、前記第1の関数のパラメータとを入力して、前記空間領域における前記イベントの発生率を得るためのレート関数を解析的に推定するレート関数推定部、
を有
し、
前記所定の条件は、
前記第1の関数が対称関数であること、かつ、前記観測回数をRとして、前記第1の関数を積分演算子のカーネル関数として利用した場合における固有値が0以上1/R以下であること、を特徴とする推定装置。
【請求項2】
前記空間領域内の点であり、かつ、前記イベントの発生率の推定対象となる点を表す推定対象点の集合と、前記レート関数とを入力して、前記推定対象点におけるイベントの発生率を推定する発生率推定部、を更に有することを特徴とする請求項
1に記載の推定装置。
【請求項3】
前記レート関数推定部は、
前記観測回数と、前記レート関数の平均値の平方根を表すパラメータと、前記第1の関数を前記空間領域で積分した第2の関数と、前記観測点における前記第1の関数の値を表すベクトルと、前記観測点における前記レート関数の推定値の平方根の逆数を表すベクトルとが含まれる前記レート関数を解析的に推定する、ことを特徴とする請求項1
又は2に記載の推定装置。
【請求項4】
第1の装置と、前記第1の装置とは異なる第2の装置とが含まれる推定システムであって、
前記第1の装置は、
所定の次元の空間領域で観測されたイベントを表す観測点の集合と、前記観測が行われた回数を表す観測回数と、所定の条件を満たす第1の関数と、前記第1の関数のパラメータとを入力して、前記空間領域における前記イベントの発生率を得るためのレート関数を解析的に推定するレート関数推定部、を有し、
前記第2の装置は、
前記空間領域内の点であり、かつ、前記イベントの発生率の推定対象となる点を表す推定対象点の集合と、前記レート関数とを入力して、前記推定対象点におけるイベントの発生率を推定する発生率推定部、を有
し、
前記所定の条件は、
前記第1の関数が対称関数であること、かつ、前記観測回数をRとして、前記第1の関数を積分演算子のカーネル関数として利用した場合における固有値が0以上1/R以下であること、を特徴とする推定システム。
【請求項5】
所定の次元の空間領域で観測されたイベントを表す観測点の集合と、前記観測が行われた回数を表す観測回数と、所定の条件を満たす第1の関数と、前記第1の関数のパラメータとを入力して、前記空間領域における前記イベントの発生率を得るためのレート関数を解析的に推定するレート関数推定手順、
をコンピュータが実行
し、
前記所定の条件は、
前記第1の関数が対称関数であること、かつ、前記観測回数をRとして、前記第1の関数を積分演算子のカーネル関数として利用した場合における固有値が0以上1/R以下であること、を特徴とする推定方法。
【請求項6】
コンピュータを、請求項1乃至
3の何れか一項に記載の推定装置、又は、請求項
4に記載の推定システムに含まれる第1の装
置、として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、推定装置、推定システム、推定方法及びプログラムに関する。
【背景技術】
【0002】
一次元又は多次元空間上で発生するイベントを表すデータを用いて、当該空間上の各点におけるイベントの発生率(以下、「レート関数」という。)を推定する技術として、Gaussian Cox Processが知られている。例えば、非特許文献1では、変分ベイズ法を用いた近似的なレート関数の推定方法が提案されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】C. Lloyd, et al., "Variational Inference for Gaussian Process Modulated Poisson Processes", International Conference on Machine Learning, pp.1814-1822 (2015).
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、変分ベイズ法を用いた近似は推定結果に誤差や偏りを生じさせる場合があり、真のレート関数と大きく異なる推定値が出力される可能性がある。また、その推定値の誤差の大きさを定量的に評価することが困難であり、誤った推定値を正しいものとして採用してしまう可能性もある。
【0005】
本発明の一実施形態は、上記の点に鑑みてなされたもので、解析的にレート関数を推定することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、一実施形態に係る推定装置は、所定の次元の空間領域で観測されたイベントを表す観測点の集合と、前記観測が行われた回数を表す観測回数と、所定の条件を満たす第1の関数と、前記第1の関数のパラメータとを入力して、前記空間領域における前記イベントの発生率を得るためのレート関数を解析的に推定するレート関数推定部、を有することを特徴とする。
【発明の効果】
【0007】
解析的にレート関数を推定することができる。
【図面の簡単な説明】
【0008】
【
図1】実施例1における推定装置の機能構成の一例を示す図である。
【
図2】実施例1における推定処理の流れの一例を示すフローチャートである。
【
図3】実施例2における推定装置の機能構成の一例を示す図である。
【
図4】実施例2における推定処理の流れの一例を示すフローチャートである。
【
図5】実施例3における推定装置の機能構成の一例を示す図である。
【
図6】実施例3における推定処理の流れの一例を示すフローチャートである。
【
図7】本実施形態に係る推定装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の一実施形態について説明する。本実施形態では、Gaussian Cox Process(以下、「GCP」と略記する。)に基づいて、解析的にレート関数を推定することができる推定装置10について説明する。
【0010】
[実施例1]
まず、本実施形態の実施例1について説明する。
【0011】
<機能構成(実施例1)>
実施例1における推定装置10の機能構成について、
図1を参照しながら説明する。
図1は、実施例1における推定装置10の機能構成の一例を示す図である。
【0012】
図1に示すように、実施例1における推定装置10は、推定器生成部101と、推定部102とを有する。また、実施例1における推定装置10には、推定対象点1000と、点事象データ1100と、GCPカーネル1200と、GCPカーネルパラメータ1300とが与えられるものとする。なお、推定対象点1000、点事象データ1100、GCPカーネル1200及びGCPカーネルパラメータ1300は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の記憶装置に格納されていてもよいし、ユーザの操作等によって入力されてもよいし、通信ネットワークを介して接続される他の装置から受信してもよい。
【0013】
推定対象点1000は、レート関数の値を推定する対象のP個の点(座標点)の集合{s1,s2,・・・,sP}であるものとする。これらの各sp(p=1,2,・・・,P)は、後述する空間領域T内で、レート関数の値の推定対象となる点のことである。
【0014】
点事象データ1100は、観測を実施した空間領域Tと、その観測回数Rと、当該空間領域T内で観測されたN個のイベントの点(座標点)の集合{t1,t2,・・・,tN}である。なお、空間領域Tは予め決められた任意の次元(1次元又は多次元)の空間領域である。
【0015】
GCPカーネル1200は、以下の条件1及び条件2を満たす関数h(t,t')である。ただし、t,t'はそれぞれ空間領域T内の任意の点である。
【0016】
条件1:hは対称な関数である。すなわち、h(t,t')=h(t',t)である。
【0017】
条件2:関数h(t,t')を積分演算子のカーネルとして利用するとき、当該積分演算子の固有値が0以上1/R以下となる。ただし、関数h(t,t')の固有値νは以下の式(1)により定義される。
【0018】
【0019】
以降では、上記の条件1及び条件2を満たす関数を「GCPカーネル」又は「GCPカーネル関数」と呼ぶ。GCPカーネルの例を以下に示す。
【0020】
GCPカーネルの例1:半正定値カーネルk(t,t')とその固有値の上限値kmaxで定義される以下の式(2)に示す関数hはGCPカーネルとなる。
【0021】
【数2】
ただし、k
maxは、以下の式(3)に示すように、半正定値カーネルk(t,t')を一方の変数(式(3)ではt')に関して積分した関数の最大値として評価される。
【0022】
【数3】
半正定値カーネルk(t,t')としては、強度αと共分散行列Σをパラメータに持つGaussianカーネルk
Gauss(t,t')や、強度αとスケースβをパラメータに持つMaternカーネルk
Matern(t,t')等がある。Gaussianカーネルk
Gauss(t,t')を以下の式(4)に、Maternカーネルk
Matern(t,t')を以下の式(5)にそれぞれ示す。
【0023】
【0024】
【数5】
ただし、τはベクトル及び行列に対する転置操作を表す。なお、Gaussianカーネルk
Gauss(t,t')やMaternカーネルk
Matern(t,t')以外にも、例えば、Wienerカーネルk
Wiener(t,t')を用いることも可能である。
【0025】
GCPカーネルの例2:半正定値カーネルk(t,t')を用いて定義される第二種フレドホルム型積分方程式の解はGCPカーネルとなる。すなわち、以下の式(6)に示す積分方程式の解h(t,t')はGCPカーネルとなる。
【0026】
【数6】
GCPカーネルパラメータ1300は、GCPカーネルh(t,t')のパラメータ値である。GCPカーネルh(t,t')のパラメータの個数及びパラメータが取り得る値の範囲は、GCPカーネルh(t,t')の定義によって異なる。例えば、半正定値カーネルk(t,t')にGaussianカーネルk
Gauss(t,t')を用いて、上記の式(2)に示す関数hをGCPカーネルとした場合、そのパラメータは強度α及び共分散行列Σである。一方で、例えば、半正定値カーネルk(t,t')にMaternカーネルk
Matern(t,t')を用いて、上記の式(2)に示す関数hをGCPカーネルとした場合、そのパラメータは強度α及びスケースβである。
【0027】
また、GCPカーネルパラメータ1300には、レート関数の平均値の平方根を表すパラメータμが含まれる。パラメータμは非負の値を取るものとする。
【0028】
GCPカーネルパラメータ1300に含まれる各パラメータの値は、通常、本実施形態に係る推定装置10を適用する事例毎の様々な先行知識や制約等に基づいて決定される。例えば、ECサイトのユーザが或る季節性の強い商材を購入するというイベントを対象として、MaternカーネルkMatern(t,t')を用いて、上記の式(2)に示す関数hをGCPカーネルとした場合、パラメータβは数週程度を表す値とすることが考えられる。また、例えば、いくつかの候補となるパラメータ値を用いてレート関数をそれぞれ推定した上で、それらの推定結果を比較し、主観的に妥当と考えられるパラメータ値を採用することも考えられる。
【0029】
推定器生成部101は、推定装置10に与えられた点事象データ1100とGCPカーネル1200とGCPカーネルパラメータ1300とを入力して、レート関数推定器1400を生成及び出力する。
【0030】
レート関数推定器1400は、空間領域T内の任意の点tにおけるレート関数の推定値を得るための関数λ(t)である。この関数λ(t)は以下の式(7)で表される。
【0031】
【0032】
【数8】
はGCPカーネルh(t,t')を空間領域Tにおいて積分した関数、h(t,:)はN個のイベントの座標点t
1,t
2,・・・,t
N上におけるGCPカーネルの値で構成されるベクトル、zはN個のイベントの座標点t
1,t
2,・・・,t
N上におけるレート関数の推定値の平方根の逆数で構成されるベクトルとする。すなわち、
【0033】
【0034】
上記の式(7)に示されるように、レート関数推定器1400(つまり、λ(t))は
【0035】
【数10】
の5つの要素で構成される。したがって、推定器生成部101は、これらの5つの要素を出力することで、レート関数推定器1400を出力する。このとき、推定器生成部101は、これら5つの要素の中で未知数であるzを計算により生成(算出)した上で、レート関数推定器1400を出力する。ここで、N次元ベクトルzの各要素z
n=λ
-1/2(t
n)はレート関数の推定値の関数であり、かつ、レート関数の推定値は上記の式(7)によりzの関数であることから、この両者の関係が無矛盾に成り立つための条件式が存在し、その条件式を解くことでzが算出される。この条件式は、以下の式(8)に示すN元連立二次方程式となる。
【0036】
【0037】
推定部102は、推定装置10に与えられた推定対象点1000と、推定器生成部101によって出力されたレート関数推定器1400とを入力して、推定値1500を算出及び出力する。すなわち、推定部102は、P個の点s1,s2,・・・,sPのそれぞれを上記の式(7)に示すλ(t)に代入することで、レート関数の推定値の集合{λ(s1),λ(s2),・・・,λ(sP)}を算出する。この{λ(s1),λ(s2),・・・,λ(sP)}が推定値1500である。
【0038】
<推定処理(実施例1)>
次に、実施例1における推定装置10によって推定値1500を得るための推定処理の流れについて、
図2を参照しながら説明する。
図2は、実施例1における推定処理の流れの一例を示すフローチャートである。
【0039】
ステップS101:まず、推定器生成部101は、与えられた点事象データ1100とGCPカーネル1200とGCPカーネルパラメータ1300とを入力して、レート関数推定器1400を生成及び出力する。
【0040】
ステップS102:そして、推定部102は、与えられた推定対象点1000と、上記のステップS101で出力されたレート関数推定器1400とを入力して、推定値1500を算出及び出力する。これにより、レート関数の推定値の集合{λ(s1),λ(s2),・・・,λ(sP)}が得られる。このとき、実施例1における推定装置10では、近似を用いずに、GCPに基づいて解析的にレート関数を推定するため、推定結果に意図しない誤差や偏りが含まれてしまう事態を防止することができる。
【0041】
なお、上記のステップS101の処理は、ステップS102の処理を実行する前に予め実行されていてもよい(この場合、レート関数推定器1400を記憶装置等に保存しておき、上記のステップS101の処理では記憶装置等からレート関数推定器1400を読み出せばよい。)。このとき、同一のレート関数推定器1400を使用して上記のステップS102の処理を複数回実行する場合には、上記のステップS101の処理は1度実行されればよい。また、例えば、上記のステップS101の処理が他の装置で実行され、この他の装置からレート関数推定器1400が与えられる場合には、推定装置10は、上記のステップS102の処理のみを実行すればよい(この場合、当該他の装置と推定装置10とでシステムが構成され、当該他の装置が推定器生成部101を有する一方で、推定装置10は推定器生成部101を有していなくてもよい。)。
【0042】
[実施例2]
次に、本実施形態の実施例2について説明する。実施例2では、GCPカーネルパラメータ1300に含まれる各パラメータの値を主観的に決定するのではなく、主観を廃して決定する場合について説明する。
【0043】
<機能構成(実施例2)>
実施例2における推定装置10の機能構成について、
図3を参照しながら説明する。
図3は、実施例2における推定装置10の機能構成の一例を示す図である。
【0044】
図3に示すように、実施例2における推定装置10は、推定器生成部101と、推定部102と、パラメータ決定部103とを有する。また、実施例2における推定装置10には、推定対象点1000と、点事象データ1100と、GCPカーネル1200とが与えられるものとする。なお、推定対象点1000、点事象データ1100及びGCPカーネル1200は、例えば、HDDやSSD等の記憶装置に格納されていてもよいし、ユーザの操作等によって入力されてもよいし、通信ネットワークを介して接続される他の装置から受信してもよい。
【0045】
推定器生成部101及び推定部102は実施例1と同様であるため、その説明を省略する。ただし、推定器生成部101は、パラメータ決定部103によって出力されたGCPカーネルパラメータ1300を入力する。
【0046】
パラメータ決定部103は、推定装置10に与えられた点事象データ1100とGCPカーネル1200とを入力して、GCPカーネルパラメータ1300を出力する。すなわち、パラメータ決定部103は、空間領域Tと観測回数RとN個のイベントの点の集合{t1,t2,・・・,tN}とGCPカーネルh(t,t')とを用いて、交差検定によりGCPカーネルパラメータ1300に含まれる各パラメータの値を最適化な値に決定する。具体的には、パラメータ決定部103は、例えば、N個のイベントの点の集合{t1,t2,・・・,tN}をK個のバッチ(部分集合)に分割し、K-1個のバッチを訓練用、残り1個のバッチを検証用として、検証用のバッチを入れ替えながらパラメータ値の変更と検証とを繰り返すことで、各パラメータ値を最適化する。なお、Kは空間領域Tや観測回数Rに応じて決定すればよい。
【0047】
<推定処理(実施例2)>
次に、実施例2における推定装置10によって推定値1500を得るための推定処理の流れについて、
図4を参照しながら説明する。
図4は、実施例2における推定処理の流れの一例を示すフローチャートである。
【0048】
ステップS201:まず、パラメータ決定部103は、与えられた点事象データ1100とGCPカーネル1200とを入力して、GCPカーネルパラメータ1300を出力する。
【0049】
ステップS202:次に、推定器生成部101は、与えられた点事象データ1100及びGCPカーネル1200と、上記のステップS201で出力されたGCPカーネルパラメータ1300とを入力して、レート関数推定器1400を生成及び出力する。
【0050】
ステップS203:そして、推定部102は、与えられた推定対象点1000と、上記のステップS202で出力されたレート関数推定器1400とを入力して、推定値1500を算出及び出力する。これにより、レート関数の推定値の集合{λ(s1),λ(s2),・・・,λ(sP)}が得られる。しかも、実施例2における推定装置10では、GCPカーネルパラメータ1300を最適化することができるため、例えば、本実施形態係る推定装置10を適用する事例の先行知識や制約等に関する知識や経験が不足するユーザであっても、精度の良いレート関数の推定値を得ることが可能となる。
【0051】
なお、実施例1と同様に、上記のステップS201及びステップS202の処理が予め実行されていてもよいし、上記のステップS201及びステップS202の処理が他の装置で実行されてもよい。
【0052】
[実施例3]
次に、本実施形態の実施例3について説明する。実施例3では、レート関数の推定値の誤差も算出する場合について説明する。
【0053】
<機能構成(実施例3)>
実施例3における推定装置10の機能構成について、
図5を参照しながら説明する。
図5は、実施例3における推定装置10の機能構成の一例を示す図である。
【0054】
図5に示すように、実施例3における推定装置10は、推定器生成部101と、推定部102と、誤差算出部104とを有する。また、実施例3における推定装置10には、推定対象点1000と、点事象データ1100と、GCPカーネル1200と、GCPカーネルパラメータ1300とが与えられるものとする。なお、推定対象点1000、点事象データ1100、GCPカーネル1200及びGCPカーネルパラメータ1300は、例えば、HDDやSSD等の記憶装置に格納されていてもよいし、ユーザの操作等によって入力されてもよいし、通信ネットワークを介して接続される他の装置から受信してもよい。
【0055】
推定器生成部101及び推定部102は実施例1と同様であるため、その説明を省略する。
【0056】
誤差算出部104は、推定装置10に与えられた推定対象点1000と、推定器生成部101によって出力されたレート関数推定器1400と、推定部102によって出力された推定値1500とを入力して、誤差1600を算出及び出力する。誤差1600は、レート関数の平方根に対し、推定対象とするP個の点s1,s2,・・・,sPにおける推定誤差(共分散行列)である。これらの推定誤差σ(t)は、以下の式(9)により算出される。
【0057】
【数12】
ただし、Λ及びHはそれぞれN×Nの行列であり、Λの(n,n')成分をΛ
nn'=λ(t
n)δ
nn'、Hの(n,n')成分をH
nn'=h(t
n,t
n')である。なお、δ
nn'はn=n'のときは1、そうでないときは0を取る関数である。
【0058】
<推定処理(実施例3)>
次に、実施例3における推定装置10によって推定値1500及び誤差1600を得るための推定処理の流れについて、
図6を参照しながら説明する。
図6は、実施例3における推定処理の流れの一例を示すフローチャートである。
【0059】
ステップS301:まず、推定器生成部101は、与えられた点事象データ1100とGCPカーネル1200とGCPカーネルパラメータ1300とを入力して、レート関数推定器1400を生成及び出力する。
【0060】
ステップS302:次に、推定部102は、与えられた推定対象点1000と、上記のステップS301で出力されたレート関数推定器1400とを入力して、推定値1500を算出及び出力する。
【0061】
ステップS303:そして、誤差算出部104は、与えられた推定対象点1000と、上記のステップS301で出力されたレート関数推定器1400と、上記のステップS302で出力された推定値1500とを入力して、誤差1600を算出及び出力する。これにより、レート関数の推定値の集合{λ(s1),λ(s2),・・・,λ(sP)}だけなく、推定誤差の集合{σ(s1),σ(s2),・・・,σ(sP)}も得られる。このため、実施例3における推定装置10では、レート関数の推定値の誤差の大きさを定量的に評価することが可能となる。
【0062】
なお、実施例1と同様に、上記のステップS301の処理が予め実行されていてもよいし、上記のステップS301の処理が他の装置で実行されてもよい。
【0063】
<応用例>
次に、本実施形態に係る推定装置10を具体的な事例に適用した応用例について説明する。
【0064】
・応用例1
ECサイトにおける広告戦略担当者が、或る商材に関する次年度の夏季セール広告を優先的に送るユーザを特定する状況を考える。まず、ECサイトの当該商材に関する購買履歴データ(ユーザIDと購買時刻とのペアで表されるデータの集合)からユーザ毎の購買時刻列を抽出した購買時刻データを準備する。1ユーザの購買時刻データが、イベントの点の集合{t1,t2,・・・,tN}となる。ここで、時刻は1秒単位の1年周期の値(01-01 00:00:00~12-31 23:59:59)を取るものとする。このとき、例えば、過去3年分の購買履歴データを用いるならば、空間領域Tは1次元空間、観測回数Rは3回となる。
【0065】
1ユーザの購買時刻データ、空間領域T及び観測回数Rが含まれる点事象データ1100と、広告戦略担当者が選択したGCPカーネル1200及びGCPカーネルパラメータ1300とを推定装置10に与えることで、レート関数推定器1400が出力される。
【0066】
次に、広告戦略担当者は、広告を出す予定の期間を1秒単位で区切った時刻点列{s1,s2,・・・,sP}を推定対象点1000として、推定装置10に与える。これにより、当該期間の各時刻点における当該ユーザの購買発生確率の推定値1500(つまり、λ(s1),λ(s2),・・・,λ(sP))が得られる。
【0067】
広告戦略担当者は、例えば、購買発生確率が高いユーザは広告効果が高いという仮説の下、購買発生確率が平均的に高いユーザを選別し、優先的に広告を出すスケジュールを組むことができる。
【0068】
なお、GCPカーネルのパラメータ値に関して業務上の先行知識がない場合は、実施例2で説明したパラメータ決定部103により、パラメータ値を決定してもよい。また、実施例3で説明した誤差算出部104により、購買発生確率に加えて、その推定誤差を算出してもよい。購買発生確率と共にその推定誤差を算出することで、例えば、各ユーザに対して、購買発生確率の推定値ではなく、購買発生確率が或る一定値以上を取る確率を算出することが可能となる。この確率は推定値の誤差も考慮するため、購買発生確率の高いユーザを特定するより頑強な指標として利用である可能性がある。
【0069】
・応用例2
国や地方自治体あるいは警備会社が、対象地域における警備員の年間配置計画を策定する状況を考える。担当者は、まず、過去の犯罪発生履歴データ(発生時刻並びに発生位置の緯度及び経度で表される3次元ベクトルデータの集合)を準備する。この犯罪発生履歴データが、イベントの点の集合{t1,t2,・・・,tN}となる。ここで、時刻は1秒単位の1年周期の値(01-01 00:00:00~12-31 23:59:59)を取り、緯度及び経度はそれぞれ0.000001度単位の10進数形式の値を取るものとする。このとき、例えば、過去5年分の犯罪発生履歴データを用いるならば、空間領域Tは3次元空間、観測回数Rは5回となる。
【0070】
犯罪発生履歴データ、空間領域T及び観測回数Rが含まれる点事象データ1100と、担当者が選択したGCPカーネル1200及びGCPカーネルパラメータ1300とを推定装置10に与えることで、レート関数推定器1400が出力される。
【0071】
次に、担当者は、1年を1秒単位かつ対象地域を0.000001度単位で区切った時空間点列{s1,s2,・・・,sP}を推定対象点1000として、推定装置10に与える。これにより、各時空間点における犯罪発生率の推定値1500(つまり、λ(s1),λ(s2),・・・,λ(sP))が得られる。したがって、担当者は、犯罪発生率が高い時間帯とエリアを特定することで、警備員の効果的な年間配置計画を策定することが可能となる。
【0072】
なお、警備員の年間配置計画策定のための犯罪発生率の推定事例と同様の方法により、例えば、感染症発生率の推定とその活用も可能である。この場合、対象地域の過去の感染症発生履歴データを用いればよい。このとき、感染症発生履歴データには、例えば、対象地域の位置情報(緯度・経度・高度)、時間情報(時間帯や年間等)、天候情報(晴天や雨天等)等が含まれていてもよい(つまり、感染症発生履歴データは、例えば、緯度、経度、高度、時間帯、天候等の情報で構成される多次元ベクトルの集合であってもよい。)。これにより、様々な条件下での感染症発生に関するレート関数を推定することができ、効果的な保健衛生に関する施策の策定が可能となる。
【0073】
<評価>
次に、本実施形態に係る推定装置10が実行する推定処理の手法(提案手法)の評価について説明する。本評価では、参考文献「Aglietti, V., Bonilla, E. V., Damoulas, T., and Cripps, S. Structured variational inference in continuous cox process models. In Advances in Neural Information Processing Systems, pp. 12437-12447, 2019.」の「4 Experiments」に記載されている方法と同様に、インターネット上の「URL:https://github.com/VirgiAgl/STVB」で提供されている人工データセットを用いて評価を行った。
【0074】
提案手法の比較対象とする従来手法としては、上記の非特許文献1に記載されている手法を採用した。また、評価指標としては、レート関数の推定値と真値とのL2ノルム誤差の平均(Average L2 norm errors)を採用した。ただし、平均は、10回の試行の平均とした。以下の表1に評価結果を示す。
【0075】
【表1】
ここで、PP
Gauss、PP
Matern及びPP
Wienerは、上記の式(2)に示す関数hをGCPカーネルとして、それぞれGaussianカーネルk
Gauss(t,t')、Maternカーネルk
Matern(t,t')及びWienerカーネルk
Wiener(t,t')を半正定値カーネルk(t,t')とした提案手法を表す。また、VBPPは、上記の非特許文献1に記載されている手法を表す。
【0076】
上記の表1中のλ1(t)、λ2(t)及びλ3(t)は上記の参考文献の「4 Experiments」に記載されているものと同様であり、人工データセットに含まれる点列の生成に用いられた強度関数である。なお、上記の表1中の括弧内は、10回の試行における、レート関数の推定値と真値とのL2ノルム誤差の標準誤差(standard errors)である。
【0077】
上記の表1に示されるように、強度関数λ2(t)で生成された点列を用いた場合のPPWienerはVBPPよりもやや精度が低いものの、他の場合では、提案手法は従来手法と比較して精度良くレート関数が推定できていることがわかる。
【0078】
<ハードウェア構成>
最後に、本実施形態に係る推定装置10のハードウェア構成について、
図7を参照しながら説明する。
図7は、本実施形態に係る推定装置10のハードウェア構成の一例を示す図である。
【0079】
図7に示すように、本実施形態に係る推定装置10は一般的なコンピュータ又はコンピュータシステムで実現され、入力装置201と、表示装置202と、外部I/F203と、通信I/F204と、プロセッサ205と、メモリ装置206とを有する。これら各ハードウェアは、それぞれがバス207を介して通信可能に接続されている。
【0080】
入力装置201は、例えば、キーボードやマウス、タッチパネル等である。表示装置202は、例えば、ディスプレイ等である。なお、推定装置10は、入力装置201及び表示装置202のうちの少なくとも一方を有していなくてもよい。
【0081】
外部I/F203は、記録媒体203a等の外部装置とのインタフェースである。推定装置10は、外部I/F203を介して、記録媒体203aの読み取りや書き込み等を行うことができる。記録媒体203aには、例えば、推定装置10が有する各機能部(推定器生成部101、推定部102、パラメータ決定部103及び誤差算出部104)を実現する1以上のプログラムが格納されていてもよい。なお、記録媒体203aには、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等がある。
【0082】
通信I/F204は、推定装置10を通信ネットワークに接続するためのインタフェースである。なお、推定装置10が有する各機能部を実現する1以上のプログラムは、通信I/F204を介して、所定のサーバ装置等から取得(ダウンロード)されてもよい。
【0083】
プロセッサ205は、例えば、CPU(Central Processing Unit)等の各種演算装置である。推定装置10が有する各機能部は、例えば、メモリ装置206に格納されている1以上のプログラムがプロセッサ205に実行させる処理により実現される。
【0084】
メモリ装置206は、例えば、HDDやSSD、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ等の各種記憶装置である。
【0085】
本実施形態に係る推定装置10は、
図7に示すハードウェア構成を有することにより、上述した推定処理を実現することができる。なお、
図7に示すハードウェア構成は一例であって、推定装置10は、他のハードウェア構成を有していてもよい。例えば、推定装置10は、複数のプロセッサ205を有していてもよいし、複数のメモリ装置206を有していてもよい。
【0086】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。また、各実施例の組み合わせも可能である。例えば、実施例2と実施例3とを組み合わせて、推定器生成部101と推定部102とパラメータ決定部103と誤差算出部104とを有する推定装置10が構成されてもよい。
【符号の説明】
【0087】
10 推定装置
101 推定器生成部
102 推定部
103 パラメータ決定部
104 誤差算出部
201 入力装置
202 表示装置
203 外部I/F
203a 記録媒体
204 通信I/F
205 プロセッサ
206 メモリ装置
207 バス