IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7599448系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法
<>
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図1
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図2
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図3
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図4
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図5
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図6
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図7
  • 特許-系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-05
(45)【発行日】2024-12-13
(54)【発明の名称】系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法
(51)【国際特許分類】
   G06Q 10/04 20230101AFI20241206BHJP
   G06N 20/00 20190101ALN20241206BHJP
【FI】
G06Q10/04
G06N20/00
【請求項の数】 10
(21)【出願番号】P 2022043487
(22)【出願日】2022-03-18
(65)【公開番号】P2023137334
(43)【公開日】2023-09-29
【審査請求日】2024-01-17
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】小林 亮博
(72)【発明者】
【氏名】武田 直人
(72)【発明者】
【氏名】上坂 大輔
【審査官】渡邉 加寿磨
(56)【参考文献】
【文献】特開2021-068233(JP,A)
【文献】国際公開第2021/171732(WO,A1)
【文献】特開2022-041090(JP,A)
【文献】国際公開第2012/066951(WO,A1)
【文献】特開2018-197977(JP,A)
【文献】特開2019-159363(JP,A)
【文献】特開2016-038741(JP,A)
【文献】永塚光一ら,「文長制御のための条件付き言語モデル」,人工知能学会全国大会論文集,第34回(2020),日本,一般社団法人 人工知能学会,2020年06月09日,p.1-4,[令和6年11月6日検索],インターネット,<URL:https://www.jstage.jst.go.jp/article/pjsai/JSAI2020/0/JSAI2020_3Rin483/_article/-char/ja/>,DOI:https://doi.org/10.11517/pjsai.JSAI2020.0_3Rin483
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測する予測装置において、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋めるパディング手段と、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する予測制御手段と
を有することを特徴とする予測装置。
【請求項2】
予測制御手段は、
周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データの先頭トークンを1増分した所定長のトークン列を予測する、又は、
周期期間データと後続期間データの1つ以上のトークンとを含むトークン列を入力し、周期期間データ及び後続期間データに続くトークンを1増分した所定長のトークン列を予測する
ことを特徴とする請求項1に記載の予測装置。
【請求項3】
系列予測モデルは、訓練段階について、周期期間データに続く後続期間データのトークンを1増分しながら所定長のトークン列を入力し、周期期間データに続いて後続期間データのトークンを1増分しながら出力するように訓練を繰り返し、パディングによって1つの系列データの終了を認識する
ことを特徴とする請求項2に記載の予測装置。
【請求項4】
期間データは、単位時間分の複数のトークンからなり、
周期期間データは、複数の単位時間分からなる周期性を持つ期間データからなり、
後続期間データは、周期期間データに後続する単位時間分の複数のトークンからなる
ことを特徴とする請求項1から3のいずれか1項に記載の予測装置。
【請求項5】
期間データ毎に、先頭にスターティングの特殊トークンを更に含むか、又は、後尾にエンディングの特殊トークンを更に含む
ことを特徴とする請求項4に記載の予測装置。
【請求項6】
期間データは、1日分の複数のトークンからなり、
周期期間データは、1週間分の期間データからなり、
後続期間データは、1週間分の期間データに続く1日単位の複数のトークンからなる
ことを特徴とする請求項4又は5に記載の予測装置。
【請求項7】
複数の期間データを含む系列データは、ユーザ毎に区分されており、
期間データに含まれるトークンは、時系列に並ぶ位置情報である
ことを特徴とする請求項1から6のいずれか1項に記載の予測装置。
【請求項8】
パディング手段は、周期期間データにおける期間データに欠損が生じている場合、当該期間データと同一の周期性となる期間データの平均トークン数となるように、欠損部分にパディングを埋める
ことを特徴とする請求項1から7のいずれか1項に記載の予測装置。
【請求項9】
系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測するようにコンピュータを機能させるプログラムにおいて、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋めるパディング手段と、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する予測制御手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項10】
系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測する予測装置の予測方法において、
複数の期間データは、時系列としての周期性を持つものであり、
予測装置は、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋める第1のステップと、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する第2のステップと
を実行することを特徴とする予測方法。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、系列予測モデルの技術に関する。特に、ユーザの移動軌跡を予測する用途に適する。
【背景技術】
【0002】
従来、多数のユーザによって所持されるスマートフォンから収集した大量の位置の移動軌跡を、深層学習ニューラルネットワークによって訓練する技術がある(例えば非特許文献1参照)。この技術によれば、1日毎の位置系列をLSTM(Long Short Term Memory)によって訓練し、移動軌跡を予測する。これによって、例えば任意のユーザについて、朝方の移動軌跡から、そのユーザの1日の移動軌跡を予測することができる。
このような技術は、交通需要の予測にも用途がある。例えば任意の地域におけるサンプルユーザの移動軌跡から、その後のユーザの移動軌跡を予測して集計し、道路交通量を予測することができる。例えば朝方の多数のスマートフォンの移動軌跡から、夕方の交通渋滞を予測することができる。
【0003】
また、地域毎に、ユーザの滞在期間を推定する技術もある(例えば非特許文献2参照)。この技術によれば、BERT(Bidirectional Encoder Representations from Transformers)によって位置を表現し、LSTMを用いて予測する。BERTは、自然言語処理の事前学習用のTransformerに基づくものである。時刻を組み込んだBERTによって位置を表現することにより、位置毎に、ユーザがどの程度の頻度でどの程度の期間だけ滞在するかを予測することができる。
【0004】
更に、携帯端末の測位機能を起動させることなく、ユーザの有意位置を推定することができる技術もある(例えば特許文献1参照)。この技術によれば、通信事業者設備によって取得可能な、空間的粒度が粗く且つ時間間隔が一定でない基地局位置情報を用いている。常時、携帯端末が配下に位置する基地局から、日時刻及び基地局識別子の多数のデータを含む接続履歴を収集し、携帯端末毎に区分する。次に、接続履歴を所定の時間窓(時間区間)に分割し、時間窓毎に各基地局識別子の出現数を計数する。次に、時間窓毎に、複数の基地局識別子を要素とし、出現数を値とするベクトルを生成し、当該ベクトルをクラスタに凝集する。そして、クラスタ毎に、当該クラスタに含まれるベクトルの各基地局識別子の出現数に基づいてユーザの有意圏を推定する。この技術は、位置情報の系列をテキストとし、時間枠内に出現する位置を文書として捉える。文書中に位置が存在するか否かを、教師なし学習の表現学習によって訓練する。但し、位置の予測(即ち文章の生成)は考慮されておらず、ユーザの有意圏を表現するに留まる。
【0005】
他の従来技術として、系列予測モデルとしてのGPT2(Generative Pre-trained Transformer - 2)モデルがある(例えば非特許文献3参照)。これは、教師有り学習の言語生成モデルであって、大量のコーパスから切り取った単語列(文章)の次の単語(Next word prediction)を予測する。GPT2モデルは、任意の単語列を入力すると、次の単語を逐次予測することができ、人間が書いたような文章を生成することができる。例えば「今日は」「良い」という単語列を入力すると、次の単語として最も確率が高い単語「天気」を出力する。次に、「今日は」「良い」「天気」を入力すると、次の単語として最も確率が高い単語「だ」を出力する。
文章:「今日は」「良い」「天気」「だ」
【0006】
図1は、従来技術におけるGPT2モデルの系列データを表す説明図である。
教師データとして、複数のテキスト(文章)があると想定する。系列データとしては、これら複数のテキストを連結した系列データとする。
【0007】
図2は、従来技術におけるGPT2モデルの訓練時の処理を表す説明図である。
【0008】
GPT2は、Transformerベースであって、アテンション機構(トークン同士の関連性を示すスコア付け)を有する。各トークンのアテンションは常に、そのトークンよりも前のトークンにかかるような仕組みになっている。これによって、各トークンが、以前のトークンのどこに着目して次の1つのトークンを推定すればよいか、学習することができる。
【0009】
図2によれば、GPT2モデルは、図1によって構成した系列データを、入力可能な所定長(例えば40)に区分し、入力データと正解データとを対応付けて訓練する。
入力データ列:0,1,2,3,4,5,6,7,8,9,0,1,・・・・・・・・・19,0
正解データ列: 1,2,3,4,5,6,7,8,9,0,1,2,・・・・・・・・19,0,1
このように、GPT2モデルでは、入力データに対して、正解データは、先頭トークンを削除し、末尾トークンを追加したものとする。GPT2モデルに、系列データをシフトさせながら入力し、結果データ列を予測していく。そして、その結果データ列と、正解データ列との差分を、損失関数(一般的にはcross entropy loss)と表現して、訓練を進める。
【0010】
前述した入力データ及び正解データの例によれば、トークン1を生成するためには、トークン0のみに着目すればよい(そもそもトークン1以前に、トークン0しか着目するものがない)。また、トークン3を生成するには、アテンション機構によって、トークン1に着目すればよい(トークン0,2は無視してもよい)というように学習することもできる。
【0011】
このように、図2のGPT2モデルは、前述した図1の系列データについて、先頭の1トークンを削除し且つ末尾の1トークンを追加しながら、訓練を進めることができる。
【先行技術文献】
【特許文献】
【0012】
【文献】特開2012-085095号公報
【非特許文献】
【0013】
【文献】Yin, M., Sheehan, M., Feygin, S., Paiement, J.F. and Pozdnoukhov, A. 2018. A Generative Model of Urban Activities from Cellular Data. IEEE Transactions on Intelligent Transportation Systems. 19, 6 (Jun. 2018), 1682-1696.、[online]、[令和4年3月12日検索]、インターネット<URL: https://doi.org/10.1109/TITS.2017.2695438>
【文献】Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova: “\lochBERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.”\loch NAACL-HLT (1) 2019: 4171-4186、[online]、[令和4年3月12日検索]、インターネット<URL: https://arxiv.org/abs/1810.04805>
【文献】A. Radford, J. Wu, R. Child, D. Luan, D. Amodei, and I. Sutskever. Language Models are Unsupervised Multitask Learners, 2019, pp.1-24.、[online]、[令和4年3月12日検索]、インターネット<URL:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf>
【文献】Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). Language models are unsupervised multitask learners. OpenAI blog, 1(8), 9.
【文献】S. Welleck, I. Kulikov, J. Kim, R. Y. Pang, and K. Cho, “Consistency of a Recurrent Language Model With Respect to Incomplete Decoding,” Feb. 2020.、[online]、[令和4年3月12日検索]、インターネット<URL:https://arxiv.org/abs/2002.02492>
【発明の概要】
【発明が解決しようとする課題】
【0014】
前述した従来技術によれば、教師有り学習としてLSTM(概念的にはRNN(Recurrent Neural Network))を用いているが、系列データが長くなるほど、最初の方のデータを忘却してしまい、系列データ全体の理解が難しい。また、逐次、再帰的に計算するために、GPU(Graphics Processing Unit)による並列化が困難となる。そのために、系列データが長くなるほど、処理速度も遅くなる。このように、LSTMには系列長に限界があるために、移動軌跡を予測する際に、例えば1日単位程度の位置情報しか用いることができない。
【0015】
ユーザの移動軌跡を予測するために、前述したGPT2を適用することもできる。その場合、ユーザの移動単位は、GPT2のテキストに相当し、ユーザの位置は、GPT2のトークンに相当する。位置であっても、単語列と同等と考えて適用することができる。
【0016】
しかしながら、ユーザの移動軌跡には、周期性がある。人間の社会的活動によれば、一週間単位、一日単位という周期的な単位がある。このような周期性を考慮することなく、GPT2をそのまま適用すると、深夜の行動から昼間の行動を予測するような、人間の社会的活動を無視して予測し続けるという課題が生じる。
【0017】
また、ユーザの移動軌跡の場合、その系列長を予め特定することもできない。勿論、系列長を既知として固定することもできるが、多様且つリアルタイムなユーザの位置の予測に適用することは、現実的ではない。
【0018】
即ち、ユーザの移動軌跡の予測に、GPT2のデータ構造をそのまま適用し、前述した図1のような系列データを構成した場合、複数の時系列の位置が連続して詰め込まれる。このように周期性を無視した場合、深夜の移動軌跡と昼間の移動軌跡との間に関連性が無い場合、深夜の移動軌跡から昼間の移動軌跡を予測することとなる。尚、従来技術における言語生成タスクの場合、長大な文章を大量に学習させる場合が多く、周期性が問題とならない。
【0019】
そこで、本発明によれば、人間の社会的活動に基づく時間的な周期性を考慮して、系列予測モデルを用いてユーザの移動軌跡を予測する予測装置、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【0020】
本発明によれば、系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測する予測装置において、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋めるパディング手段と、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する予測制御手段と
を有することを特徴とする。
【0021】
本発明の予測装置における他の実施形態として、
予測制御手段は、
周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データの先頭トークンを1増分した所定長のトークン列を予測する、又は、
周期期間データと後続期間データの1つ以上のトークンとを含むトークン列を入力し、周期期間データ及び後続期間データに続くトークンを1増分した所定長のトークン列を予測する
ことも好ましい。
【0022】
本発明の予測装置における他の実施形態として、
系列予測モデルは、訓練段階について、周期期間データに続く後続期間データのトークンを1増分しながら所定長のトークン列を入力し、周期期間データに続いて後続期間データのトークンを1増分しながら出力するように訓練を繰り返し、パディングによって1つの系列データの終了を認識する
ことも好ましい。
【0023】
本発明の予測装置における他の実施形態として、
期間データは、単位時間分の複数のトークンからなり、
周期期間データは、複数の単位時間分からなる周期性を持つ期間データからなり、
後続期間データは、周期期間データに後続する単位時間分の複数のトークンからなる
ことも好ましい。
【0024】
本発明の予測装置における他の実施形態として、
期間データ毎に、先頭にスターティングの特殊トークンを更に含むか、又は、後尾にエンディングの特殊トークンを更に含む
ことも好ましい。
【0025】
本発明の予測装置における他の実施形態として、
期間データは、1日分の複数のトークンからなり、
周期期間データは、1週間分の期間データからなり、
後続期間データは、1週間分の期間データに続く1日単位の複数のトークンからなる
ことも好ましい。
【0026】
本発明の予測装置における他の実施形態として、
複数の期間データを含む系列データは、ユーザ毎に区分されており、
期間データに含まれるトークンは、時系列に並ぶ位置情報である
ことも好ましい。
【0027】
本発明の予測装置における他の実施形態として、
パディング手段は、周期期間データにおける期間データに欠損が生じている場合、当該期間データと同一の周期性となる期間データの平均トークン数となるように、欠損部分にパディングを埋める
ことも好ましい。
【0028】
本発明によれば、系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測するようにコンピュータを機能させるプログラムにおいて、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋めるパディング手段と、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する予測制御手段と
してコンピュータを機能させることを特徴とする。
【0029】
本発明によれば、系列データは複数の期間データからなり、各期間データは複数のトークンからなり、所定長のトークン列を入力し、次のトークンを予測する予測装置の予測方法において、
複数の期間データは、時系列としての周期性を持つものであり、
予測装置は、
複数の期間データは、時系列としての周期性を持つものであり、
一周期分の複数の期間データを含む周期期間データと、それに続く後続期間データとを含む最大のトークン数を、系列データの所定長として設定し、
系列データ毎に、所定長に満たない後方にパディングを埋める第1のステップと、
系列予測モデルへ、パディングが埋められた系列データ毎に、周期期間データを含む所定長のトークン列を入力し、周期期間データに続く後続期間データのトークンを1増分した所定長のトークン列を予測する第2のステップと
を実行することを特徴とする。
【発明の効果】
【0030】
本発明における予測装置、プログラム及び方法によれば、人間の社会的活動に基づく時間的な周期性を考慮して、系列予測モデルを用いてユーザの移動軌跡を予測することができる。
【図面の簡単な説明】
【0031】
図1】従来技術におけるGPT2モデルの系列データを表す説明図である。
図2】従来技術におけるGPT2モデルの訓練時の処理を表す説明図である。
図3】本発明における予測装置の機能構成図である。
図4】本発明における系列データを表す説明図である。
図5】本発明における予測装置の訓練時の処理を表す第1の説明図である。
図6】本発明における予測装置の訓練時の処理を表す第2の説明図である。
図7】本発明における予測装置の訓練時の処理を表す第3の説明図である。
図8】系列データにおける期間データ毎にスターティング又はエンディングを含める説明図である。
【発明を実施するための形態】
【0032】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0033】
図3は、本発明における予測装置の機能構成図である。
【0034】
図3によれば、予測装置1は、系列データを予測するものであって、系列予測モデル10と、パディング部11と、予測制御部12とを有する。これら機能構成部は、予測装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、系列データの予測方法としても理解できる。
【0035】
図4は、本発明における系列データを表す説明図である。
【0036】
系列データは、複数の「期間データ」を含むものであって、ユーザ毎に区分されているとする。期間データとは、例えば1日単位であってもよいし、勿論、1時間単位、1週間単位、1ヶ月単位、1年単位であってもよい。即ち、人間の社会活動における周期性を持つ時間単位である。
【0037】
各期間データは、時系列に並ぶ複数の「トークン」からなる。本発明におけるトークンは、位置又はパディングを含む情報単位となる。1つの期間データにおける複数のトークンは、ユーザの時系列の「位置」を表すものであってもよい。複数の期間データは、ユーザにおける周期的な移動軌跡を表すものとなる。
【0038】
図4によれば、期間データは、1日単位であるとする。具体的には例えば以下のように、1週間分+1日分を表す。
<期間データ> <トークン列(時系列の位置)>
2022年1月17日・月曜日: 0,1,2,3
2022年1月18日・火曜日: 0,1,2
2022年1月19日・水曜日: 0,1,2,3,4,5
2022年1月20日・木曜日: 0,1,2,3
2022年1月21日・金曜日: 0,1,2,3,4
2022年1月22日・土曜日: 0,1,2,3,4,5
2022年1月23日・日曜日: 0,1,2,3
2022年1月24日・月曜日: 0,1,2,3
トークン列は、そのユーザの移動軌跡として表される。位置は、ユーザが所持するスマートフォンによって取得されたものであってよいし、通信事業者の基地局やアクセスポイントによって収集されたものであってもよい。
【0039】
また、複数の期間データは、一周期分の複数の期間データを含む「周期期間データ」と、それに続く「後続期間データ」とに区分される。
「周期期間データ」は、2022年1月17日・月曜日から2022年1月23日・日曜日までの、1週間分の期間データを意味する。
「後続期間データ」は、2022年1月24日・月曜日の、周期期間データに後続する期間データを意味する。
【0040】
図4によれば、2022年1月17日・月曜日から2022年1月24日・月曜日までの期間データが連結されている。
ここでは、一周期分の複数の期間データを含む「周期期間データ」と、それに続く「後続期間データ」とを含む最大のトークン数を、系列データの所定長として設定する。即ち、周期期間データ及び後続期間データを合わせて含めることが可能なトークン数を、系列データの所定長として設定する。
これによって、全ての系列データのトークン数を統一すると共に、周期期間データ及び後続期間データを構成する複数のトークンが、異なる系列データに分割されないようにする。
【0041】
本発明によれば、「期間データ」は、単位時間分の複数のトークンからなる。
「周期期間データ」は、複数の単位時間分からなる周期性を持つ期間データからなる。
「後続期間データ」は、周期期間データに後続する単位時間分の複数のトークンからなる。
図4によれば、用途に応じて、以下のように設定されている。
「期間データ」は、1日分の複数のトークンからなる。
「周期期間データ」は、1週間分の期間データからなる。
「後続期間データ」は、1週間分の期間データに続く1日単位の複数のトークンからなる。
尚、前述の例によれば、周期期間データを、月曜日から日曜日の1週間として説明しているが、勿論、それに限られることはない。例えば後続期間データが、火曜日である場合、周期期間データは、火曜日から月曜日の1週間となる。
【0042】
[パディング部11]
パディング部11は、系列データ毎に、所定長(例えば40)に満たない後方にパディングを埋める。パディングによって、系列データの終了を明示する。
【0043】
図4によれば、例えば所定長=40の系列データに、周期期間データ(2022年1月17日・月曜日から2022年1月23日・日曜日までの期間データ)と、後続期間データ(2022年1月24日・月曜日の期間データ)とを含む。また、所定長に満たない後方の4個のトークンにパディングを埋める。このようにして、系列データの長さを統一する。
【0044】
[系列予測モデル10]
系列予測モデル10は、例えばGPT2モデルであってもよい。本発明によれば、既存の言語生成モデルを、ユーザの移動軌跡の予測に適用する。Transformer (Self Attention)ベースの系列予測モデルを用いることによって、長い系列データに対応する。
系列予測モデル10は、所定長n=40のトークン列を入力し、正解となるトークン列を出力するように訓練すると共に、パディングによって1つの系列データの終了を認識する。
【0045】
系列予測モデル10は、予測データとしての出力データのトークン列と、正解データのトークン列との間の誤差を小さくする損失関数を設定する。損失関数としては、例えばクロスエントロピー(Cross entropy)誤差であってもよい。
これによって、出力データのトークン列が、正解データのトークン列との誤差が小さくなるように訓練される。
尚、系列データのトークンにパディングが入力された場合、そのトークンの箇所は、損失関数を算出せず、誤差逆伝播(feedback)しないように訓練される。
【0046】
尚、系列データの所定長nは、系列予測モデル10に依存する。そのために、周期期間データ及び後続期間データを合わせた長さは、所定長n以下とする必要がある。
【0047】
[予測制御部12]
予測制御部12は、系列予測モデル10へ、パディングが埋められた系列データ毎に、「周期期間データ」を含む所定長のトークン列を入力し、周期期間データに続く「後続期間データ」のトークンを1増分した所定長のトークン列を予測する。
ここで、以下のように、2つの意味合いで予測される。
(1)「周期期間データ」を含む所定長のトークン列を入力し、周期期間データに続く「後続期間データの先頭トークン」を1増分した所定長のトークン列を予測する。
(2)「周期期間データ」と「後続期間データの1つ以上のトークン」とを含むトークン列を入力し、「周期期間データ」及び「後続期間データに続くトークン」を1増分した所定長のトークン列を予測する。
即ち、予測制御部12は、系列予測モデル10を、訓練段階について、周期期間データに続く後続期間データのトークンを1増分しながら所定長のトークン列を入力し、周期期間データに続いて後続期間データのトークンを1増分しながら出力するように訓練を繰り返し、パディングによって1つの系列データの終了を認識する。
【0048】
図5は、本発明における予測装置の訓練時の処理を表す第1の説明図である。
【0049】
図5(a)によれば、例えば系列予測モデル10は、以下のように訓練される。
入力データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,P,P,P,P,P,P,P
正解データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,P,P,P,P,P,P
出力データのトークン列:*,*,*,*,*,・・・・・,*,*,*,*,*,*,*,*,*,*,*
この場合、後続期間データの1つのトークン"1"を予測するように訓練される。
【0050】
図5によれば、後続期間データのトークン"1"のみを予測するべく訓練しているように見えるが、系列予測モデル10の内部として、周期期間データにおけるトークン0が入力されただけで、次のトークン1を予測することとができるように学習する。また、周期期間データにおけるトークン0,1が入力されると、次のトークン2を予測することができるように学習する。これを繰り返すと、最終的に、周期期間データについても学習すると共に、後続期間データで既知のトークンまで入力すると、その次のトークンが予測される。
【0051】
図5(b)によれば、図5(a)に続いて、以下のように訓練される。
入力データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,P,P,P,P,P,P
正解データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,2,P,P,P,P,P
出力データのトークン列:*,*,*,*,*,・・・・・,*,*,*,*,*,*,*,*,*,*,*
この場合、後続期間データの1つのトークン"2"を予測するように訓練される。
【0052】
図6は、本発明における予測装置の訓練時の処理を表す第2の説明図である。
【0053】
図6(a)によれば、図5(b)に続いて、以下のように訓練される。
入力データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,2,P,P,P,P,P
正解データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,2,3,P,P,P,P
出力データのトークン列:*,*,*,*,*,・・・・・,*,*,*,*,*,*,*,*,*,*,*
この場合、後続期間データの1つのトークン"3"を予測するように訓練される。
【0054】
図6(b)によれば、図6(a)に続いて、以下のように訓練される。
入力データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,2,3,P,P,P,P
正解データのトークン列:0,1,2,3,0,・・・・・,1,2,3,0,1,2,3,P,P,P,P
出力データのトークン列:*,*,*,*,*,・・・・・,*,*,*,*,*,*,*,*,*,*,*
この場合、後続期間データの1つのトークン"P"を予測するように訓練される。これによって、系列データの終了を認識する。
【0055】
前述した図5及び図6のように、本発明によれば、ユーザ毎に長期間の移動軌跡を訓練しておくことで、直近の周期期間データ及び経過した後続期間データを入力することによって、そのユーザに特徴的な次の移動先の「位置」を予測することができる。
【0056】
ここで、本発明によれば、後続期間データを、1トークン毎に時系列に予測できるようになる。
例えば1週間の周期期間データとパディングが埋め込まれた系列データである場合、次に、後続期間データの日の最初のトークン(位置)が予測される。
例えば1週間の周期期間データと後続期間データの日の最初のトークン(位置)とパディングが埋め込まれた系列データである場合、次に、後続期間データの日の2番目のトークン(位置)が予測される。即ち、予測すべき後続期間データの1日の中で、既に経過したトークン(移動した位置)までを入力することによって、次のトークン(次に移動するであろう位置)を予測することができる。
このように、過去の1週間の周期期間データと後続期間データの経過したトークンまでを入力することによって、次のトークンを予測することができる。
【0057】
図7は、本発明における予測装置の訓練時の処理を表す第3の説明図である。
【0058】
図7によれば、図4と異なって、周期期間データにおける期間データに欠損が生じている。このような場合、後続期間データのトークンの予測を誤る恐れが懸念される。
このような場合、本発明によれば、パディング部11は、当該期間データと同一の周期性となる期間データの平均トークン数となるように、欠損部分にパディングを埋める。
【0059】
図7によれば、周期期間データにおける木曜日の期間データに欠損が生じている。周期期間データは、周期性を持つために、訓練段階でも木曜日の期間データが多数入力されることなる。そのために、木曜日の期間データの平均トークン数に、パディングを埋める。これによって、できる限り、木曜日の期間データの長さを確保する。
尚、前述したように、系列データのトークンにパディングが入力された場合、そのトークンの箇所は、損失関数を算出せず、誤差逆伝播(feedback)しないように訓練される。そのために、後続期間データの予測に影響を与えないようにすることができる。
【0060】
図8は、系列データにおける期間データ毎にスターティング又はエンディングを含める説明図である。
【0061】
図8(a)によれば、期間データ毎に、先頭にスターティングの特殊トークンを更に含む。
図8(b)によれば、期間データ毎に、後尾にエンディングの特殊トークンを更に含む。
これによって、期間データが連続する場合であっても、期間データ毎に区分される。例えば先の期間データの後尾のトークンと、後の期間データの先頭のトークンとが、連続的に発生したものでないことを、特殊トークンによって認識させることができる。
尚、特殊トークンの箇所は、損失関数を算出せず、誤差逆伝播しないように訓練される。そのために、後続する期間データの予測に影響を与えないようにすることができる。
【0062】
以上、詳細に説明したように、本発明における予測装置、プログラム及び方法によれば、人間の社会的活動に基づく時間的な周期性を考慮して、系列予測モデルを用いてユーザの移動軌跡を予測することができる。
【0063】
尚、これにより、「ユーザの位置を予測するためにビッグデータの利用が促進する」ことから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【0064】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0065】
1 予測装置
10 系列予測モデル
11 パディング部
12 予測制御部

図1
図2
図3
図4
図5
図6
図7
図8