特許第6174236号(P6174236)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ フェイスブック,インク.の特許一覧

特許6174236ソーシャル・コンテキストに基づく画像フィルタリング
<>
  • 特許6174236-ソーシャル・コンテキストに基づく画像フィルタリング 図000002
  • 特許6174236-ソーシャル・コンテキストに基づく画像フィルタリング 図000003
  • 特許6174236-ソーシャル・コンテキストに基づく画像フィルタリング 図000004
  • 特許6174236-ソーシャル・コンテキストに基づく画像フィルタリング 図000005
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6174236
(24)【登録日】2017年7月14日
(45)【発行日】2017年8月2日
(54)【発明の名称】ソーシャル・コンテキストに基づく画像フィルタリング
(51)【国際特許分類】
   G06F 17/30 20060101AFI20170724BHJP
   G06F 13/00 20060101ALI20170724BHJP
【FI】
   G06F17/30 220C
   G06F17/30 170B
   G06F17/30 419B
   G06F13/00 540E
   G06F17/30 220B
   G06F13/00 560A
【請求項の数】15
【全頁数】24
(21)【出願番号】特願2016-501111(P2016-501111)
(86)(22)【出願日】2014年3月11日
(65)【公表番号】特表2016-519803(P2016-519803A)
(43)【公表日】2016年7月7日
(86)【国際出願番号】US2014022963
(87)【国際公開番号】WO2014164600
(87)【国際公開日】20141009
【審査請求日】2017年2月17日
(31)【優先権主張番号】13/801,802
(32)【優先日】2013年3月13日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】508178054
【氏名又は名称】フェイスブック,インク.
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】シェドー、クリストファー セルジュ バンジャマン
(72)【発明者】
【氏名】グレウォール、エミリー ビー.
(72)【発明者】
【氏名】チャン、アンドリュー
【審査官】 樋口 龍弥
(56)【参考文献】
【文献】 特開2009−205289(JP,A)
【文献】 米国特許出願公開第2012/0233256(US,A1)
【文献】 米国特許出願公開第2013/0275429(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
方法であって、
1つまたは複数のコンピューティング・デバイスが、メディアアイテムに対する要求をユーザから受け取ること、
前記1つまたは複数のコンピューティング・デバイスが、記憶されたメディアアイテムおよび該メディアアイテムに関連付けられたメタデータにアクセスすることであって、前記メタデータは、前記メディアアイテムにおいて示された1人または複数の人物を識別し、前記1人または複数の人物の各々は、ソーシャルネットワーキング・システムのソーシャルグラフのノードに関連付けられている、前記アクセスすること、
前記1つまたは複数のコンピューティング・デバイスが、前記1人または複数の人物に関連する情報を前記ソーシャルグラフから取得すること、
前記1つまたは複数のコンピューティング・デバイスが、前記メタデータおよび前記ソーシャルグラフからの情報を用いて、前記メディアアイテムに関連付けられたソーシャル・コンテキストを特定すること、
前記1つまたは複数のコンピューティング・デバイスユーザに対するソーシャル・コンテキストの関連性を特定すること、
前記1つまたは複数のコンピューティング・デバイスが、前記ソーシャル・コンテキストの関連性に基づいてディスプレイ・フィルタを生成すること、
前記1つまたは複数のコンピューティング・デバイスが、前記ディスプレイ・フィルタをイネーブルにするための命令をユーザから受け取ること、
前記1つまたは複数のコンピューティング・デバイスが、受け取った命令に応答して前記ソーシャル・コンテキストに関連付けられた1つまたは複数のメディアアイテムを選択すること、
前記1つまたは複数のコンピューティング・デバイス選択されたメディアアイテムのうちの1つまたは複数をユーザに対して表示するべく提供すること、を備える方法。
【請求項2】
前記メタデータは、
前記ソーシャルネットワーキング・システムにより自動生成されたデータと、
前記ソーシャルネットワーキング・システムの1人または複数のユーザにより生成されたデータと、
前記メディアアイテムのソースにより生成されたデータとのうちの1つまたは複数を含む、請求項1に記載の方法。
【請求項3】
前記ユーザに対するソーシャル・コンテキストの関連性は、前記ソーシャルネットワーキング・システムのソーシャルグラフ内のユーザに関連付けられた情報に少なくとも部分的に基づく、請求項1に記載の方法。
【請求項4】
ソフトウェアを具現化する1つまたは複数の非一時的なコンピュータ可読記憶媒体であって、前記ソフトウェアは、実行されるときに、
メディアアイテムに対する要求をユーザから受け取ること、
記憶されたメディアアイテムおよび該メディアアイテムに関連付けられたメタデータにアクセスすることであって、前記メタデータは、前記メディアアイテムにおいて示された1人または複数の人物を識別し、前記1人または複数の人物の各々は、ソーシャルネットワーキング・システムのソーシャルグラフのノードに関連付けられている、前記アクセスすること、
前記1人または複数の人物に関連する情報を前記ソーシャルグラフから取得すること、
前記メタデータおよび前記ソーシャルグラフからの情報を用いて、前記メディアアイテムに関連付けられたソーシャル・コンテキストを特定すること、
ユーザに対するソーシャル・コンテキストの関連性を特定すること、
前記ソーシャル・コンテキストの関連性に基づいてディスプレイ・フィルタを生成すること、
前記ディスプレイ・フィルタをイネーブルにするための命令をユーザから受け取ること、
受け取った命令に応答して前記ソーシャル・コンテキストに関連付けられた1つまたは複数のメディアアイテムを選択すること、
選択されたメディアアイテムのうちの1つまたは複数をユーザに表示するべく提供することを実行するように動作可能である、1つまたは複数の非一時的なコンピュータ可読記憶媒体。
【請求項5】
前記メタデータは、
前記ソーシャルネットワーキング・システムにより自動生成されたデータと、
前記ソーシャルネットワーキング・システムの1人または複数のユーザによって生成されたデータと、
前記メディアアイテムのソースによって生成されたデータとのうちの1つまたは複数を含む、請求項に記載の1つまたは複数の非一時的なコンピュータ可読記憶媒体。
【請求項6】
前記ユーザに対するソーシャル・コンテキストの関連性は、前記ソーシャルネットワーキング・システムのソーシャルグラフ内のユーザに関連付けられた情報に少なくとも部分的に基づいている、請求項に記載の1つまたは複数の非一時的なコンピュータ可読記憶媒体。
【請求項7】
システムであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサに結合され、且つ前記1つまたは複数のプロセッサによって実行可能な命令を含むメモリとを備え、前記命令の実行時、前記プロセッサが、
メディアアイテムに対する要求をユーザから受け取ること、
記憶されたメディアアイテムおよび該メディアアイテムに関連付けられたメタデータにアクセスすることであって、前記メタデータは、前記メディアアイテムにおいて示された1人または複数の人物を識別し、前記1人または複数の人物の各々は、ソーシャルネットワーキング・システムのソーシャルグラフのノードに関連付けられている、前記アクセスすること、
前記1人または複数の人物に関連する情報を前記ソーシャルグラフから取得すること、
前記メタデータおよび前記ソーシャルグラフからの情報を用いて、前記メディアアイテムに関連付けられたソーシャル・コンテキストを特定すること、
ユーザに対するソーシャル・コンテキストの関連性を特定すること、
前記ソーシャル・コンテキストの関連性に基づいてディスプレイ・フィルタを生成すること、
前記ディスプレイ・フィルタをイネーブルにするための命令をユーザから受け取ること、
受け取った命令に応答して前記ソーシャル・コンテキストに関連付けられた1つまたは複数のメディアアイテムを選択すること、
選択されたメディアアイテムのうちの1つまたは複数をユーザに表示するべく提供することを実行するように動作可能である、システム。
【請求項8】
前記メタデータは、
前記ソーシャルネットワーキング・システムにより自動生成されたデータと、
前記ソーシャルネットワーキング・システムの1人または複数のユーザによって生成されたデータと、
前記メディアアイテムのソースにより生成されたデータとのうちの1つまたは複数を含む、請求項に記載のシステム。
【請求項9】
前記ユーザに対するソーシャル・コンテキストの関連性は、ソーシャルネットワーキング・システムのソーシャルグラフ内のユーザに関連付けられた情報に少なくとも部分的に基づいて特定される、請求項に記載のシステム。
【請求項10】
前記メディアアイテムの少なくとも1つは、画像である、請求項1に記載の方法。
【請求項11】
前記メディアアイテムの少なくとも1つは、グラフィックス・インターチェンジ・フォーマット(GIF)アニメーションである、請求項1に記載の方法。
【請求項12】
前記メディアアイテムの少なくとも1つは、画像である、請求項4に記載の1つまたは複数の非一時的なコンピュータ可読記憶媒体。
【請求項13】
前記メディアアイテムの少なくとも1つは、グラフィックス・インターチェンジ・フォーマット(GIF)アニメーションである、請求項4に記載の1つまたは複数の非一時的なコンピュータ可読記憶媒体。
【請求項14】
前記メディアアイテムの少なくとも1つは、画像である、請求項7に記載のシステム。
【請求項15】
前記メディアアイテムの少なくとも1つは、グラフィックス・インターチェンジ・フォーマット(GIF)アニメーションである、請求項7に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は一般に、ソーシャルネットワーキング・システムにおける画像に関する。
【背景技術】
【0002】
(ソーシャルネットワーキング・ウェブサイトを含むことができる)ソーシャルネットワーキング・システムは、そのソーシャルネットワーキング・システムのユーザ(人または組織など)がそのソーシャルネットワーキング・システムと対話すること、およびそのソーシャルネットワーキング・システムを通じて互いに対話することを可能にすることができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザに関連付けられているユーザ・プロフィールを作成して、ソーシャルネットワーキング・システム内に格納することができる。ユーザ・プロフィールは、人口統計学的情報、通信チャネル情報、およびユーザの個人的な関心に関する情報を含むことができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザと、ソーシャルネットワーキング・システムのその他のユーザとの関係のレコードを作成および格納すること、ならびにサービス(たとえば、ウォール・ポスト、写真共有、イベント編成、メッセージング、ゲーム、または広告)を提供して、ユーザ同士の間における社会的な交流を容易にすることも可能である。
【0003】
ソーシャルネットワーキング・システムは、そのサービスに関連したコンテンツまたはメッセージを、1つまたは複数のネットワークを介して、ユーザのモバイルまたはその他のコンピューティング・デバイスへ送信することができる。ユーザは、自分のユーザ・プロフィールおよびソーシャルネットワーキング・システム内のその他のデータにアクセスするためにソフトウェア・アプリケーションを自分のモバイルまたはその他のコンピューティング・デバイス上にインストールすることもできる。ソーシャルネットワーキング・システムは、ユーザにつながっているその他のユーザの集約されたストーリのニュースフィードなど、ユーザに表示するためのコンテンツ・オブジェクトのパーソナライズされたセットを生成することができる。
【発明の概要】
【課題を解決するための手段】
【0004】
特定の実施形態において、ソーシャルネットワーキング・システムは、ユーザに表示できる1つまたは複数の画像のソーシャル・コンテキストを特定することができる。画像のソーシャル・コンテキストは、ソーシャルネットワーキング・システムのソーシャルグラフにおける、画像に関連付けられたメタデータ、画像に関連付けられた情報、または両方の組合せに少なくとも一部基づいて特定することができる。ソーシャルネットワーキング・システムは、各画像のソーシャル・コンテキストと第1ユーザとの関連性を、ソーシャルグラフ内のユーザに関連した情報に少なくとも部分的に基づいて特定できる。ソーシャルネットワーキング・システムは、各画像のソーシャル・コンテキストとユーザとの関連性に少なくとも部分的に基づいて、ユーザに表示するために画像のうちの1つまたは複数を提供することができる。特定の実施形態においては、ソーシャルネットワーキング・システムは、1つまたは複数のソーシャル・コンテキストに関連付けられた1つまたは複数のディスプレイ・フィルタを提供して、これにより、ユーザが、特定のソーシャル・コンテキストに関連付けられた画像を表示するためにディスプレイ・フィルタを選択できるようにしている。
【図面の簡単な説明】
【0005】
図1】ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境を示す図。
図2】例示的なソーシャルグラフを示す図。
図3】ソーシャル・コンテキストに基づく画像フィルタリングの例示的な方法を示す図。
図4】例示的なコンピュータ・システムを示す図。
【発明を実施するための形態】
【0006】
図1は、ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境100を示している。ネットワーク環境100は、ネットワーク110によって互いにつながっているクライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170を含む。図1は、クライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の特定の構成を示しているが、本開示は、クライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の任意の適切な構成を想定している。限定ではなく、例として、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、ネットワーク110を迂回して、互いに直接つながることが可能である。別の例として、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図1は、特定の数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を示しているが、本開示は、任意の適切な数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を想定している。限定ではなく、例として、ネットワーク環境100は、複数のクライアント・システム130、ソーシャルネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を含むことができる。
【0007】
本開示は、任意の適切なネットワーク110を想定している。限定ではなく、例として、ネットワーク110の1つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
【0008】
リンク150は、クライアント・システム130、ソーシャルネットワーキング・システム160、およびサードパーティ・システム170を通信ネットワーク110に、または互いに接続することができる。本開示は、任意の適切なリンク150を想定している。特定の実施形態においては、1つまたは複数のリンク150は、1つもしくは複数の有線リンク(たとえば、デジタル・サブスクライバ・ライン(DSL)もしくはデータ・オーバ・ケーブル・サービス・インタフェース仕様(DOCSIS)など)、ワイヤレス・リンク(たとえば、Wi−Fiもしくはワールドワイド・インターオペラビリティー・フォー・マイクロウェーブ・アクセス(WiMAX)など)、または光リンク(たとえば、同期光ネットワーク(SONET)もしくは同期デジタル階層(SDH)など)を含む。特定の実施形態においては、1つまたは複数のリンク150はそれぞれ、アド・ホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー・テクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク150、または複数のそのようなリンク150の組合せを含む。リンク150は、ネットワーク環境100の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク150は、1つまたは複数の点において1つまたは複数の第2のリンク150とは異なることが可能である。
【0009】
特定の実施形態においては、クライアント・システム130は、クライアント・システム130によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム130は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、eブック・リーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム130を想定している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザがネットワーク110にアクセスすることを可能にすることができる。クライアント・システム130は、自分のユーザがその他のクライアント・システム130のその他のユーザと通信することを可能にすることができる。
【0010】
特定の実施形態においては、クライアント130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOXなどのウェブ・ブラウザ132を含むことができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBARなどのその他の拡張を有することができる。クライアント・システム130のユーザは、ウェブ・ブラウザ132を特定のサーバ(サーバ162、またはサードパーティ・システム170に関連付けられているサーバなど)へ導くユニフォーム・リソース・ロケータ(URL)またはその他のアドレスを入力することができ、ウェブ・ブラウザ132は、ハイパー・テキスト転送プロトコル(HTTP)要求を生成して、そのHTTP要求をサーバに通信することができる。サーバは、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のハイパー・テキスト・マークアップ言語(HTML)ファイルをクライアント・システム130に通信することができる。クライアント・システム130は、ユーザに提示するためにサーバからのHTMLファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパー・テキスト・マークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標) and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用することができる)1つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
【0011】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャルネットワーキング・システム160は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャルグラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、格納すること、受け取ること、および送信することが可能である。ソーシャルネットワーキング・システム160は、ネットワーク環境100のその他のコンポーネントによって直接、またはネットワーク110を介してアクセスされることが可能である。特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のサーバ162を含むことができる。それぞれのサーバ162は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ162は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Exchangeサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ162は、サーバ162によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム164は、1つまたは複数のデータ・ストア164を含むことができる。データ・ストア164は、さまざまなタイプの情報を格納するために使用されることが可能である。特定の実施形態においては、データ・ストア164内に格納されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア164は、リレーショナルデータベース、カラム型(columnar)データベース、相関(correlation)データベース、または他の適切なデータベースであることが可能である。本明細書は、特定のデータベースを記載または例示していないが、本明細書は、任意の適切なデータベースを想定している。特定の実施形態は、クライアント・システム130、ソーシャルネットワーキング・システム160、またはサードパーティ・システム170が、データ・ストア164内に格納されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
【0012】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のソーシャルグラフを1つまたは複数のデータ・ストア164内に格納することができる。特定の実施形態においては、ソーシャルグラフは、複数のノード(複数のユーザ・ノード(それぞれが、特定のユーザに対応している)、または複数のコンセプト・ノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャルネットワーキング・システム160を介してオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャルネットワーキング・システム160のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャルネットワーキング・システム160を介して、つながり、関連付け、または関係を形成しているソーシャルネットワーキング・システム160のその他の任意のユーザを指すことができる。
【0013】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、ソーシャルネットワーキング・システム160によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャルネットワーキング・システム160のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャルネットワーキング・システム160において、またはサードパーティ・システム170の外部システム(ソーシャルネットワーキング・システム160とは別個のものであって、ネットワーク110を介してソーシャルネットワーキング・システム160に結合されている)によって表されることが可能である任意のものと対話することができる。
【0014】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャルネットワーキング・システム160は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム170もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
【0015】
特定の実施形態においては、サードパーティ・システム170は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータ・ストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブ・サービス、1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信することができる)その他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム170は、ソーシャルネットワーキング・システム160を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャルネットワーキング・システム160およびサードパーティ・システム170は、ソーシャルネットワーキング・システム160またはサードパーティ・システム170のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャルネットワーキング・システム160は、サードパーティ・システム170などのその他のシステムがインターネットを介してソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
【0016】
特定の実施形態においては、サードパーティ・システム170は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム130に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
【0017】
特定の実施形態においては、ソーシャルネットワーキング・システム160はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャルネットワーキング・システム160とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャルネットワーキング・システム160に付加、アップロード、送信、または「ポスト」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム130からソーシャルネットワーキング・システム160へポストを通信する。ポストは、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、ビデオ、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャルネットワーキング・システム160に付加されることも可能である。
【0018】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、ウェブ・サーバ、アクション・ロガー、API要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類子、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト露出ログ、推測モジュール、認可/プライバシー・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザインタフェース・モジュール、ユーザプロフィール・ストア、つながりストア、サードパーティ・コンテンツ・ストア、またはロケーション・ストアのうちの1つまたは複数を含むことができる。ソーシャルネットワーキング・システム160は、適切なコンポーネント、たとえば、ネットワーク・インタフェース、セキュリティー・メカニズム、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワークオペレーション・コンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、ユーザ・プロフィールを格納するための1つまたは複数のユーザプロフィール・ストアを含むことができる。ユーザ・プロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親密度、またはロケーションを含むことができる。関心情報は、1つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね!」を表明した場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を格納するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループ・メンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ(内部および外部の両方)の間におけるユーザ定義のつながりを含むこともできる。ネットワーク110を介してソーシャルネットワーキング・システム160を1つもしくは複数のクライアント・システム130または1つもしくは複数のサードパーティ・システム170にリンクさせるために、ウェブ・サーバが使用されることが可能である。ウェブ・サーバは、ソーシャルネットワーキング・システム160と、1つまたは複数のクライアント・システム130との間においてメッセージを受け取って回送するためにメール・サーバまたはその他のメッセージング機能を含むことができる。API要求サーバは、サードパーティ・システム170が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキング・システム160からの情報にアクセスすることを可能にすることができる。ソーシャルネットワーキング・システム160の上のまたは外のユーザのアクションに関してウェブ・サーバから通信を受け取るために、アクション・ロガーが使用されることが可能である。アクション・ログとともに、サードパーティコンテンツ・オブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクト・ログが保持されることが可能である。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム130に提供することができる。情報は、通知としてクライアント・システム130へ押し出されることが可能であり、または情報は、クライアント・システム130から受け取られた要求に応答してクライアント・システム130から引き出されることが可能である。ソーシャルネットワーキング・システム160のユーザの1つまたは複数のプライバシー設定を実施するために、認可サーバが使用されることが可能である。ユーザのプライバシー設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを特定する。認可サーバは、ユーザが、たとえば、適切なプライバシー設定を設定することなどによって、自分のアクションをソーシャルネットワーキング・システム160によって記録されること、またはその他のシステム(たとえば、サードパーティ・システム170)と共有されることのオプトインまたはオプトアウトを行うことを可能にすることができる。サードパーティ・システム170などのサードパーティから受け取られたコンテンツ・オブジェクトを格納するために、サードパーティコンテンツオブジェクト・ストアが使用されることが可能である。ユーザに関連付けられているクライアント・システム130から受け取られたロケーション情報を格納するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
【0019】
図2は、例示的なソーシャルグラフ200を示している。特定の実施形態においては、ソーシャルネットワーキング・システム160は、1つまたは複数のソーシャルグラフ200を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、ソーシャルグラフ200は、複数のノード(複数のユーザ・ノード202、または複数のコンセプト・ノード204を含むことができる)と、ノード同士をつなげる複数のエッジ206とを含むことができる。図2において示されている例示的なソーシャルグラフ200は、教示上の目的から、2次元のビジュアル・マップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキング・システム160、クライアント・システム130、またはサードパーティ・システム170は、適切なアプリケーションに関してソーシャルグラフ200および関連したソーシャルグラフ情報にアクセスすることができる。ソーシャルグラフ200のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャルグラフ・データベースなどの)データ・ストア内に格納されることが可能である。そのようなデータ・ストアは、ソーシャルグラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
【0020】
特定の実施形態においては、ユーザ・ノード202は、ソーシャルネットワーキング・システム160のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャルネットワーキング・システム160と、またはソーシャルネットワーキング・システム160を介して対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャルネットワーキング・システム160とのアカウントに登録した場合には、ソーシャルネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1つまたは複数のデータ・ストア内に格納することができる。本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード202を指すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、ソーシャルネットワーキング・システム160に登録されていないユーザを指すことができる。特定の実施形態においては、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャルネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード202は、1つまたは複数のウェブページに対応することができる。
【0021】
特定の実施形態においては、コンセプト・ノード204は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワーク・システム160に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャルネットワーキング・システム160内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオ・ファイル、ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化されたドキュメント、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、アイディア、写真、もしくは執筆作品など)、ゲーム、アクティビティ、アイディアもしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャルネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、(URLに関連付けられることが可能である)ウェブサイト、連絡先情報(たとえば、電話番号もしくはEメール・アドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード204は、コンセプト・ノード204に関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード204は、1つまたは複数のウェブページに対応することができる。
【0022】
特定の実施形態においては、ソーシャルグラフ200内のノードは、ウェブページ(「プロフィール・ページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャルネットワーキング・システム160によってホストされること、またはソーシャルネットワーキング・システム160にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ170に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード204に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード202は、対応するユーザプロフィール・ページを有することができ、そのユーザプロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード204は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
【0023】
特定の実施形態においては、コンセプト・ノード204は、サードパーティ・システム170によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「食べる」)を選択することによってアクションを実行して、クライアント・システム130に、そのユーザのアクションを示すメッセージをソーシャルネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム160は、ユーザに対応するユーザ・ノード202と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード204との間においてエッジ(たとえば、「食べる」エッジ)を作成して、エッジ206を1つまたは複数のデータ・ストア内に格納することができる。
【0024】
特定の実施形態においては、ソーシャルグラフ200内の1対のノードが、1つまたは複数のエッジ206によって互いにつながることが可能である。1対のノードをつなげるエッジ206は、それらの1対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ206は、1対のノードの間における関係に対応する1つまたは複数のデータ・オブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であるということを示すことができる。この表示に応答して、ソーシャルネットワーキング・システム160は、「友達要求」を第2のユーザに送信することができる。第2のユーザがその「友達要求」を承認した場合には、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200内で第1のユーザのユーザ・ノード202を第2のユーザのユーザ・ノード202につなげるエッジ206を作成して、エッジ206をソーシャルグラフ情報としてデータ・ストア24のうちの1つまたは複数の中に格納することができる。図2の例においては、ソーシャルグラフ200は、ユーザ「A」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジ206と、ユーザ「C」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード202同士をつなげる特定の属性を伴う特定のエッジ206を記述している、または示しているが、本開示は、ユーザ・ノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャルグラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を指すことができる。
【0025】
特定の実施形態においては、ユーザ・ノード202とコンセプト・ノード204との間におけるエッジ206は、ユーザ・ノード202に関連付けられているユーザによって、コンセプト・ノード204に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図2において示されているように、ユーザは、コンセプトに対して「いいね!を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらのそれぞれは、エッジタイプまたはサブタイプに対応することができる。コンセプト・ノード204に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「お気に入りに追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキング・システム160は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ(ユーザ「C」)が、特定のアプリケーション(オンライン音楽アプリケーションであるSPOTIFY)を使用して特定の曲(「イマジン」)を聴く場合がある。このケースにおいては、ソーシャルネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202と、その曲およびアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「聴いた」エッジ206および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したということを示すことができる。その上、ソーシャルネットワーキング・システム160は、その曲に対応するコンセプト・ノード204と、そのアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「再生した」エッジ206を作成して、その特定の曲がその特定のアプリケーションによって再生されたということを示すことができる。このケースにおいては、「再生した」エッジ206は、外部アプリケーション(SPOTIFY)によって外部オーディオ・ファイル(「イマジン」という曲)に関して実行されたアクションに対応する。本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる特定の属性を伴う特定のエッジ206について記述しているが、本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。その上、本開示は、単一の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジについて記述しているが、本開示は、1つまたは複数の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジを想定している。限定ではなく、例として、エッジ206は、ユーザが特定のコンセプトに対して「いいね!」を表明しているということ、およびその特定のコンセプトを使用したということの両方を表すことができる。あるいは、別のエッジ206は、(図2において、ユーザ「E」を表すユーザ・ノード202と、「SPOTIFY」を表すコンセプト・ノード204との間において示されているような)ユーザ・ノード202とコンセプト・ノード204との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる。
【0026】
特定の実施形態においては、ソーシャルネットワーキング・システム160は、ソーシャルグラフ200内でユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。限定ではなく、例として、(たとえば、ユーザのクライアント・システム130によってホストされているウェブ・ブラウザまたは専用のアプリケーションを使用することなどによって)コンセプトプロフィール・ページを閲覧しているユーザは、「いいね!」アイコンをクリックまたは選択することにより、コンセプト・ノード204によって表されているコンセプトを自分が気に入っているということを示すことができ、その「いいね!」アイコンをクリックまたは選択することは、ユーザのクライアント・システム130に、そのコンセプトプロフィール・ページに関連付けられているそのコンセプトをそのユーザが気に入っているということを示すメッセージをソーシャルネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム160は、そのユーザとコンセプト・ノード204との間における「いいね!」エッジ206によって示されているように、そのユーザに関連付けられているユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、エッジ206を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、エッジ206は、特定のユーザ・アクションに応答してソーシャルネットワーキング・システム160によって自動的に形成されることが可能である。限定ではなく、例として、第1のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ206は、第1のユーザに対応するユーザ・ノード202と、それらのコンセプトに対応するコンセプト・ノード204との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ206を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ206を形成することを想定している。
【0027】
特定の実施形態においては、1つまたは複数の画像(たとえば、クライアント・システム130に格納されたもの)をユーザがソーシャルネットワーキング・システム160にアップロードすることができる。例として、ユーザは、クライアント・システム130に格納された画像をソーシャルネットワーキング・システム160に手動でアップロードすることができる。別の例として、クライアント・システム130は、クライアント・システム130に格納された画像を、(たとえば、ユーザのプライバシー設定に応じて)画像同期を介してソーシャルネットワーキング・システム160に自動的にアップロードできる。特定の実施形態においては、クライアント・システム130のアプリケーションまたはオペレーティング・システム(OS)が、画像をソーシャルネットワーキング160にアップロードすることができる。ソーシャルネットワーキング・システム160は、サードパーティ・システム170、共有アーカイブまたは共有スペース、または任意の他の画像ソースから画像を受信することも可能である。ユーザは、自分のプライバシー設定に少なくとも部分的に基づいて、1つまたは複数の画像をプライベート指定(あるいはアクセス規制)するか、または1つまたは複数の画像へのアクセスをソーシャルネットワーキング・システム160の特定の他のユーザに許可することができる。
【0028】
特定の実施形態においては、ソーシャルネットワーキング・システム160にアップロードする画像は、関連付けられたメタデータを含んでいてもよい。画像に関連付けられたメタデータは(たとえば、画像ソースであるカメラによって)自動生成することが可能である。自動生成され、画像に関連付けられたメタデータは、たとえば、画像に関する情報を含み、EXIF(交換可能な画像ファイル形式(Exchangeable Image File Format))データとして格納することができる。メタデータは、画像の撮影日および時間、撮影場所(たとえばGPS座標)、画像に適用した圧縮、カメラのモデル、カメラ設定(たとえば、解像度、色情報、フラッシュの使用、露出、シャッタ速度、口径、焦点距離、またはISO速度)といった情報を含むことができる。特定の実施形態においては、画像に関連付けられたメタデータを自動生成し、ソーシャルネットワーキング・システム160にアップロードする前に手動で編集することができる(たとえば、クライアント・システム130上の写真アプリケーションで編集する)。別の実施形態においては、画像に関連付けられたメタデータを(たとえば、カメラ使用者、またはクライアント・システム130のユーザにより)手動で生成し、このメタデータをソーシャルネットワーキング・システムにアップロードすることができる。
【0029】
特定の実施形態においては、ソーシャルネットワーキング・システム160にアップロードされた画像を、ソーシャルネットワーキング・システム上のメタデータに関連付けることができる。メタデータは、ソーシャルネットワーキング・システムの1人または複数のユーザによって手動で生成することができる。例として、画像が、ソーシャルネットワーキング・システムの1人または複数のユーザを含んだ写真である場合には、写真中のユーザの名前または識別子を表すメタデータをその写真に「タグ付け」またはラベル付けすることができる(たとえば、アップロードを実行するユーザ、または許可を得たソーシャルネットワーキング・システムの任意のユーザが行う)。別の例として、画像が、特定の場所または時間にて撮影された写真である場合には、この写真に、場所を含むメタデータ(特定の実施形態においては、ソーシャルグラフ内のコンセプト・ノードに対応したもの)、または日付もしくは時間の情報もタグ付けすることができる。同様に、画像が、建物、ロゴまたはブランド、あるいは、ソーシャルグラフ内のコンセプト・ノードに関連付けられた任意の他のコンセプトを含んだ写真である場合には、この写真に、対応するコンセプト・ノードの識別子を含んだメタデータをタグ付けすることができる。特定の実施形態においては、画像に関連付けられたメタデータは、ソーシャルネットワーキング・システム160によって自動生成することができる。例として、ソーシャルネットワーキング・システム160は、画像をアップロードしたユーザの識別子を含むメタデータを画像に自動的にタグ付けすることができる。別の例として、ソーシャルネットワーキング・システムは、アップロードされた画像の1つまたは複数の顔を自動的に検出することができる。これは、たとえば、顔認識アルゴリズムを使用して行うことができる。ソーシャルネットワーキング・システム160は、アップロードされた画像内で検出された顔に基づいて、ソーシャルネットワーキング・システムの1人または複数のユーザが画像に写っていると自動的に特定し、さらに、画像に、画像に写っているユーザの識別子を含んだメタデータを(ユーザ個人のプライバシー設定に応じて)タグ付けすることができる。別の例として、ソーシャルネットワーキング・システムは、アップロードされた画像中の、ソーシャルグラフ内のコンセプト・ノードに関連付けられた場所、建物、ロゴ、ブランド、または任意の他のコンセプトを(たとえば、コンピュータ・ビジョン・アルゴリズムを使用して)自動的に検出できる。ソーシャルネットワーキング・システムは、画像に、自動的に検出されたアイテムに対応したソーシャルグラフ内のこれらのコンセプト・ノードの識別子を含むメタデータを自動的にタグ付けできる。
【0030】
特定の実施形態においては、ソーシャルネットワーキング・システム160のソーシャルグラフから特定された情報を画像に関連付けることができる。ソーシャルグラフから特定された情報は、たとえば、ソーシャルグラフ内のノードで示されたユーザまたはコンセプトに関連付けられたデータ、または、ソーシャルグラフ内のエッジが示す関係もしくはアクションに関連付けられたデータを含んでもよい。例として、上述したように、写真は、その写真が7月4日にゴールデンゲート・ブリッジで撮影されたことを示す日付およびGPSメタデータ(たとえば、写真を撮影したカメラで生成されたもの)を含んでもよい。写真は、ソーシャルネットワーキング・システムのユーザで、写真に写っている人物として(たとえば、ソーシャルネットワーキング・システムの別のユーザにより)タグ付けされているユーザ1の識別子を含んだメタデータをさらに含んでいてもよい。写真は、ソーシャルネットワーキング・システムのユーザで、写真に写っている人物としてタグ付けされている(たとえば、ソーシャルネットワーキング・システム160によって自動的に生成されている)ユーザ2の識別子を含むメタデータをさらに含んでいてもよい。ソーシャルグラフから特定される情報は、ソーシャルネットワーキング・システム160上でユーザ1およびユーザ2の両者が「ゴールデンゲート・ブリッジにおける7月4日(米国独立記念日)の集い」と題されたイベントの招待状を受け取ったという事実を含んでいてもよい。別の例として、ユーザ1とユーザ2の両者がこのイベントへの招待状を受け取っていなくても、ソーシャルグラフから特定された情報は、ユーザ1およびユーザ2の複数の友達がこのイベントへの招待状を受け取ったという事実を含むことができる。写真は、メタデータと、ソーシャルグラフから入手した情報(たとえば、ユーザ1とユーザ2の両者がイベントへの招待状を受け取ったか、あるいは、彼らの友達が同イベントへの招待状を受け取ったといういずれかの事実)との組合せに基づいたソーシャル・コンテキストを有することができる。この例では、写真は、「ゴールデンゲート・ブリッジにおける7月4日(米国独立記念日)の集い」のイベントに関連付けされているソーシャル・コンテキスト(たとえば、このイベントで写真が撮影された)を有することができる。ソーシャル・コンテキストは、イベント、特定のユーザもしくは一組のユーザ、場所、時間、または任意のその他適切なタイプとの関連を含んでいてもよい。特定の実施形態においては、画像のソーシャル・コンテキストは、画像に関連付けられたメタデータに基づいて特定されることができる。別の実施形態においては、画像のソーシャル・コンテキストは、ソーシャルグラフから特定された情報に基づいて特定されることができる。さらに別の実施形態においては、画像のソーシャル・コンテキストは、画像に関連付けられたメタデータとソーシャルグラフから特定された情報との組合せによって特定されることができる。
【0031】
画像のソーシャル・コンテキストと特定ユーザとの関連性は、ソーシャルネットワーキング・システムのソーシャルグラフから収集した情報に基づいて特定することができる。限定ではなく、例として、(たとえば、ユーザが他人のプロフィールを閲覧中に)ユーザに表示できる画像には、以下のソーシャル・コンテキストを有する画像が含まれてもよい。ユーザに関連付けられたかまたはユーザを表すソーシャル・コンテキスト、ソーシャルグラフ内のユーザにつながっている別ユーザに関連付けられたかまたは別ユーザを示すソーシャル・コンテキスト(これは、特定の隔たり次数内でユーザにつながっている別ユーザ、特定のグループまたは組織内の別ユーザ、ユーザと特定の興味または親近性を共有する別ユーザ、ユーザと類似のプロフィールを有するかまたは対象の人口統計学的プロフィールを有する別ユーザに限られる)、ユーザがフォローしている特定の別ユーザまたはコンセプトに関連付けられたかまたは特定の別ユーザまたはコンセプトを示すソーシャル・コンテキスト、ユーザが参加したイベントに関連付けられたかまたはこのイベントを示すソーシャル・コンテキスト、ソーシャルグラフ内でユーザとつながっている人物が招待されたかもしくは参加したイベントに関連付けられたかまたはこのイベントを示すソーシャル・コンテキスト、ユーザがよく訪れる場所またはビジネスに関連付けられたかまたはユーザがよく訪れる場所またはビジネスを示すソーシャル・コンテキスト。ソーシャルネットワーキング・システムは、画像の1つまたは複数のソーシャル・コンテキストとユーザとの関連性を、つながり値に少なくとも部分的に基づいて特定できる。限定ではなく、例として、画像中の、ソーシャルグラフ内でユーザとつながっている多数のユーザは、つながり値に影響し得る。さらに、描写された別ユーザとユーザとの間の隔たり次数もつながり値に影響し得る。別の例として、ユーザと、画像中に示された別ユーザとの間のつながりのタイプはつながり値に影響し得る。限定ではなく、例として、「友情」または「家族」タイプのつながりは、「仕事の同僚」タイプのつながりよりも高いつながり値に関連付けられる。ソーシャルネットワーキング・システムは、画像の1つまたは複数のソーシャル・コンテキストとユーザとの関連性を、興味値に少なくとも部分的に基づいて特定することもできる。興味値は、画像のソーシャル・コンテキストがユーザの興味に関連付けられた1つまたは複数のカテゴリと一致するかどうかに少なくとも部分的に基づいてもよい。興味値は、たとえば、画像中に描写された人、場所、オブジェクト、アクションが、ユーザの興味に関連付けられた1つまたは複数のカテゴリと一致するかどうかに少なくとも部分的に基づいてもよい。関連性スコアの特定については、2010年12月22日に出願された米国特許出願第12/976,859号「Timing for Providing Relevant Notifications for a User Based on User Interaction with Notifications」にてさらに詳細に説明されており、上記出願は参照によって本明細書に援用されている。
【0032】
特定の実施形態においては、ソーシャルネットワーキング・システム160上の第1ユーザに関連付けられた一組の画像は、ソーシャルネットワーキング・システムの別のユーザも閲覧することができる。たとえば、第2ユーザが第1ユーザのユーザ・プロフィールを訪れた場合、第1ユーザに関連付けられた一組の画像を、第2ユーザが閲覧できるようにすることができる(ただしこれは、たとえば、第1ユーザの許可設定またはプライバシー設定と、第1ユーザおよび第2ユーザの間の関係とに応じる)。ソーシャルネットワーキング・システムのユーザへの画像の提示については、2012年12月14日に出願された米国特許出願第13/715,636号「Rendering Contiguous Image Elements」においてさらに詳細に説明されており、上記出願は参照によって本明細書に援用されている。特定の実施形態においては、第1ユーザに関連付けられた画像を一連のアルバムとして第2ユーザに提示することができる。例として、第2ユーザは、第1ユーザのユーザ・プロフィールに関連付けられた、一連のアルバムを含んでいるウェブページを見ることができる。第2ユーザは、ウェブページの一番下に、たとえば第1ユーザに関連付けられた追加のアルバム、ソーシャルネットワーキング・システムの別のユーザに関連付けられたアルバム、第2ユーザ自身のユーザ・プロフィールに関連付けられたアルバム、といった別のアルバムをブラウジングするためのオプションを見ることができる。第2ユーザに提示されるアルバムは、たとえば、アルバムのタイトル、アルバムの簡単な説明、アルバムまたはその写真に関連付けられた任意の他の情報といった、追加の情報を含んでいてもよい。特定の実施形態においては、第2ユーザは、(たとえばマウスによって)アルバム上を「ホバー(hover)」すると、アルバムに「いいね!」の表明、またはコメントができるようになる。さらに、特定の実施形態においては、第2ユーザがアルバム上をホバーすると、第2ユーザがアルバム上をホバーしている間、アルバム内の第1N枚(たとえば5枚)の写真を、第2ユーザに提示されたアルバムの代表的な画像として自動的に繰り返し表示することができる。別のユーザがアルバム上をホバーした場合には、第1ユーザは、自動繰り返し表示中にアルバムのどの写真が提示されるかを特定することができる。
【0033】
特定の実施形態においては、ユーザに表示されるべく提示された1つまたは複数の画像を、1つまたは複数のディスプレイ・フィルタでフィルタすることができる。このディスプレイ・フィルタは、ユーザへの、1つまたは複数の画像の1つまたは複数のソーシャル・コンテキストの関連性に基づいて(たとえば、ソーシャルネットワーキング・システム160によって自動的に)生成できる。例として、ソーシャルネットワーキング・システム上の第1ユーザの画像を第2ユーザが閲覧しており、第1ユーザの複数の画像が、第2ユーザも参加したパーティーでの第2ユーザと仲の良い友達に関連付けられた、またはこの友達を示すソーシャル・コンテキストを有する場合には、このソーシャル・コンテキストは第2ユーザと非常に高い関連性を有すると特定される。この関連性の特定に基づき、このパーティーに関連付けられたソーシャル・コンテキストを有する画像のディスプレイ・フィルタを生成し、このディスプレイ・フィルタを第2ユーザが利用できるようにすることが可能である。さらに、1人または複数の第2ユーザと仲の良い友達に関連付けられた1つまたは複数のソーシャル・コンテキストを有する画像の1つまたは複数の追加のディスプレイ・フィルタを生成し、この1つまたは複数の追加のディスプレイ・フィルタを第2ユーザが利用できるようにすることも可能である。これにより、第2ユーザは、このパーティーに関連付けられた、または第2ユーザの特定の仲の良い友達に関連付けられた第1ユーザの画像のみを見るために、ディスプレイ・フィルタを(たとえば、ドロップダウンメニュー、またはその他の選択可能なウェブページ特徴により)選択することができる。別の例として、第1ユーザのいくつかの画像が、ソーシャルグラフ上の第2ユーザの4次のつながりに関連した、またはこのつながりを示すソーシャル・コンテキストを有する場合には、これらの画像のソーシャル・コンテキストは第2ユーザと高い関連性を持たないと特定できる。この関連性(たとえば関連性の欠如)の特定に基づいて、このソーシャル・コンテキストにはディスプレイ・フィルタが作成されない。したがって、ソーシャルネットワーキング・システム内の各画像は、1つまたは複数の関連付けられたソーシャル・コンテキストを有することができる。これらソーシャル・コンテキストの各々の関連性は、ソーシャルネットワーキング・システムの特定のユーザに関連して特定できる。これらソーシャル・コンテキストの各々の関連性に基づいて、1つまたは複数のソーシャル・コンテキストに関連付けられた1つまたは複数のディスプレイ・フィルタを生成することが可能である。ユーザは、ソーシャル・コンテキストに関連付けられたディスプレイ・フィルタを選択することにより、選択されたソーシャル・コンテキストを有する画像のみを閲覧できるようになる。
【0034】
図3は、ソーシャル・コンテキストに基づいて画像をフィルタする方法300の例を示す。この方法は工程310から開始できるが、ここでは、ユーザに表示される、1つまたは複数の画像の各々のソーシャル・コンテキストが特定される。工程320では、各ソーシャル・コンテキストとユーザとの関連性が特定される。工程330では、各画像のソーシャル・コンテキストとユーザとの関連性に少なくとも部分的に基づいて、画像のうちの1つまたは複数がユーザへのディスプレイ用に提供される。特定の実施形態は、図3の方法の1つまたは複数の工程を必要に応じて繰り返すことができる。本開示は、図3の方法の特定の工程を、特定の順序で追うものとして記述し、示しているが、本開示は、任意の適切な順序を追う図3の方法の任意の適切な工程を想定している。さらに、本開示は図3の方法の特定の工程を実施する特定のコンポーネント、デバイス、システムを記述し、示しているが、本開示は、図3の方法の任意の適切な工程を実施する任意の適切なコンポーネント、デバイス、システムの任意の適切な組合せを想定している。
【0035】
図4は、例示的なコンピュータ・システム400を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム400が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム400が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム400上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム400の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができる。その上、コンピュータ・システムへの言及は、適切な場合には、1つまたは複数のコンピュータ・システムを包含することができる。
【0036】
本開示は、任意の適切な数のコンピュータ・システム400を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータ・システム400を想定している。限定ではなく、例として、コンピュータ・システム400は、組み込みコンピュータ・システム、システムオンチップ(SOC)、シングルボード・コンピュータ・システム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、インタラクティブ・キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータ・システム400は、1つもしくは複数のコンピュータ・システム400を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウド・コンポーネントを含むことができる)内に常駐することが可能である。適切な場合には、1つまたは複数のコンピュータ・システム400は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、1つまたは複数のコンピュータ・システム400は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアル・タイムで、またはバッチ・モードで実行することができる。1つまたは複数のコンピュータ・システム400は、適切な場合には、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
【0037】
特定の実施形態においては、コンピュータ・システム400は、プロセッサ402、メモリ404、ストレージ406、入力/出力(I/O)インタフェース408、通信インタフェース410、およびバス412を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータ・システムを想定している。
【0038】
特定の実施形態においては、プロセッサ402は、コンピュータ・プログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ402は、内部レジスタ、内部キャッシュ、メモリ404、またはストレージ406から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ404、またはストレージ406に書き込むことができる。特定の実施形態においては、プロセッサ402は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ402を想定している。限定ではなく、例として、プロセッサ402は、1つまたは複数の命令キャッシュ、1つまたは複数のデータ・キャッシュ、および1つまたは複数の変換ルックアサイド・バッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ404またはストレージ406内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ402によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ402において実行される命令が機能する際に基づくメモリ404もしくはストレージ406内のデータのコピー、プロセッサ402において実行される後続の命令によるアクセスのための、もしくはメモリ404もしくはストレージ406への書き込みのためのプロセッサ402において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ402による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ402のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ402は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ402を想定している。適切な場合には、プロセッサ402は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ402を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
【0039】
特定の実施形態においては、メモリ404は、プロセッサ402が実行するための命令、またはプロセッサ402が機能する際に基づくデータを格納するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム400は、命令をストレージ406または別のソース(たとえば、別のコンピュータ・システム400など)からメモリ404にロードすることができる。次いでプロセッサ402は、命令をメモリ404から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ402は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ402は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ402は、それらの結果のうちの1つまたは複数をメモリ404に書き込むことができる。特定の実施形態においては、プロセッサ402は、(ストレージ406またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ404内の命令のみを実行し、(ストレージ406またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ404内のデータ上でのみ機能する。1つまたは複数のメモリ・バス(それらはそれぞれ、アドレス・バスおよびデータ・バスを含むことができる)は、プロセッサ402をメモリ404に結合することができる。バス412は、以降で記述されているような1つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ402とメモリ404との間に常駐し、プロセッサ402によって要求されるメモリ404へのアクセスを容易にする。特定の実施形態においては、メモリ404は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ404は、適切な場合には、1つまたは複数のメモリ404を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
【0040】
特定の実施形態においては、ストレージ406は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ406は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ406は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ406は、適切な場合には、コンピュータ・システム400の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ406は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ406は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ406を想定している。ストレージ406は、適切な場合には、プロセッサ402とストレージ406との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ406は、1つまたは複数のストレージ406を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
【0041】
特定の実施形態においては、I/Oインタフェース408は、コンピュータ・システム400と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム400は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含むことができる。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータ・システム400との間における通信を可能にすることができる。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含むことができる。I/Oデバイスは、1つまたは複数のセンサを含むことができる。本開示は、任意の適切なI/Oデバイス、およびそれらのI/Oデバイスのための任意の適切なI/Oインタフェース408を想定している。適切な場合には、I/Oインタフェース408は、プロセッサ402がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。I/Oインタフェース408は、適切な場合には、1つまたは複数のI/Oインタフェース408を含むことができる。本開示は、特定のI/Oインタフェースについて記述し、示しているが、本開示は、任意の適切なI/Oインタフェースを想定している。
【0042】
特定の実施形態においては、通信インタフェース410は、コンピュータ・システム400と、1つもしくは複数のその他のコンピュータ・システム400または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース410は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワーク・インタフェース・コントローラ(NIC)もしくはネットワーク・アダプタ、またはWI−FIネットワークなどのワイヤレス・ネットワークと通信するためのワイヤレスNIC(WNIC)もしくはワイヤレス・アダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース410を想定している。限定ではなく、例として、コンピュータ・システム400は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータ・システム400は、ワイヤレスPAN(WPAN)(たとえば、ブルートゥースWPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切なワイヤレス・ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム400は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース410を含むことができる。通信インタフェース410は、適切な場合には、1つまたは複数の通信インタフェース410を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
【0043】
特定の実施形態においては、バス412は、コンピュータ・システム400のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス412は、アクセラレイティッド・グラフィックス・ポート(AGP)もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ(EISA)バス、フロントサイド・バス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリー・スタンダード・アーキテクチャ(ISA)バス、インフィニバンド・インターコネクト、ローピンカウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス412は、適切な場合には、1つまたは複数のバス412を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
【0044】
本明細書においては、1つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブル・ゲート・アレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
【0045】
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
【0046】
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。
図1
図2
図3
図4