JP6445073B2 - モバイルデバイス関連の親和性の度合い - Google Patents

モバイルデバイス関連の親和性の度合い Download PDF

Info

Publication number
JP6445073B2
JP6445073B2 JP2017078682A JP2017078682A JP6445073B2 JP 6445073 B2 JP6445073 B2 JP 6445073B2 JP 2017078682 A JP2017078682 A JP 2017078682A JP 2017078682 A JP2017078682 A JP 2017078682A JP 6445073 B2 JP6445073 B2 JP 6445073B2
Authority
JP
Japan
Prior art keywords
user
affinity
degree
weight
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017078682A
Other languages
English (en)
Other versions
JP2017174437A (ja
Inventor
アリー メイタス、ジョナサン
アリー メイタス、ジョナサン
Original Assignee
フェイスブック,インク.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by フェイスブック,インク. filed Critical フェイスブック,インク.
Publication of JP2017174437A publication Critical patent/JP2017174437A/ja
Application granted granted Critical
Publication of JP6445073B2 publication Critical patent/JP6445073B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Computer Hardware Design (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Multimedia (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本開示は、一般にはモバイルデバイスに関し、より詳細には、モバイルデバイスの使用に基づいて親和性の度合いを決定することに関する。
携帯電話、携帯情報端末(PDA)、タブレットコンピュータ、およびミニラップトップなどのモバイルコンピューティング/通信デバイスが、近年、普及してきている。そのようなモバイルデバイスはしばしば、特定の個人に結び付いており、したがって、アカウント情報、ユーザプロフィール情報、またはその他のユーザに関連付けられている情報を含む個人情報を含んでいる。加えて、モバイルデバイスは、コンテンツアイテムまたはその他のユーザとの対話を提供する、インターネットに接続されたアプリケーションを有する。
例示的なネットワーク環境を示す図。 例示的なモバイルコンピューティングデバイスを示す図。 例示的なモバイルコンピューティングデバイスの外装を示す図。 例示的なモバイルコンピューティングデバイス上の情報およびアプリケーションに関する例示的なソフトウェアアーキテクチャを示す図。 例示的なモバイルコンピューティングデバイスの例示的なホームスクリーンの例示的なワイヤフレームを示す図。 親和性の大きさを算出するための例示的な方法を示す図。 例示的なコンピュータシステムを示す図。
次いで、添付の図面において示されている本開示のいくつかの実施形態を参照しながら、本開示について詳細に説明する。以降の説明において、本開示の徹底的な理解を提供するために多くの具体的な詳細が示されている。しかしながら、これらの具体的な詳細のうちのいくつかまたはすべてを伴わずに本開示を実施する。その他の場合において、本開示を不必要にわかりにくくしないように、周知の処理工程および/または構造は、詳細に説明されていない。加えて、本開示は、特定の実施形態に関連して説明されているが、この説明は、本開示を、説明されている実施形態に限定することを意図するものではないということを理解されたい。逆に、この説明は、添付の特許請求の範囲によって定義されている本開示の趣旨および範囲内に含まれる代替形態、修正形態、および均等形態を包含することを意図されている。
図1は、例示的なネットワーク環境100を示している。ネットワーク環境100は、1つまたは複数のサーバ120および1つまたは複数のクライアント130を互いに結合するネットワーク110を含む。特定の実施形態において、ネットワーク110は、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線LAN(WLAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部分、セルラ技術ベースのネットワーク、衛星通信技術のネットワーク、または別のネットワーク110、または複数のそのようなネットワーク110の組合せである。本開示は、任意の適切なネットワーク110を想定している。
1つまたは複数のリンク150が、サーバ120またはクライアント130をネットワ
ーク110に結合している。特定の実施形態において、1つまたは複数のリンク150はそれぞれ、1つまたは複数の有線リンク、無線リンク、または光リンク150を含む。特定の実施形態において、1つまたは複数のリンク150はそれぞれ、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、MAN、インターネットの一部分、セルラ技術ベースのネットワーク、衛星通信技術ベースのネットワーク、または別のリンク150、または複数のそのようなリンク150の組合せを含む。本開示は、サーバ120およびクライアント130をネットワーク110に結合する任意の適切なリンク150を想定している。
特定の実施形態において、それぞれのサーバ120は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンタに亘る分散サーバである。サーバ120は、限定ではなく、例として、ウェブサーバ、ニュースサーバ、メールサーバ、メッセージサーバ、広告サーバ、ファイルサーバ、アプリケーションサーバ、エクスチェンジサーバ、データベースサーバ、プロキシサーバ、本明細書において説明されている機能および/もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものである。特定の実施形態において、それぞれのサーバ120は、サーバ120によって実装またはサポートされる適切な機能を実行するためのハードウェア要素、ソフトウェア要素、または組込論理要素、または複数のそのような要素の組合せを含む。たとえば、ウェブサーバは一般に、ウェブページ、またはウェブページの特定の要素を含むウェブサイトをホストする。より具体的には、ウェブサーバは、ハイパーテキストマークアップ言語(HTML)ファイルもしくはその他のファイルタイプをホストすることができ、または要求に応じてファイルを動的に作成もしくは構成して、それらのファイルを、クライアント130からのハイパーテキスト転送プロトコル(HTTP)もしくはその他の要求に応答してクライアント130に通信する。メールサーバは一般に、さまざまなクライアント130に電子メールサービスを提供する。データベースサーバは一般に、1つまたは複数のデータストア内に記憶されているデータを管理するためのインタフェースを提供する。特定の実施形態において、ソーシャルネットワーキングシステム122が、サーバ120上でホストされる。本開示は、特定の要素の特定の構成を有する特定のソーシャルネットワーキングシステムについて説明して示しているが、本開示は、任意の適切な要素の任意の適切な構成を有するソーシャルネットワーキングシステムを想定している。
特定の実施形態において、1つまたは複数のデータストレージ140が、1つまたは複数のリンク150を通じて1つまたは複数のサーバ120に通信可能にリンクされる。特定の実施形態において、データストレージ140を使用して、さまざまなタイプの情報を記憶する。特定の実施形態において、データストレージ140内に記憶されている情報を、特定のデータ構造に従って編成する。特定の実施形態において、それぞれのデータストレージ140は、リレーショナルデータベースである。特定の実施形態は、サーバ120またはクライアント130が、データストレージ140内に記憶されている情報を管理すること、たとえば、取り出すこと、修正すること、追加すること、または削除するインタフェースを提供する。
ソーシャルネットワーキングシステム122は、ソーシャルネットワーキング環境において表されている自分のユーザおよびオブジェクト、ならびにそれらのユーザおよびオブジェクトの間における関係に関する情報を記憶するために使用される複数の要素(すなわち、データストレージ140)を含む。ソーシャルネットワーキングシステム122は、以降で説明するように、ソーシャルネットワーキングシステムのユーザデバイスに対するいくつかのアクションを可能にするための要素をさらに含む。ソーシャルグラフは、それぞれのユーザがソーシャルネットワーキングシステム122のその他のユーザとの間で有しているつながりを記憶する。特定の実施形態において、ソーシャルグラフは、2次つ
ながりを記憶することもできる。したがって、それらのつながりは、直接的または間接的である。たとえば、ユーザAがユーザBの1次つながりであるが、ユーザCの1次つながりではなく、BがCの1次つながりである場合には、Cは、ソーシャルグラフ上ではAの2次つながりである。アクションストアは、ソーシャルネットワーキングシステム122のユーザによって実行されたアクションを、それらのアクションに関連付けられている時間の表示、およびそれらのアクションに関連している任意のオブジェクトへの参照とともに記憶する。加えて、アクションストアは、指定されたカテゴリのアクションに関する統計値を記憶する。アクションストア内に記録されるアクションは、委託されたアクションであることが可能であり、それらのアクションは、ソーシャルネットワーキングシステム122が、提案するアクションの選択肢をユーザに提供することに応答してユーザによって実行される。
予測モジュールは、1組の対応するアクションをユーザが実行するか否かを予測する1組の予測関数を算出することを担当する。以降で論じるように、それぞれの予測関数は、その予測関数に関連付けられている特定のアクションに対するユーザの関心を表す。認証マネージャは、クライアントデバイス130のユーザを、ソーシャルネットワーキングシステム122の登録されているユーザであるとして認証する。認証マネージャは、ユーザが、ソーシャルネットワーキングシステム122に対応しているアプリケーションを有している任意のクライアントデバイス130からソーシャルネットワーキングシステムにログインする。APIは、認証マネージャと連携して、外部アプリケーションを通じてユーザの正当性を確認する。親和性モジュールは、特定のアクションについての、その他のアクションに関する予測関数の組合せから導出された親和性または関連性の度合いを提供する。さまざまなプロセスは、親和性の度合いを親和性モジュールに要求する。限定ではなく、例として、それらのプロセスは、ソーシャルネットワーキングシステム122の機能、たとえば、ニュースフィードアルゴリズム、広告ターゲティングアルゴリズム、または友達提案アルゴリズムなどを含む。親和性の度合いを要求するその他のプロセスは、1つまたは複数のプラットフォームアプリケーションによって実行されることが可能であり、それらのプラットフォームアプリケーションは、ソーシャルネットワーキングシステム122内で機能するが、ソーシャルネットワーキングシステム122のオペレータ以外のサードパーティによって提供されるアプリケーションである。プラットフォームアプリケーションは、ソーシャルゲーム、メッセージングサービス、または、ソーシャルネットワーキングシステム122によって提供されるソーシャルプラットフォームを使用する任意の適切なアプリケーションを含む。親和性の度合いの特定および使用については、2006年8月11日に出願された「ソーシャルネットワークのメンバのためにパーソナライズされたストーリのフィードを生成する(Generating a Feed of Stories Personalized for Members of a Social Network)」という名称の米国特許出願第11/502,757号(米国特許第7,827,208号として発行された)、2009年12月23日に出願された「関連するソーシャルネットワーキングシステムのコンテンツおよび広告の選択および提示(Selection and Presentation of Related Social Networking System Content and Advertisements)」という名称の米国特許出願第12/645,481号、2011年9月28日に出願された「ソーシャルネットワーキングシステムにおけるソーシャル対話の即時的な推奨(Instantaneous Recommendation of Social Interactions in a Social Networking System)」という名称の米国特許出願第13/247,825号、2010年12月22日に出願された「位置およびソーシャル情報に基づいてユーザに提供される関連する通知に値を付ける(Pricing Relevant Notifications Provided to a User Based on Location and Social information)」という名称の米国特許出願第
12/976,755号、および2010年12月23日に出願された「ソーシャルネットワーキングシステムにおけるコンテキスト的に関連する親和性の予測(Contextually Relevant Affinity Prediction in a Social Networking System)」という名称の米国特許出願第12/978,265号という米国特許出願においてさらに詳細に論じられており、それらの米国特許出願はすべて、本願明細書に援用される。
いくつかの実施形態において、ユーザに関する親和性の度合いを要求するプロセスは、外部サーバ120上で動作する1つまたは複数の外部アプリケーションを含む。それらの外部アプリケーションは、APIを通じてソーシャルネットワーキングシステム122と対話する。それらの外部アプリケーションは、ユーザ同士がソーシャルネットワーキングシステムを通じて互いにメッセージを送信すること、またはソーシャルネットワーキングシステム122を通じて回送される広告を示すことなど、APIによってサポートされるさまざまなオペレーションを実行する。ソーシャルネットワーキングシステム122の認証マネージャは、クライアントデバイス130のユーザを、ソーシャルネットワーキングシステム122の登録されているユーザであるとして認証する。認証マネージャは、ユーザが、ソーシャルネットワーキングシステム122に対応しているアプリケーションを有している任意のクライアントデバイス130からソーシャルネットワーキングシステム122にログインする。
ソーシャルネットワーキングシステム122は、その他のユーザと対話することによってなど、より積極的に参加するようユーザに促す。ソーシャルネットワーキングシステム122が特定のユーザの関心を知りたいと望む可能性がある多くのコンテキストがある。一般に、ソーシャルネットワーキングシステム122は、ソーシャルネットワーキングシステム122内でユーザにアクションを起こさせる可能性が高いオプションをユーザに提示できるように、ユーザにとって何が最も関心を引くかに関して判断できることを望む。たとえば、ソーシャルネットワーキングシステム122は、どのようなコンテンツもしくはストーリをニュースフィード内に入れるかを決めるとき、ユーザにとって何が関心を引くかを、供給する広告を選択する際には、どのような広告をユーザが「クリックスルーする」可能性が高いかを、またはユーザにアプリケーションを提案する際には、どのアプリケーションをユーザが使用する可能性が高いかを知りたいと望む場合がある。ソーシャルネットワーキングシステム122は、ユーザが、自分自身をソーシャルネットワーキングシステム122のその他のユーザと関連付けて、それらのその他のユーザとのつながりを確立する。2つのユーザがつながった場合には、それらの2つのユーザは、ソーシャルネットワーキングシステム122のコンテキスト内では、「つながり」、「友達」、「連絡先」、または「仲間」であると言われる。一般に、ソーシャルネットワーキングシステム122に接続されることは、接続されているユーザに、接続されていないユーザにとって利用可能であるよりも多くの互いに関する情報へのアクセスを許可する。同様に、ソーシャルネットワーキングシステム122内で接続されるようになることは、(ソーシャルネットワーキングシステムの内部および外部の)Eメール、インスタントメッセージ、テキストメッセージ、電話、またはその他の任意の通信インタフェースによってなど、別のユーザと通信するためのより多くのアクセスをユーザに許可する。最後に、接続されることは、別のユーザのアップロードされたコンテンツアイテムに対して、閲覧、コメント、ダウンロード、または推奨を行うためのアクセスをユーザに許可する。コンテンツアイテムの例としては、メッセージ、キューに入れられたメッセージ(たとえば、Eメール)、テキストおよびSMS(ショートメッセージサービス)メッセージ、コメントメッセージ、その他の任意の適切なメッセージング技術を使用して送信されるメッセージ、HTTPリンク、HTMLファイル、イメージ、ビデオ、オーディオクリップ、ドキュメント、ドキュメントエディット、カレンダエントリまたはイベント、およびその他のコンピュータ関連ファイルが含まれるが、それらには限定されない。
特定の実施形態において、それぞれのクライアント130は、ハードウェア、ソフトウェア、または組込論理要素、または複数のそのような要素の組合せを含む電子デバイスであること、およびクライアント130によって実装またはサポートされる適切な機能を実行できる。限定ではなく、例として、クライアント130は、デスクトップコンピュータ、ノートもしくはラップトップ、ネットブック、タブレット、eブックリーダ、グローバルポジショニングシステム(GPS)デバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、モバイル電話、または別の類似のプロセッサベースの電子デバイスなどのコンピュータシステムを備える。本開示は、任意の適切なクライアント130を想定している。クライアント130は、クライアント130のネットワークユーザがネットワーク110にアクセスする。クライアント130は、自分のユーザがその他のクライアント130のその他のユーザと通信する。特定の実施形態において、クライアントデバイス130は、図2Aおよび図2Bにおいて説明されているようなモバイルコンピューティングデバイス200を備える。
クライアント130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOXなどのウェブブラウザ132を有することができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBARなどのその他の拡張を有する。クライアント130のユーザは、ウェブブラウザ132をサーバ120へ導くユニフォームリソースロケータ(URL)またはその他のアドレスを入力することができ、ウェブブラウザ132は、HTTP要求を生成して、そのHTTP要求をサーバ120に通信する。サーバ120は、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のHTMLファイルをクライアント130に通信する。クライアント130は、ユーザに提示するためにサーバ120からのHTMLファイルに基づいてウェブページをレンダリングする。本開示は、任意の適切なウェブページファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパーテキストマークアップ言語(XHTML)ファイル、または拡張マークアップ言語(XML)ファイルからレンダリングする。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPTおよびXML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書において、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用する)1つまたは複数の対応するウェブページファイルを含み、その逆もまた同様である。
図2Aは、例示的なモバイルコンピューティングデバイス200を示している。特定の実施形態において、モバイルコンピューティングデバイス200は、プロセッサ210と、メモリ220と、通信要素230(たとえば、無線通信用のアンテナおよび通信インタフェース)と、1つまたは複数の入力および/または出力(I/O)要素および/またはインタフェース240と、1つまたは複数のセンサ250とを備える。特定の実施形態において、1つまたは複数のI/O要素および/またはインタフェース240は、1つまたは複数のセンサ250を組み込む。特定の実施形態において、モバイルコンピューティングデバイス200は、図6および関連付けられている説明において説明されているように、コンピュータシステムおよびまたはその要素を備える。
特定の実施形態において、モバイルコンピューティングデバイス200は、限定ではなく、例として、ユーザが(たとえば、1つまたは複数の指を使用して)モバイルコンピューティングデバイス200の表面に触れていることを検知するための(たとえば、デバイスのディスプレイ、デバイスの裏面、および/またはデバイスの1つもしくは複数の水平
な縁に配置されている)タッチセンサ、モバイルコンピューティングデバイス200が移動しているか否か、およびその移動の速度を検知するための加速度計、モバイルコンピューティングデバイス200の付近での温度変化を測定するための温度計、別のオブジェクト(たとえば、手、机、またはその他のオブジェクト)に対するモバイルコンピューティングデバイス200の近接度を検知するための近接センサ、モバイルコンピューティングデバイス200の周囲の周辺光を測定するための光センサ、パーソナルコンピューティングデバイス200の付近のオブジェクト(たとえば、光景、人間、バーコード、QRコード(登録商標)など)のデジタル静止画像および/またはビデオを取り込むための撮像センサ(たとえば、カメラ)、モバイル電子デバイスの位置を(たとえば、緯度および経度の点から)決定するための位置センサ(たとえばGPS)、すぐ近くの通信ネットワークを検知するためのセンサ(たとえば、近距離無線通信(NFC)、ブルートゥース、RFID、赤外線)、化学センサ、モバイルコンピューティングデバイス200のユーザのバイオメトリックベースの(たとえば、指紋、手のひらの静脈パターン、手の形状、虹彩/網膜、DNA、顔、音声、嗅覚の)認証のためのバイオメトリックセンサ等など、さまざまなタイプのセンサ250を含む。本開示は、任意の適用可能なタイプのセンサを含むモバイル電子デバイスを想定している。
特定の実施形態において、センサハブ260を任意選択でモバイルコンピューティングデバイス200内に含める。センサ250はセンサハブ260に接続されてもよく、センサハブ260は、センサ250を制御し、センサ250のための電力を管理し、センサ入力を処理し、センサデータを集約し、特定のセンサ機能を実行する低電力消費プロセッサである。加えて、特定の実施形態において、いくつかのタイプのセンサ250は制御部270に接続される。この入れ物において、センサハブ260は制御部270に接続されてもよく、そして制御部270は、センサ250に接続される。あるいは、特定の実施形態において、センサ250を管理するためにセンサハブ260に替えてセンサモニタが存在する。
特定の実施形態において、前面に加えて、パーソナルコンピューティングデバイス200は、バイオメトリック認証を実行するために1つまたは複数のセンサを有する。そのようなセンサは、モバイルコンピューティングデバイス200の任意の表面上に配置する。例示的な実施形態において、ユーザの手がモバイルコンピューティングデバイス200を掴むためにモバイルコンピューティングデバイス200に触れた際に、タッチセンサが、ユーザの指紋または手のひらの静脈パターンを取り込む。例示的な実施形態において、ユーザがモバイルコンピューティングデバイス200のディスプレイを見ている間に、カメラが、ユーザの顔のイメージを取り込んで、顔認識を実行する。例示的な実施形態において、ユーザがモバイルコンピューティングデバイス200のディスプレイを見ている間に、赤外線スキャナが、ユーザの虹彩および/または網膜をスキャンする。例示的な実施形態において、ユーザがモバイルコンピューティングデバイス200と接触している間に、またはモバイルコンピューティングデバイス200のすぐ近くにいる間に、化学センサおよび/または嗅覚センサが、ユーザに関する関連データを取り込む。特定の実施形態において、モバイルコンピューティングデバイス200を利用しているユーザの識別に関する状態に変化があることを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
特定の実施形態において、前面に加えて、モバイルコンピューティングデバイス200は、左面および右面上にタッチセンサを有する。任意選択で、モバイルコンピューティングデバイス200は、裏面、上面、または底面上にタッチセンサを有することもできる。したがって、ユーザの手がモバイルコンピューティングデバイス200を掴むためにモバイルコンピューティングデバイス200に触れた際に、タッチセンサは、ユーザの指また
は手のひらがモバイルコンピューティングデバイス200に触れていることを検知する。特定の実施形態において、モバイルコンピューティングデバイス200に触れているユーザに関する状態に変化があることを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
特定の実施形態において、モバイルコンピューティングデバイス200は、左面および右面上に、タッチセンサに加えて、またはタッチセンサに替えて加速度計を有する。加速度計によって提供されるセンサデータを使用して、新たなユーザがモバイルコンピューティングデバイス200を静止位置から、たとえば、テーブルもしくは机、飾り棚の上から、または誰かの手から、または誰かのバッグの中から手に取ったか否かを推定することもできる。ユーザが、モバイルコンピューティングデバイス200を手に取って、自分の顔の前に持ってくるときには、パーソナルコンピューティングデバイス200の移動速度が比較的急に増大する場合がある。モバイルコンピューティングデバイス200の速度におけるこの変化は、加速度計によって供給されるセンサデータに基づいて検知される。特定の実施形態において、モバイルデバイス200の速度が有意に増大したことを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
特定の実施形態において、モバイルコンピューティングデバイス200は、左面および右面上に、タッチセンサに加えて、またはタッチセンサに替えてジャイロメータを有する。ジャイロメータ(ジャイロスコープとしても知られている)とは、1つまたは複数の軸に沿って向きを測定するためのデバイスである。特定の実施形態において、ジャイロメータを使用して、モバイルコンピューティングデバイス200の向きを測定する。モバイルコンピューティングデバイス200は、棚の上に、またはユーザのバッグの中に収められているときには、ほとんど1つの向きのままである可能性がある。しかしながら、ユーザが、モバイルコンピューティングデバイス200を掴み、持ち上げておよび/または近くに寄せて、自分の顔の前に持ってくるときには、モバイルコンピューティングデバイス200の向きが比較的急に変化する場合がある。モバイルコンピューティングデバイス200の向きは、ジャイロメータによって検知および測定される。モバイルコンピューティングデバイス200の向きが有意に変化した場合には、特定の実施形態において、モバイルコンピューティングデバイス200の向きが有意に変化したことを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
特定の実施形態において、モバイルコンピューティングデバイス200は、光センサを有する。モバイルコンピューティングデバイス200がユーザのポケットまたは入れ物の中に収められているときには、モバイルコンピューティングデバイス200の周囲は、比較的暗い。その一方で、ユーザが自分のポケットからモバイルコンピューティングデバイス200を出すときには、特に日中は、または十分な照明のある領域では、モバイルコンピューティングデバイス200の周囲は、比較的明るい可能性がある。光センサによって供給されるセンサデータを分析して、モバイルコンピューティングデバイス200の周囲の周辺光レベルにおける有意な変化が生じたときを検知する。特定の実施形態において、モバイルコンピューティングデバイス200の周囲の周辺光レベルが有意に増大したことを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
特定の実施形態において、モバイルコンピューティングデバイス200は、近接センサを有する。近接センサによって供給されるセンサデータを分析して、モバイルコンピュー
ティングデバイス200がユーザの手などの特定のオブジェクトのすぐ近くにあるときを検知する。たとえば、モバイルコンピューティングデバイス200は、自分の裏面に赤外線発光ダイオード(LED)290(すなわち、近接センサ)を配置される。ユーザがそのようなモバイルデバイスを自分の手で握るときには、ユーザの手のひらは、赤外線LED290を覆う。結果として、赤外線LED290は、ユーザの手がモバイルコンピューティングデバイス200のすぐ近くにあるときを検知する。特定の実施形態において、モバイルコンピューティングデバイス200がユーザの手のすぐ近くにあることを、それ自体によって、またはその他のタイプのセンサ表示と組み合わせて検知すると、モバイルコンピューティングデバイス200は、それ自体が共用されていることを決定する。
モバイルコンピューティングデバイス200は、多様なタイプの任意の数のセンサを有することができ、これらのセンサは、さまざまなタイプのセンサデータを供給する。個々のタイプのセンサデータのさまざまな組合せをともに使用して、モバイルコンピューティングデバイス200に関するユーザの現在の意図(たとえば、そのユーザが本当に自分のポケットからモバイルコンピューティングデバイス200を取り出して使用するつもりか否か)を検知および推定する。複数のタイプのセンサデータを組み合わせて使用することは、単一のタイプのセンサデータのみを使用することに比べて、所与の時点におけるモバイルコンピューティングデバイス200に関するユーザの意図についてのさらに正確な、すなわちより適切な推定を生じさせる場合がある。それでもなお、単一のタイプのセンサデータ(たとえば、タッチセンサデータ)を使用してユーザの意図を推定することは可能である。
図2Bは、例示的なモバイルコンピューティングデバイス200の外装を示している。モバイルコンピューティングデバイス200は、前面、裏面、上面、底面、左面、および右面という概して6つの面を有する。タッチセンサは、モバイルコンピューティングデバイス200の6つの面のうちの任意の面上の任意の場所に配置される。図2Bの例において、タッチセンサ280Aを組み込んでいるタッチスクリーンが、モバイルコンピューティングデバイス200の前面に配置されている。このタッチスクリーンは、モバイルコンピューティングデバイス200のための入力/出力(I/O)要素として機能する。加えて、タッチセンサ280Bおよび280Cが、それぞれモバイルコンピューティングデバイス200の左面および右面上に配置されている。タッチセンサ280Bおよび280Cは、ユーザの手がモバイルコンピューティングデバイス200のそれらの面に触れていることを検知する。特定の実施形態において、タッチセンサ280A、280B、280Cは、抵抗タッチセンサ、静電容量タッチセンサ、および/または誘導タッチセンサを使用して実装される。タッチセンサ280A、280B、280Cの電極は、材料の薄い固体片または薄いワイヤメッシュ上に配置される。静電容量タッチセンサの場合、送信および受信という2つのタイプの電極が存在する。これらの電極を制御部(たとえば、図2Aにおいて示されている制御部270)に接続することができ、その制御部は、タッチ入力の位置を検知するために、電気パルスを用いて送信電極を駆動し、タッチ入力によって引き起こされる受信電極からの静電容量における変化を測定するように設計されているマイクロチップである。
モバイルコンピューティングデバイス200は、一例にすぎない。実際には、デバイスは、任意の数の面を有することができ、本開示は、任意の数の面を有するデバイスを想定している。タッチセンサは、デバイスの任意の面上に配置する。
特定の実施形態において、モバイルコンピューティングデバイス200は、その裏面に近接センサ290(たとえば、赤外線LED)が配置される。近接センサ290は、その近接度、すなわちモバイルコンピューティングデバイス200の別のオブジェクトに対する近接度を決定するためのセンサデータを供給できる。
図3は、例示的なモバイルコンピューティングデバイス200上の情報およびアプリケーションに関する例示的なソフトウェアアーキテクチャ300を示している。特定の実施形態において、ソフトウェアアーキテクチャ300は、ソフトウェア310およびデータストア320を備える。特定の実施形態において、個人情報をアプリケーションデータキャッシュ320、および/またはプロフィールデータストア320、および/または別のデータストア320内に記憶する。特定の実施形態において、1つまたは複数のソフトウェアアプリケーションをモバイルコンピューティングデバイス200上で実行する。特定の実施形態において、それらのソフトウェアアプリケーションは、サーバ上でホストされるウェブベースのアプリケーションである。たとえば、ウェブベースのアプリケーションは、URI(ユニフォームリソース識別子)またはURLに関連付けられる。パーソナルコンピューティングデバイス200から、ユーザは、ウェブベースのアプリケーションに、そのアプリケーションの関連付けられているURIまたはURLを通じて(たとえば、ウェブブラウザを使用することによって)アクセスする。あるいは、その他の実施形態において、それらのソフトウェアアプリケーションは、モバイルコンピューティングデバイス200上にインストールされて常駐しているネイティブアプリケーションである。したがって、ソフトウェア310は、任意の数のアプリケーションユーザインタフェース330およびアプリケーション機能340を含むこともできる。たとえば、1つのアプリケーション(たとえば、GOOGLE MAP)によって、デバイスユーザは地図を見ること、住所および企業を検索すること、ならびに道案内を受けることができ、第2のアプリケーションによって、デバイスユーザはEメールを読むこと、送信すること、および受信することができ、第3のアプリケーション(たとえば、ウェブブラウザ)によって、モバイルコンピューティングデバイス200のユーザはインターネットをブラウズおよび検索することができ、第4のアプリケーションによって、デバイスユーザはモバイルコンピューティングデバイス200を使用して写真を撮ることまたはビデオを録画することができ、第5のアプリケーションによって、デバイスユーザはボイスオーバーインターネットプロトコル(VoIP)および/またはセルラネットワークコールを受信および開始するなどである。それぞれのアプリケーションは、1つまたは複数の特定の機能を有し、これらの機能を実装するソフトウェア(たとえば、1つまたは複数のソフトウェアモジュール)が、アプリケーション機能340内に含まれる。それぞれのアプリケーションは、デバイスユーザがそのアプリケーションと対話するユーザインタフェースを有することもでき、そのアプリケーションユーザインタフェースを実装するソフトウェアが、アプリケーションユーザインタフェース330内に含まれる。特定の実施形態において、アプリケーションの機能は、JAVASCRIPT、JAVA、C、またはその他の適切なプログラミング言語を使用して実装される。特定の実施形態において、アプリケーションのユーザインタフェースは、HTML、JAVASCRIPT、JAVA、またはその他の適切なプログラミング言語を使用して実装される。
特定の実施形態において、アプリケーションのユーザインタフェースは、任意の数のスクリーンまたはディスプレイを含む。特定の実施形態において、ユーザインタフェースのそれぞれのスクリーンまたはディスプレイは、ウェブページとして実装される。したがって、デバイスユーザは、一連のスクリーンまたはディスプレイ(すなわち、一連のウェブページ)を通じてアプリケーションと対話する。特定の実施形態において、オペレーティングシステム350は、ANDROID(登録商標)モバイル技術プラットフォームである。ANDROIDの場合、ウェブをブラウズするためのさまざまなツールを提供する「android.webkit」と呼ばれるJAVAパッケージがある。「android.webkit」パッケージの中には、ウェブページを表示するためのビューを実装する「android.webkit.WebView」と呼ばれるJAVAクラスがある。このクラスは、WebKitレンダリングエンジンを使用してウェブページを表示し、履歴の中を前後にナビゲートすること、拡大すること、縮小すること、テキスト検索を実
行することなどを行うためのメソッドを含む。特定の実施形態において、アプリケーションユーザインタフェース330は、ANDROIDのWebViewアプリケーションプログラミングインタフェース(API)を利用して、「android.webkit.WebView」クラスによって実装されるビュー内にユーザインタフェースのそれぞれのウェブページを表示する。したがって、特定の実施形態において、ソフトウェア310は、任意の数のウェブビュー360を含むことができ、それぞれのウェブビュー360は、アプリケーションのユーザインタフェースを実装する1つまたは複数のウェブページを表示する。
アプリケーションの実行中に、デバイスユーザは、アプリケーションと、そのユーザインタフェースを通じて対話する。たとえば、ユーザは、さまざまなディスプレイ(たとえば、ウェブページ)においてアプリケーションに入力を提供する。アプリケーションの出力も、さまざまなディスプレイ(たとえば、ウェブページ)においてユーザに提示される。特定の実施形態において、ユーザが、特定のディスプレイ(たとえば、特定のウェブページ)を通じてアプリケーションに入力を提供した場合には、イベント(たとえば、入力イベント)が、たとえばウェブビュー360またはアプリケーションユーザインタフェース330によって生成される。それぞれの入力イベントが、アプリケーション機能340に転送されることが可能であり、またはアプリケーション機能340が、そのようにして生成された入力イベントを待ち受ける。アプリケーション機能340が入力イベントを受け取った場合には、そのイベントを処理するためにアプリケーション機能340内の適切なソフトウェアモジュールを呼び出す。加えて、オペレーティングシステム350ならびに/または(たとえば、図1および図2A〜図2Bにおいて説明されているような)ハードウェアによって提供される特定の機能を呼び出すこともできる。たとえば、ユーザがモバイルコンピューティングデバイス200を用いて写真を撮るためにボタンを押した結果としてイベントが生成された場合には、対応するイメージ処理モジュールを呼び出して、未処理のイメージデータをイメージファイル(たとえば、JPGまたはGIF)へと変換し、そのイメージファイルをモバイルコンピューティングデバイス200のストレージ320内に記憶する。別の例として、ユーザがインスタントメッセージを作成するためにアイコンを選択した結果としてイベントが生成された場合には、対応するショートメッセージサービス(SMS)モジュールを呼び出して、ユーザがメッセージを作成および送信する。
特定の実施形態において、アプリケーションの出力がユーザに提示される用意ができた場合には、イベント(たとえば、出力イベント)が、たとえばアプリケーション機能340内のソフトウェアモジュールまたはオペレーティングシステム350によって生成される。それぞれの出力イベントが、アプリケーションユーザインタフェース330に転送されることが可能であり、またはアプリケーションユーザインタフェース330が、そのようにして生成された出力イベントを待ち受ける。アプリケーションユーザインタフェース330は、出力イベントを受け取った場合には、その出力を表すまたは含むウェブページを表示するためにウェブビュー360を構築する。たとえば、ユーザがインスタントメッセージを作成するためにアイコンを選択することに応答して、ユーザがそのメッセージを入力するテキストフィールドを含む出力が構築される。この出力は、ウェブページとしてユーザに提示されて、ウェブビュー360においてユーザに表示されることが可能であり、それによってユーザは、送信するメッセージをテキストフィールド内にタイプ入力する。
アプリケーションのユーザインタフェースは、適切なプログラミング言語(たとえば、HTML、JAVASCRIPT、またはJAVA)を使用して実装される。より具体的には、特定の実施形態において、ユーザインタフェースのスクリーンまたはディスプレイを実装するそれぞれのウェブページは、適切なプログラミング言語を使用して実装される
。特定の実施形態において、(たとえば、出力イベントに応答してアプリケーションユーザインタフェース330によって)ウェブページを表示するためにウェブビュー360が構築された場合には、そのウェブページを実装するコードがウェブビュー360内にロードされる。
図4は、例示的なモバイルコンピューティングデバイス200の例示的なホームスクリーン410の例示的なワイヤフレームを示している。図4の例において、例示的なホームスクリーン410は、1つまたは複数のアイコン460を表示しており、各アイコン460は、モバイルコンピューティングデバイス200上で実行する特定のアプリケーションに対応している。上述したように、アイコン460上でのタッチ入力は、モバイルコンピューティングデバイス200の機能を実行すること、またはネットワーク接続を通じてその他のユーザと対話することもしくはコンテンツにアクセスすることが可能なアプリケーションを起動する。限定ではなく、例として、アプリケーションは、ユーザが地図を見ること(「地図」)、情報を検索すること(「検索」)、Eメールを読むこと、送信すること、もしくは受信すること(「Eメール」)、インターネットをブラウズすること(「ブラウザ」)、ゲームをプレイすること(「ゲーム」)、VoIP接続もしくはその他のプロトコルを通じて別のユーザと通信すること(「通信」)、または写真を撮ることもしくはビデオを録画すること(「カメラ」)を可能にする。たとえば、「連絡先」、「通信」、または「カレンダ」などのアプリケーションは、モバイルコンピューティングデバイス200のユーザのデータ、またはその他のユーザに関連付けられているデータを記憶する。特定の実施形態において、アプリケーションのうちの1つまたは複数は、別のモバイルコンピューティングデバイスのユーザとの対話を提供する。
特定の実施形態において、アイコン460のサブセットに関連付けられているアプリケーションは、その他のユーザに関連付けられているデータを記憶する。限定ではなく、例として、「連絡先」、「Eメール」、「カレンダ」、「通信」、または「ゲーム」というアプリケーションは、たとえば、オンラインゲーム上でのユーザ識別情報、Eメールアドレス、電話番号、または物理的な住所など、その他のユーザに関連付けられているデータを記憶する。特定の実施形態において、1つまたは複数のアプリケーションは、モバイルコンピューティングデバイス200のユーザのソーシャルグラフの一部であるユーザに関連付けられているデータを記憶する。特定の実施形態において、1つまたは複数のアプリケーションは、モバイルコンピューティングデバイス200のユーザのソーシャルグラフの一部ではないユーザに関連付けられているデータを記憶する。
ソーシャルネットワーキングシステムは、1つまたは複数の予測関数に入力を提供する履歴データを伴うそれぞれのユーザに関するプロフィールを維持する。予測関数は、ユーザが特定のアクションを実行するか否かを、そのアクションに対するそのユーザの関心に基づいて予測する。モバイルコンピューティングデバイス200上で特定のユーザによって実行されたアクションは、データベースまたはその他のデータリポジトリ、たとえば、ソーシャルネットワーキングシステムのアクションストアなどおいて維持される。特定の実施形態において、モバイルコンピューティングデバイス200上でのユーザのアクションの履歴の少なくとも一部は、ソーシャルネットワーキングシステムに関連して行われたのではないアクションを含む。モバイルコンピューティングデバイス200を使用して行われたアクションは、モバイルコンピューティングデバイス200内に記憶されているデータ、ならびにソーシャルネットワーキングシステムに送信されてソーシャルネットワーキングシステム上に記憶されているアクションに関するデータおよび情報に相関付けられる。限定ではなく、例として、モバイルコンピューティングデバイス200を使用して特定のユーザに対して発信した電話呼の回数は、モバイルコンピューティングデバイス200上に記憶されている電話番号に関連付けられているその他の連絡用情報(たとえば、物理的な住所)に相関付けられる。
モバイルコンピューティングデバイス200上でのユーザのアクションの履歴は、同じアクションに対するユーザのその後の関心のシグナルとして使用する。いくつかの実施形態において、アクションに関連付けられているモバイルコンピューティングデバイス200上でのユーザのアクションの履歴を用いて訓練される機械学習アルゴリズムを使用して予測関数が生成される。上述したように、予測モジュールは、1組のアクションのそれぞれに関して予測関数を提供し、予測関数は、ユーザのアクションの履歴を入力として受け取り、次いで、対応するアクションにユーザが携わるであろう蓋然性の度合いを出力する。特定の実施形態において、モバイルコンピューティングデバイス200上でのアクションは、たとえば、モバイルコンピューティングデバイス200の電話機能を使用するアクション、ネットワーク接続を通じてコンテンツにアクセスすることに関するアクション、モバイルコンピューティングデバイス200上に記憶されている連絡用情報に関するアクション、またはモバイルコンピューティングデバイス200上のアプリケーションに関するアクションを含む。限定ではなく、例として、電話機能を使用するアクションは、電話呼を発信すること、電話呼を着信すること、電話呼を拒否すること、電話呼をボイスメールに直接送ること、ボイスメールを聞くこと、ボイスメールを聞かずに削除すること、特定の電話番号からの電話呼をブロックすること、または特定のタイプの電話番号への電話呼を制限することを含む。別の例として、ネットワーク接続を通じてコンテンツにアクセスすることに関するアクションは、コンテンツを送ること、コンテンツを受信すること、コンテンツを拒否すること、受信されたコンテンツがスパムであると示すこと、コンテンツアイテムに関してコメントすること、または特定の送信者からのコンテンツをブロックすることを含む。別の例として、モバイルコンピューティングデバイス200上に記憶されている連絡用情報に関するアクションは、着信した電話呼に関する電話番号を連絡先のリストに加えること、連絡先のリストからエントリを削除すること、または連絡先のリストの中で検索を行うことを含む。別の例として、モバイルコンピューティングデバイス200上のアプリケーションに関するアクションは、モバイルコンピューティングデバイス200上にアプリケーションをインストールすること、アプリケーションを削除すること、アプリケーションを使用すること、アプリケーションを通じてアクションを実行するようつながりを招待すること、またはゲームをプレイすることを含む。モバイルコンピューティングデバイス200の使用というコンテキスト内での上述のアクションおよびその他の適切な対話は、ソーシャルネットワーキングシステムによって記録されること、およびモバイルコンピューティングデバイス200のユーザに対する特定のコンテンツの関連性を予測するデバイス関連の親和性の度合いを生成するために使用される。モバイルコンピューティングデバイス200を使用して行われる特定のアクションは、予測関数への入力の一部として使用されるさらなる情報を有する。限定ではなく、例として、モバイルコンピューティングデバイス200上でのアクションに関連付けられているプロパティは、そのアクションに関連付けられている時間の長さ、そのアクションが実行される頻度、またはそのアクションに関連付けられているその他の統計値を含む。
いくつかの実施形態において、予測関数のうちの1つまたは複数は、モバイルコンピューティングデバイス200上でのユーザのアクションの履歴からのシグナルの強度が時間とともに減衰する減衰係数を使用する。さらに、さまざまな予測関数は、モバイルコンピューティングデバイス200上でのユーザのアクションの履歴をさまざまな比率で減衰させる。したがって、それらの予測関数は、モバイルコンピューティングデバイス200上でのユーザのアクションの履歴の影響を、それらのアクションが時間の経過に伴ってどれぐらい関連性を失っていく可能性があるかということに関する理解に基づいて減衰させる。この目的のために、さまざまな減衰メカニズムを使用する。限定ではなく、例として、予測関数は、ユーザのアクションの履歴の統計値を入力として使用する分子のアフィン関数および分母のアフィン関数を用いて2つのアフィン関数の比率として実装される。分母のアフィン関数は、分子のアフィン関数の正規化を表す。たとえば、ユーザによって特定
の人に対して発信した電話呼の回数は、数ある統計値の中でも、そのユーザがモバイルコンピューティングデバイス200の電話機能を使用した回数によって正規化される。
予測関数は、ソーシャルネットワーキングシステムの内部または外部に存在する可能性があるモバイルコンピューティングデバイス200上での任意の数のアクションまたはアクティビティを予測する。たとえば、予測関数によって予測されるアクションまたはアクティビティは、メッセージ、コンテンツの投稿、およびコンテンツに関してコメントすることなど、モバイルコンピューティングデバイス200を通じたユーザによるさまざまなタイプの通信、他のつながりのプロフィールを見ること、および他のつながりによって投稿された写真およびコンテンツを見ることなど、ユーザによるさまざまなタイプの観察アクション、ならびに、同じ写真においてタグ付けされていること、同じ位置においてチェックインされていること、および同じイベントに出席していることなど、複数のユーザに関するさまざまなタイプの偶然に一致する情報を含む。予測関数は、モバイルコンピューティングデバイス200上でのユーザのアクションの履歴および過去のユーザの応答、またはデータをさまざまな選択肢にさらして応答を測定することによってユーザから委託されたデータ上で訓練される機械学習アルゴリズムを使用して決定される。
特定の実施形態において、ソーシャルネットワーキングシステム上のユーザのソーシャルグラフは、モバイルコンピューティングデバイス200上に記憶されているデータまたはモバイルコンピューティングデバイス200上で行われたアクションから得られる情報に応答して修正される。限定ではなく、例として、モバイルコンピューティングデバイス200上に記憶されている連絡用情報は、ユーザのソーシャルグラフに関連付けられていない別のユーザの連絡用情報を含む。ソーシャルネットワーキングシステムは、モバイルコンピューティングデバイス200からメンバ以外のユーザの連絡用情報を受信することに応答して、メンバ以外のユーザに関する新たなノードを追加することによって、ユーザのソーシャルグラフを修正する。別の例として、ソーシャルネットワーキングシステムは、ソーシャルネットワーキングシステムのユーザと、メンバ以外のユーザとの間においてソーシャルグラフにおけるエッジを作成することによって、ユーザのソーシャルグラフを修正する。特定の実施形態において、モバイルコンピューティングデバイス200上でのアクションに関連付けられているさらなる情報をソーシャルグラフのノードまたはエッジに追加する。限定ではなく、例として、ユーザと別のユーザとの間における電話呼の頻度を、ユーザとその別のユーザとをつないでいるエッジに追加する。
ソーシャルネットワーキングシステム内で動作しているプロセスは、特定のユーザに関する親和性の度合いを、親和性機能を実装するソーシャルネットワーキングシステムの親和性モジュールに要求する。さまざまなプロセスが、親和性の度合いを親和性モジュールに要求する。たとえば、それらのプロセスは、たとえばニュースフィードアルゴリズム、広告ターゲティングアルゴリズム、または友達提案アルゴリズムなど、ソーシャルネットワーキング機能を実装するプロセスを含む。親和性の度合いを要求するその他のプロセスは、1つまたは複数のプラットフォームアプリケーションによって実行されることが可能であり、それらのプラットフォームアプリケーションは、ソーシャルネットワーキングシステム内で機能するが、ソーシャルネットワーキングシステムのオペレータ以外のサードパーティによって提供されるアプリケーションである。プラットフォームアプリケーションは、ソーシャルゲーム、メッセージングサービス、および、ソーシャルネットワーキングシステムによって提供されるソーシャルプラットフォームを使用するその他の任意のアプリケーションを含む。
上述したように、親和性機能は、特定のアクションについての親和性または関連性の度合いを、その他のアクションに関する予測関数の組合せに基づいて決定する。特定の実施形態において、親和性機能は、重み付けされた1組の予測関数を組合せすることによって
、要求された親和性の度合いを算出し、それぞれの予測関数は、ユーザが特定のアクションを実行するか否かを予測する。限定ではなく、例として、重み付けされた予測関数同士は、線形に合計される。別の例として、予測関数同士を結合するその他の方法、たとえば、調和平均、二乗平均、および幾何平均などを使用する。親和性の度合いを計算するために使用される予測関数の重み付けは、親和性の度合いを要求するプロセスによって提供される。それぞれのプロセスは、予測関数同士を別々に重み付けして、特定のアクションに関する親和性の度合いを計算することができ、それにより、親和性機能はプロセスによって調整可能である。
加えて、さまざまな目的でソーシャルネットワーキングシステム環境においてさまざまなプロセスによって使用するために、さまざまな重み付けを伴う複数の親和性の度合いを算出する。たとえば、ユーザの「友達」からのソーシャル推奨を伴う広告を提供するプロセスにおいて、広告アルゴリズムが、親和性の度合い機能を使用して、ソーシャル推奨においてユーザの「友達」のうちの誰に言及するか、またはその推奨においてどのようなタイプのアクションに言及するかを決定する。特定の実施形態において、親和性の度合いを使用して、ソーシャルネットワーキングシステムとのさらに多くのユーザ対話を促すこと、およびユーザ体験を高める。ソーシャルネットワーキングシステムは、ネットワーク上の未処理のコンテンツをフィルタリングするためのアルゴリズムを採用することによって、モバイルコンピューティングデバイス200上で特定のアプリケーションを実行する閲覧ユーザへの情報の配信をカスタマイズする。地理的位置、雇用主、職業タイプ、年齢、音楽の好み、関心、もしくはその他の属性など、ユーザのプロフィールに関連した親和性の度合い、もしくは上述のようなデバイス関連の親和性の度合いに基づいて、または、生成されたコンテンツに関連している別のユーザ(たとえば、そのコンテンツまたは情報をもたらしたアクションを実行したユーザ)に対するユーザの関心に基づいて、コンテンツをフィルタリングする。モバイルコンピューティングデバイス200上で実行される特定のアプリケーション、またはソーシャルネットワーキングシステムにとってネイティブではないアプリケーションを使用する際に特定のユーザに提示される広告にソーシャルコンテキストを提供するために、ソーシャル推奨情報を使用する。そして親和性の度合いは、別のユーザによって投稿されたコンテンツを見る際にユーザが有する可能性がある関心のレベルを示す予測関数、ならびに、ソーシャル推奨において言及される可能性があるさまざまなアクションに対してユーザが有する関心のレベルを示す1つまたは複数の予測関数に基づく。
限定ではなく、例として、広告アルゴリズムは、結果として生じる親和性の度合いが、どのソーシャル推奨がユーザにとってさらに関心を引くかを正確に決定するように、これらの予測関数に相対的に大きな重み付けを提供する。広告アルゴリズムは、結果として生じる親和性の度合いを使用してソーシャル推奨を選択し、それによって広告のクリックスルーの蓋然性を高める。別の例として、ユーザのつながりを招待すること、またはユーザの代わりにメッセージを送信することを試みるソーシャルゲームアプリケーションのためのプロセスにおいて、ソーシャルアルゴリズムが、親和性の度合い機能を使用して、ユーザのつながりのうちの誰にゲームへの招待を示すか、またはどのようなタイプのメッセージをユーザの代わりに送信するかを決定する。この目的での親和性の度合いは、ユーザのつながりによって投稿されたコンテンツを見ることに対してユーザがどれぐらい関心を有するか、および/またはユーザが自分のつながり全体とどれぐらい頻繁にゲームをプレイするかを示す予測関数、ならびに、さまざまなタイプのメッセージを投稿することに対してユーザがどれぐらい関心を有するかを示す1つまたは複数の予測関数に基づく。したがって、ソーシャルアルゴリズムは、結果として生じる親和性の度合いが、ユーザが招待していることをどのつながりに示すか、およびどの招待またはメッセージが閲覧ユーザにとってさらに関心を引くかを正確に決定するように、これらの予測関数に相対的に高い重み付けを行い、次いで、結果として生じる親和性の度合いを使用して、招待またはメッセー
ジを選択する。重み付けされた予測関数によって可能にされる、親和性機能が高度に調整可能な性質を有するので、親和性機能は、複数の異なる目的で使用される。
図5は、前にさらに詳細に上述したような、親和性の大きさを算出するための例示的な方法500を示している。方法500は、工程510において開始され、工程510では、ソーシャルネットワーキングシステムは、ソーシャルネットワーキングシステムのユーザに関連付けられている特定のアクションに関する親和性の度合いを求める要求を受信する。特定の実施形態において、親和性の度合いは、ユーザに対する特定のアクションの関連性を示す。工程520において、1つまたは複数の予測関数のそれぞれに関する結果が、モバイルコンピューティングデバイスに関してユーザによって以前に実行されたアクションに少なくとも部分的に基づいて決定される。特定の実施形態において、それぞれの予測関数は、ユーザがモバイルコンピューティングデバイスに関して特定のアクションを実行するであろう蓋然性を計算する。工程530において、予測関数のうちの1つまたは複数に関する結果に基づいて、ユーザに関連付けられている親和性の度合いが算出される。特定の実施形態において、親和性の度合いは、予測関数の結果の組合せを使用して算出される。工程540において、算出された親和性の度合いが、アプリケーションまたはその他の機能によって使用するために提供される。前述したように、親和性の度合いは、ソーシャルネットワーキングシステムの内部機能のために使用されることが可能であり、または任意の形態(たとえば、API)で外部システムに提供される。特定の実施形態において、工程550において、任意のアクション、たとえば、どのようなコンテンツをユーザに提供するかを決定すること、ユーザが特定の関心を有する可能性があるか否かを決定すること、任意の特定のアクション(たとえば、グループに参加すること、またはその他の任意のウェブページもしくはプロフィールに対して「いいね」と表明すること)をユーザが行うよう提案すること、ユーザに配信される広告または通知を選択することを行うための基準として、算出された親和性の度合いが使用される。本開示は、図5の方法の特定の工程を、特定の順序で生じるものとして説明し示しているが、本開示は、図5の方法の任意の適切な工程が任意の適切な順序で生じると想定している。さらに、本開示は、図5の方法の特定の工程を実行する特定の要素を説明し示しているが、本開示は、任意の適切な要素の任意の適切な組合せが図5の方法の任意の適切な工程を実行すると想定している。
図6は、例示的なコンピュータシステム600を示している。特定の実施形態において、1つまたは複数のコンピュータシステム600は、本明細書において説明されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態において、1つまたは複数のコンピュータシステム600は、本明細書において説明されているまたは示されている機能を提供する。特定の実施形態において、1つまたは複数のコンピュータシステム600上で動作するソフトウェアは、本明細書において説明されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において説明されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータシステム700の1つまたは複数の部分を含む。
本開示は、任意の適切な数のコンピュータシステム600を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータシステム600を想定している。限定ではなく、例として、コンピュータシステム600は、組込コンピュータシステム、システムオンチップ(SOC)、シングルボードコンピュータシステム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップコンピュータシステム、ラップトップもしくはノートブックコンピュータシステム、対話型キオスク、メインフレーム、コンピュータシステムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、またはこれらのうちの複数の組合せである。適切な場合には、コンピュータシステム600は、1
つもしくは複数のコンピュータシステム600を含み、単一型もしくは分散型であり、複数の位置に亘り、複数のマシンに亘り、複数のデータセンタに亘り、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウドコンポーネントを含む)内に常駐する。適切な場合には、1つまたは複数のコンピュータシステム600は、本明細書において説明されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行する。限定ではなく、例として、1つまたは複数のコンピュータシステム600は、本明細書において説明されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアルタイムで、またはバッチモードで実行する。1つまたは複数のコンピュータシステム600は、適切な場合には、本明細書において説明されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々の位置で実行する。
特定の実施形態において、コンピュータシステム600は、プロセッサ602、メモリ604、ストレージ606、入力/出力(I/O)インタフェース608、通信インタフェース610、およびバス612を含む。本開示は、特定の数の特定の要素を特定の構成で有する特定のコンピュータシステムを説明し示しているが、本開示は、任意の適切な数の任意の適切な要素を任意の適切な構成で有する任意の適切なコンピュータシステムを想定している。
特定の実施形態において、プロセッサ602は、コンピュータプログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ602は、内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ604、またはストレージ606に書き込む。特定の実施形態において、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含む。本開示は、特定のプロセッサを説明し示しているが、本開示は、任意の適切なプロセッサを想定している。
特定の実施形態において、メモリ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へのアクセスを容易にする。本開示は、特定のメモリを説明し示しているが、本開示は、任意の適切なメモリを想定している。
特定の実施形態において、ストレージ606は、データまたは命令のためのマスストレージを含む。ストレージ606は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含む。ストレージ606は、適切な場合には、コンピュータシステム600の内部または外部に存在する。特定の実施形態において、ストレージ606は、不揮発性のソリッドステートメモリである。適切な場合には、ストレージ606は、1つまたは複数のストレージ606を含む。本開示は、特定のストレージを説明し示しているが、本開示は、任意の適切なストレージを想定している。
特定の実施形態において、I/Oインタフェース608は、コンピュータシステム600と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータシステム600は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含む。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータシステム600との間における通信を可能にする。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチルカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含む。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インタフェースを想定している。
特定の実施形態において、通信インタフェース610は、コンピュータシステム600と、1つもしくは複数のその他のコンピュータシステム600または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース610は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワークインタフェース制御部(NIC)もしくはネットワークアダプタ、またはWI−FIネットワークなどの無線ネットワークと通信するための無線NIC(WNIC)もしくは無線アダプタを含む。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース610を想定している。本開示は、特定の通信インタフェースを説明し示しているが、本開示は、任意の適切な通信インタフェースを想定している。
特定の実施形態において、バス612は、コンピュータシステム600の要素同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。本開示は、特定のバスを説明し示しているが、本開示は、任意の適切なバスまたは相互接続を想定している。
本明細書において、コンピュータ可読記憶媒体への言及は、1つまたは複数の非一時的な有形のコンピュータ可読記憶媒体処理構造を含む。限定ではなく、例として、コンピュータ可読記憶媒体は、適切な場合には、半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブルゲートアレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハードディスク、HDD、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)ディスク、フロッピーディスクドライブ(FDD)、磁気
テープ、ホログラフィック記憶媒体、ソリッドステートドライブ(SSD)、RAMドライブ、セキュアデジタル(SD)カード、SDドライブ、または別の適切なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含む。非一時的コンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せである。
本明細書において、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書において、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。さらに、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書において、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本開示は、当業者であれば理解されるであろう、本明細書における例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。同様に、適切な場合には、添付の特許請求の範囲は、当業者であれば理解されるであろう、本明細書における例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。さらに、特定の機能を実行するように適合されている、実行するように配置されている、実行する、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムの要素への添付の特許請求の範囲における言及は、その装置、システム、要素、またはその特定の機能が、有効化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、または要素が、そうするように適合されている、そうするように配置されている、そうする、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、要素を包含する。

Claims (14)

  1. アプリケーションに関連付けられている1以上のコンピューティングデバイスによる方法であって、
    前記アプリケーションに関連付けられている前記1以上のコンピューティングデバイスが、特定のコンテンツについて第1のユーザに関連付けられている第1の親和性の度合いを求める要求をコンピュータサーバマシンに送信する工程であって、前記第1の親和性の度合いは、前記特定のコンテンツについて前記第1のユーザが有する関心のレベルを示し、前記特定のコンテンツは、第2のユーザに関連付けられており、前記第1の親和性の度合いは、以前に実行された前記第1のユーザのアクションの種類に応じて決定され、以前に実行された前記アクションは、電話機能を伴うアクションを含む、工程と、
    前記アプリケーションに関連付けられている前記1以上のコンピューティングデバイスが、前記第1の親和性の度合いを算出するために使用される第1の重み情報をコンピュータサーバマシンに送信する工程であって、前記第1の重み情報は、
    前記第2のユーザによって投稿されたコンテンツを閲覧するに際し前記第1のユーザが有する関心のレベルを算出する第1の予測関数に対する第1の重みと、
    前記特定のコンテンツに関連付けられている1以上のコンセプトについて前記第1のユーザが有する関心のレベルを算出する第2の予測関数に対する第2の重みと、を指定する情報を含む、工程と、
    前記アプリケーションに関連付けられている前記1以上のコンピューティングデバイスが、第2の親和性の度合いを算出するために用いられる第2の重み情報を前記コンピュータサーバマシンに送信する工程であって、前記第2の重み情報は、
    前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出する第3の予測関数に対する第3の重みを指定する情報を含む、工程と、
    前記アプリケーションに関連付けられている前記コンピューティングデバイスの1以上が、前記第1の親和性の度合いを受信する工程と、
    前記アプリケーションに関連付けられている前記コンピューティングデバイスの1以上が、前記第2の親和性の度合いを受信する工程と、
    前記アプリケーションに関連付けられている前記コンピューティングデバイスの1以上が、受信された前記第1の親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいことを決定する工程と、
    前記アプリケーションに関連付けられている前記コンピューティングデバイスの1以上が、受信された前記第1の親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいという決定に応答して、前記特定のコンテンツを前記第1のユーザに送信する工程と、を備える方法。
  2. 前記第1のユーザに前記特定のコンテンツを送信する工程に関する前記第1の親和性の度合いに対するそれぞれの予測関数の相対的な重要度に基づいて、前記第1の重みおよび前記第2の重みを決定する工程をさらに備え
    前記相対的な重要度は、前記特定のコンテンツについて第1のユーザに関連付けられている第1の親和性の度合いを求める要求に含まれる、請求項1に記載の方法。
  3. 前記第1の重み情報は、前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出する第3の予測関数に対する第3の重みを指定する情報をさらに含む、請求項1に記載の方法。
  4. 前記第2の重み情報は、
    第4の予測関数に対する第4の重みと、
    第5の予測関数に対する第5の重みと、
    第6の予測関数に対する第6の重みと、を指定する情報を含み、
    前記第4の予測関数は、前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出し、
    前記第5の予測関数は、前記第1のユーザに関連付けられている特定のクライアントシステムにおいて前記第1のユーザによって実行されたアクションの履歴に基づいて前記第1のユーザが前記アクションについて有する関心のレベルを算出し、
    前記第6の予測関数は、前記第2のユーザについて前記第1のユーザが有する関心のレベルを前記第1のユーザと前記第2のユーザとの間の過去の対話の頻度に基づいて算出する、請求項に記載の方法。
  5. 前記特定のコンテンツは、特定のアイテムについてのソーシャル推奨を備える、請求項1に記載の方法。
  6. 前記特定のコンテンツは、特定のアプリケーションに加入する要求を備える、
    請求項1に記載の方法。
  7. 前記特定のコンテンツとともに前記第1のユーザに提供されるアクションを決定する工程と、
    前記第1のユーザに送信された特定のコンテンツをフィルタリングする工程とをさらに備える、請求項1に記載の方法。
  8. 前記第1の親和性の度合いは、前記第1のユーザに関連付けられているクライアントシステムに対して前記第1のユーザによって行われた1以上のアクションの種類にさらに基づいて算出される、請求項1に記載の方法。
  9. 電話機能を伴う前記アクションの1以上は、電話呼を発信すること、電話呼を受信すること、電話呼を拒否すること、電話呼をボイスメールに直接送ること、ボイスメールを聞かずに削除すること、特定の電話番号からの電話呼をブロックすること、または特定のタイプの電話番号への電話呼を制限することを含む、請求項1に記載の方法。
  10. 前記コンピュータサーバマシンは、ソーシャルネットワーキングシステムに関連付けられており、前記第1のユーザは、前記ソーシャルネットワーキングシステムのユーザである、請求項1に記載の方法。
  11. ソフトウェアを具現化した1以上の非一時的なコンピュータ可読記憶媒体であって、前記ソフトウェアが実行されると、
    特定のコンテンツについて第1のユーザに関連付けられている第1の親和性の度合いを求める要求を送信する工程であって、前記第1の親和性の度合いは、前記特定のコンテンツについて前記第1のユーザが有する関心のレベルを示し、前記特定のコンテンツは、第2のユーザに関連付けられており、前記第1の親和性の度合いは、以前に実行された前記第1のユーザのアクションの種類に応じて決定され、以前に実行された前記アクションは、電話機能を伴うアクションを含む、工程と、
    前記第1の親和性の度合いを算出するために使用される重み情報を送信する工程であって、前記重み情報は、
    前記第2のユーザによって投稿されたコンテンツを閲覧するに際し前記第1のユーザが有する関心のレベルを算出する第1の予測関数に対する第1の重みと、
    前記特定のコンテンツに関連付けられている1以上のコンセプトについて前記第1のユーザが有する関心のレベルを算出する第2の予測関数に対する第2の重みと、を指定する情報を含む、工程と、
    第2の親和性の度合いを算出するために用いられる第2の重み情報を送信する工程であって、前記第2の重み情報は、
    前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出する第3の予測関数に対する第3の重みを指定する情報を含む、工程と、
    前記第1の親和性の度合いを受信する工程と、
    前記第2の親和性の度合いを受信する工程と、
    受信された前記第1の親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいことを決定する工程と、
    受信された前記親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいという決定に応答して、前記特定のコンテンツを前記第1のユーザに送信する工程と、が行われるように構成される、媒体。
  12. 前記ソフトウェアが実行されると、
    前記第1のユーザに前記特定のコンテンツを送信する工程に関する前記親和性の度合いに対するそれぞれの予測関数の相対的な重要度に基づいて、前記第1の重みおよび前記第2の重みを決定する工程が行われるようにさらに構成され
    前記相対的な重要度は、前記特定のコンテンツについて第1のユーザに関連付けられている第1の親和性の度合いを求める要求に含まれる、請求項11に記載の媒体。
  13. 前記第1の重み情報は、前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出する第3の予測関数に対する第3の重みを指定する情報をさらに含む、請求項11に記載の媒体。
  14. ソーシャルネットワーキングシステムに関連付けられている1以上のコンピュータサーバに関連付けられている1以上のプロセッサと、
    前記プロセッサに結合され、前記プロセッサによって実行可能な命令を備えるメモリと、を備える、システムであって、前記命令が実行されると、
    特定のコンテンツについて第1のユーザに関連付けられている第1の親和性の度合いを求める要求を送信する工程であって、前記第1の親和性の度合いは、前記特定のコンテンツについて前記第1のユーザが有する関心のレベルを示し、前記特定のコンテンツは、第2のユーザに関連付けられており、前記第1の親和性の度合いは、以前に実行された前記第1のユーザのアクションの種類に応じて決定され、以前に実行された前記アクションは、電話機能を伴うアクションを含む、工程と、
    前記第1の親和性の度合いを算出するために使用される重み情報を送信する工程であって、前記重み情報は、
    前記第2のユーザによって投稿されたコンテンツを閲覧するに際し前記第1のユーザが有する関心のレベルを算出する第1の予測関数に対する第1の重みと、
    前記特定のコンテンツに関連付けられている1以上のコンセプトについて前記第1のユーザが有する関心のレベルを算出する第2の予測関数に対する第2の重みと、を指定する情報を含む、工程と、
    第2の親和性の度合いを算出するために用いられる第2の重み情報を送信する工程であって、前記第2の重み情報は、
    前記第1のユーザの1以上の属性に関連する前記特定のコンテンツに対する親和性の度合いを算出する第3の予測関数に対する第3の重みを指定する情報を含む、工程と、
    前記第1の親和性の度合いを受信する工程と、
    前記第2の親和性の度合いを受信する工程と、
    受信された前記第1の親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいことを決定する工程と、
    受信された前記親和性の度合いおよび前記第2の親和性の度合いがそれぞれ所定の第1の親和性の度合いおよび所定の第2の親和性の度合いよりも大きいという決定に応答して、前記特定のコンテンツを前記第1のユーザに送信する工程と、が行われるように構成される、システム。
JP2017078682A 2012-10-01 2017-04-12 モバイルデバイス関連の親和性の度合い Active JP6445073B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/632,869 2012-10-01
US13/632,869 US9654591B2 (en) 2012-10-01 2012-10-01 Mobile device-related measures of affinity

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015534637A Division JP6129975B2 (ja) 2012-10-01 2013-09-26 モバイルデバイス関連の親和性の度合い

Publications (2)

Publication Number Publication Date
JP2017174437A JP2017174437A (ja) 2017-09-28
JP6445073B2 true JP6445073B2 (ja) 2018-12-26

Family

ID=50386257

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015534637A Active JP6129975B2 (ja) 2012-10-01 2013-09-26 モバイルデバイス関連の親和性の度合い
JP2017078682A Active JP6445073B2 (ja) 2012-10-01 2017-04-12 モバイルデバイス関連の親和性の度合い

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015534637A Active JP6129975B2 (ja) 2012-10-01 2013-09-26 モバイルデバイス関連の親和性の度合い

Country Status (8)

Country Link
US (2) US9654591B2 (ja)
JP (2) JP6129975B2 (ja)
KR (2) KR102012266B1 (ja)
AU (3) AU2013327720A1 (ja)
CA (2) CA2885744C (ja)
IL (2) IL237906A (ja)
TW (2) TWI643151B (ja)
WO (1) WO2014055317A1 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9191829B2 (en) 2011-05-31 2015-11-17 Facebook, Inc. Sensing proximity utilizing a wireless radio subsystem
JP2014032434A (ja) * 2012-08-01 2014-02-20 Sony Corp 情報処理装置、情報処理方法、及び、情報処理システム
US9355425B2 (en) * 2012-10-25 2016-05-31 Google Inc. Soft posting to social activity streams
US9838350B2 (en) 2013-03-08 2017-12-05 Facebook, Inc. Contact aggregation in a social network
US9998969B2 (en) 2013-03-15 2018-06-12 Facebook, Inc. Portable platform for networked computing
US9760964B2 (en) 2013-04-11 2017-09-12 Facebook, Inc. Application-tailored object re-use and recycling
US9207986B2 (en) 2013-04-11 2015-12-08 Facebook, Inc. Identifying a next window of idle time to perform pre-generation tasks of content portions outside of the displayable region stored in a message queue
US10126903B2 (en) 2013-04-15 2018-11-13 Facebook, Inc. Application-tailored object pre-inflation
US8954279B2 (en) 2013-06-25 2015-02-10 Facebook, Inc. Human-like global positioning system (GPS) directions
US9811778B2 (en) * 2013-10-25 2017-11-07 International Business Machines Corporation Social collaboration in probabilistic prediction
US9426192B2 (en) * 2014-01-02 2016-08-23 International Business Machines Corporation Predicting viewing activity of a posting to an activity stream
US20160127501A1 (en) * 2014-11-03 2016-05-05 Friendsy, Inc Hint-based identification scheme for a network
CN107077696B (zh) * 2014-11-11 2020-10-23 欧姆龙株式会社 人机匹配装置、匹配系统、人机匹配方法以及人机匹配程序
US9866646B2 (en) * 2015-08-07 2018-01-09 Bento Labs Inc. Systems and methods for anticipatory push search for a homescreen browser
US10547971B2 (en) 2015-11-04 2020-01-28 xAd, Inc. Systems and methods for creating and using geo-blocks for location-based information service
US10476832B2 (en) 2016-07-14 2019-11-12 Facebook, Inc. Content notification on online social networks for media-player devices
US11019177B2 (en) * 2016-07-21 2021-05-25 Facebook, Inc. Selecting assets
US10419381B2 (en) * 2016-08-30 2019-09-17 Facebook, Inc. Prompt ranking
US10419477B2 (en) * 2016-11-16 2019-09-17 Zscaler, Inc. Systems and methods for blocking targeted attacks using domain squatting
US11481816B2 (en) 2017-02-06 2022-10-25 Meta Platforms, Inc. Indications for sponsored content items within media items
US11037063B2 (en) 2017-08-18 2021-06-15 Diveplane Corporation Detecting and correcting anomalies in computer-based reasoning systems
US11010672B1 (en) 2017-09-01 2021-05-18 Google Llc Evolutionary techniques for computer-based optimization and artificial intelligence systems
JP7117835B2 (ja) * 2017-09-19 2022-08-15 ヤフー株式会社 生成装置、モデル、生成方法及び生成プログラム
US10713570B1 (en) 2017-10-04 2020-07-14 Diveplane Corporation Evolutionary programming techniques utilizing context indications
US11727286B2 (en) 2018-12-13 2023-08-15 Diveplane Corporation Identifier contribution allocation in synthetic data generation in computer-based reasoning systems
US11676069B2 (en) 2018-12-13 2023-06-13 Diveplane Corporation Synthetic data generation using anonymity preservation in computer-based reasoning systems
US11941542B2 (en) 2017-11-20 2024-03-26 Diveplane Corporation Computer-based reasoning system for operational situation control of controllable systems
US11640561B2 (en) 2018-12-13 2023-05-02 Diveplane Corporation Dataset quality for synthetic data generation in computer-based reasoning systems
US11669769B2 (en) 2018-12-13 2023-06-06 Diveplane Corporation Conditioned synthetic data generation in computer-based reasoning systems
US11385633B2 (en) 2018-04-09 2022-07-12 Diveplane Corporation Model reduction and training efficiency in computer-based reasoning and artificial intelligence systems
US11454939B2 (en) 2018-04-09 2022-09-27 Diveplane Corporation Entropy-based techniques for creation of well-balanced computer based reasoning systems
US10176379B1 (en) * 2018-06-01 2019-01-08 Cisco Technology, Inc. Integrating computer vision and wireless data to provide identification
US11880775B1 (en) 2018-06-05 2024-01-23 Diveplane Corporation Entropy-based techniques for improved automated selection in computer-based reasoning systems
US11172324B2 (en) 2018-08-17 2021-11-09 xAd, Inc. Systems and methods for predicting targeted location events
US11146911B2 (en) 2018-08-17 2021-10-12 xAd, Inc. Systems and methods for pacing information campaigns based on predicted and observed location events
US11134359B2 (en) 2018-08-17 2021-09-28 xAd, Inc. Systems and methods for calibrated location prediction
US10349208B1 (en) * 2018-08-17 2019-07-09 xAd, Inc. Systems and methods for real-time prediction of mobile device locations
EP3861487A1 (en) 2018-10-30 2021-08-11 Diveplane Corporation Clustering, explainability, and automated decisions in computer-based reasoning systems
US11494669B2 (en) 2018-10-30 2022-11-08 Diveplane Corporation Clustering, explainability, and automated decisions in computer-based reasoning systems
US11176465B2 (en) 2018-11-13 2021-11-16 Diveplane Corporation Explainable and automated decisions in computer-based reasoning systems
WO2020123999A1 (en) 2018-12-13 2020-06-18 Diveplane Corporation Synthetic data generation in computer-based reasoning systems
US11222061B2 (en) 2019-03-28 2022-01-11 Facebook, Inc. Generating digital media clusters corresponding to predicted distribution classes from a repository of digital media based on network distribution history
US11763176B1 (en) 2019-05-16 2023-09-19 Diveplane Corporation Search and query in computer-based reasoning systems
US11222358B2 (en) 2020-05-29 2022-01-11 At&T Intellectual Property I, L.P. Facilitation of artificial intelligence predictions of telecommunications customers
CN113347166B (zh) * 2021-05-24 2023-05-16 广西电网有限责任公司 一种电网光传输设备安全风险的预防方法、装置和系统

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4884918B2 (ja) 2006-10-23 2012-02-29 株式会社野村総合研究所 仮想空間提供サーバ、仮想空間提供システム及びコンピュータプログラム
TW200720946A (en) * 2007-02-09 2007-06-01 Univ Nat Central Intelligent recommendation system
US7877346B2 (en) 2007-06-06 2011-01-25 Affinova, Inc. Method and system for predicting personal preferences
US20090030932A1 (en) * 2007-07-27 2009-01-29 Ralph Harik Methods for detecting and remedying missed opportunities in a social network
US8311948B1 (en) * 2007-08-22 2012-11-13 BOCOO Capital, LLC Content creation, monitoring and selection
US9203912B2 (en) * 2007-11-14 2015-12-01 Qualcomm Incorporated Method and system for message value calculation in a mobile environment
US9143573B2 (en) * 2008-03-20 2015-09-22 Facebook, Inc. Tag suggestions for images on online social networks
US9916611B2 (en) * 2008-04-01 2018-03-13 Certona Corporation System and method for collecting and targeting visitor behavior
US9224172B2 (en) 2008-12-02 2015-12-29 Yahoo! Inc. Customizable content for distribution in social networks
US8224727B2 (en) * 2009-05-27 2012-07-17 Boku, Inc. Systems and methods to process transactions based on social networking
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
KR101163196B1 (ko) * 2010-02-12 2012-07-06 박미쁨 개인 맞춤형 컨텐트를 제공하는 애플리케이션 서버에서의 개인 맞춤형 사회 네트워크 지도 관리 방법 및 그 방법을 실행하기 위한 프로그램 기록매체
KR20120003362A (ko) 2010-07-02 2012-01-10 아코지토(주) 협력적 필터링 알고리즘 기반의 iptv 개인별 선호프로그램 추천시스템
KR101329847B1 (ko) * 2010-07-26 2013-11-14 주식회사 팬택 인체통신을 이용한 소셜 네트워크 서비스를 제공하는 휴대용 단말기 및 그 방법
JP5384452B2 (ja) 2010-09-08 2014-01-08 株式会社Nttドコモ 配信サーバ及び推薦方法
CN102411596A (zh) * 2010-09-21 2012-04-11 阿里巴巴集团控股有限公司 一种信息推荐方法及系统
US8700540B1 (en) * 2010-11-29 2014-04-15 Eventbrite, Inc. Social event recommendations
US9158775B1 (en) * 2010-12-18 2015-10-13 Google Inc. Scoring stream items in real time
US20120166532A1 (en) * 2010-12-23 2012-06-28 Yun-Fang Juan Contextually Relevant Affinity Prediction in a Social Networking System
JP2012164091A (ja) 2011-02-04 2012-08-30 Ntt Docomo Inc 通信装置、親密度算出プログラム及び親密度算出方法
JP2012164092A (ja) 2011-02-04 2012-08-30 Ntt Docomo Inc 通信装置、親密度算出プログラム及び親密度算出方法
KR20120100146A (ko) 2011-03-03 2012-09-12 (주)디지털다임 스마트폰 어플리케이션을 이용한 사용자 행동분석 시스템 및 방법
US9220977B1 (en) * 2011-06-30 2015-12-29 Zynga Inc. Friend recommendation system
US8745217B2 (en) * 2011-07-20 2014-06-03 Social Yantra Inc. System and method for brand management using social networks
WO2013016687A1 (en) * 2011-07-28 2013-01-31 Hall Shane Method and system for matchmaking connections within a gaming social network
US20130185355A1 (en) * 2011-08-04 2013-07-18 Erick Tseng Recommendations Based On Geolocation
US9465506B2 (en) * 2011-08-17 2016-10-11 Blackberry Limited System and method for displaying additional information associated with a messaging contact in a message exchange user interface
US9544425B2 (en) * 2011-08-22 2017-01-10 Facebook, Inc. Social caller ID with reverse look-up
US20130054706A1 (en) * 2011-08-29 2013-02-28 Mary Graham Modulation of Visual Notification Parameters Based on Message Activity and Notification Value
KR20120101272A (ko) 2011-09-06 2012-09-13 (주)마이후 소셜 네트워크 서비스를 위한 사용자 단말기 및 방법
US10127563B2 (en) * 2011-09-15 2018-11-13 Stephan HEATH System and method for providing sports and sporting events related social/geo/promo link promotional data sets for end user display of interactive ad links, promotions and sale of products, goods, gambling and/or services integrated with 3D spatial geomapping, company and local information for selected worldwide locations and social networking
US9967218B2 (en) * 2011-10-26 2018-05-08 Oath Inc. Online active learning in user-generated content streams
US9026594B2 (en) * 2012-01-05 2015-05-05 Apifia, Inc. Method and system for determining user impact on their content pools within an online social network
CN102609533B (zh) * 2012-02-15 2015-03-18 中国科学技术大学 一种基于核方法的协同过滤推荐系统及方法
US8708223B2 (en) * 2012-03-01 2014-04-29 Elwha Llc Systems and methods for scanning a user environment and evaluating data of interest
US10380629B2 (en) * 2012-05-25 2019-08-13 Microsoft Technology Licensing, Llc Leveraging a social graph to deliver relevant recommendations
US20130346347A1 (en) * 2012-06-22 2013-12-26 Google Inc. Method to Predict a Communicative Action that is Most Likely to be Executed Given a Context
US9807193B2 (en) * 2012-08-03 2017-10-31 Facebook, Inc. Dynamic new user experience (NUX)
US9292951B2 (en) * 2012-08-22 2016-03-22 Cable Television Laboratories, Inc. Service coverage identification using augmented reality
US9154575B2 (en) * 2012-08-28 2015-10-06 Facebook, Inc. Soft matching user identifiers
US8762472B2 (en) * 2012-08-29 2014-06-24 Wetpaint.Com, Inc. Personalization based upon social value in online media
US8935346B2 (en) * 2012-09-06 2015-01-13 Facebook, Inc. Recommending groups to join in a social networking system
US10397363B2 (en) * 2013-03-27 2019-08-27 Facebook, Inc. Scoring user characteristics
US10546326B2 (en) * 2013-09-26 2020-01-28 Mark W. Publicover Providing targeted content based on a user's preferences
US9396483B2 (en) * 2014-08-28 2016-07-19 Jehan Hamedi Systems and methods for determining recommended aspects of future content, actions, or behavior

Also Published As

Publication number Publication date
US20170091645A1 (en) 2017-03-30
CA2885744C (en) 2017-01-24
CA2951414A1 (en) 2014-04-10
KR101797089B1 (ko) 2017-11-13
JP6129975B2 (ja) 2017-05-17
TW201419199A (zh) 2014-05-16
TW201812678A (zh) 2018-04-01
US10257309B2 (en) 2019-04-09
KR102012266B1 (ko) 2019-08-21
WO2014055317A1 (en) 2014-04-10
US9654591B2 (en) 2017-05-16
KR20150064101A (ko) 2015-06-10
JP2016502160A (ja) 2016-01-21
AU2018282487A1 (en) 2019-01-24
AU2017228704A1 (en) 2017-10-12
CA2885744A1 (en) 2014-04-10
KR20170126025A (ko) 2017-11-15
TWI643151B (zh) 2018-12-01
CA2951414C (en) 2019-11-12
IL253592A0 (en) 2017-09-28
JP2017174437A (ja) 2017-09-28
AU2013327720A1 (en) 2015-04-16
IL237906A (en) 2017-07-31
US20140095606A1 (en) 2014-04-03
TWI618015B (zh) 2018-03-11

Similar Documents

Publication Publication Date Title
JP6445073B2 (ja) モバイルデバイス関連の親和性の度合い
US10798210B2 (en) Handling notifications
US10169555B2 (en) Multi-user login for shared mobile devices
JP6435289B2 (ja) ソーシャル・ネットワーク・データに基づく検索結果のクライアント側での修正
US8700540B1 (en) Social event recommendations
JP6069594B2 (ja) 対話履歴に基づくユーザ体験インターフェースまたはユーザ・インターフェース
JP6310915B2 (ja) 複数の個人をターゲットにする電子広告
KR20140019329A (ko) 소셜 네트워크 정보를 사용하는 발신자 식별
JP6349331B2 (ja) ソーシャルネットワークにおける連絡先の集約
JP6445464B2 (ja) 友人のランチング
US10216785B2 (en) Dynamically-sorted contact information

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181128

R150 Certificate of patent or registration of utility model

Ref document number: 6445073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250