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

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

▶ 株式会社博報堂DYホールディングスの特許一覧

特許7565468情報処理システム、情報処理方法、及びコンピュータプログラム
<>
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図1
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図2
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図3
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図4
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図5
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図6
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図7
  • 特許-情報処理システム、情報処理方法、及びコンピュータプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-10-02
(45)【発行日】2024-10-10
(54)【発明の名称】情報処理システム、情報処理方法、及びコンピュータプログラム
(51)【国際特許分類】
   G06Q 30/0601 20230101AFI20241003BHJP
   G06Q 30/0202 20230101ALI20241003BHJP
【FI】
G06Q30/0601 330
G06Q30/0202
【請求項の数】 5
(21)【出願番号】P 2024050389
(22)【出願日】2024-03-26
【審査請求日】2024-03-26
【早期審査対象出願】
(73)【特許権者】
【識別番号】507009009
【氏名又は名称】株式会社博報堂DYホールディングス
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際弁理士法人
(72)【発明者】
【氏名】藤原 晴雄
【審査官】山田 倍司
(56)【参考文献】
【文献】中国特許出願公開第111429234(CN,A)
【文献】中国特許出願公開第116362833(CN,A)
【文献】中国特許出願公開第114493755(CN,A)
【文献】中国特許出願公開第111506814(CN,A)
【文献】特開2024-016526(JP,A)
【文献】特表2023-537879(JP,A)
【文献】中国特許出願公開第111127165(CN,A)
【文献】中国特許出願公開第115511546(CN,A)
【文献】米国特許出願公開第2022/0237682(US,A1)
【文献】Siamak Zamani et al.,Towards Deeper Understanding of Variational Auto-encoders for Binary Collaborative Filtering,ACM International Conference on Theory of Information Retrieval,2022年,pp.254-263,https://doi.org/10.1145/3539813.3545145
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得するように構成される取得部と、
事前学習されたオートエンコーダ(AE)ベースの予測モデルであって、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルに、前記時系列データを入力することにより、前記消費者が消費又は購入する商品を予測するように構成される予測部と、
を備え、
前記予測モデルは、前記商品集合が多項分布に従うとの仮定に基づくMult-VAE(変分オートエンコーダ)ベース又はMult-DAE(デノイジングオートエンコーダ)ベースの予測モデルである情報処理システム。
【請求項2】
請求項1記載の情報処理システムであって、
前記予測部は、
複数の時点t=1,…,T-1のそれぞれに関する、前記消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、前記対応する時点tで第v商品を前記消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、前記埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換し、
前記複数の時点t=1,…,Tの前記埋め込み表現h u,tを、前記トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、前記デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、前記マスクされた特徴ベクトルxu,tの予測値x u,Tを取得し、
それにより、前記消費者が前記予測対象の時点t=Tで消費又は購入する商品を予測する情報処理システム。
【請求項3】
コンピュータにより実行される情報処理方法であって、
消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得することと、
事前学習されたオートエンコーダ(AE)ベースの予測モデルであって、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルに、前記時系列データを入力することにより、前記消費者が消費又は購入する商品を予測することと、
を含み、
前記予測モデルは、前記商品集合が多項分布に従うとの仮定に基づくMult-VAE(変分オートエンコーダ)ベース又はMult-DAE(デノイジングオートエンコーダ)ベースの予測モデルである情報処理方法。
【請求項4】
請求項記載の情報処理方法であって、
前記予測することは、
複数の時点t=1,…,T-1のそれぞれに関する、前記消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、前記対応する時点tで第v商品を前記消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、前記埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換することと、
前記複数の時点t=1,…,Tの前記埋め込み表現h u,tを、前記トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、前記デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、前記マスクされた特徴ベクトルxu,tの予測値x u,Tを取得し、それにより、前記消費者が前記予測対象の時点t=Tで消費又は購入する商品を予測することと、
を含む情報処理方法。
【請求項5】
コンピュータに、請求項又は請求項記載の情報処理方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理システム及び情報処理方法に関する。
【背景技術】
【0002】
従来、消費者の購買履歴に基づいて、消費者に推薦する商品を選択する技術が知られている(例えば特許文献1参照)。消費者の購買履歴に基づく機械学習により、商品の購入確率を算出する技術も知られている。
【0003】
買い物かご単位、換言すれば1会計当たりの購買商品の集合単位で消費者の購買行動を予測する技術も知られている。この技術によれば、過去に同時購入された商品を分析することにより、購入される確率の高い商品を推薦することが可能である。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2020-47156号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、買い物かご単位の購買履歴に基づく購買予測であっても、依然として、その予測精度に改善の余地がある。
【0006】
そこで、本開示の一側面によれば、消費者が過去の複数の時点のそれぞれで消費又は購入した商品集合に基づき、消費者が消費又は購入する商品を高精度に予測可能な技術を提供できることが望ましい。
【課題を解決するための手段】
【0007】
本開示の一側面によれば、情報処理システムが提供される。情報処理システムは、取得部と、予測部とを備える。取得部は、消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得するように構成される。予測部は、時系列データに基づいて、消費者が消費又は購入する商品を予測するように構成される。
【0008】
本開示の一側面によれば、予測部は、事前学習されたオートエンコーダ(AE)ベースの予測モデルに、時系列データを入力することにより、消費者が消費又は購入する商品を予測するように構成される。
【0009】
本開示の一側面によれば、予測モデルは、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルである。この情報処理システムによれば、商品集合の時系列データに基づき、商品間の関係、及び、消費又は購買の順序を加味して、消費者が消費又は購入する商品を高精度に予測可能である。
【0010】
本開示の一側面によれば、予測モデルは、変分オートエンコーダ(VAE)ベースの予測モデルであり得る。予測部は、上記予測モデルを用いて、消費者が消費又は購入する商品を確率的に予測するように構成され得る。
【0011】
変分オートエンコーダ(VAE)ベースの予測モデルによれば、消費者の気分や商品の発見等による偶発的な意思決定による不確実な消費又は購買行動を、確率的な行動として適切に表現することができ、消費者が消費又は購入する商品を高精度に予測可能である。
【0012】
本開示の一側面によれば、予測部は、複数の時点t=1,…,T-1のそれぞれに関する、消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換するように構成され得る。
【0013】
特徴ベクトルxu,tは、v=1からv=Vまでの要素xu,t (v)を含む特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、対応する時点tで、第v商品を、消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であり得る。
【0014】
予測部はさらに、複数の時点t=1,…,Tの埋め込み表現h u,tを、トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、マスクされた特徴ベクトルxu,tの予測値x u,Tを取得するように構成され得る。予測部は、それにより、消費者が予測対象の時点t=Tで消費又は購入する商品を予測するように構成され得る。こうした予測手法によれば、消費者が消費又は購入する商品を高精度に予測可能である。
【0015】
本開示の別側面によれば、情報処理方法が提供されてもよい。情報処理方法は、コンピュータによって実行され得る。情報処理方法は、消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得することを含み得る。情報処理方法は、時系列データに基づいて、消費者が消費又は購入する商品を予測することを含み得る。
【0016】
本開示の別側面によれば、予測することは、事前学習されたオートエンコーダ(AE)ベースの予測モデルであって、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルに、時系列データを入力することにより、消費者が消費又は購入する商品を予測することを含み得る。この情報処理方法によっても、情報処理システムと同様に、消費者が消費又は購入する商品を高精度に予測可能である。
【0017】
本開示の別側面によれば、予測モデルは、変分オートエンコーダ(VAE)ベースの予測モデルであってもよい。予測することは、消費者が消費又は購入する商品を確率的に予測することを含んでいてもよい。
【0018】
本開示の別側面によれば、予測することは、複数の時点t=1,…,T-1のそれぞれに関する、消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換することを含み得る。
【0019】
特徴ベクトルxu,tは、v=1からv=Vまでの要素xu,t (v)を含む特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、対応する時点tで第v商品を消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であり得る。
【0020】
本開示の別側面によれば、予測することは、複数の時点t=1,…,Tの埋め込み表現h u,tを、トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、マスクされた特徴ベクトルxu,tの予測値x u,Tを取得し、それにより、消費者が予測対象の時点t=Tで消費又は購入する商品を予測することを含み得る。
【0021】
本開示のさらに別側面によれば、コンピュータに上述した情報処理方法を少なくとも部分的に実行させるためのコンピュータプログラムが提供され得る。コンピュータプログラムは、コンピュータ読取可能な記録媒体に記録され得る。
【図面の簡単な説明】
【0022】
図1】情報処理システムの構成を表すブロック図である。
図2】購買履歴データの構成を表す図である。
図3】バスケットデータの構成を表す図である。
図4】予測モデルを用いた予測方法を説明する図である。
図5】予測モデルの構成を概念的に表す図である。
図6】トランスフォーマ層の内部構造を概念的に表す図である。
図7】プロセッサが実行するモデル構築処理を表すフローチャートである。
図8】プロセッサが実行する予測処理を表すフローチャートである。
【発明を実施するための形態】
【0023】
以下に本開示の例示的実施形態を、図面を参照しながら説明する。
図1に示す本実施形態の情報処理システム1は、消費者の購買履歴から、消費者が購入する商品を予測するためのシステムである。ここでは、一度の会計で購入される商品集合、すなわち会計単位での購買商品の集合のことを、バスケット単位の商品集合という。
【0024】
バスケットは、買い物かごを意味する。バスケット単位は、会計単位と理解されてもよい。購買の例には、コンビニエンスストアやスーパーマーケットなどの実店舗での購買の他、オンラインストアでの購買が含まれる。
【0025】
情報処理システム1は、過去に購入されたバスケット単位の商品集合の時系列を加味して、消費者によって次回購入される可能性の高い商品を予測する。情報処理システム1は、上記予測した商品の購入を、対応する消費者に推薦するように構成される。
【0026】
商品の推薦は、例えばオンラインストアの場合、消費者によるオンラインストアの訪問時に、消費者の情報端末を通じて、お薦め商品を表示することによって行われ得る。別例によれば、商品の推薦は、消費者の情報端末に対して、お薦め商品を紹介するメッセージ(例えば電子メール等)を送信することによって行われ得る。
【0027】
情報処理システム1は、コンピュータシステムに、専用のコンピュータプログラムがインストールされることによって構成される。情報処理システム1は、プロセッサ11と、メモリ13と、ストレージ15と、通信インタフェース19とを備える。情報処理システム1は、例えば広域ネットワークに接続されたサーバとして構成される。
【0028】
プロセッサ11は、コンピュータプログラムに従う処理を実行する。メモリ13は、RAMを備え、プロセッサ11による処理実行時に作業領域として使用される。ストレージ15は、ハードディスクドライブ及び/又はソリッドステートドライブを備え、コンピュータプログラム及び各種データを記憶する。
【0029】
通信インタフェース19は、外部デバイスと通信可能に構成される。外部デバイスの例は、管理者端末、店舗端末、及び消費者端末が含まれる。管理者端末は、情報処理システム1を管理する管理者の情報端末を含む。
【0030】
店舗端末は、情報処理システム1との通信により得られたお薦め商品の情報を消費者に表示する機能を有する店舗端末であり得る。消費者端末は、消費者がオンラインストアにアクセスして商品購入可能な情報端末であり得る。
【0031】
情報処理システム1は、消費者によって購入される可能性の高い商品を予測するために、複数の消費者に関して、消費者毎の購買履歴データをストレージ15に記憶する。購買履歴データは、例えば通信インタフェース19を通じて外部デバイスから提供され、ストレージ15に格納される。
【0032】
消費者毎の購買履歴データは、図2に示すように、対応する消費者の識別情報である消費者IDに関連付けて、対応する消費者によって購入された商品の集合をバスケット単位かつ時系列で説明するバスケット時系列データを有する。
【0033】
バスケット時系列データは、消費者が複数の時点のそれぞれで購入した商品集合を時系列で説明する時系列データである。バスケット時系列データは、複数のバスケットデータを有する。
【0034】
一つのバスケットデータは、一度の会計での消費者による商品の購買を説明する。バスケットデータのそれぞれは、対応する会計で、対応する消費者が購入した商品集合を説明する。
【0035】
バスケット時系列データは、予測に使用されるバスケットデータとして、最新のバスケットデータを末尾とする所定数のバスケットデータを有する。バスケット時系列データにおいて、これらのバスケットデータは、会計順に配列される。
【0036】
ここでは、予測に使用されるバスケットデータの個数が(T-1)であることを前提に、(T-1)個のバスケットデータのうち、最も古いバスケットデータを、時点t=1のバスケットデータと表現し、最も新しいバスケットデータを、時点t=T-1のバスケットデータと表現する。
【0037】
複数のバスケットデータを、最も古いバスケットデータを先頭に時系列で配列したときに、t番目に位置づけられるバスケットデータのことを、以下では、時点tのバスケットデータと表現する。
【0038】
情報処理システム1では、時点t=1から時点t=T-1までの(T-1)個のバスケットデータに基づき、次の購買時点t=Tにおいて、消費者が購入する可能性の高い商品が予測される。
【0039】
バスケットデータのそれぞれは、図3に示すように、複数の商品に関し、商品毎に、商品IDの情報に関連付けて、対応する商品の購買量を説明する情報を有する。バスケットデータのそれぞれは、第1商品から第V商品までの商品数Vの商品に関して、商品毎に、対応する消費者による対応する商品の購買量を説明する。購買量は、購買がないことを値ゼロで示すことによって、購買の有無を表す。本実施形態によれば、購買量は、対応する商品を、対応する消費者が購入したか否かを表す0,1のバイナリ値で表される。
【0040】
以下では、時点tにおける第v商品の購買量を表す変数として、xu,t (v)を用いる。インデックスuは、消費者のインデックスである。以下で表現する購買xu,t (v)は、対応する消費者uについての時点tのバスケットデータが示す第v商品の購買量を意味する。すなわち、購買xu,t (v)は、時点tで第v商品を、対応する消費者uが購入したか否かを表す。
【0041】
さらに以下で表現するバスケットxu,tは、時点tでの消費者の購買に関する特徴ベクトルxu,t=[xu,t (1),xu,t (2),…,xu,t (v),…,xu,t (V)]であり、第1商品から第V商品までの購買xu,t (v)を要素に有するV次元のベクトルである。すなわち、バスケットxu,tは、時点tの会計において消費者uが購入した商品の集合を表す特徴ベクトルである。
【0042】
プロセッサ11は、消費者の購買商品を予測することが要求された場合、対応する消費者の購入履歴データにおけるバスケット時系列データに基づき、予測モデル20に対する入力Sとして、対応する消費者の購買をバスケット単位かつ時系列で表すバスケット列S={xu,1,xu,2,…,xu,t,…,xu,T-1,xu,T}を生成する。
【0043】
バスケット列Sは、過去における複数の時点t=1,…,T-1での消費者のバスケットxu,1,xu,2,…,xu,t=T-1を要素に有する。バスケット列Sは、さらに、マスクされたバスケットxu,t=Tを要素に有する。
【0044】
マスクされたバスケットxu,t=Tは、バスケットxu,1,xu,2,…,xu,t=T-1とは異なり、観測された具体的数値がセットされていない、予測対象のバスケットに対応する。マスクされたバスケットxu,t=Tは、マスクトークンに対応する。
【0045】
プロセッサ11は、図4に示すように、生成したバスケット列Sを、予測モデル20に入力することにより、予測対象の時点である次回購買時点t=Tにおける消費者のバスケットxu,Tの予測値x u,T=[x u,T (1),x u,T (2),…,x u,T (v),…,x u,T (V)]を算出する。
【0046】
予測値x u,T (v)は、第v商品を、時点t=Tにおいて消費者uが購入する確率を表す。予測値x u,T (v)は、第v商品の購入確率を、値0から値1までの範囲で表す値であると理解されてもよい。
【0047】
予測モデル20は、変分オートエンコーダ(VAE)ベースの予測モデル20であって、トランスフォーマ構造を備える予測モデル20である。図5には、予測モデル20の構造を概念的に示す。予測モデル20は、特には、Mult-VAEベースの予測モデル20として構築される。
【0048】
図5に示す予測モデル20は、VAEに対応する構造として、埋め込み層21と、デコーディング層25とを備える。予測モデル20は、埋め込み層21と、デコーディング層25との間に、複数のトランスフォーマ層23、換言すれば多段のトランスフォーマ層23を有する。
【0049】
多段のトランスフォーマ層23は、第1段のトランスフォーマ層23から第M段のトランスフォーマ層23までを備える。トランスフォーマ(Transformer)は、自然言語処理において使用される深層学習モデルの一つとして知られている。
【0050】
予測モデル20に入力されるバスケット列S={xu,1,xu,2,…,xu,t,…,xu,T-1,xu,T}の各要素としてのバスケットxu,t(t=1,…,T)は、BOW(Bag-of―Words)ベクトルに対応する。バスケットxu,tは、埋め込み層21に入力されることにより、埋め込み表現に置換される。
【0051】
本実施形態では、予測モデル20におけるMult-VAEの定式化に際して、消費者のバスケットxu,t∈Sが、以下の多項分布に従うとの前提を置いている。
【0052】
【数1】
【0053】
ここで、zu,tは、バスケットxu,tの潜在ベクトルである。N()は、正規分布を表し、Mult()は、多項分布を表す。N(0,I)は、標準正規分布を意味している。softmax()は、ソフトマックス関数である。
【0054】
θは、パラメータθによって表現されるMLP(多層パーセプトロン)の関数表現である。fθ(zu,t)は、MLPによりデコードされた潜在ベクトルzu,tに対応する。Nu,tは、対応するバスケットxu,tでの購入商品数に対応する。このような定式化によれば、消費者の対数尤度は、次式で表される。
【0055】
【数2】
【0056】
真の事後分布p(zu,t|xu,t)を直接求めることは困難である。本実施形態では、変分下限(ELBO,evidence lower bound)を用いて、θが推定される。
【0057】
事後分布p(zu,t|xu,t)に対する近似分布q(zu,t)が正規分布N(μu,t,σu,t)であると仮定すれば、ELBO目的関数は以下の式として定義される。このELBO目的関数を用いて、学習パラメータφを最適化することによれば、分布qφ(zu,t|xu,t)は、真の事後分布p(zu,t|xu,t)によく近似する。
【0058】
【数3】
【0059】
上式において、E[]は、期待値を意味し、KL()は、カルバックライブラー情報量を意味する。本実施形態によれば、KL項に正規化項βが導入されている。
【0060】
上述の通り、消費者のバスケットxu,t(t=1,…,T)は、事前学習されたMult-VAEのエンコーダgφ1によって、初期隠れベクトルに変換される。すなわち、バスケット列S={xu,1,xu,2,…,xu,t,…,xu,T-1,xu,T}は、埋め込み層21に入力され、埋め込み層21において初期隠れベクトル{gφ1(xu,1),gφ1(xu,2),…,gφ1(xu,t),…,gφ1(xu,T-1),gφ1(xu,T)}に変換される。
【0061】
その後、連結器27によって、初期隠れベクトル{gφ1(xu,1),gφ1(xu,2),…,gφ1(xu,t),…,gφ1(xu,T-1),gφ1(xu,T)}には、位置エンコーディングpが連結される。それにより、埋め込み表現としての隠れベクトルh u,t(t=1,…,T)が生成される。
【0062】
【数4】
【0063】
位置エンコーディングは、バスケット列の始点t=1を基準とした絶対的な位置情報を埋め込むこと、又は、その埋め込み位置情報(p)に対応する。複数の時点t=1,…,Tの特徴ベクトルxu,tを隠れベクトルh u,t(t=1,…,T)に変換することは、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t(t=1,…,T)に変換することに対応する。
【0064】
隠れベクトルh u,t(t=1,…,T)は、これを含む行列H ={h u,1,h u,2,…,h u,t,…,h u,T}にまとめられて、多段構成のトランスフォーマ層23に入力される。
【0065】
各段のトランスフォーマ層23は、マルチヘッドトランスフォーマ層であり、図6に示す通り、マルチヘッドセルフアテンション機構231、フィードフォワードネットワーク233、及び、GELE活性化関数235を含む。
【0066】
m=1,2,…,Mについて、第m-1段のトランスフォーマ層23の出力Hm-1 が、第m段のトランスフォーマ層23に入力される。第m段のトランスフォーマ層23の出力H =Transformerφ2(Hm-1 )が、第m+1段のトランスフォーマ層23に入力される(m=Mを除く)。φは、トランスフォーマ層23の学習パラメータに対応する。
【0067】
【数5】
【0068】
を多段のトランスフォーマ層23に通して得られる最終段である第M段のトランスフォーマ層23からの出力H ={h u,1,h u,2,…,h u,t,…,h u,T}からは、各時点t(t=1,…T)での購買に関する分布を説明する平均及び標準偏差に対応するパラメータμφ(xu,t),σφ(xu,t)が得られ、分布qφ(zu,t|xu,t)が得られる。
【0069】
分布qφ(zu,t|xu,t)は、事後分布の近似に対応する。ここで、φ=φ∪φは、埋め込み層21のパラメータφ及びトランスフォーマ層23のパラメータφの集合を表す。
【0070】
【数6】
【0071】
diag()は、主対角上に括弧内のベクトルの要素を有する正方対角行列に対応する。デコーディング層25は、第M段のトランスフォーマ層23からの出力H をデコードすることにより、詳細には出力H に基づく潜在ベクトルzu,Tをデコードすることにより時点t=Tにおけるバスケットxu,Tの予測値x u,T=fθ(zu,T)を算出して出力する。上述した通り、予測値x u,T=[x u,T (1),x u,T (2),…,x u,T (v),…,x u,T (V)]は、時点t=Tにおける各商品の購入確率を表す。
【0072】
本実施形態の予測モデル20は、t=Tでのバスケットxu,Tが観測された学習用のバスケット列Sを用いて、さらには、ELBO目的関数を用いて、予測モデル20のパラメータθ,φを最適化することにより、構築される。
【0073】
プロセッサ11は、予測モデル20の構築のために、図7に示すモデル構築処理を実行することができる。モデル構築処理において、プロセッサ11は、学習用データとして、ストレージ15に記憶された複数の消費者の購買履歴データを取得し、取得した学習用データに基づいて、学習用のバスケット列Sを生成する(S110)。
【0074】
その後、プロセッサ11は、学習用のバスケット列Sを用いて、予測モデル20のパラメータθ,φを最適化するように学習する(S120)。これにより、予測モデル20を構築する。
【0075】
予測モデル20のパラメータθ,φの最適化は、ELBO目的関数を最大化するように行われ得る。プロセッサ11は、[数3]に示す式を、目的関数として用いて、qφ(zu,t|xu,t)が真の事後分布p(zu,t|xu,t)の良い近似モデルとなるようパラメータθ,φの学習を行うことができる。
【0076】
S120での処理後、プロセッサ11は、上記パラメータθ,φの学習値を保存することにより、予測モデル20を保存する(S130)。プロセッサ11は、このようにモデル構築処理を実行する。
【0077】
プロセッサ11はさらに、予測指示が入力されると、図8に示す予測処理を実行する。予測指示は、例えば、消費者がオンラインストアにアクセスしたときに、オンラインストアを管理するサーバから入力され得る。
【0078】
あるいは、予測指示は、消費者が情報端末又は店舗端末を通じて所定のアプリケーションプログラムを操作したときに、情報端末又は店舗端末から入力され得る。あるいは、予測指示は、情報処理システム1内のタイマーから定期的に入力され得る。入力は、通信インタフェース19を通じた通信により実現され得る。
【0079】
プロセッサ11は、予測処理を開始すると、予測対象の消費者を判別する(S210)。予測指示には予測対象の消費者を指定する情報が例えば消費者IDの形態で含まれ得る。その後、プロセッサ11は、判別した消費者の購買履歴データを参照して、バスケット列Sを生成する(S220)。
【0080】
その後、プロセッサ11は、パラメータθ,φの学習値をセットした予測モデル20に、バスケット列Sを入力することにより、次回購買時点t=Tにおけるバスケットxu,Tの予測値x u,Tを取得する。すなわち、プロセッサ11は、バスケット列Sと、予測モデル20とに基づいて、次回購買時点t=Tにおけるバスケットxu,Tの予測値x u,Tを算出する(S230)。
【0081】
上述した通り、予測値x u,T=[x u,T (1),x u,T (2),…,x u,T (v),…,x u,T (V)]は、v=1からv=Vまでの各商品の購入確率を表す。消費者が購入する商品を予測することは、この予測値x u,Tを算出すること、換言すれば、各商品の購入確率を算出することに対応する。
【0082】
続くS240において、プロセッサ11は、得られた予測値x u,Tに基づいて、v=1からv=Vまでの商品を、購入確率の高い順にソートする。プロセッサ11は、購入確率を基準に、複数の商品(v=1,…,V)の中から、S210で判別した消費者に対して推薦する商品を、お薦め商品として選択する。これにより、プロセッサ11は、お薦め商品を決定する。
【0083】
一例によれば、プロセッサ11は、購入確率の高い順に、所定個の商品を消費者が次回購入する可能性の高い商品と予測し、上記消費者に対するお薦め商品に決定することができる。
【0084】
別例によれば、プロセッサ11は、購入確率が基準以上の商品群の中から、ランダムで一つ以上の所定個の商品を上記消費者に対するお薦め商品に決定することができる。さらなる別例によれば、プロセッサ11は、対応する消費者が同時に購入する商品数を統計的に予測して、予測される商品数の商品を、購入確率の高い順に選択することにより、次回購入されるバスケット単位の商品集合を予測し、予測されたバスケット単位の商品集合を、お薦めの商品に決定することができる。
【0085】
続くS250において、プロセッサ11は、S240で決定されたお薦め商品を、対応する消費者に推薦するためのリコメンド処理を実行する。リコメンド処理は、例えば、予測指示元に、お薦め商品の情報として、お薦め商品のリストを出力する処理であり得る。予測指示元は、得られたリストに基づいて、消費者の情報端末、又は、消費者が操作する店舗顛末を通じて、消費者に対してお薦め商品の購入を提案することができる。
【0086】
プロセッサ11は、対応する消費者に対して商品の購入を提案するメッセージを生成して、当該メッセージを、予め登録された消費者の情報端末に送信するための処理を、上記リコメンド処理として実行してもよい。
【0087】
プロセッサ11は、このようなリコメンド処理を実行することにより、消費者が次回購入する可能性の高い商品の購入を促すように、お薦め商品の購入を消費者に対して提案する。
【0088】
以上に説明した本実施形態の情報処理システム1によれば、VAEベースの予測モデル20を用いているため、消費者の不確実な購買行動を確率的に適切に評価して、高精度に、購入可能性の高い商品を予測することができる。
【0089】
本実施形態では特に、位置エンコーティングpを用いることにより、バスケットxu,tの時系列、すなわち、商品購買の時系列を考慮して、次回購入される可能性の高い商品を予測することができる。
【0090】
このような購買の時系列を考慮した予測によれば、時系列を考慮せずに、単に消費者が過去に購入した商品の一群に基づき次回購入する商品を予測する技術と比較して、購買の予測精度を高めることが可能である。
【0091】
さらに言えば、本実施形態では、予測モデル20にトランスフォーマ構造を導入している。トランスフォーマ構造の導入によれば、セルフアテンション機構によって、消費者の長期な購買商品間の相互作用を学習することができて、時間的ダイナミクスを踏まえた購買予測及び推薦を実現することができる。
【0092】
[その他の実施形態]
本開示は、上記実施形態に限定されるものではなく、種々の態様を採ることができる。例えば、上記実施形態では、Mult-VAEベースの予測モデル20によって、購買予測を行ったが、この予測モデル20に代えて、デノイジングオートエンコーダ(DAE)ベースの予測モデルが用いられてもよい。
【0093】
具体的には、Mult-DAEベースの予測モデルが用いられてもよい。Mult-DAEベースの予測モデルは、バスケット列Sの潜在表現として、確率モデルが用いられない点を除けば、上述したMult-VAEベースの予測モデル20と同様に構成され得る。十分な学習用データが得られるとき、Mult-DAEベースの予測モデルは、Mult-VAEベースの予測モデル20に代えて用いられ得る。
【0094】
また、上記実施形態では、予測結果を消費者に対するお薦め商品の紹介に用いる例を説明したが、本開示は、予測結果の用途を限定しない。予測結果は、消費者の未来の購買行動を知ることが有意義な種々のサービスに活用され得る。
【0095】
本開示の技術は、消費行動の予測に用いられてもよい。例えば、情報処理システム1は、購買履歴データに代えて、消費者の消費行動に関する履歴データを備えることができる。履歴データは、消費者が複数の時点のそれぞれで消費した商品集合を時系列で説明する時系列データを備えることができる。プロセッサ11は、この時系列データに基づいて、上述した購買行動と同じ方式で、消費者が消費する商品を予測することができる。
【0096】
上記実施形態における1つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、1つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【0097】
[本明細書が開示する技術思想]
本明細書には、次の技術思想が開示されていると理解することができる。
[項目1]
消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得するように構成される取得部と、
前記時系列データに基づいて、前記消費者が消費又は購入する商品を予測するように構成される予測部と、
を備え、
前記予測部は、事前学習されたオートエンコーダ(AE)ベースの予測モデルであって、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルに、前記時系列データを入力することにより、前記消費者が消費又は購入する商品を予測する情報処理システム。
[項目2]
項目1記載の情報処理システムであって、
前記予測モデルは、変分オートエンコーダ(VAE)ベースの予測モデルであり、
前記予測部は、前記予測モデルを用いて、前記消費者が消費又は購入する商品を確率的に予測する情報処理システム。
[項目3]
項目1又は項目2記載の情報処理システムであって、
前記予測部は、
複数の時点t=1,…,T-1のそれぞれに関する、前記消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、前記対応する時点tで第v商品を前記消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、前記埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換し、
前記複数の時点t=1,…,Tの前記埋め込み表現h u,tを、前記トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、前記デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、前記マスクされた特徴ベクトルxu,tの予測値x u,Tを取得し、
それにより、前記消費者が前記予測対象の時点t=Tで消費又は購入する商品を予測する情報処理システム。
[項目4]
コンピュータにより実行される情報処理方法であって、
消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データを取得することと、
前記時系列データに基づいて、前記消費者が消費又は購入する商品を予測することと、
を含み、
前記予測することは、事前学習されたオートエンコーダ(AE)ベースの予測モデルであって、埋め込み層とデコーディング層との間に、トランスフォーマ層を有する予測モデルに、前記時系列データを入力することにより、前記消費者が消費又は購入する商品を予測することを含む情報処理方法。
[項目5]
項目4記載の情報処理方法であって、
前記予測モデルは、変分オートエンコーダ(VAE)ベースの予測モデルであり、
前記予測することは、前記消費者が消費又は購入する商品を確率的に予測することを含む情報処理方法。
[項目6]
項目4又は項目5記載の情報処理方法であって、
前記予測することは、
複数の時点t=1,…,T-1のそれぞれに関する、前記消費者が対応する時点tで消費又は購入した商品の集合を示す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]であって、v=1からv=Vまでの各要素xu,t (v)が、前記対応する時点tで第v商品を前記消費者が消費又は購入したか否かを表す特徴ベクトルxu,t=[xu,t (1),…,xu,t (V)]、さらには、予測対象の時点t=Tに関するマスクされた特徴ベクトルxu,tを、前記埋め込み層に入力することによって、複数の時点t=1,…,Tの特徴ベクトルxu,tを、事前学習されたエンコーダgφ1及び位置エンコーティングpに基づく埋め込み表現h u,t=gφ1(xu,t)+pに変換することと、
前記複数の時点t=1,…,Tの前記埋め込み表現h u,tを、前記トランスフォーマ層としての多段のトランスフォーマ層に通して得られる、最終段のトランスフォーマ層からの出力を、前記デコーディング層において、事前学習されたデコーダを用いてデコードすることにより、前記マスクされた特徴ベクトルxu,tの予測値x u,Tを取得し、それにより、前記消費者が前記予測対象の時点t=Tで消費又は購入する商品を予測することと、
を含む情報処理方法。
[項目7]
コンピュータに、項目4又は項目5記載の情報処理方法を実行させるためのコンピュータプログラム。
[項目8]
コンピュータに、項目6記載の情報処理方法を実行させるためのコンピュータプログラム。
【符号の説明】
【0098】
1…情報処理システム、11…プロセッサ、13…メモリ、15…ストレージ、19…通信インタフェース、20…予測モデル、21…埋め込み層、23…トランスフォーマ層、25…デコーディング層、27…連結器。
【要約】
【課題】消費者が消費又は購入する商品を高精度に予測可能な技術を提供する。
【解決手段】消費者が複数の時点のそれぞれで消費又は購入した商品集合を時系列で説明する時系列データが取得される。時系列データに基づいて、消費者が消費又は購入する商品が予測される。事前学習されたオートエンコーダベースの予測モデル20であって、埋め込み層21とデコーディング層25との間に、トランスフォーマ層23を有する予測モデル20に、時系列データを入力することにより、消費者が消費又は購入する商品が予測される。
【選択図】図5
図1
図2
図3
図4
図5
図6
図7
図8