(58)【調査した分野】(Int.Cl.,DB名)
ソーシャル・ネットワーキング・システムに関連付けられている1つ以上のコンピューティング・デバイスが、複数のノードと、前記ノード同士をつなげる複数のエッジとを備えるソーシャル・グラフを維持する維持工程であって、前記ノードは、
前記ソーシャル・ネットワーキング・システムのユーザに各々が関連付けられている複数のユーザ・ノードと、
各々が概念に関連付けられている複数の概念ノードであって、1つ以上の概念ノードの各々は、対応する位置に関連付けられている、概念ノードと、を備える、前記維持工程と、
前記ソーシャル・ネットワーキング・システムに関連付けられている前記1つ以上のコンピューティング・デバイスが、ソーシャル情報を求める要求をするユーザに関連付けられているコンピューティング・デバイスから要求を受信する受信工程であって、前記要求が、要求をする前記ユーザに関連付けられているコンピューティング・デバイスの位置と、要求をする前記ユーザに関連付けられているコンピューティング・デバイスの配向と、要求をする前記ユーザに関する識別子とを含む、前記受信工程と、
前記ソーシャル・ネットワーキング・システムに関連付けられている前記1つ以上のコンピューティング・デバイスが、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置に関連付けられている前記1つ以上の概念ノードの各々に関する関連性スコアを決定する決定工程であって、前記関連性スコアは、前記要求と、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置を伴う前記1つ以上の概念ノードの各々に関する時間値であって、前記時間値は、現在時刻が前記概念ノードに割り当てられている配信時間範囲内に存在するか否かに基づく、時間値と、前記ソーシャル・ネットワーキング・システムによって維持されている、要求をする前記ユーザに関連付けられているソーシャル・ネットワーキング情報と、前記概念ノードに関連付けられている対応する前記位置とに基づき、決定される、前記決定工程と、
前記ソーシャル・ネットワーキング・システムに関連付けられている前記1つ以上のコンピューティング・デバイスが、前記関連性スコアに基づいて、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の概念ノードのうちの少なくとも1つに関連付けられているソーシャル・ネットワーキング情報を、要求をす
る前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の1つ以上の前記概念ノードに関連付けられている少なくとも1つの位置のライブ・ビデオ画像とともに、要求をする前記ユーザに関連付けられているコンピューティング・デバイスに表示させる工程と
を備える方法。
要求をする前記ユーザに関連付けられている前記コンピューティング・デバイスが、画面、ヘッドアップ・ディスプレイ、カメラ、ジャイロスコープ、コンパス、またはそれらの任意の組合せを含む、請求項1に記載の方法。
前記決定工程が、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置を伴う1つ以上の概念ノードの各々に関する位置値を決定する工程を含み、該位置値は、(1)前記概念ノードに関連付けられている前記位置と、要求をする前記ユーザに関連付けられているコンピューティング・デバイスの前記位置との間の近接性、(2)要求をする前記ユーザに関連付けられているコンピューティング・デバイスの前記配向、または(3)それらの任意の組合せに基づく、請求項1に記載の方法。
前記決定工程が、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置を伴う1つ以上の概念ノードの各々に関する関心値を決定する工程を含み、該関心値は、前記概念ノードに関連付けられているカテゴリーが要求をする前記ユーザに関する親密度情報に関連付けられている前記1つ以上のカテゴリーに含まれるか否かに基づく、請求項1に記載の方法。
前記決定工程が、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置を伴う1つ以上の概念ノードの各々に関するつながり値を決定する工程を含み、該つながり値は、前記概念ノードに対する、要求をする前記ユーザのつながりの数に基づく、請求項1に記載の方法。
前記概念ノードに割り当てられている配信時間範囲が前記配信時間範囲に関連付けられている行動を有し、前記行動が要求をする前記ユーザによって実行される、請求項1に記載の方法。
前記概念ノードに割り当てられている配信時間範囲は、前記概念ノードが要求をする前記ユーザによって受信されるのに適しているか否かを示している、請求項1に記載の方法。
前記概念ノードのうちの少なくとも1つに対する、要求をする前記ユーザの露出に基づいて、要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の対応する位置を伴う概念ノードのうちの前記少なくとも1つの前記関連性スコアを調整する工程をさらに備える、請求項12に記載の方法。
要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の前記概念ノードのうちの少なくとも1つとの関連付けにより、要求をする前記ユーザによる行動を示す指示を受信する工程と、
前記指示に応じて、前記ソーシャル・グラフを更新する工程と
をさらに備える、請求項1に記載の方法。
前記ソーシャル・グラフの前記1つ以上のノードが、第三者によって提供されている情報、前記ソーシャル・ネットワーキング・システムとのユーザの対話に関する情報、またはそれらの任意の組合せを含む、請求項1に記載の方法。
要求をする前記ユーザに関連付けられているコンピューティング・デバイスのしきい値距離内の少なくとも1つの概念ノードに関連付けられている前記ソーシャル・ネットワーキング情報が、要求をする前記ユーザに関連付けられているコンピューティング・デバイ
スに提供される、請求項18に記載のソーシャル・ネットワーキング・システム。
【発明を実施するための形態】
【0005】
特定の実施形態では、物理的空間の画像がソーシャル・ネットワーキング情報とともに表示される。物理的空間における位置は、ソーシャル・ネットワーキング・システムに関連付けられたソーシャル・グラフにおけるノードに関連付けられることが可能である。そのような位置に関連付けられたノードに関連付けられたソーシャル・ネットワーキング情報は、画像とともに表示され得る。ユーザは、ソーシャル・グラフにおけるノードに関連付けられている物理的空間における位置に関して行動を起こすこと、例えば、「「いいね」を表明する(Like)」ことも可能である。近接ノードと、関連するコンテンツとの選択は、ユーザ・コンテンツに対する関連性をスコアリングすることに基づくことが可能であり、ランク付けされた順序で提示され得る。
【0006】
例示的な実施形態
図1は、ユーザのスマートフォンによって取り込まれるユーザの実世界物理環境のライブ・ビデオ画像をオーバレイするソーシャル・ネットワーキング情報の例を示す例示的なワイヤフレームである。ソーシャル・ネットワーキング情報は、近接位置に割り当てられるソーシャル・グラフにおけるノードに関連付けられている。特定の実施形態では、スマートフォン100は、表示画面105とカメラ110とを含む。カメラ110は、ビデオ画像、静止画像、またはそれらの両方を取り込むことが可能な場合がある。スマートフォン100は、セル・ネットワークまたはWi−Fi(登録商標)など、通信ネットワークによって、ソーシャル・ネットワーキング・システムに接続することが可能な場合がある。ソーシャル・ネットワーキング・システムに関連付けられたネットワーク環境の特定の実施形態は、
図5および本明細書の関係文章においてより詳細に説明される。スマートフォン100は、GPSを介してスマートフォン100自体の位置を検出することが可能な場合がある。スマートフォン100は、スマートフォン100がカメラ110に関しどの方角を指すかを検出するコンパスを含むことも可能である。スマートフォン100は、スマートフォン100の配向(例えば、スマートフォン100が上方に傾けられているか、もしくは下方に傾けられているか、または水平に向けられているか)を検出するジャイロメータを含むことも可能である。本発明の実施形態は、スマートフォンから要求を受信することまたはスマートフォンに情報を送信することに限定されないことと、
図6および本明細書の関係文章において説明されるように、他のタイプのコンピューティング・デバイスに関連して実行され得ることとが、当業者によって認識される。
【0007】
スマートフォン100に関連付けられたユーザは、ソーシャル・ネットワーキング・システムの会員の場合があり、そのソーシャル・ネットワーキング・システムにおいて、デバイス・ユーザのプロファイルと、つながり(connection)情報と、コンテンツの関連付けとが維持される。ユーザは、ソーシャル・グラフにおけるユーザ・ノードによって表されることが可能である。ユーザの友達も、ソーシャル・グラフにおけるユーザ・ノードによって表されていてよく、1つ以上の分離程度を表すソーシャル・グラフにおけるエッジによって、そのユーザにつなげられる。ユーザが関連付けられるコンテンツは、ソーシャル・グラフにおける概念ノードによって表されることが可能である。ソーシャル・グラフの特定の実施形態は、
図4および本明細書の関係文章でさらに詳細に説明される。
【0008】
図1の例示的なワイヤフレームでは、スマートフォン100を保持しているユーザは、カメラ110を使用して、通りの両側の店舗を含めて、繁華街通りのライブ・ビデオを取り込む。ソーシャル・グラフにおける概念ノードによって、これらの店舗のうちの少なくとも4つが表され、それらの概念ノードの各々は位置に関連付けられている。
【0009】
スマートフォン100がライブ・ビデオを取り込むと、スマートフォン100からの要求がソーシャル・ネットワーキング・システムにおいて受信され、その要求は、カメラが
指している方角に関して、その位置に関係するソーシャル・ネットワーキング情報に対するものである。ソーシャル・ネットワーキング・システムに関連付けられたコンピュータ・サーバは、近接ノードのうちの4つがユーザに関連すると決定して、それらの近接ノードをランク付けする。
図1に示す例では:
位置Aは、関連付けられているウェブサイトを用いて概念ノードによってソーシャル・グラフにおいて表されている店舗である。ユーザの友達のうちの10人がザ・ガジェット・ギーク・ストア(The Gadget Geek Store)に対して「いいね」を表明した。ユーザに対する位置Aの近接性と、この位置に関して親密度を示した密接なつながりの数が多いことと、ユーザ自身が示したガジェットへの関心とにより、位置Aは関連すると見なされて、最高にランク付けされた。
【0010】
位置Bは、関連付けられているウェブサイトを用いて概念ノードによってソーシャル・グラフにおいて表されている店舗である。ユーザの友達のうちの1人がこの位置に先ほど(1時間前に)チェックインして、コメント「シャビー・シック・ファニチャ(Shabby Chic Furniture)で75%特売!」を投稿した。ユーザに対する位置Bの近接性と、ユーザの友達による投稿が先ほど行われたこととにより、位置Bは関連すると見なされて、2番目に高くランク付けされた。
【0011】
位置Cは、概念ノードによってソーシャル・グラフにおいて表されている店舗である。この店舗(セルフォンズ・ア・ゴーゴー(Cellphones−A−Go−Go))は、現在、集中的な広告プログラム(「ファミリー・プランにより2つ目の電話が無料!」)を設けた販売促進を行っている。ユーザに対する位置Cの近接性と、ユーザが最近その状況を「既婚」に変更したという事実とから、位置Cは、関連すると見なされて、3番目に高くランク付けされた。
【0012】
位置Dは、ユーザの友達がその位置に関連する写真を撮影し、次いで、その写真中の彼らの顔を選択することによって、そのユーザと2人の他の人物とをタグ付けした地理的位置である。ユーザに対する位置Dの近接性と、この位置に関連付けられたコンテンツにユーザが関連付けられたという事実とから、位置Dは関連すると見なされて、4番目に高くランク付けされた。
【0013】
図1に示すように、画像上にソーシャル・ネットワーキング情報のオーバレイを生成する際に伴われる工程は、
図2および本明細書の関係文章においてさらに詳細に説明される。
【0014】
図2は、実世界環境の画像とともにソーシャル・ネットワーキング情報を表示するための例示的な方法の流れ図である。工程210では、特定の実施形態は、ソーシャル・グラフにおけるユーザ・ノードによって表されるユーザに関するソーシャル・ネットワーキング情報を維持する。これは、ユーザ・プロファイル情報、関心、つながり/関係の情報、ソーシャル・グラフにおける他のノードに関して起こされた行動の履歴、ユーザに関連付けられたコンテンツなどを含む。ソーシャル・ネットワーキング情報は、1つ以上のカテゴリーによる、ユーザに関する親密度情報を含むことも可能である。ソーシャル・ネットワーキング情報の特定の実施形態は、
図4および本明細書の関係文章においてさらに詳細に説明される。
【0015】
工程220では、特定の実施形態は、ソーシャル・グラフの1つ以上のノードをそれぞれの位置に関連付ける。この関連付けは、いくつかの異なる手法により行われ得る。ユーザは、ソーシャル・グラフにおけるノードに位置を手動により関連付けることができる。例えば、レストランのマネージャが、その位置を用いてレストランに関するプロファイルを更新する場合もあれば、ユーザが、GPSを介して検出される特定の位置にいる際、ノ
ードを選択して、そのノードにチックインする場合もある。ユーザは、コンテンツをアップロードして、位置を用いてそのコンテンツにタグ付けし、次いで、そのコンテンツをソーシャル・グラフにおける1つ以上のノードに関連付けることができる。例えば、ユーザは、子どもの誕生日パーティのビデオをアップロードして、地元の公園において行われたとしてそのビデオにタグ付けし、次いで、ピエロもしくはバルーンアーティストまたはバウンスハウスをそのビデオにタグ付けして、パーティ娯楽サービスに関するウェブサイトにそのビデオをリンクさせることができる。データ・マイニング・アルゴリズムは、ノードに関連付けられているコンテンツ中のアドレス情報を検出することができる(例えば、ノードに関連付けられているウェブサイト中のアドレスを検出する)。第三者サーバは、ソーシャル・グラフのノードに関連付けられたコンテンツ・オブジェクトを提供することができる。そのようなコンテンツ・オブジェクトは、情報コンテンツ・オブジェクト(例えば、映画上映時間、映画批評、販売情報、レストラン・メニューなど)と、インセンティブとなるコンテンツ・オブジェクト(例えば、クーポン、割引券、商品券など)とを含み得る。
【0016】
工程230では、特定の実施形態は、コンピューティング・デバイスから位置に関係するソーシャル情報についての要求を受信する。この要求は、コンピューティング・デバイスの位置と、コンピューティング・デバイスの配向と、ユーザを識別する情報とを含み得る。特定の実施形態では、この要求は、その位置の画像、またはその位置のビデオ・フィードにアクセスするための情報を含むことも可能である。
【0017】
特定の実施形態では、コンピューティング・デバイスは、ビデオ画像または静止画像を撮影するためのカメラを有する。特定の実施形態では、コンピューティング・デバイスは、ビデオ画像または静止画像をリアルタイムで送信する。特定の実施形態では、コンピューティング・デバイスは、ビデオ画像もしくは静止画像を記憶しているか、またはビデオ画像もしくは静止画像へのアクセスを有する。特定の実施形態では、コンピューティング・デバイスの位置は、ユーザの位置と同じである(例えば、ユーザはコンピューティング・デバイスを保持している)。例えば、コンピューティング・デバイスは、ユーザがライブ・ビデオを取り込むために上方に保持している、カメラ・レンズを備えたスマートフォンの場合がある。特定の実施形態では、コンピューティング・デバイスは、特定のユーザに関連付けられていない(例えば、交通量の多い都市の通りを見渡せるウェブカム、または移動している車両上に取り付けられたビデオ・カメラ)。位置情報が、コンピューティング・デバイスから直接的に取得される(例えば、要求の時点、通知が送信されるべき時点、または様々な時間間隔で取得される)場合もあれば、ソーシャル・ネットワーキング・システムが、コンピューティング・デバイスに関して最後に記憶した位置を取り出す場合もある。加えて、コンピューティング・デバイスが位置を変更する場合、更新された位置情報はソーシャル・ネットワーキング・システムに提供され得る。特定の実施形態では、コンピューティング・デバイスの配向は、コンピューティング・デバイスが特定の方角(例えば、南北に走る通りに沿って北)を指しているという情報を含む。
【0018】
工程240では、特定の実施形態は、1つ以上の近接ノードに関する関連性スコアを決定し、その決定は、(1)その要求と、(2)ユーザに関連付けられたソーシャル・ネットワーキング情報と、(3)それぞれの近接ノードに関する位置情報とに基づく。特定の実施形態では、ノードが「近接」しているか否かは、そのノードがコンピューティング・デバイスの位置からしきい距離内の位置に関連付けられるか否かに基づき得る。特定の実施形態では、ノードは、2つ以上の位置に関連付けられることが可能であり、そのうちの少なくとも1つがコンピューティング・デバイスの位置からしきい距離内に存在する必要がある。例えば、画像内で取り込まれたビューに応じて。
【0019】
特定の実施形態では、近接ノードに関する関連性スコアを決定することは、位置値と、
関心値と、つながり値と、時間値とを組み合わせることを含む場合がある。
位置値は、近接ノードに関連付けられた位置と、その要求における位置との間の近接性、および/またはその要求における配向に基づくことが可能である。
【0020】
関心値は、近接ノードに関連付けられたカテゴリーが、ユーザに関する親密度情報に関連付けられた1つ以上のカテゴリーに含まれるか否かに基づくことが可能である。例えば、近接ノードがザ・ガジェット・ギーク・ストア(The Gadget Geek Store)である場合、その近接ノードは「小売店」および「コンピューティング・デバイス」のカテゴリーに関連付けられることがあり、ユーザは「買い物」および「ガジェット」を含む関心を有することがある。
【0021】
つながり値は、近接ノードに関するユーザのつながりの数に基づくことが可能である。例えば、ユーザのつながりは、ある施設にチェックインした、「いいね」を表明した、またはコメントした。
【0022】
時間値は、現在の時間が近接ノードに関連付けられたコンテンツ(例えば、通知または販売促進)に関する配信時間範囲内であるか否かに基づくことが可能である。特定の実施形態では、配信時間範囲は、そのコンテンツがユーザに送信されるのに適しているか否かを示す。例えば、レストランにおける昼食用の割引クーポンは、昼食の時間に関連付けられることが可能であり、したがって、昼食に一般に関連付けられる時間中により高い関心を得る。別の例では、近くの映画館における映画スケジュールに関する通知は、現在の時間から1時間の動く時間内に開始する映画を表示するように変更され得る。
【0023】
特定の実施形態では、ユーザに関するソーシャル・ネットワーキング情報は、ソーシャル・グラフの特定のノードに対するユーザ露出(user exposure)を含み得る。近接ノードに関する関連性スコアを決定するとき、関連性スコアは、そのノードに対するユーザの露出に基づいてさらに調整され得る。例えば、ユーザがそのノードに関連付けられたウェブサイトを定期的に訪問する場合、ユーザの友達の多くがそのノードに関連付けられた位置にチェックインしたことがある場合、またはユーザがそのノードに関係するニュースフィードのフォロワー(follower)である場合、関連性スコアは増大し得る。
【0024】
工程250では、特定の実施形態は、それぞれの関連性スコアによって近接ノードをランク付けする(例えば、最高関連性スコアから最低関連性スコアまで行われたり、限定数の最高スコアノードを選択することによって行われたりする)。特定の実施形態では、ソーシャル・ネットワーキング・システムは、ノードに対するユーザ露出、およびユーザとオブジェクトとの間の関連性を記録することができる(例えば、ユーザがある店舗に訪れるよう勧められて、コンピューティング・デバイスが、そのユーザがその後すぐにその店舗に訪れたことを検出する場合)。露出情報は、ユーザを同じノードまたは類似のノードに露出させるか否かを決定するために使用されることがあり、また、ユーザがその同じノードまたは類似のノードに予め露出されているか否かに基づいて、近接ノードのランク付けおよび選択を調整するために使用され得る。加えて、ユーザがある行動(例えば、あるインセンティブを使用すること、その位置に行くこと等)によってあるノードに関連付けられるようになった場合、その情報も記憶されて、そのノードを再ランク付けおよび再選択するために使用され得る。
【0025】
工程260では、特定の実施形態は、1つ以上の近接ノードのうちの少なくとも1つに関連付けられた情報を、画像とともに表示するために、コンピューティング・デバイスに提供する。この画像は、ビデオ画像または静止画像であってよい。特定の実施形態では、この画像は、コンピューティング・デバイスの位置と、コンピューティング・デバイスの
配向とを含むメタデータを含み得る。特定の実施形態では、この画像は、1つ以上の近接ノードのうちの少なくとも1つに関連付けられた情報を含む追加のメタデータを含めるように修正される場合もあれば、その追加のメタデータが伴われる場合もある。
【0026】
特定の実施形態では、この画像は、その情報が送信されるコンピューティング・デバイスによって取り込まれていない場合がある。例えば、ユーザがニューヨーク市を訪れる計画を立てており、ホテルのウェブサイト上に投稿された、そのホテルのすぐ近くの領域の写真を閲覧している場合、ユーザは、その写真に基づいて、関連する近接ノードに関するソーシャル・ネットワーキング情報を要求する場合がある。別の例では、ソーシャル・ネットワーキング情報に関する要求に対して、交通量の多い都市の通りに向けられたウェブカムからのライブ・ビデオ・フィードに関連付けられた情報を提供することが可能であり、これによって、例えば、ラスベガスにおける休暇を計画しているユーザがそのユーザの友達がどの施設に対して「いいね」を表明し、コメントしたかということや、どの施設が販売促進を行っているか、または割引を提供しているかということを見ることができる。
【0027】
工程270では、特定の実施形態は、近接ノードとの関連付けによりユーザによる行動を示す指示、すなわち、ユーザ露出イベントを受信する。一例では、ユーザは、そのユーザが近接ノードによって表された店舗をボイコットしていることを示すことができる。別の例では、ユーザは、近接ノードによって表された会場におけるイベントに関するチケットを購入することができる。
【0028】
工程280では、特定の実施形態は、近接ノードに関連するユーザによる行動を示す指示に応じて、ソーシャル・グラフを更新する。ソーシャル・グラフを更新することは、ユーザ露出イベントに関連付けられた情報を含めて、ユーザと近接ノードとの間の関連性を記憶することを含み得る。
【0029】
図3は、ユーザ位置とソーシャル情報とに基づいて、ソーシャル・ネットワーキング・システムのユーザに関連する情報に対する要求に応答するためのプロセスの対話図である。初めに、ユーザは、ソーシャル・ネットワーキング・システム530を介して互いに対話したり、ソーシャル・ネットワーキング・システム530と直接的に対話したりする(305)ようにコンピューティング・デバイス600を使用する場合があり、これにより、ユーザの関心およびつながり情報など、ユーザに関する情報をソーシャル・ネットワーキング・システム530に提供する。ソーシャル・ネットワーキング・システム530は、ソーシャル・ネットワーキング情報(例えば、各ユーザに関する関心およびつながり情報)を維持する(310)。特定の実施形態では、ソーシャル・ネットワーキング・システム530は、関心情報をカテゴリーに分類することができる。
【0030】
さらに、ソーシャル・ネットワーキング・システム530は、1つ以上の第三者サーバ540から第三者コンテンツ・オブジェクトを受信する(315)。第三者コンテンツ・オブジェクトは、情報コンテンツ・オブジェクト(映画上映時間、映画批評、販売情報、レストラン・メニューなど)と、インセンティブとなるコンテンツ・オブジェクト(クーポン、割引券、商品券など)とを含み得る。加えて、いくつかの第三者コンテンツ・オブジェクトは、情報とインセンティブとの組合せを含み得る。
【0031】
ノードおよび第三者コンテンツ・オブジェクト(ユーザにより生成されたコンテンツ・オブジェクトと、第三者コンテンツ・オブジェクトとの両方を含む)は位置に関連付けられ(320)、カテゴリーおよび配信時間範囲に関連付けられることも可能である。例えば、位置に関して、特定の映画館チェーンにおける映画観賞券の$2.00オフのクーポンが、そのチェーンのすべての映画館に適用される場合もあれば、1つの映画館だけに適用される場合もある。位置は、大体の位置(例えば、都市)の場合もあれば、特定の位置
(例えば、特定の通り名や交差点、またはGPS座標)の場合もある。1つ以上のそのような位置が各コンテンツ・オブジェクトに割り当てられる。最後に、配信時間範囲がコンテンツ・オブジェクトに割り当てられる。この範囲は、その項目に関する適切な時間帯を反映し得る。例えば、コンテンツ・オブジェクトが朝だけ開店しているドーナッツ店に関するクーポンである場合、通知に関する範囲は、そのドーナッツ店が開店している時間帯や、開店時間に関係する何らかの他の有用な範囲(例えば、開店15分前から閉店30分前)に対応する可能性が高いことになる。
【0032】
特定の実施形態では、ソーシャル・ネットワーキング・システム530のユーザの関心の様々なカテゴリーを反映するカテゴリーは、ソーシャル・ネットワーキング・システム530によって確立され得る。これらのカテゴリーは、関心自体に関連付けられることが可能であり、例えば、ユーザがある靴のブランドに関する記事に対して「いいね」を表明した場合、そのカテゴリーはそのブランドであってよい。これに代えて、ソーシャル・ネットワーキング・システム530は、その靴のブランドに関する記事に一般的な「靴」または「衣類」のカテゴリーを割り当てることができる。ソーシャル・ネットワーキング・システム530は、これらのカテゴリーの両方を単一のコンテンツ・オブジェクトに割り当てることができ、それによって、複数のカテゴリーが単一のコンテンツ・オブジェクトに適用され得る。例えば、特定のコーヒー店においてスペシャルティ・コーヒー飲料20%オフを提供するインセンティブの場合、その販売促進には、「食品」カテゴリーと、「飲料」タイプと、「コーヒー」サブタイプとが割り当てられ得る。これらのタグはユーザの関心に関連付けられたカテゴリーと合わせられる。
【0033】
ソーシャル・ネットワーキング・システム530は、関連する近接ノードに関する情報に対する要求を要求側のユーザから受信する(325)。ユーザの要求は、コンピューティング・デバイス600の位置に関する情報を含み得る。この情報は、コンピューティング・デバイス600から直接的に取得される場合もあれば(例えば、要求の時点、通知が送信されるべき時点、もしくは様々な時間間隔で取得される)、ソーシャル・ネットワーキング・システム530は、コンピューティング・デバイス600に関して最後に記憶した位置を取り出す場合もある。加えて、コンピューティング・デバイス600が位置を変更する場合、更新された位置情報はソーシャル・ネットワーキング・システム530に提供され得る。これに代えて、ユーザは、近接ノードおよび/またはユーザが関心を持つ第三者コンテンツ・オブジェクトの種類に関する制約を指定する位置を提供することができる。
【0034】
ソーシャル・ネットワーキング・システム530は、各近接ノードに関し、要求側のユーザに対する関連性スコアを決定する(330)。ソーシャル・ネットワーキング・システム530は、ユーザに関する位置、関心、時間、およびつながり情報と、コンテンツ・オブジェクトとを使用して、スコアを計算する。例えば、ソーシャル・ネットワーキング・システム530は、関連性スコアを得るために組み合わされるこれらのカテゴリーの各々に関するスコアをまず計算することができる。
【0035】
ソーシャル・ネットワーキング・システム530は、コンテンツ・オブジェクトの関連性スコアからユーザに対する近接ノードを選択する(335)(例えば、最高関連性スコアから最低関連性スコアまでのランク付けから近接ノードを選択したり、最高関連性スコア項目の選択によって近接ノードを選択したりする)。
【0036】
ソーシャル・ネットワーキング・システム530は、次いで、取り込まれた画像とともに情報をコンピューティング・デバイス600に提供することによって、関連する近接ノードについてのユーザの要求に応答する(340)。特定の実施形態では、ソーシャル・ネットワーキング・システムは、最高にランク付けされた近接ノードを要求側のユーザに
提供する。特定の実施形態では、ソーシャル・ネットワーキング・システムは、最高関連性スコアを有する近接ノードを要求側のユーザに提供する。
【0037】
ソーシャル・グラフ
図4は、例示的なソーシャル・グラフ400を示す。特定の実施形態では、ソーシャル・ネットワーキング・システム530は、1つ以上のソーシャル・グラフ400を1つ以上のデータ・ストアに記憶することができる。特定の実施形態では、ソーシャル・グラフ400は、複数のユーザ・ノード402または複数の概念ノード404を含み得る複数のノードと、それらのノードを接続する複数のエッジ406とを含み得る。
図4に示す例示的なソーシャル・グラフ400は、教示を目的として、2次元視覚的マップ表現により示されている。特定の実施形態では、ソーシャル・ネットワーキング・システム530、クライアント・システム600、または第三者システム540は、適切なアプリケーションに関して、ソーシャル・グラフ400と、関係するソーシャル・グラフ情報とにアクセスすることができる。ソーシャル・グラフ400のノードおよびエッジは、データ・オブジェクトとして記憶される場合があり、例えば、データ・ストア(ソーシャル・グラフ・データベースなど)に記憶される場合がある。そのようなデータ・ストアは、ソーシャル・グラフ400のノードまたはエッジの1つ以上の検索可能な、またはクエリされるインデックスを含み得る。
【0038】
特定の実施形態では、ユーザ・ノード402は、ソーシャル・ネットワーキング・システム530のユーザに対応し得る。限定ではなく、例として、ユーザは、ソーシャル・ネットワーキング・システム530と対話または通信するか、あるいはソーシャル・ネットワーキング・システム530を介して対話または通信する個人(人間のユーザ)、エンティティ(例えば、企業、事業、もしくは第三者アプリケーション)、またはグループ(例えば、個人もしくはエンティティのグループ)の場合がある。特定の実施形態では、ユーザがソーシャル・ネットワーキング・システム530にアカウントを登録すると、ソーシャル・ネットワーキング・システム530は、そのユーザに対応するユーザ・ノード402を作成して、そのユーザ・ノード402を1つ以上のデータ・ストアに記憶することができる。本明細書において説明されるユーザおよびユーザ・ノード402は、適切な場合、登録ユーザと、登録ユーザに関連付けられたユーザ・ノード402とを指す場合がある。加えて、またはその代わりに、本明細書において説明されるユーザおよびユーザ・ノード402は、適切な場合、ソーシャル・ネットワーキング・システム530に登録していないユーザを指す場合がある。特定の実施形態では、ユーザ・ノード402は、ユーザによって提供された情報、または様々なシステム(ソーシャル・ネットワーキング・システム530を含む)によって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロファイル写真、連絡先情報、誕生日、性別、婚姻状況、家族状況、雇用、学歴、好み、関心、または他の人口統計情報を提供することができる。特定の実施形態では、ユーザ・ノード402は、ユーザに関連付けられた情報に対応する1つ以上のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態では、ユーザ・ノード402は、1つ以上のウェブページに対応する場合もあれば、1つ以上のユーザ・プロファイル・ページ(ウェブページであってよい)に対応する場合もある。
【0039】
特定の実施形態では、概念ノード404は概念に対応し得る。限定ではなく、例として、概念は、場所(例えば、映画館、レストラン、史跡、もしくは都市など)、ウェブサイト(例えば、ソーシャル・ネットワーキング・システム530に関連付けられたウェブサイト、もしくはウェブ・アプリケーション・サーバに関連付けられた第三者ウェブサイトなど)、エンティティ(例えば、人物、事業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャル・ネットワーキング・システム530内または外部サーバ(ウェブ・アプリケーション・サーバなど)上に位置し得るリソース(例えば、音声ファイル、
ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化文書、もしくはアプリケーションなど)、不動産または知的財産(例えば、彫刻、絵画、映画、ゲーム、歌、構想、写真、もしくは書かれた著作物など)、ゲーム、活動、構想もしくは理論、別の適切な概念、または2つ以上のそのような概念に対応し得る。概念ノード404は、ユーザによって提供された概念の情報、または様々なシステム(ソーシャル・ネットワーキング・システム530を含む)によって収集された情報に関連付けられることが可能である。限定ではなく、例として、概念の情報は、名前または肩書、1つ以上の画像(例えば、書籍の表紙ページの画像)、位置(例えば、住所または地理的位置)、ウェブサイト(URLに関連付けられることが可能なウェブサイト)、連絡先情報(例えば、電話番号または電子メールアドレス)、他の適切な概念情報、またはそのような情報の任意の適切な組合せを含むことが可能である。特定の実施形態では、概念ノード404は、概念ノード404に関連付けられた情報に対応する、1つ以上のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態では、概念ノード404はウェブページに対応し得る。
【0040】
特定の実施形態では、ソーシャル・グラフ400におけるノードは、ウェブページ(「プロファイル・ページ」と呼ばれる場合もある)を表す場合もあれば、そのようなウェブページによって表される場合もある。プロファイル・ページは、ソーシャル・ネットワーキング・システム530によってホストされる場合もあれば、ソーシャル・ネットワーキング・システム530にアクセス可能な場合もある。プロファイル・ページは、第三者サーバ540に関連付けられた第三者ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロファイル・ページは特定の外部ウェブページであってよく、プロファイル・ページは特定の概念ノード404に対応し得る。プロファイル・ページは、他のすべてのユーザまたは選択された部分集合の他のユーザによって閲覧可能な場合がある。限定ではなく、例として、ユーザ・ノード402は、対応するユーザ・プロファイル・ページを有する場合があり、そのユーザ・プロファイル・ページにおいて、対応するユーザがコンテンツを追加すること、宣言を行うこと、又は自らを表現することができる。限定ではなく、別の例として、概念ノード404は、対応する概念プロファイル・ページを有する場合があり、その概念プロファイル・ページにおいて、特に概念ノード404に対応する概念に関して、1人以上のユーザがコンテンツを追加すること、宣言を行うこと、または自らを表現することができる。
【0041】
特定の実施形態では、概念ノード404は、第三者システム540によってホストされた第三者ウェブページまたはリソースを表す場合がある。第三者ウェブページまたはリソースは、要素のうちとりわけ、コンテンツ、選択可能なアイコンもしくは他のアイコン、または行動もしくは活動を表す他の対話可能なオブジェクト(例えば、JavaScript(登録商標)コード、AJAXコード、もしくはPHPコードにより実装され得るオブジェクト)を含み得る。限定ではなく、例として、第三者ウェブページは、「「いいね」を表明する」、「チェックインする」、「食事をする」、「勧める」、または別の適切な行動もしくは活動など、選択可能なアイコンを含み得る。第三者ウェブページを閲覧するユーザは、アイコンのうちの1つ(例えば、「食事をする」)を選択して、クライアント・システム600にそのユーザの行動を示すメッセージをソーシャル・ネットワーキング・システム530に送信させることによって動作を実行することができる。そのメッセージに応じて、ソーシャル・ネットワーキング・システム530は、ユーザに対応するユーザ・ノード402と、その第三者のウェブページまたはリソースに対応する概念ノード404との間にエッジ(例えば、「食事をする」エッジ)を作成することと、エッジ406を1つ以上のデータ・ストアに記憶することとが可能である。
【0042】
特定の実施形態では、ソーシャル・グラフ400におけるノードのペアは、1つ以上のエッジ406によって互いに接続され得る。ノードのペアを接続するエッジ406は、ノードのペア間の関係を表すことがある。特定の実施形態では、エッジ406は、ノードの
ペア間の関係に対応する1つ以上のデータ・オブジェクトまたは属性を含む場合もあれば、そのデータ・オブジェクトまたは属性を表す場合がある。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であることを示すことができる。この指示に応じて、ソーシャル・ネットワーキング・システム530は、「友達リクエスト」を第2のユーザに送信することができる。第2のユーザが「友達リクエスト」を承認する場合、ソーシャル・ネットワーキング・システム530は、ソーシャル・グラフ400において第1のユーザのユーザ・ノード402を第2のユーザのユーザ・ノード402に接続するエッジ406を作成して、エッジ406をソーシャル・グラフ情報として1つ以上のデータ・ストア24に記憶することができる。
図4のこの例では、ソーシャル・グラフ400は、ユーザ「A」とユーザ「B」のユーザ・ノード402同士の間の友達関係を示すエッジ406と、ユーザ「C」とユーザ「B」のユーザ・ノード402同士の間の友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード402同士を接続する特定の属性を有する特定のエッジ406を説明または例示するが、本開示は、ユーザ・ノード402同士を接続する任意の適切な属性を有する任意の適切なエッジ406を企図する。限定ではなく、例として、エッジ406は、友達関係、家族関係、事業関係もしくは雇用関係、ファン関係、フォロワー関係、訪問者関係、加入者関係、上司/部下の関係、相互関係、非相互関係、別の適切なタイプの関係、または2つ以上のそのような関係を表す場合がある。さらに、本開示は、一般に、ノードを接続されているものとして説明するが、本開示は、ユーザまたは概念も接続されているものとして説明する。本明細書において、接続されているユーザまたは概念の参照は、適切な場合、1つ以上のエッジ406によってソーシャル・グラフ400において接続されているユーザまたは概念に対応するノードを指す場合がある。
【0043】
特定の実施形態では、ユーザ・ノード402と概念ノード404との間のエッジ406は、概念ノード404に関連付けられた概念に向けてユーザ・ノード402に関連付けられたユーザによって実行される特定の行動または活動を表す場合がある。限定ではなく、例として、
図4に示すように、ユーザは、概念「に対して「いいね」を表明する」、「に参加した」、「をプレイした」、「を聴いた」、「を調理した」、「に勤務した」、または「を見た」としてもよく、各概念は、エッジタイプまたはサブタイプに対応し得る。概念ノード404に対応する概念プロファイル・ページは、例えば、選択可能な「チェックイン」アイコン(例えば、クリック可能な「チェックイン」アイコンなど)または選択可能な「お気に入りに追加する」アイコンを含み得る。同様に、ユーザがこれらのアイコンをクリックした後、ソーシャル・ネットワーキング・システム530は、それぞれの行動に対応するユーザの行動に応じて、「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、ユーザ(ユーザ「C」)は、特定のアプリケーション(オンライン・ミュージック・アプリケーションであるスポティファイ(SPOTIFY))を使用して特定の歌(「イマジン(Imagine)」)を聴くことができる。この場合、ソーシャル・ネットワーキング・システム530は、ユーザがその歌を聴いたこととそのアプリケーションを使用したこととを示すために、ユーザに対応するユーザ・ノード402と歌およびアプリケーションに対応する概念ノード404との間に(
図4に示すように)「聴いた」エッジ406と「使用した」エッジとを作成することができる。さらに、ソーシャル・ネットワーキング・システム530は、特定のアプリケーションによって特定の歌がプレイされたことを示すために、歌およびアプリケーションに対応する概念ノード404同士の間に(
図4に示すように)「プレイした」エッジ406を作成することができる。この場合、「プレイした」エッジ406は、外部音声ファイル(歌「イマジン(Imagine)」)に関して外部アプリケーション(スポティファイ(SPOTIFY))によって実行された動作に対応する。本開示は、ユーザ・ノード402と概念ノード404とを接続する特定の属性を有する特定のエッジ406を説明するが、本開示は、ユーザ・ノード402と概念ノード404とを接続する任意の適切な属性を有する任意の適切なエッジ406を企図する。さらに、本開示は、単一の関係
を表す、ユーザ・ノード402と概念ノード404との間のエッジを説明するが、本開示は、1つ以上の関係を表す、ユーザ・ノード402と概念ノード404との間のエッジを企図する。限定ではなく、例として、エッジ406は、ユーザが「いいね」を表明したことと、特定の概念に関して使用したこととの両方を表す場合がある。これに代えて、別のエッジ406は、ユーザ・ノード402と概念ノード404との間(
図4に示すように、ユーザ「E」に関するユーザ・ノード402と「スポティファイ(SPOTIFY)」に関する概念ノード404との間)の各タイプの関係(または複数の単一関係)を表す場合がある。
【0044】
特定の実施形態では、ソーシャル・ネットワーキング・システム530は、ソーシャル・グラフ400においてユーザ・ノード402と概念ノード404との間にエッジ406を作成することができる。限定ではなく、例として、概念プロファイル・ページを閲覧する(例えば、ユーザのクライアント・システム600によってホストされる、ウェブ・ブラウザまたは専用アプリケーションを使用することなどによって閲覧する)ユーザは、「いいね」を表明するアイコンをクリックまたは選択することによって、概念ノード404によって表された概念に対して「いいね」を表明することを示すことができ、これによって、概念プロファイル・ページに関連付けられた概念に対してユーザが「いいね」を表明することを示すメッセージをソーシャル・ネットワーキング・システム530に送信することを、ユーザのクライアント・システム600に行わせることができる。このメッセージに応じて、ソーシャル・ネットワーキング・システム530は、ユーザと概念ノード404との間の「「いいね」を表明する」エッジ406によって示すように、ユーザに関連付けられたユーザ・ノード402と概念ノード404との間にエッジ406を作成することができる。特定の実施形態では、ソーシャル・ネットワーキング・システム530は、エッジ406を1つ以上のデータ・ストアに記憶することができる。特定の実施形態では、エッジ406は、特定のユーザの行動に応じて、ソーシャル・ネットワーキング・システム530によって自動的に形成され得る。限定ではなく、例として、第1のユーザが写真をアップロードする場合、映画を見る場合、または歌を聴く場合、エッジ406は、第1のユーザに対応するユーザ・ノード402と、それらの概念に対応する概念ノード404との間に形成され得る。本開示は、特定のエッジ406を特定の態様により形成することを説明するが、本開示は、任意の適切なエッジ406を任意の適切な態様により形成することを企図する。
【0045】
システム概要
図5は、ソーシャル・ネットワーキング・システムに関連付けられた例示的なネットワーク環境500を示す。ネットワーク環境500は、ネットワーク550によって互いに接続されている、ユーザ510と、クライアント・システム600と、ソーシャル・ネットワーキング・システム530と、第三者システム540とを含む。
図5は、ユーザ510と、クライアント・システム600と、ソーシャル・ネットワーキング・システム530と、第三者システム540と、ネットワーク550とからなる特定の配置を示すが、本開示は、ユーザ510と、クライアント・システム600と、ソーシャル・ネットワーキング・システム530と、第三者システム540と、ネットワーク550とからなる任意の適切な配置を企図する。限定ではなく、例として、クライアント・システム600、ソーシャル・ネットワーキング・システム530、および第三者システム540のうちの2つ以上は、ネットワーク550を迂回して、互いに直接的に接続され得る。別の例として、クライアント・システム600、ソーシャル・ネットワーキング・システム530、および第三者システム540のうちの2つ以上は、全体的または部分的に互いに物理的または論理的に同じ場所に配置され得る。さらに、
図5は、特定の数のユーザ510、クライアント・システム600、ソーシャル・ネットワーキング・システム530、第三者システム540、およびネットワーク550を示すが、本開示は、任意の適切な数のユーザ510、クライアント・システム600、ソーシャル・ネットワーキング・システム530
、第三者システム540、およびネットワーク550を企図する。限定ではなく、例として、ネットワーク環境500は、複数のユーザ510と、クライアント・システム600と、ソーシャル・ネットワーキング・システム530と、第三者システム540と、ネットワーク550とを含み得る。
【0046】
特定の実施形態では、ユーザ510は、ソーシャル・ネットワーキング・システム530と対話または通信したり、ソーシャル・ネットワーキング・システム530を介して対話または通信したりする個人(人間のユーザ)、エンティティ(例えば、企業、事業、もしくは第三者アプリケーション)、またはグループ(例えば、個人もしくはエンティティのグループ)の場合がある。特定の実施形態では、ソーシャル・ネットワーキング・システム530は、オンライン・ソーシャル・ネットワークをホストするネットワーク・アドレス指定可能なコンピューティング・システムの場合がある。ソーシャル・ネットワーキング・システム530は、ソーシャル・ネットワーキング・データ(例えば、ユーザ・プロファイル・データ、概念プロファイル・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関係する他の適切なデータなど)を生成、記憶、受信、および送信することができる。ソーシャル・ネットワーキング・システム530は、直接的に、またはネットワーク550を介して、ネットワーク環境500の他の構成要素によってアクセスされ得る。特定の実施形態では、ソーシャル・ネットワーキング・システム530は、ユーザ510が、その行動をソーシャル・ネットワーキング・システム530によって記録されたり、他のシステム(例えば、第三者システム540)と共有されたりすることをオプトインまたはオプトアウトする(例えば、適切なプライバシー設定を設定することなどによって、オプトインまたはオプトアウトする)のを可能にする許可サーバを含み得る。特定の実施形態では、第三者システム540は、第三者コンテンツ・オブジェクトをホストすること、コンテンツをサービス提供すること、および/または第三者広告サービス提供エンジンを提供することが可能なネットワーク・アドレス指定可能なコンピューティング・システムの場合がある。第三者システム540は、第三者コンテンツ、および/またはスポンサー付きのコンテンツ(例えば、広告、インセンティブプログラム通知、クーポンなど)を生成、記憶、受信、および送信することができる。第三者システム540は、直接的に、またはネットワーク550を介して、ネットワーク環境500の他の構成要素によってアクセスされ得る。特定の実施形態では、1人以上のユーザ510は、1つ以上のクライアント・システム600を使用して、ソーシャル・ネットワーキング・システム530または第三者システム540にアクセスすること、そのようなシステムにデータを送信すること、およびそのようなシステムからデータを受信することができる。クライアント・システム600は、直接的に、ネットワーク550を介して、または第三者システムを介して、ソーシャル・ネットワーキング・システム530または第三者システム540にアクセスすることができる。限定ではなく、例として、クライアント・システム600は、ソーシャル・ネットワーキング・システム530を介して第三者システム540にアクセスすることができる。クライアント・システム600は、例えば、パーソナル・コンピュータ、ラップトップ・コンピュータ、セルラ電話、スマートフォン、またはタブレット・コンピュータなど、任意の適切なコンピューティング・デバイスであってよい。
【0047】
本開示は、任意の適切なネットワーク550を企図する。限定ではなく、例として、ネットワーク550のうちの1つ以上の部分は、アドホック・ネットワーク、イントラネット、エクストラネット、バーチャル・プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、無線LAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、無線WAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部、公衆交換電話網(PSTN)の一部、セルラ電話ネットワーク、またはこれらのうちの2つ以上の組合せを含み得る。ネットワーク550は、1つ以上のネットワーク550を含み得る。
【0048】
リンク560は、クライアント・システム600と、ソーシャル・ネットワーキング・システム530と、第三者システム540とを通信ネットワーク550に、または互いに接続することができる。本開示は、任意の適切なリンク560を企図する。特定の実施形態では、1つ以上のリンク560は、1つ以上の有線リンク(例えば、デジタル加入者線(DSL)またはデータ・オーバ・ケーブル・サービス・インタフェース仕様(DOCSIS:Data Over Cable Service Interface Specification)など)、1つ以上の無線リンク(例えば、Wi−Fiまたはワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX(登録商標))など)、又は1つ以上の光リンク(例えば、同期型光ネットワーク(SONET)または同期デジタル・ハイアラーキ(SDH)など)を含む。特定の実施形態では、1つ以上のリンク560は、各々、アドホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部、PSTNの一部、セルラ技術方式のネットワーク、衛星通信技術方式のネットワーク、別のリンク560、または2つ以上のそのようなリンク560の組合せを含む。リンク560は、ネットワーク環境500を通して必ずしも同じでなくてよい。1つ以上の第1のリンク560は、1つ以上の点において1つ以上の第2のリンク560とは異なる場合がある。
【0049】
特定の実施形態では、ソーシャル・ネットワーキング・システムは、ユーザに関し、ソーシャル・グラフにおけるノードおよび第三者コンテンツ・オブジェクトに関する関連性スコアを決定するための関連性およびランク付けエンジンを含む。関連性およびランク付けエンジンは、関連性スコアによってコンテンツ・オブジェクトをランク付けすることも可能である。関連性およびランク付けエンジンは、通知として、またはユーザの要求に対する応答として、ユーザに送信するためのコンテンツ・オブジェクトを選択することも可能である。
【0050】
関連性スコアを計算するために、関連性およびランク付けエンジンは、コンテンツ・オブジェクト位置とコンピューティング・デバイスに関する現在の位置とを比較することによって、位置値を決定することができる。関連性およびランク付けエンジンは、コンテンツ・オブジェクトのカテゴリーがユーザの関心に含まれているか否かに基づいて、関心値を決定することも可能である。関連性およびランク付けエンジンは、現在の時間がそのコンテンツ・オブジェクトに関する配信時間範囲内であるか否かに基づいて、時間値を決定することも可能である。関連性およびランク付けエンジンは、ユーザのつながりのうち何人がそのコンテンツ・オブジェクトに関連付けられるかに基づいて、つながり値を決定することも可能である。次いで、関連性およびランク付けエンジンは、位置値と、関心値と、つながり値と、時間値とを組み合わせて、ユーザに対するそのコンテンツ・オブジェクトに関する関連性スコアを決定する。一実施形態では、これらの値はより良好な適合(より近い近接性、高い類似性など)に対してより高く、1の値に近づき、共に乗算されて関連性スコアを生成する。
【0051】
各コンテンツ・オブジェクトに関する関連性スコアから、関連性およびランク付けエンジンは、ユーザに対してそれらのコンテンツ・オブジェクトをランク付けし、そのランク付けは、例えば、最高関連性スコアから最低関連性スコアまで行われる。関連性およびランク付けエンジンは、次いで、通知コントローラに送信するためのコンテンツ・オブジェクトを選択することもあれば、最高にランク付けされたコンテンツ・オブジェクトをコンピューティング・デバイスに通知として直接的にサービス提供することもある。
【0052】
例示的なコンピューティング・システム
図6は、例示的なコンピュータ・システム600を示す。特定の実施形態では、1つ以
上のコンピュータ・システム600は、本明細書において説明または例示する1つ以上の方法の1つ以上の工程を実行する。特定の実施形態では、1つ以上のコンピュータ・システム600は、本明細書において説明または例示する機能を提供する。特定の実施形態では、1つ以上のコンピュータ・システム600上で実行するソフトウェアは、本明細書において説明または例示する1つ以上の方法の1つ以上の工程を実行したり、本明細書において説明または例示する機能を提供したりする。特定の実施形態は、1つ以上のコンピュータ・システム600のうちの1つ以上の部分を含む。本明細書において、コンピュータ・システムの参照は、適切な場合、あるコンピューティング・デバイスを包含する場合がある。さらに、コンピュータ・システムの参照は、適切な場合、1つ以上のコンピュータ・システムを包含する場合がある。
【0053】
本開示は、任意の適切な数のコンピュータ・システム600を企図する。本開示は、任意の適切な物理的形態を取るコンピュータ・システム600を企図する。限定ではなく、例として、コンピュータ・システム600は、組込み式コンピュータ・システム、システム・オン・チップ(SOC)、シングル・ボード・コンピュータ・システム(SBC)(例えば、コンピュータ・オン・モジュール(COM)もしくはシステム・オン・モジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップ・コンピュータ・システムもしくはノートブック・コンピュータ・システム、対話型キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、別のモバイル・コンピューティング・デバイス、またはこれらのうちの2つ以上の組合せであってよい。適切な場合、コンピュータ・システム600は、1つ以上のコンピュータ・システム600を含んでよく、集中型または分散型であってよく、複数の位置にわたっていてもよく、複数のマシンにわたっていてもよく、複数のデータ・センターにわたっていてもよく、または1つ以上のネットワークにおける1つ以上のクラウド構成要素を含み得るクラウドに存在してよい。適切な場合、1つ以上のコンピュータ・システム600は、実質的な空間的あるいは時間的な限定なしに、本明細書において説明または例示される1つ以上の方法の1つ以上の工程を実行することができる。限定ではなく、例として、1つ以上のコンピュータ・システム600は、本明細書において説明または例示される1つ以上の方法の1つ以上の工程をリアルタイムであるいはバッチ・モードで実行することができる。1つ以上のコンピュータ・システム600は、適切な場合、本明細書において説明または例示される1つ以上の方法の1つ以上の工程を様々な時間または様々な位置において実行することができる。
【0054】
特定の実施形態では、コンピュータ・システム600は、プロセッサ602と、メモリ604と、ストレージ606と、入出力(I/O)インタフェース608と、通信インタフェース610と、バス612とを含む。本開示は、特定の数の特定の構成要素を特定の配置により有する特定のコンピュータ・システムを説明および例示するが、本開示は、任意の適切な数の任意の適切な構成要素を任意の適切な配置により有する任意の適切なコンピュータ・システムを企図する。
【0055】
特定の実施形態では、プロセッサ602は、コンピュータ・プログラムを構成する命令など、命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ602は、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606から命令を取り出して(すなわち、フェッチして)、それらをデコードおよび実行し、次いで、1つ以上の結果を内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606に書き込むことができる。特定の実施形態では、プロセッサ602は、データ、命令、またはアドレスに関する、1つ以上の内部キャッシュを含み得る。本開示は、適切な場合、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ602を企図する。限定ではなく、例として、プロセッサ602は、1つ以上の命令キャッシュと、1つ以上のデータ・キャッシュと、1つ以上のトランスレーション・ルッ
クアサイド・バッファ(TLB)とを含み得る。命令キャッシュにおける命令は、メモリ604またはストレージ606における命令の複製であってよく、命令キャッシュは、プロセッサ602によるそれらの命令の取り出しを高速化し得る。データ・キャッシュにおけるデータは、プロセッサ602において実行する命令に関し演算するための、メモリ604またはストレージ606におけるデータの複製の場合や、プロセッサ602において実行する後続の命令によってアクセスするため、またはメモリ604もしくはストレージ606に書き込むためにプロセッサ602において実行された前の命令の結果の複製の場合や、他の適切なデータの複製の場合がある。データ・キャッシュは、プロセッサ602による読取り動作または書き込み動作を高速化し得る。TLBは、プロセッサ602に関する仮想アドレス変換(virtual−address translation)を高速化し得る。特定の実施形態では、プロセッサ602は、データ、命令、またはアドレスに関する、1つ以上の内部レジスタを含み得る。本開示は、適切な場合、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ602を企図する。適切な場合、プロセッサ602は、1つ以上の算術論理演算装置(ALU)を含んでよく、マルチコア・プロセッサであってよく、または1つ以上のプロセッサ602を含んでよい。本開示は特定のプロセッサを説明および例示するが、本開示は、任意の適切なプロセッサを企図する。
【0056】
特定の実施形態では、メモリ604は、プロセッサ602が実行するための命令またはプロセッサ602が演算するためのデータを記憶するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム600は、ストレージ606または別のソース(例えば、別のコンピュータ・システム600など)からメモリ604に命令をロードすることができる。プロセッサ602は、次いで、メモリ604から内部レジスタまたは内部キャッシュに命令をロードすることができる。その命令を実行するために、プロセッサ602は、内部レジスタまたは内部キャッシュから命令を取り出して、それらをデコードすることができる。命令の実行中またはその後、プロセッサ602は、1つ以上の結果(中間結果または最終結果であってよい)を内部レジスタあるいは内部キャッシュに書き込むことができる。プロセッサ602は、次いで、それらの結果のうちの1つ以上をメモリ604に書き込むことができる。特定の実施形態では、プロセッサ602は、(ストレージ606または他の場所ではなく)1つ以上の内部レジスタもしくは内部キャッシュまたはメモリ604における命令のみを実行して、(ストレージ606または他の場所ではなく)1つ以上の内部レジスタもしくは内部キャッシュまたはメモリ604におけるデータのみを演算する。1つ以上のメモリ・バス(アドレス・バスとデータ・バスとを各々含み得る)は、プロセッサ602をメモリ604に結合することができる。バス612は、下記のように、1つ以上のメモリ・バスを含み得る。特定の実施形態では、1つ以上のメモリ管理ユニット(MMU)は、プロセッサ602とメモリ604との間に存在して、プロセッサ602によって要求されるメモリ604に対するアクセスを可能とする。特定の実施形態では、メモリ604は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合、揮発性メモリであってよい。適切な場合、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であってよい。さらに、適切な場合、このRAMは、シングル・ポートRAMの場合もあれば、マルチ・ポートRAMの場合もある。本開示は、任意の適切なRAMを企図する。メモリ604は、適切な場合、1つ以上のメモリ604を含み得る。本開示は特定のメモリを説明および例示するが、本開示は、任意の適切なメモリを企図する。
【0057】
特定の実施形態では、ストレージ606は、データまたは命令のための大容量記憶装置を含む。限定ではなく、例として、ストレージ606は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの2つ以上の組合せを含み得る。ストレージ606は、適切な場合、取外し可能媒体または取外し不可能(すなわち、固定)媒体を含み得る。ストレ
ージ606は、適切な場合、コンピュータ・システム600の内部の場合もあれば、外部の場合もある。特定の実施形態では、ストレージ606は、不揮発性のソリッド・ステート・メモリであってよい。特定の実施形態では、ストレージ606は、リード・オンリ・メモリ(ROM)を含む。適切な場合、このROMは、マスク・プログラムROM、PROM(programmable ROM)、EPROM(erasable PROM)、EEPROM(electrically erasable PROM)、EAROM(electrically alterable ROM)、もしくはフラッシュ・メモリ、またはそれらのうちの2つ以上の組合せであってよい。本開示は、任意の適切な物理的形態を取る大容量記憶装置606を企図する。ストレージ606は、適切な場合、プロセッサ602とストレージ606との間の通信を可能とする1つ以上の記憶制御機構を含み得る。適切な場合、ストレージ606は、1つ以上のストレージ606を含み得る。本開示は特定のストレージを説明および例示するが、本開示は、任意の適切なストレージを企図する。
【0058】
特定の実施形態では、I/Oインタフェース608には、コンピュータ・システム600と1つ以上のI/Oデバイスとの間の通信のために1つ以上のインタフェースを提供するハードウェア、ソフトウェア、またはそれらの両方が含まれる。コンピュータ・システム600は、適切な場合、これらのI/Oデバイスのうちの1つ以上を含み得る。これらのI/Oデバイスのうちの1つ以上は、人物とコンピュータ・システム600との間の通信を可能にし得る。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、静止カメラ、スタイラス、タブレット、タッチ画面、トラックボール、ビデオ・カメラ、別の適切なI/Oデバイス、またはそれらのうちの2つ以上の組合せを含み得る。I/Oデバイスは、1つ以上のセンサを含み得る。本開示は、任意の適切なI/Oデバイスと、それらのI/Oデバイスのための任意の適切なI/Oインタフェース608とを企図する。適切な場合、I/Oインタフェース608は、プロセッサ602がこれらのI/Oデバイスのうちの1つ以上を駆動するのを可能にする、1つ以上のデバイス・ドライバまたはソフトウェア・ドライバを含み得る。I/Oインタフェース608は、適切な場合、1つ以上のI/Oインタフェース608を含み得る。本開示は、特定のI/Oインタフェースを説明および例示するが、本開示は、任意の適切なI/Oインタフェースを企図する。
【0059】
特定の実施形態では、通信インタフェース610には、コンピュータ・システム600と1つ以上の他のコンピュータ・システム600または1つ以上のネットワークとの間の通信(例えば、パケット方式の通信など)のための1つ以上のインタフェースを提供するハードウェア、ソフトウェア、あるいはそれらの両方が含まれる。限定ではなく、例として、通信インタフェース610は、Ethernet(登録商標)もしくは他の有線方式のネットワークと通信するためのネットワーク・インタフェース・コントローラ(NIC)またはネットワーク・アダプタ、または無線ネットワーク(Wi−Fiネットワークなど)と通信するための無線NIC(WNIC)もしくは無線アダプタを含み得る。本開示は、任意の適切なネットワークと、そのネットワークのための任意の適切な通信インタフェース610とを企図する。限定ではなく、例として、コンピュータ・システム600は、アドホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットのうちの1つ以上の部分、またはこれらのうちの2つ以上の組合せと通信することができる。これらの1つ以上のネットワークのうちの1つ以上の部分は、有線または無線であってよい。一例として、コンピュータ・システム600は、無線PAN(WPAN)(例えば、BLUETOOTH WPANなど)、Wi−Fiネットワーク、Wi−MAXネットワーク、セルラ電話ネットワーク(例えば、グローバル・システム・フォー・モバイルコミュニケーションズ(GSM(登録商標))ネットワークなど)、もしくは他の適切な無線ネットワーク、
またはそれらの2つ以上の組合せと通信することができる。コンピュータ・システム600は、適切な場合、これらのネットワークのうちの任意のネットワークに関する任意の適切な通信インタフェース610を含み得る。通信インタフェース610は、適切な場合、1つ以上の通信インタフェース610を含み得る。本開示は特定の通信インタフェースを説明および例示するが、本開示は、任意の適切な通信インタフェースを企図する。
【0060】
特定の実施形態では、バス612は、コンピュータ・システム600の構成要素を互いに結合するハードウェア、ソフトウェア、またはそれらの両方を含む。限定ではなく、例として、バス612は、アクセラレーテッド・グラフィックス・ポート(AGP)バスもしくは他のグラフィックス・バス、拡張業界標準アーキテクチャ(EISA)バス、フロント・サイド・バス(FSB)、ハイパー・トランスポート(HT)インターコネクト、業界標準アーキテクチャ(ISA)バス、インフィニバンド・インターコネクト、ロー・ピン・カウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA:Micro Channel Architecture)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe:PCI−Express)バス、シリアル・アドバンスド・テクノロジー・アタッチメント(SATA:serial advanced technology attachment)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB:Video Electronics Standards Association local)バス、もしくは別の適切なバス、またはそれらの2つ以上の組合せを含み得る。バス612は、適切な場合、1つ以上のバス612を含み得る。本開示は特定のバスを説明および例示するが、本開示は、任意の適切なバスまたはインターコネクトを企図する。
【0061】
本明細書において、1つ以上のコンピュータ可読非一時的記憶媒体は、適切な場合、1つ以上の半導体ベースの集積回路もしくは他の集積回路(IC)(例えば、フィールド・プログラマブル・ゲート・アレイ(FPGA)または特定用途向けIC(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー・ディスケット、フロッピー・ディスク・ドライブ(FDD)、磁気テープ、ソリッド・ステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはセキュア・デジタル・ドライブ、任意の他の適切なコンピュータ可読非一時的記憶媒体、またはこれらのうちの2つ以上の任意の適切な組合せを含み得る。コンピュータ可読非一時的記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性との組合せであってよい。
【0062】
本明細書において、「または(“or”)」は、強調して、別段に示されていない限り、または文脈によって別段に示されていない限り、包括的であり、排他的ではない。したがって、本明細書において、「AまたはB(“A or B”)」は、強調して、別段に示されていない限り、または文脈によって別段に示されていない限り、「A、B、またはそれら両方(“A, B, or both”)」を意味する。さらに、「および(“and”)」は、強調して、別段に示されていない限り、または文脈によって別段に示されていない限り、共同と別々の両方である。したがって、本明細書において、「AおよびB(“A and B”)」は、強調して、別段に示されていない限り、または文脈によって別段に示されていない限り、「共同して、または別々にAおよびB(“A and B, jointly or severally”)」を意味する。
【0063】
本開示の範囲は、当業者が理解することになる、本明細書において説明されたり示されたりした例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は本明細書において説明されたり示されたりした例示的な実施形態に
限定されない。さらに、本開示は、本明細書において、特定の構成要素、要素、機能、動作、または工程を含むとして、それぞれの実施形態を説明し、示すが、これらの実施形態のいずれも、当業者が理解することになる、本明細書のいずれかの場所において説明されたり示されたりした構成要素、要素、機能、動作、または工程のうちのいずれかの任意の組合せまたは並べ替えを含み得る。さらに、添付の特許請求の範囲において、特定の機能を実行するように適合されている、実行するように配置されている、実行することが可能である、実行するように構成されている、実行することが可能にされている、実行するように動作可能である、または実行するように動作する、装置もしくはシステム、または装置もしくはシステムの構成要素の参照は、その装置、システム、または構成要素がそのように適合され、そのように配置され、それが可能であり、そのように構成され、それが可能にされ、そのように動作可能であり、またはそのように動作する限り、それが、またはその特定の機能が作動され、スイッチが入れられ、または解錠されているかは問わず、その装置、システム、構成要素を包含する。