Google Cloud と機械学習による大規模なクリエイティブ分析

この記事は、Google Cloud の機械学習(ML)機能とデータ ウェアハウス機能を使用して、クリエイティブに関する分析情報を自動化することに関心がある広告のプロフェッショナルを対象としています。この記事では、クリエイティブに関する分析を迅速に取得し、クリエイティブの品質を効率的に評価して、それに応じて広告の手法を調整するために、クラウド テクノロジーを利用する方法を探ります。幅広い広告(クリエイティブ)からビジュアル メタデータを抽出して処理する方法を学ぶことにより、どの画像や動画が消費者にアピールするかを調べることができます。

この記事では、次の目的のための手順を説明します。

  • 機械学習 API を使用してクリエイティブを解析する
  • 大規模な処理が可能な Pub/Sub パイプラインを実装する
  • 分析対象の広告データと画像コンテンツのクエリを実行する

ここで説明するシステムは、次の目的に役立ちます。

  • 社内外のデータ サイエンス チームが元データのカスタム分析を行えるようにする
  • インタラクティブな分析のために、ネットワーク、広告主、キャンペーンにわたってクリエイティブ要素のマクロな視点および関連する統計情報を表示する。
  • クリエイティブの最適化に注力する関係者と共有できる機械学習モデルを使用したスケーラブルな分析を行う

この記事では、読者が広告に Google マーケティング プラットフォームを使用していることを前提とします。

はじめに

広告主の間ではターゲティングとアトリビューションへの注目度が高くなっていますが、クリエイティブの影響力の 75% はその品質に関連しています。この統計にかかわらず、ほとんどの分析の取り組みでフォーカスされているのは、クリエイティブの内容ではなく、クリエイティブがいつ、どこで行われたかという点です。こうしたフォーカスは努力不足によるものではなく、むしろクリエイティブの分析がいかに難しいかを物語っています。

データから分析情報を得るには、まず、分析プロセスのために個々のクリエイティブに手動でタグ付けするという作業が必要になります。この作業にはコストも時間もかかるため、分析するクリエイティブを取捨選択せざるを得ません。さらに、クリエイティブ アセットのアップロード プロセスはクリエイティブ ID を組み込むなどして分類の整合性を確保するには不向きなため、パフォーマンス指標から元のクリエイティブを辿るのは不可能です。

次のような質問に対して回答できるようになることが理想的です。

  • 動画の最初の 5 秒以内にブランドのロゴを見せると、ブランド再生は増加するか?
  • 木やビーチなど、自然のアウトドアな画像を使用したクリエイティブは、都市の画像を使用したクリエイティブよりパフォーマンスが優れているか?
  • クリエイティブで使用されているキーワードは何か。それらのキーワードは指標にどのように影響を与えるか?
  • 幸せそうな人々の画像を使用したクリエイティブはエンゲージメントの向上につながるか?

現在、これらの質問に回答するために取られている唯一の方法は、各クリエイティブを確認し、手動で回答を提供することです。このような解決策はスケーラビリティに欠け、手間暇がかかります。ここで紹介する解決策では、このプロセスを再考し、すべてのクリエイティブをわずか数日で処理できるようにします。これにより、処理対象であるデータの質と量を大幅に拡充させることができます。これは、手動でのタグ付けでは、これまで実現不可能あるいはコストが高すぎるため実行できなかったことです。

この記事では、Pub/Sub、App Engine、Cloud Vision、BigQuery、データポータルなどの Google Cloud テクノロジーを使用して、こうしたクリエイティブ分析を大規模に自動化する方法について説明します。

クリエイティブに関する分析情報のためのデータ パイプライン

データ パイプラインは主に App Engine 上で実行されます。このデータ パイプラインでは Pub/Sub をメッセージ キューサービスとして使用して、一度に多数のクリエイティブを処理します。また、各パイプライン フェーズで複数の App Engine ワーカーで行われる同時タスクを調整する方法として、Datastore に対して読み取り / 書き込みを行います。

パイプラインでは、Google マーケティング プラットフォームからクリエイティブの画像と動画を取得して Cloud Storage にコピーします。取得した画像と動画は Vision API と Video Intelligence API によって処理されます。これらのサービスから生成される元データが BigQuery に書き込まれます。このようなパイプラインの実装方法を理解するため、次のセクションで各コンポーネントについて詳しく見ていきます。

ソリューションを自動化する

このソリューション案には、次の 3 つのステージがあります。

  1. Vision API と Video Intelligence API を通じて既存の機械学習の機能を利用します。
  2. Pub/Sub を使用して、クリエイティブを自在に処理できるスケーラブルなパイプラインを作成します。
  3. BigQuery とデータポータルを使用して、分析結果の情報の保存、クエリ、可視化を行います。

ステップ 1: 機械学習 API を利用する

例として、次のクリエイティブを取り上げます。

スキンバームの広告

キャンペーン マネージャーで、次の広告関連の情報を取得します。

  • クリエイティブ ID
  • クリエイティブのサイズ
  • クリック率(CTR)などの広告指標。指標の一覧はキャンペーン マネージャー内で確認できます。
クリエイティブ ID クリエイティブ名 クリエイティブのサイズ インプレッション数 クリック数 クリック率
12345 cbalm_lipgloss_300x300.png 300x300 80,734,829 174,696 0.2%

現状では、クリエイティブ自体のコンテンツ情報の抽出には、命名規則が最善の選択となっています。それとは対照的に、この記事では Cloud Vision API を使用して、このクリエイティブから以下の図に示す主な特徴を自動的に抽出します。

Vision API を使用してクリエイティブから主な特徴を抽出する

コンテンツのニュアンスを把握するには、クリエイティブの画像をアップロードして、この抽出機能を試してください。

API を使用してクリエイティブのコンテンツを瞬時に分析できました。これで、これらのクリエイティブの品質が広告想起とパフォーマンスにどのように影響するかがわかるようになります。また、データセットについての質問をすることがはるかに簡単になりました。

ステップ 2: Pub/Sub を設定してクリエイティブ パイプラインを自動化する

大規模なクリエイティブ パイプラインを自動化するには、Pub/Sub を利用します。このサービスはストリーム分析ソリューションとしてイベント ストリームを取り込み、データ ウェアハウス内で分析できるように BigQuery に配信します。イベントデータの配信を Pub/Sub に任せれば、何千ものクリエイティブを効率的に処理できます。次の図に、クリエイティブ分析の実装に使用するパイプライン設定の概要を示します。

テクノロジー スタックとアーキテクチャ

テクノロジー スタックとアーキテクチャ

上記のアーキテクチャ図では、次の Google Cloud コンポーネントを参照しています。

GCP コンポーネント パイプラインでの役割
Pub/Sub 非同期ジョブとメッセージ キュー。

この例では、クリエイティブ、ジョブ、クリエイティブ メタデータ、Vision API データのそれぞれを管理する 4 つのトピックを作成することをおすすめします。各トピックに、新しい入力の検出時に起動されるサブスクライバーを関連付けます。
Cloud Storage パイプライン内で使用する画像と動画のメディア ファイル ストレージとして使用するのに最適です。
App Engine ビジネス ロジックを処理するためのコンピューティング リソース。
Datastore ジョブに関する基本的なテレメトリー、パイプラインのステップ間でのアクションの調整、メッセージの集計に使用できます。
Cloud Logging ヘルスチェック、デバッグ、ステータスに対応するロギング リソース。
BigQuery パイプラインからの出力結果を保管し、それを分析対象としてデータポータルにフィードするデータストア。

パイプラインに関する主な考慮事項

  • パイプラインの始まりと終わりはモノリシック作業単位です。パイプラインの中央では、Pub/Sub のメッセージごとに 1 つのクリエイティブを格納し、複数のクリエイティブを並行して処理します。
  • ジョブは長期実行プロセスとして扱われます(ジョブあたりの実行が数時間から数日かかる場合がある)。
  • パイプラインは臨機応変に実行されるため、Google マーケティング プラットフォーム内の新しいデータは次回の実行まで更新されません。
  • このパイプラインを実行するには、このインフラストラクチャを実行する Google Cloud プロジェクトに関連付けられたサービス アカウントに対して、Google マーケティング プラットフォームのプロパティ(キャンペーン マネージャーなど)からの適切な権限と、Cloud Storage や BigQuery などのプロダクトを対象とする GCP プロジェクトのソースと宛先からの適切な権限の両方を付与する必要があります。
  • このパイプラインでは、単一のクリエイティブ処理や、バッチ更新を行うこともできます。

ステップ 3: データポータルと BigQuery を使用してクリエイティブの分析情報を可視化する

最初は予備分析として、Vision API と Video Intelligence API から直接元データを使用できます。一方、数学的なモデリングと機械学習には、特徴エンジニアリングによって元データを適切な形式に変換することをおすすめします。このソリューションでは、変更を加えたワンホット アプローチを使用して、クリエイティブの各特徴を 0 から 1 までの範囲の数値として表現します。次の表に、このデータの変換方法の例をいくつか示します。

各クリエイティブに関する API データ ワンホット表現
クリエイティブ内で検出されたコンテンツを記述する書式なしテキスト ラベル(beachcar など)と各ラベルの信頼スコア(0~1) 特徴セットは、すべてのクリエイティブでのラベルを網羅した辞書です。各クリエイティブには、該当するラベルが存在しない場合は 0、存在する場合は信頼スコア(0~1)の値が割り当てられます。
ロゴのサイズ(ピクセル単位)

左上隅の位置(ピクセル単位)
ロゴの相対サイズを表す 1 つの特徴。(ロゴの幅 × 高さ)/(クリエイティブの幅 × 高さ)として計算されます。

各象限あたり 1 つ、計 4 つの特徴。象限にロゴが含まれている場合は 1、含まれていない場合は 0 の値が割り当てられます。
クリエイティブ内のすべての顔のリスト 顔の数を表す特徴。顔がない場合は 0、1 つまたは 2 つある場合は 0.5、大数ある場合は 0.99 で表すロジスティック関数によって 0~1 に正規化されます。

以上のステップが完了したら、BigQuery を使用して、Google マーケティング プラットフォーム(具体的にはキャンペーン マネージャー)のデータ(クリエイティブ ID、クリック率)とともに Vision API のクリエイティブに関する情報(ラベル、スコア、色、視認性の高さ)をまとめることができます。次の表に、情報の例を示します。

クリエイティブ ID ラベル スコア 視認性の高さ クリック率
12345 海賊 0.7 0.8 0.2%
帽子 0.8 0.1
67890 胴体 0.6 0.4 0.3%
0.9 スカイブルー 0.4
  • このデータをクリエイティブの分析情報に変換できます。その情報から、この記事の冒頭で提起した質問に対する答えを簡単に見つけることができます。

まずは、「木やビーチなど、自然のアウトドアな画像を使用したクリエイティブは、都市の画像を使用したクリエイティブよりパフォーマンスが優れているか?」という質問から始めましょう。次のグラフでは、自動車メーカーからの匿名化データを使用して、クリエイティブのパフォーマンス指標に対するラベルの出現数をプロットしています。

クリエイティブのパフォーマンス指標に対するラベルの出現数をプロットするグラフ

  • グラフの右上の象限では、engineeringblueprintschematic の各ラベルが頻繁に出現し、高いパフォーマンスを示しています。この結果が示唆するのは、設計図とブループリントを見せると、その自動車が精密で技術的に優れた製品であることが顧客に伝わるということです。
  • 右下の象限では、ラベル executivedress shoes が頻繁に出現していますが、パフォーマンスはふるいません。今後は、このようなタイプのクリエイティブを避ける選択をするでしょう。
  • 左上の象限では、ラベル journeyforestpeoplebodysunglasses はそれほど頻繁に出現していませんが、比較対象となるクリエイティブよりパフォーマンスが優れています。これらのラベルは、見落としがちな機会を示しています。たとえば、ラベル journey + forest の組み合わせに該当する広告は曲がりくねった道と息をのむような景色を想起させる可能性があります。また、people + body + sunglasses の組み合わせに該当する広告では、起用する広告モデル(タレント)の人気にかかっていることを示唆します。これらのラベルを dress shoes + executive の組み合わせと比較すると、このブランドの広告キャンペーンにはカジュアルな画像の方が適していることがわかります。

  • 今度は別の質問を考えてください。「クリエイティブで使用されているキーワードは何か。それらのキーワードは指標にどのように影響を与えるか?」という質問です。BigQuery の同じデータを使用して、次のグラフを作成します。このグラフでは、対応するクリエイティブのパフォーマンスに対する特定のキーワードの出現数をプロットしています。このグラフに示されているように、nowsale というキーワードを使用したクリエイティブは、exclusiveoff というキーワードを使用したクリエイティブよりパフォーマンスに優れる傾向があります。

    キーワード「now」と「sale」を使用したクリエイティブは「exclusive」や「off」を使用したクリエイティブよりパフォーマンスに優れる傾向がある

    こうした分析情報を基に、作成するすべてのクリエイティブの影響に関する理解を深め、クリエイティブのデプロイメントとテストに関してより適切な意思決定を行うことができます。

次のステップ