Google アドワーズのデータドリブンアトリビューション(以下DDA)は、従来のアトリビューションモデルと比べてより多くのデータを活用するため、従来のモデルよりも適切に貢献度を接点(Google アドワーズにおけるキーワードなど)に割り振ることができます。
そのため、貢献度を割り振るための算出方法が従来のものと比べて複雑に見えるということもあり、結局のところDDAはどういう仕組みで貢献度を割り振っているのか?について理解する機会は少ないように思えます。
今回は、Google アドワーズのヘルプやGoogle アナリティクスのヘルプなどをもとに、DDAがどのような概念を使って接点に貢献度を割り振っているのか、順を追って紐解いてみたいと思います。
目次
データドリブンアトリビューション(DDA)とは?
DDAについてはさまざまな場所で話題に上がっていますので、既にご存じの方も多いと思いますがおさらいしてみます。
DDA では、アカウント データと Google の機械学習機能を活用して、最も影響力の大きいタッチポイントを判断します。そして、ユーザーの購入経路における各キーワードの実際の貢献度に応じて価値を割り当てます。さらに、ある程度の期間にわたって学習して調整されるため、常に精度を高めていきます。
一言で言うなれば、コンバージョンに至るまでにクリックされたキーワード(と属する広告グループやキャンペーン)とその過程(=順番)に応じて貢献度を割り振るということです。
ここだけを見てみると、下記キーワードに貢献度を割り振るという点では従来のアトリビューション(線形、減衰、接点)と同じ考え方のように見えますが、各キーワードに割り振る貢献度の算出方法がこれまでのものと異なります。
協力ゲーム理論におけるシャープレイ値
DDAにおける貢献度がどのように算出されるか紐解いてみます。このあたりのヒントになるのがGoogle アナリティクスのヘルプに掲載されています。
アルゴリズムによって各マーケティング接点にコンバージョンの価値を関連付ける
次に、このようにして得られた可能性データセットに対して、協力ゲーム理論の概念であるシャープレイ値に基づくアルゴリズムを適用します。シャープレイ値とは、ノーベル経済学賞受賞の Lloyd S. Shapley 氏が開発したもので、チームが生み出した成果を構成員に公正に分配するためのアプローチです。
引用元:データドリブン アトリビューションの方法論 - アナリティクス ヘルプ (強調は筆者によるもの)
各接点(Google アドワーズではキーワード)に対する貢献度は、協力ゲーム理論に基づくシャープレイ値を適用するとのことなので、このシャープレイ値について更に紐解くことでDDAの仕組みが理解できそうです。さっそくWikipediaで調べてみます。
協力ゲームの理論では、プレイヤーが提携し、その提携によって獲得された報酬を分配するような状況を考える。 このときプレイヤー間で提携への貢献度が異なるとしたら、 どのように報酬を分配することが公正な分配であるといえるか、 各プレイヤーは作業全体に対してどれほど重要であり、 その重要度に応じた合理的な報酬を期待できるか、という問題が生じる。 シャープレイ値はこのような状況における公正な報酬計算方法の一つである。
さすがはWikipedia、学術的な説明ですね。
シャープレイ値の求め方はこのあと紐解くこととして、シャープレイ値がどのような場合に活用されるものかというと、例えば「複数の企業が合併したときに得られるシナジー(ここでは合併後の利益の増分)に対して各社がどのくらい貢献しているか」、「帰る方向が一緒の3人がタクシーに乗って帰る時にタクシー運賃を後日どのように割り勘すればよいか」といった場合などに活用します。
シャープレイ値はこのように求める
前述で挙げた「帰る方向が一緒の3人がタクシーに乗って帰る時にタクシー運賃を後日どのように割り勘すればよいか」というケースを例にして考えてみます。
※詳しい計算式は省きます。どのような考え方で算出しているかという点に注目してみてください。
ケース:Aさん、Bさん、Cさんが飲み会をして終電を超えてしまったので、3人で1台のタクシーで帰ったとき、後日精算でそれぞれ支払うタクシー運賃の負担をいくらにすればよいか?
以下を前提として考えてみます。
3人でタクシーに乗ると、1人で乗ったときよりもタクシー運賃を安く済ませることができるのはここから読み解けますが、当然この3人の自宅の場所はバラバラなので、3人で割り勘にするのは不公平感が生まれます。
これを解消するため、家までの距離が異なる3人が提携をある順番で行ったときの貢献度を全て計算し、その平均を求めて適切な貢献度を配分するというのがシャープレイ値の考え方です。
次から計算例を挙げてみます。
①AさんがBさんを誘ってタクシーに乗ることでタクシー運賃が4,000円になるので、Bさんは1,300円貢献(2,500円+2,800円-4,000円=1,300円)したことに。
②そこにさらにCさんが加わるとタクシー運賃が5,000円になるので、Cさんは1,700円貢献(4,000円+2,700円-5,000円=1,700円)したことに。
次に、提携する順番が変わった場合を見てみます。
①‘AさんがCさんを誘ってタクシーに乗ることで、タクシー運賃は4,200円になるので、Cさんは1,000円貢献(2,500円+2,700円-4,200円=1,000円)したことに。
②‘そこにさらにBさんが加わるとタクシー運賃が5,000円になるので、Bさんは2,000円貢献(4,200円+2,800円-5,000円=2,000円)したことに。
するとどうでしょう。Aさん→Bさん→Cさんの順番で提携していったときの貢献度は、Bさんが1,300円でCさんが1,700円であったのに対して、Aさん→Cさん→Bさんの順番で提携していったときの貢献度はBさんが2,000円でCさんが1,000円となり、提携する順番によって貢献度が異なることがわかります。
このように全ての提携パターンにおいて3人の貢献度を計算すると次のようになります。
算出された貢献度の平均を取ったものがシャープレイ値に当たります。今回の例ではBさんが最も貢献度が高く、続いてCさん、Aさんと言う結果になりました。
ここで出てきたAさん、Bさん、Cさんをキーワードに置き換えると、DDAが各キーワードにどのように貢献度を割り当てているかイメージが付きやすいのではないでしょうか。
ちなみに、前表は実際にかかったタクシー運賃を考慮していません。シャープレイ値と3人でタクシーに乗ったときにかかった運賃5,000円を考慮すると、次の表のように書き換える事ができます。
この表から3人で1台のタクシーで帰る場合の負担は、Aさん1,717円、Bさん1,617円、Cさん1,667円であれば公平に負担したといえますね。
Google アドワーズにおけるDDAはGoogle検索の広告すべてのクリックを基に計算される
シャープレイ値の算出方法がわかったところで、本題に戻ります。
Google アドワーズのDDAにおいては、コンバージョンに至った経路(キーワードのクリックパス)やコンバージョンに至らなかった経路のデータを使って、各キーワードに貢献度を与えていきます。前述の例であればAさん、Bさん、Cさんの貢献度を算出するのと同じですね。
また、経路の状況が変われば当然のごとく貢献度も変わってきますので、時間とともに算出される貢献度も変化します。これはDDA特有のメリットでもあります。
つまり、貢献度を割り当てるための計算には、膨大な経路とコンバージョンのデータがないと各キーワードに分配する貢献度の精度が高まりません。なので、DDAを利用する条件として「過去30日間に15,000回以上のクリックと、各コンバージョンアクションに600回以上のコンバージョンが必要」になるというのも頷けます。
まとめ
- DDAは膨大な経路情報から各キーワードに貢献度を割り振るためにシャープレイ値を活用している
- コンバージョンに至った経路と至らなかった経路の全てを把握して貢献度を算出している
- だからといってシャープレイ値の算出方法は知らなくても大丈夫
- 本当にデータが多くないとそもそもモデル化ができないので、利用条件が厳しいのは仕方がない
最後に
その利用ハードルの高さから、まだまだ恩恵にあやかることが難しいDDA。しかし、その仕組みをちょっとでも理解してみると、高性能であるがゆえに必要なデータも多く必要という点は理解いただけたのではないかと思います。
現在は「過去30日間に15,000回以上のクリックと、各コンバージョンアクションに600回以上のコンバージョンが必要」という利用条件のため、利用できなくて悔しい思いをされているかたも多いと思いますが、さらなるテクノロジーの進化で予測精度が高まれば、利用条件の緩和という可能性もゼロではありません。
もしDDAを利用することができるようになったのならば、積極的に導入を検討していきたいですね。
※参考文献
- 人工知能学会誌 25巻1号(2010年1月) 協力ゲームとその応用
- シャプレー値という貢献度の測り方 - 3日で学ぶ交渉術!ゲーム理論入門