(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024166773
(43)【公開日】2024-11-29
(54)【発明の名称】情報処理装置、情報処理方法、および情報処理プログラム
(51)【国際特許分類】
G06Q 30/0242 20230101AFI20241122BHJP
【FI】
G06Q30/0242
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023083109
(22)【出願日】2023-05-19
(71)【出願人】
【識別番号】500257300
【氏名又は名称】LINEヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】安部 斉志
(72)【発明者】
【氏名】江島 昇太
(72)【発明者】
【氏名】土屋 一輝
(72)【発明者】
【氏名】▲高▼橋 良希
(72)【発明者】
【氏名】實原 弘亮
【テーマコード(参考)】
5L030
5L049
【Fターム(参考)】
5L030BB08
5L049BB08
(57)【要約】
【課題】広告に関するスコアを適切に算出することができる情報処理装置、情報処理方法、および情報処理プログラムを提供すること。
【解決手段】本開示の情報処理装置は、取得部と、算出部とを備える。取得部は、ユーザがコンバージョンに至るまでにユーザに提供された複数の広告の情報であって複数の広告のユーザへの提供順序の情報を含む提供広告情報を取得する。算出部は、取得部によって取得された提供広告情報に基づいて、コンバージョンに対する複数の広告の各々の相対貢献度を示すスコアを算出する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
ユーザがコンバージョンに至るまでに前記ユーザに提供された複数の広告の情報であって前記複数の広告の前記ユーザへの提供順序の情報を含む提供広告情報を取得する取得部と、
前記取得部によって取得された前記提供広告情報に基づいて、前記コンバージョンに対する前記複数の広告の各々の相対貢献度を示すスコアを算出する算出部と、を備える
ことを特徴とする情報処理装置。
【請求項2】
前記算出部は、
前記ユーザの情報と前記ユーザへの提供順序の情報を含む情報に基づいてコンバージョンを予測するモデルを用いて、前記複数の広告の各々の相対貢献度を示すスコアを算出する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記算出部は、
前記複数の広告が前記ユーザに提供された場合の前記モデルによって予測されるコンバージョンと、前記複数の広告のうちの一部が前記ユーザに提供された場合の前記モデルによって予測されるコンバージョンとに基づいて、前記複数の広告の各々の相対貢献度を示すスコアを算出する
ことを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記算出部は、
前記モデルで用いられるソフトマックス関数の出力値または前記出力値を用いて得られる値を前記複数の広告の各々の相対貢献度を示すスコアとして算出する
ことを特徴とする請求項2に記載の情報処理装置。
【請求項5】
前記算出部は、
前記ユーザへ前記複数の広告が提供されない場合のコンバージョンであるオーガニックコンバージョンを除外して前記複数の広告の各々の相対貢献度を示すスコアを算出する
ことを特徴とする請求項2~4のいずれか1つに記載の情報処理装置。
【請求項6】
前記算出部は、
前記オーガニックコンバージョンを推定する推定処理部と、
前記推定処理部によって推定された前記オーガニックコンバージョンを除外したコンバージョンに基づいて前記モデルを生成する生成処理部と、を備える
ことを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記算出部は、
前記オーガニックコンバージョンを推定する推定処理部と、
前記推定処理部によって推定された前記オーガニックコンバージョンに応じた重み付けを前記モデルに追加し、前記重み付けを追加した前記モデルを用いて前記複数の広告の各々の相対貢献度を示すスコアを算出する算出処理部と、を備える
ことを特徴とする請求項5に記載の情報処理装置。
【請求項8】
コンピュータが実行する情報処理方法であって、
ユーザがコンバージョンに至るまでに前記ユーザに提供された複数の広告の情報であって前記複数の広告の前記ユーザへの提供順序の情報を含む提供広告情報を取得する取得工程と、
前記取得工程によって取得された前記提供広告情報に基づいて、前記コンバージョンに対する前記複数の広告の各々の相対貢献度を示すスコアを算出する算出工程と、を含む
ことを特徴とする情報処理方法。
【請求項9】
ユーザがコンバージョンに至るまでに前記ユーザに提供された複数の広告の情報であって前記複数の広告の前記ユーザへの提供順序の情報を含む提供広告情報を取得する取得手順と、
前記取得手順によって取得された前記提供広告情報に基づいて、前記コンバージョンに対する前記複数の広告の各々の相対貢献度を示すスコアを算出する算出手順と、をコンピュータに実行させる
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、および情報処理プログラムに関する。
【背景技術】
【0002】
近年、インターネットを介した広告配信が盛んに行われている。例えば、ユーザに対して提供(配信)した広告について、ユーザによるコンバージョンへの貢献度を算出する技術が提供されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、広告に関するスコアを適切に算出することができるとは限らない。例えば、上記の従来技術では、広告に対して関連付けられているコンバージョンに対するインタラクションに対して貢献量を割り当てている。したがって、提供した広告の組み合わせが複数ある場合、各広告のコンバージョンに対する貢献量を適切に見積もることが難しい。そのため、提供された広告の組み合わせがある場合であっても適切に各広告の貢献に関する情報を算出することが望まれている。
【0005】
本願は、上記に鑑みてなされたものであって、広告に関するスコアを適切に算出することができる情報処理装置、情報処理方法、および情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の情報処理装置は、取得部と、算出部とを備える。取得部は、ユーザがコンバージョンに至るまでにユーザに提供された複数の広告の情報であって複数の広告のユーザへの提供順序の情報を含む提供広告情報を取得する。算出部は、取得部によって取得された提供広告情報に基づいて、コンバージョンに対する複数の広告の各々の相対貢献度を示すスコアを算出する。
【発明の効果】
【0007】
実施形態の一態様によれば、広告に関するスコアを適切に算出することができるという効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る情報処理の一例を示す図である。
【
図2】
図2は、実施形態に係る情報処理システムの構成の一例を示す図である。
【
図3】
図3は、実施形態に係る情報処理装置の構成の一例を示す図である。
【
図4】
図4は、実施形態に係る情報処理装置のユーザ情報記憶部に記憶されるユーザ情報テーブルの一例を示す図である。
【
図5】
図5は、実施形態に係る情報処理装置の広告情報記憶部に記憶される広告情報テーブルの一例を示す図である。
【
図6】
図6は、実施形態に係る情報処理装置の広告提供履歴記憶部に記憶される広告提供履歴テーブルの一例を示す図である。
【
図7】
図7は、実施形態に係る情報処理装置の処理部による情報処理の一例を示すフローチャートである。
【
図8】
図8は、実施形態に係る情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0009】
以下に、本願に係る情報処理装置、情報処理方法、および情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、および情報処理プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
〔1.情報処理の一例〕
まず、
図1を用いて、実施形態に係る情報処理の一例について説明する。
図1は、実施形態に係る情報処理の一例を示す図であり、情報処理装置1によって実行される。
【0011】
情報処理装置1は、ユーザがコンバージョンに至るまでにユーザに提供された複数の広告の情報であって複数の広告のユーザへの提供順序の情報を含む提供広告情報に基づいて、コンバージョンに至ったユーザに提供された各広告の相対貢献度を示すスコアを算出する。コンバージョンは、例えば、広告が目的とするユーザの行動であり、ユーザのどのような行動であってもよい。
【0012】
例えば、コンバージョンは、広告の対象(以下において、「広告対象」と記載する場合がある)となる取引対象の購入、広告対象となる取引対象の利用、広告対象となる会員サービスへの登録、または広告対象となるサイトの閲覧(表示)などであるが、かかる例に限定されない。取引対象は、例えば、商品やサービスなどである。
【0013】
例えば、コンバージョンは、広告対象となるメール配信への登録、広告対象となるオンラインサービスへのアカウント登録、広告対象となる資料の請求、広告対象となる実店舗への訪問、または広告対象となるSNS(Social Network Service)などでのシェアなどであってもよく、その他の行動であってもよい。
【0014】
ユーザのどのような行動をコンバージョンとするかは任意の設定が可能である。例えば、各広告について、ユーザのどのような行動をコンバージョンとみなすかは、情報処理装置1の管理者や広告主などによって個別に設定される。
【0015】
広告は、例えば、広告対象を広告するためのコンテンツであり、広告コンテンツとも呼ばれる。かかる広告は、例えば、バナー広告、リスティング広告、ネイティブ広告、ソーシャルメディア広告、動画広告などであるが、かかる例に限定されない。
【0016】
以下、
図1を用いて、情報処理の一例を説明する。
図1では、ユーザが商品Xを購入することをコンバージョンの一例として、情報処理装置1は、商品Xの購入回数をコンバージョン数として、各広告の相対貢献度を示すスコアを算出する。
【0017】
なお、以下ではコンバージョンに至ったユーザを「該当ユーザ」と記載する場合がある。また、
図1では説明を簡単にするために、広告A,B,Cの3つの広告が提供される場合を一例として説明する。例えば、広告A,B,Cは、商品Xを広告対象とする広告であり、一つの広告キャンペーンに含まれる広告があるが、かかる例に限定されない。
【0018】
図1では、多くとも広告A,B,Cの3つの広告のみが該当ユーザに提供された場合のスコアの算出を説明するが、該当ユーザに提供される広告は4つ以上であってもよく、2つであってもよい。広告Aは、例えば、ブロード配信広告であり、広告Bは、興味ターゲティング広告であり、広告Cは、例えば、リターゲティング広告であるが、かかる例に限定されない。
【0019】
ブロード配信広告は、例えば、特定のターゲットグループを絞らずに提供される広告である。興味ターゲティング広告は、例えば、ユーザの興味や関心に基づいて提供される広告である。リターゲティング広告は、例えば、広告対象となる取引対象のウェブサイトやウェブページなどに訪れたことがあるユーザに提供される広告である。なお、広告の提供とは、例えば、広告のユーザへの提示であるが、ユーザによる広告の選択(例えば、クリック)による広告のリンク先への遷移を含んでいてもよい。
【0020】
まず、情報処理装置1は、コンバージョンに至ったユーザである該当ユーザに提供された広告の該当ユーザへの提供順序の情報である時系列情報を複数含む提供広告情報を内部の記憶部などから取得する(ステップS1)。
【0021】
ステップS1において、情報処理装置1は、例えば、該当ユーザが商品Xを購入した時点から所定の期間TA前までに提供された広告の該当ユーザへの提供順序の情報である時系列情報と該当ユーザの情報とをコンバージョン毎に提供広告情報を取得する。提供順序の情報は、例えば、広告A,B,Cのうち1以上の広告の該当ユーザへの提供順序の情報である。
【0022】
所定の期間TAは、例えば、1週間などの期間などであるが、かかる例に限定されず、例えば、ユーザの属性、商品Xのカテゴリ、コンバージョンの内容などに応じて、適宜設定可能である。
【0023】
提供広告情報に含まれる各時系列情報は、例えば、該当ユーザへの1以上の広告の提供順序を示す情報である。以下において、広告の提供順序を広告提供順序と記載する場合がある。
【0024】
例えば、該当ユーザが商品Xを購入した時点から所定の期間TA前までに該当ユーザに広告X、広告Y、広告Zの順に提供された場合、広告提供順序は、広告X、広告Y、広告Zの順であり、以下において、CV(X→Y→Z)と記載する場合がある。広告X,Y,Zは、例えば、広告A,B,Cであるが、広告X,Y,Zの一部または全部が同じ広告であってもよい。
【0025】
また、所定の期間TAに該当ユーザに提供された1以上の広告が広告X,Yの順である場合、広告提供順序は、広告X、広告Yの順であり、以下において、CV(X→Y)と記載する場合がある。また、所定の期間TAに該当ユーザに提供された1以上の広告が広告X(広告Xは、広告A,B,Cのいずれか)のみである場合、広告提供順序は、広告Xのみであり、以下において、CV(X)と記載する場合がある。
【0026】
また、提供広告情報に含まれる該当ユーザの情報は、例えば、該当ユーザの属性を示す情報を含む。該当ユーザの属性は、例えば、該当ユーザのデモグラフィック属性であるが、デモグラフィック属性に代えてまたは加えて、該当ユーザのサイコグラフィック属性などを含んでいてもよい。
【0027】
情報処理装置1は、例えば、内部の記憶部に記憶されている広告提供履歴を予め定められた形式の時系列情報にコンバージョン毎に変換することができる。予め定められた形式の時系列情報は、例えば、提供された順番を示す情報を含む。
【0028】
ここで、ステップS2で生成される後述の予測モデルがLSTM(Long Short-Term Memory)やGRU(Gated Recurrent Unit)などのRNN(Recurrent Neural Network)であるとする。この場合、予め定められた形式の時系列情報は、例えば、ユーザの属性情報と、各広告の提供の有無を示す情報とを含む単位情報を時系列の順に含む情報である。
【0029】
例えば、単位情報は、[ユーザの年齢、ユーザの性別、広告Aの提供の有無、広告Bの提供の有無、広告Cの提供の有無]などといった情報であるが、ユーザの属性は、年齢、性別以外のものを含んでいてもよい。「ユーザの年齢」は、例えば、該当ユーザの年齢を正規化した値であり、「ユーザの性別」は、女性の場合「0」、男性の場合「1」である。「広告の提供の有無」は、広告の提供がある場合、「1」であり、広告の提供がない場合、「0」である。
【0030】
例えば、各該当ユーザへ提供された広告の数の最大値が3であり、一の該当ユーザへの広告の提供順序が広告A、広告B、広告Cの順であるとする。また、一の該当ユーザの年齢を正規化した値が0.31であり、一の該当ユーザの性別が女性であるとする。この場合、一の該当ユーザの時系列情報は、情報[0.31,0,1,0,0]、情報[0.31,0,0,1,0]、および情報[0.31,0,0,0,1]を順(正順または逆順)に含む。
【0031】
なお、提供された広告の数が3未満の該当ユーザの時系列情報は、例えば、パディング処理などが行われた情報であるが、かかる例に限定されない。また、該当ユーザの時系列情報は、上述した例に限定されず、例えば、ユーザの年齢層別の有無を示す情報であってもよく、ユーザの性別は、ユーザの性別毎の有無を示す情報であってもよい。
【0032】
また、ステップS2で生成される後述の予測モデルが線形回帰モデルやGBDT(Gradient Boosting Decision Tree)などである場合について説明する。この場合、予め定められた形式の時系列情報は、例えば、ユーザの属性情報と、各広告の提供順序を示す情報とを含む情報である。
【0033】
各広告の提供順序を示す情報は、例えば、[提供順序1(広告A,広告B,広告C),・・・,提供順序n(広告A,広告B,広告C)]といった情報であってもよい。nは、例えば、各該当ユーザへ提供された広告の数の最大値である。
【0034】
「提供順序1(広告A,広告B,広告C)」は、該当ユーザによるコンバージョンの前に最後に提供された広告が広告A,B,Cのいずれであるかを示す情報である。「提供順序n(広告A,広告B,広告C)」は、該当ユーザによるコンバージョンの前に最初に提供された広告が広告A,B,Cのいずれであるかを示す情報である。
【0035】
例えば、該当ユーザによるコンバージョンの前に最後に提供された広告Aの場合、「提供順序1(広告A,広告B,広告C)」は、例えば、[1,0,0]などといった情報である。また、該当ユーザによるコンバージョンの前に最初に提供された広告Cの場合、「提供順序n(広告A,広告B,広告C)」は、例えば、[0,0,1]などといった情報である。
【0036】
つづいて、情報処理装置1は、ステップS1で取得した提供広告情報に基づいて、該当ユーザへの広告の提供順序に応じたコンバージョン数を予測する予測モデルを生成する(ステップS2)。
【0037】
ステップS2で生成される予測モデルは、例えば、下記式(1)で表される。下記式(1)において、特徴量は、上述した時系列情報である。下記式(1)において、pCVは、予測コンバージョン数である。
f(特徴量)=pCV ・・・(1)
【0038】
ステップS2の処理において、情報処理装置1は、ステップS1で取得した提供広告情報に基づいて、広告提供順序毎のコンバージョン数をユーザ属性毎に算出する。例えば、広告提供順序が広告A、広告B、広告Cの順である場合にコンバージョンに至った数をユーザ属性毎に集計することで、広告提供順序が広告A、広告B、広告Cの順である場合のコンバージョン数をユーザ属性毎に算出する。
【0039】
ユーザ属性毎とは、例えば、ユーザの属性情報がユーザの性別および年齢の情報である場合、性別および年齢などの複数の属性項目の組み合わせで示される。この場合、属性項目の組み合わせは、例えば、10代男性、10代女性、20代男性、20代女性、・・・などであるが、かかる例に限定されず、ユーザの属性情報に含まれる属性項目には、地域、職業、年収などが含まれていてもよく、その他の属性項目が含まれてもよい。
【0040】
そして、情報処理装置1は、時系列情報とコンバージョン数を示す情報とを特徴量として広告提供順序毎に含む学習用情報を生成し、かかる学習用情報を用いて、予測モデルを生成する。予測モデルに用いられる特徴量は、上述した例に限定されず、例えば、広告A,B,Cの広告表示環境情報を含んでいてもよい。広告表示環境情報は、例えば、広告が提供されるウェブサイトのカテゴリ、広告が提供されるアプリケーションの種類、提供される広告の表示位置などの情報などである。
【0041】
時系列情報は、予測モデルが線形回帰モデルやGBDTなどである場合、上述した例に代えてまたは加えて、特徴量として、カウント値、平均値、最小値、最大値などの統計量を含んでいてもよい。例えば、所定の期間TAにおいて、広告Aが2回提供され、広告Bが1回提供され、広告Aはx日前(xは整数)に提供され、広告Bはy日前(yは整数)に提供されたなどの各々を特徴量とすることができる。
【0042】
つづいて、情報処理装置1は、ステップS2で生成した予測モデルを用いて、広告A,B,Cの相対貢献度を示すスコアであるアトリビューションスコアを算出する(ステップS3)。情報処理装置1は、例えば、ユーザ属性毎の属性情報と広告提供順序の情報とを用いて、広告A,B,Cのアトリビューションスコアを広告提供順序とユーザ属性との組み合わせ毎に算出する。
【0043】
例えば、情報処理装置1は、ユーザの属性情報と広告提供順序の情報とを予測モデルに入力し、予測モデルから出力される予測コンバージョン数を取得する処理などを用いて、各広告A,B,Cのアトリビューションスコアを算出する算出処理を広告提供順序とユーザ属性との組み合わせ毎に行う。
【0044】
例えば、ステップS2で生成した予測モデルが、LSTMやGRUなどのRNNであるとする。この場合、情報処理装置1は、ユーザの属性情報と、各広告の提供の有無を示す情報とを含む単位情報を時系列の順に含む時系列情報とを予測モデルに入力し、このときの予測モデルにおけるソフトマックス関数(Softmax function)の出力値を広告A,B,Cのアトリビューションスコアとして算出する。
【0045】
ソフトマックス関数の出力値は、例えば、階層的アテンション(Hierarchical Attention)の出力にソフトマックス関数が適用されて得られるものであり、広告A,B,Cの確率分布で表される。階層的アテンションは、注意機構の一例である。
図1に示す例では、広告Aのアトリビューションスコアが「0.2」であり、広告Bのアトリビューションスコアが「0.3」であり、広告Cのアトリビューションスコアが「0.5」である。
【0046】
また、ステップS2で生成した予測モデルが、線形回帰モデルやGBDTなどの分類モデルであるとする。この場合、情報処理装置1は、ユーザの属性情報と広告提供順序の情報とを含む時系列情報を予測モデルに入力し、予測モデルから広告提供順序の予測コンバージョン数であるpCVを取得する処理を広告提供順序とユーザ属性との組み合わせ毎に行う。
【0047】
そして、情報処理装置1は、広告提供順序とユーザ属性との組み合わせ毎のpCVを用いて、各広告A,B,Cのアトリビューションスコアを算出する処理を広告提供順序とユーザ属性との組み合わせ毎に行う。
【0048】
例えば、広告提供順序が広告A、広告B、広告Cの順であるとする。この場合、情報処理装置1は、下記式(2)~(4)の演算を行う。v(A)は、広告Aの貢献度に関する関数であり、v(B)は、広告Bの貢献度に関する関数であり、v(C)は、広告Cの貢献度に関する関数である。
v(A)={f(φ)+(f(A)-f(φ)) ・・・(2)
v(B)={f(φ)+(f(A→B)-f(A)) ・・・(3)
v(C)={f(φ)+(f(A→B→C)-f(A→B)) ・・・(4)
【0049】
上記式(2),(3)において、f(φ)は、広告A,B,Cのいずれもユーザに提供されない場合のpCVであり、f(A)は、広告Aのみがユーザに提供される場合のpCVである。上記式(3),(4)において、f(A→B)は、広告A、広告Bの順でユーザに提供される場合のpCVである。上記式(4)において、f(A→B→C)は、広告A、広告B、広告Cの順でユーザに提供される場合のpCVである。なお、f(φ)における「φ」は空集合を意味する。
【0050】
このように、関数v(A),v(B),v(C)は、一の広告が含まれない広告提供順序に一の広告を追加した広告組み合わせでのpCVから、一の広告が含まれない広告提供順序でのpCVを減算する式を含む形式で表される。
【0051】
情報処理装置1は、上記式(2)~(4)の演算結果に基づいて、下記式(5)~(8)の演算を行う。Sc(A)は、広告Aのアトリビューションスコアであり、Sc(B)は、広告Bのアトリビューションスコアであり、Sc(C)は、広告Cのアトリビューションスコアである。
v(A,B,C)=v(A)+v(B)+v(C) ・・・(5)
Sc(A)=v(A)/v(A,B,C) ・・・(6)
Sc(B)=v(B)/v(A,B,C) ・・・(7)
Sc(C)=v(C)/v(A,B,C) ・・・(8)
【0052】
情報処理装置1は、上記(2)~(8)の処理をユーザ属性毎に行う。また、情報処理装置1は、広告A、広告B、広告Cの順の広告提供順序以外の広告提供順序も同様に広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する。このように、情報処理装置1は、各広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を広告提供順序とユーザ属性との組み合わせ毎に算出する算出処理を行う。以下において、アトリビューションスコアSc(A),Sc(B),Sc(C)を含む複数のアトリビューションスコアの各々を区別せずに示す場合、アトリビューションスコアScと記載する場合がある。
【0053】
各広告提供順序のコンバージョン数には、オーガニックコンバージョンが含まれていることから、オーガニックコンバージョンを含まないコンバージョン数で、アトリビューションスコアSc(A),Sc(B),Sc(C)を算出することが望ましい場合がある。
【0054】
オーガニックコンバージョンは、広告の提供がない場合でもユーザの自発的な行動によって生じるコンバージョンであり、上述した例では、広告A,B,Cのいずれの提供がない場合でもユーザの自発的な行動によって生じるコンバージョンである。
【0055】
情報処理装置1は、オーガニックコンバージョンを除去したコンバージョンによるアトリビューションスコアSc(A),Sc(B),Sc(C)を算出することもできる。オーガニックコンバージョンを除去したコンバージョンは、リフトコンバージョンと呼ぶことができる。
【0056】
情報処理装置1は、リフトコンバージョンを算出し、かかるリフトコンバージョンに基づいて、アトリビューションスコアSc(A),Sc(B),Sc(C)を算出することができる。例えば、情報処理装置1は、広告提供順序とユーザ属性との組み合わせ毎にリフトコンバージョンを算出し、かかるリフトコンバージョンに基づいて、アトリビューションスコアSc(A),Sc(B),Sc(C)を広告提供順序とユーザ属性との組み合わせ毎に算出する。
【0057】
情報処理装置1は、コントロールコンバージョンをオーガニックコンバージョンとして推定し、コントロールコンバージョンとトリートコンバージョンとの差から、リフトコンバージョンを算出することもできる。
【0058】
コントロールコンバージョンは、例えば、広告A,B,Cが提供対象に含まれない場合のコンバージョンである。トリートコンバージョンは、例えば、広告A,B,Cが配信対象に含まれる場合のコンバージョンである。以下において、オーガニックコンバージョンの一例であるコントロールコンバージョンの数をCtrlCVと記載し、トリートコンバージョンの数をTreatCVと記載する場合がある。
【0059】
情報処理装置1は、例えば、ステップS1で取得した提供広告情報のうちコンバージョンに至る前の所定の期間TAにおいて広告A,B,Cのいずれも提供されていないユーザの延べ数をCtrlCVとして扱うことができる。
【0060】
また、情報処理装置1は、例えば、広告のパフォーマンスを評価する手法である広告評価手法(例えば、A/Bテスト)を用いて、広告A,B,Cの配信制御を行うことで、広告提供順序毎にCtrlCVを推定することができる。
【0061】
広告評価手法では、例えば、広告要求の送信元ユーザをTreatユーザとCtrlユーザとに分け、Treatユーザに対しては広告A,B,Cのいずれかを配信し、Ctrlユーザには、広告A,B,Cのいずれも配信しない配信制御が行われる。
【0062】
情報処理装置1は、例えば、予測モデルがRNNなどの場合において、下記式(9)で示される重みwを算出する。
w=(1-TreatCV/CtrlCV) ・・・(9)
【0063】
情報処理装置1は、重みwを用いた階層的アテンションでの重み付けを行って、アトリビューションスコアSc(A),Sc(B),Sc(C)を調整することができる。例えば、情報処理装置1は、階層的アテンションの出力またはアトリビューションスコアSc(A),Sc(B),Sc(C)に重みwを乗算することで、オーガニックコンバージョンを除外した、アトリビューションスコアSc(A),Sc(B),Sc(C)を算出することができる。
【0064】
このように、情報処理装置1は、ユーザがコンバージョンに至るまでにユーザに提供された複数の広告の情報であって複数の広告のユーザへの提供順序の情報を含む提供広告情報を取得する。そして、情報処理装置1は、取得した提供広告情報に基づいて、コンバージョンに対する複数の広告の各々の相対貢献度を示すスコアであるアトリビューションスコアScを算出する。これにより、情報処理装置1は、広告に関するスコアを複数の広告の各々の相対貢献度を反映して適切に算出することができる。
【0065】
情報処理装置1は、例えば、算出したアトリビューションスコアScに関する情報を提供することができる。情報処理装置1は、広告主の広告について算出したアトリビューションスコアScに関する情報を、広告A,B,Cの告主が利用する広告主端末に提供する。例えば、情報処理装置1は、広告主の広告A,B,CのアトリビューションスコアScを示す情報を、広告主が利用する広告主端末に送信する。例えば、情報処理装置1は、広告A,B,Cの広告主が利用する広告主端末に、広告A,B,CのアトリビューションスコアScを示すコンテンツを送信する。
【0066】
また、情報処理装置1は、算出したアトリビューションスコアScに基づいて、様々な決定を行ってもよい。例えば、情報処理装置1は、アトリビューション分析の利用方法として、広告予算の配分(アロケーション)などを決定することができる。
【0067】
例えば、情報処理装置1は、算出したアトリビューションスコアScに基づいて、広告A,B,Cの予算の配分を決定する。情報処理装置1は、例えば、算出したアトリビューションスコアScが大きい広告ほど予算の配分を多くする。例えば、情報処理装置1は、予算配分の対象となる全広告のアトリビューションスコアScの合計値に対する各広告のアトリビューションスコアScの割合を、各広告に配分する予算の割合に決定する。
【0068】
ここで、アトリビューションスコアSc(A)の割合が20%、アトリビューションスコアSc(B)の割合30%が、アトリビューションスコアSc(C)の割合が50%であるとする。この場合、情報処理装置1は、全予算のうち、半分(50%)を広告Cに割り当て、30%を広告Bに割り当て、20%を広告Bに割り当てると決定することができる。
【0069】
以下、このような処理を行う情報処理装置1およびユーザ端末2を含む情報処理システムの構成などについて、詳細に説明する。
【0070】
〔2.情報処理システムの構成〕
図2は、実施形態に係る情報処理システムの構成の一例を示す図である。
図2に示すように、実施形態に係る情報処理システム100は、情報処理装置1と、複数のユーザ端末2と、複数の広告主端末3を含む。
【0071】
複数のユーザ端末2は、互いに異なるユーザUによって用いられる。複数の広告主端末3は、互いに異なる広告主Oによって用いられる。ユーザ端末2および広告主端末3の各々は、例えば、ノートPC(Personal Computer)、デスクトップPC、スマートフォン、タブレットPC、ウェアラブルデバイスである。ウェアラブルデバイスは、例えば、スマートグラス、またはスマートウォッチなどであるが、かかる例に限定されない。ユーザUは、情報処理装置1などから提供される広告の提供を受けるユーザである。
【0072】
情報処理装置1、ユーザ端末2、および広告主端末3の各々は、ネットワークNを介して、有線または無線により互いに通信可能に接続される。なお、
図2に示す情報処理システム100には、情報処理装置1などが複数含まれてもよい。
【0073】
ネットワークNは、例えば、インターネットなどのWAN(Wide Area Network)およびLTE(Long Term Evolution)、4G(4th Generation)、5G(5th Generation:第5世代移動通信システム)などの移動体通信網などを含む。
【0074】
ユーザ端末2および広告主端末3は、移動体通信網、Bluetooth(登録商標)、無線LAN(Local Area Network)などの近距離無線通信を介してネットワークNに接続し、情報処理装置1と通信することができる。
【0075】
〔3.情報処理装置1の構成〕
図3は、実施形態に係る情報処理装置1の構成の一例を示す図である。
図3に示すように、情報処理装置1は、通信部10と、記憶部11と、処理部12とを有する。
【0076】
〔3.1.通信部10〕
通信部10は、例えば、通信モジュールやNIC(Network Interface Card)などによって実現される。そして、通信部10は、ネットワークNと有線または無線で接続され、他の各種装置との間で情報の送受信を行う。例えば、通信部10は、ユーザ端末2や広告主端末3との間でネットワークNを介して情報の送受信を行う。
【0077】
〔3.2.記憶部11〕
記憶部11は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置によって実現される。記憶部11は、ユーザ情報記憶部20と、広告情報記憶部21と、広告提供履歴記憶部22とを有する。
【0078】
〔3.2.1.ユーザ情報記憶部20〕
ユーザ情報記憶部20は、ユーザUに関する各種の情報を記憶する。
図4は、実施形態に係る情報処理装置1のユーザ情報記憶部20に記憶されるユーザ情報テーブルの一例を示す図である。
【0079】
図4に示す例では、ユーザ情報記憶部20に記憶されるユーザ情報テーブルは、「ユーザID(Identifier)」、「属性情報」および「履歴情報」といった項目の情報を含む。「ユーザID」は、ユーザUを識別する識別子であり、ユーザU毎に付される情報である。
【0080】
「属性情報」は、「ユーザID」に対応付けられたユーザUの属性を示す属性情報である。ユーザUの属性は、例えば、デモグラフィック属性、サイコグラフィック属性などである。デモグラフィック属性は、人口統計学的属性であり、例えば、年齢、性別、職業、居住地、年収、家族構成などの複数の属性項目を含む。
【0081】
サイコグラフィック属性は、心理学的属性であり、例えば、ライフスタイル、価値観、興味関心などに関する複数の属性項目を含む。例えば、サイコグラフィック属性における複数の属性項目の各々は、車、服、旅行、ゲーム、キャンプ、バイク、電車、家電、またはパソコンなどといったユーザUの興味関心を有する対象である。
【0082】
「履歴情報」は、「ユーザID」に対応付けられたユーザUの行動履歴の情報を含む。ユーザUの行動履歴は、例えば、ユーザUのオンラインサービスにおける行動履歴の情報を含む。ユーザUのオンラインサービスにおける行動履歴の情報は、例えば、ユーザUのオンラインサービスにおける検索履歴情報、閲覧履歴情報、配信履歴情報、および取引履歴情報などを含む。
【0083】
ユーザUの検索履歴情報は、例えば、ウェブ検索サービスにおけるユーザUによる検索履歴の情報などを含む。ユーザUの閲覧履歴情報は、例えば、オンラインサービスにおけるユーザUによるコンテンツの閲覧履歴の情報などを含む。配信履歴情報は、ユーザUのユーザ端末2に配信された配信コンテンツの配信履歴の情報などを含む。取引履歴情報は、オンラインサービスにおけるユーザUによる商品の取引履歴の情報などを含む。
【0084】
〔3.2.2.広告情報記憶部21〕
広告情報記憶部21は、広告主端末3から受け付けた広告に関する各種の情報を記憶する。
図5は、実施形態に係る情報処理装置1の広告情報記憶部21に記憶される広告情報テーブルの一例を示す図である。
【0085】
図5に示す例では、広告情報記憶部21に記憶される広告情報テーブルは、「広告ID」、「広告種別」、「広告」、「配信期間」、および「予算」といった項目の情報を含む。「広告ID」は、広告を識別する識別子であり、広告毎に付される情報である。
【0086】
「広告種別」は、「広告ID」に対応付けられた広告の種類を示す情報である。広告の種類は、例えば、ブロード配信広告、興味ターゲティング広告、またはリターゲティング広告などであるが、かかる例に限定されない。
【0087】
「広告」は、「広告ID」に対応付けられた広告であり、例えば、バナー広告、リスティング広告、ネイティブ広告、ソーシャルメディア広告、動画広告などであるが、かかる例に限定されない。
【0088】
「配信期間」は、「広告ID」に対応付けられた広告の配信期間の情報である。「予算」は、「広告ID」に対応付けられた広告の予算の情報である。なお、広告情報テーブルに含まれる情報は、上述の情報に限定されず、例えば、広告主識別情報、広告対象情報、キャンペーン情報なども含まれる。
【0089】
広告主識別情報は、「広告ID」に対応付けられた広告の広告主Oを識別する情報であり、例えば、広告主IDである。広告対象情報は、「広告ID」に対応付けられた広告の対象である広告対象の情報であり、例えば、広告対象となる取引対象の情報である。キャンペーン情報は、「広告ID」に対応付けられた広告のキャンペーンの情報である。なお、広告情報記憶部21は、上記に限らず、目的に応じて種々の情報を記憶することができる。
【0090】
〔3.2.3.広告提供履歴記憶部22〕
広告提供履歴記憶部22は、広告の配信履歴に関する各種の情報を記憶する。
図6は、実施形態に係る情報処理装置1の広告提供履歴記憶部22に記憶される広告提供履歴テーブルの一例を示す図である。
【0091】
図6に示す例では、広告提供履歴記憶部22に記憶される広告提供履歴テーブルは、「ユーザID」、「提供広告」、および「コンバージョン」といった項目の情報を含む。「ユーザID」は、
図4に示すユーザIDと同じであり、広告の提供先となるユーザUの識別子の情報である。
【0092】
「提供広告」は、例えば、「ユーザID」に対応付けられたユーザUに提供(配信)された広告の広告IDと、そのユーザUへの広告の提供日時を示す情報とを含む。「コンバージョン」は、例えば、「ユーザID」に対応付けられたユーザUが行ったコンバージョンの内容を示す情報と、そのユーザUによるコンバージョンの日時(コンバージョン日時)の情報とを含む。
【0093】
コンバージョンの内容は、例えば、広告対象となる取引対象の購入、広告対象となる取引対象の利用、広告対象となる会員サービスへの登録、または広告対象となるサイトの閲覧(表示)などであるが、かかる例に限定されない。取引対象は、例えば、商品やサービスなどである。
【0094】
なお、広告提供履歴記憶部22は、一の取引対象についてコンバージョンに至ったユーザUに対応付けて、そのユーザUに所定の期間TAに提供された広告を対応付けて記憶することもできる。
【0095】
例えば、広告提供履歴記憶部22は、広告対象に対応するコンバージョンに至ったユーザUに対応付けて、そのユーザUに所定の期間TAに提供された広告のうち、広告対象に対応する広告をその提供順序に対応付けて記憶する。
【0096】
例えば、広告提供履歴記憶部22は、商品Xについて、その商品Xを購入したユーザUに対応付けて、そのユーザUが商品Xを購入した日時以前の所定の期間TA(直近1週間等)に提供された広告のうち、商品Xを広告対象とする1以上の広告をその提供順序に対応付けて記憶する。
【0097】
〔3.3.処理部12〕
処理部12は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)またはMPU(Micro Processing Unit)などによって、情報処理装置1内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。
【0098】
処理部12は、例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field Programmable Gate Array)などの集積回路により一部または全部が実現されてもよい。
【0099】
図3に示すように、処理部12は、取得部30と、受付部31と、算出部32と、決定部33と、提供部34とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、処理部12の内部構成は、
図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0100】
〔3.3.1.取得部30〕
取得部30は、外部の情報処理装置、ユーザ端末2、または広告主端末3などから通信部10を介して種々の情報を取得し、取得した情報を記憶部11に記憶させる。
【0101】
例えば、取得部30は、外部の情報処理装置またはユーザ端末2などから通信部10を介してユーザUの情報であるユーザ情報を取得し、取得したユーザ情報をユーザ情報記憶部20のユーザ情報テーブルに追加する。
【0102】
また、取得部30は、記憶部11から各種の情報を取得する。例えば、取得部30は、ユーザUの情報であるユーザ情報をユーザ情報記憶部20などから取得する。取得部30によって取得されるユーザ情報は、例えば、上述した属性情報および履歴情報のうちの少なくとも1つ以上の情報の一部または全部を含む。
【0103】
また、取得部30は、広告を広告情報記憶部21などから取得する。例えば、取得部30は、ユーザ端末2からの広告要求が受付部31によって受け付けられた場合、広告要求に応じた広告を広告情報記憶部21から取得する。
【0104】
また、取得部30は、広告提供履歴を広告提供履歴記憶部22から取得する。例えば、取得部30は、広告主端末3から広告効果分析要求が受付部31によって受け付けられた場合、ユーザUがコンバージョンに至るまでにユーザUに提供された複数の広告の情報であって複数の広告のユーザUへの提供順序の情報を含む提供広告情報を取得する。
【0105】
例えば、取得部30は、広告提供履歴を予め定められた形式の時系列情報にコンバージョン毎に変換する。予め定められた形式の時系列情報は、例えば、提供された順番を示す情報を含む。
【0106】
ここで、算出部32によって生成される予測モデルがLSTMやGRUなどのRNNであるとする。この場合、予め定められた形式の時系列情報は、例えば、ユーザUの属性情報と、各広告の提供の有無を示す情報とを含む単位情報を時系列の順に含む情報である。
【0107】
例えば、単位情報は、[ユーザUの年齢、ユーザUの性別、広告Aの提供の有無、広告Bの提供の有無、広告Cの提供の有無]などといった情報であるが、ユーザUの属性は、年齢、性別以外のものを含んでいてもよい。「ユーザUの年齢」は、例えば、該当ユーザの年齢を正規化した値であり、「ユーザUの性別」は、女性の場合「0」、男性の場合「1」である。「広告の提供の有無」は、広告の提供がある場合、「1」であり、広告の提供がない場合、「0」である。
【0108】
例えば、各該当ユーザへ提供された広告の数の最大値が3であり、一の該当ユーザへの広告の提供順序が広告A、広告B、広告Cの順であるとする。また、一の該当ユーザの年齢を正規化した値が0.31であり、一の該当ユーザの性別が女性であるとする。この場合、一の該当ユーザの時系列情報は、情報[0.31,0,1,0,0]、情報[0.31,0,0,1,0]、および情報[0.31,0,0,0,1]を順(正順または逆順)に含む。
【0109】
なお、提供された広告の数が3未満の該当ユーザの時系列情報は、例えば、パディング処理などが行われた情報である。また、該当ユーザの時系列情報は、上述した例に限定されず、例えば、ユーザの年齢層別の有無を示す情報であってもよく、ユーザの性別は、ユーザの性別毎の有無を示す情報であってもよい。
【0110】
また、算出部32によって生成される予測モデルが線形回帰モデルやGBDTなどである場合、予め定められた形式の時系列情報は、例えば、ユーザUの属性情報と、各広告の提供順序を示す情報とを含む情報である。
【0111】
各広告の提供順序を示す情報は、例えば、[提供順序1(広告A,広告B,広告C),・・・,提供順序n(広告A,広告B,広告C)]といった情報であってもよい。nは、例えば、各該当ユーザへ提供された広告の数の最大値である。
【0112】
「提供順序1(広告A,広告B,広告C)」は、該当ユーザによるコンバージョンの前に最後に提供された広告が広告A,B,Cのいずれであるかを示す情報である。「提供順序n(広告A,広告B,広告C)」は、該当ユーザによるコンバージョンの前に最初に提供された広告が広告A,B,Cのいずれであるかを示す情報である。
【0113】
例えば、該当ユーザによるコンバージョンの前に最後に提供された広告Aの場合、「提供順序1(広告A,広告B,広告C)」は、例えば、[1,0,0]などといった情報である。また、該当ユーザによるコンバージョンの前に最初に提供された広告Cの場合、「提供順序n(広告A,広告B,広告C)」は、例えば、[0,0,1]などといった情報である。
【0114】
提供広告情報に情報が含まれる複数の広告は、例えば、受付部31によって受け付けられた広告効果分析要求で示される複数の広告または広告効果分析要求で示されるキャンペーンに含まれる複数の広告である。
【0115】
〔3.3.2.受付部31〕
受付部31は、通信部10を介してユーザ端末2や広告主端末3から各種の要求や情報などを受け付ける。
【0116】
例えば、受付部31によって受け付けられる要求は、ユーザ端末2から送信される広告要求、広告主端末3から送信される広告効果分析要求などであるが、かかる例に限定されない。また、受付部31は、広告主端末3などから情報処理装置1に送信される広告を受け付け、受け付けた広告を広告情報記憶部21の広告情報テーブルに追加する。
【0117】
〔3.3.3.算出部32〕
算出部32は、取得部30によって取得された提供広告情報に基づいて、コンバージョンに対する複数の広告の各々の相対貢献度を示すスコアであるアトリビューションスコアScを算出する。以下において、算出部32によってアトリビューションスコアScが算出される複数の広告が広告A,B,Cであるものして説明するが、広告の数や種類は、3つの広告A,B,Cに限定されない。また、以下において、コンバージョンを行ったユーザUを該当ユーザと記載する場合がある。
【0118】
算出部32は、オーガニックコンバージョンを推定する推定処理部40と、予測モデルを生成する生成処理部41と、生成処理部41によって生成された予測モデルを用いて広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する算出処理部42とを備える。
【0119】
推定処理部40は、例えば、取得部30によって取得された提供広告情報のうちコンバージョンに至る前の所定の期間TAにおいて広告A,B,Cのいずれも提供されていないユーザUの延べ数をオーガニックコンバージョン数として扱うことができる。オーガニックコンバージョンは、上述したように、広告A,B,Cの提供がない場合でも該当ユーザの自発的な行動によって生じるコンバージョンである。
【0120】
また、推定処理部40は、例えば、広告のパフォーマンスを評価する手法である広告評価手法(例えば、A/Bテスト)を用いて、広告A,B,Cの配信制御を行うことで、広告提供順序毎にCtrlCVをオーガニックコンバージョン数として推定することができる。
【0121】
生成処理部41は、取得部30によって取得された提供広告情報に基づいて、該当ユーザへの広告の提供順序に応じたコンバージョン数を予測する予測モデルを生成する。
【0122】
生成処理部41は、取得部30によって取得された提供広告情報に基づいて、広告提供順序毎にコンバージョン数をユーザ属性毎に算出する。例えば、広告提供順序が広告A、広告B、広告Cの順である場合にコンバージョンに至った数をユーザ属性毎に集計することで、広告提供順序が広告A、広告B、広告Cの順である場合のコンバージョン数をユーザ属性毎に算出する。
【0123】
そして、生成処理部41は、時系列情報とコンバージョン数を示す情報とを特徴量として広告提供順序毎に含む学習用情報を生成し、かかる学習用情報を用いて、予測モデルを生成する。予測モデルに用いられる特徴量は、上述した例に限定されず、例えば、広告A,B,Cの広告表示環境情報およびキャンペーン情報などの1以上の情報を含んでいてもよい。
【0124】
広告表示環境情報は、ウェブサイトのカテゴリ、対応アプリケーションの種類、表示位置などの情報などである。キャンペーン情報は、例えば、広告A,B,Cを含むキャンペーンのカテゴリ、配信期間、配信数などの情報である。
【0125】
時系列情報は、予測モデルが線形回帰モデルやGBDTなどである場合、上述した例に代えてまたは加えて、特徴量として、カウント値、平均値、最小値、最大値などの統計量を含んでいてもよい。例えば、所定の期間TAにおいて、広告Aが2回提供され、広告Bが1回提供され、広告Aはx日前(xは整数)に提供され、広告Bはy日前(yは整数)に提供されたなどの各々を特徴量とすることができる。
【0126】
生成処理部41は、推定処理部40によってオーガニックコンバージョンが推定された場合、推定処理部40によって推定されたオーガニックコンバージョンを除去したコンバージョンであるリフトコンバージョンを広告提供順序とユーザ属性との組み合わせ毎に算出する。そして、生成処理部41は、算出した広告提供順序とユーザ属性との組み合わせ毎のリフトコンバージョンに基づいて、予測モデルを生成することができる。
【0127】
例えば、生成処理部41は、広告提供順序とユーザ属性との組み合わせ毎のリフトコンバージョンの数をコンバージョン数として集計し、かかるコンバージョン数を用いて、予測モデルを生成することができる。
【0128】
生成処理部41によって生成される予測モデルは、ユーザ属性毎の予測モデルであってもよい。この場合、生成処理部41は、ユーザの属性情報を含まない時系列情報とコンバージョン数の情報とを含む情報を学習用情報としてユーザ属性毎に生成し、生成したユーザ属性毎の学習用情報を用いて、予測モデルをユーザ属性毎に生成する。
【0129】
算出処理部42は、生成処理部41によって生成された予測モデルを用いて広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する。生成処理部41によって生成された予測モデルは、ユーザUの情報とユーザUへの広告提供順序の情報を含む情報に基づいてコンバージョン数を予測するモデルである。
【0130】
例えば、算出処理部42は、ユーザ属性毎の属性情報と広告提供順序の情報とを用いて、広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を広告提供順序とユーザ属性との組み合わせ毎に算出する。ユーザ属性毎とは、例えば、ユーザUの属性情報がユーザUの性別および年齢の情報である場合、例えば、性別および年齢などの複数の属性項目の組み合わせで示される。なお、ユーザUの属性情報に含まれる属性項目には、地域、職業、年収などが含まれていてもよく、その他の属性項目が含まれてもよい。
【0131】
算出処理部42は、ユーザUの属性情報と広告提供順序の情報とを予測モデルに入力し、予測モデルから出力される予測コンバージョン数を取得する処理などを用いて、各広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する算出処理を広提供順序とユーザ属性との組み合わせ毎に行う。
【0132】
例えば、生成処理部41で生成された予測モデルが、LSTMやGRUなどのRNNであるとする。この場合、算出処理部42は、ユーザUの属性情報と、各広告の提供の有無を示す情報とを含む単位情報を時系列の順に含む時系列情報とを予測モデルに入力し、このときの予測モデルにおけるソフトマックス関数の出力値を広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)として算出する。
【0133】
ソフトマックス関数の出力値は、例えば、階層的アテンションの出力にソフトマックス関数が適用されて得られるものであり、広告A,B,Cの確率分布で表される。階層的アテンションは、注意機構の一例である。また、算出処理部42は、ソフトマックス関数の出力値を用いて得られる値を複数の広告の各々のアトリビューションスコアScとして算出することもできる。ソフトマックス関数の出力値を用いて得られる値は、例えば、上述した重みwをソフトマックス関数の出力値に乗算して得られる値である。
【0134】
また、生成処理部41で生成された予測モデルが、線形回帰モデルやGBDTなどの分類モデルであるとする。この場合、算出処理部42は、ユーザUの属性情報と広告提供順序の情報とを含む情報を予測モデルに入力し、予測モデルから広告提供順序の予測コンバージョン数であるpCVを取得する処理を広告提供順序とユーザ属性との組み合わせ毎に行う。そして、算出処理部42は、広告提供順序とユーザ属性との組み合わせ毎のpCVを用いて、各広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する処理を広告提供順序とユーザ属性との組み合わせ毎に行う。
【0135】
例えば、広告提供順序が広告A、広告B、広告Cの順であるとする。この場合、算出処理部42は、関数v(A),v(B),v(c)(上記式(2)~(4)参照)の演算を行う。v(A)は、広告Aの貢献度に関する関数であり、v(B)は、広告Bの貢献度に関する関数であり、v(C)は、広告Cの貢献度に関する関数である。
【0136】
算出処理部42は、上記式(2)~(4)の演算結果に基づいて、上記式(5)~(6)の演算を行って広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する。
【0137】
算出処理部42は、上記(2)~(8)の処理をユーザ属性毎に行う。また、算出処理部42は、広告A、広告B、広告Cの順の広告提供順序以外の広告提供順序も同様に広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する。このように、算出処理部42は、各広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を広告提供順序とユーザ属性との組み合わせ毎に算出する算出処理を行う。
【0138】
このように、算出処理部42は、複数の広告がユーザUに提供された場合の予測モデルによって予測されるコンバージョンと、複数の広告のうちの一部がユーザUに提供された場合の予測モデルによって予測されるコンバージョンとに基づいて、複数の広告の各々のアトリビューションスコアSc(A),Sc(B),Sc(C)を算出することができる。
【0139】
また、算出処理部42は、ユーザUへ複数の広告が提供されない場合のコンバージョンであるオーガニックコンバージョンを除外して広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出することもできる。
【0140】
例えば、生成処理部41によって生成された予測モデルがオーガニックコンバージョンを除去したコンバージョンであるリフトコンバージョンに基づいて生成された予測モデルであるとする。この場合、算出処理部42は、生成処理部41によって生成された予測モデルを用いることで、コンバージョンであるオーガニックコンバージョンを除外して広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出することができる。
【0141】
また、算出処理部42は、生成処理部41によって生成された予測モデルがリフトコンバージョンに基づいて生成されていない場合、推定処理部40によって推定されたオーガニックコンバージョンに応じた重み付けを予測モデルに追加し、重み付けを追加した予測モデルを用いて広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出することもできる。
【0142】
例えば、算出処理部42は、予測モデルがRNNなどの場合において、上記式(9)で示される重みwを算出する。そして、算出処理部42は、重みwを用いた階層的アテンションでの重み付けを行って、アトリビューションスコアSc(A),Sc(B),Sc(C)を調整することができる。
【0143】
例えば、算出処理部42は、階層的アテンションの出力に重みwを乗算することで、オーガニックコンバージョンを除外した、アトリビューションスコアSc(A),Sc(B),Sc(C)を算出することができる。
【0144】
〔3.3.4.決定部33〕
決定部33は、算出部32によって算出されたアトリビューションスコアScに基づいて、様々な決定を行うことができる。例えば、決定部33は、アトリビューション分析の利用方法として、広告予算の配分(アロケーション)などを決定することができる。
【0145】
例えば、決定部33は、算出部32によって算出されたアトリビューションスコアScに基づいて、広告A,B,Cの予算の配分を決定する。決定部33は、例えば、算出部32によって算出されたアトリビューションスコアScが大きい広告ほど予算の配分を多くする。例えば、決定部33は、予算配分の対象となる全広告のアトリビューションスコアScの合計値に対する各広告のアトリビューションスコアScの割合を、各広告に配分する予算の割合に決定する。
【0146】
ここで、アトリビューションスコアSc(A)の割合が20%、アトリビューションスコアSc(B)の割合30%が、アトリビューションスコアSc(C)の割合が50%であるとする。この場合、決定部33は、全予算のうち、半分(50%)を広告Cに割り当て、30%を広告Bに割り当て、20%を広告Aに割り当てると決定することができる。
【0147】
また、決定部33は、受付部31によって広告要求が受け付けられた場合、広告要求によって特定されるユーザUの情報に基づいて、広告情報記憶部21に記憶されている複数の広告のうちユーザUに配信する広告を決定する。
【0148】
例えば、決定部33は、広告要求によって特定されるユーザUの情報に基づいて、各広告の予測コンバージョン率(pCVR)を算出する。例えば、決定部33は、ユーザUの情報(例えば、ユーザUの属性情報)と、広告提供順序の情報とを特徴量として入力し、pCVRを出力するCVR予測モデルを用いて、pCVRを予測することができる。かかるCVR予測モデルは、例えば、コンバージョン数に代えてコンバージョン率を学習用モデルとして算出部32によって算出される。
【0149】
決定部33は、例えば、ユーザUの情報(例えば、ユーザUの属性情報)に基づいて、CVR予測モデルに入力するための広告提供順序を決定することができる。例えば、決定部33は、ユーザUの情報(例えば、ユーザUの属性情報)に基づいて、最もpCVRが高くなる広告提供順序を、CVR予測モデルに入力するための広告提供順序として決定することができる。
【0150】
〔3.3.5.提供部34〕
提供部34は、例えば、算出部32によって算出されたアトリビューションスコアScに関する情報を提供する。
【0151】
提供部34は、広告主Oの広告について算出したアトリビューションスコアScに関する情報を、広告A,B,Cの告主が利用する広告主端末3に提供する。例えば、提供部34は、広告主Oの広告A,B,CのアトリビューションスコアScを示す情報を、広告主Oが利用する広告主端末3に送信する。例えば、提供部34は、広告A,B,Cの広告主Oが利用する広告主端末3に、広告A,B,CのアトリビューションスコアScを示すコンテンツを送信する。
【0152】
また、提供部34は、決定部33によって決定された予算の割合を示す情報を、広告A,B,Cの広告主Oが利用する広告主端末3に提供する。例えば、提供部34は、広告A,B,Cの広告主Oが利用する広告主端末3に、決定部33によって決定された予算の割合を示すコンテンツを送信する。
【0153】
また、提供部34は、受付部31によって広告要求が受け付けられた場合、決定部33によって決定された広告を広告要求に対応するユーザUに提供する。例えば、提供部34は、広告要求に対応するユーザUのユーザ端末2に決定部33によって決定された広告を送信する。
【0154】
〔4.処理手順〕
次に、実施形態に係る情報処理装置1の処理部12による情報処理の手順について説明する。
図7は、実施形態に係る情報処理装置1の処理部12による情報処理の一例を示すフローチャートである。
【0155】
図7に示すように、情報処理装置1の処理部12は、スコア算出タイミングになったか否かを判定する(ステップS10)。スコア算出タイミングは、例えば、ユーザ端末2からの広告効果分析要求を受け付けたタイミング、または予め定められた周期が到来したタイミングなどであるが、かかる例に限定されない。
【0156】
処理部12は、スコア算出タイミングになったと判定した場合(ステップS10:Yes)、ユーザUの情報と広告提供順序の情報とを含む提供広告情報を記憶部11から取得する(ステップS11)。そして、処理部12は、ステップS11で取得した提供広告情報に基づいて、各広告のアトリビューションスコアScを算出する(ステップS12)。
【0157】
処理部12は、ステップS12の処理が終了した場合、またはスコア算出タイミングになっていないと判定した場合(ステップS10:No)、広告要求を受け付けたか否かを判定する(ステップS13)。
【0158】
処理部12は、広告要求を受け付けたと判定した場合(ステップS13:Yes)、提供対象となる広告を決定し(ステップS14)、ステップS14で決定した広告の提供を行う(ステップS15)。
【0159】
処理部12は、ステップS15の処理が終了した場合、または広告要求を受け付けていないと判定した場合(ステップS13:No)、動作終了タイミングになったか否かを判定する(ステップS16)。処理部12は、例えば、情報処理装置1の電源がオフにされた場合などに動作終了タイミングになったと判定する。
【0160】
処理部12は、動作終了タイミングになっていないと判定した場合(ステップS16:No)、処理をステップS10へ移行し、動作終了タイミングになったと判定した場合(ステップS16:Yes)、
図7に示す処理を終了する。
【0161】
〔5.変形例〕
提供広告情報に含まれる時系列情報は、上述した例に加えて、各広告の提供時間の情報を特徴量として含んでいてもよい。広告の提供時間は、広告が提供されてから該当ユーザのコンバージョン時点までの時間である。
【0162】
この場合、時系列情報は、例えば、{提供順序1,提供順序2,提供順序3,提供時間1,提供時間2,提供時間3}で表される。提供時間1は、提供順序1で提供された広告の提供時間であり、提供時間2は、提供順序2で提供された広告の提供時間であり、提供時間3は、提供順序3で提供された広告の提供時間である。この場合、広告提供順序の情報は、{提供順序1,提供順序2,提供順序3,提供時間1,提供時間2,提供時間3}で示される。
【0163】
また、予め定められた形式は、例えば、予測モデルがRNNやLSTMなどである場合、例えば、所定の期間TAを分割した時間毎の提供広告種別を示す情報の配列であってもよい。この場合、広告提供順序の情報は、所定の期間TAを分割した時間毎の提供広告種別を示す情報の配列によって示される。
【0164】
また、算出部32によって生成される予測モデルは、上述した例に限定されず、例えば、ユーザUの情報および広告提供順序の情報を含む情報を特徴量として入力し、コンバージョン数を予測する言語モデルであってもよい。
【0165】
言語モデルは、例えば、入力されたトークン列から次のトークンを推定して出力するように学習されたトランスフォーマなどのモデルである。かかる言語モデルは、情報処理装置1内にあり、情報処理装置1の運営者によって独自に作成されたものである。なお、入力された情報は、新たな回答として利用されないような学習を行うことで、入力された個人情報などの情報を秘匿するものが望ましい。
【0166】
上述した例では、算出部32は、予測モデルを用いて、各広告のアトリビューションスコアScを算出するが、かかる例に限定されず、算出部32は、予測モデルを用いずに、各広告のアトリビューションスコアScを算出することもできる。
【0167】
例えば、算出部32は、広告提供順序毎のコンバージョン数をユーザ属性毎に集計する。そして、算出部32は、広告提供順序毎のコンバージョン数に基づいて、各広告のアトリビューションスコアScをユーザ属性毎に算出することができる。この場合、算出部32は、予測モデルを示すf(・)に代えて、コンバージョン数を示すCV(・)を用いる。例えば、広告提供順序が広告A,B,Cの順であるとする。
【0168】
この場合、算出部32は、例えば、上記式(2)~(5)において、f(φ),f(A),f(A→B),f(A→B→C),v(A,B,C)に代えて、CV(φ)、CV(A),CV(A→B),CV(A→B→C),CV(A,B,C)を用いる。そして、算出部32は、上記式(2)~(8)の演算により、広告A,B,CのアトリビューションスコアSc(A),Sc(B),Sc(C)を算出する。
【0169】
また、算出部32は、ユーザ属性を問わずに、広告提供順序毎のコンバージョン数を集計することもできる。この場合、CV(・)の演算には、ユーザ属性の情報が含まれず、算出部32は、ユーザ属性を問わない広告提供順序毎のコンバージョン数に基づいて、各広告のアトリビューションスコアScを算出する。
【0170】
また、算出部32は、ユーザ属性に加えてユーザUの履歴情報から得られる特徴量を含むユーザ情報と広告提供順序との組み合わせ毎にコンバージョン数を集計することもできる。の場合、CV(・)の演算には、ユーザUの履歴情報から得られる特徴量が含まれ、算出部32は、ユーザ情報と広告提供順序との組み合わせ毎のコンバージョン数に基づいて、各広告のアトリビューションスコアScを算出する。
【0171】
〔6.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置1は、例えば
図8に示すような構成のコンピュータ80によって実現される。
図8は、実施形態に係る情報処理装置1の機能を実現するコンピュータ80の一例を示すハードウェア構成図である。コンピュータ80は、CPU81、RAM82、ROM(Read Only Memory)83、HDD(Hard Disk Drive)84、通信インターフェイス(I/F)85、入出力インターフェイス(I/F)86、およびメディアインターフェイス(I/F)87を有する。
【0172】
CPU81は、ROM83またはHDD84に記憶されたプログラムに基づいて動作し、各部の制御を行う。ROM83は、コンピュータ80の起動時にCPU81によって実行されるブートプログラム、およびコンピュータ80のハードウェアに依存するプログラムなどを記憶する。
【0173】
HDD84は、CPU81によって実行されるプログラム、および、かかるプログラムによって使用されるデータなどを記憶する。通信インターフェイス85は、ネットワークN(
図2参照)を介して他の機器からデータを受信してCPU81へ送り、CPU81が生成したデータを、ネットワークNを介して他の機器へ送信する。
【0174】
CPU81は、入出力インターフェイス86を介して、ディスプレイおよびプリンタなどの出力装置、および、キーボードまたはマウスなどの入力装置を制御する。CPU81は、入出力インターフェイス86を介して、入力装置からデータを取得する。また、CPU81は、入出力インターフェイス86を介して生成したデータを出力装置へ出力する。
【0175】
メディアインターフェイス87は、記録媒体88に記憶されたプログラムまたはデータを読み取り、RAM82を介してCPU81に提供する。CPU81は、かかるプログラムを、メディアインターフェイス87を介して記録媒体88からRAM82上にロードし、ロードしたプログラムを実行する。記録媒体88は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)などの光学記録媒体、MO(Magneto-Optical disk)などの光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリなどである。
【0176】
例えば、コンピュータ80が実施形態に係る情報処理装置1として機能する場合、コンピュータ80のCPU81は、RAM82上にロードされたプログラムを実行することにより、処理部12の機能を実現する。また、HDD84には、記憶部11内のデータが記憶される。コンピュータ80のCPU81は、これらのプログラムを記録媒体88から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
【0177】
〔7.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0178】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0179】
例えば、上述した情報処理装置1は、端末装置とサーバコンピュータとで実現してもよく、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットホームなどをAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
【0180】
また、上述してきた実施形態および変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0181】
〔8.効果〕
上述してきたように、実施形態に係る情報処理装置1は、取得部30と、算出部32とを備える。取得部30は、ユーザUがコンバージョンに至るまでにユーザUに提供された複数の広告の情報であって複数の広告のユーザUへの提供順序1の情報を含む提供広告情報を取得する。算出部32は、取得部30によって取得された提供広告情報に基づいて、コンバージョンに対する複数の広告の各々の相対貢献度を示すスコアを算出する。これにより、情報処理装置1は、広告に関するスコアを適切に算出することができる。
【0182】
また、算出部32は、ユーザUの情報とユーザUへの提供順序1の情報を含む情報に基づいてコンバージョンを予測するモデルを用いて、複数の広告の各々の相対貢献度を示すスコアを算出する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0183】
また、算出部32は、複数の広告AがユーザUに提供された場合のモデルによって予測されるコンバージョンと、複数の広告Aのうちの一部がユーザUに提供された場合のモデルによって予測されるコンバージョンとに基づいて、複数の広告Aの各々の相対貢献度を示すスコアを算出する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0184】
また、算出部32は、モデルで用いられるソフトマックス関数の出力値または出力値を用いて得られる値を複数の広告の各々の相対貢献度を示すスコアとして算出する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0185】
また、算出部32は、ユーザUへ複数の広告が提供されない場合のコンバージョンであるオーガニックコンバージョンを除外して複数の広告の各々の相対貢献度を示すスコアを算出する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0186】
また、算出部32は、推定処理部40と、生成処理部41とを備える。推定処理部40は、オーガニックコンバージョンを推定する。生成処理部41は、推定処理部40によって推定されたオーガニックコンバージョンを除外したコンバージョンに基づいてモデルを生成する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0187】
また、算出部32は、推定処理部40と、算出処理部42とを備える。推定処理部40は、オーガニックコンバージョンを推定する。算出処理部42は、推定処理部40によって推定されたオーガニックコンバージョンに応じた重み付けをモデルに追加し、重み付けを追加したモデルを用いて複数の広告の各々の相対貢献度を示すスコアを算出する。これにより、情報処理装置1は、広告に関するスコアをより適切に算出することができる。
【0188】
以上、本願の実施形態を図面に基づいて詳細に説明したが、これは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0189】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【0190】
1 情報処理装置
2 ユーザ端末
3 広告主端末
10 通信部
11 記憶部
12 処理部
20 ユーザ情報記憶部
21 広告情報記憶部
22 広告提供履歴記憶部
30 取得部
31 受付部
32 算出部
33 決定部
34 提供部
40 推定処理部
41 生成処理部
42 算出処理部
100 情報処理システム