2023-06-29 ML勉強会
[2H5-OS-8a-02] 自己回帰型言語モデルによる個人の移動軌跡の生成
JSAI2023
目的

- 十分な個人の移動軌跡データがあればこんなことが期待できる
- コロナの感染者の多いルートだけ封鎖
- 交通渋滞の原因を発見
- 自然災害時の避難状況の把握
- また、マーケティングにおいて同意されたデータだとバイアスがある
- 機械学習的なアプローチだとRNNを使った研究があるが、RNNだと長期記憶を持っていないので家がどこにあるか忘れちゃったり帰ってこれなくなったりする
GPT-2を用いて個人の移動軌跡を生成するモデルの提案

- プロンプトとして「女性、平日、晴れ」といった個人の属性や環境の情報を与える
- 自宅の位置のような出発地を与える
- 位置と移動時間をトークン化
- そこから先の移動時間と場所をGPT-2によって生成させる
- GPT-3, GPT-4でも構わないが学習に時間がかかるのでGPT-2でやった
Agoop社の移動軌跡データ
- 2022年8月に浦安市に滞在
- 許可のある延べ67万台のスマホ, 1億2846万ログ (位置, 時間, 個人情報)
- iOSでの位置は短期も含めて出発地と目的地
- iOSでの時間間隔は平均6.7分間, 中央値1分間
移動位置の生成

- GPT-2のような言語モデルは時間や座標などの数値の学習には向いていない
- 場所をユニークな文字として表し、その後トークナイズするようにした
- めったに出てこない場所は最後の文字がランダムな推定になったりする。文字でいうとedとかsのような修飾語みたいな扱い
- 250mの解像度での日本の全陸地はわずか348文字の組み合わせで表現することができる
移動軌跡の表現


- 一番大きな特徴としてGPT-2だとちゃんと自宅まで帰ってこれている
- マルコフだと記憶が無くなってどっかに消えちゃう

- Originalのデータと比較して統計的にも類似している
移動時間と位置の両方を生成


- 250m解像度
- 浦安市に来た人で学習
- 5人生成してちゃんと自宅に帰ってきている
- 15m解像度
- 移動位置の文字を9文字にすることでマルチスケールに対応できる
- ディズニーランドの中の人の動き

- 時間を追加したので位置の予測精度が悪化するかと思ったがそんなことはなかった
環境や個人属性に依存した移動時間と位置を生成

- 選択肢としてスペシャルトークンはファインチューニングで追加するということも考えられたが、今回は事前学習から入れた

- 属性をつけたほうが予測精度が上がる
- Attention weight からみる重要な属性
- 前回の場所
- 職場が浦安市内
- 天気
- 年齢
- ディズニーランドがあるから
今後の課題
- 他者とのインタラクションの学習
- 家族そろって動くみたいな
- 別の都市への転移学習
GPT2

- 訓練時はMasked Self-Attentionが使われるが、予測時は以下のようにやはりfor分を回す必要ありそう