IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

<>
  • 特表-モデルオーケストレータ 図1
  • 特表-モデルオーケストレータ 図2
  • 特表-モデルオーケストレータ 図3
  • 特表-モデルオーケストレータ 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-08
(54)【発明の名称】モデルオーケストレータ
(51)【国際特許分類】
   G06F 16/907 20190101AFI20241001BHJP
   G06N 20/20 20190101ALI20241001BHJP
【FI】
G06F16/907
G06N20/20
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023553088
(86)(22)【出願日】2022-08-09
(85)【翻訳文提出日】2023-10-30
(86)【国際出願番号】 US2022039866
(87)【国際公開番号】W WO2024035395
(87)【国際公開日】2024-02-15
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WINDOWS
2.macOS
3.ANDROID
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】フランチェスコ・ネリエリ
(72)【発明者】
【氏名】ディ-ファ・チャン
(72)【発明者】
【氏名】ラン・ファン
(72)【発明者】
【氏名】シンロン・バオ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FB03
5B175FB04
5B175HA01
(57)【要約】
様々なコンテンツチャネルにわたる帰属のない結果の属性を決定するための、コンピュータ記憶媒体上に符号化されたコンピュータプログラムを含む方法、システム、および装置。本方法は、モデルオーケストレータによって、帰属のない結果のセットを表す結果データを受信するステップであって、各帰属のない結果が、あらかじめ定められた露出のセットのうちの露出に対する観察された属性を有していない、ステップを含む。複数の結果モデルの各結果モデルからのモデル化された属性のセットを表す属性データは、モデルオーケストレータによって受信され、モデル化された属性の各セットは1つまたは複数の帰属のない結果と1つまたは複数の露出との間のそれぞれの測定値を含む。それぞれの測定値は1つまたは複数の更新された属性を決定するための1つまたは複数の基準に基づいて更新され、更新された各属性は、帰属のない結果のセットからのそれぞれの結果の、あらかじめ定められた露出のセットの対応する露出に対する新しい属性を示す。
【特許請求の範囲】
【請求項1】
1つまたは複数のプロセッサを含むモデルオーケストレータによって、帰属のない結果のセットを表す結果データを受信するステップであって、帰属のない結果の前記セットのうちの帰属のない結果が、あらかじめ定められた露出のセットのうちの露出に対する観察された属性を有していない、ステップと、
前記モデルオーケストレータによって、複数の結果モデルの各結果モデルからモデル化された属性のセットを表す属性データを受信するステップであって、モデル化された属性の前記セットの各セットが、帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間のそれぞれの測定値を備える、ステップと、
1つまたは複数の基準に基づいて、前記複数の結果モデルから受信したモデル化された属性の前記セットにおける前記それぞれの測定値を更新するステップと、
前記更新されたそれぞれの測定値に基づいて1つまたは複数の更新された属性を決定するステップであって、更新された各属性は、帰属のない結果の前記セットからのそれぞれの結果の、あらかじめ定められた露出の前記セットの対応する露出に対する新しい属性を示す、ステップと
を備える、コンピュータ実装方法。
【請求項2】
モデル化された属性の前記セットのうちのモデル化された属性が、あらかじめ定められた露出の前記セットのうちの露出に対する帰属のない結果の属性を示す、請求項1に記載の方法。
【請求項3】
前記1つまたは複数の更新された属性に基づいて、モデル化された属性の前記セットのうちの1つまたは複数のモデル化された属性を更新するステップをさらに備え、更新する前記ステップが、対応する結果が前記モデル化された属性によって示される露出に起因しないように、モデル化された属性を撤回するステップを備える、請求項1または2のいずれか一項に記載の方法。
【請求項4】
少なくとも前記1つまたは複数の更新された属性に基づいてレポートを生成する1つまたは複数の下流動作に対して前記1つまたは複数の更新された属性を提供するステップをさらに備える、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記1つまたは複数の更新された属性に基づいて属性レポートを生成するステップをさらに備える、請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記1つまたは複数の更新された属性に基づいて、クライアントデバイスに提供されるデジタルコンテンツを決定するステップと、
前記デジタルコンテンツを含むデータを前記クライアントデバイスに送信するステップと
をさらに備える、請求項1から5のいずれか一項に記載の方法。
【請求項7】
帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間の前記それぞれの測定値が、帰属のない結果が1つまたは複数の対応する露出に起因する尤度を示す確率分布を備える、請求項1から6のいずれか一項に記載の方法。
【請求項8】
帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間の前記それぞれの測定値が、1つまたは複数の帰属のない結果が対応する露出に起因する尤度を示す確率分布を備える、請求項1から7のいずれか一項に記載の方法。
【請求項9】
前記1つまたは複数の基準に基づいてモデル化された属性の前記セット内の前記それぞれの測定値を更新するステップが、
帰属のない結果の前記セットのうちの帰属のない結果の場合、前記複数の結果モデルのうちの1つまたは複数からモデル化された属性のセットを選択するステップであって、モデル化された属性の前記選択されたセットの各々が、前記帰属のない結果に対する前記それぞれの測定値を備える、ステップと、
前記複数の結果モデルのうちの前記1つまたは複数の各々から、前記帰属のない結果の前記測定値のそれぞれの値を取得するステップと、
前記1つまたは複数の基準に基づいて、前記帰属のない結果に対する前記測定値の前記それぞれの値を修正するステップと
を備える、請求項1から8のいずれか一項に記載の方法。
【請求項10】
前記1つまたは複数の基準が、結果モデルの結果量しきい値、帰属のない結果に関連付けられる属性、帰属のない結果とモデル化された属性によって予測される対応する露出との間の類似度しきい値、あるいは帰属のない結果の前記セットにおける残りの帰属のない結果のしきい値数の少なくとも1つまたは複数を備える、請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記属性が、前記帰属のない結果に関連付けられる地理的位置である、請求項10に記載の方法。
【請求項12】
あらかじめ定められた露出の前記セットに対する帰属のない結果の前記セットの属性を決定するための要求をエンティティから受信するステップと、
前記要求の受信に応答して、前記要求に対応する前記1つまたは複数の更新された属性に基づいて出力を生成するステップと
をさらに備える、請求項1から11のいずれか一項に記載の方法。
【請求項13】
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、請求項1から12のいずれか一項に記載の方法を実行させるように動作可能な命令を記憶する1つまたは複数のストレージデバイスとを備える、システム。
【請求項14】
コンピュータプログラムを用いて符号化されたコンピュータ記憶媒体であって、前記プログラムが、データ処理装置によって実行されると、前記データ処理装置に、請求項1から12のいずれか一項に記載の方法を実行させるように動作可能な命令を備える、コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は一般に、様々なデータチャネル間でモデルを調整するためのデータ処理および技法に関する。
【背景技術】
【0002】
インターネットなどのネットワーク環境において、コンテンツプロバイダは表示用の情報を電子またはデジタル形態で提供することができる。デジタルコンテンツは、様々な電子形態で表示することができる。たとえば、デジタルコンテンツは、ウェブページ上で、またはウェブページにおいて定義された実行環境(たとえば、iframe)内で提供され、クエリ結果の表現に統合され、アプリケーションインターフェース上で提供され、または他の適切なデジタル形態で提供することができる。デジタルコンテンツは、ビデオクリップ、オーディオクリップ、マルチメディアクリップ、画像、テキスト、または他の適切なデジタルコンテンツであり得る。
【0003】
ユーザは様々なオンラインアクティビティに参加し、これらのアクティビティの各々によって、ユーザは様々な情報にさらされることになる。たとえば、デジタルコンテンツを読んだり閲覧したりするユーザのアクションは、特定のデジタルコンテンツへのユーザの露出と呼ぶことができる。ユーザによるアプリケーションのダウンロードおよびインストールなど、後続のオンラインアクティビティは、以前のアクティビティおよびユーザがさらされた情報の影響を受ける可能性がある。ユーザによるイベントの正常な完了(たとえば、後続のユーザのオンラインアクティビティの完了)は、通常、「結果(outcome)」または「コンバージョン(conversion)」を指す。どのオンラインアクティビティが任意の所与の結果に寄与したかを決定または予測するために、モデルを使用することができ、通常、様々なデータチャネルから取得したデータを独立して動作させるために、様々なモデルが実装される。
【発明の概要】
【課題を解決するための手段】
【0004】
本明細書全体で説明されているように、様々なデータチャネルに実装されたモデルによって実行される作業を調整するために、様々な技法を使用することができる。たとえば、様々なモデルが様々なチャネルからの様々なデータストリームで動作する状況では、様々なデータチャネルおよび/または様々なモデル間に存在する可能性のあるデータギャップを埋めるためにモデルオーケストレータを実装することができる。特定の例では、観察された結果をデータチャネル1から取得したデータストリームにおいて指定されたオンラインアクティビティに帰属するようにモデルAが実装され、観察された結果をデータチャネル2から取得した別のデータストリームにおいて指定されたオンラインアクティビティに帰属するようにモデルBが実装されていると仮定する。この例では、プライバシ設定または他のデータ制限により、モデルAおよび/またはモデルBがデータチャネルのうちの1つから情報を取得できない可能性があるため、モデルAおよび/またはモデルBは観察された結果のうちの1つまたは複数をオンラインアクティビティに正確に帰属するための十分な情報を有していない可能性がある。これにより、帰属のない観察結果および/または誤って帰属された観察結果が生じる可能性があり、いずれの場合も、誤ったまたは不完全な解を出力する次善のシステムが生成される。
【0005】
少なくともこれらの理由により、既存の技法は一般に不正確であり、特に、様々なデータストリームに含まれるデータによって表されるように、露出が様々なコンテンツチャネルを通じて発生する場合、露出まで遡る明確な経路を示すメタデータがなければ、結果の属性を予測するために誤解を招くことさえある。このような種類の結果は、本明細書では「帰属のない結果」とも呼ばれる。ほんの数例を挙げると、コンテンツチャネルは、ビデオストリーミングプラットフォーム、ソーシャルメッセージングプラットフォーム、オーディオブロードキャスティングプラットフォーム、検索エンジンウェブページ、小売ウェブページ、ソフトウェアアプリケーション用の仮想ストア、または他の適切なコンテンツチャネルのうちの少なくとも1つまたは複数を含むことができる。いくつかの実装形態では、コンテンツチャネルは、チャネルについて属性を決定するための、専用の1つまたは複数の結果モデルを有することができる。
【0006】
ユーザ情報を相互に通信しない様々なコンテンツチャネルを通じてユーザが異なるデジタルコンテンツにさらされる場合、既存の技法の1つは、帰属のない結果の属性を決定するために複数の結果モデルを使用する。しかしながら、このような技法は帰属に矛盾する結果を生成する可能性があり、これもまた次善の帰属システムにつながる可能性がある。たとえば、第1の結果モデルは、異なる露出A、B、およびCへの帰属を予測するように構成され、第2の結果モデルは、異なる露出B、D、およびFへの帰属を予測するように構成される。共通の帰属のない結果の場合、第1の結果モデルは、共通の帰属のない結果が露出Aに起因すると決定し、第2の結果モデルは、共通の帰属のない結果が別の露出、たとえば露出Fに起因すると決定する可能性がある。第1と第2の結果モデルから生成される属性は矛盾する。これは、各結果モデルが特定のコンテンツチャネル専用(または、あらかじめ定められた露出の特定のセット専用)に設計および/またはトレーニングされており、したがって、結果が起因するすべての露出の「グローバルビュー」を有していない可能性があるために発生する可能性がある。
【0007】
本明細書で説明されている技法は、既存の技法が直面している上記の問題を解決することができる。説明された技法を実装するシステムは、様々なコンテンツチャネルの各々に実装された結果モデルによって十分な信頼性を持って帰属できなかった、帰属のない結果のセットの属性を決定するように構成されている。より具体的には、システムは、対応する露出まで遡る明確な経路を有していない(または、あらかじめ定められた露出のセット内の対応する露出への帰属が観察されていない)、帰属のない結果のセット(「結果データ」と呼ばれる)を表すデータを受信する。次いで、システムは、モデル化された属性を表すデータ(「属性データ」と呼ばれる)を受信する。いくつかの実装形態では、モデル化された各属性は、対応する結果モデルによってカバーされる露出のタイプに対する、帰属のない結果の属性を示す。
【0008】
モデル化された属性は、複数の結果モデルによって生成され、各結果モデルは、帰属のない結果のセットの少なくとも一部について、モデル化された属性のそれぞれのセットを生成する。結果モデルの各セットは、帰属のない結果のそれぞれの部分と対応する露出との間のそれぞれの測定値を含む。
【0009】
いくつかの実装形態では、それぞれの測定値は、1つまたは複数の対応する露出に帰属しない1つまたは複数の結果の尤度を示す確率分布を含むことができる。結果と露出との間の尤度マッピングは、たとえば1対1マッピング、1対多マッピング、または多対1マッピングなど、任意とすることができる点に留意されたい。たとえば、確率分布は、帰属のない結果が、1つまたは複数の対応する露出に起因する尤度を示すことができる。別の例として、確率分布は、1つまたは複数の帰属のない結果が、対応する露出に起因する尤度を示すことができる。
【0010】
システムは1つまたは複数の基準を使用して、複数の結果モデルから受信したモデル化された属性のセット内のそれぞれの測定値を更新する。それぞれの測定値を更新するために、システムは、それぞれが少なくとも共通の帰属のない結果についての測定値を有するモデル化された属性の1つまたは複数のセットを決定するように構成される。システムは、結果モデルによって決定された測定値からそれぞれの値を取得する。この値は、共通の帰属のない結果がそれぞれの露出に起因する尤度、または共通の帰属のない結果が起因する特定の露出を表す実数とすることができる。システムは1つまたは複数の基準に基づいて値を更新するかどうかを決定する。1つまたは複数の基準が満たされる場合、システムは、共通の帰属のない結果について、様々な結果モデル間で決定された属性における矛盾を解決するために値を更新する。
【0011】
システムは、更新されたそれぞれの測定値に基づいて1つまたは複数の更新された属性を決定する。更新された属性の各々は、あらかじめ定められた露出のセットのうちの対応する露出に起因する、それぞれの属性付きの結果を示す。
【0012】
任意で、システムは、1つまたは複数のモデル化された属性が、更新された属性とは異なるかどうかを決定し、1つまたは複数のモデル化された属性が、更新された属性とは異なるとの決定に応答して、システムは、更新された属性に合わせて1つまたは複数のモデル化された属性を更新する。結果モデルが、更新された属性によって予測される結果の露出のタイプをカバーしていないいくつかの実装形態では、システムは、結果モデルによって生成された帰属のない結果についてのモデル化された属性を撤回することができる。「撤回(retract)」という用語は一般に、将来の参照のためにモデル化された属性を無効にすること、および/または結果モデルから生成されたモデル化された属性を記憶しないことを指す。
【0013】
それぞれの測定値を更新するために使用される1つまたは複数の基準は、異なる属性要件に従って、ユーザ入力またはシステムの事前設定によって決定することができる。いくつかの実装形態では、1つまたは複数の基準は、結果モデルの結果量しきい値を含むことができる。たとえば、結果モデルに、結果量しきい値を満たす帰属のない結果の数が割り当てられている場合、システムは、結果モデルによって生成された測定値の値を更新することを決定することができる。
【0014】
いくつかの実装形態では、1つまたは複数の基準は、帰属のない結果に関連付けられる属性を含むことができる。たとえば、属性は、帰属のない結果に関連付けられる地理的位置とすることができ、その地理的位置を、モデル化された属性によって予測される露出に関連付けられる地理的位置と比較するために任意に使用することができる。別の例として、属性は、帰属のない結果に関連付けられる時間値とすることができ、時間値をオプションで、対応するユーザがモデル化された属性によって予測される露出にさらされた時間と比較するために使用することができる。さらに、帰属のない結果に関連付けられる属性は、結果が発生するデバイスおよび/またはオペレーティングシステムのタイプを含むことができる。デバイスタイプの例は、スマートフォン、コンピュータ、スマートタブレット、スマートテレビ、スマートウォッチ、または他のデバイスタイプのそれぞれのタイプを含むことができる。オペレーティングシステムのタイプの例は、Windows、MacOS、Android、Linux(登録商標)、および他のオペレーティングシステムのタイプを含むことができる。さらに、帰属のない結果に関連付けられる属性は、デジタルコンテンツを提供するプロバイダおよび提供されるデジタルコンテンツのタイプに関連する情報を含むことができる。デジタルコンテンツタイプは、テキスト、画像、ビデオ、または他のデジタルコンテンツタイプを含むことができる。
【0015】
いくつかの実装形態では、1つまたは複数の基準は、帰属のない結果と、モデル化された属性によって予測される露出との間の類似度しきい値を含むことができる。たとえば、システムは、埋め込み空間における結果の特徴と露出との間の距離を決定することによって、帰属のない結果と露出の類似度値を生成することができる。システムは1つまたは複数の基準が満たされるかどうかを決定するために、類似度値を類似度しきい値と比較することができる。
【0016】
いくつかの実装形態では、1つまたは複数の基準は、帰属のない結果のセットにおける残りの帰属のない結果のしきい値数を含むことができる。代替的または追加的に、上記の基準のいずれか1つは、帰属のない結果のセットにおける残りの帰属のない結果のしきい値数に依存することができる。たとえば、残りの帰属のない結果の数が残りの帰属のない結果のしきい値数を満たす場合、システムはモデル化された属性のパラメータを更新しない。別の例として、残りの帰属のない結果の数が残りの帰属のない結果のしきい値数を満たす場合、上記の基準の少なくとも1つが、異なる要件に従って異なる程度に緩和され、たとえば、類似度しきい値が元のしきい値の半分になるか、または地理的位置の基準が無視される可能性がある。
【0017】
この態様の他の実施形態は、対応する方法、装置、およびコンピュータプログラムを含み、コンピュータプログラムは、方法の上述のアクションを実行するように構成され、コンピュータストレージデバイス上に符号化されている。
【0018】
本明細書に記載される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実装することができる。記載された技法は、あらかじめ定められた露出のセットのうちの露出に対する、帰属のない結果の属性を決定するための精度および効率を向上させる。特に1つまたは複数の様々なチャネルから1つまたは複数のデジタルコンテンツにさらされたユーザによって完了した結果の場合、システムは、結果の露出まで遡るための明確な経路を示すメタデータを含まない場合がある。これは、たとえば、1つまたは複数のデジタルコンテンツが様々なチャネルからユーザに表示されるときにユーザ識別情報にアクセスできない可能性があるなどのプライバシポリシによるものである。これらの場合、説明される技法は1つまたは複数の結果モデルから生成されたモデル化された属性を使用して属性を決定することによって効率的であるため、説明される技法はモデル化された属性を生成するために時間と計算リソースを費やすことがない。むしろ、説明される技法は1つまたは複数の基準に基づいてモデル化された属性におけるそれぞれの測定値を修正または調整することによって属性を決定する。1つまたは複数の基準は、複数の結果モデルによって予測される属性における潜在的な矛盾を解決するために決定される(たとえば、1つの結果が、複数の結果モデルによる複数の異なる露出に起因すると考えられる)。1つまたは複数の基準は、グローバルな観点からの情報を考慮するようにさらに設計されており、すなわち、結果に関連付けられる属性と、すべての結果モデルからのグローバル情報を考慮するため、システムによって生成された属性は、既存の技法によって予測された属性よりも正確になる。さらに、本明細書で説明する技法は、属性を実行するために作成されたモデルが、モデルに利用可能な情報に基づいて適切に帰属させることができない状況における、結果の属性の問題に対処する。たとえば、十分な信頼性を持って所与の結果を帰属させるために必要なデータが個々のモデルで利用できない場合、モデルオーケストレータデバイスは、様々なモデルの各々から出力を収集し、様々なモデル出力およびモデルオーケストレータが利用できる(たとえば、異なるモデルでは利用できない)他のデータに基づいて所与の結果を帰属させることによって、本明細書で説明する技法を実装することができ、それによって、データ共有の制限を遵守しながら、帰属のない結果の数が削減される。
【0019】
本明細書に記載される主題の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明に記載される。主題の他の特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0020】
図1】帰属のない結果の属性を決定するための例示的なシステムのブロック図である。
図2】例示的なシステムに含まれる例示的なモデルオーケストレータのブロック図である。
図3】帰属のない結果の属性を決定するための例示的なプロセスの流れ図である。
図4】例示的なコンピュータシステムのブロック図である。
【発明を実施するための形態】
【0021】
様々な図面における同様の参照番号および名称は、同様の要素を示す。
【0022】
結果を以前のアクティビティに起因させることは、モデルの一般的な適用である。しかしながら、結果を以前のアクティビティに適切に起因させるモデルの能力は、モデルをトレーニングおよび実行する際に利用可能なデータによって部分的に制限される。オンラインアクティビティの文脈では、あるコンテンツチャネルからのデータが別のコンテンツチャネルと共有されることを防ぐプライバシポリシ(および、他の制限)があるが、任意の所与の結果に先立って発生したユーザのオンラインアクティビティは、多くの様々なコンテンツチャネルにまたがる可能性がある。このクロスチャネルデータの欠如により、任意の所与のコンテンツチャネルからのデータに基づいて所与のモデルが属性を出力する機能が制限される。したがって、多くの結果は帰属されずに終わってしまう。
【0023】
たとえば、インターネットに接続しているユーザは、たとえば、検索結果、ウェブページ、ニュース記事、ソーシャルメディア投稿、デジタルアシスタントデバイスによって出力されるオーディオ情報、ビデオストリーム、前述のデジタルコンテンツのうちの1つまたは複数に関連付けられるデジタルコンテンツ、あるいは他の適切なデジタルコンテンツなどの、様々なデジタルコンテンツにさらされる。デジタルコンテンツへのこれらの露出の一部は、ユーザが結果として指定されたターゲットアクションを実行または完了することに寄与する場合がある(上記のように、コンバージョンとも呼ばれる)。たとえば、デジタルコンテンツにさらされたユーザ、たとえば、コンテンツチャネルからの家具についてのデジタルコンポーネントを閲覧する、またはそれが表示されるユーザは、小売プラットフォームにおいてその家具を購入し得る。この例では、家具の購入とは、一般に、コンテンツチャネルからデジタルコンテンツにさらされたことに応じて実行されるユーザアクションまたはユーザによって完了されるイベントを指す。言い換えれば、家具の購入の結果は、ユーザに表示されたデジタルコンテンツに起因すると考えることができる。同様に、ビデオストリーミングサービスに関する別のデジタルコンポーネントにさらされたユーザは、最終的にビデオストリーミングサービスのアプリケーションをダウンロードしてインストールし得、この場合、アプリケーションのダウンロードとインストールはイベントの結果または完了であり、他のデジタルコンテンツに起因すると考えられる。
【0024】
本明細書全体にわたる「露出(exposure)」という用語は、一般に、ユーザ、閲覧者、または視聴者がコンテンツプロバイダによって提供されるデジタルコンテンツを閲覧したり聞いたりするイベントを指す。デジタルコンテンツは、ビデオクリップ、オーディオクリップ、マルチメディアクリップ、画像、テキスト、または他の適切なデジタルコンテンツのうちの少なくとも1つまたは複数を含むことができる。デジタルコンテンツは、たとえば、ウェブページ上、ウェブページ内のバナー上、クエリ結果の表現に統合される、アプリケーションインターフェース上で提供される、または他の適切なデジタル形態など、様々な形態で提供することができる。いくつかの実装形態では、露出イベントは、提供されたデジタルコンテンツとの1つまたは複数のユーザエンゲージメントを含む。ユーザエンゲージメントは、デジタルコンテンツとの肯定的または否定的なユーザ対話、たとえば、デジタルコンテンツ内の扱いにくいコンポーネントのタップまたはクリックを含む肯定的な対話、またはユーザがデジタルコンテンツプレゼンテーションをスクロールして通過するか閉じることを含む否定的な対話を含むことができる。いくつかの実装形態では、露出の成功は、提供されたデジタルコンテンツとの少なくとも1つの肯定的なユーザ対話を含む。
【0025】
インタラクティブコンポーネントは、たとえば、ユーザと対話された後、そのURLに関連付けられる特定のプロファイルにユーザを誘導するユニフォームリソースロケータ(URL)とすることができる。場合によっては、「露出」という用語は「インプレッション(impression)」と呼ばれることもある。簡単にするために、以下の説明では、肯定的なユーザ対話を伴う露出は、「ユーザクリック(user click)」と呼ばれることもある。本明細書全体で使用される「結果」または「コンバージョン」という用語には、通常、イベントの完了につながらない露出に対するユーザクリック(たとえば、ソフトウェアアプリケーションのダウンロード、トランザクションの終了、または他のイベント)は含まれない点に留意されたい。しかしながら、状況によっては、後続のユーザアクティビティを考慮せずに、結果はユーザクリックを含むことができる。
【0026】
本明細書全体にわたる「コンテンツチャネル」という用語は、一般に、デジタルコンテンツを閲覧者または視聴者に提供できるサービス、プラットフォーム、および/またはインターフェースを指す。コンテンツチャネルの例は、アプリケーションインターフェース、ウェブページインターフェース、ビデオストリーミングサービス、オーディオストリーミングサービス、電子メールサービス、オンライン検索サービス、ナビゲーションサービス、オンラインショッピングプラットフォーム、ソーシャルメッセージングプラットフォーム、ソーシャルストリーミングプラットフォーム、または他の適切なサービス、および/あるいはインターフェースを含む。いくつかの実装形態では、様々なコンテンツチャネルは、様々な当事者によって管理または所有されるサービス、プラットフォーム、および/またはインターフェースを含むことができる。たとえば、コンテンツチャネルは、第1の当事者によって管理または所有される第1のソーシャルメッセージングプラットフォームと、第1の当事者とは異なる第2の当事者によって管理または所有される第2のソーシャルメッセージングプラットフォームとを含むことができる。状況によっては、制限により、あるコンテンツチャネルからのデータが、別のコンテンツチャネルからのデータを処理するデバイスまたはシステムと共有されなくなる場合がある。
【0027】
場合によっては、当事者はデジタルコンテンツを視聴者に提供するために複数のコンテンツチャネルを管理または実行することができる。当事者は、複数のコンテンツチャネルを通じて提供される露出に対する結果の属性を決定するために設計および/またはトレーニングされた1つまたは複数の属性モデルをさらに要求することができる。一般に、属性モデルは、結果が起因するべき露出を決定するために、結果と様々なチャネルからの1つまたは複数の露出に関連付けられるメタデータを分析することができる。このような状況では、制限または技術的な制約により、あるコンテンツチャネルからのデータが、別のコンテンツチャネルからのデータを処理するデバイスまたはシステムと共有されなくなる場合がある。
【0028】
複数のコンテンツチャネルまたはプラットフォームがクライアントデバイス(またはクライアントデバイスに関連付けられる視聴者)にデジタルコンテンツを提供できる環境では、結果が起因するコンテンツチャネルからの露出を決定することが困難な場合がある。これは通常、ユーザ/デバイス識別子(たとえば、匿名化された文字列)にアクセスできない可能性があるか、ユーザ/デバイス識別子が様々なコンテンツチャネル間で紛失、暗号化、または削除される可能性があるためである。まず、ユーザがコンテンツチャネルを通じてデジタルコンテンツにさらされている場合、様々な理由、たとえば1つまたは複数の特定のユーザのプライバシポリシ、および/またはユーザのアクティビティ(たとえば、ユーザがユーザアカウントにログインしていない、またはコンテンツチャネルに関連付けられる登録アカウントを有していない)により、ユーザ/デバイス識別子にアクセスできない場合がある。さらに、ユーザ/デバイス識別子を表すデータは、特に様々なコンテンツチャネルが様々な当事者によって管理または所有されている場合、一般に、様々なコンテンツチャネル間で共有または通信されない。したがって、第1のコンテンツチャネルによって取得されたユーザ/デバイス識別子には、第2のコンテンツチャネルによってアクセスすることができない。
【0029】
単純な例として、ユーザは、第1の当事者によって運営される第1のプラットフォームにおいてデジタルコンテンツにさらされ、その後、第2の当事者によって運営される第2のプラットフォームにおいて同じデジタルコンテンツにさらされる可能性がある。第1のプラットフォームはユーザ/デバイス識別子を表すデータを収集するが、その識別子を第2のプラットフォームと通信しない。それ以外の場合、第2のプラットフォームはユーザ/デバイス識別子にアクセスすることができない。ユーザは、第2の当事者によって管理される別のプラットフォーム上でデジタルコンテンツに関連付けられるイベント(たとえば、コンバージョンの発生など)を完了する。その結果は、第2のプラットフォーム上のデジタルコンテンツに起因すると考えられる。しかしながら、第2の当事者の観点から見ると、第2の当事者によって管理されるコンテンツチャネルの属性モデルは、第2のプラットフォームにおける露出への結果を追跡する経路を確立するために使用されるメタデータを有していない。
【0030】
一部の結果は、その結果が起因する露出を示すデータを有しており、これは「観察された結果」または「観察された属性」とも呼ばれる。観察された属性は通常、露出に対するユーザの肯定的な対話に基づいて完了した結果を示すデータを含む。たとえば、ユーザがデジタルコンテンツに埋め込まれたURLをクリックまたはタップすると、結果が発生するプロファイルが表示される。しかしながら、上記のように、すべての結果が露出を追跡する明確な経路を示すデータを有するわけではない。関連付けられる露出を示すデータのない結果は、上記のように「帰属のない結果」と呼ばれる。いくつかの実装形態では、コンテンツチャネルの1つまたは複数の結果モデルは、コンテンツチャネルの帰属のない結果の属性を予測するために実装される。結果モデルによって生成される予測された属性は、一般に「モデル化された属性」と呼ばれる。
【0031】
本明細書では、様々なコンテンツチャネルからの帰属のない結果の属性を決定するための技法について説明する。特に、説明されている技法は、様々なモデル間の動作を調整し、モデル化された属性の異なるセットに基づいて帰属のない結果を処理するように構成された中央属性エンジンを含み、モデル化された属性の各セットは、それぞれのコンテンツチャネルのそれぞれの結果モデルによって予測される。モデル化された属性の各セットは、帰属のない結果と、結果が属性を決定するために専用に設計された対応するコンテンツチャネルを通じた対応する露出との間の関係を示すそれぞれの測定値をさらに含むことができる。本明細書では、中央属性エンジンはモデルオーケストレータとも呼ばれる。
【0032】
説明されている技法は、複数の様々なチャネルに関連付けられる情報に基づいてモデル化された予測を分析し、グローバル情報を使用してモデル化された予測のセットの測定値を調整または修正することができる。いくつかの実装形態では、説明されている技法は、グローバル情報に基づいて1つまたは複数の基準を決定し、1つまたは複数の基準に基づいてモデル化された予測における測定値を調整することができる。説明されている技法は、調整または修正された測定値を使用して、これらの帰属のない結果の更新された属性を決定することができる。いくつかの実装形態では、システムはまた、属性における競合を回避するために、たとえば、1つの結果が複数の露出に起因するものとしてモデル化されるのを防ぐために、更新された属性に基づいてモデル化された属性を更新することができる。中央属性エンジンまたはモデルオーケストレータは、様々なコンテンツチャネルの様々な結果モデルにわたってグローバル情報を取得するため、帰属のない結果に対して決定された属性は、ローカルの結果モデルによって決定されたものよりも正確である。
【0033】
本明細書で説明するシステムがユーザに関する個人情報を収集および/または使用する状況では、個人情報(たとえば、ユーザのソーシャルネットワーク、ソーシャルアクションまたはアクティビティ、ユーザの嗜好、あるいはユーザの現在地に関する情報)を収集および/または使用する可能性のあるプログラムまたは機能を有効化/無効化または制御する機会がユーザに提供され得る。さらに、特定のデータは、ユーザに関連付けられる個人を特定できる情報が削除されるように、記憶または使用される前に1つまたは複数の方法で処理され得る。たとえば、ユーザの身元を匿名化してユーザの個人を特定できる情報を決定できないようにしたり、ユーザの特定の場所を決定できないように位置情報(都市、郵便番号、州レベルなど)が取得されるユーザの地理的位置を一般化したりすることができる。
【0034】
図1は、帰属のない結果の属性を決定するための例示的なシステム100のブロック図である。例示的なシステム100は、モデルオーケストレータ140を含み、1つまたは複数の場所にある1つまたは複数のコンピュータ(たとえば、ノードまたはマシン)上で実装される属性システムの一例であり、以下に説明するシステム、コンポーネント、および技法を実装することができる。システム100のコンポーネントの一部は1つまたは複数のコンピュータ上で実行されるように構成されたコンピュータプログラムとして実装することができる。
【0035】
図1に示されるように、システム100は1つまたは複数の属性エンジン120a~120nを含むことができる。属性エンジンは、結果の属性を決定するように構成された1つまたは複数の場所に1つまたは複数のプロセッサを含むことができる。いくつかの実装形態では、各属性エンジン120a~120nは、特定のコンテンツチャネルにおいて完了した結果の属性を決定するために、特定のコンテンツチャネルに割り当てることができる。たとえば、第1の属性エンジン120aは第1のチャネル(たとえば、第1のソーシャルメッセージングプラットフォーム)に割り当てられ、第2の属性エンジン120bは第2のチャネル(たとえば、第1のビデオストリーミングサービス)に割り当てられ、第nの属性エンジン120nはオンライン検索サービスに割り当てられる。他のコンテンツチャネル例については、上記でさらに詳細に説明されている。
【0036】
さらに、各属性エンジン120a~nは、対応する属性エンジン120a~nに割り当てられたコンテンツチャネルの結果を決定するように専用に構成されたそれぞれの結果モデル130a~nを含むことができる。言い換えれば、属性エンジン120の結果モデルは、様々なコンテンツチャネルにわたって結果が起因し得る露出の全体像を有していない。むしろ、結果モデル130a~nは、一般に、対応するコンテンツチャネルに関連付けられるあらかじめ定められた露出をカバーする。たとえば、属性エンジン120aは、結果モデル130aを含み、結果モデル130aは、対応するコンテンツチャネル(たとえば、チャネル1およびチャネル2)に関連付けられるあらかじめ定められた露出の第1のセット(たとえば、露出A、B、およびC)に対する結果の属性を決定することができる。属性エンジン120dは、結果モデル130dを含み、結果モデル130dは、コンテンツチャネル(たとえば、チャネル2、チャネル6、およびチャネル7)に関連付けられるあらかじめ定められた露出の第2のセット(たとえば、露出C、G、およびK)に対する結果の属性を決定することができる。
【0037】
一般に、属性エンジン120a~nは、入力として観察データ110を受信し、観察データ110に基づいて結果について観察されたおよび/またはモデル化された属性を含むそれぞれのモデル出力135a~nを生成する。観察データ110は、結果および結果に関連付けられる「フットプリント」を記憶するメタデータを含むことができる。「フットプリント(footprint)」という用語は一般に、ユーザによって完了された結果に影響を与える可能性のある、様々な露出を伴うユーザの履歴アクティビティまたは対話を指す。たとえば、観察データ110は、第1の結果について、ユーザがデジタルコンテンツを閲覧しているときにユーザがURLをクリックまたはタップし、その後、ユーザは、URLによってユーザに提供されたウェブページ上で購入を完了したことを示すデータを含むことができる。この場合、観察データ100は、ユーザクリックまたはタップの識別子(たとえば、クリックID)を含み、クリックIDを結果イベントの対応する識別子(たとえば、結果ID)に関連付けることができる。上述のように、その結果が起因するべき露出を示す観察データ110を有する結果を「観察された属性」と呼ぶ。
【0038】
状況によっては、観察データ110は、結果に対するユーザの「フットプリント」に沿った複数の露出を示すデータを含むことができる。たとえば、エンティティによって結果が完了される前に、エンティティは、第1のコンテンツチャネルを通じて第1のデジタルコンテンツと対話し(たとえば、検索サービスウェブページ上のデジタルコンテンツをクリックした)、第2のコンテンツチャネルを通じて第2のデジタルコンテンツと対話する(たとえば、ビデオストリーミングプラットフォームで合理化ビデオを視聴しているときに、ビデオ広告全体を視聴した)。2つのコンテンツチャネルに割り当てられた属性エンジン120eは、結果がどの露出に起因するべきかを予測するために、関連付けられる結果モデル130eにおいて動作を実行する。上記のように、このタイプの結果は「モデル化された属性」とも呼ばれる。
【0039】
場合によっては、観察データ110は、様々な理由により、結果について1つまたは複数の露出を追跡する明確な経路を含まないことがある。状況によっては、特定のプライバシポリシにより、ユーザアクティビティまたは対話を追跡するためのユーザ/デバイス識別子などのデータは、システム100が属性を決定するためにユーザアクティビティまたは対話を決定することができなくなるように、システム100に提供される観察データ110から削除されるか、システム100に提供される観察データ110の前に暗号化される。状況によっては、ユーザ/デバイス識別子を表すデータは、様々なコンテンツチャネルにわたって通信されないため、第1のチャネルの結果モデル130aは、結果を完了したユーザが第2のチャネル上のデジタルコンテンツと肯定的に対話したことを認識せず、第2のチャネルは第1のチャネルと情報を共有しない。いくつかの実装形態では、ユーザ/デバイス識別子を表すデータはまったく観察されない可能性があり、結果を完了したユーザは、第1のデジタルコンテンツにさらされ、その後、属性エンジン120mによって管理される小売プラットフォーム上で結果を完了したときに、ユーザアカウントへのログインを忘れる可能性がある。上記の状況では1つまたは複数の露出を結果にリンクする観察データを有しない結果は、「帰属のない結果」と呼ばれる。結果モデルは十分に正確な属性を生成せず、帰属のない結果に対して誤解を招く属性、および/または矛盾する属性を生成する場合がある。
【0040】
結果と露出との間に確立されたリンクまたは接続を有していない帰属のない結果の場合、結果モデル130a~130nは、対応する結果モデルによって管理されるコンテンツチャネルのあらかじめ定められた露出に基づいて、結果の属性を予測することができる。属性を予測するために、例示的な結果モデルは、帰属のない結果と、結果モデルの露出のあらかじめ定められたセット内の露出との間の測定値を生成することができる。測定値は1つまたは複数の帰属のない結果が、結果モデルのコンテンツチャネルにおける1つまたは複数の露出に起因する尤度を含むことができる。予測される接続またはマッピングは1対1のマッピングである必要はない点に留意されたい。代わりに、マッピングまたは接続は、多対1マッピングまたは1対多マッピングであり得る。たとえば、コンテンツチャネルA、B、Cの結果モデルは、ユーザ/デバイス識別子を表すデータなしで、50%の確率で、第1の帰属のない結果はコンテンツチャネルAからの露出に起因し、10%の確率で、第2の帰属のない結果はコンテンツチャネルBからの露出に起因し、20%の確率で、第3の帰属のない結果はコンテンツチャネルCからの露出に起因すると決定することができる。別の例として、結果モデルは、ユーザ/デバイス識別子を表すデータなしで、40%の確率で、第1の帰属のない結果はコンテンツチャネルAからの露出に起因し、5%の確率で、コンテンツチャネルBからの露出に起因し、15%の確率で、コンテンツチャネルCからの露出に起因すると決定することができる。別の例として、結果モデルは、ユーザ/デバイス識別子を表すデータなしで、70%の確率で、第1の帰属のない結果はコンテンツチャネルAからの露出に起因し、21%の確率で、第2の帰属のない結果はコンテンツチャネルAからの露出に起因し、3%の確率で、第3の帰属のない結果はコンテンツチャネルAからの露出に起因すると決定することができる。結果モデルが帰属のない結果の属性を決定すると、簡略化するために、帰属のない結果は「モデル化された属性」とも呼ばれる。属性エンジン120a~nは、モデル化された属性を対応するモデル出力135a~nに出力する。
【0041】
システム100は、上述の問題を解決するように構成されたモデルオーケストレータ140を含む。より具体的には、モデルオーケストレータ140は、複数の属性エンジン120a~120nから収集されたグローバル情報に基づいて、帰属のない結果に対する正確な属性を効率的に決定することができる。
【0042】
図1に示されるように、帰属のない結果150の属性を決定するための1つまたは複数の要求150を受信すると、モデルオーケストレータ140は、帰属のない結果145について決定された属性を有する出力データ155を生成するために、入力された帰属のない結果145を処理することができる。いくつかの実装形態では、要求150は、システム100によって提供される1つまたは複数のサービス(たとえば、対応するコンテンツチャネルにおいて完了した結果について属性を決定するためのサービス)を使用するエンティティから受信することができる。エンティティは、たとえばクライアントデバイスを使用して要求150を送信することができる。モデルオーケストレータ140は、帰属のない結果を処理するために要求を受信する必要はない点に留意されたい。むしろ、モデルオーケストレータ140は、スケジュールに基づいて処理を実行するか、あるいは、そうでなければ、最初に要求を受信することなく、帰属のない結果を自動的に処理することができる。
【0043】
いくつかの実装形態では、帰属のない結果は1つまたは複数のあらかじめ定められた基準に基づいてシステム100によって自動的に処理され得る。たとえば、基準の一例は、帰属のない結果のしきい値数であり得る。システム100が、帰属のない結果の総数がしきい値数以上であると決定した場合、システム100は、帰属のない結果145について属性を決定するための要求150をモデルオーケストレータ140に対して自動的に生成することができる。
【0044】
いくつかの実装形態では、要求150は、対応する属性エンジン120a~nから生成されたモデル出力135a~nに含まれ得る。結果モデル130a~nは、観察データ110からのユーザ関連情報の欠如により、結果が起因するべき適切な露出を決定できない。したがって、結果モデル130a~nは、モデル出力135a~nに含まれる帰属のない結果を出力することができる。属性エンジン120a~nは、モデル出力135a~nにおける帰属のない結果をさらに処理するために、モデルオーケストレータ140に対する要求を生成する必要があるかどうかを決定することができる。たとえば、属性エンジン120a~nは、モデル出力135a~nにおけるすべての結果に対する帰属のない結果の数の比率を決定し、その比率をしきい値比と比較することができる。比率がしきい値比率を満たす場合、属性エンジン120a~nは、モデルオーケストレータ140が帰属のない結果を処理するために、モデル出力135a~nに含まれるべき要求を生成することができる。
【0045】
一般に、モデルオーケストレータ140は、帰属のない結果145について属性を決定するために、帰属のない結果145のセットと、結果モデルから生成されたモデル化された属性を処理する。いくつかの実装形態では、上記のように、モデルオーケストレータ140はまた様々な属性エンジン120a~nからのモデル出力134a~nから帰属のない結果を受信する。モデルオーケストレータ140は、属性エンジン120a~nによって実行された属性をモデル化するための動作を繰り返す必要がないため、この技法は効率的である。むしろ、モデルオーケストレータ140は、すべての観察データ110および結果モデル130a~nのグローバル情報に基づいて、モデル化された属性を調整または更新するように構成されている。モデルオーケストレータ140は、たとえば、1つまたは複数の基準に基づいて、モデル化された属性について予測された測定値を調整または修正することができる。1つまたは複数の基準は、様々な属性要件に従って決定または選択されるか、あるいはユーザ入力によってまたは要求150内で指定される。モデル化された属性に基づいて、帰属のない結果に対する更新された属性を決定する詳細については、図2に関連してさらに詳細に説明する。
【0046】
帰属のない結果145について、更新された属性を決定した後、モデルオーケストレータ140は、更新された属性と異なる場合、モデル化された属性のうちの一部をさらに撤回することができる。たとえば、第1の帰属のない結果に対するモデル化された属性が、その結果が起因するべき露出Aを示しているが、第1の帰属のない結果に対する対応する更新された属性が別の露出、たとえば露出Bを示している場合、システム100またはモデルオーケストレータ140は、モデル化された属性を撤回することができる。「撤回(retract)」という用語は一般に、モデル化された属性を無効にすること、結果とモデル化された属性によって予測される露出との間のリンクまたは接続を切断すること、あるいはモデル化された結果を削除するかストレージに記憶しないことを指す。
【0047】
モデルオーケストレータ140は、更新された属性を含む出力データ155を生成し、1つまたは複数の下流エンジン160によって実行されるさらなる動作のために出力データ155を提供する。動作は、様々な属性要件に応じた任意の適切な動作を含むことができる。たとえば、動作の1つは、関心のある質問、たとえば、結果を達成するために特定の露出がどの程度効率的または影響力があるか、どのコンテンツチャネルが最も多くの結果を生成するか、または他の関心のある質問に光を当てるために、更新された属性に基づいてレポートを生成することであり得る。別の例示的な動作は、更新された属性に基づいて、閲覧者に提示される様々な露出を調整することであり得る。いくつかの実装形態では、下流エンジン160は、出力データ155に含まれる残りの帰属のない結果を処理するように構成されたモデルオーケストレータ140を再び含む。
【0048】
いくつかの実装形態では、出力データ155は、モデルオーケストレータ140が現在の時間サイクル中に決定しない1つまたは複数の帰属のない結果145をさらに含むことができる。下流動作は、次の時間サイクル中のさらなる処理のために1つまたは複数の帰属のない結果145を、属性エンジン120a~nのうちの1つまたは複数あるいはモデルオーケストレータ140に提供することを含むことができる。
【0049】
図2は、例示的なシステムに含まれる例示的なモデルオーケストレータ200のブロック図である。例示的なモデルオーケストレータ200は、図1におけるモデルオーケストレータ140と同等であり得、この例示的なシステムは、図1の例示的なシステム100と同等であり得る。ここで、モデルオーケストレータ200のコンポーネントおよびモデルオーケストレータ200によって実行される動作について、より詳細に説明する。
【0050】
図2に示されるように、モデルオーケストレータ200は、要求210を受信して処理するように構成された要求プロセッサ220を含む。上記のように、要求210は、サービスのエンティティから、または様々な属性エンジン(たとえば、図1における属性エンジン120a~n)からのモデル出力240から受信することができる。いくつかの実装形態では、モデルオーケストレータ200によって実行される動作は、上記のように、要求によってトリガされる必要はない。要求プロセッサ220は、受信した様々なキューを記憶するためのデータ構造を含むことができる。たとえば、要求プロセッサ220は、キュー構造(たとえば、先入れ先出し(FIFO)キュー)を含むことができる。
【0051】
モデルオーケストレータ200は、構成データ215を受信するための構成エンジン230をさらに含む。構成データ215は、モデルオーケストレータ200に対して登録される1つまたは複数の属性エンジンを指定するデータを含むことができ、その結果、モデルオーケストレータは、帰属のない結果を処理するために、登録された属性エンジンからモデル出力を取得することになる。構成データ215は、モデル化された属性の更新された測定値を決定し、更新された測定値から露出をサンプリングするためのメカニズムを一般に指定する、モデルオーケストレータのためのスケジュールをさらに含むことができる。いくつかの実装形態では、構成データ215は、モデル化された属性のセットのサイズ、および/または登録されたすべての属性エンジンからの観察された属性とモデル化された属性とのグローバルしきい値比率(言い換えれば、グローバルキャッピング)を決定するキャッピング構成をさらに含むことができる。
【0052】
受信した要求210および構成データ215は、モデルオーケストレータ200のストレージ225に記憶することができる。いくつかの実装形態では、ストレージ225は、各ノードがストレージの複数のレプリカを有する分散データベースであり得る。このようにして、システムはハードウェアの誤動作による望ましくないデータの損失または損傷を回避することができる。
【0053】
モデルオーケストレータ200は、モデル出力240に基づいて帰属のない結果235を処理するための属性オプティマイザ250をさらに含む。モデル出力240は、モデルオーケストレータ200に対して登録された属性エンジンから取得される。モデル出力240は、それぞれのコンテンツチャネルのそれぞれの結果モデルによって生成された複数のモデル化された属性を含む。いくつかの実装形態では、モデル出力240はまた、属性エンジンによって処理されない、帰属のない結果を含むことができる。
【0054】
いくつかの実装形態では、モデル出力240は、モデル化された属性に対するサンプリング露出の要求を含むことができる。要求は、スコア付き経路、1つまたは複数のキャッピング構成、および/あるいは1つまたは複数の撤回要求を含むことができる。スコア付き経路は通常、1つまたは複数の露出とのユーザの対話またはアクティビティを表すデータ、および各露出についてサンプリングする結果の数を示すデータを指す。場合によっては、スコア付き経路は、結果に関連付けられるデータ、たとえば、結果がモデル化された属性であるか、または観察された属性であるかを示すデータ、結果が1つまたは複数の露出まで遡るデータを有するかどうか、結果がいつ完了したか、および/または結果に関連付けられる地理的位置をさらに含むことができる。キャッピング構成には、上記のグローバルキャッピング構成と同様に、各結果モデルのモデル化された属性と観察された属性の間のしきい値比率を表すデータ(すなわち、ローカルキャッピング)を含む。キャッピング構成は、露出およびコンテンツチャネルに関連付けられるデータ、たとえば露出またはキャンペーンのIDを表すデータ、および/またはデジタルコンテンツが閲覧者に提供されるデバイスを表すデータをさらに含む。
【0055】
いくつかの実装形態では、モデル出力240は、不正確なモデル化された属性、たとえば、モデルオーケストレータ200によって生成された更新された属性とは異なるモデル化された属性を撤回する要求をさらに含むことができる。モデル化された属性を撤回することの詳細は、以下で説明される。
【0056】
属性オプティマイザ250は、モデル化された属性の様々なセットにおけるそれぞれの測定値を取得するように構成され、モデル化された属性の各セットは、登録された属性エンジンからのそれぞれの結果モデルによって生成される。上記のように、モデル化された属性のセットの各測定値は、結果モデルのコンテンツチャネルを通じた露出に起因する結果の複数の尤度を含む確率分布を含むことができる。確率分布は、結果についてあらかじめ定められた露出のセットから露出をサンプリングするために、モデルオーケストレータ200によって使用され得る。
【0057】
属性結果に対する露出をサンプリングするための更新された測定値(たとえば、更新された確率分布)を生成するために、属性オプティマイザは、モデル化された属性の様々なセットからそれぞれの測定値を分析し、1つまたは複数の基準に基づいて1つまたは複数の測定値を調整または修正するかどうかを決定する。1つまたは複数の基準の例については、以下でより詳細に説明する。
【0058】
帰属のない結果235のセットのうちの帰属のない結果について、モデルオーケストレータ200は、帰属のない結果について属性動作を実行したそれぞれの結果モデルからモデル化された属性のセットを決定することができる。モデルオーケストレータ200は、モデル化された属性の選択されたセットのうちの1つまたは複数についてそれぞれの測定値を調整または修正する必要があるかどうかを決定するために、モデル化された属性のセットに関連付けられる情報を分析する。それぞれの測定値を調整または修正する必要があるとの決定に応答して、モデルオーケストレータ200は1つまたは複数の基準に基づいてそれぞれの測定値の値を修正する。
【0059】
たとえば、小売プラットフォームにおいて時計を購入した結果について、第1の結果モデルは、その結果が70%の確率で第1のチャネル(たとえば、検索エンジンのウェブページでの露出)に起因し、20%の確率で第2のチャネル(たとえば、ビデオストリーミングプラットフォームにおける露出)に起因すると決定する。第2の結果モデルは、同じ結果が55%の確率で第3のチャネル(たとえば、ソーシャルメッセージングプラットフォームにおける露出)に起因すると決定する。モデルオーケストレータ200は、2つの結果モデルからモデル化された属性の2つのセットを取得し、時計の購入の結果がどの露出とどのチャネルに起因するべきかを決定する。たとえば、モデルオーケストレータ200が、ユーザが時計に関連する情報を検索するために検索エンジンを使用しなかったこと、またはそのような情報の検索がしきい値の時間期間よりも長い時間期間前に実行されたことを示すデータを取得した場合、モデルオーケストレータ200は、70%の確率を、たとえば、30%、20%、5%、または他の適切な確率値に調整することができる。いくつかの実装形態では、モデルオーケストレータは、様々な結果モデルからの確率分布を均一にするか、再スケーリングすることができる。たとえば、上述の例を挙げると、モデルオーケストレータ200は、検索エンジンの確率を20%、ビデオストリーミングプラットフォームの確率を10%、ソーシャルメッセージングプラットフォームの確率を60%に再スケーリングすることができる。
【0060】
モデルオーケストレータ200は、更新された測定値に基づいて更新された属性を生成する。更新された各属性は、あらかじめ定められた露出のセットの対応する露出に起因する帰属のない結果のセットのそれぞれの帰属のない結果を示す。たとえば、モデルオーケストレータ200は、帰属のない結果が起因する露出として、更新された確率分布において最大の尤度を有する露出を選択することができる。あるいは、モデルオーケストレータ200は、しきい値確率値に従って結果について候補露出のグループを決定し、次いで、候補露出のグループのそれぞれのおそらく値に基づいて、結果に対する属性として候補露出のグループから1つの露出を選択することができる。別の例として、オーケストレータ200は、残りの帰属のない結果を最小限に抑えることができるように、帰属のない結果に対する露出を決定することができる。言い換えれば、オーケストレータ200は、更新された測定値に基づいて、帰属のない結果に対する可能な限り多くの露出を決定する。
【0061】
モデルオーケストレータ200は、停止点に到達するまで、様々な帰属のない結果に対して上記の動作を繰り返し実行することができる。停止点は、反復回数またはリアルタイム実行時間をしきい値と比較することによって決定することができる。反復回数またはリアルタイム実行時間がしきい値以上になると、モデルオーケストレータ200は、帰属のない結果235に対する更新された属性の生成を停止する。
【0062】
それぞれの測定値を更新するために使用される1つまたは複数の基準は、様々な属性要件に従って、ユーザ入力またはシステムの事前設定によって決定することができる。たとえば、1つまたは複数の基準を構成データ215において指定することができる。あるいは1つまたは複数の基準をストレージ225に記憶することができる。
【0063】
いくつかの実装形態では1つまたは複数の基準は、結果モデルの結果量しきい値を含むことができる。結果量は、通常、結果モデルに割り当てられた帰属のない結果と、帰属のない結果のセット全体の比率によって表され得る。たとえば、結果モデルに、属性を決定するためにあまりにも多くの帰属のない結果、たとえば、あらかじめ定められたしきい値を超える結果量が割り当てられている場合、モデルオーケストレータ200は、結果モデルのモデル化された結果におけるそれぞれの測定値の値を更新することになる。
【0064】
いくつかの実装形態では1つまたは複数の基準は、帰属のない結果に関連付けられる属性を含むことができる。帰属のない結果に関連付けられる属性は、帰属のない結果が完了する地理的位置を含むことができる。代替的または追加的に、属性は、帰属のない結果が完了したときの時間値を含むことができる。モデルオーケストレータ200は、結果がいつどこで完了したかを示すデータをモデル出力240から取得することと、時間値を、露出がユーザに提示される時間値と比較することと、および/または地理的位置を露出に関連付けられる地理的位置と比較することとを行うことができる。モデルオーケストレータ200は、比較結果に基づいて測定値の更新が必要かどうかを決定する。たとえば、米国カリフォルニア州の地理的位置に関連付けられる結果が、ドイツの位置に関連付けられる露出に起因すると考えられる可能性は低いかもしれない。それを考慮すると、モデルオーケストレータ200は、対応するモデル化された属性の測定値を更新することを決定する。別の例として、露出がユーザに提示される時点よりも前の時点において完了した結果は、その露出に起因すると考えられる可能性は低いかもしれない。それを考慮すると、モデルオーケストレータ200は、対応するモデル化された属性の測定値を更新することを決定する。
【0065】
いくつかの実装形態では1つまたは複数の基準は、帰属のない結果と、モデル化された属性によって予測される露出との間の類似度しきい値を含むことができる。モデルオーケストレータ200は、類似度しきい値と計算された類似値との比較に基づいて、測定値を更新するかどうかを決定することができる。たとえば、図1のシステム100またはモデルオーケストレータ200は、埋め込み空間における結果の特徴と露出との間の距離を決定することによって、帰属のない結果とモデル化された属性から予測される露出の類似度値を計算することができる。モデルオーケストレータ200は、モデル化された属性における測定値の更新が必要かどうかを決定するために、類似度値を類似度しきい値と比較することができる。例示的な類似性値は、ゼロから1までの範囲のパーセンテージとすることができ、ゼロは最も類似性が低いことを表し、1は最も類似しているか実質的に同じであることを表し、この場合、類似度しきい値は、0.75、0.9、0.95、または他の適切な類似度値とすることができる。
【0066】
いくつかの実装形態では1つまたは複数の基準は、属性付きの結果のセット内の残りの帰属のない結果のしきい値数または比率を含むことができる。しきい値は、様々な属性要求に従って決定することができる。たとえば、しきい値比率は10%、30%、50%、または他の適切な比率とすることができる。残りの帰属のない結果がしきい値以上である場合、モデルオーケストレータ200は、モデル化された属性の測定値を更新しないことを決定することができる。このようにして、モデルオーケストレータ200は、モデル化された属性が競合しない場合には不必要な更新を回避することができ、帰属のない結果がしきい値を下回る場合にはモデル化された属性における潜在的な競合を防ぐためにモデル化された属性の更新に頼ることができる。
【0067】
代替的または追加的に、上記の基準のうちの1つまたは複数は、属性結果のセット内の残りの帰属のない結果のしきい値数に依存する可能性がある。たとえば、残りの帰属のない結果の数が残りの帰属のない結果のしきい値数を満たす場合、モデルオーケストレータ200はモデル化された属性のパラメータを更新しない。別の例として、残りの帰属のない結果の数が残りの帰属のない結果のしきい値数を満たす場合、上記の基準の少なくとも1つが、モデルオーケストレータ200によって、異なる要件に従って異なる程度に緩和され得る。たとえば、類似度のしきい値は、元の類似度のしきい値の2倍にすることができる。
【0068】
モデルオーケストレータ200は、更新された属性と調和しないモデル化された属性を撤回するための撤回エンジン265をさらに含むことができる。たとえば、第1の結果の場合、更新された属性は、それが第1の露出に起因することを示し得る。しかしながら、結果モデルから以前にモデル化された属性は、第1の結果が第1の露出とは異なる第2の露出に起因することを示す。モデルオーケストレータ200は、上記のように、モデル化された属性を削除することもでき、結果と第2の露出との間の接続を削除することもできる。
【0069】
帰属のない結果235を処理した後、モデルオーケストレータ200は、下流動作に出力データを提供するように構成される。出力データは、更新された属性270と再トレースされたモデル化された属性275を含むことができる。更新された属性270は、属性サービスのエンティティのキャンペーンレポートを生成するために使用することができる。再トレースされたモデル化された属性275は、以前に生成されたレポートを修正するために使用することができ、および/または次の時間サイクルにおいて処理するためにモデルオーケストレータ200にフィードバックされる。
【0070】
図3は、帰属のない結果の属性を決定するための例示的なプロセスの流れ図である。便宜上、上述のプロセス300は1つまたは複数の場所に配置された1つまたは複数のコンピュータのシステムによって実行されるものとして説明する。たとえば、システム、たとえば図1の属性システム100の例は、適切にプログラムされており、プロセス300を実行することができる。
【0071】
まず、システムは、あらかじめ定められた露出のセットに対する帰属のない結果のセットの属性を決定するための要求を受信する。要求は、システムによって提供されるサービスを使用してエンティティから受信することができる。いくつかの実装形態では、要求は、複数の結果モデルによって生成されたモデル出力に含めることができる。いくつかの実装形態では、システムは、帰属のない結果について属性を決定するための動作を実行するための要求を受信する必要はない。
【0072】
システムは通常、要求に応じて出力を決定する。出力は1つまたは複数の帰属のない結果に対するモデル化された属性の1つまたは複数の更新に基づいて決定される。出力の生成の詳細については、以下で説明する。あらかじめ定められた露出のセットは、異なる結果モデルによって管理される様々なチャネルの露出を含む点に留意されたい、言い換えれば、システムは、対応するコンテンツチャネルにおけるすべての露出の全体像にわたって属性を決定する。
【0073】
システムは、帰属のない結果のセットを表す結果データを受信する(310)。上記のように、帰属のない結果のセットのうちの帰属のない結果は、あらかじめ定められた露出のセットのうちの露出に対する観察された属性を有していない。代替的または追加的に、帰属のない結果は、たとえば特定のプライバシポリシなどの様々な理由により、対応する露出を追跡する明確な経路を示すデータを有していない。
【0074】
システムは、複数の結果モデルの各結果モデルから、モデル化された属性のセットを表す属性データを受信する(320)。モデル化された属性のセットのうちのモデル化された属性は、あらかじめ定められた露出のセットのうちの露出に対する帰属のない結果の属性を示す。モデル化された属性のセットの各セットは、帰属のない結果のセットのうちの1つまたは複数とあらかじめ定められた露出のセットのうちの1つまたは複数との間のそれぞれの測定値を含む。モデル化された属性のセットの測定値は、露出のセットのうちの1つまたは複数の対応する露出に起因する1つまたは複数の帰属のない結果の1つまたは複数の尤度を示す確率分布を含むことができる。
【0075】
システムは1つまたは複数の基準に基づいて、複数の結果モデルから受信したモデル化された属性のセットにおけるそれぞれの測定値を更新する(330)。1つまたは複数の基準は、結果モデルの結果量しきい値、地理的位置などの帰属のない結果に関連付けられる属性、帰属のない結果と対応するモデル化された属性との間の類似度のしきい値、帰属のない結果のセットにおける残りの帰属のない結果のしきい値数、または他の適切な基準を含むことができる。例示的な基準の詳細は上で説明されている。
【0076】
システムは、更新されたそれぞれの測定値に基づいて1つまたは複数の更新された属性を決定する(340)。更新された各属性は、帰属のない結果のセットからのそれぞれの結果の、あらかじめ定められた露出のセットの対応する露出に対する新しい属性を示す。
【0077】
任意で、更新された属性を決定する際、システムは、更新された属性と矛盾するモデル化された属性を撤回することができる。撤回するために、システムは、以前に予測されたモデル化された属性を削除または無効にし、1つまたは複数の更新された属性に基づいて、モデル化された属性のセットの1つまたは複数のモデル化された属性を更新する。
【0078】
いくつかの実装形態では、システムは1つまたは複数の下流動作に対して1つまたは複数の更新された属性を提供することができる。例示的な下流動作は、属性サービスに加入しているエンティティの更新された属性に基づいて1つまたは複数のレポートを生成することを含むことができる。任意で、システムによって生成された出力は、依然として1つまたは複数の帰属のない結果を含むことができ、これらの帰属のない結果は、次の時間サイクルにおいて処理するためにシステムに戻すことができる。
【0079】
いくつかの実装形態では、システムは1つまたは複数の更新された属性に基づいて1つまたは複数の属性レポートを生成することができる。レポートは、以前に帰属のない結果について新たに決定された属性、上流のコンバージョンモデルによってモデル化された結果属性について新たに更新または変更された属性、および/またはモデルオーケストレータから出力された残りの帰属のない結果に関する情報を含むことができる。レポートは、たとえば、デジタル図、チャート、表、画像、オーディオ、ビデオ、あるいは別のモジュールに送信される、紙に印刷される、またはディスプレイに表示される他の適切な形態を有するデジタルデータなどの、任意の適切な形態にすることができる。
【0080】
いくつかの実装形態では、システムは1つまたは複数の更新された属性に基づいて、クライアントデバイスに提供されるデジタルコンテンツを決定することができる。システムは、デジタルコンテンツを含むデータを、表示のためにクライアントデバイスのディスプレイにさらに提供することができる。あるいは、システムは、上記のように、属性付きレポートに基づいてデジタルコンテンツを決定し、クライアントデバイスに提供することができる。
【0081】
図4は、例示的なコンピュータシステム400のブロック図である。例示的なコンピュータシステム400は、上述の動作を実行するために使用することができる。システム400は、プロセッサ410、メモリ420、ストレージデバイス430、および入力/出力デバイス440を含む。コンポーネント410、420、430、および440の各々は、たとえばシステムバス450を使用して相互接続することができる。プロセッサ410は、システム400内で実行するための命令を処理することができる。いくつかの実装形態では、プロセッサ410はシングルスレッドプロセッサである。別の実装形態では、プロセッサ410はマルチスレッドプロセッサである。プロセッサ410は、メモリ420またはストレージデバイス430に記憶された命令を処理することができる。
【0082】
メモリ420は、システム400内に情報を記憶する。一実装形態では、メモリ420はコンピュータ可読媒体である。いくつかの実装形態では、メモリ420は揮発性メモリユニットである。別の実装形態では、メモリ420は不揮発性メモリユニットである。
【0083】
ストレージデバイス430は、システム400に大容量ストレージを提供することができる。いくつかの実装形態では、ストレージデバイス430はコンピュータ可読媒体である。様々な異なる実装形態では、ストレージデバイス430は、たとえば、ハードディスクデバイス、光ディスクデバイス、複数のコンピューティングデバイスによってネットワーク上で共有されるストレージデバイス(たとえば、クラウドストレージデバイス)、または何らかの他の大容量ストレージデバイスを含むことができる。
【0084】
入力/出力デバイス440は、システム400に対する入力/出力動作を提供する。いくつかの実装形態では、入力/出力デバイス440は、ネットワークインターフェースデバイス、たとえばイーサネットカード、シリアル通信デバイス、たとえばRS-232ポート、および/またはワイヤレスインターフェースデバイス、たとえば802.11カードのうちの1つまたは複数を含むことができる。別の実装形態では、入力/出力デバイスは、入力データを受信し、出力データを外部デバイス860、たとえばキーボード、プリンタ、およびディスプレイデバイスに送信するように構成されたドライバデバイスを含むことができる。しかしながら、モバイルコンピューティングデバイス、モバイル通信デバイス、セットトップボックステレビクライアントデバイスなどの他の実装形態を使用することもできる。
【0085】
例示的な処理システムが図1に記載されているが、本明細書で説明される主題の実装形態および機能動作は、他のタイプのデジタル電子回路において、あるいは本明細書で開示される構造およびそれらの構造的等価物を含むコンピュータソフトウェア、ファームウェア、またはハードウェア、あるいはそれらの1つまたは複数の組合せにおいて実装することができる。
【0086】
本明細書で説明される主題および動作の実施形態は、デジタル電子回路において、あるいは本明細書で開示される構造およびそれらの構造的等価物を含むコンピュータソフトウェア、ファームウェア、またはハードウェア、あるいはそれらの1つまたは複数の組合せにおいて実装することができる。本明細書で説明される主題の実施形態は、データ処理装置による実行のため、またはデータ処理装置の動作を制御するために、コンピュータ記憶媒体(または1つのコンピュータ記憶媒体)上に符号化された1つまたは複数のコンピュータプログラム、すなわち、コンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。代替的または追加的に、プログラム命令は、データ処理装置による実行のために適切なレシーバ装置に送信するための情報を符号化するために生成される、人工的に生成された伝播信号、たとえば機械生成された電気信号、光信号、または電磁信号上に符号化することができる。コンピュータ記憶媒体は、コンピュータ可読ストレージデバイス、コンピュータ可読ストレージ基板、ランダムアクセスメモリアレイまたはシリアルアクセスメモリアレイまたはデバイス、あるいはそれらの1つまたは複数の組合せであってもよく、それらに含まれてもよい。さらに、コンピュータ記憶媒体は伝播信号ではないが、コンピュータ記憶媒体は、人工的に生成された伝播信号内に符号化されたコンピュータプログラム命令の送信元または送信先となる可能性がある。コンピュータ記憶媒体は1つまたは複数の別個の物理コンポーネントあるいは媒体(たとえば、複数のCD、ディスク、または他のストレージデバイス)であってもよく、それらに含まれてもよい。
【0087】
本明細書で説明される動作は1つまたは複数のコンピュータ可読ストレージデバイスに記憶されたデータ、または他のソースから受信したデータに対してデータ処理装置によって実行される動作として実装することができる。
【0088】
「データ処理装置」という用語は、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップ、またはそれらの複数のもの、あるいは組合せを含む、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。装置は、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。装置はまた、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、またはそれらの1つまたは複数の組合せを構成するコードを含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラストラクチャなどの、様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
【0089】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイラ型言語またはインタープリタ型言語、宣言型言語または手続き型言語を含む、あらゆる形態のプログラミング言語で記述することができ、スタンドアロンプログラムとして、またはコンピューティング環境における使用に適したモジュール、コンポーネント、サブルーチン、オブジェクト、または他のユニットとしてなどを含む、あらゆる形態で展開することができる。コンピュータプログラムは、ファイルシステム内のファイルに対応する場合があるが、対応する必要はない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(たとえば、マークアップ言語ドキュメントに記憶された1つまたは複数のスクリプト)、問題のプログラム専用の単一ファイル、あるいは複数の調整されたファイル(たとえば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を記憶するファイル)に記憶することができる。コンピュータプログラムは1台のコンピュータ、または1つのサイトに配置されている複数のコンピュータ、または複数のサイトに分散されて通信ネットワークによって相互接続されている複数のコンピュータ上で実行されるように展開することができる。
【0090】
本明細書で説明するプロセスおよび論理フローは、入力データを動作して出力を生成することによってアクションを実行するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行することができる。プロセスおよび論理フローはまた、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの専用論理回路によって実行することもでき、装置をそれらとして実装することもできる。
【0091】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方を含む。一般に、プロセッサは、読取り専用メモリ、またはランダムアクセスメモリ、あるいはその両方から命令とデータを受信する。コンピュータの重要な要素は、命令に従ってアクションを実行するためのプロセッサと、命令とデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量ストレージデバイス、たとえば、磁気、光磁気ディスク、または光ディスクを含むか、またはそれらからデータを受信するか、またはそれらにデータを転送するために、あるいはその両方のために動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを有している必要はない。さらに、コンピュータは、ほんの数例を挙げると、たとえばモバイル電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲーム機、全地球測位システム(GPS)レシーバ、ポータブルストレージデバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)などの別のデバイスに組み込むこともできる。コンピュータプログラム命令およびデータを記憶するために適したデバイスは、例として、EPROM、EEPROM、フラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含む、あらゆる形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサとメモリは、専用論理回路によって補完されたり、専用論理回路に組み込んだりすることができる。
【0092】
ユーザとの対話を提供するために、本明細書で説明する主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ、ならびにユーザがコンピュータに入力を提供できるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールを有するコンピュータ上で実装することができる。ユーザとの対話を提供するために、他の種類のデバイスを使用することもでき、たとえば、ユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックなど、任意の形態の感覚的フィードバックとすることができ、ユーザからの入力は、音響、音声、または触覚入力を含む、任意の形態で受信することができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって、たとえば、ウェブブラウザから受信した要求に応じて、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
【0093】
本明細書で説明する主題の実施形態は、たとえばデータサーバとしてバックエンドコンポーネントを含む、あるいは、たとえばアプリケーションサーバとしてミドルウェアコンポーネントを含む、あるいは、フロントエンドコンポーネント、たとえば、ユーザが本明細書で説明されている主題の実装形態と対話することができる、グラフィカルユーザインターフェースまたはウェブブラウザを備えたクライアントコンピュータ、あるいは1つまたは複数のバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムにおいて実装することができる。システムのコンポーネントは、デジタルデータ通信の任意の形態または媒体、たとえば通信ネットワークによって相互接続することができる。例示的な通信ネットワークは、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(たとえば、インターネット)、およびピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)を含む。
【0094】
コンピューティングシステムはクライアントとサーバを含むことができる。クライアントとサーバは通常、互いに遠隔にあり、通常は通信ネットワークを通じて対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、相互にクライアントとサーバの関係を有するコンピュータプログラムによって発生する。いくつかの実施形態では、サーバは、データ(たとえば、HTMLページ)をクライアントデバイスに送信する(たとえば、データを表示し、クライアントデバイスと対話するユーザからのユーザ入力を受信する目的で)。クライアントデバイスにおいて生成されたデータ(たとえば、ユーザ対話の結果)は、クライアントデバイスからサーバにおいて受信することができる。
【0095】
本明細書には多くの特定の実装形態の詳細が含まれているが、これらは発明の範囲または特許請求の対象の範囲を限定するものとして解釈されるべきではなく、特定の発明の特定の実施形態に特有の特徴の説明として解釈されるべきである。本明細書において別個の実施形態の文脈に関連して説明される特定の特徴は、単一の実施形態において組み合わせて実装することもできる。逆に、単一の実施形態の文脈において説明される様々な特徴は、複数の実施形態において個別に、または任意の適切なサブコンビネーションにおいて実装することもできる。さらに、特徴が特定の組合せにおいて作用するものとして上で説明され、最初にそのように特許請求されている場合もあるが、場合によっては、請求された組合せからの1つまたは複数の特徴が組合せから削除され、請求された組合せがサブコンビネーションまたはサブコンビネーションのバリエーションを対象とする場合がある
【0096】
同様に、動作は特定の順序で図面に示されているが、これは、所望の結果を達成するために、そのような動作が示された特定の順序または連続した順序で実行されること、あるいは図示されたすべての動作が実行されることを必要とするものとして理解されるべきではない。特定の状況では、マルチタスクと並列処理が有利な場合がある。さらに、上述の実施形態における様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されたプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品に統合することも、複数のソフトウェア製品にパッケージ化することもできることを理解されたい。
【0097】
上記で説明した実施形態に加えて、以下の例も革新的である。
【0098】
例1は、1つまたは複数のプロセッサを含むモデルオーケストレータによって、帰属のない結果のセットを表す結果データを受信するステップであって、帰属のない結果のセットのうちの帰属のない結果が、あらかじめ定められた露出のセットのうちの露出に対する観察された属性を有していない、ステップと、モデルオーケストレータによって、複数の結果モデルの各結果モデルからモデル化された属性のセットを表す属性データを受信するステップであって、モデル化された属性のセットの各セットが、帰属のない結果のセットのうちの1つまたは複数とあらかじめ定められた露出のセットのうちの1つまたは複数との間のそれぞれの測定値を備える、ステップと、1つまたは複数の基準に基づいて、複数の結果モデルから受信したモデル化された属性のセットにおけるそれぞれの測定値を更新するステップと、更新されたそれぞれの測定値に基づいて1つまたは複数の更新された属性を決定するステップであって、更新された各属性は、帰属のない結果のセットからのそれぞれの結果の、あらかじめ定められた露出のセットの対応する露出に対する新しい属性を示す、ステップとを備える方法である。
【0099】
例2は例1の方法であり、モデル化された属性のセットのうちのモデル化された属性は、あらかじめ定められた露出のセットのうちの露出に対する帰属のない結果の属性を示す。
【0100】
例3は例1または2の方法であり、1つまたは複数の更新された属性に基づいて、モデル化された属性のセットの1つまたは複数のモデル化された属性を更新するステップをさらに備え、更新するステップは、対応する結果がモデル化された属性によって示される露出に起因しないように、モデル化された属性を撤回するステップを備える。
【0101】
例4は、例1~3のいずれか1つの方法であり、少なくとも1つまたは複数の更新された属性に基づいてレポートを生成する1つまたは複数の下流動作に対して1つまたは複数の更新された属性を提供するステップをさらに備える。
【0102】
例5は、例1~4のいずれか1つの方法であり、1つまたは複数の更新された属性に基づいて属性レポートを生成するステップをさらに備える。
【0103】
例6は、例1~5のいずれか1つの方法であり、1つまたは複数の更新された属性に基づいて、クライアントデバイスに提供されるデジタルコンテンツを決定するステップと、デジタルコンテンツを含むデータをクライアントデバイスに送信するステップとをさらに備える。
【0104】
例7は、例1~6のいずれか1つの方法であり、帰属のない結果のセットのうちの1つまたは複数とあらかじめ定められた露出のセットのうちの1つまたは複数との間のそれぞれの測定値が、帰属のない結果が1つまたは複数の対応する露出に起因する尤度を示す確率分布を備える。
【0105】
例8は、例1~7のいずれか1つの方法であり、帰属のない結果のセットのうちの1つまたは複数とあらかじめ定められた露出のセットのうちの1つまたは複数との間のそれぞれの測定値が、1つまたは複数の帰属のない結果が対応する露出に起因する尤度を示す確率分布を備える。
【0106】
例9は、例1~8のいずれか1つの方法であり、1つまたは複数の基準に基づいてモデル化された属性のセット内のそれぞれの測定値を更新するステップは、帰属のない結果のセットのうちの帰属のない結果の場合、複数の結果モデルのうちの1つまたは複数からモデル化された属性のセットを選択するステップであって、モデル化された属性の選択されたセットの各々が、帰属のない結果に対するそれぞれの測定値を備える、ステップと、複数の結果モデルのうちの1つまたは複数の各々から、帰属のない結果に対する測定値のそれぞれの値を取得するステップと、1つまたは複数の基準に基づいて、帰属のない結果に対する測定値のそれぞれの値を修正するステップとを備える。
【0107】
例10は、例1~9のいずれか1つの方法であり、1つまたは複数の基準は、結果モデルの結果量しきい値、帰属のない結果に関連付けられる属性、帰属のない結果とモデル化された属性によって予測される対応する露出との間の類似度しきい値、あるいは帰属のない結果のセットにおける残りの帰属のない結果のしきい値数の少なくとも1つまたは複数を備える。
【0108】
例11は、例10の方法であり、属性は、帰属のない結果に関連付けられる地理的位置である。
【0109】
例12は、例1~11のいずれか1つの方法であり、あらかじめ定められた露出のセットに対する帰属のない結果のセットの属性を決定するための要求をエンティティから受信するステップと、要求の受信に応答して、要求に対応する1つまたは複数の更新された属性に基づいて出力を生成するステップとをさらに備える。
【0110】
例13は、1つまたは複数のコンピュータと、1つまたは複数のコンピュータによって実行されると、1つまたは複数のコンピュータに、実施形態1から12のいずれか1つの方法を実行させるように動作可能な命令を記憶する1つまたは複数のストレージデバイスとを備えるシステムである。
【0111】
例14は、コンピュータプログラムを用いて符号化されたコンピュータ記憶媒体であり、プログラムは、データ処理装置によって実行されると、データ処理装置に、実施形態1から12のいずれか1つの方法を実行させるように動作可能な命令を備える。
【0112】
以上、主題の特定の実施形態について説明した。他の実施形態は、以下の特許請求の範囲内に含まれる。場合によっては、特許請求の範囲に記載されているアクションを異なる順序で実行しても、依然として所望の結果を達成することができる。さらに、添付の図面に示されているプロセスは、所望の結果を達成するために、必ずしも示されている特定の順序、または連続した順序を必要とするわけではない。特定の実装形態では、マルチタスクと並列処理が有利な場合がある。
【符号の説明】
【0113】
100 システム
110 観察データ
120a~n 属性エンジン
120a 第1の属性エンジン
120b 第2の属性エンジン
120d 属性エンジン
120e 属性エンジン
120m 属性エンジン
120n 第nの属性エンジン
130a~n 結果モデル
130a 結果モデル
130d 結果モデル
130e 結果モデル
135a~n モデル出力
140 モデルオーケストレータ
145 帰属のない結果
150 要求
155 出力データ
160 下流エンジン
200 モデルオーケストレータ
210 要求
215 構成データ
220 要求プロセッサ
225 ストレージ
230 構成エンジン
235 帰属のない結果
240 モデル出力
250 属性オプティマイザ
265 撤回エンジン
270 更新された属性
275 再トレースされたモデル化された属性
300 プロセス
400 コンピュータシステム
410 プロセッサ
420 メモリ
430 ストレージデバイス
440 入力/出力デバイス
450 システムバス
図1
図2
図3
図4
【手続補正書】
【提出日】2023-10-30
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
1つまたは複数のプロセッサを含むモデルオーケストレータによって、帰属のない結果のセットを表す結果データを受信するステップであって、帰属のない結果の前記セットのうちの帰属のない結果が、あらかじめ定められた露出のセットのうちの露出に対する観察された属性を有していない、ステップと、
前記モデルオーケストレータによって、複数の結果モデルの各結果モデルからモデル化された属性のセットを表す属性データを受信するステップであって、モデル化された属性の前記セットの各セットが、帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間のそれぞれの測定値を備える、ステップと、
1つまたは複数の基準に基づいて、前記複数の結果モデルから受信したモデル化された属性の前記セットにおける前記それぞれの測定値を更新するステップと、
前記更新されたそれぞれの測定値に基づいて1つまたは複数の更新された属性を決定するステップであって、更新された各属性は、帰属のない結果の前記セットからのそれぞれの結果の、あらかじめ定められた露出の前記セットの対応する露出に対する新しい属性を示す、ステップと
を備える、コンピュータ実装方法。
【請求項2】
モデル化された属性の前記セットのうちのモデル化された属性が、あらかじめ定められた露出の前記セットのうちの露出に対する帰属のない結果の属性を示す、請求項1に記載の方法。
【請求項3】
前記1つまたは複数の更新された属性に基づいて、モデル化された属性の前記セットのうちの1つまたは複数のモデル化された属性を更新するステップをさらに備え、更新する前記ステップが、対応する結果が前記モデル化された属性によって示される露出に起因しないように、モデル化された属性を撤回するステップを備える、請求項1に記載の方法。
【請求項4】
少なくとも前記1つまたは複数の更新された属性に基づいてレポートを生成する1つまたは複数の下流動作に対して前記1つまたは複数の更新された属性を提供するステップをさらに備える、請求項1に記載の方法。
【請求項5】
前記1つまたは複数の更新された属性に基づいて属性レポートを生成するステップをさらに備える、請求項1に記載の方法。
【請求項6】
前記1つまたは複数の更新された属性に基づいて、クライアントデバイスに提供されるデジタルコンテンツを決定するステップと、
前記デジタルコンテンツを含むデータを前記クライアントデバイスに送信するステップと
をさらに備える、請求項1に記載の方法。
【請求項7】
帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間の前記それぞれの測定値が、帰属のない結果が1つまたは複数の対応する露出に起因する尤度を示す確率分布を備える、請求項1に記載の方法。
【請求項8】
帰属のない結果の前記セットのうちの1つまたは複数とあらかじめ定められた露出の前記セットのうちの1つまたは複数との間の前記それぞれの測定値が、1つまたは複数の帰属のない結果が対応する露出に起因する尤度を示す確率分布を備える、請求項1に記載の方法。
【請求項9】
前記1つまたは複数の基準に基づいてモデル化された属性の前記セット内の前記それぞれの測定値を更新するステップが、
帰属のない結果の前記セットのうちの帰属のない結果の場合、前記複数の結果モデルのうちの1つまたは複数からモデル化された属性のセットを選択するステップであって、モデル化された属性の前記選択されたセットの各々が、前記帰属のない結果に対する前記それぞれの測定値を備える、ステップと、
前記複数の結果モデルのうちの前記1つまたは複数の各々から、前記帰属のない結果の前記測定値のそれぞれの値を取得するステップと、
前記1つまたは複数の基準に基づいて、前記帰属のない結果に対する前記測定値の前記それぞれの値を修正するステップと
を備える、請求項1に記載の方法。
【請求項10】
前記1つまたは複数の基準が、結果モデルの結果量しきい値、帰属のない結果に関連付けられる属性、帰属のない結果とモデル化された属性によって予測される対応する露出との間の類似度しきい値、あるいは帰属のない結果の前記セットにおける残りの帰属のない結果のしきい値数の少なくとも1つまたは複数を備える、請求項1に記載の方法。
【請求項11】
前記属性が、前記帰属のない結果に関連付けられる地理的位置である、請求項10に記載の方法。
【請求項12】
あらかじめ定められた露出の前記セットに対する帰属のない結果の前記セットの属性を決定するための要求をエンティティから受信するステップと、
前記要求の受信に応答して、前記要求に対応する前記1つまたは複数の更新された属性に基づいて出力を生成するステップと
をさらに備える、請求項1に記載の方法。
【請求項13】
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、請求項1から12のいずれか一項に記載の方法を実行させるように動作可能な命令を記憶する1つまたは複数のストレージデバイスとを備える、システム。
【請求項14】
コンピュータプログラムを用いて符号化されたコンピュータ記憶媒体であって、前記コンピュータプログラムが、データ処理装置によって実行されると、前記データ処理装置に、請求項1から12のいずれか一項に記載の方法を実行させるように動作可能な命令を備える、コンピュータ記憶媒体。
【国際調査報告】