(57)【特許請求の範囲】
【請求項１】
クライアント・デバイス上でアプリケーションを実行することにより、オンライン・システムにより提供された広告を重ねて表示するのに適したアプリケーションを介して提示される仮想環境におけるオブジェクトの表面を識別する工程と、
前記アプリケーションによって、前記仮想環境を閲覧するユーザを識別する情報を取得する工程と、
前記広告を求める要求を、前記オンライン・システムに送信する工程であって、前記要求が、前記オンライン・システムに対して前記ユーザを識別する情報を含む、工程と、
前記要求に応答して前記オンライン・システムから前記広告を受け取る工程と、
前記広告を識別済み表面に重ねて表示することによって、受け取った広告を提示する工程と、
前記アプリケーション内で前記ユーザに見える広告のコンテンツ量を決定する工程と、
前記仮想環境における前記オブジェクトと前記ユーザとの距離に基づいて、前記ユーザに見えるコンテンツ量のしきい値を決定する工程であって、当該しきい値は、前記距離が離れるほど大きくなるものである、工程と、
前記ユーザに見える前記広告の前記コンテンツ量が前記しきい値を超える持続時間を決定する工程と、
決定された持続時間を記述する捕捉した情報を前記オンライン・システムに送信する工程と、
を備える、方法。
【請求項２】
前記アプリケーション内で前記ユーザに見える広告のコンテンツ量を決定する工程が、前記アプリケーション内で前記ユーザに見える広告のコンテンツの割合を決定することを含む、請求項１に記載の方法。
【請求項３】
受け取った前記広告の提示を中止する工程と、
受け取った前記広告の前記提示の中止を記述する情報を前記オンライン・システムに送信する工程と、
をさらに備える、請求項１に記載の方法。
【請求項４】
受け取った前記広告の前記提示の中止を記述する情報を前記オンライン・システムに送信する工程は、
受け取った前記アプリケーションの提示を中止した時刻を前記オンライン・システムに送信する工程を含む、請求項３に記載の方法。
【請求項５】
前記要求は、前記広告を提示するべき前記アプリケーションのコンテキストを記述する情報をさらに含む、請求項１に記載の方法。
【請求項６】
前記広告を提示するべき前記アプリケーションの前記コンテキストを記述する前記情報は、ディスプレイからのコンテンツを前記クライアント・デバイスが提示する解像度、前記広告を提示することが可能な前記コンテンツのアスペクト比、前記コンテンツの色、前記広告を提示することが可能な前記コンテンツと併せて前記アプリケーションが提示する追加コンテンツ、およびこれらの任意の組み合わせからなる群から選択される１以上を含む、請求項５に記載の方法。
【請求項７】
前記要求は１以上のトピックをさらに含み、少なくとも１つのトピックは、前記アプリケーションを使用する際の前記ユーザのコンテキストに少なくとも部分的に基づく、請求項５に記載の方法。
【請求項８】
前記アプリケーションは前記クライアント・デバイス上で実行されるゲームを含む、請求項１に記載の方法。
【請求項９】
前記オブジェクトは、ゲームを通じて前記ユーザに提示される、請求項７に記載の方法。
【請求項１０】
命令がその上に符号化されている非一時的なコンピュータ可読記憶媒体を備えるコンピュータ・プログラム製品であって、前記命令は、プロセッサによって実行されたとき、前記プロセッサに、
クライアント・デバイス上でアプリケーションを実行することにより、オンライン・システムにより提供された広告を重ねて表示するのに適したアプリケーションを介して提示される仮想環境におけるオブジェクトの表面を識別することと、
前記アプリケーションによって、前記仮想環境を閲覧するユーザを識別する情報を取得することと、
前記広告を求める要求を、前記オンライン・システムに送信することと、ここで前記要求は、前記オンライン・システムに対して前記ユーザを識別する情報を含むものであり、
前記要求に応答して前記オンライン・システムから前記広告を受け取ることと、
前記広告を識別済み表面に重ねて表示することによって、受け取った広告を提示することと、
前記アプリケーション内で前記ユーザに見える広告のコンテンツ量を決定することと、
前記仮想環境における前記オブジェクトと前記ユーザとの距離に基づいて、前記ユーザに見えるコンテンツ量のしきい値を決定することであって、ここで当該しきい値は、前記距離が離れるほど大きくなるものであり、
前記ユーザに見える前記広告の前記コンテンツ量が前記しきい値を超える持続時間を決定することと、
決定された持続時間を記述する捕捉した情報を前記オンライン・システムに送信することと、
を行わせる、コンピュータ・プログラム製品。
【請求項１１】
前記アプリケーション内で前記ユーザに見える広告のコンテンツ量を決定することを行わせる命令は、前記プロセッサによって実行されたとき、前記プロセッサに、
前記アプリケーション内で前記ユーザに見える広告のコンテンツの割合を決定することを行わせる命令を含む、請求項１０に記載のコンピュータ・プログラム製品。
【請求項１２】
前記コンピュータ可読記憶媒体は、前記プロセッサによって実行されたときに、前記プロセッサに、
受け取った前記広告の提示を中止する工程と、
受け取った前記広告の前記提示の中止を記述する情報を前記オンライン・システムに送信する工程と、
を行わせる命令をその上にさらに符号化している、請求項１０に記載のコンピュータ・プログラム製品。
【請求項１３】
前記要求は、前記広告を提示するべき前記アプリケーションのコンテキストを記述する情報をさらに含む、請求項１０に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にはオンライン・システムに関し、より具体的には、クライアント・デバイス上で実行されるアプリケーションによって提示されるコンテンツを通じて、オンライン・システムからのコンテンツを、アプリケーションからのコンテンツとともに提示することの捕捉に関する。
【背景技術】
【０００２】
ソーシャル・ネットワーキング・システムなどのオンライン・システムは、ユーザがオンライン・システムの他のユーザとつながり、これらと通信することを可能にする。ユーザは、自身の識別に結びつけられるとともに関心や人口統計学的情報などのユーザに関する情報を含むプロフィールを、オンライン・システム上に作成する。ユーザは、個人であっても、または法人もしくは慈善団体などのエンティティであってもよい。ユーザにオンライン・システムとの対話を促すために、オンライン・システムによって、コンテンツ・アイテムがさまざまなユーザに提示される。
【０００３】
ソーシャル・ネットワーキング・システムなどのオンライン・システムの人気の高まりにより、エンティティ（例、企業）が製品もしくはサービスに対する世間の注目を集めること、または、エンティティがオンライン・システムを通じて提供する製品もしくはサービスに関してオンライン・システムのユーザにアクションを起こさせることが可能になる。たとえば、エンティティ（例、企業）は、製品もしくはサービスに対する世間の注目を集めるために、または、そのエンティティが提供する製品もしくはサービスに関してオンライン・システムのユーザにアクションを起こさせるために、オンライン・システムのユーザにコンテンツ・アイテムを提示する。多くのオンライン・システムは、エンティティによってオンライン・システムのユーザに提供される一定のタイプのコンテンツ・アイテムを提示することに対して、エンティティから報酬を受け取ることがある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
さらに、オンライン・システムのユーザは、クライアント・デバイス上で実行されるさまざまなアプリケーションからコンテンツを提示されることがしばしばある。たとえば、クライアント・デバイス上で実行されるアプリケーションは、あるソースからコンテンツを取り出し、そのソースからのコンテンツを、クライアント・デバイスを通じてユーザに提示する。しかし、従来の多くのクライアント・デバイスは一度に１つのアプリケーションからのコンテンツしか提示しないので、ユーザは、異なるソースからのコンテンツを閲覧するために、異なるアプリケーション間を移動させられる。たとえば、アプリケーションは、あるサードパーティ・システムに基づいてコンテンツを提示するが、そのサードパーティ・システム以外のオンライン・システムからのコンテンツを提示しない。このため、ユーザは、異なるソースからのコンテンツにアクセスするために、クライアント・デバイス上で実行される異なるアプリケーション間を移動させられ、ユーザがオンライン・システムからコンテンツにアクセスする複雑さが増し、ユーザがオンライン・システムからコンテンツを提示される可能性が減り得る。
【課題を解決するための手段】
【０００５】
オンライン・システムのユーザは、ユーザに関連付けられているクライアント・デバイス上で実行される１つまたは複数のアプリケーションを通じて、コンテンツを受け取る。アプリケーションは、サードパーティ・システムまたはオンライン・システムからコンテンツを受け取り、クライアント・デバイスを通じてそのコンテンツをユーザに提示することができる。オンライン・システムは、クライアント・デバイス上で実行されたときにユーザにコンテンツを提示するアプリケーションを提供するエンティティに、命令を提供する。さまざまな実施形態において、オンライン・システムは、アプリケーションを提供するエンティティに、命令を含むソフトウェア開発キット（ＳＤＫ：ｓｏｆｔｗａｒｅ  ｄｅｖｅｌｏｐｍｅｎｔ  ｋｉｔ）を提供し、ＳＤＫからの命令が、アプリケーションに含められる。そのため、アプリケーションがクライアント・デバイス上で実行されたときに、ＳＤＫからの命令が、クライアント・デバイスによって実行される。命令は、広告など、オンライン・システムからのコンテンツ・アイテムをユーザに提示することが可能な、アプリケーション内のコンテンツを識別する。たとえば、アプリケーションがゲームである場合、クライアント・デバイス上でゲームが実行されているときに命令を実行すると、オンライン・システムからのコンテンツ・アイテムを提示することが可能な、ゲームによって提示される１つまたは複数のオブジェクトが識別される。命令は、特定の特性（例、サイズ、形状、色、他のオブジェクトに対するロケーション）を有するオブジェクトなど、アプリケーションによって提示されるさまざまなタイプのオブジェクトを識別することができる。たとえば、アプリケーションがさまざまなオブジェクトを提示する場合、アプリケーションで命令を実行すると、アプリケーションのバックグラウンドに提示されるオブジェクト、または提示されたときに一定の寸法を有するオブジェクトが識別される。特定の例では、命令の実行は、アプリケーションによって提示されたときに、少なくとも１つの平面または矩形面を有し、アプリケーションのバックグラウンドに提示されるオブジェクトを識別する。
【０００６】
命令の実行が、オンライン・システムからのコンテンツ・アイテムを提示することが可能な、アプリケーションによって提示されるコンテンツを識別する場合、アプリケーションは、オンライン・システムにコンテンツを要求する。要求は、オンライン・システムに対してクライアント・デバイスのユーザを識別する情報を含む。たとえば、アプリケーションは、アプリケーションによって、またはアプリケーションに関連付けられているエンティティ（例、サードパーティ・システム）によって記憶されている情報を取り出し、取り出した情報（例、人口統計学的情報、アプリケーション１１５との過去の対話、ユーザの関心、等）を要求に含める。さらに、要求は、オンライン・システムからのコンテンツを提示するべきアプリケーションのコンテキストを記述する情報を含む。アプリケーションのコンテキストは、アプリケーションとのユーザの過去の対話、アプリケーションが以前にユーザに提示したコンテンツ、アプリケーションがユーザに関連付けているデータ、またはアプリケーションにおけるユーザの状態を記述する他の適切な情報に基づくことができる。たとえば、要求は、１つまたは複数のトピックを含む。アプリケーションのコンテンツを提示するべき異なるコンテキストの異なるトピックを、さまざまなトピックに関連付けることができる。オンライン・システムからのコンテンツを提示するべきアプリケーションのコンテキストは、オンライン・システムからのコンテンツがアプリケーションを通じてどのように提示されるべきかに基づくことができる。たとえば、要求は、アプリケーションの１つまたは複数の表示特性を記述する情報（例、アプリケーションからのコンテンツをクライアント・デバイスが表示する解像度、広告を提示することが可能な、アプリケーションによって提示されるコンテンツのアスペクト比、広告を提示することが可能な、アプリケーションによって提示されるコンテンツの色、アプリケーションによって提示される追加コンテンツ）を含む。
【０００７】
オンライン・システムによって選択されたコンテンツ・アイテムをアプリケーションが受け取るとき、オンライン・システムによって提供される命令を実行することは、オンライン・システムからのコンテンツを提示することが可能な、アプリケーションによって提示される識別済みコンテンツがいつユーザに提示されるのかをアプリケーションに決定させる。さまざまな実施形態において、オンライン・システムからの命令を実行することは、コンテンツ・アイテムを提示することが可能な識別済みコンテンツの、少なくともしきい値量が、いつアプリケーション内のユーザの視界に入っているのかを決定する。アプリケーション内のユーザの視界とは、現時点でクライアント・デバイスを通じてアプリケーションがユーザに提示するコンテンツである。たとえば、オンライン・システムからの命令を実行することは、識別済みコンテンツの少なくとも５０％が、いつアプリケーションによってユーザに提示されているのかを決定する。オンライン・システムからのコンテンツを提示することが可能な識別済みコンテンツのしきい値量は、識別済みコンテンツの割合であってもよく、または指定量であってもよい。異なるタイプの識別済みコンテンツには、（ユーザに提示されているときに）識別済みコンテンツがユーザに提示されているとの決定をさせる異なるしきい値量を関連付けることができる。たとえば、アプリケーションがゲームである場合、ゲームによってユーザの近くに提示されるオブジェクトは、ゲームが少量のオブジェクトを提示するときにはそのオブジェクトがユーザに提示されていると決定される一方で、ゲームによってユーザの遠くに提示されるオブジェクトは、より多くの量が提示されなければ、そのオブジェクトがユーザに提示されていると決定されない。
【０００８】
広告を提示することが可能な識別済みコンテンツがアプリケーションによってユーザに提示されているとの決定に応答して、アプリケーションは、識別済みコンテンツを通じてオンライン・システムから受信したコンテンツ・アイテムを提示する。たとえば、アプリケーション１１５は、受け取ったコンテンツ・アイテムを識別済みコンテンツ上に重ねて表示するので、受け取った広告は、アプリケーションを通じて、アプリケーションが他のコンテンツとともに提示する識別済みコンテンツの表面として提示される。アプリケーションがゲームである場合、さまざまな実施形態において、受け取ったコンテンツ・アイテムは、ユーザの視界におけるオブジェクトの表面上のオーバーレイとして提示される。一例として、受け取ったコンテンツ・アイテムは、ゲームがユーザに提示する壁または仮想掲示板の表面上に提示される。識別済みコンテンツを通じて受け取った広告を提示することで、ユーザがアプリケーションなしで対話しているときに、広告との対話から邪魔されることなく、オンライン・システムからのコンテンツ・アイテムを提示することが可能になり、また、ユーザがアプリケーションと対話しているときには、受け取ったコンテンツ・アイテムをより体系的に提示することが可能になる。
【０００９】
アプリケーションは、受け取ったコンテンツ・アイテムの提示を記述する情報をオンライン・システムに送信する。いくつかの実施形態では、受け取ったコンテンツ・アイテムをアプリケーションが提示している間に、アプリケーションは情報を送信する。たとえば、コンテンツ・アイテムをアプリケーションが提示している間に、アプリケーションは、定期間隔で受け取ったコンテンツ・アイテムの提示を記述する情報を送信する。送信される情報には、コンテンツ・アイテムの識別子と、受け取ったコンテンツ・アイテムがアプリケーションによって提示された継続期間を記述する情報とが含まれる。たとえば、送信される情報は、受け取ったコンテンツ・アイテムの識別子、アプリケーションがコンテンツ・アイテムの提示を開始した時刻、および現在の時刻を含む。記憶された１つまたは複数のルールをアプリケーションからの情報に適用することによって、オンライン・システムは、受け取ったコンテンツ・アイテムがアプリケーションによってユーザに提示されたかどうかを決定する。さまざまなルールは、受け取ったコンテンツ・アイテムを提示したとオンライン・システムが決定する（つまり、受け取ったコンテンツ・アイテムのインプレッションが発生したかを決定する）ために、受け取ったコンテンツ・アイテムが提示された時間の最短の長さ、および受け取ったコンテンツ・アイテムが提示された最低量を識別する。異なるコンテンツ・アイテムまたは異なるタイプのコンテンツ・アイテムについて、異なるルールを、オンライン・システムによって維持することができる。たとえば、あるセットのルールを広告のコンテンツ・アイテムに関連付ける一方で、別のセットのルールを広告以外のコンテンツ・アイテムに関連付ける。ルールは、アプリケーションがコンテンツ・アイテムを提示した時間の長さの継続時間と、アプリケーションが提示したコンテンツ・アイテムの最低量との組み合わせを識別して、コンテンツ・アイテムのインプレッションを識別することができる。受け取ったコンテンツ・アイテムの提示を記述する情報が、オンライン・システムが受け取ったコンテンツ・アイテムに関連付けられている１つまたは複数のルールを満たす場合、オンライン・システムは、受け取ったコンテンツ・アイテムに関連付けて、インプレッションを識別する情報を記憶する。
【００１０】
オンライン・システムからの命令を実行することは、識別済みコンテンツを継続してユーザに提示するべきかどうかも、アプリケーションに決定させる。さまざまな実施形態において、アプリケーションは、少なくともしきい値量の識別済みコンテンツが、アプリケーション内のユーザの視界において見えているかどうかを決定する。アプリケーション内のユーザの視界において見えている識別済みコンテンツがしきい値量未満の量である場合、アプリケーションは、識別済みコンテンツがユーザに提示されていないと決定し、識別済みコンテンツを通じた選択済み広告の提示を中止する。たとえば、アプリケーション内のユーザの視界において見えているのが識別済みコンテンツの３０％未満である場合、アプリケーションは、ユーザに提示されていないと決定し、アプリケーションは、受け取ったコンテンツ・アイテムの提示を中止する。いくつかの実施形態では、アプリケーションは、識別済みコンテンツから選択済みコンテンツ・アイテムを提示するオーバーレイを取り除くことによって、受け取ったコンテンツ・アイテムの提示を中止する。受け取ったコンテンツ・アイテムが映像データを含む場合、アプリケーションは、映像データを提示するのではなく、識別済みコンテンツ上のオーバーレイとして映像データのフレームを提示することによって、受け取ったコンテンツ・アイテムの提示を中止することができる。受け取ったコンテンツ・アイテムが音声データを含む場合、アプリケーションは、音声データの音量を下げるか、または音声データの再生を停止して、選択済み音声データの提示を中止する。
【００１１】
アプリケーションは、受け取ったコンテンツ・アイテムの提示の中止を記述する情報を、オンライン・システムに送信する。たとえば、アプリケーションは、受け取ったコンテンツ・アイテムの提示が中止された時刻を、受け取ったコンテンツ・アイテムの識別子とともに送信する。いくつかの実施形態では、オンライン・システムは、受け取ったコンテンツ・アイテムがアプリケーションによってユーザに提示されたかどうか（つまり、受け取ったコンテンツ・アイテムのインプレッションが発生したかどうか）を、送信される情報から、受け取ったコンテンツ・アイテムの提示をアプリケーションが開始した時刻と、選択済み広告の提示をアプリケーションが中止した時刻とに基づいて決定する。たとえば、オンライン・システムは、受け取ったコンテンツ・アイテムの提示をアプリケーションが開始した時刻と、受け取ったコンテンツ・アイテムの提示をアプリケーションが中止した時刻との差を決定する。決定した差が時間のしきい値長さに等しいかまたはこれを超える場合、オンライン・システムは、受け取ったコンテンツ・アイテムの識別子に関連して、受け取ったコンテンツ・アイテムがユーザに提示されたことを示す情報を記憶する。
【００１２】
オンライン・システムによって選択されたコンテンツ・アイテムを、アプリケーションによって提示されるコンテンツを通じて提示することは、オンライン・システムがコンテンツをユーザに提供する機会を増やす。オンライン・システムによって選択されたコンテンツ・アイテムを、アプリケーションのコンテンツを使用して提示することで、アプリケーションとのユーザの対話を邪魔または阻害せずに、オンライン・システムのコンテンツ・アイテムを提示することが可能になる。アプリケーションからオンライン・システムへのコンテンツの要求に、コンテンツ・アイテムを提示するべきアプリケーション内のコンテキストを記述する情報を含むことができるので、オンライン・システムが選択するコンテンツ・アイテムは、アプリケーションとのユーザの対話に関連がある可能性がより高く、アプリケーションを通じて提示するコンテンツ・アイテムを動的に選択することにより、コンテンツ・アイテムとのユーザの対話の可能性を高められる。
【００１３】
図面は、例示のみの目的でさまざまな実施形態を示している。本明細書において記述されている原理から逸脱することなく、本明細書において示されている構造および方法の代替実施形態が採用されることが可能であるということを、当業者であれば以降の論考から容易に認識するであろう。
【図面の簡単な説明】
【００１４】
【図１】一実施形態による、オンライン・システムが動作するシステム環境のブロック図。
【図２】一実施形態による、オンライン・システムのブロック図。
【図３】一実施形態による、クライアント・デバイス上で実行されるアプリケーション内のオンライン・システムからのコンテンツを提示するための方法の相関図。
【図４】一実施形態による、クライアント・デバイス上で実行されるアプリケーションによって提供される、コンテンツ内に提示されるオンライン・システムからのコンテンツの例。
【発明を実施するための形態】
【００１５】
システム・アーキテクチャ
図１は、ソーシャル・ネットワーキング・システムなど、オンライン・システム１４０のためのシステム環境１００のブロック図である。図１によって示されているシステム環境１００は、１つまたは複数のクライアント・デバイス１１０と、ネットワーク１２０と、１つまたは複数のサードパーティ・システム１３０と、オンライン・システム１４０とを備える。代替構成においては、異なるおよび／またはさらなる構成要素がシステム環境１００内に含まれることが可能である。
【００１６】
クライアント・デバイス１１０は、ユーザが入力を受け取ること、ならびにネットワーク１２０を通じてデータを送信することおよび／または送信することが可能な１つまたは複数のコンピューティング・デバイスである。一実施形態においては、クライアント・デバイス１１０は、デスクトップまたはラップトップ・コンピュータなど、従来のコンピュータ・システムである。あるいは、クライアント・デバイス１１０は、携帯情報端末（ＰＤＡ）、モバイル電話、スマートフォン、スマートウォッチ、または別の適切な機器など、コンピュータ機能を有する機器であることが可能である。クライアント・デバイス１１０は、ネットワーク１２０を通じて通信を行うように構成されている。一実施形態においては、クライアント・デバイス１１０は、クライアント・デバイス１１０のユーザがオンライン・システム１４０と対話することを可能にするアプリケーションを実行する。たとえば、クライアント・デバイス１１０は、ネットワーク１２０を通じたクライアント・デバイス１１０とオンライン・システム１４０との間における対話を可能にするためにブラウザ・アプリケーションを実行する。別の実施形態においては、クライアント・デバイス１１０は、ＩＯＳ（登録商標）またはＡＮＤＲＯＩＤ（登録商標）など、クライアント・デバイス１１０のネイティブ・オペレーティング・システム上で稼働するアプリケーション・プログラミング・インタフェース（ＡＰＩ）を通じて、オンライン・システム１４０と対話する。
【００１７】
クライアント・デバイス１１０は、クライアント・デバイス１１０を通じてユーザにコンテンツを提供するか、またはクライアント・デバイス１１０を通じてユーザからの対話を受け取る、１つまたは複数のアプリケーション１１５を実行することができる。いくつかの実施形態では、アプリケーション１１５は、アプリケーション１１５が受け取った、ユーザからの対話に部分的に基づいて、ユーザにコンテンツを提示する。アプリケーション１１５は、１つまたは複数のサードパーティ・システム１３０から、またはオンライン・システム１４０から、提示用のコンテンツを取得することができる。さまざまな実施形態において、アプリケーション１１５は、オンライン・システム１４０から（アプリケーション１１５によって実行されたときに）、オンライン・システム１４０からのコンテンツを提示することが可能な、アプリケーション１１５内のコンテンツを識別し、オンライン・システム１４０からコンテンツを取得し、取得済みコンテンツをアプリケーション１１５内で識別済みコンテンツを通じてユーザに提示する命令を含む。たとえば、アプリケーション１１５は、オンライン・システム１４０によってアプリケーション１１５に関連付けられているエンティティに提供される、ソフトウェア開発キット（ＳＤＫ）からの命令を含む。図３と併せて以下詳細に説明するように、アプリケーション１１５を実行するクライアント・デバイス１１０によってＳＤＫからの命令が実行されると、アプリケーション１１５は、オンライン・システム１４０からのコンテンツ（例、広告）をユーザに提示することが可能な、アプリケーション１１５内のコンテンツを識別し、コンテンツ要求をオンライン・システム１４０に通信する。アプリケーション１１５がオンライン・システム１４０からコンテンツを受け取ると、アプリケーション１１５は、オンライン・システム１４０からの命令を実行することによって、受け取ったコンテンツを提示することが可能な、アプリケーション１１５によって提供されるコンテンツがいつユーザに見えているか、もしくはいつその他の形で気づかれやすいかを決定し、アプリケーション１１５によって提供されるコンテンツを通じて、オンライン・システム１４０から受け取ったコンテンツを提示する。そのため、アプリケーション１１５によって提供されるコンテンツを使用してオンライン・システム１４０からのコンテンツを提示することで、オンライン・システム１４０は、アプリケーション１１５とのユーザの対話を邪魔することなく、より多くのコンテンツをユーザに提供することが可能になる。図３と併せて以下詳細に説明するように、命令を実行することは、また、アプリケーション１１５によるオンライン・システム１４０からのコンテンツの提示を記述する情報をアプリケーション１１５に捕捉させるとともに、アプリケーション１１５に、捕捉した情報をオンライン・システム１４０に通信させることによって、コンテンツの提示を記述する情報を維持するときに、オンライン・システム１４０がアプリケーション１１５を通じてコンテンツの提示を報告することが可能になる。
【００１８】
クライアント・デバイス１１０は、ネットワーク１２０を通じて通信するように構成され、このネットワークは、有線および／または無線両方の通信システムを使用した、ローカルエリアネットワークおよび／またはワイドエリアネットワークの任意の組み合わせを含むことができる。一実施形態では、ネットワーク１２０は、標準的な通信技術および／または通信プロトコルを使用する。たとえば、ネットワーク１２０は、イーサネット（登録商標）、８０２．１１、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス（ＷｉＭＡＸ）、３Ｇ、４Ｇ、符号分割多元接続（ＣＤＭＡ）、デジタル加入者線（ＤＳＬ）等などの技術を使用する通信リンクを含む。ネットワーク１２０を通じて通信するために使用されるネットワーキング・プロトコルの例は、マルチプロトコル・ラベル・スイッチング（ＭＰＬＳ）、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、簡易メール転送プロトコル（ＳＭＴＰ）、およびファイル転送プロトコル（ＦＴＰ）を含む。ネットワーク１２０で交換されるデータは、ハイパーテキスト・マークアップ言語（ＨＴＭＬ）または拡張可能マークアップ言語（ＸＭＬ）など、任意の適切なフォーマットを使用して表すことができる。いくつかの実施形態において、ネットワーク１２０の通信リンクの全部または一部は、任意の適切な１つまたは複数の手法を使用して暗号化することができる。
【００１９】
１つまたは複数のサードパーティ・システム１３０は、オンライン・システム１４０と通信するためにネットワーク１２０に連結されることが可能であり、オンライン・システム１４０については、以降で図２と併せてさらに記述されている。一実施形態においては、サードパーティ・システム１３０は、クライアント・デバイス１１０によって実行するためのアプリケーションについて記述する情報を通信するアプリケーション・プロバイダ、またはクライアント・デバイス上で実行されるアプリケーションによって使用するためのデータをクライアント・デバイス１１０に対して通信するアプリケーション・プロバイダである。他の実施形態においては、サードパーティ・システム１３０は、クライアント・デバイス１１０を通じて提示するためのコンテンツまたは他の情報を提供する。サードパーティ・システム１３０は、情報、たとえば、サードパーティ・システム１３０によって提供される広告、コンテンツ、またはアプリケーションに関する情報をオンライン・システム１４０に対して通信することもできる。
【００２０】
図２は、オンライン・システム１４０のアーキテクチャのブロック図である。たとえば、オンライン・システム１４０は、ソーシャル・ネットワーキング・システムである。図２において示されているオンライン・システム１４０は、ユーザ・プロフィール・ストア２０５、コンテンツ・ストア２１０、アクション・ロガー２１５、アクション・ログ２２０、エッジ・ストア２２５、広告要求（「アド要求」）ストア２３０、コンテンツ選択モジュール２３５、およびウェブ・サーバ２４０を含む。その他の実施形態においては、オンライン・システム１４０は、さまざまなアプリケーションに関するさらなる、より少ない、または異なる構成要素を含むことができる。ネットワーク・インタフェース、セキュリティ機能、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワーク・オペレーション・コンソール等などの従来の構成要素は、このシステム・アーキテクチャの詳細をわかりにくくすることのないように、示されていない。
【００２１】
オンライン・システム１４０の各ユーザは、ユーザ・プロフィール・ストア２０５に記憶されているユーザ・プロフィールに関連付けられている。ユーザ・プロフィールは、ユーザが明白にシェアしたユーザに関する宣言的情報を含み、オンライン・システム１４０によって推定されるプロフィール情報も含むことができる。一実施形態においては、ユーザ・プロフィールは、対応するオンライン・システムのユーザの１つまたは複数の属性をそれぞれ記述する複数のデータフィールドを含む。ユーザ・プロフィールに記憶される情報の例には、職歴、学歴、性別、趣味や嗜好、ロケーション等など、人物、人口統計学的およびその他のタイプの記述的情報が含まれる。ユーザ・プロフィールは、ユーザが提供する他の情報、たとえば、画像や映像を記憶することもできる。一定の実施形態においては、ユーザの画像を、画像に表示されるソーシャル・ネットワーキング・システムのユーザを識別する情報でタグ付けすることが可能であり、ユーザがタグ付された画像を識別する情報は、ユーザのユーザ・プロフィールに記憶される。ユーザ・プロフィール・ストア２０５内のユーザ・プロフィールは、コンテンツ・ストア２１０内のコンテンツ・アイテムに対して行われてアクション・ログ２２０に記憶される、対応するユーザによるアクションへの参照を維持することもできる。
【００２２】
ユーザ・プロフィール・ストア２０５内のユーザ・プロフィールは、しばしば個人に関連付けられて、個人がオンライン・システム１４０を通じて互いに対話することを可能にするが、ユーザ・プロフィールは、企業や組織などのエンティティについても記憶することができる。これによりエンティティは、オンライン・システム１４０上で、他のオンライン・システムのユーザとつながり、コンテンツを交換するためのプレゼンスを確立することが可能である。エンティティは、自社、自社製品についての情報を投稿するか、またはエンティティのユーザ・プロフィールに関連付けられているブランド・ページを使用してオンライン・システム１４０のユーザに他の情報を提供することができる。オンライン・システム１４０の他のユーザはブランド・ページにつながって、ブランド・ページに投稿された情報を受け取るか、またはブランド・ページからの情報を受け取ることができる。ブランド・ページに関連付けられているユーザ・プロフィールは、エンティティ自体に関する情報を含むことができるので、そのエンティティに関するバックグラウンドまたは情報データをユーザに提供する。
【００２３】
コンテンツ・ストア２１０は、さまざまなタイプのコンテンツをそれぞれ代表するオブジェクトを記憶する。オブジェクトによって代表されるコンテンツの例には、ページ投稿、ステータスの更新、写真、映像、リンク、共有コンテンツ・アイテム、ゲーム・アプリケーションの達成度、ローカル・ビジネスにおけるチェックイン・イベント、ページ（例、ブランド・ページ）、または他のタイプのコンテンツが含まれる。オンライン・システムのユーザは、ステータスの更新、オンライン・システム１４０内の他のオブジェクトに関連付けるためにユーザがタグ付した写真、イベント、グループ、またはアプリケーションなど、コンテンツ・ストア２１０によって記憶されるオブジェクトを作成することができる。いくつかの実施形態においては、オブジェクトは、サードパーティ・アプリケーション、またはオンライン・システム１４０とは別のサードパーティ・アプリケーションから受け取られる。一実施形態においては、コンテンツ・ストア２１０内のオブジェクトは１つのコンテンツ、すなわちコンテンツ「アイテム」を表す。そのため、オンライン・システムのユーザは、さまざまな通信チャネルを通してテキストやさまざまなタイプの媒体のコンテンツ・アイテムをオンライン・システム１４０に投稿することによって、互いに通信するよう促される。これによりユーザ同士の対話の量が増え、オンライン・システム１４０内でユーザが対話する頻度が増す。
【００２４】
アクション・ロガー２１５は、オンライン・システム１４０の内部および／または外部のユーザ・アクションに関する通信を受け取って、ユーザ・アクションに関する情報をアクション・ログ２２０に投入する。アクションの例には、別のユーザとのつながりを追加すること、別のユーザにメッセージを送信すること、画像をアップロードすること、別のユーザからのメッセージを読むこと、別のユーザに関連付けられているコンテンツを閲覧すること、および、別のユーザによって投稿されたイベントに出席することが含まれる。一例として、サードパーティ・システム１３０がオンライン・システムのユーザに提供するコンテンツは、オンライン・システム１４０が受け取る情報によってオンライン・システムのユーザ１４０を識別する情報とともに識別することが可能で、サードパーティ・システム１３０によって提供されたコンテンツを識別する情報を、アクション・ロガー２１５が、オンライン・システム１４０の識別されたユーザに関連付けてアクション・ログ２２０に記憶する。別の例として、アクション・ロガー２１５は、アプリケーション１１５が実行する命令によってオンライン・システム１４０に通信される情報に基づいて、オンライン・システム１４０のユーザとアプリケーションとの対話を記述する情報を記録する。たとえば、アプリケーション１１５は、アプリケーション１１５がオンライン・システム１４０からのコンテンツを提示する時間の長さを識別する情報、またはアプリケーション１１５がオンライン・システム１４０からのコンテンツの提示を開始した時刻およびアプリケーションがオンライン・システム１４０からのコンテンツの提示を中止した時刻を識別する情報を、アクション・ロガー２１５に通信する。アクション・ロガー２１５は、アプリケーション１１５によるオンライン・システム１４０からのコンテンツの提示を記述するアプリケーション１１５からの情報にアクションを関連付ける、１つまたは複数のルールを維持する。さまざまなルールは、コンテンツ・アイテムがユーザに提示されたことを示す情報をアクション・ログ２２０に記憶する（つまり、ユーザに対するコンテンツ・アイテムのインプレッションを識別する）ことをアクション・ロガー２１５に行わせる、アプリケーション１１５がオンライン・システム１４０からのコンテンツ・アイテムを提示する時間の最短の長さを識別する。いくつかの実施形態では、ルールは、コンテンツ・アイテムがユーザに提示されたとアクション・ロガー２１５に決定させる、アプリケーション１１５が提示するオンライン・システム１４０からのコンテンツ・アイテムの最低量も指定する。たとえば、最低量のコンテンツ・アイテムがアプリケーション１１５によって時間の最低しきい値長さの間提示された場合に、ユーザに対するコンテンツ・アイテムのインプレッションをアクション・ロガー２１５に識別させるルールを、コンテンツ・アイテムの識別子に関連付ける。そのため、識別子とともに受け取られる情報が、少なくともコンテンツ・アイテムの最低量を少なくとも時間のしきい値長さの間提示されるアプリケーションを指定する場合、アクション・ロガー２１５は、識別子に対応するコンテンツ・アイテムのインプレッションを識別するようにアクション・ログ２２０を更新する。異なるルールを、異なるコンテンツ・アイテム、または異なる特性を有するコンテンツ・アイテムに関連付けることができる。さまざまなルールが、提示されるコンテンツ・アイテムの最低量と、アプリケーション１１５が少なくとも最低量のコンテンツ・アイテムを提示した異なる時間の長さとの異なる組み合わせを指定することができる。したがって、アクション・ロガー２１５は、コンテンツ・アイテムを識別する情報が、コンテンツ・アイテムに関連付けられている１つまたは複数のルールを満たす情報も含んでいる場合、広告などのコンテンツ・アイテムの提示を識別する情報を記録する。
【００２５】
さらに、アクション・ロガー２１５は、オンライン・システムのユーザとオンライン・システムのユーザに提示される広告との情報対話を記録する。たとえば、オンライン・システム１４０のユーザが広告をクリックした回数または広告との対話を通じて購買を完了した回数を記述する情報を、アクション・ロガー２１５によって、ユーザを識別する情報に関連して記録する。また、対話に関連付けられている回数も、ユーザを識別する情報および広告を識別する情報に関連して記憶することもできる。さらに、多数のアクションがオブジェクトおよび１人または複数人の特定のユーザに関わることがあるため、これらのアクションもその特定のユーザに関連付けられて、アクション・ログ２２０に記憶される。
【００２６】
アクション・ログ２２０は、オンライン・システム１４０が、オンライン・システム１４０上でのユーザ・アクション、および、オンライン・システム１４０に情報を通信するサードパーティ・システム１３０上でのアクションを追跡するために使用することができる。ユーザは、オンライン・システム１４０上のさまざまなオブジェクトと対話することができ、これらの対話について記述する情報がアクション・ログ２２０に記憶される。オブジェクトとの対話の例には、投稿に対してコメントすること、リンクをシェアすること、クライアント・デバイス１１０を通じて実際のロケーションにチェックインすること、コンテンツ・アイテム（広告を含む）にアクセスすること、および他の適切な対話が含まれる。アクション・ログ２２０に含まれるオンライン・システム１４０上のオブジェクトとの対話のさらなる例には、フォト・アルバムに対してコメントすること、ユーザと通信すること、オブジェクトとのつながりを確立すること、イベントに参加すること、グループに参加すること、イベントを作成すること、アプリケーションを承認すること、アプリケーションを使用すること、オブジェクトに関する好みを表現すること（そのオブジェクトに「いいね！」を表明すること）、および、トランザクションに関与することが含まれる。さらに、アクション・ログ２２０は、オンライン・システム１４０上の広告およびオンライン・システム１４０上で動作する他のアプリケーションとの、ユーザの対話を記録することができる。いくつかの実施形態においては、アクション・ログ２２０からのデータは、ユーザの関心または好みを推定するために使用されて、ユーザのユーザ・プロフィールに含まれる関心を拡張し、ユーザの好みをさらに完全に理解できるようにする。
【００２７】
アクション・ログ２２０は、外部ウェブサイトなどのサードパーティ・システム１３０上で行われてオンライン・システム１４０に通信されるユーザ・アクションを記憶することもできる。たとえば、電子商取引のウェブサイトは、ソーシャル・プラグインを通じてオンライン・システム１４０のユーザを認識することができるので、電子商取引のウェブサイトがオンライン・システム１４０のユーザを識別することが可能である。オンライン・システム１４０のユーザは一意に識別できるため、前述の例におけるように、電子商取引のウェブサイトは、オンライン・システム１４０外のユーザのアクションに関する情報を、ユーザに関連付けるためにオンライン・システム１４０に通信することができる。オンライン・システム１４０は、サードパーティ・システム１３０が提供するコンテンツとのユーザの対話を記述する情報を、ユーザに関連付けてアクション・ログ２２０に記憶する。そのため、アクション・ログ２２０は、ウェブ・ページの閲覧履歴、広告との対話、行った購入、および買い物や購買からの他のパターンなど、ユーザがサードパーティ・システム１３０上で行うアクションに関する情報を記録することができる。さらに、サードパーティ・システム１３０に関連付けられてクライアント・デバイス１１０上で実行されるアプリケーションを通じて行うユーザがアクションは、アクション・ログ２２０に記録しユーザに関連付けるために、アプリケーションが、アクション・ロガー２１５に通信することができる。
【００２８】
一実施形態においては、エッジ・ストア２２５は、ユーザとオンライン・システム１４０上の他のオブジェクトとのつながりについて記述する情報をエッジとして記憶する。いくつかのエッジはユーザによって定義されることができ、ユーザが他のユーザとの関係を指定することが可能である。たとえば、ユーザは、友達、同僚、パートナーなど、ユーザの実生活の関係に即した他のユーザとのエッジを生成することができる。オンライン・システム１４０上のあるページへの関心を表明すること、オンライン・システム１４０の他のユーザとリンクをシェアすること、およびオンライン・システム１４０の他のユーザが行った投稿にコメントすることなど、ユーザがオンライン・システム１４０でオブジェクトと対話するとき、他のエッジが生成される。
【００２９】
一実施形態においては、エッジは、ユーザ同士の対話、ユーザとオブジェクトとの対話、またはオブジェクト同士の対話の特性をそれぞれ表すさまざまな特徴を含むことができる。たとえば、エッジに含まれる特徴は、２人のユーザ間の対話の割合、２人のユーザが互いに対話したのがどれくらい最近であったか、あるユーザがオブジェクトに関して取り出した情報の割合もしくは量、またはユーザがオブジェクトに関して投稿したコメントの数とタイプを記述する。特徴は、ある特定のオブジェクトまたはユーザについて記述する情報を表すこともできる。たとえば、特徴は、ある特定のトピックに対してユーザがもつ関心のレベル、ユーザがオンライン・システム１４０にログインしている割合、またはユーザに関する人口統計学的情報について記述する情報を表すことができる。各特徴は、ソース・オブジェクトまたはユーザ、ターゲット・オブジェクトまたはユーザ、および特徴値に関連付けることができる。特徴は、ソース・オブジェクトもしくはユーザ、ターゲット・オブジェクトもしくはユーザについて、またはソース・オブジェクトもしくはユーザとターゲット・オブジェクトもしくはユーザとの間における対話について記述する値に基づいた式として指定されることが可能である。そのため、エッジは１つまたは複数の特徴式として表されることが可能である。
【００３０】
エッジ・ストア２２５は、オブジェクト、関心および他のユーザについての親和性スコアなど、エッジに関する情報も記憶する。オンライン・システム１４０によって経時的に親和性スコア、すなわち、「親和度」が計算されて、ユーザが行うアクションに基づいて、オンライン・システム１４０内のオブジェクトまたは別のユーザへのユーザの関心を概算することができる。オンライン・システム１４０によって経時的にユーザの親和度が計算されて、ユーザが行うアクションに基づいてオンライン・システム１４０内のオブジェクト、トピック、または別のユーザへのユーザの関心を概算することができる。親和度の計算については、２０１０年１２月２３日に出願された米国特許出願第１２／９７８，２６５号、２０１２年１１月３０日に出願された米国特許出願第１３／６９０，２５４号、２０１２年１１月３０日に出願された米国特許出願第１３／６８９，６９６号、および２０１２年１１月３０日に出願された米国特許出願第１３／６９０，０８８号にさらに記述されており、これら特許出願のそれぞれを参照によりその全体を本明細書に組み込む。一実施形態においては、ユーザと特定のオブジェクトとの間における複数の対話を、１つのエッジとしてエッジ・ストア２２５内に記憶することができる。あるいは、ユーザと特定のオブジェクトとの間における各対話を個別のエッジとして記憶する。いくつかの実施形態においては、ユーザ間のつながりをユーザ・プロフィール・ストア２０５に記憶することができ、またはユーザ・プロフィール・ストア２０５がユーザ間のつながりを決定するためにエッジ・ストア２２５にアクセスすることができる。
【００３１】
アド要求ストア２３０には、１つまたは複数の広告要求（「アド要求」）が含まれる。広告要求には、「広告」とも呼ばれる広告コンテンツと入札額とが含まれる。広告コンテンツは、テキスト、画像、音声、映像またはユーザに提示される他の任意の適切なデータである。さまざまな実施形態において、広告コンテンツは、広告にアクセスされたときにユーザを誘導するネットワーク・アドレスを指定するランディング・ページも含む。入札額は、広告主によるアド要求に関連付けられ、アド要求内の広告コンテンツがユーザに提示された場合、アド要求内の広告コンテンツが提示されたときにユーザ対話を受け取る場合、またはアド要求内の広告コンテンツがユーザに提示されたときに任意の適切な条件が満たされる場合に、金銭的報酬など、広告主がオンライン・システム１４０に提供する予測価値を決定するために使用される。たとえば、入札額は、アド要求内の広告コンテンツが表示された場合にオンライン・システム１４０が広告主から受け取る金額を指定する。いくつかの実施形態では、広告コンテンツの提示に対してオンライン・システム１４０に対する予測価値は、入札額に、ユーザが広告コンテンツにアクセスする確率を乗じて決定することができる。
【００３２】
さらに、広告要求は、広告主が指定する１つまたは複数のターゲティング基準を含むことができる。広告要求に含まれるターゲティング基準は、広告要求内の広告コンテンツを提示するのに適したユーザの、１つまたは複数の特性を指定する。たとえば、ターゲティング基準は、ターゲティング基準のうちの少なくとも１つを満たすユーザ・プロフィール情報、エッジ、またはアクションを有するユーザを識別するために使用される。そのため、ターゲティング基準は、特定の特性を有するユーザを広告主が識別することを可能にし、異なるユーザへのコンテンツのその後の配信を簡素化する。
【００３３】
一実施形態において、ターゲティング基準は、ユーザとオンライン・システム１４０の別のユーザまたはオブジェクトとのアクションまたはつながりのタイプを指定することができる。ターゲティング基準は、オンライン・システム１４０の外、たとえば、サードパーティ・システム１３０上で行われるユーザとオブジェクトとの対話も指定することができる。たとえば、ターゲティング基準は、別のユーザにメッセージを送った、アプリケーションを使用した、グループに参加した、グループを脱退した、イベントに参加した、イベントの明細を生成した、オンライン・マーケットプレイスを利用して製品もしくはサービスを購入もしくはレビューした、サードパーティ・システム１３０からの情報を要求した、アプリケーションをインストールした、または他の任意の適切なアクションを行ったなど、特定のアクションを行ったユーザを識別する。ターゲティング基準にアクションを含むことで、広告主は、広告要求から広告コンテンツを提示するのに適したユーザをさらに絞り込むことが可能になる。別の例として、ターゲティング基準は、別のユーザもしくはオブジェクトとつながりのあるユーザ、または別のユーザもしくはオブジェクトとの特定のタイプのつながりをもつユーザを識別する。
【００３４】
コンテンツ選択モジュール２３５は、クライアント・デバイス１１０に通信してユーザに提示するための１つまたは複数のコンテンツ・アイテムを選択する。ユーザへの提示に適したコンテンツ・アイテムは、コンテンツ・ストア２１０から、アド要求ストア２３０から、または別のソースから、コンテンツ選択モジュール２３５が取り出して、閲覧ユーザに提示するためのコンテンツ・アイテムを１つまたは複数選択する。ユーザへの提示に適したコンテンツ・アイテムは、ユーザの特性によって満たされる少なくともしきい値数のターゲティング基準に関連付けられているコンテンツ・アイテムであるか、またはターゲティング基準に関連付けられていないコンテンツ・アイテムである。さまざまな実施形態において、コンテンツ選択モジュール２３５は、１つまたは複数の選択プロセスにおいてユーザへの提示に適したコンテンツ・アイテムを含み、選択プロセスは、ユーザに提示するための１セットのコンテンツ・アイテムを識別する。たとえば、コンテンツ選択モジュール２３５は、オンライン・システム１４０によってユーザに関連付けられている特性および異なるコンテンツ・アイテムに対するユーザの親和度に基づいて、さまざまなコンテンツ・アイテムの、ユーザに対する関連度の尺度を決定する。関連度の尺度に基づいて、コンテンツ選択モジュール２３５は、ユーザに提示するためのコンテンツ・アイテムを選択する。追加の例として、コンテンツ選択モジュール２３５は、関連度の尺度が最も高いコンテンツ・アイテム、または少なくともしきい値の関連度の尺度をもつコンテンツ・アイテムを、ユーザに提示するために選択する。あるいは、コンテンツ選択モジュール２３５は、コンテンツ・アイテムを、その関連付けられている関連度の尺度に基づいてランク付けし、ランクの最上位のコンテンツ・アイテム、または少なくともランキングのしきい値位置にあるコンテンツ・アイテムを、ユーザに提示するために選択する。
【００３５】
ユーザへの提示に適格なコンテンツ・アイテムは、入札額に関連付けられているアド要求からの広告または他のコンテンツ・アイテムを含むことができる。コンテンツ選択モジュール２３５は、ユーザに提示するためのコンテンツを選択するとき、アド要求に関連付けられている入札額を使用する。さまざまな実施形態では、コンテンツ選択モジュール２３５は、さまざまなアド要求（または他のコンテンツ・アイテム）に関連付けられている予測価値をその入札額に基づいて決定し、最高予測価値に関連付けられているコンテンツ・アイテムまたは少なくとも閾値予測価値に関連付けられているコンテンツ・アイテムを提示するために選択する。アド要求またはコンテンツ・アイテムに関連付けられている予測価値は、アド要求またはコンテンツ・アイテムを提示することに対するオンライン・システム１４０への予測報酬額を表す。たとえば、アド要求に関連付けられている予測価値は、アド要求の入札額と、アド要求のアドコンテンツとユーザが対話する蓋然性との積である。コンテンツ選択モジュール２３５は、アド要求をそれに関連付けられている入札額に基づいてランク付けし、ユーザに提示するために、少なくともランキングで閾値順位を有するアド要求を選択することができる。いくつかの実施形態では、コンテンツ選択モジュール２３５は、入札額に関連付けられていないコンテンツ・アイテムとアド要求との両方を、アド要求に関連付けられている入札額と、コンテンツ・アイテムとアド要求とに関連付けられている関連性の尺度とに基づいて、統一ランキングでランク付けする。統一ランキングに基づいて、コンテンツ選択モジュール２３５は、ユーザに提示するためのコンテンツを選択する。統一ランキングによりアド要求および他のコンテンツ・アイテムを選択することは、２０１２年７月１０日に出願された米国特許出願第１３／５４５，２６６号にさらに記述されており、これは全体として本願明細書に援用される。
【００３６】
たとえば、コンテンツ選択モジュール２３５は、オンライン・システム１４０のユーザにコンテンツのフィードを提示する要求を受け取る。フィードは、１つまたは複数の広告およびコンテンツ・アイテム、たとえば、ユーザとつながりのあるオンライン・システムの他のユーザに関連付けられているアクションを記述するストーリを含むことができる。コンテンツ選択モジュール２３５は、ユーザ・プロフィール・ストア２０５、コンテンツ・ストア２１０、アクション・ログ２２０およびエッジ・ストア２２５の中の１つまたは複数にアクセスして、ユーザに関する情報を取り出す。たとえば、ユーザとつながりのある他のユーザに関連付けられているアクションを記述する情報またはユーザとつながりのあるユーザに関連付けられている他のデータが取り出される。さらに、１つまたは複数の広告要求（「アド要求」）は、アド要求ストア２３０から取り出されることが可能である。取り出されたストーリ、アド要求または他のコンテンツ・アイテムは、広告選択モジュール２３５が分析して、アド要求を含め、ユーザに提示するのに適したコンテンツ・アイテム候補を識別する。たとえば、ユーザとつながりのないユーザに関連付けられているコンテンツ・アイテム、またはユーザがしきい値未満の親和度しか有さないユーザに関連付けられているストーリは、コンテンツ・アイテム候補としては破棄される。さまざまな基準に基づいて、コンテンツ選択モジュール２３５は、識別されたユーザに提示するためのコンテンツ候補として、識別済みコンテンツ・アイテムまたはアド要求の中から１つまたは複数を選択する。選択済みコンテンツ・アイテムまたは選択済みアド要求からの広告は、ユーザに提示されるコンテンツのフィードに入れられる。たとえば、コンテンツのフィードは、オンライン・システム１４０を通じてユーザとつながりのあるユーザに関連付けられているアクションを記述する少なくともしきい値数のコンテンツを含む。
【００３７】
さまざまな実施形態において、コンテンツ選択モジュール２３５は、ユーザに提示するために選択された複数のコンテンツ・アイテムを含むニュースフィードを通じて、ユーザにコンテンツを提示する。１つまたは複数の広告をフィードに含むこともできる。コンテンツ選択モジュール２３５は、選択済みコンテンツ・アイテムまたは広告を、フィードを通じて提示する順序も決定することができる。たとえば、コンテンツ選択モジュール２３５は、ユーザがさまざまなコンテンツ・アイテムまたは広告と対話する可能性に基づいて、フィード内のコンテンツ・アイテムまたは広告を順序付ける。
【００３８】
ウェブ・サーバ２４０は、ネットワーク１２０を通じてオンライン・システム１４０を１つまたは複数のクライアント・デバイス１１０へ、および１つまたは複数のサードパーティ・システム１３０へリンクさせる。ウェブ・サーバ２４０は、ウェブ・ページ、およびその他のコンテンツ、たとえば、ＪＡＶＡ（登録商標）、ＦＬＡＳＨ（登録商標）、ＸＭＬなどを供給する。ウェブ・サーバ２４０は、オンライン・システム１４０とクライアント・デバイス１１０との間におけるメッセージ、たとえば、分析した情報、インスタント・メッセージ、キューに入れられたメッセージ（例、電子メール）、テキスト・メッセージ、ショート・メッセージ・サービス（ＳＭＳ）のメッセージ、またはその他適切なメッセージング技術を使用して送信されるメッセージを受け取って回送することができる。ユーザは、コンテンツ・ストア２１０に記憶される情報（例、画像または映像）をアップロードするよう求める要求をウェブ・サーバ２４０に送信することができる。加えて、ウェブ・サーバ２４０は、ＩＯＳ（登録商標）、ＡＮＤＲＯＩＤ（登録商標）、ＷＥＢＯＳ（登録商標）、またはＢＬＡＣＫＢＥＲＲＹ（登録商標）ＯＳなどのネイティブ・クライアント・デバイス・オペレーティング・システムに対してデータを直接送信するためのアプリケーション・プログラミング・インタフェース（ＡＰＩ）機能を提供することができる。
【００３９】
オンライン・システムからの、アプリケーションを通じたユーザへの広告提示
図３は、クライアント・デバイス１１０上で実行されるアプリケーション１１５を通じて、オンライン・システム１４０によって選択された広告を提示する方法の、一実施形態の相関図である。他の実施形態では、方法は、図３に示すものとは異なるステップもしくは追加のステップ、またはその両方を含むことができる。さらに、方法のステップは、さまざまな実施形態において、図３に関連して説明する順序とは異なる順序で行うことができる。
【００４０】
オンライン・システム１４０は、クライアント・デバイス１１０上で実行されるアプリケーションを提供しているエンティティに、コンテンツを提示する命令を提供する。さまざまな実施形態において、オンライン・システム１４０は、アプリケーション１１５を提供しているエンティティに、命令を含むソフトウェア開発キット（ＳＤＫ）を提供して、エンティティがＳＤＫを通じてアプリケーションに命令を含めることを可能にする。エンティティは、アプリケーション１１５内に命令を含ませ、アプリケーション１１５を実行するクライアント・デバイス１１０がその命令を実行すると、アプリケーション１１５は、広告をユーザに提示することが可能な、アプリケーション１１５内のコンテンツを識別し、広告コンテンツ要求をオンライン・システム１４０に通信する。アプリケーション１１５がオンライン・システム１４０から広告を受け取ると、命令の実行により、アプリケーション１１５が広告を提示することが可能な、アプリケーション１１５内のコンテンツが、いつユーザに提示されるかを決定し、アプリケーション１１５内のコンテンツを通じてオンライン・システム１４０から受け取られた広告を提示する。図３と併せて以下詳細に説明するように、命令の実行は、アプリケーション１１５に、アプリケーション１１５によるオンライン・システム１４０からの広告の提示を記述する情報を捕捉して、捕捉した情報をオンライン・システム１４０に通信することも行わせるので、オンライン・システム１４０は、オンライン・システム１４０によって選択または提供される広告の提示を記述する情報を維持するとき、アプリケーション１１５を通じたコンテンツの提示を報告することが可能になる。
【００４１】
オンライン・システム１４０からの命令を含むアプリケーション１１５は、クライアント・デバイス１１０上で実行され、クライアント・デバイス１１０を使用してクライアント・デバイス１１０のユーザにコンテンツを提示する。たとえば、ユーザは、オンライン・システム１４０から、またはサードパーティ・システム１３０から、アプリケーション１１５を取り出して、アプリケーション１１５をクライアント・デバイス１１０にインストールする。さまざまな実施形態では、アプリケーション１１５は、画像データ、映像データ、音声データ、またはデータの組み合わせを、クライアント・デバイス１１０を通じてユーザに提示する。さらに、アプリケーション１１５は、クライアント・デバイス１１０を通じてユーザから入力を受け取り、受け取った入力に基づいて、アプリケーション１１５によって提示されるコンテンツを修正することができる。たとえば、アプリケーション１１５は、画像データ、映像データまたは音声データを、クライアント・デバイス１１０を通じてユーザに提示するゲームである。
【００４２】
アプリケーション１１５がクライアント・デバイス１１０上で実行されてコンテンツをユーザに提示すると、クライアント・デバイス１１０は、ユーザに広告を提示することが可能な、アプリケーション１１５を通じて提示されるコンテンツを識別する（３０５）、アプリケーション１１５に含まれるオンライン・システム１４０からの命令を実行する。さまざまな実施形態において、アプリケーション１１５内の命令は、広告を提示するための１つまたは複数の基準を含むので、クライアント・デバイス１１０は、アプリケーション１１５によって提示されるコンテンツのうち、基準の少なくともしきい値数またはしきい値割合を満たすものを識別する（３０５）。たとえば、アプリケーション１１５がさまざまなオブジェクトを提示する場合、アプリケーション１１５内の命令を実行すると、一定の特性を有するオブジェクトが識別される（３０５）。一例として、命令の実行は、一定の表示特性を有するオブジェクトを識別する（３０５）（例、アプリケーションのバックグラウンドに提示されるオブジェクト、提示されるときに一定の寸法を有するオブジェクト）。特定の例では、命令を実行すると、提示されたときに少なくとも１つの平面を有する、アプリケーションのバックグラウンドに提示されるオブジェクトが識別される（３０５）。
【００４３】
命令を実行するアプリケーション１１５が、広告を提示することが可能な、アプリケーション１１５によって提示されるコンテンツを識別する（３０５）場合、アプリケーション１１５は、クライアント・デバイス１１０ならびにクライアント・デバイス１１０およびオンライン・システム１４０に連結されるネットワーク１２０を通じてオンライン・システム１４０に広告コンテンツ要求を送信する（３１０）。要求には、オンライン・システム１４０に対してクライアント・デバイス１１０のユーザを識別する情報が含まれる。たとえば、アプリケーション１１５は、サードパーティ・システム１３０によって維持されている、ユーザを記述する情報（例、人工統計学的情報、アプリケーション１１５との過去の対話、ユーザの関心等）を取り出し、取り出した情報を、オンライン・システム１４０に送信される（３１０）要求に含める。さまざまな実施形態において、サードパーティ・システム１３０によって維持されている、ユーザを記述する一定のタイプの情報（例、サードパーティ・システム１３０に対してユーザを一意に識別する情報）は、要求に含まれないようにされるが、他のタイプの情報は、オンライン・システム１４０に送信される（３１０）要求に含めることが可能である。
【００４４】
別の例として、オンライン・システム１４０およびアプリケーション１１５に関連付けられているエンティティ（例、サードパーティ・システム１３０）は、クライアント・デバイス１１０に記憶されている識別子を、エンティティによってユーザに関連付けられた識別子およびオンライン・システム１４０によってユーザに関連付けられた識別子と同期、すなわち、一致させる。たとえば、オンライン・システムは、ユーザに関連付けられた識別子、たとえばクッキーを、クライアント・デバイス１１０に記憶する。同様に、アプリケーション１１５に関連付けられているエンティティは、エンティティによってユーザに関連付けられた識別子をクライアント・デバイス１１０に記憶する。アプリケーション１１５に含まれる命令は、エンティティによってユーザに関連付けられてクライアント・デバイス１１０に記憶されている識別子を含む要求を、エンティティに通信する。要求の受け取りに応答して、エンティティは、クライアント・デバイス１１０が要求をオンライン・システム１４０に通信するために、リダイレクト要求をクライアント・デバイス１１０に通信する。リダイレクト要求は、エンティティによってユーザに関連付けられた識別子（例、エンティティ１３０によってクライアント・デバイス１１０に記憶されているクッキー）を含む。クライアント・デバイス１１０が、リダイレクト要求によって指定されるオンライン・システム１４０に要求を通信する場合、クライアント・デバイス１１０からオンライン・システム１４０に通信される要求には、オンライン・システム１４０によってユーザに関連付けられて、クライアント・デバイス１１０に記憶されている識別子（例、オンライン・システム１４０によってクライアント・デバイス１１０に記憶されているクッキー）が含まれる。さらに、クライアント・デバイス１１０からオンライン・システム１４０に通信される要求には、エンティティによってユーザに関連付けられ、エンティティからのリダイレクト要求から取得される識別子が含まれる。そのため、オンライン・システム１４０は、クライアント・デバイス１１０からオンライン・システム１４０に通信される要求から、エンティティによってユーザに関連付けられた識別子を抽出して、エンティティによってユーザに関連付けられた識別子を、オンライン・システム１４０によってユーザに関連付けられた識別子に関連付けることができる。オンライン・システム１４０は、要求に含まれているとともにオンライン・システム１４０によってユーザに関連付けられた識別子からユーザを識別し、エンティティによってユーザに関連付けられた識別子を、ユーザにリンクさせる。たとえば、エンティティからクライアント・デバイス１１０へのリダイレクト要求は、エンティティによってユーザに関連付けられたクッキーを含み、これは、クライアント・デバイス１１０からオンライン・システム１４０への要求に含まれて、さらにオンライン・システム１４０によってユーザに関連付けられたクッキーも含む。オンライン・システム１４０は、オンライン・システム１４０によってユーザに関連付けられたクッキーに基づいてユーザを識別し、エンティティによってユーザに関連付けられたクッキーを、オンライン・システム１４０によってユーザに関連付けられたクッキーに関連付ける情報を記憶する。
【００４５】
さらに、要求は、広告コンテンツを提示するべきアプリケーション１１５のコンテキストを記述する情報を含む。アプリケーション１１５のコンテキストは、アプリケーション１１５とのユーザの過去の対話、アプリケーション１１５がユーザに以前に提示したコンテンツ、アプリケーション１１５によってユーザに関連付けられたデータ、またはアプリケーション１１５におけるユーザの状態を記述する他の適した情報もしくはアプリケーション１１５が提示するコンテンツに少なくとも部分的に基づくことができる。たとえば、要求は、１つまたは複数のトピックを含む。さまざまな実施形態において、アプリケーション１１５に関連付けられているエンティティは、アプリケーションのコンテンツを提示するべき異なるコンテキストにさまざまなトピックを関連付ける。異なるトピックは、ユーザによるアプリケーション１１５との過去の対話の異なる組み合わせ、広告を提示することが可能なコンテンツとともにユーザに提示される異なる追加コンテンツ、以前にユーザに提示した異なるコンテンツ、または前述の要因の任意の組み合わせに関連付けられてもよい。要求に含まれるトピックの中の１つまたは複数は、広告を提示することが可能なコンテンツをアプリケーション１１５によって提示するべきコンテキストに基づく一方で、いくつかの実施形態では、要求に含まれる他のトピックは、他の情報（例、アプリケーションまたはユーザに関連付けられているトピック）に基づく。
【００４６】
広告を提示するべきアプリケーションのコンテキストは、アプリケーション１１５が広告をユーザにどのように提示するべきかに基づくことができる。たとえば、要求は、アプリケーション１１５の１つまたは複数の表示特性を記述する情報を含む。例示的な表示特性には、アプリケーション１１５からのコンテンツをクライアント・デバイス１１０が表示する解像度、広告を提示することが可能な、アプリケーション１１５によって提示されるコンテンツのアスペクト比、広告を提示することが可能な、アプリケーション１１５によって提示されるコンテンツの色、広告を提示することが可能なコンテンツと併せてアプリケーション１１５が提示する追加コンテンツ（例、広告を提示することが可能なオブジェクトとともに提示される追加オブジェクト）、またはアプリケーション１１５によって広告を提示することが可能なコンテンツの提示を記述する他の適した情報が含まれる。さまざまな実施形態において、アプリケーション１１５は、音声データを提供し、音声データの一部が広告を提示することができる。そのため、要求は、アプリケーション１１５が提供する音声データの音量、アプリケーション１１５内のユーザのロケーションに対する音声データのソース（例、アプリケーション１１５によって提示されるコンテンツに対してユーザのロケーションの後ろにあるソースから音声データが提示されるかどうか、アプリケーション１１５によって提示されるコンテンツに対してユーザのロケーションの前にあるソースから音声データが提示されるどうか等）、広告を提示することが可能な音声データがフォアグラウンド音声データかバックグラウンド音声データか、アプリケーション１１５が提示する他の音声データか、または他の適切な情報かを識別することができる。
【００４７】
アプリケーションからクライアント・デバイス１１０を通じて受け取った要求に基づいて、オンライン・システム１４０は、アプリケーション１１５を通じてユーザに提示するための広告を選択する（３１５）。図２と併せて上記詳細に説明したように、オンライン・システム１４０は、要求に含まれる情報が少なくともしきい値数のターゲティング基準を満たす記憶済み広告要求（「アド要求」）を識別し、識別された記憶済みアド要求から広告を選択する（３１５）。たとえば、オンライン・システム１４０は、識別済みアド要求をその入札額に少なくとも部分的に基づいてランク付けし、ランキングで少なくともしきい値位置にあるアド要求（例、ランキングの最上位のアド要求）から広告を選択する（３１５）。別の例として、オンライン・システム１４０は、最高入札額を有するアド要求から広告を選択する（３１５）。いくつかの実施形態では、オンライン・システム１４０は、要求に含まれるオンライン・システム１４０に対してユーザを識別する情報に基づいて、オンライン・システム１４０によってユーザに関連付けられた情報を識別し、オンライン・システム１４０によってユーザに関連付けられた情報を報告する。たとえば、図２と併せて上記詳細に説明したように、オンライン・システム１４０は、ユーザに関連付けてオンライン・システム１４０が記憶しているコンテンツ・アイテムとの過去の対話に基づいて、さまざまなアド要求からの広告とユーザが対話する可能性を決定し、広告を含むアド要求に関連付けられている入札額およびアド要求内の広告とユーザが対話する可能性に基づく予測価値に基づいて広告を選択する。いくつかの実施形態では、オンライン・システム１４０は、ランキングで少なくともしきい値位置にあるアド要求からの広告、または少なくともしきい値予測価値を有する広告など、複数の広告を選択する（３１５）。
【００４８】
オンライン・システム１４０は、選択済み広告（または複数の広告）をクライアント・デバイス１１０に送信し（３２０）、クライアント・デバイス１１０は、選択済み広告を受け取って、それをアプリケーション１１５に通信する。さまざまな実施形態において、アプリケーション１１５は、受け取った１つまたは複数の広告を記憶する。たとえば、アプリケーション１１５は、受け取った広告を、しきい値時間量の間記憶する。
【００４９】
オンライン・システム１４０によって選択された広告（または複数の広告）を受け取った後、アプリケーション１１５は、広告を提示することが可能な識別済みコンテンツがアプリケーション１１５によってユーザに提示されているかを決定する（３２５）。さまざまな実施形態において、アプリケーション１１５は、少なくともしきい値量の識別済みコンテンツがアプリケーション１１５によってユーザに提示される場合、広告を提示することが可能な識別済みコンテンツがユーザに提示されていると決定する（３２５）。たとえば、識別済みコンテンツのうち少なくとも４０％がユーザに提示される場合、アプリケーション１１５は、識別済みコンテンツがユーザに提示されていると決定する（３２５）。いくつかの実施形態では、アプリケーション１１５は、ユーザがアプリケーションと対話しているときに、少なくともしきい値割合の識別済みコンテンツがその視界に入っている場合、識別済みコンテンツがユーザに提示されていると決定する（３２５）。アプリケーション１１５内のユーザの視界は、現時点でアプリケーション１１５がクライアント・デバイス１１０を通じてユーザに提示するコンテンツである。たとえば、アプリケーション１１５内のユーザの視界は、アプリケーション１１５を実行するクライアント・デバイス１１０の表示装置を通じて提示される、アプリケーション１１５が提供するコンテンツの一部である。たとえば、アプリケーション１１５がゲームである場合、ユーザの視界は、現時点でクライアント・デバイス１１０の表示装置を通じてユーザに提示されるゲームからのコンテンツである。いくつかの実施形態においては、アプリケーション１１５は、少なくともしきい値量の識別済みコンテンツがユーザの視界に入っている場合に、識別済みコンテンツがユーザの視界に入っていると決定する（３２５）。しきい値量は、識別済みコンテンツの割合であってもよく、または指定量であってもよい。異なるタイプの識別済みコンテンツを異なるしきい値量に関連付けることができ、ユーザに提示されたときに、識別済みコンテンツがユーザに提示されているとアプリケーション１１５に決定させる（３２５）。たとえば、アプリケーション１１５がゲームである場合、ゲームによってユーザの近くに提示されるオブジェクトは、ゲームが少量のオブジェクトを提示するときには該オブジェクトがユーザに提示されていると決定される（３２５）一方で、ゲームによってユーザの遠くに提示されるオブジェクトは、より多くの量がユーザに提示されなければ、該オブジェクトがユーザに提示されているとアプリケーション１１５によって決定されない（３２５）（たとえば、ゲームのフォアグラウンドにあるオブジェクトは、該オブジェクトがユーザに提示されているとアプリケーション１１５が決定する（３２５）には、ゲームのバックグラウンドにあるオブジェクトが提示されているとアプリケーション１１５が決定する（３２５）場合よりも少ない量で提示される）。別の例として、アプリケーション１１５は、１つまたは複数の特定のソースまたは特定のタイプのソースからの音声データがアプリケーション１１５によって提示されていると決定すると、識別済みコンテンツがアプリケーション１１５によってユーザに提示されていると決定する（３２５）。
【００５０】
広告を提示することが可能な識別済みコンテンツがアプリケーション１１５によってユーザに提示されているとの決定（３２５）に応答して、アプリケーション１１５は、オンライン・システム１４０から識別済みコンテンツを通じて受け取った選択済み広告を提示する。たとえば、アプリケーション１１５は、受け取った広告を識別済みコンテンツの上に重ねるので、受け取った広告は、アプリケーション１１５を通じて、アプリケーション１１５が提示する他のコンテンツとともに提示される。アプリケーション１１５がゲームである場合、さまざまな実施形態において、選択済み広告は、ユーザの視界に入っているオブジェクトの表面上のオーバーレイとして提示される（３３０）。一例として、選択済み広告は、ゲームがユーザに提示する壁または仮想掲示板の表面上に提示される（３３０）。識別済みコンテンツを通じて選択済み広告を提示することで、ユーザがアプリケーション１１５なしで対話しているときに、広告との対話から邪魔されることなく、選択済み広告を提示する（３３０）ことが可能になり、また、ユーザがアプリケーション１１５と対話しているときは、広告をより体系的に提示する（３３０）ことが可能になる。
【００５１】
広告を表示することが可能な識別済みコンテンツを通じて選択済み広告を提示する（３３０）ことに応答して、アプリケーション１１５は、アプリケーション１１５の識別済みコンテンツを通じて選択済み広告が提示される（３３０）継続期間を記述する情報を捕捉する（３３５）。継続期間を記述する捕捉された情報は、選択済み広告が識別済みコンテンツを通じて最初に提示された（３３０）時刻を識別することができる。さまざまな実施形態において、捕捉された情報は、少なくともしきい値量の選択済み広告がアプリケーション１１５内のユーザの視界に入っている継続期間を記述する。たとえば、継続期間は、少なくともしきい値量の選択済み広告が、アプリケーション内のユーザの視界においてユーザに見えている時間の長さを識別する。一例として、継続期間を記述する情報は、選択済み広告の少なくとも６０％がアプリケーション１１５内のユーザの視界において見えている時間の長さを指定する。選択済み広告が音声データを含む場合、継続時間は、アプリケーション１１５を通じて広告がユーザに聞こえる時間の長さを指定する。たとえば、広告内の音声データの提示の継続時間は、アプリケーションが広告内の音声データを少なくともしきい値音量で再生する時間の長さを指定する。
【００５２】
アプリケーション１１５は、捕捉した情報を、提示された選択済み広告の識別子とともにクライアント・デバイス１１０からオンライン・システム１４０に送信する（３４０）。いくつかの実施形態では、アプリケーション１１５は、捕捉した情報を定期的な間隔で送信して（３４０）、選択済み広告の経時的な提示（３３０）を記述する情報をオンライン・システム１４０に提供する。あるいは、オンライン・システム１４０は、捕捉した情報を求める要求をアプリケーション１１５に通信し、アプリケーション１１５が、要求の受け取りに応答して、捕捉した情報をオンライン・システム１４０に送信する（３４０）。他の実施形態では、アプリケーション１１５は、一定の基準が満たされたときに、捕捉した情報を送信する（３４０）。たとえば、アプリケーション１１５は、選択済み広告が時間のしきい値長さの間提示された（３３０）とき、またはアプリケーション１１５を通じてユーザに見える（または聞こえる）選択済み広告の量が指定の割合もしくは量だけ増減するとき、捕捉した情報を送信する（３４０）。オンライン・システム１４０は、捕捉した情報を選択済み広告の識別子とともに記憶し、選択済み広告が提示された（３３０）継続時間の記述に１つまたは複数のルールを適用する。さまざまなルールは、ユーザに対する選択済み広告のインプレッションに対応する、選択済み広告を提示した（３３０）最短時間の長さ、選択済み広告のインプレッションに対応する、ユーザに提示する（３３０）べき選択済み広告の最低量、または選択済み広告のインプレッションに対応する、ユーザに対して提示した（３３０）選択済み広告内の音声データの最短の長さを識別する。ルールは、選択済み広告をアプリケーション１１５が提示した（３３０）時間の長さの継続時間と、選択済み広告をアプリケーション１１５が提示した（３３０）最低量との組み合わせを識別して、選択済み広告のインプレッションを識別することができる。捕捉した情報が選択済み広告のインプレッションを識別する１つまたは複数のルールを満たす場合、オンライン・システム１４０は、選択済み広告の識別子に関連付けてインプレッションを識別する情報を記憶するか、または選択済み広告の識別子に関連付けて記憶された情報を、選択済み広告のインプレッションが発生したことを示すように修正する。
【００５３】
さらに、選択済み広告がアプリケーション１１５を通じてユーザに提示されている（３３０）ときに、ユーザは、アプリケーション１１５を通じて選択済み広告と対話することができる。アプリケーション１１５とのさまざまな対話は、アプリケーション１１５によって識別されることができ、識別された対話に基づいて、選択済み広告の提示を修正する。アプリケーション１１５との対話に対応した広告提示の修正は、選択済み広告に関連付けられているエンティティが指定して、選択済み広告とともにアプリケーション１１５が実行されるクライアント・デバイス１１０に通信するか、またはアプリケーション１１５によって決定することができる。たとえば、一定の対話は、アプリケーションに、選択済み広告の提示を中止させるか、または選択済み広告の提示の仕方を修正させる。一例として、アプリケーション１１５がゲームであって、選択済み広告が映像または音声データを含む場合、ゲーム内の１つまたは複数のオブジェクト（例、仮想環境に含まれるリモートコントロール、選択済み広告がその上に提示される（３３０）オブジェクト）との対話で、選択済み広告によって提示される音声データの音量が増減する。他の実施形態では、アプリケーション１１５（例、アプリケーション１１５内のオブジェクト、またはアプリケーション１１５が提供するコンテンツ）との対話は、選択済み広告を含む映像データを一時停止するか、選択済み広告を含む映像データの再生速度を変更するか、選択済み広告の提示（３３０）を中止するか、または選択済み広告の提示に対して他の適切な修正を行う。具体的な例として、アプリケーション１１５が、アプリケーション１１５内でユーザが仮想オブジェクトを射撃できるゲームである場合、選択済み広告を提示するアプリケーション１１５内の識別済みコンテンツをユーザが射撃すると、広告の提示（３３０）が中止されるか、またはアプリケーション１１５によって提示される特定のオブジェクトをユーザが射撃すると、広告の提示（３３０）が一時停止され、ユーザがその特定のオブジェクトもしくはアプリケーション１１５が提示する別のオブジェクトを射撃すると再開することができる。そのため、アプリケーション１１５との対話により、ユーザは、アプリケーション１１５を通じた選択済み広告の提示（３３０）を修正することが可能になる。アプリケーション１１５は、選択済み広告と、アプリケーション１１５との受け取った対話に対応する選択済み広告の提示（３３０）の修正と、を識別する情報をオンライン・システム１４０に送信して、選択済み広告のユーザへの提示（３３０）を記述する情報をオンライン・システム１４０が記憶することを可能にする。
【００５４】
選択済み広告をアプリケーション１１５によってアプリケーション１１５内の識別済みコンテンツを通じて提示しているとき、アプリケーション１１５は、識別済みコンテンツをユーザに提示し続けるかどうかを決定する（３４５）。さまざまな実施形態では、アプリケーション１１５は、少なくともしきい値量の識別済みコンテンツが、アプリケーション内のユーザの視界において見えているかどうかを決定する。アプリケーション内のユーザの視界において見えている識別済みコンテンツがしきい値量未満の量である場合、アプリケーション１１５は、識別済みコンテンツがユーザに提示されていないと決定し（３４５）、識別済みコンテンツを通じた選択済み広告の提示を中止する（３５０）。たとえば、アプリケーション１１５内のユーザの視界において見えているのが識別済みコンテンツの３０％未満である場合、アプリケーション１１５は、ユーザに提示されていないと決定し（３４５）、選択済み広告の提示を中止する（３５０）。いくつかの実施形態では、選択済み広告の提示をアプリケーション１１５が中止する（３５０）場合、アプリケーション１１５は、選択済み広告を提示する（３３０）オーバーレイを識別済みコンテンツから取り除くので、識別済みコンテンツ自体がアプリケーション１１５によって提示される。選択済み広告が映像データを含む場合、アプリケーション１１５は、映像データの再生を止めて、識別済みコンテンツ上のオーバーレイを通じて映像データからフレームを提示し、選択済み広告の提示を中止する（３５０）。選択済み広告が音声データを含む、または備える場合、アプリケーション１１５は、音声データの音量を小さくするか、または音声データの再生を止めて、選択済み広告の提示を中止する（３５０）。
【００５５】
さまざまな実施形態において、アプリケーション１１５は、選択済み広告の提示の中止（３５０）を記述する情報をオンライン・システム１４０に送信する（３５５）。たとえば、アプリケーション１１５は、選択済み広告の提示が中止される（３５０）時刻を、選択済み広告の識別子とともに送信する（３３５）。いくつかの実施形態では、オンライン・システム１４０は、選択済み広告の提示をアプリケーション１１５が開始した時刻と、選択済み広告の提示をアプリケーション１１５が中止した（３５０）時刻とに基づいて、選択済み広告のインプレッションが発生したかどうかを決定する。たとえば、オンライン・システム１４０は、選択済み広告の提示をアプリケーション１１５が開始した時刻と、選択済み広告の提示をアプリケーション１１５が中止した（３５０）時刻との差を決定する。オンライン・システム１４０は、インプレッションに関連付けられた時間のしきい値長さと、決定した差とを比較する。決定した差が時間のしきい値長さに等しいかまたはこれを超える場合、オンライン・システム１４０は、選択済み広告の識別子に関連付けられている情報を、選択済み広告のインプレッションの発生を識別するように修正する。したがって、オンライン・システム１４０は、選択済み広告の提示を記述するアプリケーション１１５からの情報に基づいて、または、アプリケーション１１５による選択済み広告の提示の開始時刻と終了時刻とを識別するアプリケーション１１５からの情報に基づいて、選択済み広告のインプレッションが発生したかどうかを、アプリケーション１１５を通じて決定することができる。アプリケーション１１５を通じて選択済み広告のインプレッションを識別することで、オンライン・システム１４０は、アプリケーション１１５を通じた選択済み広告の提示を報告する、選択済み広告の提示を記述する正確な情報を維持することが可能になる。したがって、アプリケーション１１５は、アプリケーション１１５を通じて提示される識別済みコンテンツにより選択済み広告を提示する（３３０）べきときと、アプリケーション１１５を通じて選択済み広告の提示を中止する（３５０）べきときと、を決定する一方で、オンライン・システム１４０によってアプリケーション１１５に提供される命令は、図３と併せて上記説明した他の機能を自動化し、アプリケーション１１５を通じたオンライン・システム１４０からの広告の提示を簡素化する。
【００５６】
図３は、アプリケーション１１５によって提示される識別済みコンテンツによる広告の選択および提示を記述するが、任意のコンテンツ・アイテムをオンライン・システム１４０によって選択し、その後、該コンテンツ・アイテムを提示することが可能な識別済みコンテンツを通じて、アプリケーション１１５によって提示する（３３０）ことができる。たとえば、アプリケーション１１５は、あるタイプのコンテンツ・アイテム（例、広告、情報、他のオンライン・システムのユーザによるアクションの記述等）を識別するコンテンツであって、かつオンライン・システム１４０によってユーザに関連付けられている情報をオンライン・システム１４０が識別することが可能な情報を含むコンテンツの要求を、オンライン・システム１４０に送信する（３１０）。オンライン・システム１４０は、選択済みコンテンツ・アイテムとユーザが対話する可能性に少なくとも部分的に基づいて、ユーザに対するコンテンツ・アイテムを選択し（３１５）、選択済みコンテンツ・アイテムをアプリケーション１１５に送信し（３２０）、アプリケーション１１５は、上記説明したようにアプリケーションを提示することが可能な識別済みコンテンツを通じてコンテンツ・アイテムを表示する。
【００５７】
図４は、クライアント・デバイス１１０上で実行されるアプリケーション１１５によって提供されるコンテンツ内での、オンライン・システム１４０からのコンテンツの提示の例である。図４の例では、アプリケーション１１５は、部屋を描写するコンテンツ４０５をユーザに提示する。たとえば、図４のアプリケーションはゲームであり、図４に示される部屋は、アプリケーションがクライアント・デバイス１１０の表示装置を通じて提示するゲーム環境の一部である。コンテンツ４０５は、ユーザに提示されるさまざまなオブジェクト４１０、４２０、４２５を含む。例示のために、図４は、３つのオブジェクト４１０、４２０、４２５を識別しているが、さまざまな実施形態においては、アプリケーション１１５が提示するコンテンツ４０５から、さまざまな数のオブジェクトを識別することができる。
【００５８】
図４の例では、アプリケーション１１５は、オンライン・システム１４０からのコンテンツを提示することが可能なものとしてオブジェクト４１０を識別するが、オブジェクト４２０、４２５は、オンライン・システム１４０からのコンテンツを提示することはできない。たとえば、オブジェクト４１０は、表示されたときに少なくともしきい値寸法を有する平面を含むが、オブジェクト４２０、４２５は、しきい値寸法を満たす平面を有していない。別の例では、オブジェクト４２０、４２５は、アプリケーション１１５を通じてユーザが対話することが可能であるが、オブジェクト４１０は、ユーザが対話することが不可能なオブジェクトである。そのため、オンライン・システム１４０からのコンテンツを提示することは、アプリケーション１１５とのユーザの対話を損なうので、オブジェクト４２０、４２５は、オンライン・システム１４０からのコンテンツを提示することは不可能であるが、オブジェクト４１０は、オンライン・システム１４０からのコンテンツを提示することが可能である。
【００５９】
図３と併せて上記説明したように、オンライン・システム１４０からのコンテンツを提示することが可能なものとしてオブジェクト４１０を識別することに応答して、アプリケーションは、オンライン・システム１４０に、広告などのコンテンツ・アイテム４１５を要求する。オンライン・システム１４０からコンテンツ・アイテム４１５を受け取った後、オブジェクト４１０がユーザに提示されているとアプリケーション１１５が決定すると、アプリケーション１１５は、オブジェクト４１０を通じてコンテンツ・アイテム４１５を提示する。たとえば、少なくともしきい値割合または量のオブジェクト４１０がユーザに見える場合、またはオブジェクト４１０がアプリケーション１１５内のユーザの視界における指定の位置からしきい値距離内にあるとき、アプリケーション１１５は、オブジェクト４１０がユーザに提示されていると決定する。オブジェクト４１０をユーザに提示するとき、アプリケーション４１５は、オンライン・システム１４０からのコンテンツ・アイテム４１５をオブジェクト４１０上のオーバーレイとして提示する。図４に図示するように、これにより、アプリケーション１１５からのコンテンツ４０５とユーザが対話することが可能であると同時に、オンライン・システム１４０がコンテンツ・アイテム４１５を提示することも可能である。ユーザが対話することが可能なアプリケーション１１５からのコンテンツ４０５は、コンテンツ・アイテム４１５によって隠されないので、アプリケーション１１５とのユーザの対話は損なわれない。図３と併せて上記説明したように、オンライン・システム１４０にコンテンツ・アイテム４１５を要求するとき、アプリケーション１１５は、コンテンツ・アイテム４１５を提示するべきコンテキストを記述する情報を、オンライン・システム１４０に提供することができる。これにより、コンテンツ・アイテム４１５は、アプリケーションが提示する他のコンテンツ４０５に関わる情報を含むことが可能になり、ユーザがアプリケーション１１５と対話しながらコンテンツ・アイテム４１５を視聴する可能性を高めることができる。たとえば、図４では、コンテンツ・アイテム４１５は、コンテンツ４０５によって描写される部屋に含まれそうなアイテムの広告である。図３と併せて上記説明したように、オブジェクト４１０がアプリケーション１１５によってユーザに提示されなくなると（例、しきい値量未満のオブジェクト４１０が提示されるとき、オブジェクト４１０がアプリケーション１１５内のユーザの視界における位置からしきい値距離より離れているとき）、アプリケーション１１５は、コンテンツ・アイテム４１５の提示を中止し、コンテンツ・アイテム４１５を含むオーバーレイなしで、オブジェクト４１０を提示する。
【００６０】
まとめ
上記の実施形態の説明は、例示の目的で提示されており、網羅的なものであるように、または特許権を開示された形態そのものに限定するように意図されていない。上記の開示に鑑みて、多くの修正および変形形態が可能であることは、当業者であれば了解されるであろう。
【００６１】
この説明のいくつかの部分は、情報に対する操作のアルゴリズムおよび記号表現の観点から、実施形態を説明している。これらのアルゴリズムに関する説明および表現は、データ処理分野における当業者によって、自らの作業の本質を他の当業者に有効に伝えるために一般に使用される。これらの操作は、機能的、計算的、または論理的に説明されるが、コンピュータ・プログラムまたは等価な電気回路、マイクロコードなどによって実装されることが理解される。さらにまた、これらの操作の配列を、一般性を損なうことなく、モジュールと呼ぶことが場合によっては好都合であることも判明している。説明された操作およびそれらの関連付けられたモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組合せにおいて具現化され得る。
【００６２】
本願明細書で説明された工程、操作、またはプロセスのうちのいずれかが、１または複数のハードウェアまたはソフトウェア・モジュールによって、単独でまたは他のデバイスと組合せて、実施または実装され得る。一実施形態では、ソフトウェア・モジュールは、説明された工程、操作、またはプロセスのうちのいずれかまたはすべてを実施するためにコンピュータ・プロセッサによって実行され得るコンピュータ・プログラム・コードを含有するコンピュータ可読媒体を備えるコンピュータ・プログラム製品によって実装される。
【００６３】
実施形態はまた、本願明細書の操作を実施するための装置にも関し得る。この装置は、要求された目的のために特別に構築されてよく、および／または、コンピュータに記憶されたコンピュータ・プログラムによって選択的に起動または再構成される汎用コンピューティング・デバイスを備えてよい。そのようなコンピュータ・プログラムは、コンピュータ・システム・バスに結合され得る、非一時的な有形のコンピュータ可読記憶媒体、または電子命令を記憶するために好適な任意のタイプの媒体に記憶され得る。さらに、本願明細書で言及される任意のコンピューティング・システムは、単一のプロセッサを含んでよく、または、増大されたコンピューティング力のために複数のプロセッサ設計を採用するアーキテクチャであってよい。
【００６４】
実施形態はまた、本願明細書で説明されたコンピューティング・プロセスによって作り出される製品にも関し得る。そのような製品は、コンピューティング・プロセスから得られる情報を備えることができ、その場合、その情報は、非一時的な有形のコンピュータ可読記憶媒体に記憶され、本願明細書で説明されたコンピュータ・プログラム製品または他のデータの組合せの任意の実施形態を含み得る。
【００６５】
最後に、本願明細書で使用される言語は、主に読み易さおよび教示目的のために選択されており、特許権を線引きまたは制限するように選択されていないことがある。したがって、特許権の範囲は、この発明を実施するための形態によってではなく、明細書に基づく出願において出るいずれかの請求項によって限定されることが意図される。したがって、実施形態の開示は、以下の特許請求の範囲に記載される特許権の範囲を限定するのではなく例示することが意図される。
【図１】
0006767476.tif 000002
【図２】
0006767476.tif 000003
【図３】
0006767476.tif 000004
【図４】
0006767476.tif 000005