RevX の舞台裏の一環として、RevX のデータ サイエンティストである Mayur Dangar 氏と対談し、データに関するあらゆることを学びました。
リアルタイム入札により、広告主は適切なインベントリを適切なオーディエンスに適切なタイミングで入札できます。プログラマティック広告は、自動化され、データドリブンで、非常に効果的なチャネルです。 しかし、最良の結果を得るためにこれを最適化するには何が必要でしょうか?
当社のデータサイエンティスト、 マユール・ダンガー CPM 交渉モデルが機械学習を活用して広告主のコストを削減し、収益を向上させる仕組みについてご紹介します。
データサイエンスに興味のある方は、ぜひお聴きください!このインタビューでは、データの準備やパイプラインからモデリングやモニタリングまで、あらゆる側面を垣間見ることができます。
RTB(リアルタイム入札)オークションを通じてプログラマティックに広告が売買されることはよく知られています。これは、SSP(サプライサイドプラットフォーム)やDSP(デマンドサイドプラットフォーム)は、広告主に代わって同じ掲載枠に入札します。入札に勝ったプラットフォームは、そのスポットに広告を配信できます。プログラマティックプラットフォームは、リクエストを受信してから50ミリ秒以内に応答する必要があります。
ここでプログラマティックテクノロジーが活躍します。迅速な入札を容易にするためです。広告とメディア取引を完璧に機能させるには、マシンツーマシンの自動化が必要です。人間の介入は不要になり、配信されるコンテンツはより高度なパーソナライゼーションを実現します。
ここでは、広告主にとってより高い効率性を実現するために、入札プロセスを最適化する方法について説明します。
CPM交渉担当者:プロジェクト目標
歴史的に、すべての取引はセカンドプライスオークションで行われていましたが、SSPはより高い収益を得るためにファーストプライスオークションへと移行しました。これはエクスチェンジにとっては利益をもたらしましたが、DSP側にとってはそうではありませんでした。DSP側はファーストプライスオークションで赤字を垂れ流していたのです。
の究極の目標 CPM交渉者プロジェクト 広告インベントリの入札価格を最適化することが目的でした。これにより、DSPは入札をコントロールし、インベントリに対して高額な入札を行わずに済みます。
DSPは、広告インベントリの価値を測定するために様々な指標を使用します。最も効果的なKPIの一つはeCPM(実効インプレッション単価)です。これは、1,000インプレッションあたりの広告の実効コストを計算できる、よく使われる指標です。
データサイエンスはどのように役立つのでしょうか?
データサイエンスはプログラマティック広告に不可欠な要素です。DSPはデータサイエンスを活用して最適化を行っています。 UA (ユーザー獲得)と RT (リターゲティング)キャンペーン。
データ サイエンスのサポートにより、過去の入札データとその入札結果を収集して分析し、複雑な機械学習/ディープラーニング アルゴリズムをトレーニングして、次のことを行いました。
🔹 あらゆる広告リクエストの最大 eCPM を予測できる予測モデルを構築します
🔹 予測される最大 eCPM よりも高い入札を行わないようにすることで、入札価格を制御し、コストを節約します。
🔹 勝率を落とさずに実行してください。
このプロジェクトでは、データセットに GCP BigQuery を使用し、ディープラーニング モデルの構築に Tensorflow と Keras を使用し、結果の保存にクラウド ストレージを使用しました。
詳細を見てみましょう。
データ入門
履歴データに関しては、先月の入札データ(当社が落札)をBigQuery SQLを使用して収集し、インプレッションとして使用しました(すべてのデータセットはGCP BigQueryに保存されているため)。結果として得られたデータセットの行数は数百万行に上りました。データセットのサイズが非常に大きいため、GCP BigQueryではテーブルとして保存しました。
本プロジェクトでは、サイトURLやアグリゲータといったサプライヤーレベルの機能を活用し、ML/DLモデルのトレーニングを行いました。そして、クリエイティブサイズや国が異なる様々なパブリッシャーサイトにおける最大CPMを予測するCPMバーゲナーモデルの構築を目指しました。
データ準備とデータパイプライン
プロジェクトのデータ準備部分では、以下のいくつかの手順を実行しました。
🔹 データクリーニング: 幸いなことに、デフォルト値があらかじめ定義された欠損値がいくつか見つかりました。また、IQR(四分位範囲)ルールに従って、CPMが非常に高い外れ値も削除しました。
🔹 データの前処理: パブリッシャーサイト機能と同様に、高いカーディナリティ(固有カテゴリーの数が多い)に対応するため、機能の値をハッシュ値に変換しました。また、クリエイティブサイズの値もすべてハッシュ化しました。
上記の膨大なデータをML/DLモデルに取り込むため、迅速に前処理を行いました。これは、非常に強力なGCP BigQuery I/OストリーミングAPIを統合することで実現しました。このAPIを使用することで、BigQueryデータセットから直接トレーニングデータとテストデータのローダーを作成できるようになりました。
モデリング
そこで、データ ストリーミング用のデータ パイプラインを設定した後、このプロジェクトで最も期待されていた部分であるディープラーニング モデルの実装に到達しました。
TensorFlow と Keras を使用して、さまざまな国とクリエイティブ サイズの組み合わせに対して、さまざまなニューラル ネットワーク回帰モデルをトレーニングしました。
以下はモデル構成です。
🔹 2 つの入力層を導入しました。1 つはカテゴリ特徴用の埋め込み層、もう 1 つは数値特徴用の通常の入力層です。両方の入力層を結合する連結層が続きます。
🔹 次に、この連結層の後に、3〜5 個のニューロンを含む 32〜64 個の隠し層によって作成された完全接続ニューラル ネットワークが続きます。
🔹 出力層を除くすべての隠し層に Relu 活性化を適用し、出力層には Softplus 活性化を適用しました。
🔹 コンパイルには Adam オプティマイザーを使用し、損失メトリックとして平均絶対誤差を使用しました。
モデルを作成した後、Big Query ストリーミング API によってすでに生成されているトレーニング データ ローダーとテスト データ ローダーの両方をモデルに適合させ、モデルのトレーニング プロセスを完了しました。
このプロセス全体をすべての異なる組み合わせに対して繰り返しました。
自動化と監視
このプロジェクトではオフライン トレーニング方法を採用しましたが、毎日同じ数のモデルをトレーニングしました。
プロセス全体を自動化するために、crontabを利用してcronジョブを作成しました。このジョブは、Pythonスクリプトの実行コマンドを含むシェルスクリプトを専用のGCP VM上で毎日実行し、すべてのキーの最大eCPM上限を生成します。
このプロセスは毎日実行され、最大 eCPM 上限が更新されます。これは入札プロセス全体に良い影響または悪い影響を与える可能性があります。この懸念のため、このプロジェクトでは毎日の監視が不可欠です。
eCPM の上限に大きく依存する、監視する必要がある要素が 2 ~ 3 つあります。
1. インプレッション獲得率: 総インプレッション数/総入札額
2. eCPA: 実効アクション単価
3. eCPC: 有効クリック単価
私たちが特に注意を払っている重要な状況が他に 2 つあります。
🔹 非常に高い eCPM 上限このシナリオでは、インプレッション数は増加する可能性がありますが、eCPC と eCPA も高くなる可能性があり、全体的な収益に影響を及ぼす可能性があります。
🔹 min_cpm を下回る eCPM 最大上限: このシナリオでは、パブリッシャー/SSPからのリクエストに含まれるmin_CPM上限のせいで、多くのインプレッションを失う可能性が非常に高くなります。現地通貨で最低CPM以上の入札を行う必要があります。例えば、米ドルでの最低CPMが0.05ドルで、eCPM上限が0.04ドルの場合、入札はフィルタリングされます。そうなると、確実に入札を失うことになります。
結論
この記事では、CPMバーゲンプロジェクトを完了させるのに役立ったすべての手順について説明しました。改善点としては、このプロジェクトにより、総メディア支出を20~25%削減できました。これは、最大CPMの上限を固定した場合のみで0~3%の削減に相当します。 これにより、広告主のコストを削減する当社の取り組みがサポートされ、収益の増加につながりました。