web閲覧履歴を用いた広告ターゲティングモデルとは?

初めまして、2020年4月に新卒として入社したMaketing Solution Division (MSD) 所属の小林と申します。

普段の業務ではweb広告の支援をしております。具体的にはターゲティング広告の支援を行っており、web閲覧履歴データ・機械学習の手法を用いてモデルを作成し、どのような人にweb広告を表示させるべきかという広告配信リストを提供しております。

本記事では広告ターゲティングモデルがどのようなものなのかを紹介したいと思います。web広告業界において機械学習がどのように応用されているか知っていただけると幸いです。

ターゲティングモデルの紹介に当たり、2つのトピックに分けて説明していきたいと思います。

【トピック】

1.web閲覧履歴データとは

2.ターゲティングモデルについて

・目的変数作成への活用

・特徴量作成への活用

・作成したモデル紹介

 

    1.web閲覧履歴データとは

    この章ではどのようにしてユーザごとのweb閲覧履歴データを収集しているかについて説明していきたいと思います。

    まずデータ収集の説明の前にwebバナー広告の仕組みについて紹介します。

    あるwebサイトにバナー広告が表示される際に、広告枠を獲得するため広告主同士間で競売(オークション)が行われます。競売の中で最高入札金額を提示した広告主の広告がサイト訪問者へ表示されます。

    この一連の流れを図とフローで表すと以下になります。

    1. ユーザーがwebサイトにサイト訪問
    2. webサイトが広告管理者に広告をリクエスト
    3. 広告管理者が広告主に入札をリクエスト
    4. 広告主が広告管理者に入札をレスポンス
    5. 広告管理者がwebサイトに落札した広告を伝える
    6. webサイトが広告主に落札者へ配信する広告をリクエスト
    7. webサイトがユーザーに広告配信

     

    【webバナー広告の仕組み図】

    この競売が発生したタイミングで広告表示枠が存在するweb閲覧ページのURL情報が蓄積されます。このような流れでユーザーのweb閲覧履歴データが収集されます。

     

    2.ターゲティングモデルについて

    この章ではweb閲覧履歴データのモデル作成への活用方法・実際に作成したモデルを紹介したいと思います。ターゲティングモデルは、広告反応しやすい人を当てるという目的で作成しています。そのようなモデルを構築しスコアが高い人に限定して広告配信(ターゲティングリストを作成)をすることで、無作為に広告配信するよりも小さいコストで大きな広告効果を得ることができます。

    目的変数作成への活用

    ターゲティングモデルは基本的に2値分類問題を想定し作成されます。2値分類問題とはある事象に対して正解・不正解のラベル付けが行われ、それらの予測を行う問題になります。ラベルに相当するデータを目的変数といいます。

    では、目的変数の定義・作成のプロセスを紹介したいと思います。現在行っている方法は2種類あります。

    ①特定のサイトを閲覧したかどうか

    ②タイトルに特定ワードを含むwebページを複数閲覧したかどうか

    ①については、バナー広告をクリックすると広告主が作成したランディングページ(LP)に遷移されるためその訪問履歴を正解データとして目的変数を作成することがあります。

    その際にもいくつかパターンがあり、LP訪問を正解としたり、広告主が設定したコンバージョン(CV)ページへの訪問を正解としたりします。広告でのCVというのは、広告主が設定したユーザーの最終アクションのことを意味しています。

    例えば、端末購入完了やLPからプラン料金シミュレーションページへの遷移などがあります。

    目的に即した正解ラベルを設定することで、バナー広告をクリックしてLPに訪問したり、CVする人の類似者を見つけ出したりすることができます。

    ②については、webページにはタイトルがあるため特定ワードがタイトルに含まれるページを閲覧した人を正解データとして目的変数を作成します。例えば「5G」という単語を特定ワードとしてモデルを作成した場合、「5G」へ興味がある人たちを見つけ出すことができます。

    特定ワードの設定により、①の方法では見つけられなかった広告反応潜在層を特定可能になります。また、特定ワードを変えるだけで様々なモデルを作成できるため、あらゆる広告施策に対応可能な汎用性も兼ね備えています。

    特徴量作成への活用

    web閲覧履歴データをモデルに特徴量として組み込む際に数値データに落とし込んでいます。そこで使用するデータ加工方法がリフト値を用いたターゲットエンコーディングになります。リフト値とは条件X(目的変数が1)のときに事象Y(あるドメイン・URLを閲覧する)が起こりやすいかどうかを評価する値となっています。

    リフト値はターゲットユーザーが見やすいURL・ドメインを定量化するために用いられています。具体的には、各webページのURL・ドメインごとにリフト値を算出し、それらのリフト値表から各ユーザーごとに閲覧URL・ドメインの抽出およびリフト値の総和を取ることで、ユーザー単位でのリフト特徴量が作成されます。

    フローにすると以下のようになります。

    1. データ収集期間を指定し、予測対象者の閲覧ログデータを抽出
    2. 抽出したデータからURL・ドメインごとにリフト値を算出(リフトマスター)
    3. 各予測対象者の閲覧ログとリフトマスターのURL・ドメインを紐づけてリフト値の和を算出

    リフト値の算出方法について説明します。リフト値は以下の計算式で算出されます。

    計算式から導かれるように、目的変数1のユーザーがよく見るサイトかつ目的変数が0のユーザーが全く見ないサイトの場合、リフト値が高くなります。そのため、リフト値が高いURL・ドメインを確認することでどのようなweb閲覧傾向があるかを知ることもできます。

    具体的な例としてプログラミングに興味がある人を予測モデルを作成する場合を紹介します。

    この場合の目的変数を

    1 : プログラミングの教育コンテンツを受講した人

    0 : プログラミングの教育コンテンツを受講していない人

    にします。

    サイトA : プログラミング言語に関するサイト

    サイトB : 食べ物に関するサイト

    があり、下表のような統計情報があったとします。

    ■webページ閲覧統計情報

    それぞれのサイトA・サイトBのリフトを算出すると

    サイトA_リフト値 = (85 / (85+186)) / (41231 / (41231+1550562)) = 17.64

    サイトB_リフト値 = (5 / (5+43207)) / (41231 / (41231+1550562)) = 0.004

    となります。

    各サイトのリフト値より、サイトAを訪問しているユーザーはプログラミングに興味がある、とモデルは判別するようになります。

    作成したモデル紹介

    業務において作成したモデルを一部紹介したいと思います。紹介するモデルは携帯のオンラインショップ興味予測モデルになります。

    ※機密性の観点からデータは実在しないページタイトルにしています。(ダミー化)

    オンラインショップ興味予測モデル

    こちらのモデルはオンラインショップを利用してくれそうな人を予測するモデルになっています。目的変数はオンラインショップにて買い物をしたかという条件にして作成しています。

    このような目的変数からweb上位リフトを表にしました。

     

    リフト値表から、オンラインショップで買い物をした人がスマホ端末のレビューやオンラインショップの利用方法ページを見ている傾向にあることが分かります。

    web閲覧傾向からオンラインショップにて購入をする人がどのような端末を検討しているかプランを検討しているかといった行動を把握することができます。またオンラインショップで買い物をする人が閲覧しそうなページがリフト上位に来ているため、オンラインショップ予測モデルとして上記リフト値を特徴量として組み込んだ場合にオンラインショップ興味者をターゲティングできるのではないかということが分かります。

     

    終わりに

    広告ターゲティングモデルがどのようなものなのか・web広告業界において機械学習がどのように応用されているかという観点で書いてきました。作成したモデル紹介からも分かる通り、目的変数をしっかり決めることさえできれば、様々なモデルが作成可能です。またwebリフト値作成の方法はどのモデルも同じなので1つのコードを使いまわすことができ、モデル作成効率もよいです。

    今後も様々なモデルを作成し、ターゲティング広告支援を引き続き行っていきたいと思っています。

    関連記事