相関粒子系の社会実装

Particles
Opinion
Author

司馬博文

Published

11/06/2023

Modified

3/01/2024

概要
相関粒子系がどのように社会で活躍出来るか?という問いに対する1つの案として,「ビジネスモデルのモデル」が提示される.ここでは「状態空間モデル」の構造を人間社会に見つけることが肝要になる.

1 粒子「ビジネスモデル」モデルの基幹技術

1.1 「状態空間モデル」とその逐次推論

要は僕の専門分野である訳だが,これが今回のビジネスモデルの「骨格」の部分になる.

定義 (State Space Model)

状態空間モデル1とは,状態変数 \(\{X_t\}_{t=0}^T\) と,観測変数 \(\{Y_t\}_{t=1}^T\) の組からなる確率過程 \[ \{(X_t,Y_t)\}\subset\mathcal{L}(\Omega;\mathcal{X}\times\mathcal{Y}) \] であって,初期状態 \(X_0\) の分布と,\(X_t,Y_t\) の間の関係として次の2つの条件付き分布 \(P_{t},F_t\)

  1. システムモデル \[ X_{t+1}|X_t\sim P_{t+1}\quad(t\in T) \]
  2. 観測モデル \[ Y_t|X_t\sim F_t\quad(t\in[T]) \]

を想定したものをいう.2

状態空間モデルの図示(密度を持つ場合)

すなわち,初期状態 \(X_0\) の分布のモデル \(\{\mathbb{P}_0^\theta\}\).Markov過程 \(\{X_t\}\) の遷移核のモデル \(\{P_t^\theta\}\),観測のモデル \(\{F_t^\theta\}\) の3-組 \((\mathbb{P}_0^\theta,P_t^\theta,F_t^\theta)\)状態空間モデル という.また,過程 \(\{(X_t,Y_t)\}\) もMarkov過程になることが示せる.このため,状態空間モデルのことを 部分的に観測されるMarkov過程 (partially observed Markov process) とも表現する.

その重要なサブクラスには,次のような名前が付いている:

  • \(X_0,X_1,\cdots\) が離散変数であるとき,特に 隠れ Markov モデル ともいう.
  • \(X_t,Y_t\) がいずれも Gauss 確率変数で,\(p_t^\theta,f_t^\theta\) が線型であるとき,線型力学系 または Kalman フィルター ともいう.3

ただし,\(X_t\) は観測不能で,\(Y_t\) のみが観測されるものとする.従って,目標は \(Y_1,\cdots,Y_T\) の値から \(X_1,\cdots,X_T\) の値を推定することである.

各時点 \(t\in[T]\) において,現在までの観測 \(Y_1,\cdots,Y_t\) から現在の状態 \(X_t\) を推定することを考える(フィルタリング問題4).特に Bayes の枠組みでは,条件付き分布 \[ \mathcal{L}[X_t|Y_1,\cdots,Y_t]\quad(t\in [T]) \] を(逐次的に)推定することを目指す.5

この状態空間モデルのフィルタリング問題を解くためのアルゴリズムは多く知られているが,そのうち,モデル \(X_{t+1}|X_t,Y_t|X_t\) が高度に非線型でも通用する手法は粒子フィルターのみである.6

粒子フィルターは,\(X_t\) の観測に関する事後分布を \(N\) 個(大量)の粒子によって近似する Bayes 推定手法で,各 \(Y_t\) の尤度の情報を重点リサンプリングによって取り入れながらも,計算コストを抑えながら \(X_t\) の事後分布を逐次近似していく.粒子フィルターとは何か? も参照.

1.2 状態空間モデルがビジネスになるか?

要は,\(Y_t\) を安価に集めて,\(X_t\) を高値で売ることを考える.本当にこれがビジネスになるためには,2つの条件

  • \(X_t\) は多くの人がリアルタイムに知りたいが,(少なくともリアルタイムには)知れない
  • \(Y_t\) をたくさん集めれば \(X_t\) を推測できるが,簡単には推測するのに十分な次元の \(Y_t\) を用意できない

を満たす必要がある.が,意外とこのようなものは多いかも知れない.

一方で我々の売りは

今回のビジネスモデルのコア

どんなに推定しにくい \(X_t\) でも(モデルが複雑で尤度が解析的な表示を持たなくても),十分な情報を含む観測データ \(Y_t\) が得られれば,逐次推定できる.

ということになる.

時系列データのオンライン推論は,需要が高い一方で実装が難しい.ここの乖離が好機になる可能性がある.

2 どんな \(X_t\) が売れるか?

2.1 マクロ指標のナウキャスト

最も示唆的と思われる例は,\(X_t\) としてGDP,商業販売額などのマクロ指標を取った場合だと思われる.

マクロ指標は,各企業単体では推測できず,たとえ業界を絞っても各企業の売り上げデータやATM取引データなど,多くのデータを集めて高次元な \(Y_t\) を構成しなければ,信頼できる \(X_t\) の推定はできないだろう.高次元な \(Y_t\) から \(X_t\) をフィルタリング際の粒子法は安定せず,現在でも解決されていないオープンクエスチョンである.必然的にブルーオーシャンで誰も参入できない.

さらに,マクロ指標はフィルタリングすること=今現在の値を知ることに意味がある.理論的な障壁や技術的な障壁は高いが,経営判断に使ったり,投資判断に使ったり,需要は大きいと思われる.

\(Y_t\) はデータとして広く流通しているわけではないならば(ATM利用データなど),技術力だけでなく,「信頼を得てデータを提供してもらっている」ことが競争力に加わっていき得る.

2.2 天気予報

\(Y_t\) が天気(降水量)というのがよくある.\(X_t\) が高次元になり,データ同化の問題になる.

この天気予報とデリバティブとの関係は?

2.3 属人化医療

個人的には,\(X_t\) は個人の体調スコア(あるいは特定の病気のリスク)で,\(Y_t\) がApple Watchなどのスマートデバイスからの心拍や体温や移動距離などの測定データ,という属人化医療の場面設定をよく考える.

3 サーベイ

まとめると,我々が提供できるものは高次元・大規模状態空間モデルの逐次推定手法の研究開発力.足りないものは研究成果と実装する時間と仲間と交渉力である.その代わり初期投資は極めて少なくて済む.

まずは,前節での「\(Y_t\) を集めて \(X_t\) を売る」ビジネスモデルの実現に向けて,既存の成功事例を調べる.

3.1 生態学

生態学のモデリングにも状態空間モデルはよく使われる (Auger-Méthé et al., 2021).特に非線型性が強く,粒子フィルターが有効になる (Chopin and Papaspiliopoulos, 2020, p. 19)

3.2 ナウキャスト

元々は星野研究室の次の研究を知って,新里さんに紹介したときに得た着想であった.

Card

「ナウキャスト」「オルタナティブデータを活用した経済分析」と言った言葉でビジネス界で議論されているようだ.特に「ナウキャスト」という名前の会社はこの分野を開拓している.

ナウキャストとエム・データ、機関投資家向けオルタナティブデータ活用で協業 オルタナティブデータを用いた経済活動分析

References

Auger-Méthé, M., Newman, K., Cole, D., Empacher, F., Gryba, R., King, A. A., … Thomas, L. (2021). A guide to state-space modelling of ecological time series. Ecological Monographs, 91(4), e01470.
Bishop, C. M., and Bishop, H. (2024). Deep learning: Foundations and concepts. Springer Cham.
Chopin, N., and Papaspiliopoulos, O. (2020). An introduction to sequential monte carlo. Springer Cham.

Footnotes

  1. ここでの定義は (Chopin and Papaspiliopoulos, 2020, p. 42) に倣った.隠れMarkovモデルともいうが,こう言ったときは状態空間が有限集合であるという制約が暗につく.↩︎

  2. 他の依存関係は仮定しないので,その図示は DAG となっている.状態空間モデルは Bayesian Network の例である.記法 \(T,[T]\) については 本サイトの数学記法一覧 を参照.↩︎

  3. (Bishop and Bishop, 2024, p. 353) での用語.↩︎

  4. 一方で \(Y_t\) から,未来の値 \(Y_{t+1}\) を予測する問題を「予測問題」,\(Y_{1},\cdots,Y_t\)から,過去の状態変数の値 \(X_{s}\;(s<t)\) を推定する問題を「平滑化問題」という.↩︎

  5. 記法 \(\mathcal{L}\) については 本サイトの数学記法一覧 を参照.ベイズ手法については ベイズ計算とは何か を参照.↩︎

  6. \(Y_t|X_t,X_{t+1}|X_t\) の線型性が高い場合は,Kalman filter とその変種,特に Extended Kalman filter の効率も良い場合が多い.↩︎