図を全体的に参照して、様々な実装形態による自動化されたコンテンツの生成および最適化のためのシステムおよび方法が示される。本明細書において説明されるシステムおよび方法は、特定のコンテンツプロバイダ、特定のリソース(たとえば、ウェブページ)、特定のプラットフォーム(たとえば、ディスプレイコンテンツ、ビデオコンテンツ、モバイルデバイスコンテンツ、テキストコンテンツなど)、特定の関心のプロファイル(たとえば、ユーザの関心の組)、特定のインプレッション、またはこれらの任意の組合せに合わせて仕立てられたコンテンツアイテム(たとえば、広告)を自動的に生成するために使用され得る。コンテンツアイテムは、コンテンツ生成システムによって生成され、クライアントデバイスに提供され、クライアントデバイスを介してユーザに提示される可能性がある。生成されるコンテンツアイテムは、ランディングリソースとのユーザのインタラクション(たとえば、コンテンツアイテムをクリックすること、コンテンツアイテムの上にホバーすることなど)に応答して(たとえば、埋め込まれたハイパーリンクによって)クライアントデバイスをランディングリソースに導くように構成され得る。
一部の実装形態において、コンテンツ生成システムは、ランディングリソースおよび/またはその他の関連するデータソース(たとえば、ランディングリソースに関連するセカンダリリソース、別個のデータベースなど)からデータ資産を抽出する。データ資産が抽出されるリソースは、ランディングリソースの識別情報によって定義される可能性がある。抽出されるデータ資産は、画像、色、フォント、テキスト、グラフィックス、ビデオ、スタイル、会社に関連する情報(たとえば、地理的な位置、連絡先情報など)、ページ分類、および/またはランディングリソースに関連するその他の種類のデータを含み得る。コンテンツ生成システムは、抽出されたデータ資産を使用して、生成されたコンテンツアイテムとのユーザのインタラクションに応答して(たとえば、埋め込まれたハイパーリンクによって)ランディングリソースおよび/または関連するセカンダリリソースに導くコンテンツアイテムを生成し得る。
生成されたコンテンツアイテムに関連するユーザのアクション(たとえば、クリック、コンバージョン、およびその他の種類のイベント)は、ログに記録され、コンテンツ生成システムによって生成される後続のコンテンツアイテムの性能を最適化するために使用され得る。生成されたコンテンツアイテムの性能は、ログに記録されたユーザのアクションから導出される様々な性能の測定基準および/または統計データを使用して定量化され得る。そのような性能の測定基準の一例は、コンテンツアイテム、コンテンツアイテムのグループ、またはコンテンツ配信キャンペーンに関連するクリック率(CTR)である。コンテンツアイテムに関するCTRは、コンバージョンにつながるコンテンツアイテムのクリックの割合(つまり、
)として定義され得る。コンバージョンは、予め決められたコンバージョンの基準(たとえば、製品の購入、ユーザアカウントの作成、特定のリソースを見るのに費やされた閾値の時間など)を満たす任意のイベントまたはユーザのアクションである可能性がある。
一部の実装形態において、コンテンツプロバイダは、クリック単価(CPC)に基づいてコンテンツアイテムに課金される。しかし、すべてのクリックが、コンバージョンにつながる訳ではない。CPC課金システムにおいて、コンテンツアイテムに関するCTRは、コンテンツプロバイダによって実現される投資利益率(ROI)と相関がある可能性がある。概して、コンテンツプロバイダは、それらのコンテンツプロバイダのコンテンツ配信キャンペーンに関連するROIを最大化しようとする。ROIを最大化する1つの方法は、CTRなどの様々な性能の測定基準を最大化することを目的としてコンテンツの選択および配信の判断を最適化することである。
本明細書において説明されるコンテンツ生成システムは、生成されるコンテンツアイテムの様々な要素、特徴、または属性を自動的に調整することによってコンテンツの性能を最適化し得る。一部の実装形態において、コンテンツ生成システムは、1つまたは複数の予測モデルを使用して、生成されたコンテンツアイテムの特定の特徴または特徴の組合せに関する推定された性能の測定基準を計算する。コンテンツ生成システムは、予測モデルを使用して、特定のサービス提供の文脈のために、生成されるコンテンツアイテムに含める最適な特徴を選択し得る。予測モデルは、ランディングリソースID(たとえば、URL)もしくはタイプ(たとえば、ページ分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、ユーザの関心、またはサービス提供の文脈および/もしくは利用可能なインプレッションを示すその他の情報などの入力を受け取るように構成され得る。予測モデルは、所与のサービス提供の文脈に基づいて様々なコンテンツアイテムの特徴に関する予測される性能の測定基準(たとえば、予測されるクリック率(pCTR))を計算するために使用され得る。
一部の実装形態において、コンテンツ生成システムは、前に生成されたコンテンツアイテムに関連するログに記録されたイベントおよび/または統計データを使用して予測モデルを訓練する。ログに記録されたイベントデータは、予測モデルのためのフィードバック信号として使用される可能性があり、(たとえば、機械学習技術を使用して)予測モデルの様々なパラメータを調整するために使用される可能性がある。実際のイベントデータを使用して予測モデルを訓練することは、予測の正確性を改善する可能性があり、新しいイベントがログに記録されるときに(たとえば、決まった間隔でまたは継続的に)予測モデルが更新されることを可能にする可能性がある。
予測モデルによって最適化され得る1つのコンテンツアイテムの特徴は、コンテンツアイテムの「クリックタイプ」である。コンテンツアイテムに関するクリックタイプは、コンテンツアイテムのレイアウト、コンテンツアイテムのインタラクティブ性、および/またはコンテンツアイテムがクライアントデバイスによってどのようにレンダリングもしくは提示されるかに影響を与える可能性がある。一部の実装形態において、コンテンツアイテムに関するクリックタイプは、コンテンツプロバイダに課金し、pCTRを計算する目的で「クリック」として適格であるユーザのアクションの種類を定義する。コンテンツ生成システムは、「ボタン」クリックタイプ、「コンテンツアイテム全体」クリックタイプ、および「確認」クリックタイプを含む複数の異なるクリックタイプからクリックタイプを選択する可能性がある。
ボタンクリックタイプは、クリック可能なボタン、またはコンテンツアイテムの全領域のうちのその他のサブセットなどのコンテンツアイテムの特定の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。ボタンクリックタイプを有するコンテンツアイテムに関しては、コンテンツアイテムのその他の部分(たとえば、クリック可能な領域の外の部分)とのユーザのインタラクションが、クライアントデバイスをランディングリソースにナビゲートさせない可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格でない可能性がある。
コンテンツアイテム全体クリックタイプは、コンテンツアイテムの任意の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。コンテンツアイテム全体クリックタイプを有するコンテンツアイテムに関しては、コンテンツアイテムの任意の部分とのユーザのインタラクションが、クライアントデバイスをランディングリソースにナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。
確認クリックタイプは、コンテンツアイテムとの第1のユーザのインタラクション(たとえば、第1のクリック)に応答して、コンテンツアイテムに確認プロンプトを表示させる可能性がある。確認プロンプトは、ランディングリソースにナビゲートするために再びクリックするようにユーザに指示するメッセージを表示する可能性がある。確認クリックタイプを有するコンテンツアイテムに関しては、コンテンツアイテムとの第2のユーザのインタラクション(たとえば、第2のクリック)が、クライアントデバイスをランディングリソースにナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。確認クリックタイプは、コンバージョンにつながりそうにない故意でないクリックからの保護に役立つ可能性がある。
予測モデルによって最適化され得る別のコンテンツアイテムの特徴は、コンテンツアイテムの「クリエイティブ拡張」の特徴である。クリエイティブ拡張は、主たる「創造的」部分以外のコンテンツアイテムの補足的要素である可能性がある。クリエイティブ拡張は、「クリックトゥコール」ボタン、「位置」ボタン、「セカンダリリソース」ボタンなどのクリック可能なボタン、および/またはコンテンツアイテムに含まれ得るその他の種類の補足的コンテンツを含み得る。それぞれのクリエイティブ拡張は、コンテンツアイテムの対応する部分がクリックされるときに異なるアクションが行われるようにし得る。
クリックトゥコールボタンは、コンテンツアイテムに関連する主体に関する電話番号またはその他の連絡先情報が知られているとき、モバイル通信デバイス上に表示されるコンテンツアイテムのために含められる可能性がある。そのような連絡先情報は、ランディングリソースから自動的に抽出されるか、または別個のデータベースから取得される可能性がある。クリックトゥコールボタンを選択することは、コンテンツアイテムに関連する主体(たとえば、小売店、カスタマーサービス電話、販売代理店など)との通話またはその他の通信を開始する可能性がある。その他のデバイスタイプ(たとえば、デスクトップコンピュータ、タブレットなど)に関しては、連絡先情報が知られているとき、クリックトゥコールボタンの代わりに「クリックトゥ電子メール(click-to-email)」ボタンまたはより広い「クリックトゥコンタクト(click-to-contact)」ボタンが含まれる可能性がある。
位置ボタンは、ランディングリソースに関連する会社の地理的な位置を示す地図を表示させる可能性がある。関連する会社の地理的な位置(たとえば、所在地住所、店の場所、メールアドレス、GPS座標など)が、ランディングリソース、別個のデータベース、またはランディングリソースに関連するリソースから抽出される可能性がある。位置ボタンを選択することは、(たとえば、モバイルデバイス上に)地図アプリケーションをロードさせる可能性があり、またはユーザのウェブブラウザを地図リソース(たとえば、グーグルマップ)にナビゲートさせる可能性がある。
セカンダリリソースボタンは、セカンダリリソースを表示させる可能性がある。コンテンツアイテムは、複数の異なるリソースまたはリソース(たとえば、セカンダリリソース、ソーシャルリソース、ランディングリソースなど)の一部に関するクリエイティブ拡張(たとえば、選択可能なボタンまたはリンク)を含み得る。一部の実装形態において、コンテンツアイテムのリンクは、(ランディングリソースではなく)セカンダリリソースのみにリンクし、ソーシャルコンテンツアイテムと呼ばれる可能性がある。その他の実装形態において、コンテンツアイテムのリンクは、ランディングリソースとセカンダリリソースとの両方にリンクする。
コンテンツ生成システムによって生成されたコンテンツアイテムは、通信ネットワーク(たとえば、インターネット)を介してクライアントデバイスに提供される。コンテンツアイテムに関連するイベント(たとえば、インプレッション、クリック、コンバージョンなど)は、ログに記録され、コンテンツ生成システムによってアクセスされ得るデータベースに記憶される。コンテンツ生成システムは、ログに記録されたイベントを使用して、コンテンツアイテムに関連する性能の測定基準を計算し、予測モデルを訓練する。コンテンツ生成システムは、予測モデルを使用して、コンテンツアイテムのどの特徴または特徴の組合せが所与のサービス提供の文脈に関して最適なコンテンツの性能につながると推定されるか(たとえば、CTR、pCTR、または別の性能の測定基準を最適化する特徴)を決定する。そして、コンテンツ生成システムは、最適なコンテンツの性能につながると推定された特徴を有するコンテンツアイテムを自動的に生成し得る。
ここで図1を参照すると、説明される実装形態によるコンピュータシステム100のブロック図が示される。コンピュータシステム100は、ネットワーク102、コンテンツリクエスタ104、リソース106、クライアントデバイス108、リソースレンダラ110、データストレージデバイス112、およびコンテンツ生成システム114を含むことを示される。
ネットワーク102は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク、無線ネットワーク、インターネット、または任意のその他の種類のデータネットワークなどの任意の種類のコンピュータネットワークを含み得る。ネットワーク102は、データを送信、受信、または中継するように構成された任意の数のコンピューティングデバイス(たとえば、コンピュータ、サーバ、ルータ、ネットワークスイッチなど)を含み得る。ネットワーク102は、任意の数の有線および/またはワイヤレス接続をさらに含み得る。たとえば、コンテンツリクエスタ104は、ネットワーク102のコンピューティングデバイスに(たとえば、光ファイバケーブル、CAT5ケーブルなどによって)結線されるトランシーバと(たとえば、WiFi、セルラー、無線などによって)ワイヤレスで通信し得る。
ネットワーク102は、コンテンツ生成システム114とコンテンツリクエスタ104との間の通信を容易にし得る。コンテンツ生成システム114は、ネットワーク102を介してコンテンツリクエスタ104からコンテンツ生成要求を受け取り得る。コンテンツ生成システム114は、要求に応答してコンテンツアイテムを生成し、検討または承認のために、生成されたコンテンツアイテムをコンテンツリクエスタ104に提供し得る。
ネットワーク102は、コンテンツ生成システム114と、リソース106と、リソースレンダラ110との間の通信をやはり容易にし得る。コンテンツ生成システム114は、リソース106および/またはリソースレンダラ110からデータ資産を受け取り得る。コンテンツ生成の要求を受け取ると、コンテンツ生成システム114は、リソースレンダラ110を呼び出してリソース106からデータ(たとえば、HTMLデータ、ウェブページデータなど)を取得し(たとえば、ダウンロードし)、レンダリングし得る。リソースレンダラ110は、ネットワーク102を介してリソース106からデータを受け取り、そのようなデータをスナップショットイメージ(たとえば、リソース106の視覚的表現)としておよび/またはドキュメントオブジェクトモデル(DOM)ツリーとしてレンダリングし得る。レンダリングされたデータは、ネットワーク102を介してリソースレンダラ110からコンテンツ生成システム114に送信され得る。
引き続き図1を参照すると、コンピュータシステム100は、コンテンツリクエスタ104を含むことが示される。コンテンツリクエスタ104は、コンテンツアイテムを生成するための要求が受け取られる1つまたは複数の主体を含む可能性がある。たとえば、コンテンツリクエスタ104は、広告主、広告代理店、第三者のコンテンツプロバイダ、発行者、ウェブサイトプロバイダ、またはコンテンツアイテムを生成するための要求が受け取られ得る任意のその他の主体を含む可能性がある。
一部の実装形態において、コンテンツリクエスタ104は、コンテンツ生成の要求を送ることができる1つまたは複数の電子デバイス(たとえば、コンピュータ、コンピュータシステム、サーバなど)を含む。コンテンツリクエスタ104は、ユーザがコンテンツ生成要求を入力し得るユーザ入力デバイス(たとえば、キーボード、マウス、マイクロフォン、タッチスクリーン、タブレット、スマートフォンなど)を含み得る。コンテンツリクエスタ104は、ネットワーク102を介してコンテンツ生成システム114にコンテンツ生成要求を送り得る。一部の実装形態において、コンテンツ生成要求は、ユニフォームリソースロケータ(URL)を含む。URLは、特定のランディングリソース(たとえば、リソース106のうちの1つ)の位置を指定し得る。
一部の実装形態において、コンテンツリクエスタ104は、コンテンツ生成システム114にキャンペーンパラメータ(campaign parameter)を送る。キャンペーンパラメータは、コンテンツ生成システム114によって生成されたコンテンツアイテムの配信を制御するために使用され得る。キャンペーンパラメータは、コンテンツアイテムに関連するキーワード、キーワードに対応する入札額、コンテンツ配信の予算、地理的なリミッタ(geographic limiter)、またはコンテンツ生成システム114、もしくはコンテンツアイテムがいつクライアントデバイス108に提示され得るかを決定するための別個のコンテンツサーバによって使用されるその他の基準を含む可能性がある。
コンテンツリクエスタ104は、確立されたキャンペーンパラメータに従って配信されるコンテンツアイテムの性能を監視するためにコンテンツ生成システム114にアクセスし得る。たとえば、コンテンツリクエスタ104は、コンテンツアイテムまたはコンテンツアイテムの組に関連する1つまたは複数の性能の測定基準を検討するためにコンテンツ生成システム114にアクセスし得る。性能の測定基準は、配信されるコンテンツアイテムまたはコンテンツアイテムの組に関連するクライアントデバイス108間のインタラクション(たとえば、CTR、インプレッション数、クリック数、コンバージョン数、費やされた額など)を示し得る。性能の測定基準は、アカウンティングシステム(accounting system)またはログファイル処理システムによってログに記録され、処理されたユーザのアクションに基づく可能性がある。
引き続き図1を参照すると、コンピュータシステム100は、リソース106を含むことが示される。リソース106は、ネットワーク102を介して提供され得る任意の種類の情報またはデータ構造を含み得る。一部の実装形態において、リソース106は、ユニフォームリソースロケータ(URL)などのリソースアドレスによって特定され得る。リソース106は、ウェブページ(たとえば、HTMLウェブページ、PHPウェブページなど)、文書処理ドキュメント、ポータブルドキュメントフォーマット(PDF)ドキュメント、画像、ビデオ、プログラミング要素、インタラクティブコンテンツ、ストリーミングビデオ/オーディオソース、またはその他の種類の電子的な情報を含む可能性がある。
リソース106は、ローカルリソース、イントラネットリソース、インターネットリソース、またはその他のネットワークリソースを含む可能性がある。一部の実装形態において、リソース106は、クライアントデバイス108がコンテンツ生成システム114によって生成されたコンテンツアイテムとインタラクションするときにクライアントデバイス108が(たとえば、埋め込まれたハイパーリンクによって)導かれる1つまたは複数のウェブページを含む。一部の実装形態において、リソース106は、生成されたコンテンツアイテム内で特に売り込まれる製品、サービス、または会社に関する追加的な情報を提供する。たとえば、リソース106は、生成されたコンテンツアイテム内で特に売り込まれる製品またはサービスが購入され得るウェブページまたはウェブサイトである可能性がある。
リソース106は、ランディングリソースおよび/またはセカンダリリソースを含み得る。一部の実装形態において、ランディングリソースは、コンテンツアイテムを生成するための要求の一部としてコンテンツリクエスタ104によって指定される。ランディングリソースは、リソース106のうちの1つに導くかまたはそうでなければランディングリソースの位置を指定するURLとして指定される可能性がある。ランディングリソースのURLは、コンテンツ生成要求の一部として含まれる可能性がある。セカンダリリソースは、指定されたランディングリソースに関連付けられる可能性がある。セカンダリリソースは、任意の種類のリソース106(たとえば、ウェブページ、ウェブサイト、文書処理ドキュメント、ビデオ、PDFドキュメントなど)を含む可能性があり、プライマリランディングリソースに関連付けられる可能性がある。様々な実装形態において、ランディングリソースとセカンダリリソースとの間の関連付けは、ランディングリソースから抽出されたデータ資産(たとえば、ランディングリソースからセカンダリリソースにリンクするハイパーリンク)および/または(たとえば、データストレージデバイス112に記憶された)ランディングリソースとセカンダリリソースとの間の前に記憶された関連付けを使用して特定および/または生成され得る。一部の実装形態において、コンテンツ生成システム114は、指定されたランディングリソースに関連するセカンダリリソースを特定するためにデータストレージデバイス112にアクセスする。
一部の実装形態において、リソース106は、コンテンツリクエスタ104と組み合わされる可能性がある。たとえば、リソース106は、コンテンツリクエスタ104によって維持される1つまたは複数の電子デバイス(たとえば、コンピュータ、サーバなど)に記憶されたデータを含む可能性がある。その他の実装形態において、リソース106は、コンテンツリクエスタ104と別れている可能性がある。たとえば、リソース106は、リモートサーバ(たとえば、FTPサーバ、ファイル共有サーバ、ウェブサーバなど)、サーバの組合せ(たとえば、データセンター、クラウドコンピューティングプラットフォームなど)、またはコンテンツリクエスタ104と別れているその他のデータストレージデバイス上に記憶されたデータを含む可能性がある。
引き続き図1を参照すると、コンピュータシステム100は、クライアントデバイス108を含むことが示される。クライアントデバイス108は、任意の数および/または種類のユーザが操作可能な電子デバイスを含み得る。たとえば、クライアントデバイス108は、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォン、タブレット、モバイル通信デバイス、リモートワークステーション、クライアント端末、エンターテインメントコンソール、または(たとえば、通信インターフェースによって)コンピュータシステム100のその他の構成要素とインタラクションすることができる任意のその他のデバイスを含み得る。クライアントデバイス108は、リソース106からのリソースコンテンツおよび/またはコンテンツ生成システム114によって生成された第三者のコンテンツアイテムを受け取ることができる可能性がある。クライアントデバイス108は、モバイルデバイスまたは非モバイルデバイスを含む可能性がある。
一部の実装形態において、クライアントデバイス108は、電子的なコンテンツを(たとえば、視覚的、聴覚的、グラフィカルなどの)ユーザが理解できるフォーマットに変換するためのアプリケーション(たとえば、ウェブブラウザ、リソースレンダラなど)を含む。クライアントデバイス108は、ユーザに対してコンテンツを提示するか、ユーザ入力を受け取るか、または電子的なコンテンツとのユーザのインタラクション(たとえば、コンテンツアイテムをクリックする、コンテンツアイテム上にホバーするなど)を容易にするためのユーザインターフェース要素(たとえば、電子的なディスプレイ、スピーカ、キーボード、マウス、マイクロフォン、プリンタなど)を含む可能性がある。クライアントデバイス108は、ユーザがHTMLで符号化されたコンテンツを見ることを可能にするためのユーザエージェントとして機能し得る。
クライアントデバイス108は、埋め込まれた情報(たとえば、ハイパーリンクに埋め込まれたメタ情報など)を処理し、埋め込まれた命令を実行することができるプロセッサを含み得る。埋め込まれた命令は、第三者のコンテンツアイテムが提示されるコンテンツスロットに関連するコンピュータ可読命令(たとえば、ソフトウェアコード、JavaScript(登録商標)、ECMAScript(登録商標)など)を含み得る。
一部の実装形態において、クライアントデバイス108は、配信されたコンテンツアイテムとのインタラクションを検出することができる。コンテンツアイテムとのインタラクションは、コンテンツアイテムを表示すること、コンテンツアイテムの上にホバーすること、コンテンツアイテムをクリックすること、コンテンツアイテムに関するソース情報を見ること、またはクライアントデバイス108とコンテンツアイテムとの間の任意のその他の種類のインタラクションを含み得る。コンテンツアイテムとのインタラクションは、特定のコンテンツアイテムに関してユーザによる明示的なアクションを必要としない。一部の実装形態においては、インプレッション(たとえば、コンテンツアイテムを表示または提示すること)が、インタラクションとして適格である可能性がある。(たとえば、能動的または受動的な)どのユーザのアクションがインタラクションとして適格であるかを定義するための基準は、コンテンツリクエスタ104またはコンテンツ生成システム114によって(たとえば、各コンテンツアイテムに関して)個々に決定される可能性がある。
クライアントデバイス108は、コンテンツアイテムに関するユーザのアクションを示すイベントデータを生成し得る。たとえば、クライアントデバイス108は、コンテンツアイテムとの検出されたインタラクションに応答してイベントデータを生成する可能性がある。イベントデータは、コンテンツ識別子(たとえば、コンテンツIDまたは署名要素)、デバイス識別子、参照URL識別子、タイムスタンプ、またはインタラクションを示す任意のその他の属性を含む複数の属性を含み得る。一部の実装形態において、イベントデータは、サービス提供の文脈(たとえば、デバイスタイプ、プラットフォームなど)の指示および提供されるコンテンツアイテムの1つまたは複数の属性(たとえば、クリックタイプ、クリエイティブ拡張など)の指示を含む。クライアントデバイス108は、特定のアクション(たとえば、リソースを見ること、オンラインで購入すること、検索クエリが送られることなど)がクライアントデバイスによって実行されるときにイベントデータを生成する可能性がある。クライアントデバイス108によって生成されたイベントデータは、コンテンツ生成システム114または別個のアカウンティングシステムに伝達され得る。コンテンツ生成システム114は、イベントデータを使用して、コンテンツの性能を最適化するために予測モデルを訓練し得る。
本明細書において検討されたシステムがユーザについての個人情報を収集するかまたは個人情報を利用し得る状況に関して、ユーザは、プログラムまたは特徴がユーザ情報(たとえば、ユーザのソーシャルネットワーク、ソーシャルなアクションもしくは活動、職業、ユーザの好み、またはユーザの現在の位置についての情報)を収集するかどうかを制御するか、あるいはユーザにより関連性がある可能性があるコンテンツをコンテンツサーバから受け取るべきかどうかおよび/またはどのようにして受け取るべきかを制御する機会を与えられる可能性がある。さらに、特定のデータが、個人を特定できる情報が削除されるように、記憶されるかまたは使用される前に1つまたは複数の方法で(たとえば、コンテンツ生成システム114によって)処理される可能性がある。たとえば、ユーザの識別情報が、個人を特定できる情報がユーザに関して決定され得ないか、または位置情報が取得される場合にユーザの地理的な位置が(都市、郵便番号、もしくは州のレベルまでになど)一般化される可能性があり、したがって、ユーザの特定の位置が決定され得ないように処理される可能性がある。したがって、ユーザは、情報がどのように(たとえば、アプリケーションによる、クライアントデバイス108によるなどして)収集され、コンテンツ生成システム114によって使用されるかを制御することができる可能性がある。
引き続き図1を参照すると、コンピュータシステム100は、リソースレンダラ110を含むことが示される。リソースレンダラ110は、リソース106を解釈し、そのリソース106のレンダリングされた表現(たとえば、画像、表示など)を生成することができるハードウェアまたはソフトウェア構成要素である可能性がある。たとえば、リソース106は、マークアップされたコンテンツ(たとえば、HTML、XML、イメージURL(image URL)など)およびフォーマット情報(たとえば、CSS、XSLなど)を含む可能性がある。リソースレンダラ110は、マークアップされたコンテンツおよびフォーマット情報をダウンロードし、ワールドワイドウェブコンソーシアム(W3C)規格に従ってリソース106をレンダリングし得る。リソースレンダラ110は、リソース106の「スナップショットイメージ」を生成するおよび/またはリソース106を表すドキュメントオブジェクトモデル(DOM)ツリーを構築する可能性がある。
スナップショットイメージは、特定のランディングリソースの視覚的表現である可能性がある。スナップショットイメージは、ランディングリソースをレンダリングした後、ユーザインターフェースデバイス(たとえば、電子的なディスプレイスクリーン、コンピュータモニタ、タッチ式ディスプレイなど)上に提示されるランディングリソースの外観を示す可能性がある。スナップショットイメージは、ランディングリソースに関する色情報(たとえば、ピクセルの色、輝度、彩度など)およびスタイル情報(たとえば、直角の角、丸みのある縁、モダン、素朴など)を含む可能性がある。一部の実装形態において、スナップショットイメージは、任意の存続し得るファイル拡張子(たとえば、.jpg、.png、.bmpなど)を有する画像ファイルである可能性がある。
DOMツリーは、特定のランディングリソースの階層的モデルである可能性がある。DOMツリーは、ランディングリソースの複数のデータ資産を特定し得る。DOMツリーは、ランディングリソースに関する画像情報(たとえば、イメージURL、表示位置、表示サイズ、代替テキストなど)、フォント情報(たとえば、フォント名、サイズ、効果など)、色情報(たとえば、RGB色値、16進数カラーコードなど)、およびテキスト情報を含み得る。DOMツリーは、スナップショットイメージ内の直接見えないデータ資産(たとえば、メタデータ、ハイパーリンクURL、オブジェクト属性など)を含み得る。リソースレンダラ110は、ランディングリソースのデータ資産のすべてを含むランディングリソースのレンダリングされた表現を生成し得る。データ資産は、DOMツリーのノードおよび/またはスナップショットイメージの特徴としてコンテンツ生成システム114に提供される可能性がある。
様々な実装形態において、リソースレンダラ110は、コンテンツ生成システム114、クライアントデバイス108、または別個の構成要素の一部である可能性がある。リソースレンダラ110は、コンテンツ生成システム114からのレンダリング要求に応答してスナップショットイメージおよび/またはDOMツリーを準備し得る。リソースレンダラ110は、レンダリング要求に応答してコンテンツ生成システム114にスナップショットイメージおよび/またはDOMツリーを送信し得る。
引き続き図1を参照すると、コンピュータシステム100は、データストレージデバイス112を含むことが示される。データストレージデバイス112は、プロファイルデータ、コンテンツアイテムデータ、アカウンティングデータ(accounting data)、またはコンテンツ生成システム114もしくはコンピュータシステム100の別の構成要素によって使用される任意のその他の種類のデータを記憶することができる任意の種類のメモリデバイスである可能性がある。データストレージデバイス112は、任意の種類の不揮発性メモリ、媒体、またはメモリデバイスを含み得る。たとえば、データストレージデバイス112は、半導体メモリデバイス(たとえば、EPROM、EEPROM、フラッシュメモリデバイスなど)、磁気ディスク(たとえば、内蔵ハードディスク、取り外し可能なディスクなど)、光磁気ディスク、ならびに/またはCD ROMおよびDVD-ROMディスクを含む可能性がある。
一部の実装形態において、データストレージデバイス112は、コンテンツ生成システム114、リソース106、またはコンテンツリクエスタ104のローカルにある。その他の実装形態において、データストレージデバイス112は、ネットワーク102を介してコンテンツ生成システム114および/またはコンテンツリクエスタ104に接続されたリモートデータストレージデバイスである。一部の実装形態において、データストレージデバイス112は、コンテンツ生成システム114および/またはコンテンツリクエスタ104からクエリを受け取り、クエリに応答することができるデータストレージサーバまたはシステムの一部である。
一部の実装形態において、データストレージデバイス112は、リソース106から抽出されたデータ資産を記憶する。たとえば、データストレージデバイス112は、リソース106上に表示される様々な画像に関する画像データを記憶する可能性がある。画像データは、実際の画像(たとえば、画像ファイル)、画像のURLロケーション、画像の属性、画像のメタデータ、またはリソース106上に表示される画像のその他の属性を含み得る。データストレージデバイス112は、テキストデータ、色データ、スタイルデータ、ビデオデータ、レイアウトデータ、分類データ、および/またはリソース106から抽出されたかもしくはその他のデータソースから得られたその他の種類のデータを記憶する可能性がある。データ資産は、リソース識別子に関連してデータストレージデバイス112に記憶される可能性がある。リソース識別子は、データ資産が抽出されたリソースまたはデータ資産が関連するリソースを示し得る。
一部の実装形態において、データストレージデバイス112は、(たとえば、データベースに、データテーブルになど)ランディングリソースとセカンダリリソースとの間の関連付けを記憶する。コンテンツ生成システム114は、指定されたランディングリソースに関連するセカンダリリソースを特定するためにデータストレージデバイス112にアクセスし得る。データストレージデバイス112は、指定されたランディングリソースに関連する特定のソーシャルネットワーキングリソース(たとえば、Google+のページ)のURLを記憶する可能性がある。一部の実装形態において、データストレージデバイス112は、リソース106に関連するブランディング(branding)情報を記憶する。データストレージデバイス112は、多種多様なソース(たとえば、グーグルナレッジグラフ(Google Knowledge Graph))から集められた意味(semantic)情報を含むナレッジベースを記憶する可能性がある。ナレッジベースは、ランディングリソースに関連するその他のリソースへのリンクのリストに加えて、様々なランディングリソースについての構造化された詳細な情報を提供し得る。
データストレージデバイス112は、コンテンツリクエスタ104に関連して使用された以前のコンテンツアイテムを記憶する可能性がある。以前のコンテンツアイテムは、コンテンツリクエスタ104によって提供されたコンテンツアイテム、コンテンツリクエスタ104のためにコンテンツ生成システム114によって生成されたコンテンツアイテム、コンテンツリクエスタ104によって前に使用もしくは承認された画像、および/または前に生成されたコンテンツアイテムのその他の構成要素を含み得る。データストレージデバイス112は、リソース106から抽出されたページ上の画像、コンテンツリクエスタ104によって前に使用もしくは承認された画像、および/またはリソース106から抽出されなかったかもしくはコンテンツリクエスタ104によって承認されなかったその他の画像のための画像リポジトリである可能性がある。
一部の実装形態において、データストレージデバイス112は、クライアントデバイス108に提供されたコンテンツアイテムに関するイベントデータ、統計データ、または性能データを記憶する。イベントデータは、サービス提供の文脈(たとえば、デバイスタイプ、プラットフォームなど)の指示および提供されたコンテンツアイテムの1つもしくは複数の属性(たとえば、クリックタイプ、クリエイティブ拡張など)の指示、ならびに/または提供されたコンテンツアイテムに関連するユーザの振る舞い(たとえば、クリック、コンバージョンなど)を含み得る。統計データは、様々なコンテンツアイテムまたはコンテンツアイテムのグループに関するイベントデータに基づく統計(たとえば、クリックの総数、コンバージョンの総数)を含み得る。統計データは、所与のサービス提供の文脈における特定の特徴または特徴の組を有するコンテンツアイテムの性能を示し得る。性能データは、コンテンツアイテムまたはコンテンツアイテムのグループに関するイベントデータおよび/または統計データに基づいて計算された性能の測定基準(たとえば、CTR)を含み得る。
引き続き図1を参照すると、コンピュータシステム100は、コンテンツ生成システム114を含むことが示される。コンテンツ生成システム114は、リソース106からデータ資産(たとえば、画像、色、テキスト、フォント、スタイルなど)を抽出するように構成され得る。コンテンツ生成システム114は、抽出されたデータ資産を処理して、追加的なデータ資産を生成し(たとえば、ウェブページの分類に基づいて行動喚起テキストを生成し)、および/または追加的なデータ資産が取得され得るセカンダリリソースを特定し得る。コンテンツ生成システム114は、抽出されたデータ資産を処理し(たとえば、画像をクロッピングする、高いコントラストの配色を特定する、抽出されたテキストからテキストスニペットを生成するなど)、生成されるコンテンツアイテム内で使用するための様々なデータ資産を選択し得る。
コンテンツ生成システム114は、選択されたデータ資産を含むコンテンツアイテムを生成し得る。一部の実装形態において、コンテンツ生成システム114は、様々な異なるフォーマット(たとえば、ビデオ、表示、テキストなど)でコンテンツアイテムを生成し、各フォーマットでコンテンツアイテムを記憶する。コンテンツ生成システム114は、承認するためにコンテンツリクエスタ104に最も高いスコアのコンテンツアイテムを提供し、および/またはクライアントデバイス108へのその後の配信のためにコンテンツアイテムを記憶し得る。コンテンツ生成システム114は、図2〜図7を参照してより詳細に説明される。
ここで図2を参照すると、説明される実装形態によるコンテンツの性能を最適化するための閉ループシステム200が示される。システム200は、コンテンツ生成システム114およびクライアントデバイス108を含むことが示される。コンテンツ生成システム114は、リモートシステムまたはデバイスからコンテンツ要求202を受け取り得る。様々な実装形態において、コンテンツ要求202は、コンテンツリクエスタ104、コンテンツサーバ、リアルタイム入札システム、またはクライアントデバイス108から受け取られる可能性がある。コンテンツ要求202は、オンラインコンテンツ提供プロセスの一部(たとえば、ウェブページ上に表示するための広告の要求)としてクライアントデバイス108から受け取られ得る。コンテンツ要求202は、デバイスタイプ、プラットフォーム、コンテンツが提示されるデバイスの位置、現在時間、クライアントデバイスに関連する関心のカテゴリ、関連してコンテンツが提示されるリソースのIDもしくはカテゴリ、または特定のインプレッションおよび/もしくはサービス提供の文脈のその他の属性などの特定のサービス提供の文脈の指示を含み得る。
コンテンツ生成システム114が、イベントログデータベース208からイベントデータ204を受け取ることが示される。様々な実装形態において、イベントデータ204は、イベントログデータベース208から受け取られるか、ログファイル処理システムから受け取られるか、またはクライアントデバイス108から直接受け取られる可能性がある。イベントデータ204は、クライアントデバイス108に前に提供されたコンテンツアイテムに関連するクライアントデバイス108の振る舞いを示し得る。コンテンツ生成システム114は、イベントデータ204を使用して、1つまたは複数のコンテンツ性能予測モデル206を訓練し得る。コンテンツ性能予測モデル206は、所与のサービス提供の文脈に関して生成されるコンテンツアイテムに潜在的に含まれる可能性がある特徴または特徴の組合せの性能を予測するように構成され得る。
コンテンツ生成システム114は、予測モデル206を使用して、最適なコンテンツの性能につながると推定される特定の特徴または特徴の組合せ(たとえば、pCTRなどの性能の測定基準を最大化する特徴)を選択し得る。一部の実装形態において、コンテンツ生成システム114は、予測モデル206を使用して、クリエイティブ212、クリックタイプ214、および/またはクリエイティブ拡張216を生成または選択する。クリエイティブ212を生成することは、ランディングリソースからデータ資産を抽出することと、選択されたデータ資産を使用して、ランディングリソースに合わせて仕立てられるクリエイティブを生成することとを含み得る。クリエイティブの生成は、図4〜図5を参照してより詳細に説明される。
クリックタイプ214を選択することは、予測モデル206を使用して、様々なクリックタイプ属性(たとえば、ボタンクリックタイプ、コンテンツアイテム全体クリックタイプ、確認クリックタイプなど)を有するコンテンツアイテムに関して推定された性能の測定基準(たとえば、pCTR)を計算することを含み得る。コンテンツ生成システム114は、推定された性能の測定基準に基づいて複数の潜在的なクリックタイプからクリックタイプ214を選択し得る。一部の実装形態において、コンテンツ生成システム114は、特定のサービス提供の文脈に関して計算された性能の測定基準を最適化するクリックタイプ214を選択する。
クリエイティブ拡張216を選択することは、複数のクリエイティブ拡張(たとえば、クリックトゥコールボタン、位置ボタン、セカンダリリソースボタンなど)のうちのどれがコンテンツ要求202のために利用可能であるかを決定することを含み得る。クリエイティブ拡張216の可用性は、コンテンツ要求202および特定のサービス提供の文脈に基づいて変わり得る。たとえば、クリックトゥコールボタンは、クライアントデバイス108がモバイルデバイス(たとえば、スマートフォン)である場合に利用可能であるが、クライアントデバイス108がデスクトップクライアントである場合は利用不可能である可能性がある。コンテンツ生成システム114は、コンテンツアイテムに関するランディングリソースおよび/またはその他のデータベースから抽出された情報(たとえば、会社の連絡先情報、会社の所在地など)を使用してクリエイティブ拡張を生成し得る。
コンテンツ生成システム114は、コンテンツの性能の最適化のために選択された特徴を有するコンテンツアイテム210を生成し得る。コンテンツアイテム210は、選択されたクリエイティブ212、選択されたクリックタイプ214、および選択されたクリエイティブ拡張216を含むことが示される。コンテンツ生成システム114は、ユーザに対して提示するためにコンテンツアイテム210をクライアントデバイス108に配信し得る。コンテンツアイテム210に関連するユーザのアクションは、予測モデル206をさらに訓練する際に使用するためにイベントログデータベース208に記憶されるイベントデータ204を生成し得る。
閉ループシステム200は、イベントデータ204が予測モデル206を訓練するおよび/または更新するためのフィードバックとして使用されることを可能にする。イベントデータ204を使用して予測モデル206を訓練することは、予測の正確性を高める可能性があり、新しいイベントがログに記録されるときに予測モデル206が(たとえば、決まった間隔でまたは継続的に)更新されることを可能にする可能性がある。
ここで図3を参照すると、説明される実装形態によるコンテンツ生成システム114がより詳細に示される。コンテンツ生成システム114は、プロセッサ304およびメモリ306を有する処理回路302を含むことが示される。プロセッサ304は、汎用プロセッサ、特定用途向け集積回路(ASIC)、1つもしくは複数のフィールドプログラマブルゲートアレイ(FPGA)、CPU、GPU、処理構成要素のグループ、またはその他の好適な電子的な処理構成要素として実装され得る。
メモリ306は、本開示において説明される様々なプロセス、レイヤ、およびモジュールを完了するおよび/または容易にするためのデータおよび/またはコンピュータコードを記憶するための1つまたは複数のデバイス(たとえば、RAM、ROM、フラッシュメモリ、ハードディスクストレージなど)を含み得る。メモリ306は、揮発性メモリまたは不揮発性メモリを含み得る。メモリ306は、本開示において説明される様々な活動および情報の構造をサポートするためのデータベース構成要素、オブジェクトコード構成要素、スクリプト構成要素、または任意のその他の種類の情報の構造を含み得る。一部の実装形態において、メモリ306は、処理回路302を介してプロセッサ304に通信可能なように接続され、本明細書において説明される1つまたは複数のプロセスを実行するためのコンピュータコード(たとえば、メモリ306に記憶されるデータモジュール)を含む。
引き続き図3を参照すると、メモリ306は、コンテンツエクストラクタ308、クリエイティブセレクタ310、クリックタイプセレクタ312、およびクリエイティブ拡張セレクタ314を含むことが示される。コンテンツエクストラクタ308およびセレクタ310〜314は、(たとえば、メモリ306内の)コンテンツ生成システム114のモジュールである可能性がある。様々な実装形態において、コンテンツ生成システム114は、(図3に示されるように)単一のシステムもしくはデバイスであるか、または複数のシステムもしくはデバイスに分散される可能性がある。分散された実装形態において、コンテンツエクストラクタ308、クリエイティブセレクタ310、クリックタイプセレクタ312、およびクリエイティブ拡張セレクタ314の機能は、ネットワーク102を介して通信するように構成された複数の異なるシステムまたはデバイスによって実行される可能性がある。
一部の実装形態において、コンテンツエクストラクタ308は、クリエイティブごとに1回実行されるように構成される。コンテンツエクストラクタ308は、(たとえば、クリエイティブセレクタ310によって)クリエイティブを選択もしくは生成するかまたは(たとえば、クリエイティブ拡張セレクタ314によって)クリエイティブ拡張を選択もしくは生成するために使用され得る情報を特定し、抽出する可能性がある。コンテンツエクストラクタ308は、コンテンツアイテム210に含めるために後で選択され得るデータ資産および/または情報のライブラリを構築するためにサービス提供時間の前に実行される可能性がある。コンテンツエクストラクタ308によって抽出されたコンテンツは、どの種類のクリエイティブ拡張が選択に利用され得るかを決定する可能性がある。クリックタイプセレクタ312およびクリエイティブ拡張セレクタ314は、生成されるコンテンツアイテム210に含めるための最適なクリックタイプおよび/またはクリエイティブ拡張を選択するためにサービス提供時間に(つまり、コンテンツ要求202に応答して)実行される可能性がある。クリックタイプセレクタ312およびクリエイティブ拡張セレクタ314は、主としてサービス提供の文脈に基づいてクリックタイプおよびクリエイティブ拡張を選択し得る。
コンテンツエクストラクタ308は、コンテンツアイテム210を生成する際に使用するために様々なデータソースからデータ資産を抽出するように構成され得る。データ資産が抽出されるリソースは、ランディングリソースの識別情報によって定義される可能性がある。抽出されるデータ資産は、画像、色、フォント、テキスト、グラフィックス、ビデオ、スタイル、会社に関連する情報(たとえば、地理的な位置、連絡先情報など)、ページ分類、および/またはランディングリソース318に関連するその他の種類のデータを含み得る。
コンテンツエクストラクタ308は、ランディングリソース318、ランディングリソース318に関連するセカンダリリソース320、および/または顧客情報データベース322からデータ資産を抽出し得る。一部の実装形態において、ランディングリソース318は、リソース106のうちの1つである。ランディングリソース318は、コンテンツアイテム210によってクライアントデバイス108が導かれるリソースとして定義され得る。セカンダリリソース320は、任意の種類のリソース(たとえば、ウェブページ、ウェブサイト、文書処理ドキュメント、ビデオ、PDFドキュメントなど)である可能性があり、ランディングリソース318に関連付けられる可能性がある。一部の実装形態において、セカンダリリソース320は、ランディングリソース318に関連するGoogle+のページなどのソーシャルネットワーキングリソースである。
顧客情報データベース322は、ランディングリソース318および/またはコンテンツリクエスタ104に関する様々な種類の情報を記憶し得る。たとえば、顧客情報データベース322は、コンテンツアイテム210に含めるためにクリエイティブ拡張を生成するために使用され得る情報を提供し得る。一部の実装形態において、顧客情報データベース322は、会社の連絡先情報(たとえば、電話番号、電子メールアドレスなど)、会社の地理的な位置、会社によって提供される品物もしくはサービスの種類、会社の分類、またはコンテンツアイテム210に含まれ得るその他の種類の情報などの会社に関連する情報を記憶する。
一部の実装形態において、コンテンツエクストラクタ308は、ランディングリソース318および/またはセカンダリリソース320のレンダリングされた表現を生成するように構成されたレンダリングされたリソースを含む。レンダリングされた表現は、コンテンツエクストラクタ308によって抽出された様々なデータ資産を特定するドキュメントオブジェクトモデル(DOM)ツリーまたはスナップショットイメージである可能性がある。コンテンツエクストラクタ308は、図4を参照してより詳細に説明される。
引き続き図3を参照すると、コンテンツエクストラクタ308によって抽出されるデータ資産は、クリエイティブセレクタ310、クリックタイプセレクタ312、およびクリエイティブ拡張セレクタ314に提供される可能性がある。クリエイティブセレクタ310は、コンテンツアイテム210内で使用するためのクリエイティブ212を選択または生成するように構成され得る。様々な実装形態において、クリエイティブセレクタ310は、クリエイティブデータベース316から前に生成されたクリエイティブを選択するか、またはクリエイティブジェネレータ324を使用して新しいクリエイティブを生成する。クリエイティブジェネレータ324は、コンテンツエクストラクタ308によって抽出されたデータ資産および/またはコンテンツ要求202によって与えられたサービス提供の文脈を使用して、クライアントデバイス108上で提示するためのランディングリソース318に合わせてカスタマイズされるクリエイティブを生成する。クリエイティブジェネレータ324は、図5を参照してより詳細に説明される。
引き続き図3を参照すると、メモリ306は、クリックタイプセレクタ312を含むことが示される。クリックタイプセレクタ312は、コンテンツアイテム210内で使用するためのクリックタイプ214を選択するように構成され得る。クリックタイプ214は、コンテンツアイテム210の属性、またはコンテンツアイテム210に埋め込まれたコードのスニペットである可能性がある。クリックタイプ214は、コンテンツアイテム210のレイアウト、コンテンツアイテム210のインタラクティブ性、および/またはコンテンツアイテム210がクライアントデバイス108によってレンダリングまたは提示される方法に影響を与える可能性がある。一部の実装形態において、クリックタイプ214は、コンテンツプロバイダに課金し、CTRなどの性能の測定基準を計算する目的で「クリック」として適格であるユーザのアクションの種類を定義する。クリックタイプセレクタ312は、「ボタン」クリックタイプ、「コンテンツアイテム全体」クリックタイプ、および「確認」クリックタイプを含む複数の潜在的なクリックタイプからクリックタイプ214を選択し得る。
ボタンクリックタイプは、クリック可能なボタン、またはコンテンツアイテム210の全領域のうちのその他のサブセットなどのコンテンツアイテム210の特定の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。コンテンツアイテム210がボタンクリックタイプを有する場合、コンテンツアイテム210のその他の部分(たとえば、クリック可能な領域の外の部分)とのユーザのインタラクションが、クライアントデバイス108をランディングリソース318にナビゲートさせない可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格でない可能性がある。
コンテンツアイテム全体クリックタイプは、コンテンツアイテム210の任意の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。コンテンツアイテム210がコンテンツアイテム全体クリックタイプを有する場合、コンテンツアイテム210の任意の部分とのユーザのインタラクションが、クライアントデバイス108をランディングリソース318にナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。
確認クリックタイプは、コンテンツアイテム210との第1のユーザのインタラクション(たとえば、第1のクリック)に応答して、コンテンツアイテム210に確認プロンプトを表示させる可能性がある。確認プロンプトは、ランディングリソース318にナビゲートするために再びクリックするようにユーザに指示するメッセージを表示する可能性がある。コンテンツアイテム210が確認クリックタイプを有する場合、コンテンツアイテム210との第2のユーザのインタラクション(たとえば、第2のクリック)が、クライアントデバイス108をランディングリソース318にナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。確認クリックタイプは、コンバージョンにつながりそうにない故意でないクリックからの保護に役立つ可能性がある。
引き続き図3を参照すると、クリックタイプセレクタ312は、クリックタイプ性能モデル326およびクリックタイプモデルトレーナ328を含むことが示される。クリックタイプ性能モデル326は、コンテンツアイテム210のサービス提供の文脈に基づいて、クリックタイプセレクタ312によって選択され得る潜在的なクリックタイプの各々に関してコンテンツアイテム210の性能を予測するように構成され得る。
クリックタイプ性能モデル326は、ランディングリソースID(たとえば、URL)もしくはタイプ(たとえば、ページ分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、ユーザの関心、または特定のサービス提供の文脈を示すその他の情報などの入力を受け取るように構成され得る。クリックタイプセレクタ312は、クリックタイプ性能モデル326を使用して、コンテンツアイテム210のサービス提供の文脈に基づいて、様々なクリックタイプに関して予測される性能の測定基準(たとえば、pCTR)を計算し得る。クリックタイプセレクタ312は、様々なクリックタイプに関する予測される性能の測定基準に基づいてクリックタイプ214を選択し得る。
クリックタイプモデルトレーナ328は、イベントデータ204および/または性能の測定基準334を取り出すためにイベントログデータベース208にアクセスするように構成され得る。イベントデータ204および性能の測定基準334は、クライアントデバイス108(またはその他のクライアントデバイス)に前に提供されたコンテンツアイテムの性能を示す可能性がある。クリックタイプモデルトレーナ328は、クリックタイプ性能モデル326がクリックタイプセレクタ312に様々なクリックタイプに関してコンテンツの性能の正確な予測を提供することを保証するために、イベントログデータベース208からのデータを使用してクリックタイプ性能モデル326を訓練および/または更新し得る。クリックタイプセレクタ312は、図6を参照してより詳細に説明される。
引き続き図3を参照すると、メモリ306は、クリエイティブ拡張セレクタ314を含むことが示される。クリエイティブ拡張セレクタ314は、コンテンツアイテム210内で使用するためのクリエイティブ拡張216を選択するように構成され得る。クリエイティブ拡張216は、主なクリエイティブ212に加えてコンテンツアイテム210の補足的要素である可能性がある。クリエイティブ拡張セレクタ314は、コンテンツアイテム210に関するサービス提供の文脈および/またはコンテンツエクストラクタ308によって抽出されたデータ資産に基づいて複数の潜在的なクリエイティブ拡張からクリエイティブ拡張216を選択し得る。一部の実装形態において、潜在的なクリエイティブ拡張は、「クリックトゥコール」ボタン、「位置」ボタン、「セカンダリリソース」ボタンなどのクリック可能なボタン、および/またはコンテンツアイテムに含まれ得るその他の種類の補足的コンテンツを含む。
クリックトゥコールボタンは、コンテンツアイテム210に関するサービス提供の文脈がコンテンツアイテム210がモバイル通信デバイス上に提示されることを示す場合に選択に利用され得る可能性がある。一部の実装形態において、クリックトゥコールボタンは、電話番号またはその他の連絡先情報がコンテンツエクストラクタ308によって抽出される場合に選択に利用され得る可能性がある。連絡先情報は、ランディングリソース318または顧客情報データベース322からコンテンツエクストラクタ308によって自動的に抽出される可能性がある。クリックトゥコールボタンを選択することは、コンテンツアイテムに関連する主体(たとえば、小売店、カスタマーサービス電話、販売代理店など)との通話またはその他の通信を開始する可能性がある。その他のデバイスタイプ(たとえば、デスクトップコンピュータ、タブレットなど)に関しては、連絡先情報が知られているとき、クリックトゥコールボタンの代わりに「クリックトゥ電子メール」ボタンまたはより広い「クリックトゥコンタクト」ボタンが含まれる可能性がある。
位置ボタンは、地理的な位置(たとえば、所在地住所、店の場所、メールアドレス、GPS座標など)がコンテンツエクストラクタ308によって抽出されるとき、またはクライアントデバイス108の位置が知られているときに選択に利用され得る可能性がある。位置ボタンを選択することは、抽出された地理的な位置を示す地図を表示させる可能性がある。サービス提供の文脈がコンテンツアイテム210がモバイルデバイス上に提示されることを示す場合、位置ボタンを選択することは、地図アプリケーションまたはナビゲーションアプリケーションをロードさせる可能性がある。一部の実装形態において、位置ボタンを選択することは、クライアントデバイス108を地図リソース(たとえば、グーグルマップ)にナビゲートさせる。
セカンダリリソースボタンは、セカンダリリソース320の識別情報が知られているときに選択に利用され得る可能性がある。セカンダリリソースボタンを選択することは、クライアントデバイス108をセカンダリリソース320にナビゲートさせる可能性がある。コンテンツアイテム210は、複数の異なるリソースまたはリソース(たとえば、セカンダリリソース320、ソーシャルリソース、ランディングリソース318など)の一部に関するクリエイティブ拡張(たとえば、選択可能なボタンまたはリンク)を含み得る。一部の実装形態において、コンテンツアイテム210は、(ランディングリソース318ではなく)セカンダリリソース320のみにリンクし、ソーシャルコンテンツアイテムと呼ばれる可能性がある。その他の実装形態において、コンテンツアイテム210は、ランディングリソース318とセカンダリリソース320との両方にリンクする。
引き続き図3を参照すると、クリエイティブ拡張セレクタ314は、クリエイティブ拡張性能モデル330およびクリエイティブ拡張モデルトレーナ332を含むことが示される。クリエイティブ拡張性能モデル330は、コンテンツアイテム210のサービス提供の文脈に基づいて、クリエイティブ拡張セレクタ314によって選択され得る利用可能なクリエイティブ拡張またはクリエイティブ拡張の組合せの各々に関してコンテンツアイテム210の性能を予測するように構成され得る。
クリエイティブ拡張性能モデル330は、ランディングリソースID(たとえば、URL)もしくはタイプ(たとえば、ページ分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、ユーザの関心、または特定のサービス提供の文脈を示すその他の情報などの入力を受け取るように構成され得る。クリエイティブ拡張セレクタ314は、クリエイティブ拡張性能モデル330を使用して、コンテンツアイテム210のサービス提供の文脈に基づいて、様々な種類のクリエイティブ拡張に関して予測される性能の測定基準(たとえば、pCTR)を計算し得る。クリエイティブ拡張セレクタ314は、予測される性能の測定基準に基づいてコンテンツアイテム210のためのクリエイティブ拡張またはクリエイティブ拡張の組合せを選択し得る。
クリエイティブ拡張モデルトレーナ332は、イベントデータ204および/または性能の測定基準334を取り出すためにイベントログデータベース208にアクセスするように構成され得る。イベントデータ204および性能の測定基準334は、クライアントデバイス108(またはその他のクライアントデバイス)に前に提供されたコンテンツアイテムの性能を示す可能性がある。クリエイティブ拡張モデルトレーナ332は、クリエイティブ拡張性能モデル330がクリエイティブ拡張セレクタ314に様々な種類のクリエイティブ拡張に関してコンテンツの性能の正確な予測を提供することを保証するために、イベントログデータベース208からのデータを使用してクリエイティブ拡張性能モデル330を訓練および/または更新し得る。クリエイティブ拡張セレクタ314は、図7を参照してより詳細に説明される。
ここで図4を参照すると、説明される実装形態によるコンテンツエクストラクタ308がより詳細に示される。コンテンツエクストラクタ308は、リソースレンダラモジュール402を含むことが示される。一部の実装形態において、リソースのレンダリングは、外部のリソースレンダリングサービス(たとえば、リソースレンダラ110)ではなくリソースレンダラモジュール402によって実行される。リソースレンダラモジュール402は、図1を参照して説明されたリソースレンダラ110の機能を含み得る。たとえば、リソースレンダラモジュール402は、リソース106を解釈し、そのリソース106の表現(たとえば、画像、表示など)を生成することができる可能性がある。
リソースレンダラモジュール402は、コンテンツアイテムを生成するための要求の一部としてコンテンツ要求202によって提供されるURLまたはその他のインジケータを使用して特定のランディングリソースを特定し得る。リソースレンダラモジュール402は、ランディングリソース318およびセカンダリリソース320からマークアップされたコンテンツ(たとえば、HTML、XML、イメージURLなど)およびフォーマット情報(たとえば、CSS、XSLなど)を読み、解釈し、(たとえば、W3C規格に従って)リソース318〜320をレンダリングし得る。リソースレンダラモジュール402は、リソース318〜320のスナップショットイメージを生成し、および/またはリソース318〜320を表すDOMツリーを構築し得る。
スナップショットイメージは、リソースの視覚的表現である可能性がある。たとえば、ランディングリソース318に関するスナップショットイメージは、ランディングリソース318をレンダリングした後、ユーザインターフェースデバイス(たとえば、電子的なディスプレイスクリーン、コンピュータモニタ、タッチ式ディスプレイなど)上に提示されるランディングリソース318の外観を示す可能性がある。スナップショットイメージは、ランディングリソース318に関する色情報(たとえば、ピクセルの色、輝度、彩度など)およびスタイル情報(たとえば、直角の角、丸みのある縁、モダン、素朴など)を含む可能性がある。一部の実装形態において、スナップショットイメージは、任意の好適なファイル拡張子(たとえば、.jpg、.png、.bmpなど)を有する画像ファイルである可能性がある。
DOMツリーは、リソースの階層的モデルである可能性がある。たとえば、ランディングリソース318に関するDOMツリーは、ランディングリソース318に関する画像情報(たとえば、イメージURL、表示位置、表示サイズ、代替テキストなど)、フォント情報(たとえば、フォント名、サイズ、効果など)、色情報(たとえば、RGB色値、16進数カラーコードなど)、およびテキスト情報を含み得る。リソースレンダラモジュール402は、コンテンツ生成システム114のその他のモジュールによるその後の使用のために(たとえば、メモリ306または外部のデータベースに)スナップショットイメージおよび/またはDOMツリーを記憶し得る。一部の実装形態において、リソースレンダラモジュール402は、スナップショットイメージおよび/またはDOMツリーをレンダリングされたリソースデータ410として記憶する。
引き続き図4を参照すると、コンテンツエクストラクタ308は、セカンダリリソースモジュール404を含むことが示される。セカンダリリソースモジュール404は、ランディングリソース318に関連するセカンダリリソース320を特定するように構成され得る。一部の実装形態において、セカンダリリソースモジュール404は、ランディングリソース318に関連する1つまたは複数のセカンダリリソース320を特定するためにリソース関連付けデータベース408にアクセスする。リソース関連付けデータベース408は、(たとえば、データテーブル、表形式データベース(tabular database)、連想データベース(associative database)などの形式で)異なるリソースの間のマッピング、リンク、関連付け、および/またはその他のつながりを記憶し得る。一部の実装形態において、リソース関連付けデータベース408は、リソース318〜320に関連するブランディング情報を記憶する。リソース関連付けデータベース408は、様々なランディングリソースについての意味情報および/または詳細な情報を記憶する可能性があり、ランディングリソースに関連するその他のリソースへのリンクのリストを含む可能性がある。一部の実装形態において、リソース関連付けデータベース408は、ランディングリソース318とランディングリソース318に関連するソーシャルネットワーキングリソース(たとえば、Google+のページ)との間の関連付けを記憶する。
一部の実装形態において、セカンダリリソースモジュール404は、ランディングリソース318から抽出された情報を使用してセカンダリリソース320を特定する。たとえば、ランディングリソース318は、特定のセカンダリリソース320のリンク、テキストによる説明、メタデータ、および/または別の識別情報を含む可能性がある。セカンダリリソースモジュール404は、セカンダリリソース320がランディングリソース318と同じ主体に関連付けられる(たとえば、ランディングリソース318と同じ主体によって所有、運営、もしくは維持される)かどうか、またはセカンダリリソース320がランディングリソース318と異なる主体に関連付けられるかどうか(たとえば、ファンのページ、模倣など)を判定するためにセカンダリリソース320を認証し得る。
セカンダリリソースモジュール404は、セカンダリリソース320の質を判定するように構成され得る。セカンダリリソース320がソーシャルネットワーキングリソースである場合、セカンダリリソースモジュール404は、その他のソーシャルネットワーキングリソースとのつながりの数(たとえば、フォロワ数、リンク数、購読者数など)に基づいて質を判定し得る。一部の実装形態において、セカンダリリソースモジュール404は、セカンダリリソース320の人気(たとえば、訪問数、閲覧数など)によってセカンダリリソース320の質を判定する。セカンダリリソースモジュール404は、ランディングリソース318に関連する複数のセカンダリリソースをランク付けまたは採点し、1つまたは複数の得点が上位のセカンダリリソースの指示をリソースレンダラモジュール402に提供し得る。
リソースレンダラモジュール402は、セカンダリリソース320のレンダリングされた表現を生成し、レンダリングされたデータをレンダリングされたリソースデータ410に記憶し得る。一部の実装形態において、リソースレンダラモジュール402は、セカンダリリソース320からセカンダリリソースデータを抽出し、記憶する。セカンダリリソースデータは、セカンダリリソース320から得られる任意の種類の情報を含み得る。セカンダリリソースデータは、会社の分類、会社の連絡先情報(たとえば、会社の電話番号、会社の電子メールなど)、会社の地理的な位置、会社によって提供される品物もしくはサービスの種類、画像、テキスト、色、スタイル、および/またはセカンダリリソース320から抽出され得るその他の種類の情報を含み得る。
引き続き図4を参照すると、コンテンツエクストラクタ308は、レンダリングされたリソースデータ410を様々なエクストラクタモジュール412〜424に提供するところが示される。エクストラクタモジュール412〜424の各々は、レンダリングされたリソースデータ410から異なる種類のデータを抽出するように構成され得る。たとえば、画像エクストラクタ412は、画像データ資産426を抽出するように構成される可能性があり、ビデオエクストラクタ414は、ビデオデータ資産428を抽出するように構成される可能性があり、色エクストラクタ416は、色データ資産430を抽出するように構成される可能性があり、フォントエクストラクタ418は、フォントデータ資産432を抽出するように構成される可能性があり、テキストエクストラクタ420は、テキストデータ資産434を抽出するように構成される可能性があり、位置エクストラクタ422、位置データ資産436(たとえば、住所、GPS座標など)を抽出するように構成される可能性があり、連絡先エクストラクタ424は、連絡先データ資産438(たとえば、電話番号、電子メールアドレスなど)を抽出するように構成される可能性がある。データ資産426〜438は、クリエイティブ212および/またはクリエイティブ拡張216を生成する際に使用するためにメモリ306または別個のデータベースに記憶される可能性がある。
ここで図5を参照すると、例示的な実施形態によるクリエイティブジェネレータ324がより詳細に示される。クリエイティブジェネレータ324は、コンテンツエクストラクタ308によって抽出されたデータ資産426〜438を使用して、ランディングリソース318に合わせてカスタマイズされるクリエイティブを生成し得る。クリエイティブセレクタ310は、クリエイティブジェネレータ324によって生成された複数の潜在的なクリエイティブからクリエイティブ212を選択し得る。その他の実装形態において、クリエイティブセレクタ310は、コンテンツプロバイダによって前に生成または提供されたクリエイティブのデータベース(すなわち、クリエイティブデータベース316)からクリエイティブ212を選択し得る。
クリエイティブジェネレータ324は、画像/ビデオモジュール502を含むことが示される。画像/ビデオモジュール502は、抽出された画像データ資産426を分析して、画像の視覚的内容を検出し得る。視覚的内容を検出することは、画像内に表された目立つ物体の位置を決定すること、画像内のテキストの位置を決定すること、および/または画像が画像の視覚的影響力を高めるためにクロッピングもしくは処理され得るかどうかを判定することを含み得る。一部の実装形態において、画像/ビデオモジュール502は、抽出された画像を分析して画像の意味内容を検出する。意味内容を検出することは、画像内に示された物体または画像によって伝えられる意味を特定することを含み得る。画像/ビデオモジュール502は、画像に、その画像の意味内容を示す1つまたは複数のラベルまたはキーワードを割り当て得る。ラベルおよび/またはキーワードは、特定の第三者のコンテンツアイテムとの画像の関連性を決定するために使用され得る。
画像/ビデオモジュール502は、画像を処理して、第三者のコンテンツアイテム内で使用するための画像を準備し得る。画像処理は、目立つ物体を強調するためもしくはテキストを削除するために画像をクロッピングすること、画像のサイズを変更すること、画像の形式設定をすること、またはその他の方法で画像を調整することを含み得る。一部の実装形態において、画像/ビデオモジュール502は、ロゴ画像を特定し、拡張する。
画像/ビデオモジュール502は、画像の様々な属性に基づいて画像をフィルタリングし、ランク付けし得る。画像/ビデオモジュール502は、画像の各々に関する品質のスコアおよび/またはページ上での顕著さのスコアを決定し得る。画像に関する品質のスコアは、様々な画像の属性に基づく画像の見た目の美しさを示す可能性がある。顕著さのスコアは、抽出された画像がランディングリソース上に表示される著しさを示す可能性がある。画像/ビデオモジュール502は、閾値の表示サイズ未満の表示サイズまたは閾値の品質のスコア未満の品質のスコアを有する画像を破棄するかまたはフィルタリングし得る。一部の実装形態において、画像/ビデオモジュール502は、画像に関連する顕著さのスコアに基づいて画像をランク付けする。画像/ビデオモジュール502は、表示コンテンツアイテムに含めるために、ランクが最も高い1つの画像または複数の画像を選択し得る。
画像/ビデオモジュール502は、画像データ資産426に適用されるのと同様の処理ステップを使用して、抽出されたビデオデータ資産428を分析し、処理し得る。一部の実装形態において、画像/ビデオモジュール502は、複数の抽出された画像をビデオファイルまたはビデオスライドショーへと組み合わせる。
引き続き図5を参照すると、クリエイティブジェネレータ324は、色/フォントモジュール504を含むことが示される。色/フォントモジュール504は、色データ資産430(たとえば、背景の色、画像の色、フォントの色、テキストの色など)、フォントデータ資産432(たとえば、フォントフェイス、フォントサイズなど)、およびコンテンツエクストラクタ308によって抽出されるその他の種類のスタイルの情報を受け取り得る。一部の実装形態において、色/フォントモジュール504は、生成されるコンテンツアイテムの背景、見出し、説明、ボタンの背景、および/またはボタンのテキストの色を選択する。色/フォントモジュール504は、ランディングリソース318、セカンダリリソース320、またはこれらの組合せの上に表示される色を特定し、使用し得る。色/フォントモジュール504は、ランディングリソースのスナップショットイメージおよび/またはDOMツリーを使用してコンテンツアイテムのための色を選択し得る。一部の実装形態において、色/フォントモジュール504は、クラスタリング技術(たとえば、k平均クラスタリング)を使用してスナップショットイメージから色のクラスタを特定する。
色/フォントモジュール504は、生成されるコンテンツアイテム内で使用するためのフォントまたはフォントファミリーを選択し得る。一部の実装形態において、フォントデータ資産432は、フォント情報をHTML、CSS、またはXMLのフォントタグとして含む可能性がある。色/フォントモジュール504は、フォントデータ資産432を使用して1つまたは複数のフォント(たとえば、フォントフェイス、フォントファミリーなど)を特定し、選択し得る。
一部の実装形態において、色/フォントモジュール504は、抽出されたフォントをフォントサイズに基づいて複数のカテゴリに分ける。たとえば、色/フォントモジュール504は、(たとえば、20ptを超える、16ptを超えるなどの)大きなフォントに関する第1のカテゴリと、比較的小さなフォントに関する第2のカテゴリとを生成する可能性がある。一部の実装形態において、色/フォントモジュール504は、生成されるコンテンツアイテム内で使用するための複数のフォントまたはフォントファミリーを特定する。たとえば、色/フォントモジュール504は、生成されるコンテンツアイテムに関する見出しのフォントとして使用する第1のフォントと、コンテンツアイテムの説明的な部分またはボタンのテキストに関するフォントとして使用する第2のフォントとを特定する可能性がある。色/フォントモジュール504は、抽出された色およびフォントを、生成されるコンテンツアイテム210のためのスタイル(たとえば、配色、フォントスキーム(font scheme)など)を生成する際に使用するためにスタイルジェネレータモジュール510に提供し得る。
引き続き図5を参照すると、クリエイティブジェネレータ324は、テキストモジュール506を含むことが示される。テキストモジュール506は、テキストデータ資産434を受け取り、テキストデータ資産434を使用して、見出しのテキスト、説明のテキスト、ページ上のメタデータ、ページ上のタイトル、画像のキャプション、および生成されたコンテンツアイテム内で使用するためのその他の種類のテキストを選択し得る。一部の実装形態において、テキストモジュール506は、テキストデータ資産434を使用して、ランディングリソース318上に表示されるテキストの要約を生成する。
一部の実装形態において、テキストモジュール506は、ランディングリソース318に加えてまたはランディングリソース318の代わりにその他のデータソースからテキストのデータを取り出す。たとえば、テキストモジュール506は、会社、製品、またはサービスのユーザによって作成された批評からテキストのデータを受け取る可能性がある。批評は、ユーザが特定の会社、製品、またはサービスに関連するコメント、批評、またはその他のテキストを投稿するかまたは送ることを許されるインターネットリソース(たとえば、ウェブサイト)から取り出される可能性がある。ランディングリソース318のURLは、そのような批評の位置を指定し、および/またはテキストモジュール506を特定のリソースに導くために使用され得る。
テキストモジュール506は、批評が肯定的であるかまたは否定的であるかを数値で表された格付け(たとえば、「5段階中1」、「4つ星」など)によってまたはそのような格付けによらず判定することができる心情(sentiment)検出システムを含み得る。心情検出システムは、批評の言葉を解析し、肯定を示す形容詞(たとえば、並外れた、良い、素晴らしい、すてきななど)を探す可能性がある。それから、心情検出システムは、コンテンツアイテム210に含めるために、そのような肯定的な語句を含む批評の比較的短いスニペットを選択または抽出する可能性がある。
引き続き図5を参照すると、クリエイティブジェネレータ324は、分類モジュール508を含むことが示される。一部の実装形態において、分類モジュール508は、リソースデータ410を使用してランディングリソース318を分類またはカテゴリ分けする。その他の実装形態において、分類モジュール508は、(たとえば、ランディングリソース318のURLに基づいて)ランディングリソース318に関するカテゴリを得るためにカテゴリデータベース(たとえば、顧客情報データベース322またはリソース関連付けデータベース408)にアクセスし得る。カテゴリデータベースは、ランディングリソース318に関連する会社のカテゴリ(たとえば、ファーストフード、自動車部品など)および関連する会社のその他の属性を指定する可能性がある。ランディングリソース318のカテゴリは、生成されるコンテンツアイテム210のための行動喚起テキストを生成するためにテキストジェネレータモジュール512によって使用され得る。
分類モジュール508は、セカンダリリソース320からのデータを使用してランディングリソース318の分類を決定し得る。たとえば、セカンダリリソース320は、Google+のプロファイルなどのソーシャルネットワーキングリソースである場合、ランディングリソース318に関連する同じ主体によって提供される分類情報を含む可能性がある。分類モジュール508は、セカンダリリソース320からの分類情報を使用して、ランディングリソース318がブランディングのために生成されるのかまたは特定の地域の会社のために生成されるのかを判定し得る。ユーザによって提供される分類情報は、分類情報のその他のソースよりも詳細で正確なカテゴリを提供する可能性があり、ランディングリソース318の分類を改善するために分類モジュール508によって有利に利用される可能性がある。
引き続き図5を参照すると、クリエイティブジェネレータ324は、スタイルジェネレータモジュール510を含むことが示される。スタイルジェネレータモジュール510は、生成されるコンテンツアイテム210のための配色および/またはフォントスキームを生成するように構成され得る。スタイルジェネレータモジュール510は、色/フォントモジュール504によって抽出された色を使用して、自動的に生成されるコンテンツアイテムのための配色を生成し得る。スタイルジェネレータモジュール510は、背景の色、ボタンの色、見出しの色、説明の色、ボタンのテキストの色、または生成されるコンテンツアイテムのその他の部分のための色を選択し得る。スタイルジェネレータモジュール510は、それぞれの抽出された色の彩度、輝度、目立ちやすさ、および/またはその他の属性、および抽出された色の各々の間のコントラストを決定し得る。
一部の実装形態において、スタイルジェネレータモジュール510は、コンテンツアイテムのための背景の色として色/フォントモジュール504によって抽出された最も支配的な色(たとえば、最も重く重み付けされる、支配力が最も高いとランク付けされるなど)を選択する。スタイルジェネレータモジュール510は、彩度と重みとを掛けた数が最も大きい抽出された色をコンテンツアイテムのためのボタンの色として選択する可能性がある。スタイルジェネレータモジュール510は、選択された背景の色とのコントラストおよび/または輝度の差が最も大きい色を見出しおよび説明のテキストのための色として選択する可能性がある。3色以上が利用可能である場合、スタイルジェネレータモジュール510は、より目立ちやすい色を見出しの色として選択する可能性がある。
その他の実装形態において、スタイルジェネレータモジュール510は、コンテンツアイテム210のために予め定義された配色を選択する。色/フォントモジュール504によって抽出された色を直ちに適用するのではなく、予め定義された配色が、背景の色、ボタンの色、見出しの色、説明の色、ボタンのテキストの色、または生成されるコンテンツアイテムのその他の部分を選択するために使用される可能性がある。予め定義された配色は、色のテンプレートまたは色のグループへと前にまとめられた色の組合せである可能性がある。一部の実装形態において、予め定義された配色は、色/フォントモジュール504によって抽出された色に基づいて、1組の予め定義された配色から選択される可能性がある。たとえば、スタイルジェネレータモジュール510は、色/フォントモジュール504によって抽出された色を複数の予め定義された配色に含まれる色と比較する可能性がある。スタイルジェネレータモジュール510は、色/フォントモジュール504によって抽出された色のうちの1つまたは複数と予め定義された配色に含まれる色のうちの1つまたは複数との間の差(たとえば、RGB値、彩度、輝度、コントラストなど)に基づいて予め定義された配色をランク付けし得る。予め定義された配色からの色は、自動的に生成されるコンテンツアイテム内で色/フォントモジュール504によって特定された色を補足するかまたは置き換える可能性がある。
一部の実装形態において、スタイルジェネレータモジュール510は、画像および/またはテキストの読みやすさを改善する配色を選択する。画像が生成されるコンテンツアイテム210内に表示される場合、スタイルジェネレータモジュール510は、画像の色との高いコントラスト(たとえば、RGBコントラスト>200)を与える画像の背景の色を選択する可能性がある。一部の実装形態において、スタイルジェネレータモジュール510は、抽出された画像の元の背景の色を特定する。元の背景の色は、画像が抽出されたリソース上に表示される画像の背景の色である可能性がある。スタイルジェネレータモジュール510は、生成されるコンテンツアイテム210において画像の元の背景の色を使用する可能性がある。
一部の実装形態において、スタイルジェネレータモジュール510は、境界内の領域を背景の色から分ける画像内の境界を特定する。スタイルジェネレータモジュール510は、境界内の領域と背景の色との間のコントラスト(たとえば、平均RGBコントラスト)が閾値のコントラスト値を超える(たとえば、RGBコントラスト>200)ような最も長い境界を決定し得る。境界内の領域が閾値の面積(たとえば、画像領域の80%)を超える場合、スタイルジェネレータモジュール510は、配色が画像の読みやすさを改善すると判定する可能性がある。
スタイルジェネレータモジュール510は、生成されるコンテンツアイテム210内で使用するためのフォントの組合せを選択し得る。一部の実装形態において、スタイルジェネレータモジュール510は、見出しのテキストのための第1のフォントと、説明のテキストおよび/またはボタンのテキストのための第2のフォントとを選択する。スタイルジェネレータモジュール510は、ランディングリソース318から抽出されたフォントを使用して、ランディングリソース318内で使用されるフォントに最もよく合うフォントの組合せを選択し得る。このようにして、スタイルジェネレータモジュール510は、ランディングリソース318に似た外観および操作感(look and feel)を有するコンテンツアイテムの生成を容易にする。
引き続き図5を参照すると、クリエイティブジェネレータ324は、テキストジェネレータモジュール512を含むことが示される。テキストジェネレータモジュール512は、コンテンツアイテム210のテキストの部分を生成するように構成され得る。テキストジェネレータモジュール512は、見出しのテキスト、説明のテキスト、ボタンのテキスト、行動喚起テキスト、マウスオーバーテキスト、メタデータのテキスト、および/またはコンテンツアイテム210に含めるためのその他の種類のテキストを生成し得る。
テキストジェネレータモジュール512は、分類モジュール508およびテキストモジュール506から入力を受け取るところが示される。テキストジェネレータモジュール512は、分類モジュール508によって決定されたランディングリソース318のカテゴリを使用してランディングリソース318の特定のカテゴリのために仕立てられる行動喚起テキストを生成し得る。たとえば、ランディングリソース318がゲームのカテゴリに関連する場合、テキストジェネレータモジュール512は、「今すぐプレイ」または「今すぐ挑戦」などの行動喚起テキストを生成する可能性がある。ランディングリソース318が加入サービスに関連する場合、テキストジェネレータモジュール512は、「今すぐサインアップ」または「今すぐ登録」などの行動喚起テキストを生成する可能性がある。
一部の実装形態において、テキストジェネレータモジュール512は、生成されるコンテンツアイテム210内で使用するためのテキストスニペット(たとえば、語句、テキスト文字列、一部分など)を特定する。テキストスニペットは、ランディングリソース318、セカンダリリソース320上に表示されるテキスト、またはリソース106上に表示されないその他のテキスト(たとえば、メタデータのテキスト)の一部である可能性がある。テキストジェネレータモジュール512は、様々な種類の抽出されたテキストを処理して、生成されるコンテンツアイテム210において説明のテキストまたは見出しのテキストとして使用され得る(たとえば、閾値の数の語、文字、または文未満の)短い部分を特定し得る。テキストジェネレータモジュール512は、価格または日付などのテキストの重要な特徴を目立たせるかまたは強調し得る(たとえば、太字にする、下線を付ける、イタリック体にする、フォントサイズを大きくするなど)。
一部の実装形態において、テキストジェネレータモジュール512は、ランディングリソース318に関連する会社、製品、またはサービスのユーザの批評から抽出されたテキストを使用する。テキストジェネレータモジュール512は、単独で読まれるときに、批評を送ったユーザが批評された会社、製品、またはサービスによってなぜ肯定的な体験をしたのかを効果的に伝えるユーザの批評の一部を選択し得る。スニペットは、批評に関連する心情を特定する際にテキストモジュール506によって使用される1つまたは複数の肯定的な形容詞を含み得る。たとえば、テキストジェネレータモジュール512は、イタリアンレストランの比較的長い批評からスニペット「並外れたパスタときびきびしたサービス」を選択する可能性がある。一部の実装形態において、テキストジェネレータモジュール512によって特定されたテキストスニペットは、テキストのみのコンテンツアイテム内で使用するための潜在的な「クリエイティブ」(たとえば、説明のテキスト)としてコンテンツリクエスタ104に提示される可能性がある。その他の実装形態において、テキストスニペットは、コンテンツ生成システム114によって生成される1つまたは複数の表示コンテンツアイテムのテキストの部分として使用される可能性がある。
引き続き図5を参照すると、クリエイティブジェネレータ324は、レイアウトモジュール514を含むことが示される。レイアウトモジュール514は、抽出されたおよび/または処理されたデータを使用してコンテンツアイテム210に関するレイアウトを生成するように構成され得る。一部の実装形態において、レイアウトモジュール514は、コンテンツアイテム210のためのクリエイティブ212を生成し、クリエイティブビルダと呼ばれる可能性がある。レイアウトモジュール514は、1組の予め定義されたレイアウトの選択肢(たとえば、テンプレートレイアウト)からレイアウトを選択するか、または(たとえば、テンプレートに基づかずに)新しいレイアウトを生成する可能性がある。レイアウトモジュール514は、画像/ビデオモジュール502によって選択された画像の表示サイズおよび/またはテキストモジュール506によって選択されたテキストの長さに基づいてレイアウトを生成し得る。レイアウトモジュール514は、選択されたレイアウトに合うように画像のサイズを変更しおよび/もしくはテキストを調整し、または選択された画像および/もしくはテキストに合うようにレイアウトを調整する可能性がある。
一部の実装形態において、レイアウトモジュール514は、ランディングリソース318から抽出されたデータ資産を使用して、コンテンツアイテム210のためのスタイル、会社のカテゴリ、または外観を決定する。たとえば、レイアウトモジュール514は、ランディングリソース318の会社のカテゴリ(たとえば、ファーストフード、自動車部品など)、ランディングリソース318のスタイル(たとえば、モダンまたは素朴)、およびランディングリソース318上に表示される形状の使用(たとえば、90度の角、丸い角など)を決定する可能性がある。レイアウトモジュール514は、外部のデータベースを呼び出して、ランディングリソース318のURLに基づいて会社のカテゴリの情報を取り出す可能性がある。
レイアウトモジュール514は、様々なデータ資産をまとめてクリエイティブ212を生成し、クリエイティブ212をレンダリングサービス336に提供し得る。レンダリングサービス336は、クリエイティブ212をクリックタイプ214およびクリエイティブ拡張216と組み合わせてコンテンツアイテム210を生成し、レンダリングし得る。
ここで図6を参照すると、説明される実装形態によるクリックタイプセレクタ312がより詳細に示される。クリックタイプセレクタ312は、コンテンツアイテム210内で使用するためのクリックタイプ214を選択するように構成され得る。クリックタイプ214は、コンテンツアイテム210の属性、またはコンテンツアイテム210に埋め込まれたコードのスニペットである可能性がある。クリックタイプ214は、(たとえば、コンテンツアイテム210のどの部分がクリック可能であるかを定義する)コンテンツアイテム210のレイアウト、コンテンツアイテム210のインタラクティブ性(たとえば、ランディングリソース318へのナビゲーションをトリガするクリックの種類)、および/またはコンテンツアイテム210がクライアントデバイス108によってレンダリングもしくは提示される方法に影響を与え得る。一部の実装形態において、クリックタイプ214は、コンテンツプロバイダに課金し、CTRなどの性能の測定基準を計算する目的で「クリック」として適格であるユーザのアクションの種類を定義する。クリックタイプ214は、クライアントデバイス108をランディングリソース318にナビゲートさせるための1つまたは複数の条件またはトリガを定義し得る。
クリックタイプセレクタ312は、クリックタイプモデルトレーナ328を含むことが示される。クリックタイプモデルトレーナ328は、イベントデータ204を取り出すためにイベントログデータベース208にアクセスするように構成され得る。イベントデータ204は、様々なサービス提供の文脈でクライアントデバイス108に前に提供されたコンテンツアイテムの性能を示す可能性がある。イベントデータ204は、前に提供されたコンテンツアイテムに関連するクリック、コンバージョン、および/またはその他のユーザの振る舞いなどのログに記録されたユーザのアクションを含み得る。イベントデータ204は、前に提供されたコンテンツアイテムの属性(たとえば、クリックタイプ、クリエイティブID、クリエイティブ拡張、コンテンツタイプなど)およびサービス提供の文脈の詳細(たとえば、デバイスタイプ、デバイスの位置、コンテンツプラットフォーム、発行者のページの分類、ランディングリソースIDなど)を含み得る。クリックタイプモデルトレーナ328は、イベントログデータベース208からのデータを使用してクリックタイプ性能モデル326を訓練し、更新し得る。
引き続き図6を参照すると、クリックタイプセレクタ312は、性能測定基準プレディクタ604およびクリックタイプ性能モデル326を含むことが示される。性能測定基準プレディクタ604は、クリックタイプ性能モデル326にサービス提供文脈データ602を提供し得る。サービス提供文脈データ602は、コンテンツ要求202の一部として受け取られる可能性があり、コンテンツアイテム210が提示される文脈を示す可能性がある。サービス提供文脈データ602は、ランディングリソースID(たとえば、URL)、ランディングリソースタイプ(たとえば、ページの分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、コンテンツ要求202に関連するユーザプロファイルID、クリエイティブID、または特定のサービス提供の文脈を示すその他の情報を含む可能性がある。
性能測定基準プレディクタ604は、クリックタイプ性能モデル326を使用して、サービス提供文脈データ602によって示されるサービス提供の文脈に関して様々なクリックタイプを有するコンテンツアイテムの予測される性能(たとえば、pCTR)を計算し得る。性能測定基準プレディクタ604は、クリックタイプの予測される性能に基づいて各クリックタイプに関するスコアまたはランク付けを生成し得る。一部の実装形態において、性能測定基準プレディクタ604は、「ボタン」クリックタイプ、「コンテンツアイテム全体」クリックタイプ、および「確認」クリックタイプを有するコンテンツアイテムの性能を予測する。
ボタンクリックタイプは、クリック可能なボタン、またはコンテンツアイテム210の全領域のうちのその他のサブセットなどのコンテンツアイテム210の特定の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。コンテンツアイテム210がボタンクリックタイプを有する場合、コンテンツアイテム210のその他の部分(たとえば、クリック可能な領域の外の部分)とのユーザのインタラクションは、クライアントデバイス108をランディングリソース318にナビゲートさせない可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格でない可能性がある。
コンテンツアイテム全体クリックタイプは、コンテンツアイテム210の任意の部分とのユーザのインタラクションとしてクリックを定義する可能性がある。コンテンツアイテム210がコンテンツアイテム全体クリックタイプを有する場合、コンテンツアイテム210の任意の部分とのユーザのインタラクションが、クライアントデバイス108をランディングリソース318にナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。
確認クリックタイプは、コンテンツアイテム210との第1のユーザのインタラクション(たとえば、第1のクリック)に応答して、コンテンツアイテム210に確認プロンプトを表示させる可能性がある。確認プロンプトは、ランディングリソース318にナビゲートするために再びクリックするようにユーザに指示するメッセージを表示する可能性がある。コンテンツアイテム210が確認クリックタイプを有する場合、コンテンツアイテム210との第2のユーザのインタラクション(たとえば、第2のクリック)が、クライアントデバイス108をランディングリソース318にナビゲートさせる可能性があり、課金および/または性能の測定基準の計算を目的とするクリックとして適格である可能性がある。確認クリックタイプは、コンバージョンにつながりそうにない故意でないクリックからの保護に役立つ可能性がある。
引き続き図6を参照すると、クリックタイプセレクタ312は、クリックタイプセレクタモジュール606を含むことが示される。クリックタイプセレクタモジュール606は、コンテンツの性能が性能測定基準プレディクタ604によって予測される複数の異なるクリックタイプからクリックタイプ214を選択するように構成され得る。クリックタイプセレクタモジュール606は、1つまたは複数の性能の測定基準を考慮し、そのような性能の測定基準を最適化するクリックタイプを選択し得る。クリックタイプセレクタモジュール606は、特定のクリックタイプ214の指示をレンダリングサービス336に出力し得る。レンダリングサービス336は、クリックタイプ214をクリエイティブ212およびクリエイティブ拡張216と組み合わせてコンテンツアイテム210を生成し、レンダリングし得る。
ここで図7を参照すると、説明される実装形態によるクリエイティブ拡張セレクタ314がより詳細に示される。クリエイティブ拡張セレクタ314は、コンテンツアイテム210内で使用するためのクリエイティブ拡張216を選択するように構成され得る。クリエイティブ拡張216は、主なクリエイティブ212に加えてコンテンツアイテム210の補足的要素である可能性がある。クリエイティブ拡張216は、選択されるときに異なるアクション(たとえば、地図を表示すること、通話を開始すること、ランディングリソース318にナビゲートすることなど)を引き起こす様々なボタンまたはクリック可能な要素を含み得る。クリエイティブ拡張セレクタ314は、コンテンツアイテム210に関するサービス提供の文脈および/またはコンテンツエクストラクタ308によって抽出されたデータ資産に基づいて複数の潜在的なクリエイティブ拡張からクリエイティブ拡張314を選択し得る。
クリエイティブ拡張セレクタ314は、クリエイティブ拡張モデルトレーナ332を含むことが示される。クリエイティブ拡張モデルトレーナ332は、イベントデータ204を取り出すためにイベントログデータベース208にアクセスするように構成され得る。イベントデータ204は、様々なサービス提供の文脈でクライアントデバイス108に前に提供されたコンテンツアイテムの性能を示す可能性がある。イベントデータ204は、前に提供されたコンテンツアイテムに関連するクリック、コンバージョン、および/またはその他のユーザの振る舞いなどのログに記録されたユーザのアクションを含み得る。イベントデータ204は、前に提供されたコンテンツアイテムの属性(たとえば、クリックタイプ、クリエイティブID、クリエイティブ拡張、コンテンツタイプなど)およびサービス提供の文脈の詳細(たとえば、デバイスタイプ、デバイスの位置、コンテンツプラットフォーム、発行者のページの分類、ランディングリソースIDなど)を含み得る。クリエイティブ拡張モデルトレーナ332は、イベントログデータベース208からのデータを使用してクリエイティブ拡張性能モデル330を訓練し、更新し得る。
引き続き図7を参照すると、クリエイティブ拡張セレクタ314は、性能測定基準プレディクタ704およびクリエイティブ拡張性能モデル330を含むことが示される。性能測定基準プレディクタ704は、クリエイティブ拡張性能モデル330にサービス提供文脈データ602を提供し得る。サービス提供文脈データ602は、コンテンツ要求202の一部として受け取られる可能性があり、コンテンツアイテム210が提示される文脈を示す可能性がある。サービス提供文脈データ602は、ランディングリソースID(たとえば、URL)、ランディングリソースタイプ(たとえば、ページの分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、コンテンツ要求202に関連するユーザプロファイルID、クリエイティブID、または特定のサービス提供の文脈を示すその他の情報を含む可能性がある。
性能測定基準プレディクタ704は、クリエイティブ拡張性能モデル330を使用して、サービス提供文脈データ602によって示されるサービス提供の文脈に関して様々な種類のクリエイティブ拡張を有するコンテンツアイテムの予測される性能(たとえば、pCTR)を計算し得る。性能測定基準プレディクタ704は、クリエイティブ拡張の予測される性能に基づいて各種のクリエイティブ拡張に関するスコアまたはランク付けを生成し得る。一部の実装形態において、性能測定基準プレディクタ704は、「クリックトゥコール」ボタン、「位置」ボタン、「セカンダリリソース」ボタン、および/またはコンテンツアイテム210に含まれ得るその他の種類のクリエイティブ拡張を有するコンテンツアイテムの性能を予測する。
クリックトゥコールボタンは、コンテンツアイテムに関連する主体(たとえば、小売店、カスタマーサービス電話、販売代理店など)との通話またはその他の通信を開始する可能性がある。その他のデバイスタイプ(たとえば、デスクトップコンピュータ、タブレットなど)に関しては、連絡先情報が知られているとき、クリックトゥコールボタンの代わりに「クリックトゥ電子メール」ボタンまたはより広い「クリックトゥコンタクト」ボタンが含まれる可能性がある。
位置ボタンは、抽出された地理的な位置を示す地図を表示させる可能性がある。サービス提供の文脈がコンテンツアイテム210がモバイルデバイス上に提示されることを示す場合、位置ボタンを選択することは、地図アプリケーションまたはナビゲーションアプリケーションをロードさせる可能性がある。一部の実装形態において、位置ボタンを選択することは、クライアントデバイス108を地図リソース(たとえば、グーグルマップ)にナビゲートさせる。
セカンダリリソースボタンは、クライアントデバイス108をセカンダリリソース320にナビゲートさせる可能性がある。コンテンツアイテム210は、複数の異なるリソースまたはリソース(たとえば、セカンダリリソース320、ソーシャルリソース、ランディングリソース318など)の一部に関するクリエイティブ拡張(たとえば、選択可能なボタンまたはリンク)を含み得る。一部の実装形態において、コンテンツアイテム210は、(ランディングリソース318ではなく)セカンダリリソース320のみにリンクし、ソーシャルコンテンツアイテムと呼ばれる可能性がある。その他の実装形態において、コンテンツアイテム210は、ランディングリソース318とセカンダリリソース320との両方にリンクする。性能測定基準プレディクタ704は、コンテンツアイテムが提示される文脈に基づいて様々な種類のクリエイティブ拡張を有するコンテンツアイテムに関する予測される性能を計算し得る。
引き続き図7を参照すると、クリエイティブ拡張セレクタ314は、拡張セレクタモジュール706を含むことが示される。一部の実装形態において、拡張セレクタモジュール706は、位置データ436を受け取る。位置データ436は、ランディングリソース318、セカンダリリソース320、顧客情報データベース322などの様々なデータソースから抽出されるか、またはクライアントデバイス108から受け取られる可能性がある。位置データ436は、コンテンツアイテム210に関連する会社または主体の物理的または地理的な位置を含み得る。たとえば、コンテンツアイテム210がレストランチェーンに関連付けられる場合、位置データ436は、レストランのうちの1つまたは複数の位置を含む可能性がある。一部の実装形態において、位置データ436は、クライアントデバイス108の位置(たとえば、GPS座標、WiFiに基づく位置など)を含む。
一部の実装形態において、拡張セレクタモジュール706は、連絡先データ438を受け取る。連絡先データ438は、ランディングリソース318、セカンダリリソース320、顧客情報データベース322などの様々なデータソースから抽出される可能性がある。連絡先データ438は、コンテンツアイテム210に関連する会社またはその他の主体に関する連絡先情報を含み得る。連絡先データ438は、電話番号、電子メールアドレス、ウェブページのURL(たとえば、ランディングリソース318もしくはセカンダリリソース320に関するURL)、またはコンテンツアイテム210に関連する会社もしくは主体と連絡を取るもしくは通信するために使用され得るその他の種類の情報を含み得る。
拡張セレクタモジュール706は、サービス提供文脈データ602、位置データ436、および/または連絡先データ438を使用して複数のクリエイティブ拡張のうちのどれが選択に利用され得るかを決定し得る。異なる状況下で異なる種類のクリエイティブ拡張が利用可能である可能性がある。たとえば、クリックトゥコールボタンは、コンテンツアイテム210に関するサービス提供の文脈がコンテンツアイテム210がモバイル通信デバイス上に提示されることを示す場合に選択に利用され得る可能性がある。一部の実装形態において、クリックトゥコールボタンは、連絡先データ438が電話番号またはその他の連絡先情報を含む場合に選択に利用され得る可能性がある。位置ボタンは、地理的な位置(たとえば、所在地住所、店の場所、メールアドレス、GPS座標など)がコンテンツエクストラクタ308によって抽出されるとき、またはクライアントデバイス108の位置が知られているときに選択に利用され得る可能性がある。セカンダリリソースボタンは、セカンダリリソース320の識別情報が知られているときに選択に利用され得る可能性がある。
拡張セレクタモジュール706は、コンテンツの性能が性能測定基準プレディクタ704によって予測される1組のクリエイティブ拡張からクリエイティブ拡張またはクリエイティブ拡張の組合せを選択するように構成され得る。一部の実装形態において、性能測定基準プレディクタ704は、選択に利用され得る様々な種類のクリエイティブ拡張に関してコンテンツアイテムの性能を予測する。拡張セレクタモジュール706は、1つまたは複数の性能の測定基準を考慮し、そのような性能の測定基準を最適化する1つまたは複数のクリエイティブ拡張を選択し得る。クリエイティブ拡張セレクタモジュール706は、特定のクリエイティブ拡張216またはクリエイティブ拡張216の組合せの指示をレンダリングサービス336に出力し得る。
引き続き図7を参照すると、レンダリングサービス336は、クリエイティブ拡張216をクリエイティブ212およびクリックタイプ214と組み合わせてコンテンツアイテム210を生成し、レンダリングし得る。一部の実装形態において、レンダリングサービス336は、クライアントデバイス108の構成要素(たとえば、クライアントデバイス108上で動作するウェブブラウザ)である。その他の実装形態において、レンダリングサービス336は、コンテンツ生成システム114の構成要素である可能性がある。クリエイティブ212、クリックタイプ214、およびクリエイティブ拡張216の各々は、選択されたクリエイティブ、クリックタイプ、またはクリエイティブ拡張に固有のレンダリング命令を含み得る。たとえば、クリックタイプ214は、ボタンクリックタイプに関してコンテンツアイテム210のサブセットをクリック可能な要素としてレンダリングするか、またはコンテンツアイテム全体クリックタイプに関してコンテンツアイテム210の全領域をクリック可能な要素としてレンダリングするための命令を含む可能性がある。レンダリングサービス336は、クリエイティブ212、クリックタイプ214、およびクリエイティブ拡張216によって提供された命令に従ってコンテンツアイテム210をレンダリングするように構成され得る。
コンテンツアイテム210は、クライアントデバイス108に提供され得る。コンテンツアイテム210のユーザのインタラクション(たとえば、インプレッション、クリック、コンバージョンなど)は、ログに記録され、イベントログデータベース208に記憶される可能性がある。コンテンツ生成システム114は、ログに記録されたイベントを使用して、コンテンツアイテム210に関連する性能の測定基準を計算し、予測モデル326および330を訓練し得る。コンテンツ生成システム114は、予測モデル326および330を使用して、コンテンツアイテムのどの特徴または特徴の組合せ(たとえば、クリックタイプ、クリエイティブ拡張など)が所与のサービス提供の文脈に関して最適なコンテンツの性能につながると推定されるか(たとえば、CTR、pCTR、または別の性能の測定基準を最適化する特徴)を決定し得る。そして、コンテンツ生成システム114は、最適なコンテンツの性能につながると推定された特徴を有する新しいコンテンツアイテムを自動的に生成し得る。
ここで図8を参照すると、説明される実装形態による、クリックタイプを使用してコンテンツの性能を最適化するためのプロセス800の流れ図が示される。プロセス800は、図1〜図7を参照して説明されたコンテンツ生成システム114によって実行され得る。一部の実装形態において、プロセス800は、プロセッサ304およびメモリ306に記憶されたモジュールのうちの1つまたは複数を使用して処理回路302によって実行される。様々な実装形態において、プロセス800のステップは、再配列される(つまり、異なる順序で実行される)か、または同時に実行される可能性がある。
プロセス800は、クライアントデバイス上に提示するためのコンテンツアイテムの要求を受け取ること(ステップ802)を含むことが示される。コンテンツアイテムの要求は、コンテンツアイテムに関するサービス提供の文脈の指示を含み得る。サービス提供の文脈の指示は、ランディングリソースID(たとえば、URL)、ランディングリソースタイプ(たとえば、ページの分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、ユーザの関心、または特定のサービス提供の文脈を示すその他の情報などのサービス提供の文脈のデータを含む可能性がある。コンテンツアイテムの要求は、コンテンツリクエスタ104、コンテンツサーバ、リアルタイム入札システム、またはクライアントデバイス108から受け取られる可能性がある。一部の実装形態において、コンテンツアイテムの要求は、オンラインコンテンツ提供プロセスの一部(たとえば、ウェブページ上に表示するための広告の要求)としてクライアントデバイス108から受け取られる。
引き続き図8を参照すると、プロセス800は、複数の異なる潜在的なクリックタイプに関してコンテンツアイテムの予測される性能の測定基準を計算するために、コンテンツアイテムに関するクリックタイプ性能モデルおよびサービス提供の文脈を使用すること(ステップ804)を含むことが示される。一部の実装形態において、性能の測定基準は、クリック率である。潜在的なクリックタイプの各々は、クリック率を計算することを目的としてクリックを定義するための異なる基準を定義し得る。たとえば、潜在的なクリックタイプは、第1の部分とは別個のコンテンツアイテムの第2の部分とのユーザのインタラクションを除いたコンテンツアイテムの第1の部分とのユーザのインタラクションとしてクリックを定義するボタンクリックタイプを含み得る。潜在的なクリックタイプは、コンテンツアイテムの任意の部分とのユーザのインタラクションとしてクリックを定義するコンテンツアイテム全体クリックタイプを含み得る。潜在的なクリックタイプは、確認プロンプトが表示されている間に行われるコンテンツアイテムとのユーザのインタラクションとしてクリックを定義する確認クリックタイプを含み得る。確認プロンプトは、コンテンツアイテムとの前のユーザのインタラクションに応答して表示される可能性がある。
潜在的なクリックタイプの各々は、定義された基準が満たされるときにコンテンツアイテムとのユーザのインタラクションに応答して行われるイベントをトリガするための異なる基準を定義し得る。たとえば、潜在的なクリックタイプの各々は、コンテンツアイテムに関連する異なるユーザのアクション(たとえば、ボタンをクリックすること、コンテンツアイテムの表示領域内のどこかをクリックすること、確認プロンプトに応答してコンテンツアイテムをクリックすることなど)を定義する可能性がある。トリガされるイベントは、ランディングリソース、セカンダリリソースにナビゲートすること、通信を開始すること、地図を表示すること、アプリケーションを立ち上げること、または自動的にトリガされ得る任意のその他のイベントを含む可能性がある。異なるクリックタイプは、イベントをトリガするために異なる種類のユーザのインタラクションを必要とする可能性がある。
引き続き図8を参照すると、プロセス800は、予測される性能の測定基準に基づいて潜在的なクリックタイプのうちの1つを選択すること(ステップ806)を含むことが示される。ステップ806は、予測される性能の測定基準の極値に関連するクリックタイプを選択することを含み得る。一部の実装形態において、ステップ806は、ボタンクリックタイプを選択することを含む。ボタンクリックタイプが選択される場合、プロセス800は、(第1の部分とは別個のコンテンツアイテムの第2の部分とのユーザのインタラクションを除いた)コンテンツアイテムの第1の部分とのユーザのインタラクションとしてイベントをトリガするための基準を定義することと、コンテンツアイテムの第1の部分のみを占めるクリック可能なボタンをレンダリングすることとを含み得る。
一部の実装形態において、ステップ806は、コンテンツアイテム全体クリックタイプを選択することを含む。コンテンツアイテム全体クリックタイプが選択される場合、プロセス800は、コンテンツアイテムの任意の部分とのユーザのインタラクションとしてイベントをトリガするための基準を定義することと、コンテンツアイテムの表示領域全体をクリック可能な要素としてレンダリングすることとを含み得る。
一部の実装形態において、ステップ806は、確認クリックタイプを選択することを含む。確認クリックタイプが選択される場合、プロセス800は、コンテンツアイテムとの第1のユーザのインタラクションに応答して確認プロンプトを表示することと、第1のユーザのインタラクションの後に、確認プロンプトが表示されている間に行われるコンテンツアイテムとの第2のユーザのインタラクションとしてイベントをトリガするための基準を定義することとを含み得る。
引き続き図8を参照すると、プロセス800は、選択されたクリックタイプを有するコンテンツアイテムを生成すること(ステップ808)と、クライアントデバイス上に提示するために生成されたコンテンツアイテムを提供すること(ステップ810)とを含むことが示される。コンテンツアイテムは、リアルタイムのサービス提供プロセスの一部として、ステップ802において受け取られた要求に応答して生成される可能性がある。ステップ808は、選択されたクリックタイプを選択されたクリエイティブおよび/または選択されたクリエイティブ拡張と組み合わせることを含み得る。一部の実装形態において、ステップ808は、選択されたクリックタイプによって提供された命令に従ってコンテンツアイテムをレンダリングすることを含む。コンテンツアイテムをレンダリングすることは、リモートのレンダリングサービスによってまたはクライアントデバイスによって実行される可能性がある。一部の実装形態において、ステップ810は、ステップ808の前に行われる。たとえば、選択されたクリックタイプは、クライアントデバイスに提供される可能性があり、クライアントデバイスは、選択されたクリックタイプを使用してコンテンツアイテムをレンダリングする可能性がある。
引き続き図8を参照すると、プロセス800は、潜在的なクリックタイプの各々を有するコンテンツアイテムに関連するユーザのアクションを示すイベントデータを収集し、記憶すること(ステップ812)を含むことが示される。イベントデータは、様々なサービス提供の文脈でクライアントデバイスまたはその他のクライアントデバイスに前に提供されたコンテンツアイテムの性能を示す可能性がある。イベントデータは、前に提供されたコンテンツアイテムに関連するクリック、コンバージョン、および/またはその他のユーザの振る舞いなどのログに記録されたユーザのアクションを含み得る。イベントデータは、前に提供されたコンテンツアイテムの属性(たとえば、クリックタイプ、クリエイティブID、クリエイティブ拡張、コンテンツタイプなど)およびサービス提供の文脈の詳細(たとえば、デバイスタイプ、デバイスの位置、コンテンツプラットフォーム、発行者のページの分類、ランディングリソースIDなど)を含み得る。
引き続き図8を参照すると、プロセス800は、クリックタイプ性能モデルを訓練するためのフィードバックとしてイベントデータを使用すること(ステップ814)を含むことが示される。ステップ814は、図3および図6を参照して説明されたクリックタイプモデルトレーナ328によって実行され得る。一部の実装形態において、ステップ814は、イベントデータおよび/または性能の測定基準を取り出すためにイベントログデータベース(たとえば、データベース208)にアクセスすることを含む。ステップ814は、クリックタイプ性能モデルが様々なクリックタイプに関してコンテンツの性能を正確に予測することを保証するために、イベントログデータベースからのデータを使用してクリックタイプ性能モデルを訓練および/または更新することを含み得る。
ここで図9を参照すると、説明される実装形態による、クリエイティブ拡張を使用してコンテンツの性能を最適化するためのプロセス900の流れ図が示される。プロセス900は、図1〜図7を参照して説明されたコンテンツ生成システム114によって実行され得る。一部の実装形態において、プロセス900は、プロセッサ304およびメモリ306に記憶されたモジュールのうちの1つまたは複数を使用して処理回路302によって実行される。様々な実装形態において、プロセス900のステップは、再配列される(つまり、異なる順序で実行される)か、または同時に実行される可能性がある。
プロセス900は、クライアントデバイス上に提示するためのコンテンツアイテムの要求を受け取ること(ステップ902)を含むことが示される。コンテンツアイテムの要求は、コンテンツアイテムに関するサービス提供の文脈の指示を含み得る。サービス提供の文脈の指示は、ランディングリソースID(たとえば、URL)、ランディングリソースタイプ(たとえば、ページの分類)、デバイスタイプ(たとえば、モバイル、タブレット、デスクトップなど)、コンテンツプラットフォーム(たとえば、ビデオ、テキスト、画像など)、デバイスの位置、ユーザの関心、または特定のサービス提供の文脈を示すその他の情報などのサービス提供の文脈のデータを含む可能性がある。コンテンツアイテムの要求は、コンテンツリクエスタ104、コンテンツサーバ、リアルタイム入札システム、またはクライアントデバイス108から受け取られる可能性がある。一部の実装形態において、コンテンツアイテムの要求は、オンラインコンテンツ提供プロセスの一部(たとえば、ウェブページ上に表示するための広告の要求)としてクライアントデバイス108から受け取られる。
引き続き図9を参照すると、プロセス900は、複数の異なる潜在的なクリエイティブ拡張に関してコンテンツアイテムの予測される性能の測定基準を計算するために、コンテンツアイテムに関するクリエイティブ拡張性能モデルおよびサービス提供の文脈を使用すること(ステップ904)を含むことが示される。一部の実装形態において、性能の測定基準は、クリック率である。潜在的なクリエイティブ拡張の各々は、コンテンツアイテムとのユーザのインタラクションに応答して行われる異なるアクションを定義し得る。たとえば、潜在的なクリエイティブ拡張は、コンテンツアイテムに関連する主体との通信をクライアントデバイスに開始させるクリックトゥコール拡張を含む可能性がある。潜在的なクリエイティブ拡張は、地図アプリケーションを立ち上げるかまたはコンテンツアイテムに関連する地理的な位置を表示する位置拡張を含む可能性がある。潜在的なクリエイティブ拡張は、クライアントデバイスをコンテンツアイテムに関連するセカンダリリソースにナビゲートさせるセカンダリリソース拡張を含む可能性がある。
引き続き図9を参照すると、プロセス900は、予測される性能の測定基準に基づいて潜在的なクリエイティブ拡張のうちの1つを選択すること(ステップ906)を含むことが示される。ステップ906は、予測される性能の測定基準の極値に関連するクリエイティブ拡張を選択することを含み得る。一部の実装形態において、ステップ906は、コンテンツアイテムに関するサービス提供の文脈を使用して、潜在的なクリエイティブ拡張のうちのどれが選択に利用され得るかを決定することを含む。たとえば、クリックトゥコール拡張は、クライアントデバイスがモバイル電話として特定される場合は選択に利用され得るが、クライアントデバイスがデスクトップコンピュータとして特定される場合は選択に利用され得ない可能性がある。
一部の実装形態において、ステップ906は、コンテンツアイテムのクリエイティブ部分の識別情報を使用して、潜在的なクリエイティブ拡張のうちのどれが選択に利用され得るかを決定することを含む。たとえば、「位置」クリエイティブ拡張は、レストランチェーンを特に売り込むコンテンツアイテムに関して選択に利用され得る可能性があり、チェーンのうちの最も近いレストランの所在地の位置を提供する可能性がある。しかし、位置クリエイティブ拡張は、オンラインでしか販売されず、ユーザが潜在的に訪れる可能性がある物理的な位置を持たない製品またはサービスを特に売り込むコンテンツアイテムに関しては選択に利用され得ない可能性がある。
一部の実装形態において、ステップ906は、ランディングリソース、ランディングリソースに関連するセカンダリリソース、および/または顧客情報データベースからデータ資産を抽出することを含む。ステップ906は、抽出されたデータ資産を使用して、潜在的なクリエイティブ拡張のうちのどれが選択に利用され得るかを決定することを含み得る。潜在的なクリエイティブ拡張のうちのどれが選択に利用され得るかを決定することは、クリエイティブ拡張のために必要とされるデータ資産を特定することと、特定されたデータ資産が抽出されたかどうかを判定することと、必要とされるデータ資産が抽出されていないという判定に応答して、クリエイティブ拡張が選択のために利用され得ないと判定することとを含み得る。
引き続き図9を参照すると、プロセス900は、選択されたクリエイティブ拡張を有するコンテンツアイテムを生成すること(ステップ908)と、クライアントデバイス上に提示するために生成されたコンテンツアイテムを提供すること(ステップ910)とを含むことが示される。コンテンツアイテムは、リアルタイムのサービス提供プロセスの一部として、ステップ902において受け取られた要求に応答して生成される可能性がある。ステップ908は、選択されたクリエイティブ拡張を選択されたクリエイティブおよび/または選択されたクリックタイプと組み合わせることを含み得る。一部の実装形態において、ステップ908は、選択されたクリエイティブ拡張によって提供された命令に従ってコンテンツアイテムをレンダリングすること(たとえば、クリエイティブ拡張を選択可能なボタンとしてレンダリングすること)を含む。コンテンツアイテムをレンダリングすることは、リモートのレンダリングサービスによってまたはクライアントデバイスによって実行される可能性がある。一部の実装形態において、ステップ910は、ステップ908の前に行われる。たとえば、選択されたクリエイティブ拡張は、クライアントデバイスに提供される可能性があり、クライアントデバイスは、選択されたクリエイティブ拡張を使用してコンテンツアイテムをレンダリングする可能性がある。
引き続き図9を参照すると、プロセス900は、潜在的なクリエイティブ拡張の各々を有するコンテンツアイテムに関連するユーザのアクションを示すイベントデータを収集し、記憶すること(ステップ912)を含むことが示される。イベントデータは、様々なサービス提供の文脈でクライアントデバイスまたはその他のクライアントデバイスに前に提供されたコンテンツアイテムの性能を示す可能性がある。イベントデータは、前に提供されたコンテンツアイテムに関連するクリック、コンバージョン、および/またはその他のユーザの振る舞いなどのログに記録されたユーザのアクションを含み得る。イベントデータは、前に提供されたコンテンツアイテムの属性(たとえば、クリックタイプ、クリエイティブID、クリエイティブ拡張、コンテンツタイプなど)およびサービス提供の文脈の詳細(たとえば、デバイスタイプ、デバイスの位置、コンテンツプラットフォーム、発行者のページの分類、ランディングリソースIDなど)を含み得る。
引き続き図9を参照すると、プロセス900は、クリエイティブ拡張性能モデルを訓練するためのフィードバックとしてイベントデータを使用すること(ステップ914)を含むことが示される。ステップ914は、図3および図7を参照して説明されたクリエイティブ拡張モデルトレーナ332によって実行され得る。一部の実装形態において、ステップ914は、イベントデータおよび/または性能の測定基準を取り出すためにイベントログデータベース(たとえば、データベース208)にアクセスすることを含む。ステップ914は、クリエイティブ拡張性能モデルが様々な種類のクリエイティブ拡張に関してコンテンツの性能を正確に予測することを保証するために、イベントログデータベースからのデータを使用してクリエイティブ拡張性能モデルを訓練および/または更新することを含み得る。
本明細書に記載の対象の実装および動作は、本明細書で開示された構造およびそれらの構造的均等物を含む、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェア、またはそれらのうちの1つもしくは複数の組合せで実装され得る。本明細書に記載の対象の実装形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために1つまたは複数のコンピュータストレージ媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。代替的にまたは追加的に、プログラム命令は、データ処理装置による実行のために好適な受信機装置に送信するために情報を符号化するように生成される人為的に生成された伝播信号(たとえば、機械によって生成された電気的信号、光学的信号、または電磁的信号)上に符号化され得る。コンピュータストレージ媒体は、コンピュータ可読ストレージデバイス、コンピュータ可読ストレージ基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらの1つもしくは複数の組合せであるか、あるいはそれらに含まれる可能性がある。さらに、コンピュータストレージ媒体は、伝播信号ではないが、人為的に生成された伝播信号に符号化されたコンピュータプログラム命令の送信元または送信先である可能性がある。コンピュータストレージ媒体は、1つまたは複数の別個の構成要素または媒体(たとえば、複数のCD、ディスク、またはその他のストレージデバイス)であるか、またはそれらに含まれる可能性もある。したがって、コンピュータストレージ媒体は、有形でありかつ非一時的である。
本開示に記載の動作は、1つもしくは複数のコンピュータ可読ストレージデバイスに記憶された、またはその他のソースから受け取られたデータに対してデータ処理装置によって実行される動作として実装され得る。
用語「クライアント」または「サーバ」は、例として、1つのプログラミング可能なプロセッサ、1台のコンピュータ、1つのシステムオンチップ、またはそれらの複数もしくは組合せを含む、データを処理するためのすべての種類の装置、デバイス、および機械を含む。装置は、専用の論理回路、たとえば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向け集積回路(ASIC)を含み得る。装置は、ハードウェアに加えて、問題にしているコンピュータプログラムのための実行環境を生成するコード(たとえば、プロセッサのファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、またはそれらのうちの1つもしくは複数の組合せを構成するコード)も含み得る。装置および実行環境は、ウェブサービスインフラストラクチャ、分散コンピューティングインフラストラクチャ、およびグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現し得る。
本開示のシステムおよび方法は、任意のコンピュータプログラムによって完了され得る。コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイラ型言語もしくはインタープリタ型言語、宣言型言語もしくは手続き型言語を含む任意の形態のプログラミング言語で記述可能であり、独立型プログラムとしての形態、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境での使用に適したその他の単位としての形態を含む任意の形態で配置され得る。コンピュータプログラムは、ファイルシステム内のファイルに対応する可能性があるが、必ずそうであるとは限らない。プログラムは、その他のプログラムもしくはデータを保持するファイルの一部(たとえば、マークアップ言語のドキュメントに記憶された1つもしくは複数のスクリプト)、問題にしているプログラムに専用の単一のファイル、または複数の組織されたファイル(たとえば、1つもしくは複数のモジュール、サブプログラム、もしくはコードの一部を記憶するファイル)に記憶され得る。コンピュータプログラムは、1つのコンピュータ上で、または1つの場所に置かれるか、もしくは複数の場所に分散され、通信ネットワークによって相互に接続される複数のコンピュータ上で実行されるように配置され得る。
本明細書に記載のプロセスおよび論理フローは、入力データに対して演算を行い、出力を生成することによってアクションを行うために1つまたは複数のコンピュータプログラムを1つまたは複数のプログラミング可能なプロセッサが実行することによって実行され得る。プロセスおよび論理フローは、専用の論理回路(たとえば、FPGAまたはASIC)によって実行される可能性もあり、装置は、専用の論理回路(たとえば、FPGAまたはASIC)として実装される可能性もある。
コンピュータプログラムの実行に好適なプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサとの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。概して、プロセッサは、読み出し専用メモリ、またはランダムアクセスメモリ、またはそれらの両方から命令およびデータを受け取る。コンピュータの必須の要素は、命令に従ってアクションを実行するためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。また、概してコンピュータは、データを記憶するための1つまたは複数の大容量ストレージデバイス(たとえば、磁気ディスク、光磁気ディスク、もしくは光ディスク)を含むか、またはそれらの大容量ストレージデバイスからデータを受け取るか、もしくはそれらの大容量ストレージデバイスにデータを転送するか、もしくはそれら両方を行うために動作可能なように結合される。しかし、コンピュータは、そのようなデバイスを備えていなくてもよい。さらに、コンピュータは、別のデバイス(たとえば、モバイル電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレイヤー、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルストレージデバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)など)に組み込まれる可能性がある。コンピュータプログラム命令およびデータを記憶するのに好適なデバイスは、例として、半導体メモリデバイス(たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば、内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD-ROMディスクおよびDVD-ROMディスク)を含む、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、専用の論理回路によって補完されるか、または専用の論理回路に組み込まれる可能性がある。
ユーザとのインタラクションを提供するために、本明細書に記載の対象の実装形態は、ディスプレイデバイス(たとえば、CRT(ブラウン管)、LCD(液晶ディスプレイ)、OLED(有機発光ダイオード)、TFT(薄膜トランジスタ)、もしくはその他の柔軟な構成、またはユーザに対して情報を表示する任意のその他のモニタ)と、ユーザがコンピュータに入力を与え得るキーボード、ポインティングデバイス、たとえば、マウス、トラックボールなど、またはタッチスクリーン、タッチパッドなどとを有するコンピュータ上に実装される可能性がある。その他の種類のデバイスが、ユーザとのインタラクションを行うためにさらに使用される可能性があり、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(たとえば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバック)である可能性があり、ユーザからの入力は、音響、話、または触覚による入力を含む任意の形態で受け取られる可能性がある。加えて、コンピュータは、ユーザによって使用されるデバイスにドキュメントを送信し、そのデバイスからドキュメントを受け取ることによって、たとえば、ウェブブラウザから受け取られた要求に応答してユーザのクライアントデバイスのウェブブラウザにウェブページを送信することによってユーザとインタラクションする可能性がある。
本開示に記載の対象の実装形態は、(たとえば、データサーバとして)バックエンド構成要素を含むか、またはミドルウェア構成要素(たとえば、アプリケーションサーバ)を含むか、またはユーザが本開示に記載の対象の実装とインタラクションし得るグラフィカルユーザインターフェースもしくはウェブブラウザを有するフロントエンド構成要素(たとえば、クライアントコンピュータ)を含むか、または1つもしくは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合せを含むコンピューティングシステムで実装される可能性がある。システムの構成要素は、任意の形態または媒体のデジタルデータ通信(たとえば、通信ネットワーク)によって相互に接続され得る。通信ネットワークの例は、LANおよびWAN、インターネットワーク(たとえば、インターネット)、ならびにピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)を含む。
本明細書は多くの具体的な実装形態の詳細を含むが、これらは、いかなる開示の範囲または特許請求され得るものの範囲に対する限定とも見なされるべきでなく、むしろ、特定の開示の特定の実装形態に固有の特徴の説明と見なされるべきである。別々の実装形態に関連して本開示に記載されている特定の特徴が、単一の実装形態で組み合わせて実装される可能性もある。反対に、単一の実装形態に関連して説明されている様々な特徴が、複数の実装形態に別々に、または任意の適切な部分的組合せで実装される可能性もある。さらに、特徴は、特定の組合せで動作するものとして上で説明されている可能性があり、最初にそのように主張されてさえいる可能性があるが、主張された組合せの1つまたは複数の特徴は、場合によってはその組合せから削除される可能性があり、主張された組合せは、部分的組合せ、または部分的組合せの変形を対象とする可能性がある。
同様に、動作が図中に特定の順序で示されているが、これは、そのような動作が示された特定の順序でもしくは逐次的順序で実行されること、または所望の結果を達成するために示されたすべての動作が実行されることを必要とするものと理解されるべきでない。特定の状況においては、マルチタスクおよび並列処理が有利である可能性がある。さらに、上述の実装形態における様々なシステム構成要素の分割は、すべての実装形態においてそのような分割を必要とすると理解されるべきでなく、説明されたプログラムコンポーネントおよびシステムは、概して、単一のソフトウェア製品に一緒に統合されるか、または1つもしくは複数の有形の媒体上に具現化される複数のソフトウェア製品にパッケージングされる可能性があることを理解されたい。
本明細書において開示された特徴は、インターネット接続性を(たとえば、ケーブル、衛星、伝播、またはその他の信号によって受け取られる)より旧来型のテレビ番組のソースと統合するように構成された処理回路を含み得るスマートテレビモジュール(またはコネクテッドテレビモジュール(connected television module)、ハイブリッドテレビモジュールなど)上に実装される可能性がある。スマートテレビモジュールは、テレビセットに物理的に組み込まれる可能性があり、またはセットトップボックス、ブルーレイもしくはその他のデジタルメディアプレイヤー、ゲームコンソール、ホテルのテレビシステム、およびその他のコンパニオンデバイス(companion device)などの別個のデバイスを含む可能性がある。スマートテレビモジュールは、ウェブ、ローカルケーブルTVチャンネル、衛星TVチャンネルの、またはローカルのハードドライブに記憶されたビデオ、ムービー、写真、およびその他のコンテンツを視聴者が検索し、見つけることを可能にするように構成される可能性がある。セットトップボックス(STB)またはセットトップユニット(STU: set-top unit)は、チューナを含み、テレビセットおよび信号の外部ソースに接続する情報家電デバイスを含む可能性があり、信号をコンテンツに変換し、そして、そのコンテンツが、テレビのスクリーンまたはその他のディスプレイデバイス上に表示される。スマートテレビモジュールは、ウェブブラウザなどの複数の異なるアプリケーション、および複数のストリーミングメディアサービス(たとえば、Netflix、Vudu、Huluなど)、接続されたケーブルまたは衛星媒体のソース、その他のウェブ「チャンネル」などに関するアイコンを含むホーム画面または最上位の画面を提供するように構成され得る。スマートテレビモジュールは、ユーザに電子番組ガイドを提供するようにさらに構成され得る。スマートテレビモジュールに対するコンパニオンアプリケーション(companion application)は、利用可能な番組についての追加的な情報をユーザに提供すること、ユーザがスマートテレビモジュールを制御することを可能にすることなどのためにモバイルコンピューティングデバイス上で動作し得る可能性がある。代替的な実施形態
において、特徴は、ラップトップコンピュータもしくはパーソナルコンピュータ、スマートフォン、その他のモバイル電話、ハンドヘルドコンピュータ、タブレットPC、またはその他のコンピューティングデバイス上に実装される可能性がある。
このように、対象の特定の実装が説明された。その他の実装形態は、添付の請求項の範囲内にある。場合によっては、請求項に挙げられたアクションは、異なる順序で実行され、それでも所望の結果を達成し得る。加えて、添付の図面に示されたプロセスは、所望の結果を達成するために、必ずしも、示された特定の順序または逐次的順序である必要はない。特定の実装形態においては、マルチタスクおよび並列処理が有利である可能性がある。