JP6203913B2 - オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング - Google Patents

オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング Download PDF

Info

Publication number
JP6203913B2
JP6203913B2 JP2016136693A JP2016136693A JP6203913B2 JP 6203913 B2 JP6203913 B2 JP 6203913B2 JP 2016136693 A JP2016136693 A JP 2016136693A JP 2016136693 A JP2016136693 A JP 2016136693A JP 6203913 B2 JP6203913 B2 JP 6203913B2
Authority
JP
Japan
Prior art keywords
query
user
grammar
structured
tokens
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
JP2016136693A
Other languages
English (en)
Other versions
JP2016194949A (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 JP2016194949A publication Critical patent/JP2016194949A/ja
Application granted granted Critical
Publication of JP6203913B2 publication Critical patent/JP6203913B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Description

本開示は一般に、ソーシャル・グラフ、およびソーシャル・ネットワーキング環境内でオブジェクトを探して検索を実行することに関する。
ソーシャル・ネットワーキング・システム(ソーシャルネットワーキング・ウェブサイトを含むことができる)は、そのソーシャル・ネットワーキング・システムのユーザ(人または組織など)がそのソーシャル・ネットワーキング・システムと、およびそのソーシャル・ネットワーキング・システムを通じて互いに対話することを可能にすることができる。ソーシャル・ネットワーキング・システムは、ユーザからの入力を用いて、そのユーザに関連付けられているユーザ・プロフィールを作成して、ソーシャル・ネットワーキング・システム内に記憶することができる。ユーザ・プロフィールは、人口統計学的情報、通信チャネル情報、およびユーザの個人的な関心に関する情報を含むことができる。ソーシャル・ネットワーキング・システムは、ユーザからの入力を用いて、そのユーザと、ソーシャル・ネットワーキング・システムのその他のユーザとの関係のレコードを作成および記憶すること、ならびにサービス(たとえば、ウォール投稿、写真共有、イベント編成、メッセージング、ゲーム、または広告)を提供して、ユーザ同士の間における社会的な交流を容易にすることも可能である。
ソーシャル・ネットワーキング・システムは、そのサービスに関連したコンテンツまたはメッセージを、1つまたは複数のネットワークを通じて、ユーザのモバイルまたはその他のコンピューティング・デバイスへ送信することができる。ユーザは、自分のユーザ・プロフィールおよびソーシャル・ネットワーキング・システム内のその他のデータにアクセスするためにソフトウェア・アプリケーションを自分のモバイルまたはその他のコンピューティング・デバイス上にインストールすることもできる。ソーシャル・ネットワーキング・システムは、ユーザにつながっているその他のユーザの集約されたストーリのニュース・フィードなど、ユーザに表示するためのコンテンツ・オブジェクトのパーソナライズされたセットを生成することができる。
ソーシャル・グラフ分析は、ソーシャルな関係を、ノードおよびエッジから構成されているネットワーク理論の点から見る。ノードは、ネットワーク内の個々の行為主体を表し、エッジは、行為主体同士の間における関係を表す。結果として生じるグラフベースの構造は、しばしば非常に複雑である。多くのタイプのノード、およびノード同士をつなげるための多くのタイプのエッジが存在することが可能である。ソーシャル・グラフは、その最もシンプルな形態においては、調査されているすべてのノードの間における関連があるすべてのエッジのマップである。
ソーシャル・ネットワーキング・システムに関連付けられている例示的なネットワーク環境を示す図。 例示的なソーシャル・グラフを示す図。 オンライン・ソーシャル・ネットワークの例示的なウェブページを示す図。 オンライン・ソーシャル・ネットワークの例示的なクエリを示す図。 オンライン・ソーシャル・ネットワークの例示的なクエリを示す図。 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリングするための例示的な方法を示す図。 例示的なコンピュータ・システムを示す図。
特定の実施形態では、ユーザから受け取られたテキスト・クエリに応答して、ソーシャル・ネットワーキング・システムは、識別されたソーシャル・グラフ要素に対応するクエリ・トークンを含む構造化クエリを生成することができる。構造化クエリの示唆をユーザのテキスト・クエリに応答して提供することによって、ソーシャル・ネットワーキング・システムは、オンライン・ソーシャル・ネットワークのユーザが、ソーシャル・グラフにおいて表される要素を、それらのソーシャル・グラフ属性と、様々なソーシャル・グラフ要素に対するそれらの関係とに基づいて検索するための、強力な方法を提供することができる。
特定の実施形態では、ソーシャル・ネットワーキング・システムは、非構造化テキスト・クエリをユーザから受け取ることができる。これに応答して、ソーシャル・ネットワーキング・システムは、テキスト・クエリを解析し、テキスト・クエリに基づいて1つまたは複数の構造化クエリを生成することができる。次いで、これらの構造化クエリは、各構造化クエリの品質に基づいてフィルタリングされ得る。いくつかの非構造化テキスト・クエリを解析するとき、ソーシャル・ネットワーキング・システムは、それに応答して、低品質のまたは関連性のない構造化クエリを生成することがある。これは、文法モデルとうまく合致しない語句をテキスト・クエリが含むときに起こることがあり、したがって、この語句は、文法モデルによって解析されたとき、関連性のないクエリ・トークンに合致されてしまう。これらの低品質の構造化クエリは滑稽であるかまたは当惑させるものであることがあるので、これらのクエリが示唆として照会元ユーザに送り返される前に、これらのクエリをフィルタリングによって除去することが望ましいであろう。フィルタリングは、特定の示唆クエリが低品質であるかまたは関連性がないものであるかもしれないことを伝える様々な要因に基づいて、各構造化を分析しスコアリングすることによって行われ得る。各構造化クエリは、テキスト・クエリ自体および構造化クエリに基づいてスコアリングされ得る。品質スコアの低い構造化クエリはフィルタリングによって除去されてよく、したがって、高品質の構造化クエリのみが照会元ユーザに提示される。次いで、フィルタリング後に残った構造化クエリは、ユーザに対して送信および表示されてよく、次いでユーザは、適切なクエリを選択して所望のコンテンツを検索することができる。
システム外観
図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を含むことができる。
本開示は、任意の適切なネットワーク110を想定している。限定ではなく、例として、ネットワーク110の1つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
リンク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とは異なることが可能である。
特定の実施形態においては、クライアント・システム130は、クライアント・システム130によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム130は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、eブック・リーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム130を想定している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザがネットワーク110にアクセスすることを可能にすることができる。クライアント・システム130は、自分のユーザがその他のクライアント・システム130のその他のユーザと通信することを可能にすることができる。
特定の実施形態においては、クライアント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つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャル・ネットワーキング・システム160は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、記憶すること、受け取ること、および送信することが可能である。ソーシャル・ネットワーキング・システム160は、ネットワーク環境100のその他のコンポーネントによって直接、またはネットワーク110を通じてアクセスされることが可能である。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のサーバ162を含むことができる。それぞれのサーバ162は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ162は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Exchangeサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ162は、サーバ162によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム164は、1つまたは複数のデータ・ストア164を含むことができる。データ・ストア164は、さまざまなタイプの情報を記憶するために使用されることが可能である。特定の実施形態においては、データ・ストア164内に記憶されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア164は、リレーショナル・データベースであることが可能である。特定の実施形態は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、またはサードパーティ・システム170が、データ・ストア164内に記憶
されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のソーシャル・グラフを1つまたは複数のデータ・ストア164内に記憶することができる。特定の実施形態においては、ソーシャル・グラフは、複数のノード(複数のユーザ・ノード(それぞれが、特定のユーザに対応している)、または複数のコンセプト・ノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャル・ネットワーキング・システム160を通じてオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャル・ネットワーキング・システム160のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャル・ネットワーキング・システム160を通じて、つながり、関連付け、または関係を形成しているソーシャル・ネットワーキング・システム160のその他の任意のユーザを示すことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ソーシャル・ネットワーキング・システム160によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャル・ネットワーキング・システム160のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを通じてアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャル・ネットワーキング・システム160において、またはサードパーティ・システム170の外部システム(ソーシャル・ネットワーキング・システム160とは別個のものであって、ネットワーク110を通じてソーシャル・ネットワーキング・システム160に結合されている)によって表されることが可能である任意のものと対話することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャル・ネットワーキング・システム160は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム170もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
特定の実施形態においては、サードパーティ・システム170は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータ・ストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブ・サービス、1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信することができる)その他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム170は、ソーシャル・ネットワーキング・システム160を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャル・ネットワーキン
グ・システム160およびサードパーティ・システム170は、ソーシャル・ネットワーキング・システム160またはサードパーティ・システム170のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャル・ネットワーキング・システム160は、サードパーティ・システム170などのその他のシステムがインターネットを通じてソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
特定の実施形態においては、サードパーティ・システム170は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム130に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャル・ネットワーキング・システム160とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャル・ネットワーキング・システム160に付加、アップロード、送信、または「投稿」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム130からソーシャル・ネットワーキング・システム160へ投稿を通信する。投稿は、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、映像、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュース・フィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャル・ネットワーキング・システム160に付加されることも可能である。
特定の実施形態においては、ソーシャル・ネットワーキング・システム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から受け取られたロケーション情報を記憶するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
ソーシャル・グラフ
図2は、例示的なソーシャル・グラフ200を示している。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のソーシャル・グラフ200を1つまたは複数のデータ・ストア内に記憶することができる。特定の実施形態においては、ソーシャル・グラフ200は、複数のノード(複数のユーザ・ノード202、または複数のコンセプト・ノード204を含むことができる)と、ノード同士をつなげる複数のエッジ206とを含むことができる。図2において示されている例示的なソーシャル・グラフ200は、教示上の目的から、二次元の視覚的マップ表示で示されている。特定の実施形態においては、ソーシャル・ネットワーキング・システム160、クライ
アント・システム130、またはサードパーティ・システム170は、適切なアプリケーションに関してソーシャル・グラフ200および関連したソーシャル・グラフ情報にアクセスすることができる。ソーシャル・グラフ200のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャル・グラフ・データベースなどの)データ・ストア内に記憶されることが可能である。そのようなデータ・ストアは、ソーシャル・グラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
特定の実施形態においては、ユーザ・ノード202は、ソーシャル・ネットワーキング・システム160のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャル・ネットワーキング・システム160と、またはソーシャル・ネットワーキング・システム160を通じて対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャル・ネットワーキング・システム160とのアカウントに登録した場合には、ソーシャル・ネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1つまたは複数のデータ・ストア内に記憶することができる。本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード202を示すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、ソーシャル・ネットワーキング・システム160に登録されていないユーザを示すことができる。特定の実施形態においては、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード202は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、コンセプト・ノード204は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワーク・システム160に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャル・ネットワーキング・システム160内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオ・ファイル、営業ファイル、デジタル写真、テキスト・ファイル、構造化文書、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、着想、写真、もしくは執筆作品など)、ゲーム、アクティビティ、着想もしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャル・ネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、(URLに関連付けられることが可能である)ウェブサイト、連絡先情報(たとえば、電話番号もしくはEメ
ール・アドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード204は、コンセプト・ノード204に関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード204は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、ソーシャル・グラフ200内のノードは、ウェブページ(「プロフィール・ページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャル・ネットワーキング・システム160によってホストされること、またはソーシャル・ネットワーキング・システム160にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ170に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード204に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード202は、対応するユーザ・プロフィール・ページを有することができ、そのユーザ・プロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード204は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
特定の実施形態においては、コンセプト・ノード204は、サードパーティ・システム170によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「食べる」)を選択することによってアクションを実行して、クライアント・システム130に、そのユーザのアクションを示すメッセージをソーシャル・ネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャル・ネットワーキング・システム160は、ユーザに対応するユーザ・ノード202と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード204との間においてエッジ(たとえば、「食べる」エッジ)を作成して、エッジ206を1つまたは複数のデータ・ストア内に記憶することができる。
特定の実施形態においては、ソーシャル・グラフ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内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を示すことができる。
特定の実施形態においては、ユーザ・ノード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との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム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を形成することを想定している。
タイプアヘッド・プロセス
特定の実施形態では、1つまたは複数のクライアント側および/またはバックエンド(サーバ側)プロセスが、「タイプアヘッド(typeahead)」フィーチャを実装および利用する。それにより、ソーシャル・ネットワーキング・システム160によってホストされるかまたはソーシャル・ネットワーキング・システム160においてアクセス可能な要求されたウェブ・ページ(ユーザ・プロファイル・ページなど)と共にレンダリングされた入力フォームにおいてユーザによって現在入力されつつある情報に、それぞれの既存のユーザ・ノード202またはコンセプト・ノード204に対応するコンセプトを合致させようと自動的に試みる。特定の実施形態では、ユーザが宣言を行うためにテキストを入力しているとき、タイプアヘッド・フィーチャは、宣言の中で入力されつつあるテキスト文字のストリングを、既存のコンセプト(またはユーザ)、およびソーシャル・グラフ200における対応するコンセプト(またはユーザ)ノード、に対応する文字(例えば名前)のストリングに合致させようと試みる。特定の実施形態では、合致が見つかったとき、タイプアヘッド・フィーチャは、既存のノードの、ノードへの参照(例えば、ノード
名、ノードID、または別の適切な参照もしくは識別子、など)で、フォームを自動的に埋めることができる。
特定の実施形態では、ユーザのプロファイル・ページまたは他のページの様々なセクションにおいてコンテンツを追加するかまたは宣言を行うのに使用されるフォームに、ユーザがテキストをタイプ入力するかまたは他の方法で入力するとき、タイプアヘッド・プロセスは、ソーシャル・ネットワーキング・システム160において(またはソーシャル・ネットワーキング・システム160内で)(例えばサーバ162内で)実行される、1つまたは複数のフロントエンド(クライアント側)および/またはバックエンド(サーバ側)タイプアヘッド・プロセス(以下では単に「タイプアヘッド・プロセス」と称される)と共に動作することができる。それにより、ユーザがテキストの文字を入力するのに伴ってユーザによって入力されたテキストの文字に最も関連性があるかまたは最もよく合致すると決定された、既存のソーシャル・グラフ・エンティティの名前に対応する1つもしくは複数の語句、または既存のソーシャル・グラフ・エンティティに関連付けられている語句で、フォームを対話式に、かつほぼ即座に(ユーザから見て)、自動的に埋めることを試みる。ノードおよびエッジに関連付けられている情報を含めた、ソーシャル・グラフ・データベースにおけるソーシャル・グラフ情報、またはソーシャル・グラフ・データベースから抽出されて索引付けされた情報を利用して、タイプアヘッド・プロセスは、ソーシャル・グラフ・データベースからの情報と共に、ならびに、場合によっては、ソーシャル・ネットワーキング・システム160内に位置するかまたはソーシャル・ネットワーキング・システム160内で実行される様々な他のプロセス、アプリケーション、またはデータベースと共に、ユーザの意図する宣言を高確度で予測することができる。しかし、ソーシャル・ネットワーキング・システム160はまた、ユーザの望む任意の宣言を入力する自由をユーザに提供し、ユーザが自分自身を自由に表現できるようにする。
特定の実施形態では、ユーザがテキスト文字をフォーム・ボックスまたは他のフィールドに入力するのに伴って、タイプアヘッド・プロセスは、ユーザが文字を入力しているときにユーザの宣言の中で入力された文字のストリングに合致する既存のソーシャル・グラフ要素(例えば、ユーザ・ノード202、コンセプト・ノード204、またはエッジ206)を識別しようと試みることができる。特定の実施形態では、ユーザが文字をフォーム・ボックスに入力するのに伴って、タイプアヘッド・プロセスは、入力されたテキスト文字のストリングを読み取ることができる。各キーストロークが行われるのに伴って、フロントエンド・タイプアヘッド・プロセスは、入力された文字ストリングを、要求(または呼出し)として、ソーシャル・ネットワーキング・システム160内で実行されるバックエンド・タイプアヘッド・プロセスに送信することができる。特定の実施形態では、タイプアヘッド・プロセスは、AJAX(Asynchronous JavaScript
and XML)または他の適切な技法、および特に非同期技法により、通信することができる。特定の一実施形態では、要求は、結果を迅速かつ動的に送信およびフェッチするのを可能にするXMLHTTPRequest(XHR)であるか、またはそれを含む。特定の実施形態では、タイプアヘッド・プロセスはまた、要求の前に、後に、または要求と共に、セクション識別子(セクションID)も送信し、セクションIDは、ユーザが宣言を行っている特定のページの特定のセクションを識別する。特定の実施形態では、ユーザIDパラメータも送られることがあるが、これは実施形態によっては不要な場合もある。ユーザがソーシャル・ネットワーキング・システム160にログインしていることに基づいて、ユーザはすでに「知られている」からである。
特定の実施形態では、タイプアヘッド・プロセスは、1つまたは複数のマッチング・アルゴリズムを使用して、合致するソーシャル・グラフ要素を識別しようと試みることができる。特定の実施形態では、1つまたは複数の合致が見つかったとき、タイプアヘッド・プロセスは、応答(AJAXまたは他の適切な技法を使用できる)をユーザのクライアン
ト・システム130に送信することができ、この応答は、例えば、合致するソーシャル・グラフ要素の名前(名前ストリング)、ならびに、場合によっては、合致するソーシャル・グラフ要素に関連付けられている他のメタデータを含むことができる。限定によってではなく例として、ユーザが文字「dat」をクエリ・フィールドに入力している場合、タイプアヘッド・プロセスは、ドロップダウン・メニューを表示することができ、このドロップダウン・メニューは、合致する既存のプロファイル・ページ、およびそれぞれのユーザ・ノード202またはコンセプト・ノード204(例えば、「dating」と名付けられているかまたは「dating」を専ら扱うプロファイル・ページ)の、名前を表示する。次いでユーザは、これらをクリックするかまたは他の方法で選択することができ、それにより、選択したノードに対応する合致ユーザまたはコンセプトの名前を宣言したいことを確定することができる。限定によってではなく別の例として、「dating」をクリックすると、タイプアヘッド・プロセスは、宣言「Dating」でクエリ・フィールドを自動的に埋めるか、またはウェブ・ブラウザ132に自動的に埋めさせることができる。特定の実施形態では、タイプアヘッド・プロセスは、ドロップダウン・メニューを表示するのではなく、単に、最上位にランク付けされる合致の名前または他の識別子でフィールドを自動的に埋めることもできる。次いで、ユーザは、単に、自分のキーボード上で「enter」をキー入力することによって、または自動的に埋められた宣言をクリックすることによって、自動的に埋められた宣言を確定することができる。
タイプアヘッド・プロセスに関するより多くの情報は、参照により援用される、2010年4月19日に出願された米国特許出願第12/763162号、および2012年7月23日に出願された米国特許出願第13/556072号で見ることができる。
構造化検索クエリ
図3は、オンライン・ソーシャル・ネットワークの例示的なウェブページを示す。特定の実施形態では、ユーザは、テキスト・クエリをクエリ・フィールド350に入力することによって、クエリをソーシャル・ネットワーク・システム160に提出することができる。オンライン・ソーシャル・ネットワークのユーザは、特定の主題(例えば、ユーザ、コンセプト、外部コンテンツ、またはリソース)を記述する短いフレーズ(「検索クエリ」としばしば称される)を検索エンジンに提供することによって、主題に関係する情報を検索することができる。クエリは、非構造化テキスト・クエリであってよく、1つもしくは複数のテキスト・ストリング、または1つもしくは複数のNグラム(n−gram)を含むものとすることができる。一般に、ユーザは、任意の文字ストリングをクエリ・フィールド350に入力して、テキスト・クエリに合致するコンテンツをソーシャル・ネットワーキング・システム160上で検索することができる。次いで、ソーシャル・ネットワーキング・システム160は、データ・ストア164(または、より詳細にはソーシャル・グラフ・データベース)内から検索して、クエリに合致するコンテンツを識別することができる。検索エンジンは、様々な検索アルゴリズムを使用してクエリ・フレーズに基づく検索を行い、検索結果を生成することができる。この検索結果は、検索クエリに関係する可能性が最も高いリソースまたはコンテンツ(例えば、ユーザプロファイル・ページ、コンテンツプロファイル・ページ、または外部リソース)を識別する。検索を行うために、ユーザは、検索クエリを検索エンジンに入力または送信することができる。これに応答して、検索エンジンは、検索クエリに関係する可能性の高い1つまたは複数のリソースを識別することができ、これらのリソースは、検索クエリに対して識別された「検索結果」と総称され得る。識別されたコンテンツは、例えば、ソーシャル・グラフ・エンティティ(すなわち、ユーザ・ノード202、コンセプト・ノード204、エッジ206)、プロファイル・ページ、外部ウェブページ、またはこれらの任意の組合せを含む場合がある。次いで、ソーシャル・ネットワーキング・システム160は、識別されたコンテンツに対応する検索結果を含む検索結果ウェブページを生成することができる。検索結果は、しばしば検索結果ウェブページ上のリンクのリストの形で、ユーザに提示されてよく、各リン
クは、識別されたリソースまたはコンテンツのいくらかを含む異なるウェブページに関連付けられている。特定の実施形態では、検索結果における各リンクは、対応するウェブページがどこに位置するかと、それを取り出すための機構とを指定するユニフォーム・リソース・ロケータ(URL)の形であってよい。次いで、ソーシャル・ネットワーキング・システム160は、検索結果ウェブページを、ユーザのクライアント・システム130上のユーザのウェブ・ブラウザ132に送信することができる。次いで、ユーザは、URLリンクをクリックするか、または他の方法で検索結果ウェブページからコンテンツを選択して、ソーシャル・ネットワーキング・システム160からのまたは外部システムからのコンテンツに適宜アクセスすることができる。リソースは、検索クエリに対するそれらの相対的な関連度に従って、ランク付けされユーザに提示されてよい。検索結果はまた、ユーザに対するそれらの相対的な関連度に従って、ランク付けされユーザに提示されてもよい。言い換えれば、検索結果は、例えば、ソーシャル・グラフ情報、ユーザ情報、ユーザの検索履歴もしくは閲覧履歴、またはユーザに関係する他の適切な情報に基づいて、照会元ユーザに合わせて個人化されてよい。特定の実施形態では、リソースのランク付けは、検索エンジンによって実装されるランク付けアルゴリズムによって決定されてよい。限定によってではなく例として、検索クエリまたはユーザに対してより関連性のあるリソースは、検索クエリまたはユーザに対してより関連性のないリソースよりも、高くランク付けされるものとすることができる。特定の実施形態では、検索エンジンは、その検索を、オンライン・ソーシャル・ネットワーク上のリソースおよびコンテンツに限定することができる。しかし、特定の実施形態では、検索エンジンはまた、サードパーティ・システム170、インターネットもしくはワールド・ワイド・ウェブ、または他の適切なソースなど、他のソース上のリソースまたはコンテンツを検索することもできる。本開示はソーシャル・ネットワーキング・システム160を特定の方式で照会することを記述するが、本開示はソーシャル・ネットワーキング・システム160を任意の適切な方式で照会することを企図する。
特定の実施形態では、ユーザによって入力される検索クエリに、本明細書に記載のタイプアヘッド・プロセスが適用され得る。限定ではなく例として、ユーザがテキスト文字を検索フィールドに入力するのに伴って、タイプアヘッド・プロセスは、ユーザが文字を入力しているときに検索フィールドに入力された文字のストリングに合致する1つまたは複数のユーザ・ノード202、コンセプト・ノード204、またはエッジ206を識別しようと試みることができる。タイプアヘッド・プロセスがテキスト・クエリからのストリングまたはNグラムを含む要求または呼出しを受け取ると、タイプアヘッド・プロセスは、入力されたテキストに合致するそれぞれの名前、タイプ、カテゴリ、または他の識別子を有する既存のソーシャル・グラフ要素(すなわち、ユーザ・ノード202、コンセプト・ノード204、エッジ206)を識別するための検索を実施することができ、またはこの検索が実施されるようにする。タイプアヘッド・プロセスは、1つまたは複数のマッチング・アルゴリズムを使用して、合致するノードまたはエッジを識別しようと試みることができる。合致が見つかったとき、タイプアヘッド・プロセスは、応答をユーザのクライアント・システム130に送信することができ、この応答は、例えば、合致するノードの名前(名前ストリング)、ならびに、場合によっては、合致するノードに関連付けられている他のメタデータを含むことができる。次いで、タイプアヘッド・プロセスはドロップダウン・メニュー300を表示することができ、ドロップダウン・メニュー300は、合致する既存のプロファイル・ページ、およびそれぞれのユーザ・ノード202またはコンセプト・ノード204の、名前を表示し、また、合致するユーザ・ノード202またはコンセプト・ノード204につながっている合致するエッジ206の名前を表示する。次いでユーザは、これらをクリックするかまたは他の方法で選択することができ、それにより、選択したノードに対応する合致ユーザもしくはコンセプトの名前を検索したいこと、または、合致するエッジによって合致ユーザもしくはコンセプトにつながっているユーザもしくはコンセプトを検索したいことを確定することができる。別法として、タイプアヘッド
・プロセスは、ドロップダウン・メニュー300を表示するのではなく、単に、最上位にランク付けされる合致の名前または他の識別子でフォームを自動的に埋めることもできる。次いで、ユーザは、単に、キーボード上で「enter」をキー入力することによって、または自動的に埋められた宣言をクリックすることによって、自動的に埋められた宣言を確定することができる。合致するノードおよびエッジをユーザが確定すると、タイプアヘッド・プロセスは、合致するソーシャル・グラフ要素を含むクエリをユーザが確定したことをソーシャル・ネットワーキング・システム160に知らせる要求を送信することができる。送信された要求に応答して、ソーシャル・ネットワーキング・システム160は、自動的に(または別法として、要求における命令に基づいて)、合致するソーシャル・グラフ要素を求めて、または合致するソーシャル・グラフ要素につながっているソーシャル・グラフ要素を求めて、ソーシャル・グラフ・データベースを適宜呼び出すかまたは他の方法で検索することができる。本開示はタイプアヘッド・プロセスを特定の方式で検索クエリに適用することを記述するが、本開示は、タイプアヘッド・プロセスを任意の適切な方式で検索クエリに適用することを企図する。
検索クエリおよび検索結果に関して、特定の実施形態は、参照により援用される、2006年8月11日に出願された米国特許出願第11/503093号、2010年12月22に出願された米国特許出願第12/977027号、および2010年12月23日に出願された米国特許出願第12/978265号に開示される、1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、またはステップを利用することができる。
テキスト・クエリの解析、および構造化クエリのレンダリング
図4A〜図4Bは、オンライン・ソーシャル・ネットワークの例示的なクエリを示す。特定の実施形態では、第1のユーザ(すなわち照会元ユーザ)から受け取られたテキスト・クエリに応答して、ソーシャル・ネットワーキング・システム160は、自然言語構文でレンダリングされた1つまたは複数の構造化クエリを生成することができ、各構造化クエリは、1つまたは複数の識別されたソーシャル・グラフ要素に対応するクエリ・トークンを含む。自然言語の構造化クエリは、文脈自由文法モデルを使用して生成されてよい。これらの構造化クエリは、文法モデルの文法によって生成されたストリングに基づくものであってよく、したがってこれらは、自然言語構文を使用して、適切なソーシャル・グラフ要素への参照を用いてレンダリングされる。構造化クエリは、第1のユーザに送信されてドロップダウン・メニュー300の中に表示されてよく(例えば、クライアント側のタイプアヘッド・プロセスにより)、次いで、第1のユーザは、適切なクエリを選択して所望のコンテンツを検索することができる。図4A〜図4Bは、クエリ・フィールド350における様々な例示的なテキスト・クエリと、それに応答してドロップダウン・メニュー300の中に生成された様々な構造化クエリとを示す。構造化クエリの示唆をユーザのテキスト・クエリに応答して提供することによって、ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザが、ソーシャル・グラフ200において表される要素を、それらのソーシャル・グラフ属性と、様々なソーシャル・グラフ要素に対するそれらの関係とに基づいて検索するための、強力な方法を提供することができる。構造化クエリにより、照会元ユーザは、特定のエッジ・タイプによってソーシャル・グラフ200における特定のユーザまたはコンセプトにつながっているコンテンツを検索することができる。本開示が記述し図4A〜図4Bが示すのは、特定の構造化クエリを特定の方式で生成することだが、本開示は任意の適切な構造化クエリを任意の適切な方式で生成することを企図する。クエリの解析、文法モデル、および構造化クエリの生成に関するより多くの情報は、2012年7月23日に出願された米国特許出願第13/556060号、2012年11月12日に出願された米国特許出願第13/674695号、2012年12月31日に出願された米国特許出願第13/731866号、および2012年12月31に出願された米国特許出願第13/732175号で見ること
ができ、これらの米国特許出願の各々は、参照により本明細書に援用される。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、照会元の/第1のユーザ(第1のユーザ・ノード202に対応する)から、非構造化テキスト・クエリを受け取ることができる。限定によってではなく例として、第1のユーザは、(1)第1のユーザの一次友達であって、かつ(2)スタンフォード大学に関連付けられている(すなわち、ユーザ・ノード202が、エッジ206によって、学校「スタンフォード」に対応するコンセプト・ノード204につながっている)、他のユーザを検索したい場合がある。第1のユーザは、この場合、図4A〜図4Bに示されるように、テキスト・クエリ「friends stanford(友達 スタンフォード)」をクエリ・フィールド350に入力することができる。第1のユーザがこのテキスト・クエリをクエリ・フィールド350に入力するのに伴って、ソーシャル・ネットワーキング・システム160は、ドロップダウン・メニュー300の中に示されるように、様々な構造化クエリの示唆を提供することができる。本明細書においては、非構造化テキスト・クエリは、ユーザによって入力される単純なテキスト・ストリングに及ぶ。テキスト・クエリは、当然ながら、標準的な言語/文法規則(例えば英語言語文法)については構造化されているであろう。しかし、テキスト・クエリは通常、ソーシャル・グラフ要素については構造化されていないことになる。言い換えれば、単純なテキスト・クエリは通常、特定のソーシャル・グラフ要素への埋込み参照を含むことはない。よって、本明細書においては、構造化クエリは、特定のソーシャル・グラフ要素への参照を含むクエリであって、それにより検索エンジンが、識別された要素に基づいて検索することができるようなクエリに及ぶ。さらに、テキスト・クエリは、正式なクエリ構文について構造化されていない場合がある。言い換えれば、単純なテキスト・クエリは、必ずしも検索エンジンによって直接に実行可能なクエリ・コマンドのフォーマットのものであるとは限らないことになる。本開示は特定のクエリを特定の方式で受け取ることを記述するが、本開示は任意の適切なクエリを任意の適切な方式で受け取ることを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、第1のユーザ(すなわち照会元ユーザ)から受け取った非構造化テキスト・クエリ(単に検索クエリとも称される)を解析して、1つまたは複数のNグラムを識別することができる。一般に、Nグラムは、テキストまたは音声の所与のシーケンスからの、n個のアイテムの連続的なシーケンスである。アイテムは、テキストまたは音声のシーケンスからの、文字、音素、音節、字、単語、塩基対、接頭辞、または他の識別可能なアイテムである場合がある。Nグラムは、照会元ユーザによって入力されたテキストの、1つまたは複数の文字(字、数字、句読点など)を含むことができる。サイズ1のNグラムは「ユニグラム」と称されることがあり、サイズ2のNグラムは「バイグラム」または「ダイグラム」と称されることがあり、サイズ3のNグラムは「トライグラム」と称されることがあり、以下同様である。各Nグラムは、照会元ユーザから受け取られたテキスト・クエリからの、1つまたは複数の部分を含むことができる。特定の実施形態では、各Nグラムは、第1のユーザによって入力された文字ストリング(例えば、テキストの1つまたは複数の文字)を含むことができる。限定によってではなく例として、ソーシャル・ネットワーキング・システム160は、テキスト・クエリ「friends stanford」を解析して、friends、stanford、friends stanford、というNグラムを識別することができる。限定によってではなく別の例として、ソーシャル・ネットワーキング・システム160は、テキスト・クエリ「friends in palo alto(パロアルトにいる友達)」を解析して、friends、in、palo、alto、friends in、in palo、palo alto、friend in palo、in palo also、friends in palo alto、というNグラムを識別することができる。特定の実施形態では、各Nグラムは、テキスト・クエリからのn個のアイテムの連続的なシーケンスを含むことができる。本開示は特定のクエ
リを特定の方式で解析することを記述するが、本開示は任意の適切なクエリを任意の適切な方式で解析することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、テキスト・クエリにおいて識別された各Nグラムにつき、Nグラムがソーシャル・グラフ要素に対応するスコアを決定または計算することができる。スコアは、例えば、信頼度スコア、確率、品質、ランキング、別の適切なタイプのスコア、またはこれらの任意の組合せとすることができる。限定によってではなく例として、ソーシャル・ネットワーキング・システム160は、Nグラムがソーシャル・グラフ200のユーザ・ノード202、コンセプト・ノード204、またはエッジ206などのソーシャル・グラフ要素に対応する確率スコア(単に「確率」とも称される)を決定することができる。確率スコアは、Nグラムと特定のソーシャル・グラフ要素との間の類似性または関連性のレベルを示すことができる。確率を計算するための多くの異なる方法があり得る。本開示は、検索クエリにおいて識別されたNグラムについて確率スコアを計算するための、任意の適切な方法を企図する。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、Nグラムが特定のソーシャル・グラフ要素に対応する確率pを決定することができる。確率pは、特定の検索クエリXが与えられた場合の、特定のソーシャル・グラフ要素kに対応する確率として計算されてよい。言い換えれば、確率は、p=(k|X)として計算されてよい。限定によってではなく例として、Nグラムがソーシャル・グラフ要素に対応する確率は、pi,j,kとして表される確率スコアとして計算されてよい。入力は、テキスト・クエリX=(x,x,...,x)、およびクラスのセットとすることができる。各(i:j)およびクラスkにつき、ソーシャル・ネットワーキング・システム160は、pi,j,k=p(クラス(xi;j)=k|X)を算出することができる。特定の実施形態では、識別されたソーシャル・グラフ要素を使用して、検索エンジンによって実行可能なクエリ・コマンドを生成することができる。このクエリ・コマンドは、特定の引数を受け入れる定義された関数を含む、構造化セマンティック・クエリとすることができる。限定によってではなく例として、テキスト・クエリ「friend me mark(友達 私 マーク)」が解析されて、クエリ・コマンドintersect(friend(me),friend(Mark))が形成される場合がある。言い換えれば、このクエリは、ソーシャル・グラフにおいて、照会元ユーザ(「私」)およびユーザ「マーク」と交差するノード(すなわち、友達タイプ・エッジ206によって照会元ユーザのユーザ・ノード202につながっていると共に、友達タイプ・エッジ206によってユーザ「マーク」のユーザ・ノード202につながっている、ユーザ・ノード202)を探している。本開示はNグラムがソーシャル・グラフ要素に対応するか否かを特定の方式で決定することを記述するが、本開示はNグラムがソーシャルグラム要素に対応するか否かを任意の適切な方式で決定することを企図する。さらに、本開示はNグラムがソーシャル・グラフ要素に対応するか否かを特定のタイプのスコアを使用して決定することを記述するが、本開示はNグラムがソーシャル・グラフ要素に対応するか否かを任意の適切なタイプのスコアを使用して決定することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、エッジしきい値確率よりも高い確率を有する1つまたは複数のエッジ206を識別することができる。識別されたエッジ206の各々は、Nグラムの少なくとも1つに対応するものとすることができる。限定によってではなく例として、Nグラムは、pi,j,k>pedge−thresholdである場合にのみ、エッジkに対応するものとして識別されてよい。さらに、識別されたエッジ206の各々は、識別されたノードの少なくとも1つにつながっているものとすることができる。言い換えれば、ソーシャル・ネットワーキング・システム160は、特定のNグラムに対応するものとして前に識別されたユーザ・ノード202またはコンセプト・ノード204につながっている、エッジ206またはエッジ・タイプのみを識別することができる。前に識別されたいずれのノードにもつながっていないエ
ッジ206またはエッジ・タイプは、通常、検索クエリにおける特定のNグラムに対応する可能性が低い。これらのエッジ206およびエッジ・タイプをフィルタリングによって除去するかまたは無視することによって、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200において関連性のあるソーシャル・グラフ要素をより効率的に検索することができる。本開示はNグラムに対応するエッジ206を特定の方式で識別することを記述するが、本開示はNグラムに対応するエッジ206を任意の適切な方式で識別することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、ノードしきい値確率よりも高い確率を有する1つまたは複数のユーザ・ノード202またはコンセプト・ノード204を識別することができる。識別されたノードの各々は、Nグラムの少なくとも1つに対応し得る。限定によってではなく例として、Nグラムは、pi,j,k>pnode−thresholdである場合にのみ、ノードkに対応するものとして識別されてよい。さらに、識別されたユーザ・ノード202またはコンセプト・ノード204の各々は、識別されたエッジ206の少なくとも1つにつながっているものとすることができる。言い換えれば、ソーシャル・ネットワーキング・システム160は、特定のNグラムに対応するものとして前に識別されたエッジ206につながっている、ノードまたはノードタイプのみを識別することができる。前に識別されたいずれのエッジ206にもつながっていないノードまたはノードタイプは、通常、検索クエリにおける特定のNグラムに対応する可能性が低い。これらのノードおよびノードタイプをフィルタリングによって除去するかまたは無視することによって、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200において関連性のあるソーシャル・グラフ要素をより効率的に検索することができる。本開示はNグラムに対応するノードを特定の方式で識別することを記述するが、本開示はNグラムに対応するノードを任意の適切な方式で識別することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、複数の文法を含む文脈自由文法モデルにアクセスすることができる。文法モデルの各文法は、1つまたは複数の非終端トークン(または「非終端記号」)と、1つまたは複数の終端トークン(または「終端記号」/「クエリ・トークン」)とを含むことができ、特定の非終端トークンは、終端トークンで置き換えられ得る。文法モデルは、正式な言語のストリングに対する形成規則のセットである。特定の実施形態では、複数の文法は、順序木として編成された文法フォレストとして視覚化されることが可能であり、内部ノードは非終端トークンに対応し、葉ノードは終端トークンに対応する。各文法は、文法フォレスト内のサブツリーとして表されてよく、これらの文法は、非終端トークンによって相互に合成される。よって、2つ以上の文法は、文法フォレスト内のサブフォレストとすることができる。本開示は特定の文法にアクセスすることを記述するが、本開示は任意の適切な文法を企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、1つまたは複数の文法を使用して1つまたは複数のストリングを生成することができる。言語でストリングを生成するには、単一の開始記号のみからなるストリングで開始する。次いで、開始記号も、指定された非終端記号も含まないストリングが作成されるまで、生成規則が任意の順序で適用される。文脈自由文法では、文法の各非終端記号の作成は、文法の他の非終端記号によって作成されるものとは独立している。非終端記号は、終端記号(すなわち、終端トークンまたはクエリ・トークン)で置き換えられ得る。クエリ・トークンのいくつかはソーシャル・グラフ・トークンであることがあり、ソーシャル・グラフ・トークンは、前述のように、識別されたノードまたは識別されたエッジに対応するものとすることができる。次いで、文法によって生成されたストリングは、識別されたノードまたは識別されたエッジへの参照を含む構造化クエリの基礎として使用されてよい。文法によって生
成されたストリングは、自然言語構文でレンダリングされてよく、したがって、ストリングに基づく構造化クエリもまた自然言語でレンダリングされる。文脈自由文法は、各生成規則の左側が単一の非終端記号のみからなる文法である。確率的な文脈自由文法の1つは、タプル〈Σ,N,S,P〉であり、ここで、互いに素な集合ΣおよびNは、終端記号および非終端記号をそれぞれ指定し、S∈Nは開始記号である。Pは、作成の集合であり、これらの作成は、E→ξ(p)の形をとり、E∈N、ξ∈(Σ∪N)、および、p=Pr(E→ξ)であり、これはEがストリングξに展開される確率である。所与の非終端Eの全ての展開にわたる確率pの合計は、1でなければならない。本開示はストリングを特定の方式で生成することを記述するが、本開示はストリングを任意の適切な方式で生成することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、前に識別されたノードおよびエッジに対応する、1つまたは複数のクエリ・トークンを識別することができる。言い換えれば、識別されたノードまたは識別されたエッジが、特定の文法によってクエリ・トークンとして使用され得る場合、このクエリ・トークンは、ソーシャル・ネットワーキング・システム160によって識別されてよい。クエリ・トークンは、文法トークンまたはソーシャル・グラフ・トークンを含むことができる。文法トークンは、自然言語構文でレンダリングするために挿入されるテキストに対応するクエリ・トークンである。ソーシャル・グラフ・トークンは、ソーシャル・グラフ200の特定のノードまたはエッジに対応するクエリ・トークンである。限定によってではなく例として、例示的な文法が、[user][user−filter][school]である場合がある。非終端記号[user]、[user−filter]、および[school]は、この場合、受け取られたテキスト・クエリにおけるNグラムに基づいて決定され得る。テキスト・クエリ「friends stanford」の場合、このクエリは、この文法を使用して、例えば、「[friends][who][go to][Stanford
University](スタンフォード大学に通う友達)」、または「[friends][who][work at][Stanford University](スタンフォード大学に勤務する友達)」として解析され得る。この例では、クエリ・トークン[friends]、[go to]、[work at]、および[Stanford University]は全て、ソーシャル・グラフ200の特定のノードおよびエッジに対応するソーシャル・グラフ・トークンとすることができる。同様に、クエリ・トークン[who]は、構造化クエリを自然言語構文でレンダリングするために文法によって挿入された文法トークンとすることができる。上記の両方の例示的なケースで、受け取られたテキスト・クエリのNグラムがクエリ・トークンとして使用され得る場合は、これらのクエリ・トークンは、ソーシャル・ネットワーキング・システム160によって識別されてよい。本開示は特定のクエリ・トークンを特定の方式で識別することを記述するが、本開示は任意の適切なクエリ・トークンを任意の適切な方式で識別することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、前に識別されたノードまたはエッジの各々に対応する少なくとも1つのクエリ・トークンを有する1つまたは複数の文法を選択することができる。テキスト・クエリにおいて識別されたNグラムに応じて、特定の文法のみが使用され得る。したがって、全ての利用可能な文法の終端トークンが調べられて、テキスト・クエリからの識別されたNグラムに合致する文法が見つけられるべきである。言い換えれば、特定の文法が、識別されたノードおよびエッジの全てをクエリ・トークンとして使用できる場合、この文法は、構造化クエリの生成に使用するための可能な文法として、ソーシャル・ネットワーキング・システム160によって選択されてよい。これは事実上、ボトムアップ解析の一種であり、可能なクエリ・トークンを使用して、クエリに適用するための適用可能な文法を決定する。限定によってではなく例として、テキスト・クエリ「friends stanford」に対して、ソー
シャル・ネットワーキング・システムは、クエリ・トークン[friends]および[Stanford University]を識別する場合がある。文法モデルからの文法の終端トークンが、前に論じられたように識別されてよい。次いで、[friends]と[Stanford University]の両方のトークンを使用できる任意の文法が選択されてよい。例えば、文法[user][user−filter][school]が選択されてよい。この文法は、ストリング「friends who go to Stanford University(スタンフォード大学に通う友達)」または「friends who work at Stanford University(スタンフォード大学に勤務する友達)」を形成するなどによって、[friends]および[Stanford University]トークンをクエリ・トークンとして使用することができるからである。よって、受け取られたテキスト・クエリのNグラムが文法によってクエリ・トークンとして使用され得る場合は、これらの文法がソーシャル・ネットワーキング・システム160によって選択されるものとすることができる。同様に、受け取られたテキスト・クエリが、文法によってクエリ・トークンとして使用され得ないNグラムを含む場合は、この文法は選択されないものとすることができる。本開示は特定の文法を特定の方式で選択することを記述するが、本開示は、任意の適切な文法を任意の適切な方式で選択することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、複数の文法によって形成される文法フォレストを分析することによって、1つまたは複数の文法を選択することができる。文法フォレストは、複数の非終端トークンと複数の終端トークンとを含む順序木として編成されてよい。各文法は、文法フォレスト内のサブツリーとして表されてよく、各サブツリーは、1つまたは複数の追加の非終端トークンによって他のサブツリーに合成される。限定によってではなく例として、ソーシャル・ネットワーキング・システム160は、テキスト・クエリの一部に対応する識別されたノードおよびエッジに対応する、文法フォレストにおける全ての終端トークン(すなわちクエリ・トークン)を識別することによって、開始することができる。文法フォレストにおけるこれらのクエリ・トークンが識別されると、次いでソーシャル・ネットワーキング・システム160は、これらのクエリ・トークンの各々から文法フォレストを上に辿って、1つまたは複数の交差非終端トークンを識別することができる。全てのクエリ・トークンからの経路が交差する非終端トークンが識別されると、この交差非終端トークンが選択されてよく、次いで、文法フォレストによってこの交差非終端トークンに合成される1つまたは複数の文法が選択されてよい。本開示は文法を特定の方式で選択することを記述するが、本開示は文法を任意の適切な方式で選択することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、照会元ユーザからのテキスト・クエリに対応するセマンティック・ツリーを生成することができる。セマンティック・ツリーは、前に識別されたノードまたはエッジに対応する識別された各クエリ・トークンを含むことができ、インタセクト・トークンを含むこともできる。セマンティック・ツリーはまた、クエリ・トークンをインタセクト・トークンにつなげている非終端トークンを、適宜含むことができる。限定によってではなく例として、テキスト・クエリ「friends stanford」が、クエリ・コマンド(intersect(school:<Stanford University>,friends_of:<me>))に解析される場合がある。言い換えれば、このクエリは、照会元ユーザ(「me」)の友達(すなわち、友達タイプ・エッジ206によって照会元ユーザのユーザ・ノード202につながっているユーザ・ノード202)と、スタンフォード大学のコンセプト・ノード204との両方と交差する、ソーシャル・グラフにおけるノードを探している。本開示は特定のセマンティック・ツリーを特定の方式で生成することを記述するが、本開示は、任意の適切なセマンティック・ツリーを任意の適切な方式で生成することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、複数の文法を含む文法フォレストを分析して、クエリに対応するセマンティック・ツリーにほぼ合致する非終端トークンおよびクエリ・トークンの1つまたは複数のセットを識別することができる。各セットは、セマンティック・ツリーのインタセクト・トークンに対応する非終端トークンを有する。次いで、ソーシャル・ネットワーキング・システム160は、インタセクト・トークンに対応する非終端トークンに合成される文法の1つまたは複数を、文法フォレストにおいて選択することができる。このアルゴリズムは、インタセクト・トークンに至る最低コストのマルチパスを文法フォレストにおいて見つけようと試みることになり、この最低コストのマルチパスに対応するインタセクト・トークンは、他のインタセクト・トークン(もしあれば)よりも優先的に選択されてよい。本開示は特定の文法フォレストを特定の方式で分析することを記述するが、本開示は任意の適切な文法フォレストを任意の適切な方式で分析することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、選択された各文法につき、スコアを決定することができる。スコアは、例えば、信頼度スコア、確率、品質、ランキング、別の適切なタイプのスコア、またはこれらの任意の組合せとすることができる。スコアは、選択された文法によって使用されるクエリ・トークンに関連付けられている個別のスコアまたは確率に基づくものとすることができる。相対的により高い個別スコアを有するクエリ・トークンを文法が使用する場合、文法はより高い相対的スコアを有することができる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ・アフィニティ(affinity)に基づいて、選択された文法のスコアを決定することができる。アフィニティは、オンライン・ソーシャル・ネットワークに関連付けられている特定のオブジェクト(ユーザ、コンセプト、コンテンツ、アクション、広告、オンライン・ソーシャル・ネットワークに関連付けられている他のオブジェクト、またはこれらの任意の適切な組合せ、など)間の、関係の強さ、または関心のレベルを表すことができる。照会元ユーザに対するより高いアフィニティを有するソーシャル・グラフ要素に対応するクエリ・トークンを含む文法は、照会元ユーザに対するより低いアフィニティを有するソーシャル・グラフ要素に対応するクエリ・トークンを含む文法よりも、高くスコアリングされるものとすることができる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、選択された文法に対応するインタセクト・トークンを識別するために辿られた経路の長さに基づいて、選択された文法のスコアを決定することができる。よりコストの低いマルチパス(すなわちより短い経路)を含む文法は、よりコストの高いマルチパス(すなわちより長い経路)を含む文法よりも、高くスコアリングされるものとすることができる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、広告スポンサシップに基づいて、選択された文法のスコアを決定することができる。広告主(例えば、特定のノードに対応する特定のプロファイル・ページのユーザまたは管理者など)が、特定のノードのスポンサとなる場合があり、したがって、このスポンサ付きノードを参照するクエリ・トークンを含む文法は、より高くスコアリングされてよい。本開示は特定の文法について特定のスコアを特定の方式で決定することを記述するが、本開示は、任意の適切な文法について任意の適切なスコアを任意の適切な方式で決定することを企図する。ソーシャル・グラフ・アフィニティおよびアフィニティ係数に関して、特定の実施形態は、2006年8月11日に出願された米国特許出願第11/503093号、2010年12月22日に出願された米国特許出願第12/977027号、2010年12月23日に出願された米国特許出願第12/978265号、および2012年10月1日に出願された米国特許出願第13/632869号に開示される1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、またはステップを利用することができ、これらの米国特許出願の各々は参照により援用される。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、文法しきい値スコアよりも高いスコアを有する1つまたは複数の文法を選択することができる。選択された文法の各々は、識別されたノードまたは識別されたエッジ(受け取られたテキスト・クエリのNグラムに対応する)の各々に対応するクエリ・トークンを含むことができる。特定の実施形態では、文法は、それらの決定されたスコアに基づいてランク付けされてよく、しきい値ランク内の文法のみが選択されてよい(例えば上位7個)。本開示は文法を特定の方式で選択することを記述するが、本開示は文法を任意の適切な方式で選択することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、選択された文法(例えば、文法しきい値スコアよりも高いスコアを有する文法)に対応する1つまたは複数の構造化クエリを生成することができる。各構造化クエリは、対応する選択された文法によって生成されたストリングに基づくものとすることができる。限定によってではなく例として、テキスト・クエリ「friends stanford」に応答して、文法[user][user−filter][school]は、ストリング「friends who go to Stanford University」を生成することができ、この場合、文法の非終端トークン[user]、[user−filter]、[school]が、終端トークン[friends]、[who go to]、および[Stanford University]にそれぞれ置き換えられて、ストリングが生成されている。特定の実施形態では、自然言語構文を使用する文法によって生成されるストリングは、自然言語の構造化クエリとしてレンダリングされるものとすることができる。限定によってではなく例として、前の例からの構造化クエリは、終端トークン[who go to]を使用するが、この終端トークンは自然言語構文を使用し、したがって、文法によってレンダリングされるストリングは自然言語である。次いで、文法によって生成された自然言語ストリングは、ソーシャル・グラフ要素に対応するクエリ・トークンを修正してこれらのソーシャル・グラフ要素への参照を含めることによって、レンダリングされて構造化クエリが形成されてよい。限定によってではなく例として、ストリング「friends who go to Stanford University」は、「Stanford University」のクエリ・トークンが、学校「Stanford University」に対応するコンセプト・ノード204への参照として構造化クエリにおいて現れるようにレンダリングされてよく、参照は、強調表示、インライン・リンク、スニペット、別の適切な参照、またはこれらの任意の組合せを含むことができる。各構造化クエリは、対応する選択された文法に対応するクエリ・トークンを含むことができ、これらのクエリ・トークンは、識別されたエッジ206の1つまたは複数、および識別されたノードの1つまたは複数に対応する。構造化クエリの生成について、以下にさらに記述される。
構造化検索クエリの生成およびフィルタリング
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、照会元ユーザから受け取ったテキスト・クエリに基づいて、構造化クエリのセットを生成することができる。生成される構造化クエリは、前述のように、1つまたは複数の文脈自由文法によって生成された自然言語ストリングに基づくものとすることができる。各構造化クエリは、対応する文法からのクエリ・トークンを含むことができる。クエリ・トークンは、識別されたユーザ・ノード202の1つもしくは複数、または識別されたエッジ206の1つもしくは複数に対応する、ソーシャル・グラフ・トークンである場合がある。限定によってではなく例として、テキスト・クエリ「show me friends of my
girlfriend(私のガールフレンドの友達を見せてください)」に応答して、ソーシャル・ネットワーキング・システム160は、構造化クエリ「Friends of Stephanie(ステファニーの友達)」を生成する場合があり、構造化クエリにおける「Friends(友達)」および「Stephanie(ステファニー)」は
、特定のソーシャル・グラフ要素に対応する参照である。「Stephanie」への参照は、特定のユーザ・ノード202(すなわち、関係タイプのエッジ206によって照会元ユーザのユーザ・ノード202につながっている、ユーザ「ステファニー」に対応するユーザ・ノード202)に対応することになり、「friends」への参照は、このユーザ・ノード202を他のユーザ・ノード202につなげる「友達」エッジ206(すなわち、「ステファニー」の一次友達につながっているエッジ206)に対応することになる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、テキスト・クエリに応答して生成された構造化クエリのセットを、各構造化クエリの品質に基づいてフィルタリングすることができる。いくつかの非構造化テキスト・クエリを解析するとき、ソーシャル・ネットワーキング・システム160は、それに応答して、低品質のまたは関連性のない構造化クエリを生成することがある。これは、文法モデルとうまく合致しない語句をテキスト・クエリが含むときに起こることがあり、したがって、この語句は、文法モデルによって解析されたとき、関連性のないクエリ・トークンに合致されてしまう。限定によってではなく例として、「背の高い人々」についてのテキスト・クエリが、関連性のあるいずれの構造化クエリも生成しない可能性がある。文法モデルにおいて使用されるいずれのクエリ・トークンにもこれらの語句が合致しない(例えば、これらの語句がいずれのソーシャル・グラフ要素とも合致しない)場合、または、低品質の合致しか有さない(例えば、低品質の合致は、「背の高い人々!」と名付けられたページまたはグループを参照する構造化クエリであることがある)場合は、これらの語句は文法モデルによってうまく解析されないかもしれないからである。これらの低品質の示唆クエリは、滑稽であるかもしくは当惑させるものであることがあり、または誤って合致するかもしくは関連性のないクエリ・トークンを含むことがあり、または単にユーザの照会意図と合致しないことがある。ともかく、これらの構造化クエリが示唆クエリとして照会元ユーザに送り返される前に、これらの構造化クエリをフィルタリングによって除去することが望ましいであろう。このようなクエリを示唆としてユーザに送るのを避けるために、各構造化クエリは、特定の示唆クエリが低品質であるかまたは関連性がないものであるかもしれないことを伝える様々な要因に基づいて、分析されスコアリングされてよい。ソーシャル・ネットワーキング・システム160によって生成されたセットにおける各構造化クエリは、テキスト・クエリ自体および構造化クエリに基づいてスコアリングされてよい。品質スコアの低い構造化クエリはフィルタリングによって除去されてよく、したがって、高品質の構造化クエリのみが照会元ユーザに提示される。本開示は特定の構造化クエリを特定の方式で生成することを記述するが、本開示は任意の適切な構造化クエリを任意の適切な方式で生成することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザから受け取ったテキスト・クエリに基づいて、構造化クエリのセットを生成することができる。各構造化クエリは、1つまたは複数のクエリ・トークンを含むことができ、これらは、文法トークンであるか、または、識別されたコンセプト・ノード204および1つもしくは複数の識別されたエッジ206に対応するソーシャル・グラフ・トークンである場合がある。これらの構造化クエリにより、ソーシャル・ネットワーキング・システム160は、識別されたコンセプト・ノード204および識別されたエッジ206につながっているかまたは他の方法で関連付けられるコンテンツ・オブジェクトを検索することによって、オンライン・ソーシャル・ネットワークに関係するリソースおよびコンテンツ(例えばプロファイル・ページなど)をより効率的に検索することができる。限定によってではなく例として、テキスト・クエリ「friends
like facebook(登録商標)(友達 いいね フェースブック(登録商標))」に応答して、ソーシャル・ネットワーキング・システム160は、構造化クエリ「My friends who like Facebook(フェースブックに「いいね」の表明を示した私の友達)」を生成する場合がある。この例では、構造化クエリにおける、「friends」、「like」、および「Facebook」への参照は、前
述のように、特定のソーシャル・グラフ要素に対応するソーシャル・グラフ・トークンである(すなわち、「友達」エッジ206、「いいね」エッジ206、および「フェースブック」コンセプト・ノード204)。同様に、「my」および「who」への参照は、文法トークンであり、これらは、構造化クエリが自然言語構文でレンダリングされるように、構造化クエリに含められる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、複数の構造化クエリを生成することができ、これらの構造化クエリは、異なる複数の識別されたコンセプト・ノード204、または異なる複数の識別されたエッジ206への参照を含むことができる。限定によってではなく例として、前の例を続けると、構造化クエリ「My friends who like Facebook」に加えて、ソーシャル・ネットワーキング・システム160はまた、構造化クエリ「My Friends who like Facebook Culinary Team(フェースブック料理チームに「いいね」の表明を示した私の友達)」も生成する場合があり、構造化クエリにおける「Facebook Culinary Team」は、さらに別のソーシャル・グラフ要素に対応するクエリ・トークンである。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、生成された構造化クエリをランク付けすることができる。構造化クエリは、様々な要因に基づいてランク付けされ得る。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、広告スポンサシップに基づいて構造化クエリをランク付けすることができる。広告主(例えば、特定のノードに対応する特定のプロファイル・ページのユーザまたは管理者など)が、特定のノードのスポンサとなる場合があり、したがって、このノードを参照する構造化クエリは、より高くランク付けされてよい。本開示は特定の構造化クエリを特定の方式で生成することを記述するが、本開示は任意の適切な構造化クエリを任意の適切な方式で生成することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、テキスト・クエリおよび構造化クエリに基づいて、構造化クエリの品質スコアを計算することができる。品質スコアは、例えば、信頼度スコア、確率、品質、ランキング、別の適切なタイプのスコア、またはこれらの任意の組合せとすることができる。限定によってではなく例として、構造化クエリの品質スコアsを決定するとき、ソーシャル・ネットワーキング・システム160は、照会元ユーザから受け取られたテキスト・クエリと、テキスト・クエリに応答して生成された構造化クエリとを考慮に入れることができる。よって、特定の検索クエリXおよび特定の構造化クエリQが与えられた場合の、特定の構造化クエリに対応する品質スコアsは、s=(X,Q)として計算されてよい。品質スコアは、様々な方法で、様々な要因を使用して計算され得る。限定によってではなく例として、構造化クエリの品質スコアは、生成コスト、正規化済みコスト、文法挿入コスト、エンティティ多数性コスト、言語モデル・スコア、エンティティ挿入コスト、他の適切な要因、またはこれらの任意の組合せ、のうちの1つまたは複数に部分的に基づいて計算されてよい。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリの生成コストに基づいて、構造化クエリの品質スコアを計算することができる。コストは、構造化クエリを生成するのに使用された各クエリ・トークンに関連付けられ得る。構造化クエリを構築するのに使用されたクエリ・トークンが多いほど、クエリのコストは増加するものとすることができる。さらに、異なるクエリ・トークンおよびトークン・タイプは、異なるコストを有することができる。テキスト・クエリに応答して構造化クエリのセットを生成するとき、ソーシャル・ネットワーキング・システム160は、可能な最低の生成コストを有する構造化クエリを生成しようと試みることができる。これは、例えば、文法モデルから文法を選択するのと同様に、またはそれに関連して、行われてよい。より低コストのマルチパスを有する文法は、より低い生成コストを有する構造化クエリを生成することができ、最短経路の文法は、最低の生成コストを有する構造化クエリを生成する。本開示は特定の構造化クエリの品質スコアを特定の方式で決定することを記述するが、本開示は任意の適切な構造化クエリの品質スコアを任意の適切な方式で決定することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリの正規化済みコストに基づいて、構造化クエリの品質スコアを計算することができる。照会元ユーザから受け取られたテキスト・クエリにおける語句の数(例えば、テキスト・クエリにおける識別されたNグラムの数)は、通常、このテキスト・クエリに応答して生成された構造化クエリにおけるクエリ・トークンの数に比例する。理想的には、Nグラムのクエリ・トークンに対する比は、1(1:1)に近づくべきである。よって、文法モデルがテキスト・クエリを解析し、予想よりも相当多いクエリ・トークンを有する構造化クエリを生成した場合、構造化クエリは低品質である可能性が高い。言い換えれば、テキスト・クエリに合致する文法を識別するために文法モデルがかなりの数のクエリ・トークンを挿入しなければならない場合は、この文法によって生成された構造化クエリは低品質である可能性が高い。同様に、テキスト・クエリが長いほど、テキスト・クエリに応答して生成される構造化クエリは、多くのクエリ・トークンを含みしたがって生成コストが高いことが予想される。よって、構造化クエリを生成するコストがテキスト・クエリの長さに基づいて正規化されてよく、したがって、コストがテキスト・クエリの長さに対して不釣合いである場合、高コストの構造化クエリは低品質として識別されてよい。高い正規化コストを有する構造化クエリは、それらが低品質であることを示し、したがって、高い正規化コストは、低い品質スコアと相関する。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、照会元ユーザから受け取られたテキスト・クエリにおけるNグラムの数を決定し、構造化クエリにおけるクエリ・トークンの数を決定することができる。次いで、ソーシャル・ネットワーキング・システム160は、テキスト・クエリにおけるNグラムの数の、構造化クエリにおけるクエリ・トークンの数に対する比に基づいて、正規化済みコストを計算することができる。限定によってではなく例として、テキスト・クエリ「friends stanford」に対して、ソーシャル・ネットワーキング・システム160は、図4Bに示されるように、「Friends who go to Stanford University」などの構造化クエリを生成する場合がある。ソーシャル・ネットワーキング・システム160は、この場合、テキスト・クエリが2つのNグラム「friends」および「stanford」を有すると決定することができる。これらのNグラムが文法モデルによって解析されて、3つのクエリ・トークン[friends]、[who go to]、および[Stanford University]を有する構造化クエリが生成された。よって、文法モデルは、テキスト・クエリをストリングに合致させるために、単一のクエリ・トークン[who go to]を挿入した。クエリ・トークンのテキスト・クエリにおけるNグラムに対する比が相対的に低い(3:2)ので、この構造化クエリは、相対的に低い正規化済みコストを有することができ、このことは、これが相対的に高品質の構造化クエリであることを示す。限定によってではなく別の例として、テキスト・クエリ「friends stanford」に応答して、ソーシャル・ネットワーキング・システム160は、「People who are friends with people who go to Stanford University(スタンフォード大学に通う人々の友達である人々)」などの構造化クエリを生成する場合がある。この場合、構造化クエリは、前の例よりもかなり多くのクエリ・トークンを含む。この構造化クエリを生成するコストがテキスト・クエリにおけるNグラムの数に基づいて正規化されたとき、この構造化クエリは高い正規化済みコストを有することになり、このことは、この構造化クエリが低い品質スコアを有し、したがってフィルタによって除去されるべきであることを示す。本開示は構造化クエリの品質スコアを特定の方式で計算することを記述するが、本開示は構造化クエリの品質スコアを任意の適切な方式で計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリの文法挿入コストに基づいて、構造化クエリの品質スコアを計算することができる。文法モデルを使用して構造化クエリを生成するとき、構造化クエリの生成のために挿入され
る文法トークンの数は、理想的には最小限に抑えられるべきである。よって、文法モデルがテキスト・クエリを解析して、予想よりもかなり多い文法トークンを有する構造化クエリを生成した場合、構造化クエリは低品質である可能性が高い。言い換えれば、テキスト・クエリに合致する文法を識別する(したがって構造化クエリを自然言語構文でレンダリングする)ために文法モデルが有意な数の文法トークンを挿入しなければならない場合は、この文法によって生成される構造化クエリは低品質である可能性が高い。高い文法挿入コスト(すなわち、文法トークンを構造化クエリに挿入することに関連付けられているコスト)を有する構造化クエリは、それらが低品質であることを示し、したがって、高い文法挿入コストは、低い品質スコアと相関する。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、照会元ユーザから受け取られたテキスト・クエリにおけるNグラムの数を決定し、構造化クエリにおける文法トークンおよびソーシャル・グラフ・トークンの数を決定することができる。次いで、ソーシャル・ネットワーキング・システム160は、Nグラムの数で正規化された、文法トークンの数のソーシャル・グラフ・トークンの数に対する比に基づいて、文法挿入コストを計算することができる。限定によってではなく例として、テキスト・クエリ「girls i have dated(私がデートしたことのある女の人)」に対して、ソーシャル・ネットワーキング・システム160は、「Female users I have been friends with who like the Dating app(私が友達だったことのある、デート・アプリに「いいね」の表明を示した女性ユーザ)」などの構造化クエリを生成する場合がある。ここで、Nグラム「girls」はクエリ・トークン[Female users]に合致し、Nグラム「dated」は[Dating app]に合致する(ただしこれ自体は低品質の合致であるかもしれない)。しかし、Nグラム「i have」を合致させるために、文法モデルは、文法トークン[I have been]、[friends with]、および[who like]を挿入しなければならない。よって、クエリを生成するために挿入された文法トークンの数が相対的に多いので、この構造化クエリには高い文法挿入コストが関連付けられ、このことは、これが相対的に低品質の構造化クエリであることを示す。本開示は構造化クエリの品質スコアを特定の方式で計算することを記述するが、本開示は構造化クエリの品質スコアを任意の適切な方式で計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリのエンティティ多数性コストに基づいて、構造化クエリの品質スコアを計算することができる。文法モデルを使用して構造化クエリを生成するとき、ソーシャル・グラフ・トークンのうちの全てではないがいくつかは、ソーシャル・グラフ200のノードに対応すべきである。通常の非構造化テキスト・クエリを解析するとき、テキスト・クエリに基づいて生成される構造化クエリは、いくつかの文法トークンと、エッジ206またはエッジ・タイプに対するいくつかのソーシャル・グラフ・トークンと、ユーザ・ノード202またはコンセプト・ノード204に対するいくつかのソーシャル・グラフ・トークンとを含めた、様々なクエリ・トークンを含むことが予想される。しかし、解析によってノードに合致された語句が多すぎる場合、さもなければ、ノードに対応するクエリ・トークンを相対的に多数含む構造化クエリが解析によって生成された場合は、これらのノードのいくつかは、照会元ユーザの照会意図に合致しない誤った合致である可能性が高い。言い換えれば、構造化クエリの示唆が、過多なノードへの参照を含む場合、構造化クエリは低品質である可能性が高い。高いエンティティ多数性コスト(すなわち、他のクエリ・トークンに対して相対的な、ノードに対応するソーシャル・グラフ・トークンの挿入に関連付けられているコスト)を有する構造化クエリは、それらが低品質であることを示し、したがって、高いエンティティ多数性コストは、低い品質スコアと相関する。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリにおける、ノードに対応するソーシャル・グラフ・トークンの数を決定することができる。次いで、ソーシャル・ネットワーキング・システム160は、構造化クエリにおけるソーシャル・グラフ・トー
クンの数に基づいて、エンティティ多数性コストを計算することができる。限定によってではなく例として、テキスト・クエリ「girls i have dated from stanford(私がデートしたことのある、スタンフォードからの女の人)」に対して、ソーシャル・ネットワーキング・システム160は、「People from
Stanford,California who like the’Girls I Have Dated’page(「私がデートしたことのある女の人」ページに「いいね」の表明を示した、カリフォルニア州スタンフォードからの人々)」などの構造化クエリを生成する場合がある。ここで、構造化クエリは、都市[Stanford,California]およびページ[Girls I Have Dated]のソーシャル・グラフ・トークンを含み、これらの各々は、ソーシャル・グラフ200の特定のコンセプト・ノード204に対応する。よって、Nグラム「from stanford」は、文法モデルによって、クエリ・トークン[People from][Stanford,California]に合致されており、Nグラム「girls i have dated」は、ページ[Girls I Have Dated]に対応するコンセプト・ノード204に対するソーシャル・グラフ・トークンに合致されている(これ自体は低品質の合致であるかもしれないことに留意されたい)。テキスト・クエリの長さに対して、構造化クエリは、ノードに対する多数のソーシャル・グラフ・トークンを含む。さらに、単一のトークン[Girls I Have Dated]が、非構造化テキスト・クエリの大きい部分に合致されている。よって、クエリを生成するために挿入される、ノードに対するソーシャル・グラフ・トークンの数が相対的に多いので、この構造化クエリには高いエンティティ多数性コストが関連し、このことは、これが相対的に低品質の構造化クエリであることを示す。本開示は構造化クエリの品質スコアを特定の方式で計算することを記述するが、本開示は構造化クエリの品質スコアを任意の適切な方式で計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、言語モデル・スコアに基づいて、構造化クエリの品質スコアを計算することができる。言語モデル・スコアは、構造化クエリのクエリ・トークンと比較された、元のテキスト・クエリの識別された語句に関して計算され得る。特定の構造化クエリを生成した後、ソーシャル・ネットワーキング・システム160は、構造化クエリにおける各クエリ・トークンおよびそれに近接するクエリ・トークン(例えば前または後のトークン)を、これらのクエリ・トークンに対応する元のテキスト・クエリからの語句のシーケンスに基づいて、分析することができる。次いで、トークンが元のテキスト・クエリからのシーケンスにおける近接トークンの1つまたは複数と共に現れる確率が分析されてよい。元のテキスト・クエリにおける近接クエリ・トークンと共に現れる可能性の低いクエリ・トークンを文法モデルが挿入した場合は、構造化クエリは低品質である可能性が高い。低い言語モデル・スコアを有する(すなわち、共に現れる確率の低いクエリ・トークンがある)構造化クエリは、それらが低品質であることを示し、したがって、低い言語モデル・スコアは、低い品質スコアと相関する。限定によってではなく例として、ソーシャル・ネットワーキング・システム160は、特定のクエリ・トークンが元のクエリからの特定の近接する語句とペアにされる確率pを決定することができる。この計算は、元のテキスト・クエリにおける語句のシーケンスを考慮に入れることができる。よって、特定の解析が特定のクエリ・トークン・ペアリングに対応する確率は、p=(t|t,...,t)として計算されてよく、ここで、tは分析対象のクエリ・トークンであり、t,...,tは、元のテキスト・クエリにおける近接クエリ・トークン2〜xである。次いで、各クエリ・トークンについての個別の確率を使用して、構造化クエリの全体的な言語モデル・スコアを決定することができる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリの各クエリ・トークンにつき、そのクエリ・トークンが元のテキスト・クエリにおける近接クエリ・トークンと共に現れる確率を決定することができる。次いで、ソーシャル・ネットワーキング・システム160は、クエリ・トークンについての確率に
基づいて、言語モデル・スコアを計算することができる。限定によってではなく例として、テキスト・クエリ「girls i have dated」に対して、ソーシャル・ネットワーキング・システム160は、「Female users I have who use the Dating app(デート・アプリを使用する、私が有する女性ユーザ)」などの構造化クエリを生成する場合があり、Dating appは、エンティティタイプ[application]のオンライン・ソーシャル・ネットワークに関連付けられている仮定のアプリケーションである(すなわち、これは非終端トークン[application]に対応する)。クエリ・トークン[Dating app]についての確率を計算するために、次いでソーシャル・ネットワーキング・システム160は、元のテキスト・クエリにおける近接する語句に対応する、構造化クエリからの他のクエリ・トークンを分析することができる。この場合、ソーシャル・ネットワーキング・システム160は、クエリ・トークン[Female]、[I]、および[have](元のテキスト・クエリからの語句「girls」、「i」、および「have」にそれぞれ対応する)を、クエリ・トークン[Dating app]と共に使用する確率(または、非終端トークン[application]を使用する確率)を決定することができる。この確率は、p=([Dating app]|([Female],[I],[have]))として計算されてよく、または、前のクエリ・トークン[Female],[I],および[have]が与えられた場合にクエリ・トークン[Dating app]を挿入する確率として計算されてよい(別法として、確率は、p=([application]|([Female],[I],[have]))として計算されてもよい)。この場合、クエリ・トークン[Female]、[I]、および[have]がソーシャル・グラフ・トークン[Dating app]の前に使用される確率は低い可能性があり、よって、この構造化クエリは、相対的に低い言語モデル・スコアを有することになり、このことは、これが相対的に低品質の構造化クエリであることを示す。本開示は構造化クエリの品質スコアを特定の方式で計算することを記述するが、本開示は構造化クエリの品質スコアを任意の適切な方式で計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリのエンティティ挿入コストに基づいて、構造化クエリの品質スコアを計算することができる。特定のテキスト・クエリを解析するとき、テキスト・クエリにおける語句(すなわち、テキスト・クエリにおけるNグラム)は、生成された構造化クエリにおけるクエリ・トークンにできるだけ近く合致すべきである。よって、語句の変更または語句の追加は、その特定のクエリ・トークンを生成するコストを増加させ、したがって、そのような修正されたトークンを含む構造化クエリは、低品質である可能性がある。高いエンティティ挿入コスト(すなわち、テキスト・クエリからの語句に挿入または修正を加えて特定のクエリ・トークンに合致させることに関連付けられているコスト)を有する構造化クエリは、それらが低品質である可能性があることを示し、したがって、高いエンティティ挿入コストは、低い品質スコアと相関する。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリにおける各ソーシャル・グラフ・トークンにつき、ソーシャル・グラフ・トークンをそれに対応するNグラムと合致させるために文法によって挿入された語句の数を決定することができる。限定によってではなく例として、テキスト・クエリ「girls who like dating(デートに「いいね」の表明を示した女の人)」に対して、ソーシャル・ネットワーキング・システム160は、構造化クエリ「Female users who like the ’Dating in
Palo Alto’app(「パロアルトでデート」アプリに「いいね」の表明を示した女性ユーザ)」を生成する場合がある。よって、テキスト・クエリからの語句「dating」が文法モデルによって解析されて、[Dating in Palo Alto]のクエリ・トークン(これは、アプリについての特定のコンセプト・ノード204に対応し得る)に合致された。しかし、語句「dating」をこのクエリ・トークンに合致させるために、ソーシャル・ネットワーキング・システム160は、クエリ・トークン
[Dating in Palo Alto]と合致するように追加の語句「in Palo Alto」を挿入しなければならなかった。よって、テキスト・クエリからのNグラムを構造化クエリにおけるクエリ・トークンに合致させるために文法モデルによって挿入された語句の数が相対的に多いので、この構造化クエリには高いエンティティ挿入コストが関連し、このことは、これが相対的に低品質の構造化クエリであることを示す。本開示は構造化クエリの品質スコアを特定の方式で計算することを記述するが、本開示は構造化クエリの品質スコアを任意の適切な方式で計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリの1つまたは複数を照会元ユーザに送ることができる。限定によってではなく例として、構造化クエリが生成された後、ソーシャル・ネットワーキング・システム160は、構造化クエリの1つまたは複数を、応答(AJAXまたは他の技法を利用できる)としてユーザのクライアント・システム130に送ることができ、この応答は、例えば、参照されるソーシャル・グラフ要素の名前(名前ストリング)、他のクエリ制限(例えばブール演算子など)、ならびに、場合によっては、参照されるソーシャル・グラフ要素に関連付けられている他のメタデータを含むことができる。照会元ユーザのクライアント・システム130上のウェブ・ブラウザ132は、図4A〜図4Bに示されるように、送られた構造化クエリをドロップダウン・メニュー300において表示することができる。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、フィルタリング後の第1のセットからの構造化クエリの1つまたは複数を、第1の/照会元ユーザに送ることができる。第1のユーザに送られる各構造化クエリは、しきい値品質スコア以上の品質スコアを有するものとすることができる。このようにすれば、低品質の構造化クエリがフィルタリングによって除去される(すなわち、ユーザに対して生成される構造化クエリのセットから除去される)ことが可能である。次いで、フィルタリング後に残った構造化クエリ(もしあれば)は、ランク付けされてよく、次いでこれらの1つまたは複数が照会元ユーザに送られてよい。特定の実施形態では、フィルタリング後に残った構造化クエリがしきい値数よりも少ない場合は、ソーシャル・ネットワーキング・システム160は、テキスト・クエリに基づいてウェブ検索クエリを生成することができる。このようにすれば、文法モデルが関連性のあるクエリを作成できなかった場合でも、照会元ユーザには、検索を実施するためのオプションがなお残される。限定によってではなく例として、テキスト・クエリ「girls i have dated」に対して、ソーシャル・ネットワーキング・システム160は、示唆クエリとして照会元ユーザに送るのに十分な品質の構造化クエリを、ごく少数しか、さらには1つも生成しない場合がある。前述のように、このテキスト・クエリの解析は様々な低品質の構造化クエリを作成することがあり、これらの各々は、ソーシャル・ネットワーキング・システム160によってフィルタリングによって除去されてよい。したがって、ソーシャル・ネットワーキング・システム160は、代わりに、例えば「’girls i have dated’をウェブで検索する」など、ウェブ検索を実施するための示唆クエリを送ることができる。ユーザがこの示唆クエリを選択した場合、クエリは適切なAPIを通じてウェブ検索エンジン(例えば、BING、GOOGLEなど)に送信されてよく、そこで標準的なストリングマッチング検索が実施されてよい。次いで、結果が、照会元ユーザへの表示に向けてソーシャル・ネットワーキング・システム160に(例えばAPIを通じて)送り返されてよい。別法として、照会元ユーザがウェブ検索オプションを選択したとき、ユーザのウェブ・ブラウザ132が検索エンジンのウェブページにリダイレクトされてもよい。特定の実施形態では、送られたクエリは、例えば前述のように前に決定されたランクなどに基づいて、ランク付けされた順序で照会元ユーザに提示されてよい。よりよいランキングを有する構造化クエリは、より目立つ位置で提示されるものとすることができる。さらに、特定の実施形態では、しきい値ランクよりも上の構造化クエリのみが、照会元ユーザに対して送信または表示されてもよい。限定によってではなく例として、図4A〜図4Bに示されるように、構造化クエリは、ドロップダウン・メニュー300において照会元ユーザに提示されてよく、高くラン
ク付けされる構造化クエリほどメニューの上部に提示され、低くランク付けされる構造化クエリほど、ランクの高い順にメニューにおいて下に提示されてよい。図4A〜図4Bに示される例では、上位にランク付けされる7つのクエリのみが、ユーザに対して送信および表示される。しかし、これらの例で、ユーザに送るために利用可能な構造化クエリが7つ未満である場合は(例えば、いくつかが低品質によりフィルタリングによって除去されたため)、利用可能な構造化クエリのみが送られてよい。さらに、構造化クエリが7つ未満のとき、ソーシャル・ネットワーキング・システム160は、照会元ユーザに送られる示唆クエリのセットに、ウェブ検索クエリの示唆を含めることができる。特定の実施形態では、構造化クエリにおける1つまたは複数の参照が、特定のソーシャル・グラフ要素に対するその対応を示すために強調表示されてよい(例えば、輪郭付き、下線付き、丸囲み、太字、イタリック体、色付き、点灯、オフセット、大文字)。限定によってではなく例として、図4A〜図4Bに示されるように、「Stanford University」および「Stanford,California」への参照が、構造化クエリにおいて強調表示(輪郭付け)されて、それが特定のコンセプト・ノード204に対応することが示される。同様に、ドロップダウン・メニュー300において提示される構造化クエリにおける「Friends」、「like」、「work at」、および「go to」への参照もまた強調表示されて、それらが特定のエッジ206に対応することが示されてよい。本開示は特定の構造化クエリを特定の方式で送ることを記述するが、本開示は任意の適切な構造化クエリを任意の適切な方式で送ることを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、構造化クエリのうちの1つの選択を照会元ユーザから受け取ることができる。別法として、ソーシャル・ネットワーキング・システム160は、いくつかのコンテキストで、システムによって自動的に選択されたクエリ(例えばデフォルト選択)として、構造化クエリを受け取ることもできる。受け取られた構造化クエリにおいて参照されるノードおよびエッジは、選択されたノードおよび選択されたエッジとしてそれぞれ参照され得る。限定によってではなく例として、照会元ユーザのクライアント・システム130上のウェブ・ブラウザ132は、図4A〜図4Bに示されるように、送信された構造化クエリをドロップダウン・メニュー300において表示することができ、次いでユーザは、クリックするかまたは他の方法で選択して(例えば、単に自分のキーボード上で「enter」をキー入力することによって)、ユーザがソーシャル・ネットワーキング・システム160に実行させたい特定の構造化クエリを示すことができる。特定の構造化クエリが選択されると、ユーザのクライアント・システム130は、選択された特定の構造化クエリを実行するよう、ソーシャル・ネットワーキング・システム160に呼出しを行うかまたは他の方法で命令することができる。限定によってではなく例として、特定の構造化クエリの選択に応答して、ソーシャル・ネットワーキング・システム160は、構造化クエリに基づいてクエリ・コマンドを生成することができ、次いで、このクエリ・コマンドは1つまたは複数のデータ・ストア164に送られて、クエリ・コマンドの制約に合致するコンテンツ・オブジェクトが検索されてよい。本開示は特定の構造化クエリの選択を特定の方式で受け取ることを記述するが、本開示は任意の適切な構造化クエリの選択を任意の適切な方式で受け取ることを企図する。
図5は、オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリングするための例示的な方法500を示す。方法はステップ510で開始することができ、ソーシャル・ネットワーキング・システム160は、複数のノードと、ノード同士をつなげる複数のエッジ206とを備える、ソーシャル・グラフ200にアクセスすることができる。ノードは、第1のノード202と、複数の第2のノード(1つまたは複数のユーザ・ノード202、コンセプト・ノード204、またはこれらの任意の組合せ)を含むことができる。ステップ520で、ソーシャル・ネットワーキング・システム160は、非構造化テキスト・クエリを第1のユーザから受け取ることができる。テキスト・クエリは
、1つまたは複数のNグラムを含むことができる。ステップ530で、ソーシャル・ネットワーキング・システム160は、テキスト・クエリに基づいて、構造化クエリの第1のセットを生成することができる。第1のセットにおける各構造化クエリは、文脈自由文法モデルの識別された文法に対応するものとすることができる。各構造化クエリはまた、1つもしくは複数の文法トークン、または1つもしくは複数のソーシャル・グラフ・トークンを含むことができる。各ソーシャル・グラフ・トークンは、複数のノードのうちの1つのノード、または複数のエッジのうちの1つのエッジに対応するものとすることができる。ステップ540で、ソーシャル・ネットワーキング・システム160は、各構造化クエリにつき、テキスト・クエリおよび構造化クエリに基づいて品質スコアを計算することができる。品質スコアは、本明細書に記載の任意の適切な方式で計算されてよい。ステップ550で、ソーシャル・ネットワーキング・システム160は、第1のセットをフィルタリングして、しきい値品質スコア未満の品質スコアを有する各構造化クエリを第1のセットから除去することができる。ステップ560で、ソーシャル・ネットワーキング・システム160は、フィルタリング後の第1のセットからの構造化クエリの1つまたは複数を、第1のユーザに送ることができる。第1のユーザに送られる各構造化クエリは、しきい値品質スコア以上の品質スコアを有するものとすることができる。特定の実施形態は、適切な場合に、図5の方法の1つまたは複数のステップを繰り返すことができる。本開示は図5の方法の特定のステップが特定の順序で発生するものとして記述および図示するが、本開示は図5の方法の任意の適切なステップが任意の適切な順序で発生することを企図する。さらに、本開示は特定のコンポーネント、デバイス、またはシステムが図5の方法の特定のステップを実施することを記述および図示するが、本開示は任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組合せが図5の方法の任意の適切なステップを実施することを企図する。
システムおよび方法
図6は、例示的なコンピュータ・システム600を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム600が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム600が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム600上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム600の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができる。その上、コンピュータ・システムへの言及は、適切な場合には、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つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ602を想定している。限定ではなく、例として、プロセッサ602は、1つまたは複数の命令キャッシュ、1つまたは複数のデータ・キャッシュ、および1つまたは複数の変換ルックアサイド・バッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ604またはストレージ606内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ602によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ602において実行される命令が機能する際に基づくメモリ604もしくはストレージ606内のデータのコピー、プロセッサ602において実行される後続の命令によるアクセスのための、もしくはメモリ604もしくはストレージ606への書き込みのためのプロセッサ602において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ602による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ602のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ602は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ602を想定している。適切な場合には、プロセッサ602は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ602を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
特定の実施形態においては、メモリ604は、プロセッサ602が実行するための命令、またはプロセッサ602が機能する際に基づくデータを記憶するためのメイン・メモリ
を含む。限定ではなく、例として、コンピュータ・システム600は、命令をストレージ606または別のソース(たとえば、別のコンピュータ・システム600など)からメモリ604にロードすることができる。次いでプロセッサ602は、命令をメモリ604から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ602は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ602は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ602は、それらの結果のうちの1つまたは複数をメモリ604に書き込むことができる。特定の実施形態においては、プロセッサ602は、(ストレージ606またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ604内の命令のみを実行し、(ストレージ606またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ604内のデータ上でのみ機能する。1つまたは複数のメモリ・バス(それらは各々、アドレス・バスおよびデータ・バスを含むことができる)は、プロセッサ602をメモリ604に結合することができる。バス612は、以降で記述されているような1つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ602とメモリ604との間に常駐し、プロセッサ602によって要求されるメモリ604へのアクセスを容易にする。特定の実施形態においては、メモリ604は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ604は、適切な場合には、1つまたは複数のメモリ604を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
特定の実施形態においては、ストレージ606は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ606は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ606は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ606は、適切な場合には、コンピュータ・システム600の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ606は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ606は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ606を想定している。ストレージ606は、適切な場合には、プロセッサ602とストレージ606との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ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を想定している。限定ではなく、例として、コンピュータ・システム600は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータ・システム600は、ワイヤレスPAN(WPAN)(たとえば、ブルートゥースWPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切なワイヤレス・ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム600は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース610を含むことができる。通信インタフェース610は、適切な場合には、1つまたは複数の通信インタフェース610を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
特定の実施形態においては、バス612は、コンピュータ・システム600のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス612は、アクセラレイティッド・グラフィックス・ポート(AGP)もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ(EISA)バス、フロントサイド・バス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリー・スタンダード・アーキテ
クチャ(ISA)バス、インフィニバンド・インターコネクト、ローピンカウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス612は、適切な場合には、1つまたは複数のバス612を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
本明細書においては、1つまたは複数の非一時的コンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブル・ゲート・アレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的コンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的コンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書における各々の実施形態を、特定のコンポーネント、要素、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能に
されている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。

Claims (20)

  1. コンピューティング・デバイスの1以上のプロセッサによって実行される方法であって、
    前記1以上のプロセッサが、第1のユーザが入力したテキスト・クエリを前記第1のユーザのクライアント・デバイスから受け取る工程と、
    前記1以上のプロセッサが、前記テキスト・クエリに基づいて構造化クエリのセットを生成する工程であって、前記セットにおける各構造化クエリは文脈自由文法モデルの1つの文法に対応し、各構造化クエリは、前記文脈自由文法モデルの1つの文法によって生成された自然言語ストリングに基づき、かつ、1以上のトークンを含み、各構造化クエリの前記1以上のトークンの各々は、オンライン・ソーシャル・ネットワークに関連付けられている1以上のオブジェクトに対応する、工程と、
    前記1以上のプロセッサが、前記セットをフィルタリングして、1以上の構造化クエリを前記セットから除去する工程であって、除去された構造化クエリの各々は、しきい値品質スコア未満の品質スコアを有する、工程と、
    前記1以上のプロセッサが、前記フィルタリング後のセットからの前記構造化クエリのうちの1以上を表示のために前記第1のユーザのクライアント・デバイスに送る工程と、を備える方法。
  2. 前記1以上のプロセッサが、送信された前記構造化クエリのうちの1つの選択を前記第1のユーザのクライアント・デバイスから受け取る工程と、
    前記1以上のプロセッサが、選択された前記構造化クエリに合致する1以上の検索結果を生成する工程であって、前記1以上の検索結果の各々は、前記オンライン・ソーシャル・ネットワークに関連付けられている1以上のオブジェクトに対応しており、各オブジェクトは、前記オンライン・ソーシャル・ネットワーク内において、選択された前記構造化クエリの前記トークンのうちの1つに関連付けられている前記オブジェクトのうちの1つにつながっている、工程とをさらに備える、請求項1に記載の方法。
  3. 送信された構造化クエリの各々について、前記構造化クエリを生成するために使用された前記文法は、前記オンライン・ソーシャル・ネットワークに関連付けられている1以上の識別されたオブジェクトに対応する1以上のトークンを含み、識別された前記オブジェ
    クトの各々は、前記テキスト・クエリの少なくとも一部に対応する、請求項1に記載の方法。
  4. 前記1以上のプロセッサが、複数のノードと前記ノード同士をつなげている複数のエッジとを備えるソーシャル・グラフにアクセスする工程であって、前記ノードのうちの2つのノード間の前記エッジの各々が前記2つのノード間の単一分離度を表しており、前記ノードは、
    前記第1のユーザに対応する第1のノードと、
    各々が前記オンライン・ソーシャル・ネットワークに関連付けられている複数のオブジェクトに対応する、複数の第2のノードとを含む、工程をさらに備える、請求項1に記載の方法。
  5. 各構造化クエリの前記1以上のトークンは、1以上の文法トークンまたは1以上のソーシャル・グラフ・トークンを含み、各ソーシャル・グラフ・トークンは、前記複数のノードのうちの1つのノードまたは前記複数のエッジのうちの1つのエッジに対応する、請求項4に記載の方法。
  6. 前記1以上のプロセッサが、前記セットにおける各構造化クエリについて、前記テキスト・クエリおよび前記構造化クエリに基づいて品質スコアを計算する工程をさらに備え、各構造化クエリの前記1以上のトークンは、1以上の文法トークンまたは1以上のソーシャル・グラフ・トークンを含み、前記第1のユーザに送信された各構造化クエリは、前記しきい値品質スコア以上の品質スコアを有する、請求項1に記載の方法。
  7. 各構造化クエリについて、品質スコアを計算する前記工程は、
    前記テキスト・クエリにおけるNグラムの数である第1の数を決定する工程と、
    前記構造化クエリにおけるクエリ・トークンの数である第2の数を決定する工程と、
    前記第1の数の前記第2の数に対する比に基づいて正規化済みコストを計算する工程とを備え、前記品質スコアは、前記正規化済みコストに基づく、請求項6に記載の方法。
  8. 各構造化クエリについて、品質スコアを計算する前記工程は、
    前記テキスト・クエリにおけるNグラムの数である第1の数を決定する工程と、
    前記構造化クエリにおける文法トークンの数である第2の数を決定する工程と、
    前記構造化クエリにおけるソーシャル・グラフ・トークンの数である第3の数を決定する工程と、
    前記第1の数によって正規化された前記第3の数に対する前記第2の数の比に基づいて文法挿入コストを計算する工程とを備え、前記品質スコアは、前記文法挿入コストに基づく、請求項6に記載の方法。
  9. 各構造化クエリについて、品質スコアを計算する前記工程は、
    前記構造化クエリにおける前記オンライン・ソーシャル・ネットワークに関連付けられているオブジェクトに対応するソーシャル・グラフ・トークンの数である第1の数を決定する工程と、
    前記第1の数に基づいてエンティティ多数性コストを計算する工程とを備え、前記品質スコアは、前記エンティティ多数性コストに基づく、請求項6に記載の方法。
  10. 各構造化クエリについて、品質スコアを計算する前記工程は、
    前記構造化クエリの各クエリ・トークンであって前記テキスト・クエリの第1の語句に対応するクエリ・トークンごとに、前記クエリ・トークンが、前記テキスト・クエリの1以上の第2の語句に対応する前記構造化クエリの1以上の他のクエリ・トークンとペアになる確率を決定する工程であって、前記1以上の第2の語句が前記テキスト・クエリにお
    いて前記第1の語句に近接している、工程と、
    各クエリ・トークンについての前記確率に基づいて言語モデル・スコアを計算する工程と、を備え、前記品質スコアは前記言語モデル・スコアに基づく、請求項6に記載の方法。
  11. 前記テキスト・クエリは1以上のNグラムを含み、各ソーシャル・グラフ・トークンは前記Nグラムの少なくとも1つに対応しており、
    前記1以上のプロセッサが、各ソーシャル・グラフ・トークンについて、前記ソーシャル・グラフ・トークンをその対応するNグラムに合致させるように前記文法によって挿入された語句の数である第1の数に基づいてエンティティ挿入コストを計算し、前記品質スコアは前記エンティティ挿入コストに基づく、請求項1に記載の方法。
  12. 前記セットをフィルタリングした後に残った構造化クエリの数がしきい値数よりも少ない場合は、前記テキスト・クエリに基づいてウェブ検索クエリを生成する、請求項1に記載の方法。
  13. 前記1以上のプロセッサが、前記オンライン・ソーシャル・ネットワークに関連付けられている1以上のオブジェクトを識別する工程であって、識別された前記オブジェクトの各々は前記テキスト・クエリの少なくとも一部に対応する、工程と、
    前記1以上のプロセッサが、複数の文法を含む文脈自由文法モデルにアクセスする工程であって、各文法は1以上のトークンを含み、各トークンは文法トークンまたはソーシャル・グラフ・トークンである、工程と、
    前記1以上のプロセッサが、1以上の文法を識別する工程であって、識別された各文法は、識別された前記オブジェクトのうちの少なくとも1つに対応する1以上のクエリ・トークンを有する、工程と、をさらに備える、請求項1に記載の方法。
  14. 前記1以上のプロセッサが、識別された各文法について第1のスコアを決定する工程をさらに備え、
    前記セットにおける各構造化クエリは、文法しきい値スコアよりも高い第1のスコアを有する識別された文法に対応し、前記構造化クエリは、識別された前記文法によって生成されたストリングに基づき、各構造化クエリは、対応する識別された前記文法のトークンを含み、前記構造化クエリの前記トークンの1以上は、識別された前記オブジェクトのうちの少なくとも1つに対応する、請求項13に記載の方法。
  15. 前記テキスト・クエリは1以上のNグラムを含み、識別された前記オブジェクトの各々は前記Nグラムのうちの少なくとも1つに対応する、請求項13に記載の方法。
  16. 1以上のオブジェクトを識別する前記工程は、
    オブジェクトに対応する各Nグラムについて、第2のスコアを決定する工程であって、各Nグラムについての前記第2のスコアは、前記Nグラムがオブジェクトに対応する確率である、工程と、
    オブジェクトしきい値スコアよりも高い第2のスコアを有するオブジェクトを選択する工程であって、識別された前記オブジェクトの各々は前記Nグラムの少なくとも1つに対応する、工程と、を備える、請求項15に記載の方法。
  17. 前記構造化クエリは、前記1以上のプロセッサによって、前記第1のユーザに表示するためのクエリ・フィールドに関連付けられているインタフェースに送られる、請求項1に記載の方法。
  18. 前記テキスト・クエリは、前記オンライン・ソーシャル・ネットワークに関連付けられ
    ているウェブページまたはネイティブ・アプリケーションのクエリ・フィールドにおいて前記第1のユーザによって入力される、請求項1に記載の方法。
  19. ソフトウェアを具現化する1以上の非一時的コンピュータ可読記憶媒体であって、前記ソフトウェアは、実行されたとき、
    第1のユーザが入力したテキスト・クエリを前記第1のユーザのクライアント・デバイスから受け取る工程と、
    前記テキスト・クエリに基づいて構造化クエリのセットを生成する工程であって、前記セットにおける各構造化クエリは文脈自由文法モデルの1つの文法に対応し、各構造化クエリは、前記文脈自由文法モデルの1つの文法によって生成された自然言語ストリングに基づき、かつ、1以上のトークンを含み、各構造化クエリの前記1以上のトークンの各々は、オンライン・ソーシャル・ネットワークに関連付けられている1以上のオブジェクトに対応する、工程と、
    前記セットをフィルタリングして、1以上の構造化クエリを前記セットから除去する工程であって、除去された構造化クエリの各々は、しきい値品質スコア未満の品質スコアを有する、工程と、
    前記フィルタリング後のセットからの前記構造化クエリのうちの1以上を表示のために前記第1のユーザのクライアント・デバイスに送る工程と、が行われるように構成される、記憶媒体。
  20. 1以上のプロセッサと、前記プロセッサによって実行可能な命令を備え、前記プロセッサに結合されたメモリと、を備えるシステムであって、前記プロセッサは、前記命令が実行されたとき、
    第1のユーザが入力したテキスト・クエリを前記第1のユーザのクライアント・デバイスから受け取る工程と、
    前記テキスト・クエリに基づいて構造化クエリのセットを生成する工程であって、前記セットにおける各構造化クエリは文脈自由文法モデルの1つの文法に対応し、各構造化クエリは、前記文脈自由文法モデルの1つの文法によって生成された自然言語ストリングに基づき、かつ、1以上のトークンを含み、各構造化クエリの前記1以上のトークンの各々は、オンライン・ソーシャル・ネットワークに関連付けられている1以上のオブジェクトに対応する、工程と、
    前記セットをフィルタリングして、1以上の構造化クエリを前記セットから除去する工程であって、除去された構造化クエリの各々は、しきい値品質スコア未満の品質スコアを有する、工程と、
    前記フィルタリング後のセットからの前記構造化クエリのうちの1以上を表示のために前記第1のユーザのクライアント・デバイスに送る工程と、が行われるように構成される、システム。
JP2016136693A 2013-05-08 2016-07-11 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング Active JP6203913B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/890,070 US9223898B2 (en) 2013-05-08 2013-05-08 Filtering suggested structured queries on online social networks
US13/890,070 2013-05-08

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016512983A Division JP5970624B1 (ja) 2013-05-08 2014-05-05 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017165566A Division JP6435383B2 (ja) 2013-05-08 2017-08-30 オンライン・ソーシャル・ネットワーク上の示唆クエリをフィルタリング

Publications (2)

Publication Number Publication Date
JP2016194949A JP2016194949A (ja) 2016-11-17
JP6203913B2 true JP6203913B2 (ja) 2017-09-27

Family

ID=51865614

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2016512983A Active JP5970624B1 (ja) 2013-05-08 2014-05-05 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング
JP2016136693A Active JP6203913B2 (ja) 2013-05-08 2016-07-11 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング
JP2017165566A Active JP6435383B2 (ja) 2013-05-08 2017-08-30 オンライン・ソーシャル・ネットワーク上の示唆クエリをフィルタリング

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016512983A Active JP5970624B1 (ja) 2013-05-08 2014-05-05 オンライン・ソーシャル・ネットワーク上の構造化クエリの示唆をフィルタリング

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017165566A Active JP6435383B2 (ja) 2013-05-08 2017-08-30 オンライン・ソーシャル・ネットワーク上の示唆クエリをフィルタリング

Country Status (7)

Country Link
US (3) US9223898B2 (ja)
JP (3) JP5970624B1 (ja)
KR (3) KR101948093B1 (ja)
AU (3) AU2014262958B2 (ja)
CA (2) CA2921916C (ja)
IL (3) IL242417A (ja)
WO (1) WO2014182608A1 (ja)

Families Citing this family (163)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US10515147B2 (en) * 2010-12-22 2019-12-24 Apple Inc. Using statistical language models for contextual lookup
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9747895B1 (en) * 2012-07-10 2017-08-29 Google Inc. Building language models for a user in a social network from linguistic information
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9424359B1 (en) * 2013-03-15 2016-08-23 Twitter, Inc. Typeahead using messages of a messaging platform
US9223898B2 (en) 2013-05-08 2015-12-29 Facebook, Inc. Filtering suggested structured queries on online social networks
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US20150026153A1 (en) 2013-07-17 2015-01-22 Thoughtspot, Inc. Search engine for information retrieval system
US10185748B1 (en) * 2013-08-22 2019-01-22 Evernote Corporation Combining natural language and keyword search queries for personal content collections
US9612996B1 (en) * 2013-09-11 2017-04-04 Google Inc. Providing suggestions to a user based on social activity patterns
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US20150199431A1 (en) * 2014-01-16 2015-07-16 CrowdCare Corporation System and Method of Search for Improving Relevance Based on Device Parameters
US9336300B2 (en) 2014-01-17 2016-05-10 Facebook, Inc. Client-side search templates for online social networks
US10255320B1 (en) 2014-01-27 2019-04-09 Microstrategy Incorporated Search integration
US11921715B2 (en) 2014-01-27 2024-03-05 Microstrategy Incorporated Search integration
US11386085B2 (en) 2014-01-27 2022-07-12 Microstrategy Incorporated Deriving metrics from queries
US10635669B1 (en) 2014-01-27 2020-04-28 Microstrategy Incorporated Data engine integration and data refinement
US9836554B2 (en) * 2014-04-30 2017-12-05 Excalibur Ip, Llc Method and system for providing query suggestions including entities
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US20160148264A1 (en) * 2014-11-24 2016-05-26 Facebook, Inc. Searching for Offers and Advertisements on Online Social Networks
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10509832B2 (en) * 2015-07-13 2019-12-17 Facebook, Inc. Generating snippet modules on online social networks
US10853378B1 (en) * 2015-08-25 2020-12-01 Palantir Technologies Inc. Electronic note management via a connected entity graph
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
CN106776624B (zh) * 2015-11-23 2019-12-24 阿里巴巴集团控股有限公司 一种信息展示方法及装置
US10430407B2 (en) 2015-12-02 2019-10-01 International Business Machines Corporation Generating structured queries from natural language text
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
JP2017204018A (ja) * 2016-05-09 2017-11-16 富士通株式会社 検索処理方法、検索処理プログラムおよび情報処理装置
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10223464B2 (en) * 2016-08-04 2019-03-05 Facebook, Inc. Suggesting filters for search on online social networks
US20180052824A1 (en) * 2016-08-19 2018-02-22 Microsoft Technology Licensing, Llc Task identification and completion based on natural language query
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10102255B2 (en) * 2016-09-08 2018-10-16 Facebook, Inc. Categorizing objects for queries on online social networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10474748B2 (en) * 2016-11-14 2019-11-12 Sap Se Contextual natural language input processing in enterprise applications based on static and dynamic application parameters
US10162886B2 (en) * 2016-11-30 2018-12-25 Facebook, Inc. Embedding-based parsing of search queries on online social networks
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10846318B1 (en) * 2017-04-18 2020-11-24 Microstrategy Incorporated Natural language visualizations
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US11640436B2 (en) * 2017-05-15 2023-05-02 Ebay Inc. Methods and systems for query segmentation
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10691685B2 (en) 2017-06-03 2020-06-23 Apple Inc. Converting natural language input to structured queries
WO2019055549A1 (en) * 2017-09-12 2019-03-21 Schlumberger Technology Corporation TECHNIQUES FOR DATA SEARCH, ENRICHMENT AND CONSUMPTION USING RELATIONSHIPS OF EXPLORATION AND / OR PRODUCTION ENTITIES
US11734286B2 (en) 2017-10-10 2023-08-22 Thoughtspot, Inc. Automatic database insight analysis
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US11157564B2 (en) 2018-03-02 2021-10-26 Thoughtspot, Inc. Natural language question answering systems
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
EP3550444B1 (en) 2018-04-02 2023-12-27 Thoughtspot Inc. Query generation based on a logical data model
US10782986B2 (en) 2018-04-20 2020-09-22 Facebook, Inc. Assisting users with personalized and contextual communication content
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11544239B2 (en) 2018-11-13 2023-01-03 Thoughtspot, Inc. Low-latency database analysis using external data sources
US11580147B2 (en) 2018-11-13 2023-02-14 Thoughtspot, Inc. Conversational database analysis
US11023486B2 (en) 2018-11-13 2021-06-01 Thoughtspot, Inc. Low-latency predictive database analysis
US11416477B2 (en) 2018-11-14 2022-08-16 Thoughtspot, Inc. Systems and methods for database analysis
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11334548B2 (en) 2019-01-31 2022-05-17 Thoughtspot, Inc. Index sharding
US11195050B2 (en) 2019-02-05 2021-12-07 Microstrategy Incorporated Machine learning to generate and evaluate visualizations
CN109885180B (zh) 2019-02-21 2022-12-06 北京百度网讯科技有限公司 纠错方法和装置、计算机可读介质
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11928114B2 (en) 2019-04-23 2024-03-12 Thoughtspot, Inc. Query generation based on a logical data model with one-to-one joins
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11442932B2 (en) * 2019-07-16 2022-09-13 Thoughtspot, Inc. Mapping natural language to queries using a query grammar
US10970319B2 (en) 2019-07-29 2021-04-06 Thoughtspot, Inc. Phrase indexing
US11354326B2 (en) 2019-07-29 2022-06-07 Thoughtspot, Inc. Object indexing
US11200227B1 (en) 2019-07-31 2021-12-14 Thoughtspot, Inc. Lossless switching between search grammars
US11409744B2 (en) 2019-08-01 2022-08-09 Thoughtspot, Inc. Query generation based on merger of subqueries
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11614970B2 (en) 2019-12-06 2023-03-28 Microstrategy Incorporated High-throughput parallel data transmission
US11769496B1 (en) * 2019-12-12 2023-09-26 Amazon Technologies, Inc. Predictive deletion of user input
US11567965B2 (en) 2020-01-23 2023-01-31 Microstrategy Incorporated Enhanced preparation and integration of data sets
US11544272B2 (en) 2020-04-09 2023-01-03 Thoughtspot, Inc. Phrase translation for a low-latency database analysis system
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
WO2021227059A1 (zh) * 2020-05-15 2021-11-18 深圳市世强元件网络有限公司 一种基于多叉树的搜索词推荐方法及系统
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11580111B2 (en) 2021-04-06 2023-02-14 Thoughtspot, Inc. Distributed pseudo-random subset generation
US20240095105A1 (en) * 2022-09-20 2024-03-21 Sap Se Message query service and message generation for a social network

Family Cites Families (201)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06162097A (ja) * 1992-11-16 1994-06-10 Mitsutoyo Corp データベースの検索条件設定方式
WO1997026729A2 (en) 1995-12-27 1997-07-24 Robinson Gary B Automated collaborative filtering in world wide web advertising
US7631012B2 (en) 1997-05-22 2009-12-08 Computer Associates Think, Inc. System and method of operating a database
US7110993B2 (en) 1999-05-28 2006-09-19 Overture Services, Inc. System and method for influencing a position on a search result list generated by a computer network search engine
US6564213B1 (en) * 2000-04-18 2003-05-13 Amazon.Com, Inc. Search query autocompletion
US6539232B2 (en) 2000-06-10 2003-03-25 Telcontar Method and system for connecting mobile users based on degree of separation
US6957184B2 (en) 2000-07-20 2005-10-18 Microsoft Corporation Context free grammar engine for speech recognition system
US6766320B1 (en) 2000-08-24 2004-07-20 Microsoft Corporation Search engine with natural language-based robust parsing for user query and relevance feedback learning
US6983239B1 (en) 2000-10-25 2006-01-03 International Business Machines Corporation Method and apparatus for embedding grammars in a natural language understanding (NLU) statistical parser
US6714939B2 (en) * 2001-01-08 2004-03-30 Softface, Inc. Creation of structured data from plain text
DE60143677D1 (de) * 2001-05-25 2011-01-27 Endeca Technologies Inc Hierarchisches datengesteuertes navigationssystem und verfahren für informationswiderauffindung
US8095875B2 (en) 2001-06-22 2012-01-10 Krause Philip R Method and apparatus for consolidating network information
US7752326B2 (en) 2001-08-20 2010-07-06 Masterobjects, Inc. System and method for utilizing asynchronous client server communication objects
US8112529B2 (en) 2001-08-20 2012-02-07 Masterobjects, Inc. System and method for asynchronous client server session communication
US20090006543A1 (en) 2001-08-20 2009-01-01 Masterobjects System and method for asynchronous retrieval of information based on incremental user input
EP1442411A4 (en) 2001-09-30 2006-02-01 Realcontacts Ltd CONNECTING SERVICE
EA200400873A1 (ru) 2001-12-28 2005-12-29 Джеффри Джэймс Джонас Хранилище данных реального времени
JP4085156B2 (ja) * 2002-03-18 2008-05-14 独立行政法人情報通信研究機構 テキスト生成方法及びテキスト生成装置
US7539697B1 (en) 2002-08-08 2009-05-26 Spoke Software Creation and maintenance of social relationship network graphs
US7249123B2 (en) 2002-10-31 2007-07-24 International Business Machines Corporation System and method for building social networks based on activity around shared virtual objects
US7836391B2 (en) 2003-06-10 2010-11-16 Google Inc. Document search engine including highlighting of confident results
US8447775B2 (en) * 2003-06-13 2013-05-21 Microsoft Corporation Database query user interface to assist in efficient and accurate query construction
US7069308B2 (en) 2003-06-16 2006-06-27 Friendster, Inc. System, method and apparatus for connecting users in an online computer system based on their relationships within social networks
US20050091202A1 (en) 2003-10-22 2005-04-28 Thomas Kapenda J. Social network-based internet search engine
US20050125408A1 (en) 2003-11-20 2005-06-09 Beena Somaroo Listing service tracking system and method for tracking a user's interaction with a listing service
US20050131872A1 (en) 2003-12-16 2005-06-16 Microsoft Corporation Query recognizer
US7707122B2 (en) 2004-01-29 2010-04-27 Yahoo ! Inc. System and method of information filtering using measures of affinity of a relationship
US7158878B2 (en) 2004-03-23 2007-01-02 Google Inc. Digital mapping system
US20060218111A1 (en) 2004-05-13 2006-09-28 Cohen Hunter C Filtered search results
US7689452B2 (en) 2004-05-17 2010-03-30 Lam Chuck P System and method for utilizing social networks for collaborative filtering
WO2005116979A2 (en) 2004-05-17 2005-12-08 Visible Path Corporation System and method for enforcing privacy in social networks
US7788260B2 (en) 2004-06-14 2010-08-31 Facebook, Inc. Ranking search results based on the frequency of clicks on the search results by members of a social network who are within a predetermined degree of separation
US7454430B1 (en) 2004-06-18 2008-11-18 Glenbrook Networks System and method for facts extraction and domain knowledge repository creation from unstructured and semi-structured documents
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US8302164B2 (en) 2004-07-22 2012-10-30 Facebook, Inc. Authorization and authentication based on an individual's social network
US7809695B2 (en) 2004-08-23 2010-10-05 Thomson Reuters Global Resources Information retrieval systems with duplicate document detection and presentation functions
US7797732B2 (en) 2004-11-04 2010-09-14 Topeer Corporation System and method for creating a secure trusted social network
US7499940B1 (en) 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US7461059B2 (en) 2005-02-23 2008-12-02 Microsoft Corporation Dynamically updated search results based upon continuously-evolving search query that is based at least in part upon phrase suggestion, search engine uses previous result sets performing additional search tasks
US7451161B2 (en) 2005-04-28 2008-11-11 Friendster, Inc. Compatibility scoring of users in a social network
US7840589B1 (en) 2005-05-09 2010-11-23 Surfwax, Inc. Systems and methods for using lexically-related query elements within a dynamic object for semantic search refinement and navigation
US20080005064A1 (en) 2005-06-28 2008-01-03 Yahoo! Inc. Apparatus and method for content annotation and conditional annotation retrieval in a search context
WO2007002820A2 (en) 2005-06-28 2007-01-04 Yahoo! Inc. Search engine with augmented relevance ranking by community participation
CA2615659A1 (en) 2005-07-22 2007-05-10 Yogesh Chunilal Rathod Universal knowledge management and desktop search system
CA2631862C (en) 2005-12-07 2014-09-09 Networks In Motion, Inc. Method and system for a user input solution for a limited telecommunication device
US8027943B2 (en) 2007-08-16 2011-09-27 Facebook, Inc. Systems and methods for observing responses to invitations by users in a web-based social network
US7702685B2 (en) 2006-01-20 2010-04-20 Microsoft Corporation Querying social networks
US20070192293A1 (en) 2006-02-13 2007-08-16 Bing Swen Method for presenting search results
US9323867B2 (en) 2006-08-03 2016-04-26 Microsoft Technology Licensing, Llc Search tool using multiple different search engine types across different data sets
US8201107B2 (en) 2006-09-15 2012-06-12 Emc Corporation User readability improvement for dynamic updating of search results
US7636712B2 (en) 2006-11-14 2009-12-22 Microsoft Corporation Batching document identifiers for result trimming
US8005909B2 (en) 2006-11-16 2011-08-23 Onmobile Global Limited System and method for facilitating a ready social network
US8024328B2 (en) 2006-12-18 2011-09-20 Microsoft Corporation Searching with metadata comprising degree of separation, chat room participation, and geography
US7840538B2 (en) 2006-12-20 2010-11-23 Yahoo! Inc. Discovering query intent from search queries and concept networks
US9209995B2 (en) 2006-12-29 2015-12-08 Prodea Systems, Inc. Presence status notification from digital endpoint devices through a multi-services gateway device at the user premises
US20080183694A1 (en) 2007-01-31 2008-07-31 Daniel Cane Method and system presenting search results using relationship information
US7636713B2 (en) 2007-01-31 2009-12-22 Yahoo! Inc. Using activation paths to cluster proximity query results
US7680882B2 (en) 2007-03-06 2010-03-16 Friendster, Inc. Multimedia aggregation in an online social network
EP2137680A4 (en) 2007-03-15 2012-01-25 Olista Ltd SYSTEM AND METHOD FOR PROVIDING SERVICE OR ADDUCTION TO SOCIAL NETWORKS
US8713143B2 (en) 2007-04-27 2014-04-29 President And Fellows Of Harvard College Establishing a social network
US7783630B1 (en) 2007-06-29 2010-08-24 Emc Corporation Tuning of relevancy ranking for federated search
CN102016825A (zh) 2007-08-17 2011-04-13 谷歌公司 对社交网络对象进行排名
US8031595B2 (en) 2007-08-21 2011-10-04 International Business Machines Corporation Future location determination using social networks
US7788276B2 (en) 2007-08-22 2010-08-31 Yahoo! Inc. Predictive stemming for web search with statistical machine translation models
US20090094200A1 (en) 2007-10-05 2009-04-09 Yahoo! Inc. Method for Admission-controlled Caching
US8862622B2 (en) 2007-12-10 2014-10-14 Sprylogics International Corp. Analysis, inference, and visualization of social networks
US20090164929A1 (en) 2007-12-20 2009-06-25 Microsoft Corporation Customizing Search Results
US20090164408A1 (en) 2007-12-21 2009-06-25 Ilya Grigorik Method, System and Computer Program for Managing Delivery of Online Content
US20090171929A1 (en) 2007-12-26 2009-07-02 Microsoft Corporation Toward optimized query suggeston: user interfaces and algorithms
US8266587B2 (en) 2007-12-26 2012-09-11 International Business Machines Corporation Method using SLP packing with statements having both isomorphic and non-isomorphic expressions
US20090197681A1 (en) 2008-01-31 2009-08-06 Microsoft Corporation System and method for targeted recommendations using social gaming networks
US7853587B2 (en) 2008-01-31 2010-12-14 Microsoft Corporation Generating search result summaries
US8234193B2 (en) 2008-03-03 2012-07-31 Wildfire Interactive, Inc. Method and system for providing online promotions through a social network-based platform
US20090228296A1 (en) 2008-03-04 2009-09-10 Collarity, Inc. Optimization of social distribution networks
US8606721B1 (en) 2008-03-11 2013-12-10 Amazon Technologies, Inc. Implicit social graph edge strengths
US20090259646A1 (en) 2008-04-09 2009-10-15 Yahoo!, Inc. Method for Calculating Score for Search Query
US8645406B2 (en) 2008-04-11 2014-02-04 Microsoft Corporation Exploiting conditions to optimize expensive database queries
US20090265326A1 (en) 2008-04-17 2009-10-22 Thomas Dudley Lehrman Dynamic personal privacy system for internet-connected social networks
US8744976B2 (en) 2008-04-28 2014-06-03 Yahoo! Inc. Discovery of friends using social network graph properties
US20090271374A1 (en) 2008-04-29 2009-10-29 Microsoft Corporation Social network powered query refinement and recommendations
US20090276414A1 (en) 2008-04-30 2009-11-05 Microsoft Corporation Ranking model adaptation for searching
US8417698B2 (en) 2008-05-06 2013-04-09 Yellowpages.Com Llc Systems and methods to provide search based on social graphs and affinity groups
US8244727B2 (en) 2008-05-29 2012-08-14 Nokia Corporation Method, apparatus, and computer program product for content use assignment by exploiting social graph information
US8055673B2 (en) 2008-06-05 2011-11-08 Yahoo! Inc. Friendly search and socially augmented search query assistance layer
US8082278B2 (en) 2008-06-13 2011-12-20 Microsoft Corporation Generating query suggestions from semantic relationships in content
US8027990B1 (en) 2008-07-09 2011-09-27 Google Inc. Dynamic query suggestion
US8290924B2 (en) 2008-08-29 2012-10-16 Empire Technology Development Llc Providing answer to keyword based query from natural owner of information
US20100082695A1 (en) 2008-09-26 2010-04-01 Hardt Dick C Enterprise social graph and contextual information presentation
WO2010037031A2 (en) 2008-09-26 2010-04-01 Fwix, Inc. System and method for aggregating web feeds relevant to a geographical locale from multiple sources
US8316296B2 (en) * 2008-10-01 2012-11-20 Microsoft Corporation Phrase generation using part(s) of a suggested phrase
US8060492B2 (en) 2008-11-18 2011-11-15 Yahoo! Inc. System and method for generation of URL based context queries
US7934161B1 (en) 2008-12-09 2011-04-26 Jason Adam Denise Electronic search interface technology
US8145622B2 (en) 2009-01-09 2012-03-27 Microsoft Corporation System for finding queries aiming at tail URLs
US8412749B2 (en) 2009-01-16 2013-04-02 Google Inc. Populating a structured presentation with new values
US8140556B2 (en) 2009-01-20 2012-03-20 Oracle International Corporation Techniques for automated generation of queries for querying ontologies
US20100198917A1 (en) 2009-02-02 2010-08-05 Kota Enterprises, Llc Crowd formation for mobile device users
US8250053B2 (en) 2009-02-24 2012-08-21 Microsoft Corporation Intelligent enhancement of a search result snippet
US20100235354A1 (en) 2009-03-12 2010-09-16 International Business Machines Corporation Collaborative search engine system
US8145636B1 (en) 2009-03-13 2012-03-27 Google Inc. Classifying text into hierarchical categories
US20100250526A1 (en) 2009-03-27 2010-09-30 Prochazka Filip Search System that Uses Semantic Constructs Defined by Your Social Network
US8209330B1 (en) 2009-05-29 2012-06-26 Google Inc. Ordering image search results
US20100321399A1 (en) 2009-06-18 2010-12-23 Patrik Ellren Maps from Sparse Geospatial Data Tiles
US8150843B2 (en) 2009-07-02 2012-04-03 International Business Machines Corporation Generating search results based on user feedback
US8667009B2 (en) 2009-07-21 2014-03-04 Saambaa Llc Systems and methods for utilizing and searching social network information
US20110078166A1 (en) 2009-09-29 2011-03-31 Nokia Corporation Method and apparatus for creating and utilizing information representation of queries
US8306922B1 (en) 2009-10-01 2012-11-06 Google Inc. Detecting content on a social network using links
US20110087534A1 (en) 2009-10-14 2011-04-14 Wantsa Media (Canada), Inc. Search queries and advertising platforms utilizing at least one social graph
US8239364B2 (en) 2009-12-08 2012-08-07 Facebook, Inc. Search and retrieval of objects in a social networking system
US20110184981A1 (en) 2010-01-27 2011-07-28 Yahoo! Inc. Personalize Search Results for Search Queries with General Implicit Local Intent
US8301639B1 (en) 2010-01-29 2012-10-30 Google Inc. Location based query suggestion
US10748119B2 (en) 2010-02-01 2020-08-18 Microsoft Technology Licensing, Llc Social network search
US8595297B2 (en) 2010-02-08 2013-11-26 At&T Intellectual Property I, L.P. Searching data in a social network to provide an answer to an information request
US8527496B2 (en) * 2010-02-11 2013-09-03 Facebook, Inc. Real time content searching in social network
US9015733B2 (en) 2012-08-31 2015-04-21 Facebook, Inc. API version testing based on query schema
US20110231296A1 (en) 2010-03-16 2011-09-22 UberMedia, Inc. Systems and methods for interacting with messages, authors, and followers
US8185558B1 (en) * 2010-04-19 2012-05-22 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
US8180804B1 (en) 2010-04-19 2012-05-15 Facebook, Inc. Dynamically generating recommendations based on social graph information
US8751521B2 (en) 2010-04-19 2014-06-10 Facebook, Inc. Personalized structured search queries for online social networks
US8782080B2 (en) 2010-04-19 2014-07-15 Facebook, Inc. Detecting social graph elements for structured search queries
US8918418B2 (en) 2010-04-19 2014-12-23 Facebook, Inc. Default structured search queries on online social networks
US8572129B1 (en) 2010-04-19 2013-10-29 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
US8868603B2 (en) 2010-04-19 2014-10-21 Facebook, Inc. Ambiguous structured search queries on online social networks
US8732208B2 (en) 2010-04-19 2014-05-20 Facebook, Inc. Structured search queries based on social-graph information
US8244848B1 (en) 2010-04-19 2012-08-14 Facebook, Inc. Integrated social network environment
US8719246B2 (en) 2010-06-28 2014-05-06 Microsoft Corporation Generating and presenting a suggested search query
US20120042020A1 (en) 2010-08-16 2012-02-16 Yahoo! Inc. Micro-blog message filtering
US8832093B2 (en) 2010-08-18 2014-09-09 Facebook, Inc. Dynamic place visibility in geo-social networking system
US20120059713A1 (en) 2010-08-27 2012-03-08 Adchemy, Inc. Matching Advertisers and Users Based on Their Respective Intents
JP2012064149A (ja) * 2010-09-17 2012-03-29 Ntt Docomo Inc 携帯端末装置、及び方法並びにプログラム
WO2012058408A2 (en) 2010-10-27 2012-05-03 Myspace, Inc. Social networking relevance index
CN105956116B (zh) 2010-10-30 2020-02-28 国际商业机器公司 用于处理将要显示的内容的方法和系统
US8364709B1 (en) 2010-11-22 2013-01-29 Google Inc. Determining word boundary likelihoods in potentially incomplete text
EP2458545A1 (en) 2010-11-30 2012-05-30 France Telecom Method of and apparatus for managing data representative of a business in a database
US9978022B2 (en) 2010-12-22 2018-05-22 Facebook, Inc. Providing context relevant search for a user based on location and social information
US10304066B2 (en) 2010-12-22 2019-05-28 Facebook, Inc. Providing relevant notifications for a user based on location and social information
US8527497B2 (en) 2010-12-30 2013-09-03 Facebook, Inc. Composite term index for graph data
US8832111B2 (en) 2010-12-30 2014-09-09 Facebook, Inc. Distributed cache for graph data
US8688691B2 (en) 2011-01-13 2014-04-01 International Business Machines Corporation Relevancy ranking of search results in a network based upon a user's computer-related activities
US8639725B1 (en) 2011-01-31 2014-01-28 Google Inc. Methods for efficiently querying multiple points in an indexed quadtree
US9870424B2 (en) 2011-02-10 2018-01-16 Microsoft Technology Licensing, Llc Social network based contextual ranking
US20120278127A1 (en) 2011-04-28 2012-11-01 Rawllin International Inc. Generating product recommendations based on dynamic product context data and/or social activity data related to a product
US8676937B2 (en) 2011-05-12 2014-03-18 Jeffrey Alan Rapaport Social-topical adaptive networking (STAN) system allowing for group based contextual transaction offers and acceptances and hot topic watchdogging
US8909637B2 (en) 2011-06-03 2014-12-09 Facebook, Inc. Context-based ranking of search results
US20120311034A1 (en) 2011-06-03 2012-12-06 Cbs Interactive Inc. System and methods for filtering based on social media
US9268857B2 (en) 2011-06-03 2016-02-23 Facebook, Inc. Suggesting search results to users before receiving any search query from the users
US20160026727A1 (en) 2011-06-03 2016-01-28 Google Inc. Generating additional content
US20120317088A1 (en) 2011-06-07 2012-12-13 Microsoft Corporation Associating Search Queries and Entities
US9342605B2 (en) 2011-06-13 2016-05-17 Facebook, Inc. Client-side modification of search results based on social network data
US8601027B2 (en) 2011-06-20 2013-12-03 Google Inc. Query-based user groups in social networks
US9779385B2 (en) 2011-06-24 2017-10-03 Facebook, Inc. Inferring topics from social networking system communications
US9218390B2 (en) * 2011-07-29 2015-12-22 Yellowpages.Com Llc Query parser derivation computing device and method for making a query parser for parsing unstructured search queries
US20130031106A1 (en) 2011-07-29 2013-01-31 Microsoft Corporation Social network powered query suggestions
US8538960B2 (en) 2011-08-05 2013-09-17 Microsoft Corporation Providing objective and people results for search
US20130041876A1 (en) 2011-08-08 2013-02-14 Paul Alexander Dow Link recommendation and densification
US8990242B2 (en) * 2011-08-15 2015-03-24 Microsoft Technology Licensing, Llc Enhanced query suggestions in autosuggest with corresponding relevant data
US11620719B2 (en) 2011-09-12 2023-04-04 Microsoft Technology Licensing, Llc Identifying unseen content of interest
US8312056B1 (en) 2011-09-13 2012-11-13 Xerox Corporation Method and system for identifying a key influencer in social media utilizing topic modeling and social diffusion analysis
US10120877B2 (en) 2011-09-15 2018-11-06 Stephan HEATH Broad and alternative category clustering of the same, similar or different categories in social/geo/promo link promotional data sets for end user display of interactive ad links, coupons, mobile coupons, promotions and sale of products, goods and services integrated with 3D spatial geomapping and mobile mapping and social networking
US20130086024A1 (en) 2011-09-29 2013-04-04 Microsoft Corporation Query Reformulation Using Post-Execution Results Analysis
US8918354B2 (en) 2011-10-03 2014-12-23 Microsoft Corporation Intelligent intent detection from social network messages
US8949232B2 (en) 2011-10-04 2015-02-03 Microsoft Corporation Social network recommended content and recommending members for personalized search results
US9324113B2 (en) 2011-10-12 2016-04-26 Microsoft Technology Licensing, Llc Presenting social network connections on a search engine results page
US8868590B1 (en) 2011-11-17 2014-10-21 Sri International Method and system utilizing a personalized user model to develop a search request
US8893076B2 (en) 2011-12-14 2014-11-18 Adobe Systems Incorporated Configurable computation modules
US20150074289A1 (en) 2011-12-28 2015-03-12 Google Inc. Detecting error pages by analyzing server redirects
US8935261B2 (en) 2011-12-28 2015-01-13 Facebook, Inc. Social discovery and ranking of pages
US8949264B2 (en) * 2012-01-30 2015-02-03 Hewlett-Packard Development Company, L.P. Disambiguating associations
US20130204737A1 (en) 2012-02-03 2013-08-08 Shubham Agarwal Leveraging store activity for recommendations
US8321364B1 (en) 2012-02-08 2012-11-27 Google Inc. Method and system for including robots into social networks
US20130227011A1 (en) 2012-02-29 2013-08-29 Eventbrite, Inc. Interest-Based Social Recommendations for Event Ticket Network Systems
US8762324B2 (en) 2012-03-23 2014-06-24 Sap Ag Multi-dimensional query expansion employing semantics and usage statistics
US9971993B2 (en) 2012-03-26 2018-05-15 Microsoft Technology Licensing, Llc Leveraging a social graph for use with electronic messaging
US8924434B2 (en) 2012-06-29 2014-12-30 Oracle International Corporation Project resource comparison view
US8983991B2 (en) 2012-07-27 2015-03-17 Facebook, Inc. Generating logical expressions for search queries
US8935255B2 (en) 2012-07-27 2015-01-13 Facebook, Inc. Social static ranking for search
US9646028B2 (en) 2012-08-31 2017-05-09 Facebook, Inc. Graph query logic
US10311085B2 (en) 2012-08-31 2019-06-04 Netseer, Inc. Concept-level user intent profile extraction and applications
US20140122465A1 (en) 2012-10-31 2014-05-01 Brandon Bilinski Ranking Music Search Results
US8935271B2 (en) 2012-12-21 2015-01-13 Facebook, Inc. Extract operator
US9514191B2 (en) 2013-03-14 2016-12-06 Microsoft Technology Licensing, Llc Visualizing ranking factors for items in a search result list
US20150161519A1 (en) 2013-04-19 2015-06-11 Google Inc. Name recognition
US9223898B2 (en) 2013-05-08 2015-12-29 Facebook, Inc. Filtering suggested structured queries on online social networks
US9460215B2 (en) * 2013-12-19 2016-10-04 Facebook, Inc. Ranking recommended search queries on online social networks
US9646055B2 (en) 2014-04-03 2017-05-09 Facebook, Inc. Blending search results on online social networks
US20150363402A1 (en) 2014-06-13 2015-12-17 Facebook, Inc. Statistical Filtering of Search Results on Online Social Networks
US20160041982A1 (en) 2014-08-05 2016-02-11 Facebook, Inc. Conditioned Search Ranking Models on Online Social Networks
US9792364B2 (en) 2014-08-08 2017-10-17 Facebook, Inc. Blending search results on online social networks
US9703859B2 (en) 2014-08-27 2017-07-11 Facebook, Inc. Keyword search queries on online social networks
US9754037B2 (en) 2014-08-27 2017-09-05 Facebook, Inc. Blending by query classification on online social networks
US9990441B2 (en) 2014-12-05 2018-06-05 Facebook, Inc. Suggested keywords for searching content on online social networks
US20160203238A1 (en) 2015-01-09 2016-07-14 Facebook, Inc. Suggested Keywords for Searching News-Related Content on Online Social Networks
US20170046390A1 (en) 2015-08-14 2017-02-16 Facebook, Inc. Searching public posts on online social networks
US20170083523A1 (en) 2015-09-18 2017-03-23 Facebook, Inc. Granular Forward Indexes on Online Social Networks
US10810217B2 (en) 2015-10-07 2020-10-20 Facebook, Inc. Optionalization and fuzzy search on online social networks
US10545969B2 (en) 2015-11-16 2020-01-28 Facebook, Inc. Ranking and filtering comments based on audience
US10387511B2 (en) 2015-11-25 2019-08-20 Facebook, Inc. Text-to-media indexes on online social networks
US10740368B2 (en) 2015-12-29 2020-08-11 Facebook, Inc. Query-composition platforms on online social networks
US10853335B2 (en) 2016-01-11 2020-12-01 Facebook, Inc. Identification of real-best-pages on online social networks
US10162899B2 (en) 2016-01-15 2018-12-25 Facebook, Inc. Typeahead intent icons and snippets on online social networks
US10740375B2 (en) 2016-01-20 2020-08-11 Facebook, Inc. Generating answers to questions using information posted by users on online social networks
US20170308583A1 (en) 2016-04-20 2017-10-26 Facebook, Inc. Suggested Queries Based on Interaction History on Online Social Networks

Also Published As

Publication number Publication date
IL250233A0 (en) 2017-03-30
WO2014182608A1 (en) 2014-11-13
CA2921916A1 (en) 2014-11-13
CA2910941C (en) 2016-06-14
IL242417A (en) 2017-02-28
AU2014262958B2 (en) 2016-01-21
AU2016201203B2 (en) 2017-05-25
IL255418A0 (en) 2017-12-31
US20160048527A1 (en) 2016-02-18
US9223898B2 (en) 2015-12-29
KR101948093B1 (ko) 2019-02-14
KR20160004390A (ko) 2016-01-12
KR101663718B1 (ko) 2016-10-07
US9594852B2 (en) 2017-03-14
JP2016194949A (ja) 2016-11-17
US20140337371A1 (en) 2014-11-13
IL255418B (en) 2019-07-31
AU2017204239A1 (en) 2017-07-13
KR20160119261A (ko) 2016-10-12
KR101768663B1 (ko) 2017-08-17
JP6435383B2 (ja) 2018-12-05
JP5970624B1 (ja) 2016-08-17
JP2016526206A (ja) 2016-09-01
JP2018010667A (ja) 2018-01-18
AU2016201203A1 (en) 2016-03-17
CA2921916C (en) 2019-01-29
AU2014262958A1 (en) 2015-12-24
US10108676B2 (en) 2018-10-23
CA2910941A1 (en) 2014-11-13
AU2017204239B2 (en) 2018-03-29
KR20170093259A (ko) 2017-08-14
US20170097961A1 (en) 2017-04-06
IL250233A (en) 2017-11-30

Similar Documents

Publication Publication Date Title
JP6435383B2 (ja) オンライン・ソーシャル・ネットワーク上の示唆クエリをフィルタリング
JP6462088B2 (ja) オンライン・ソーシャル・ネットワーク上での構造化検索クエリの修正
JP6568609B2 (ja) 構造化された検索クエリのための文法モデル
JP6306120B2 (ja) 構造化検索クエリの自然言語レンダリング
JP6562962B2 (ja) オンライン・ソーシャル・ネットワーク上のあいまいな構造化検索クエリ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170227

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170227

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170508

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: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170830

R150 Certificate of patent or registration of utility model

Ref document number: 6203913

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

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