JP6023354B2 - 構造化検索クエリの自然言語レンダリング - Google Patents
構造化検索クエリの自然言語レンダリング Download PDFInfo
- Publication number
- JP6023354B2 JP6023354B2 JP2015550465A JP2015550465A JP6023354B2 JP 6023354 B2 JP6023354 B2 JP 6023354B2 JP 2015550465 A JP2015550465 A JP 2015550465A JP 2015550465 A JP2015550465 A JP 2015550465A JP 6023354 B2 JP6023354 B2 JP 6023354B2
- Authority
- JP
- Japan
- Prior art keywords
- query
- user
- grammar
- identified
- node
- 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
Links
- 238000009877 rendering Methods 0.000 title claims description 6
- 238000000034 method Methods 0.000 claims description 112
- 230000004044 response Effects 0.000 claims description 56
- 230000008569 process Effects 0.000 claims description 54
- 230000015654 memory Effects 0.000 claims description 32
- 238000003860 storage Methods 0.000 claims description 32
- 238000000926 separation method Methods 0.000 claims description 10
- 230000006855 networking Effects 0.000 description 287
- 230000004048 modification Effects 0.000 description 107
- 238000012986 modification Methods 0.000 description 107
- 230000009471 action Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 18
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 241000287828 Gallus gallus Species 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000003825 pressing Methods 0.000 description 3
- 238000013515 script Methods 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000003607 modifier Substances 0.000 description 2
- 235000021116 parmesan Nutrition 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 241000282326 Felis catus Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 235000015228 chicken nuggets Nutrition 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010411 cooking Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Strategic Management (AREA)
- Artificial Intelligence (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Finance (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Entrepreneurship & Innovation (AREA)
- Computing Systems (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Game Theory and Decision Science (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Operations Research (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
、検索結果を閲覧し、次いで、構造化クエリに対して絞り込みまたはピボッティングを行って新たな検索結果を生成するために1以上のクエリ修正を選択する。特定のクエリ修正を用いて、構造化クエリを修正した後には、そのクエリ修正において使用されたソーシャル・グラフ要素への参照を含む新たな自然言語の構造化クエリを生成するために、適切な文法が使用される。ソーシャルネットワーキング・システムは、検索結果ページ上に表示される代替の構造化クエリを生成することもできる。これらの代替の構造化クエリとしては、提案されるクエリ、広げるクエリ、およびあいまい性解消クエリが含まれる。
文法のうちの1以上を選択する工程と、を含んでよい。
特に、1以上の構造化クエリを生成する工程は、各選択された文法について、該選択された文法に基づき、自然言語文字列を生成する工程であって、自然言語文字列は識別された1以上のクエリ・トークンを含む、工程と、各自然言語文字列について、該自然言語文字列に基づき、構造化クエリをレンダリングする工程であって、構造化クエリは、識別されたクエリ・トークンに対応する各識別された第2のノードまたは識別されたエッジへの参照を含む、工程と、を含んでよい。
各nグラムは、第1のユーザによって入力されるテキストの1以上の文字か、テキスト・クエリからのn個のアイテムの連続したシーケンスを含んでよい。
一実施形態では、方法は、各選択された文法に対するスコアを決定する工程をさらに備え、工程は、文法しきい値スコアよりも高いスコアを有する各選択された文法に対応する1以上の構造化クエリを生成する工程を含む。
特に、各文法に対するスコアを決定する工程は、該文法のクエリ・トークンに対応する識別されたエッジに基づく。
特に、各文法に対するスコアを決定する工程は、第1のユーザに関連付けられている検索履歴に基づく。
やはり特許請求されてよい本発明のさらなる実施形態では、1以上の非一時的コンピュータ可読記憶媒体はソフトウェアを具現し、このソフトウェアは、実行されるとき、複数のノードと、それらのノード同士をつなげる複数のエッジとを備えるソーシャル・グラフにアクセスする工程であって、それらのノードのうちの2つの間におけるエッジの各々は、それらの間における1次の隔たり度合いを表しており、それらのノードは、オンライン・ソーシャル・ネットワークに関連付けられている第1のユーザに対応する第1のノードと、オンライン・ソーシャル・ネットワークに関連付けられているコンセプトまたは第2のユーザに各々対応する複数の第2のノードとを含む、工程と、非構造化テキスト・クエリを第1のユーザから受け取る工程と、1以上のエッジまたは1以上の第2のノードを識
別する工程であって、識別されたエッジまたは識別された第2のノードの各々は、非構造化テキスト・クエリの少なくとも一部に対応している、工程と、複数の文法を含むコンテキストフリー文法モデルにアクセスする工程であって、各文法は1以上の非終端トークンおよび1以上のクエリ・トークンを含む、工程と、複数の文法における1以上のクエリ・トークンを識別する工程であって、識別された各クエリ・トークンは識別された第2のノードまたは識別されたエッジのうちの1つに対応する、工程と、1以上の文法を選択する工程であって、選択された各文法は、識別されたエッジおよび識別された第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、工程と、1以上の構造化クエリを生成する工程であって、各構造化クエリは選択された文法に対応し、各構造化クエリは対応する選択された文法によって生成される文字列に基づき、各構造化クエリは識別されたエッジおよび識別された第2のノードの各々に対応する少なくとも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を含む。
、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含む。本開示は、任意の適切なクライアント・システム130を想定している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザがネットワーク110にアクセスすることを可能にする。クライアント・システム130は、自分のユーザがその他のクライアント・システム130のその他のユーザと通信することを可能にする。
ネットワーキング・システム164は、1つまたは複数のデータ・ストア164を含む。データ・ストア164は、さまざまなタイプの情報を記憶するために使用される。特定の実施形態においては、データ・ストア164内に記憶されている情報は、特定のデータ構造に従って編成される。特定の実施形態においては、それぞれのデータ・ストア164は、リレーショナル・データベースである。特定の実施形態は、クライアント・システム130、ソーシャルネットワーキング・システム160、またはサードパーティ・システム170が、データ・ストア164内に記憶されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供する。
1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信する)その他の任意の適切な構成要素を含む。サードパーティ・システム170は、ソーシャルネットワーキング・システム160を運営しているエンティティとは異なるエンティティによって運営される。しかしながら、特定の実施形態においては、ソーシャルネットワーキング・システム160およびサードパーティ・システム170は、ソーシャルネットワーキング・システム160またはサードパーティ・システム170のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能する。この意味において、ソーシャルネットワーキング・システム160は、サードパーティ・システム170などのその他のシステムがインターネットを通じてソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用するプラットフォーム、またはバックボーンを提供する。
報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含む。関心情報は、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は、教示上の目的から、2次元のビジュアル・マップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキング・システム160、クライアント・システム130、またはサードパーティ・システム170は、適切なアプリケーションに関してソーシャル・グラフ200および関連したソーシャル・グラフ情報にアクセスする。ソーシャル・グラフ200
のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャル・グラフ・データベースなどの)データ・ストア内に記憶される。そのようなデータ・ストアは、ソーシャル・グラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含む。
との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード202同士をつなげる特定の属性を伴う特定のエッジ206を記述している、または示しているが、本開示は、ユーザ・ノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表す。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャル・グラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士に及ぶ。
(または、単一の関係が複数集まったもの)を表す。
特定の実施形態においては、広告は、テキスト(HTMLにリンクされている)、1もしくは複数のイメージ(HTMLにリンクされている)、1もしくは複数の映像、オーディオ、1もしくは複数のADOBEフラッシュ・ファイル、これらの適切な組合せ、または、1もしくは複数のウェブページ上に、1もしくは複数のEメール内に、もしくはユーザによって要求されている検索結果とともに提示される任意の適切なデジタル・フォーマットでのその他の任意の適切な広告である)。追加として、または代替として、広告は、1または複数のスポンサー付きストーリ(たとえば、ソーシャルネットワーキング・システム160上のニュース・フィードまたはティッカー・アイテム)である。スポンサー付きストーリは、ユーザによるソーシャル・アクション(ページに対して「いいね!」を表明すること、ページ上の投稿に対して「いいね!」を表明することまたはコメントすること、ページに関連付けられているイベントへの招待の返事を求めること、ページ上に投稿されている質問に投票すること、場所にチェックインすること、アプリケーションを使用することもしくはゲームをプレイすること、またはウェブサイトに対して「いいね!」を表明することもしくはウェブサイトを共有することなど)であることが可能であり、広告主は、たとえば、そのソーシャル・アクションを、ユーザのプロフィール・ページもしくはその他のページの所定の領域内に提示させること、その広告主に関連付けられているさらなる情報とともに提示させること、その他のユーザのニュース・フィードもしくはティッカー内に飛び出させることもしくはその他の形で強調表示させること、またはその他の形で促進させることによって、そのソーシャル・アクションを促進する。広告主は、ソーシャル・アクションを促進させるために対価を支払う場合がある。
される場合がある。広告は、ページの最上部のバナー領域の中、ページの側部のカラムの中、ページのGUIの中、ポップアップ・ウィンドウの中、ドロップダウン・メニューの中、ページの入力フィールドの中、ページのコンテンツの最上部を覆って、またはページに関するその他の場所など、ページの専用の部分において表示される。追加として、または代替として、広告は、アプリケーション内に表示される。広告は、専用のページ内に表示されて、その広告と対話することまたはその広告を見ることをユーザに要求することができ、その後に、ユーザがページにアクセスすることまたはアプリケーションを利用することが可能になる。ユーザは、たとえば、ウェブ・ブラウザを通じて広告を閲覧する。
特定の実施形態においては、1または複数のクライアント側および/またはバックエンド(サーバ側)プロセスが、ソーシャル・グラフ要素(たとえば、ユーザ・ノード202、コンセプト・ノード204、またはエッジ206)を、ソーシャルネットワーキング・システム160によってホストされること、またはソーシャルネットワーキング・システム160においてアクセスできる要求されているウェブページ(たとえば、オンライン・ソーシャル・ネットワークのユーザプロフィール・ページ、コンセプトプロフィール・ページ、検索結果ウェブページ、または別の適切なページなど)とともにレンダリングされた入力フォーム内にユーザによって現在入力されている情報にマッチさせることを自動的に試みる「タイプ・アヘッド」機能を実装および利用する。特定の実施形態においては、ユーザが言明を行うためにテキストを入力している際に、タイプ・アヘッド機能は、その言明において入力されているテキスト文字の文字列を、ソーシャル・グラフ200内のユ
ーザ、コンセプト、またはエッジ、およびそれらの対応する要素に対応する文字の文字列(たとえば、名前、記述)にマッチさせることを試みる。特定の実施形態においては、マッチが見つかった場合には、タイプ・アヘッド機能は、既存のソーシャル・グラフ要素のソーシャル・グラフ要素への参照(たとえば、ノードの名前/タイプ、ノードID、エッジの名前/タイプ、エッジID、または別の適切な参照もしくは識別子など)をフォームに自動的に投入する。
場合があるためである。
図3は、オンライン・ソーシャル・ネットワークの例示的なウェブページを示している。特定の実施形態においては、ユーザは、テキストをクエリ・フィールド350内に入力することによって、クエリをソーシャルネットワーク・システム160にサブミットする。オンライン・ソーシャル・ネットワークのユーザは、特定の主題(たとえば、ユーザ、コンセプト、外部コンテンツ、またはリソース)について記述する短いフレーズ(しばしば「検索クエリ」と呼ばれる)を検索エンジンに提供することによって、その主題に関連している情報を検索する。そのクエリは、非構造化テキスト・クエリであることが可能であり、1または複数のテキスト文字列(1または複数のnグラムを含む)を含む。一般には、ユーザは、テキスト・クエリにマッチするソーシャルネットワーキング・システム160上のコンテンツを検索するために、任意の文字の文字列をクエリ・フィールド350内に入力する。次いでソーシャルネットワーキング・システム160は、クエリにマッチするコンテンツを識別するために、データ・ストア164(または、詳細には、ソーシャル・グラフ・データベース)を検索する。検索エンジンは、さまざまな検索アルゴリズムを使用してクエリ・フレーズに基づく検索を行って、検索クエリに関連している可能性が最も高いリソースまたはコンテンツ(たとえば、ユーザプロフィール・ページ、コンテンツプロフィール・ページ、または外部リソース)を識別する検索結果を生成する。検索を行うために、ユーザは、検索クエリを検索エンジンに入力または送信する。それに応答し
て、検索エンジンは、その検索クエリに関連している可能性が高い1または複数のリソースを識別することができ、それらのリソースのそれぞれは、個別に「検索結果」と呼ばれる場合があり、または、その検索クエリに対応する「検索結果」と総称される場合もある。識別されたコンテンツは、たとえば、ソーシャル・グラフ要素(すなわち、ユーザ・ノード202、コンセプト・ノード204、エッジ206)、プロフィール・ページ、外部ウェブページ、またはそれらの任意の組合せを含む場合がある。次いでソーシャルネットワーキング・システム160は、識別されたコンテンツに対応する検索結果を伴う検索結果ウェブページを生成し、その検索結果ウェブページをユーザに送信する。検索結果は、しばしば検索結果ウェブページ上のリンクのリストという形式で、ユーザに提示されることが可能であり、それぞれのリンクは、識別されたリソースまたはコンテンツのうちのいくつかを含む別のウェブページに関連付けられている。特定の実施形態においては、検索結果内のそれぞれのリンクは、対応するウェブページがどこに配置されているかと、それを取り出すためのメカニズムとを指定するユニフォーム・リソース・ロケータ(URL)の形式である。次いでソーシャルネットワーキング・システム160は、検索結果ウェブページをユーザのクライアント・システム130上のウェブ・ブラウザ132へ送信する。次いでユーザは、URLリンクをクリックして、または検索結果ウェブページからのコンテンツをその他の形で選択して、ソーシャルネットワーキング・システム160からの、または必要に応じて外部システム(たとえば、サードパーティ・システム170など)からのコンテンツにアクセスする。リソース同士が、検索クエリに対するそれらの相対的な関連度に従ってランク付けされてユーザに提示される。検索結果同士が、ユーザに対するそれらの相対的な関連度に従ってランク付けされてユーザに提示されることも可能である。言い換えれば、検索結果は、クエリを行っているユーザのために、たとえば、そのユーザのソーシャル・グラフ情報、ユーザ情報、検索もしくはブラウジング履歴、またはそのユーザに関連したその他の適切な情報に基づいてパーソナライズされる。特定の実施形態においては、リソースのランキングは、検索エンジンによって実施されるランキング・アルゴリズムによって決定される。限定ではなく、例として、検索クエリに対する、またはユーザに対する関連性の高いリソースは、検索クエリまたはユーザに対する関連性の低いリソースよりも高くランク付けされる。特定の実施形態においては、検索エンジンは、自分の検索を、オンライン・ソーシャル・ネットワーク上のリソースおよびコンテンツに限定する。しかしながら、特定の実施形態においては、検索エンジンは、その他のソース、たとえば、サードパーティ・システム170、インターネットもしくはワールド・ワイド・ウェブ、またはその他の適切なソース上のリソースまたはコンテンツを検索することもできる。本開示は、特定の様式でソーシャルネットワーキング・システム160にクエリを行うことについて記述しているが、本開示は、任意の適切な様式でソーシャルネットワーキング・システム160にクエリを行うことを想定している。
しているノードに関連付けられているその他のメタデータを含む応答をユーザのクライアント・システム130へ送信する。次いでタイプ・アヘッド・プロセスは、ドロップダウン・メニュー300を表示することができ、そのドロップダウン・メニュー300は、マッチしている既存のプロフィール・ページおよびそれぞれのユーザ・ノード202またはコンセプト・ノード204の名前を表示し、マッチしているユーザ・ノード202またはコンセプト・ノード204につながるマッチしているエッジ206の名前を表示し、次いでユーザは、それをクリックまたはその他の形で選択し、それによって、選択されたノードに対応するマッチしたユーザもしくはコンセプトの名前を検索したい、またはマッチしているエッジによって、マッチしたユーザもしくはコンセプトにつながっているユーザもしくはコンセプトを検索したいという要望を確定することができる。あるいは、タイプ・アヘッド・プロセスは、ドロップダウン・メニュー300を表示するよりもむしろ、上位にランク付けされたマッチの名前またはその他の識別子をフォームに単に自動投入する。次いでユーザは、単にキーボード上の「enter(入力)」キーを押すことによって、またはその自動投入された言明をクリックすることによって、その自動投入された言明を確定する。マッチしているノードおよびエッジをユーザが確定すると、タイプ・アヘッド・プロセスは、マッチしているソーシャル・グラフ要素を含むクエリをユーザが確定したことをソーシャルネットワーキング・システム160に知らせる要求を送信する。送信された要求に応答して、ソーシャルネットワーキング・システム160は、マッチしているソーシャル・グラフ要素を探して、または必要に応じて、マッチしているソーシャル・グラフ要素につながっているソーシャル・グラフ要素を探して、ソーシャル・グラフ・データベースを自動的に(または代替として、要求内の命令に基づいて)呼び出しまたはその他の形で検索する。本開示は、特定の様式でタイプ・アヘッド・プロセスを検索クエリに適用することについて記述しているが、本開示は、任意の適切な様式でタイプ・アヘッド・プロセスを検索クエリに適用することを想定している。
図4A〜図4Bは、ソーシャル・ネットワークの例示的なクエリを示している。特定の実施形態においては、ソーシャルネットワーキング・システム160は、第1のユーザ(すなわち、クエリを行っているユーザ)から受け取られたテキスト・クエリに応答して、自然言語シンタックスでレンダリングされた1または複数の構造化クエリを生成することができ、それぞれの構造化クエリは、1または複数の識別されたソーシャル・グラフ要素に対応するクエリ・トークンを含む。図4A〜図4Bは、クエリ・フィールド350内のさまざまな例示的なテキスト・クエリ、および応答してドロップダウン・メニュー300内に生成されたさまざまな構造化クエリを示している。ユーザのテキスト・クエリに応答して、提案される構造化クエリを提供することによって、ソーシャルネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザが、自分のソーシャル・グラフ属性、およびさまざまなソーシャル・グラフ要素に対する自分の関係に基づいて、ソーシャル・グラフ200内で表されている要素を検索するための強力な方法を提供する。構造化クエリは、クエリを行っているユーザが、特定のエッジ・タイプによってソーシャル・グラフ200内の特定のユーザまたはコンセプトにつながっているコンテンツを検索することを可能にする。限定ではなく、例として、ソーシャルネットワーキング・システム160は、非構造化テキスト・クエリを第1のユーザから受け取る。それに応答して、ソーシャルネットワーキング・システム160は(たとえば、サーバ側要素検知プ
ロセスを通じて)、ソーシャル・グラフ200にアクセスし、次いでテキスト・クエリを解析して、そのテキスト・クエリからのnグラムに対応したソーシャル・グラフ要素を識別する。次いでソーシャルネットワーキング・システム160は、コンテキストフリー文法モデルなどの文法モデルにアクセスすることができ、その文法モデルは、複数の文法を含む。これらの文法は、複数の非終端トークンおよび終端トークンを伴う順序付きツリーとして編成されている文法フォレストとして視覚化される。識別されたソーシャル・グラフ要素は、文法において終端トークン(「クエリ・トークン」)として使用される。(たとえば、ユーザからのテキスト・クエリに対応するセマンティック・ツリーを使用することによって)これらの終端トークンが識別されると、ソーシャルネットワーキング・システム160は、文法フォレストを横断して、交わっている非終端ノードを識別する。次いで、これらの交わっている非終端ノードのうちの1つによって表されているそれぞれの文法が選択される。次いで、選択された文法は、識別されたソーシャル・グラフ要素を参照するクエリ・トークンを含む1または複数の構造化クエリを生成するために使用される。これらの構造化クエリは、それらの文法によって生成された文字列に基づくことが可能であり、それによって、それらの構造化クエリは、自然言語シンタックスを使用して、適切なソーシャル・グラフ要素への参照を伴ってレンダリングされる。それらの構造化クエリは、第1のユーザへ送信されて(たとえば、クライアント側タイプ・アヘッド・プロセスを通じて)ドロップダウン・メニュー300内に表示されることが可能であり、次いでそのドロップダウン・メニュー300において、第1のユーザは、所望のコンテンツを検索するための適切なクエリを選択する。本明細書において記述されている構造化クエリを使用することの利点のうちのいくつかとしては、限られた情報に基づいてオンライン・ソーシャル・ネットワークのユーザを見つけ出すこと、さまざまなソーシャル・グラフ要素に対するそのコンテンツの関係に基づいてオンライン・ソーシャル・ネットワークからのコンテンツの仮想インデックス同士をまとめること、またはユーザおよび/もしくはユーザの友達に関連したコンテンツを見つけ出すことが含まれる。このプロセスを使用することによって、自然言語でのレンダリング・プロセスの出力が、たとえば、修正されたまたは代替の構造化クエリを生成するために、効率よく解析される。さらに、このプロセスによって使用されるルールは、文法モデルから導出されるため、文法モデルのルールに対するいかなる修正も、レンダリング・プロセスにおいてすぐに反映される。特定の様式で特定の構造化クエリを生成することについて本開示は記述しており、図4A〜図4Bは示しているが、本開示は、任意の適切な様式で任意の適切な構造化クエリを生成することを想定している。
明細書において使用される際には、構造化クエリとは、特定のソーシャル・グラフ要素への参照を含んでいて、識別された要素に基づいて検索エンジンが検索を行うことを可能にするクエリに及ぶ。さらに、テキスト・クエリは、正式なクエリ・シンタックスに関して構造化されていない場合がある。言い換えれば、単純なテキスト・クエリは、検索エンジンによって直接実行可能であるクエリ・コマンドのフォーマットでは必ずしもないであろう。本開示は、特定の様式で特定のクエリを受け取ることについて記述しているが、本開示は、任意の適切な様式で任意の適切なクエリを受け取ることを想定している。
X)として計算される。限定ではなく、例として、nグラムがソーシャル・グラフ要素に対応する確率は、pi,j,kとして示される確率スコアとして計算される。入力は、テキスト・クエリX=(x1,x2,...,xN)、およびクラスのセットである。それぞれの(i:j)およびクラスkに関して、ソーシャルネットワーキング・システム160は、pi,j,k=p(class(xi:j)=k|X)を算出する。限定ではなく、例として、「スタンフォード」というnグラムは、「スタンフォード大学」という学校=0.7、「カリフォルニア州スタンフォード」というロケーション=0.2、「アレン・スタンフォード」というユーザ=0.1のようなソーシャル・グラフ要素に関してスコア付けされる。限定ではなく、別の例として、「友達」というnグラムは、「friends(友達)」であるユーザ=0.9、「Friends(フレンズ)」というテレビ番組=0.1のようなソーシャル・グラフ要素に関してスコア付けされる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定のnグラムが特定のソーシャル・グラフ要素に対応する確率を決定するために前後進アルゴリズムを使用する。テキスト・クエリ内の所与のnグラムに関して、ソーシャルネットワーキング・システム160は、どの特定のソーシャル・グラフ要素が所与のnグラムに対応するかを決定するために、先行のnグラムおよび後続のnグラムの両方を使用する。特定の実施形態においては、識別されたソーシャル・グラフ要素は、検索エンジンによって実行可能であるクエリ・コマンドを生成するために使用される。そのクエリ・コマンドは、特定の引数を受け入れる定義された関数を伴う構造化されたセマンティック・クエリである。限定ではなく、例として、「友達 自分 マーク」というテキスト・クエリが解析されて、intersect(友達(自分),友達(マーク))というクエリ・コマンドが形成される。言い換えれば、そのクエリは、クエリを行っているユーザ(「自分」)および「マーク」というユーザと交わっているソーシャル・グラフ内のノード(すなわち、友達タイプのエッジ206によって、クエリを行っているユーザのユーザ・ノード202、および友達タイプのエッジ206によって、「マーク」というユーザを表すユーザ・ノード202の両方につながっているユーザ・ノード202)を探している。本開示は、nグラムがソーシャル・グラフ要素に対応するか否かを特定の様式で決定することについて記述しているが、本開示は、nグラムがソーシャル・グラフ要素に対応するか否かを任意の適切な様式で決定することを想定している。その上、本開示は、nグラムがソーシャル・グラフ要素に対応するか否かを、特定のタイプのスコアを使用して決定することについて記述しているが、本開示は、nグラムがソーシャル・グラフ要素に対応するか否かを、任意の適切なタイプのスコアを使用して決定することを想定している。
た」に対応するエッジ206、および「通った」に対応するエッジ206を識別することができ、それらは両方とも、「スタンフォード」を表すコンセプト・ノード204につながっている。したがって、「通った」というnグラムは、これらのエッジ206に対応するものとして識別される。しかしながら、同じテキスト・クエリに関して、ソーシャルネットワーキング・システム160は、ソーシャル・グラフ200内の「いいね!を表明する」または「ファンである」に対応するエッジ206を識別することはできない。なぜなら、「スタンフォード」というノードは、そのノードにつながっているそのようないずれのエッジも有していないためである。本開示は、nグラムに対応するエッジ206を特定の様式で識別することについて記述しているが、本開示は、nグラムに対応するエッジ206を任意の適切な様式で識別することを想定している。
文法は、1または複数の非終端トークン(または「非終端シンボル」)、および1または複数の終端トークン(または「終端シンボル」/「クエリ・トークン」)を含むことができ、特定の非終端トークンは、終端トークンによって置換される。文法モデルとは、形式言語における文字列に関する形成ルールのセットである。特定の実施形態においては、それらの複数の文法は、非終端トークンに対応する内部ノードと、終端トークンに対応するリーフ・ノードとを伴う順序付きツリーとして編成されている文法フォレストとして視覚化される。それぞれの文法は、文法フォレスト内のサブツリーとして表されることが可能であり、それらの文法は、非終端トークンを通じて互いに隣接している。したがって、複数の文法は、文法フォレスト内のサブフォレストである。本開示は、特定の文法にアクセスすることについて記述しているが、本開示は、任意の適切な文法を想定している。
することについて記述しているが、本開示は、任意の適切な様式で任意の適切なクエリ・トークンを識別することを想定している。
は、以前に識別されたノードまたはエッジに対応するそれぞれの識別されたクエリ・トークンを含むことができ、交わりトークンを含むこともできる。セマンティック・ツリーは、必要に応じてクエリ・トークンを交わりトークンにつなげる非終端トークンを含むこともできる。限定ではなく、例として、「友達 スタンフォード」というテキスト・クエリが解析されて、交わり(学校(スタンフォード大学),友達(自分))というクエリ・コマンドが生じる。言い換えれば、そのクエリは、クエリを行っているユーザ(「自分」)の友達(すなわち、友達タイプのエッジ206によって、クエリを行っているユーザのユーザ・ノード202につながっているユーザ・ノード202)、およびスタンフォード大学を表すコンセプト・ノード204の両方と交わっているソーシャル・グラフ内のノードを探している。これは、図5Aにおいて示されているセマンティック・ツリーとして表されることが可能であり、そのセマンティック・ツリーは、クエリを行っているユーザ[自分]を表す終端トークン、および学校[スタンフォード]、[[ユーザ]の友達]を表す非終端トークン、および交わりトークンを含む。特定の実施形態においては、ツリー内のそれぞれのトークンは、そのトークンが処理されることになる順序でラベル付けされる。たとえば、図5Aにおいて示されているセマンティック・ツリーは、ポストフィックス表記法を使用してラベル付けされているトークンを有しており、[スタンフォード]を表すトークンは、(0,0)とラベル付けされており、[自分]を表すトークンは、(1,1)とラベル付けされており、[[ユーザ]の友達]トークンは、(2)とラベル付けされており、交わりトークンは、(3)とラベル付けされている。本開示は、特定の様式で特定のセマンティック・ツリーを生成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なセマンティック・ツリーを生成することを想定している。
セマンティック・ツリー内のそれぞれの終端トークン(i,i)に関して、文法フォレスト内のそれぞれのマッチしている終端トークンを(i,i)とラベル付けする。
i=0〜サイズ(セマンティック・ツリー−1)に関して:
j=i〜0に関して:
(i,j)とラベル付けされているすべてのトークンを展開する。
(i,j)を展開する:
文法フォレスト内のすべてのトークンに関して:
トークンが、サブツリーを(i’,j’)に成長させる1つの引数を伴うルールを有する場合には、トークンを(i’,j’)とラベル付けする;
トークンが、サブツリーを成長させる複数の引数を伴うルールを有する場合には、トークンを「保留中」とラベル付けする;
トークンが、「保留中」とラベル付けされていて、サブツリーを(i’,j’)に成長させるようになった場合には、トークンを(i’,j’)とラベル付けする。
したがって、たとえば、図5Bにおいて示されている例では、図5Aにおいて示されているセマンティック・ツリーからの終端トークン(0,0)および(1,1)にマッチするすべての終端トークンが、それぞれ(0,0)および(1,1)とラベル付けされることになる。次いで、文法フォレスト内のそれぞれの有効なトークンから、ソーシャルネット
ワーキング・システム160は、親トークンまで横断して、セマンティック・ツリーにマッチするサブツリーが形成されるか否かを見る。親である非終端トークンが、マッチしているセマンティックを有している場合には、その非終端トークンは、そのセマンティック・ツリーからの対応するトークンと同じラベルを使用してラベル付けされる。図5Bにおいて示されている例では、(1,1)とラベル付けされているトークンのうちの1つから文法フォレストが横断されている際に、[[ユーザ]の友達]というセマンティックにマッチしている非終端トークンが見つかると、そのトークンは、(2)とラベル付けされることが可能であり、したがってそのトークンは、そのセマンティック・ツリーにマッチする。次いで、このトークンの親は、潜在的な交わりトークンであるため、「保留中」とラベル付けされる。しかしながら、その横断によって、セマンティック・ツリーのセマンティックにマッチしている親トークンをまったく見つけ出すことができなかった場合には、その特定の横断を終了する。その横断の1つの分岐が、潜在的な交わりトークンに達すると、そのトークンは、「保留中」とラベル付けされることが可能であり、その間に、このアルゴリズムは、その他の有効な終端トークンからの横断(たとえば、(0,0)とラベル付けされている終端トークンからの横断)を進める。あるいは、横断によって、「保留中」と既にラベル付けされているトークンが見つけ出されると、そのトークンは、交わりトークンとして識別されること、および(3)とラベル付けされる。次いで、(3)とラベル付けされているそれぞれのトークンは、文法として選択されることが可能であり、その文法は、構造化クエリを表す自然言語文字列を生成するために使用される。このアルゴリズムは、交わりトークンにつながる文法フォレスト内の最も低いコストのマルチパスを見つけ出すよう試みることになり、この最も低いコストのマルチパスに対応する交わりトークンは、その他の交わりトークン(が存在する場合には、それらの交わりトークン)に優先して選択される。本開示は、特定の様式で特定の文法フォレストを分析することについて記述しているが、本開示は、任意の適切な様式で任意の適切な文法フォレストを分析することを想定している。
定の実施形態においては、ソーシャルネットワーキング・システム160は、広告スポンサーシップに基づいて、選択された文法に関するスコアを決定する。広告主(たとえば、特定のノードに対応する特定のプロフィール・ページのユーザまたは管理者など)は、特定のノードのスポンサーになることができ、それによって、そのスポンサー付きノードを参照するクエリ・トークンを含む文法は、より高くスコア付けされることが可能になる。本開示は、特定の様式で特定の文法に関する特定のスコアを決定することについて記述しているが、本開示は、任意の適切な様式で任意の適切な文法に関する任意の適切なスコアを決定することを想定している。
れているソーシャル・グラフ200上で互いから三次以内にある。しかしながら、この例を続けると、「レシピのすべて」というアプリケーションに対応するコンセプト・ノード204は、ユーザ「D」に対応するユーザ・ノード202に関連があるとみなされない。なぜなら、これらのノードは、ソーシャル・グラフ200内で4度合い離れているためである。本開示は、特定のソーシャル・グラフ要素同士(結果として、それらの対応するクエリ・トークン同士)が互いに関連があるか否かを特定の様式で決定することについて記述しているが、本開示は、任意の適切なソーシャル・グラフ要素同士が互いに関連があるか否かを任意の適切な様式で決定することを想定している。その上、本開示は、ユーザ・ノード202およびコンセプト・ノード204に対応する特定のクエリ・トークンが、クエリを行っているユーザに関連があるか否かを決定することについて記述しているが、本開示は、任意の適切なクエリ・トークン(結果として、任意の適切なノード)がその他の任意の適切なユーザに関連があるか否かも同様に決定することを想定している。
いずれかに対応するクエリ・トークンを含む文法に関するスコアを決定する際に、ソーシャルネットワーキング・システム160は、「スタンフォード大学」を表すコンセプト・ノード204に対応するクエリ・トークンを有する文法が、「カリフォルニア州スタンフォード」を表すコンセプト・ノード204を参照する文法よりも相対的に高いスコアを有するということを決定する。なぜなら、前者のコンセプト・ノード204につながっているエッジの数の方が多いためである。特定の実施形態においては、選択された文法に関するスコアは、第1のユーザ(すなわち、クエリを行っているユーザ)に関連付けられている検索履歴に基づく。第1のユーザが以前にアクセスしたノード、または第1のユーザが以前にアクセスしたノードに関連があるノードに対応するクエリ・トークンを有する文法は、第1のユーザの検索クエリのターゲットである可能性がさらに高い場合がある。したがって、これらの文法は、より高いスコアを与えられる。限定ではなく、例として、第1のユーザが、以前に「スタンフォード大学」のプロフィール・ページを訪れたことがあるが、「カリフォルニア州スタンフォード」のプロフィール・ページを訪れたことが一度もない場合には、これらのコンセプトに対応するクエリ・トークンを有する文法に関するスコアを決定する際に、ソーシャルネットワーキング・システム160は、「スタンフォード大学」を表すコンセプト・ノード204が、結果として、対応するクエリ・トークンを使用する文法が、相対的に高いスコアを有するということを決定する。なぜなら、クエリを行っているユーザが、その学校を表すコンセプト・ノード204に以前にアクセスしたことがあるためである。限定ではなく、別の例として、第1のユーザが、以前に「フレンズ」というテレビ番組に関するコンセプトプロフィール・ページを訪れたことがある場合には、そのコンセプトに対応するクエリ・トークンを有する文法に関するスコアを決定する際に、ソーシャルネットワーキング・システム160は、「フレンズ」というテレビ番組に対応するコンセプト・ノード204が、結果として、対応するクエリ・トークンを使用する文法が、相対的に高いスコアを有するということを決定する。なぜなら、クエリを行っているユーザが、そのテレビ番組を表すコンセプト・ノード204に以前にアクセスしたことがあるためである。本開示は、特定の様式で特定のソーシャル・グラフ情報に基づいて特定の文法に関するスコアを決定することについて記述しているが、本開示は、任意の適切な様式で任意の適切なソーシャル・グラフ情報に基づいて任意の適切な文法に関するスコアを決定することを想定している。
っている]という終端トークンを使用しており、その終端トークンは、自然言語シンタックスを使用しており、それにより、文法によってレンダリングされる文字列は、自然言語である。次いで、文法によって生成される自然言語文字列は、ソーシャル・グラフ要素に対応するクエリ・トークンを、それらのソーシャル・グラフ要素への参照を含むように修正することによって、構造化クエリを形成するようにレンダリングされる。限定ではなく、例として、「スタンフォード大学に通っている友達」という文字列がレンダリングされることが可能であり、それによって、「スタンフォード大学」を表すクエリ・トークンが、「スタンフォード大学」という学校に対応するコンセプト・ノード204への参照として、構造化クエリ内に現れ、その参照は、強調表示、インライン・リンク、スニペット、別の適切な参照、またはそれらの任意の組合せを含む。それぞれの構造化クエリは、対応する選択された文法に対応するクエリ・トークンを含むことができ、これらのクエリ・トークンは、識別されたエッジ206のうちの1または複数、および識別されたノードのうちの1または複数に対応する。構造化クエリを生成することについて、以降でさらに記述する。
それらの任意の組合せ)を含む。工程620において、ソーシャルネットワーキング・システム160は、非構造化テキスト・クエリを第1のユーザから受け取る。そのテキスト・クエリは、1または複数のnグラムを含む。工程630において、ソーシャルネットワーキング・システム160は、非構造化テキスト・クエリの少なくとも一部分に対応するエッジおよび第2のノードを識別する。たとえば、ソーシャルネットワーキング・システム160は、そのクエリからの特定のnグラムに対応するエッジおよびノードを識別する。工程640において、ソーシャルネットワーキング・システム160は、複数の文法を含むコンテキストフリー文法モデルにアクセスする。各文法は、1または複数の非終端トークンおよび1または複数のクエリ・トークン(すなわち、終端トークン)を含む。工程650において、ソーシャルネットワーキング・システム160は、複数の文法における1または複数のクエリ・トークンを識別することができ、識別された各クエリ・トークンは、識別されたノードまたは識別されたエッジのうちの1つに対応する。工程660において、ソーシャルネットワーキング・システム160は、1または複数の文法を選択することができ、選択された文法のそれぞれは、識別されたエッジおよび識別された第2のノードのそれぞれに対応する少なくとも1つのクエリ・トークンを含む。工程670において、ソーシャルネットワーキング・システムは、選択された文法に基づいて1または複数の構造化クエリを生成する。各構造化クエリは、自然言語シンタックスを使用する、選択された文法によって生成された文字列に対応する。各構造化クエリは、識別されたエッジおよび識別された第2のノードのそれぞれへの参照を含む。特定の実施形態は、適切な場合には、図6の方法の1または複数の工程を繰り返す。本開示は、図6の方法の特定の工程同士を、特定の順序で生じるものとして記述し、示しているが、本開示は、任意の適切な順序で生じる図6の方法の任意の適切な工程同士を想定している。その上、本開示は、図6の方法の特定の工程を実行する特定の構成要素、デバイス、またはシステムについて記述し、示しているが、本開示は、図6の方法の任意の適切な工程を実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組合せを想定している。
特定の実施形態においては、ソーシャルネットワーキング・システム160は、対応する文法のクエリ・トークンをそれぞれが含む1または複数の構造化クエリを生成することができ、それらのクエリ・トークンは、識別されたユーザ・ノード202のうちの1もしくは複数、または識別されたエッジ206のうちの1もしくは複数に対応する。生成された構造化クエリは、前述のように、1または複数のコンテキストフリー文法によって生成された自然言語文字列に基づく。このタイプの構造化検索クエリは、ソーシャルネットワーキング・システム160が、識別されたユーザ・ノード202および識別されたエッジ206につながっているまたはその他の形で関連しているコンテンツを検索することによって、オンライン・ソーシャル・ネットワークに関連しているリソースおよびコンテンツ(たとえば、プロフィール・ページなど)をさらに効率よく検索することを可能にする。限定ではなく、例として、「僕のガールフレンドの友達を表示してほしい」というテキスト・クエリに応答して、ソーシャルネットワーキング・システム160は、「ステファニーの友達」という構造化クエリを生成することができ、この構造化クエリ内の「友達」および「ステファニー」は、特定のソーシャル・グラフ要素に対応する参照である。「ステファニー」への参照は、特定のユーザ・ノード202に対応することになり、その一方で「友達」への参照は、そのユーザ・ノード202をその他のユーザ・ノード202につなげる「友達」エッジ206(すなわち、「ステファニーの」1次友達につなげるエッジ206)に対応することになる。この構造化クエリを実行する際に、ソーシャルネットワーキング・システム160は、「ステファニー」に対応するユーザ・ノード202に「友達
」エッジ206によってつながっている1または複数のユーザ・ノード202を識別する。特定の実施形態においては、ソーシャルネットワーキング・システム160は、複数の構造化クエリを生成することができ、それらの構造化クエリは、別々の識別されたユーザ・ノード202または別々の識別されたエッジ206への参照を含む。限定ではなく、例として、「photos of cat(ネコの写真)」というテキスト・クエリに応答して、ソーシャルネットワーキング・システム160は、「Photos of Catey(キャティの写真)」という第1の構造化クエリ、および「Photos of Catherine(キャサリンの写真)」という第2の構造化クエリを生成することができ、この構造化クエリ内の「Photos(写真)」は、特定のソーシャル・グラフ要素に対応する参照であり、「Catey(キャティ)」および「Catherine(キャサリン)」は、2つの異なるユーザ・ノード202への参照である。本開示は、特定の様式で特定の構造化クエリを生成することについて記述しているが、本開示は、任意の適切な様式で任意の適切な構造化クエリを生成することを想定している。
ワーキング・システム160は、構造化クエリのうちの1または複数を、たとえば、参照されるソーシャル・グラフ要素の名前(名前文字列)、その他のクエリ制限(たとえば、ブール演算子など)、ならびに潜在的には、参照されるソーシャル・グラフ要素に関連付けられているその他のメタデータを含む(AJAXまたはその他の適切な技術を利用する)応答としてユーザのクライアント・システム130へ送信する。クエリを行っているユーザのクライアント・システム130上のウェブ・ブラウザ132は、図4A〜図4Bにおいて示されているように、送信された構造化クエリをドロップダウン・メニュー300内に表示する。特定の実施形態においては、送信されたクエリは、クエリを行っているユーザに、ランク付けされた順序で、たとえば、上述のような以前に決定されたランクなどに基づいて提示される。よりよいランキングを伴う構造化クエリは、より目立つ位置に提示される。さらに、特定の実施形態においては、ランクしきい値を上回る構造化クエリのみが、クエリを行っているユーザに送信または表示される。限定ではなく、例として、図4A〜図4Bにおいて示されているように、構造化クエリは、クエリを行っているユーザにドロップダウン・メニュー300内で提示されることが可能であり、そのドロップダウン・メニュー300では、より高くランク付けされている構造化クエリが、メニューの上位に提示されることが可能であり、より低くランク付けされている構造化クエリが、メニューを下っていく降順で提示される。図4A〜図4Bに示されている例においては、上位7にランク付けされているクエリのみが、ユーザに送信されて表示されている。特定の実施形態においては、構造化クエリ内の1または複数の参照が、特定のソーシャル・グラフ要素に対するその対応を示すために強調表示されること(たとえば、外形を囲まれること、下線を付けること、丸を付けられること、太字にされること、イタリック体にされること、色を付けられること、明るくされること、ずらされること、大文字にされること)が可能である。限定ではなく、例として、図4A〜図4Bにおいて示されているように、「スタンフォード大学」および「カリフォルニア州スタンフォード」への参照は、それが特定のコンセプト・ノード204に対応しているということを示すために、構造化クエリ内で強調表示されている(外形を囲まれている)。同様に、ドロップダウン・メニュー300において提示されている構造化クエリ内の「の友達」、「に対して「いいね!」を表明している」、「に勤務している」、および「に通った」への参照は、それらが特定のエッジ206に対応しているということを示すために強調表示されることも可能である。本開示は、特定の様式で特定の構造化クエリを送信することについて記述しているが、本開示は、任意の適切な様式で任意の適切な構造化クエリを送信することを想定している。
図7A〜図7Gは、例示的な検索結果ページを示している。クエリを行っているユーザ(「第1のユーザ」とも呼ばれる)から受け取られた構造化クエリに応答して、ソーシャルネットワーキング・システム160は、1または複数の検索結果を生成することができ、その場合、それぞれの検索結果は、構造化クエリの用語にマッチする(または実質的にマッチする)。特定の実施形態においては、ソーシャルネットワーキング・システム160は、クエリを行っているユーザ(第1のユーザ・ノード202に対応する「第1のユーザ」とも呼ばれる)から、構造化クエリを受け取る。その構造化クエリに応答して、ソーシャルネットワーキング・システム160は、その構造化クエリに対応する1または複数の検索結果を生成する。それぞれの検索結果は、プロフィール・ページへのリンク、およびそのプロフィール・ページ(または、そのページに対応するノード)の記述または概要を含む。それらの検索結果は、検索結果ページとして、クエリを行っているユーザに提示および送信される。図7A〜図7Gは、さまざまな構造化クエリに応答して生成されたさまざまな例示的な検索結果ページを示している。特定の検索結果ページを生成するために使用された構造化クエリが、クエリ・フィールド350において示されており、その構造化クエリに応答して生成されたさまざまな検索結果が、結果フィールド710において示されている。特定の実施形態においては、クエリ・フィールド350は、そのページを表すタイトル・バーとしての役割を果たすこともできる。言い換えれば、タイトル・バー兼クエリ・フィールド350は、検索結果ページ上では、事実上、統合されたフィールドである。一例として、図7Gは、クエリ・フィールド350における「テネシー州出身の私の友達の写真」という構造化クエリを伴う検索結果ページを示している。この構造化クエリは、事実上、生成されたページを表すタイトルとしての役割も果たし、このページは、クエリを行っているユーザのテネシー州出身の友達の複数の写真を示している。この検索結果ページは、修正フィールド720、提案される検索フィールド730、拡張検索フィールド740、またはあいまい性解消フィールド750を含むこともできる。これらのさらなるフィールドについて、以降でさらに論じる。検索結果を生成する際に、ソーシャルネットワーキング・システム160は、それぞれの検索結果に関する1または複数のスニペットを生成することができ、その場合、それらのスニペットは、検索結果のターゲットに関するコンテキスト情報(すなわち、特定の検索結果に対応するソーシャル・グラフ・エンティティ、プロフィール・ページ、またはその他のコンテンツに関するコンテキスト情報)である。特定の実施形態においては、それぞれの検索結果に関する少なくとも1つのスニペットが、系統スニペットとなり、系統スニペットは、検索結果が、その検索結果を生成するために使用された構造化クエリからの選択されたノードおよび選択されたエッジにどのようにマッチしているかを記述する。これらの系統スニペットは、特定の検索結果が、ソーシャル・グラフ要素に関する構造化クエリの用語をどのように満たしているかに関するコンテキストを提供する。本開示は、特定の検索結果ページについて記述し、示しているが、本開示は、任意の適切な検索結果ページを想定している。本開示は、特定の様式で特定のスニペットを生成することについて記述し、示しているが、本開示は、任意の適切な様式で任意の適切なスニペットを生成することを想定している。
結果は、ノードに関連付けられているプロフィール・ページへのリンク、ならびにノードに関するコンテキスト情報(すなわち、ノードに対応するユーザまたはコンセプトに関するコンテキスト情報)を含む。限定ではなく、例として、図7Bを参照すると、クエリ・フィールド350における「フェイスブックで働いている私の友達」という構造化クエリが、結果フィールド710において示されているさまざまな検索結果を生成した。結果フィールド710におけるそれぞれの検索結果は、ユーザのプロフィール・ページへのリンク(ユーザの名前として示されており、プロフィール・ページへのインライン・リンクを含んでいる)、およびソーシャル・グラフ200のユーザ・ノード202に対応するそのユーザに関するコンテキスト情報を示している。限定ではなく、別の例として、図7Gを参照すると、クエリ・フィールド350における「テネシー州出身の私の友達の写真」という構造化クエリが、結果フィールド710において示されているさまざまな検索結果を生成した。図7Gにおいて示されているそれぞれの検索結果は、ソーシャル・グラフのコンセプト・ノード204に対応する写真のサムネイルを示している。特定の実施形態においては、それぞれの検索結果は、構造化クエリの選択されたエッジのうちの1または複数によって、選択されたノードのうちの1または複数につながっているノードに対応する。限定ではなく、例として、図2を参照すると、ユーザ「C」が、友達タイプのエッジ206、および「オールド・プロ」というロケーションのコンセプト・ノード204を参照する、「オールド・プロに対して「いいね!」を表明している友達」という構造化クエリをサブミットした場合には、ソーシャルネットワーキング・システム160は、ユーザ「B」に対応する検索結果を返す。なぜなら、ユーザ「B」のユーザ・ノード202は、友達タイプのエッジ206によってユーザ「C」のユーザ・ノード202につながっており、そしてまた、「いいね!」タイプのエッジ206によって「オールド・プロ」というロケーションのコンセプト・ノード204につながっているためである。特定の実施形態においては、ソーシャルネットワーキング・システム160は、構造化クエリに応答して、広告またはその他のスポンサー付きコンテンツをクライアント・システム130へ送信することもできる。それらの広告は、検索結果の一部として、または別途、含まれる。それらの広告は、検索結果において参照されているオブジェクトのうちの1または複数に対応する。特定の実施形態においては、ソーシャルネットワーキング・システム160は、特定のリソースまたはコンテンツを識別する1または複数の検索結果を、それらのリソースまたはコンテンツに関連付けられているユーザに関連付けられているプライバシー設定に基づいて除外する。本開示は、特定の様式で特定の検索結果を生成することについて記述しているが、本開示は、任意の適切な様式で任意の適切な検索結果を生成することを想定している。
ロケーションの「いいね!」/チェックインの数のような、検索結果において表示されるロケーションに関するコンテキスト情報である。スニペットにおいて提供される情報は、ターゲット・ページの所有者/管理者によって選択されることが可能であり、またはソーシャルネットワーキング・システム160によって自動的に選択される。スニペットは、イメージ・サムネイル、概要、ドキュメント・タイプ、ページ・ビュー、コメント、日付、著者、評価、価格、またはその他の関連情報など、検索結果に関する鍵となる情報を表示するために使用される。特定の実施形態においては、オンライン・ソーシャル・ネットワーク内のユーザ/コンセプトに対応する検索結果に関するスニペットは、オンライン・ソーシャル・ネットワークのユーザによって提供される、またはその他の形でオンライン・ソーシャル・ネットワーク上で利用可能なコンテキスト情報を含む。限定ではなく、例として、スニペットは、次のタイプの情報、すなわち、グループのプライバシー設定、グループ内のメンバーの数、スポンサー付きメッセージ(たとえば、スニペットとしてレンダリングされるインライン広告ユニット)、ページ・カテゴリ、物理アドレス、経歴の詳細、関心、交際状態、性的指向/好み、性/性別、年齢、生年月日、現住所、学歴、政治的所属、宗教的信仰、職歴、使用したアプリケーション、コメント、タグ、その他の適切なコンテキスト情報、またはそれらの任意の組合せのうちの1または複数を含む。特定の実施形態においては、スニペットは、ソーシャル・グラフ200からのノードまたはエッジへの参照を含む。これらのスニペットは、その参照がソーシャル・グラフ要素に対応するということを示すために強調表示される。限定ではなく、例として、図7Fは、「ソル」というユーザに関する検索結果を示しており、その検索結果に関するスニペットのうちの1つが、「レポサド、ザ・スランテッド・ドア、およびその他12個に対して「いいね!」を表明している」である。「レポサド」および「ザ・スランテッド・ドア」という用語は両方とも、この例においては強調表示されて(下線付きで)、それらが、「レポサド」および「ザ・スランテッド・ドア」というコンセプトに対応するコンセプト・ノード204への参照であるということを示しており、それらは、「ソル」というユーザによって「いいね!」を表明されているレストランである(すなわち、「ソル」を表すユーザ・ノード202は、「いいね!」タイプのエッジ206によって、「レポサド」および「ザ・スランテッド・ドア」を表すコンセプト・ノード204につながっている)。この例における強調表示された参照はまた、「レポサド」および「ザ・スランテッド・ドア」に対応するコンセプトプロフィール・ページへのインライン・リンクを含んでいる。特定の実施形態においては、ソーシャルネットワーキング・システム160は、検索結果に関する1または複数のスニペットを、その検索結果によって識別されたユーザに関連付けられているプライバシー設定に基づいて除外する。本開示は、特定のタイプのスニペットについて記述しているが、本開示は、任意の適切なタイプのスニペットを想定している。
ンセプト・ノード204につながっているユーザ・ノード202)、および「Acmeに勤務している」(すなわち、「で働いている」タイプのエッジ206によって、「Acme」を表すコンセプト・ノード204につながっているユーザ・ノード202)を含んでいる。「ルーク」に関して図7Dにおいて示されている第1の検索結果は、「フェイスブックのエンジニアリングのディレクター」と記述しているスニペットを含んでおり、これは、構造化クエリからの「フェイスブックで働いている」というトークンに対応している。したがって、このスニペットは、「ルーク」に関する検索結果が、構造化クエリの「フェイスブックで働いている」という要件を満たしているということを示している。なぜなら、「ルーク」は、「フェイスブックのエンジニアリングのディレクター」であるためである。「ルーク」の検索結果におけるその他のスニペットは、その検索結果が、構造化クエリのその他の基準をどのように満たしているかを示すさらなるコンテキストを提供している。言い換えれば、「ルーク」を表すユーザ・ノード202は、「働いた」タイプのエッジ206によって、「フェイスブック」を表すコンセプト・ノード204につながっている。特定の実施形態においては、系統スニペットは、次のタイプのソーシャル・グラフ情報、すなわち、通った学校、勤務した先、「いいね!」を表明したページ、使用したアプリ、サブスクライブしている先、サブスクライブされている相手、家族関係、関係のつながり(結婚した相手、交際中など)、住んでいる場所/その近辺、チェックインした場所、訪問した場所、あるロケーションに住んでいる友達の数、あるロケーションにおいて学んでいる友達の数、あるグループのメンバーである友達、「いいね!」の数、あるページに関して話している人々の数、サブスクライバの数、あるアプリケーションを使用している友達、あるアプリケーションのユーザの数、メディアにおいてタグ付けされている人々、メディアの上で/中でコメントした人々、メディアを作成した人々、その他の適切なソーシャル・グラフ情報、またはそれらの任意の組合せのうちの1または複数を含む。特定の実施形態においては、系統スニペットにおける選択されたノードまたは選択されたエッジへの参照のうちの1または複数は、その参照が、選択されたノードまたは選択されたエッジに対応しているということを示すために強調表示される。本開示は、特定のタイプの系統スニペットについて記述しているが、本開示は、任意の適切なタイプの系統スニペットを想定している。
って同じ197個のユーザ・ノード202につながっている。特定の実施形態においては、検索結果は、マルチレベル系統スニペットを含む。マルチレベル系統スニペットは、そのスニペットにおけるユーザまたはコンセプトの参照が、構造化クエリからのクエリ・トークンにどのように関連しているかに関するコンテキスト情報を提供する。これは、複雑な構造化クエリに応答して使用される。限定ではなく、例として、ユーザ「A」およびユーザ「D」は、(彼らが兄弟であるということを示す)兄弟タイプのエッジ206によってソーシャル・グラフ200においてつながっている。「Acmeの従業員の兄弟である人々を表示してほしい」と表している構造化クエリに応答して、ソーシャルネットワーキング・システム160は、ユーザ「A」に関する検索結果を、「ユーザDの兄弟。ユーザDは、Acmeのソフトウェア・エンジニアである」と記述するスニペットとともに生成する。このスニペットは、ユーザ「A」の検索結果がユーザ「D」にどのように関連しているか(彼らは兄弟であり、兄弟タイプのエッジ206によってつながっている)、およびユーザ「D」が「Acme」にどのように関連しているか(ユーザ「D」は、「働いた」タイプのエッジ206によって「Acme」につながっている)に関するコンテキスト情報を提供する。本開示は、特定のタイプのソーシャル・スニペットについて記述しているが、本開示は、任意の適切なタイプのソーシャル・スニペットを想定している。
対して「いいね!」を表明している人々」という構造化クエリが、結果フィールド710において示されている検索結果を生成した。「ソル」に関する検索結果は、「レポサド、ザ・スランテッド・ドア、およびその他12個に対して「いいね!」を表明している」というスニペットを含んでおり、この場合、「レポサド」および「ザ・スランテッド・ドア」は両方とも、パロアルトにある特定のメキシコ料理店を表すコンセプト・ノード204への参照である。同様に、「その他12個」への参照は、「ソルによって「いいね!」を表明されているカリフォルニア州パロアルトにあるメキシコ料理店」という構造化クエリに関するインライン・リンクであることが可能であり、したがって、検索結果のユーザ・ノード202(すなわち、「ソル」のユーザ・ノード202)、ならびに、元の構造化クエリからの選択されたノードおよび選択されたエッジ(すなわち、「カリフォルニア州パロアルト」を表すコンセプト・ノード204、および「いいね!」タイプのエッジ206)の両方を参照している。本開示は、カスタマイズされた構造化クエリとともに特定のスニペットを生成することについて記述しているが、本開示は、カスタマイズされた構造化クエリとともに任意の適切なスニペットを生成することを想定している。
っているユーザが以前にアクセスしたことがあるソーシャル・グラフ要素、またはクエリを行っているユーザが以前にアクセスしたことがあるノード/プロフィール・ページに関連しているソーシャル・グラフ要素を参照するスニペットは、ユーザの構造化クエリに関連している可能性がより高い場合がある。したがって、これらのスニペットには、より高い相対的なスコアが与えられる。限定ではなく、例として、クエリを行っているユーザが、「独身である、僕の女友達」を以前に検索したことがある場合には、ソーシャルネットワーキング・システム160は、クエリを行っているユーザが、彼が検索している人々の交際状態に関心があるということを決定する。これは、クエリ内の「独身である」というクエリ修飾語句に起因しており、このクエリ修飾語句は、「独身」という交際状態を有しているユーザを検索することになる。したがって、その後のクエリ(たとえば、図7Eにおいて示されているような、「スタンフォード大学に通っていたフェイスブックのエンジニア」)に応答して、ソーシャルネットワーキング・システム160は、検索結果の交際状態を示すスニペットを、その他のスニペットよりも高くスコア付けする。これは、そのタイプのコンテキスト情報に対するクエリを行っているユーザの関心の履歴に起因している(したがって、図7Eにおいて示されている検索結果は、たとえば「交際中」または「結婚している」など、それぞれの検索結果に関する関係ステータスを示すスニペットをより高くスコア付けしている場合がある)。特定の実施形態においては、ソーシャルネットワーキング・システム160は、スニペットに関するスコアを、検索のカテゴリに基づいて決定する。検索は、その検索の主題であるコンテンツのタイプに基づいて分類される。検索されているコンテンツのタイプにさらに関連しているスニペットは、あまり関連していないスニペットよりも高くスコア付けされる。限定ではなく、例として、ユーザを検索している場合には、そのユーザに関する個人情報(たとえば、ロケーション、交際状態など)を含むスニペットは、その他のタイプのスニペットよりも高くスコア付けされる。なぜなら、個人情報は、その他のユーザを検索しているクエリを行っているユーザにさらに関連しているとみなされる場合があるためである。限定ではなく、別の例として、コンセプトを検索している場合には、そのコンセプトに関するソーシャル・グラフ情報(たとえば、サブスクライバ/ファンの数、「いいね!」の数、チェックイン/レビューの数など)を含むスニペットは、その他のタイプのスニペットよりも高くスコア付けされる。なぜなら、ソーシャル・グラフ情報は、コンセプトを検索しているクエリを行っているユーザにさらに関連している場合があるためである。特定の実施形態においては、ソーシャルネットワーキング・システム160は、スニペットに関するスコアを、広告スポンサーシップに基づいて決定する。広告主(たとえば、特定のノードに対応する特定のプロフィール・ページのユーザまたは管理者など)は、特定のノードのスポンサーになることができ、それによって、そのノードを参照するスニペットは、より高くスコア付けされることが可能になる。本開示は、特定の様式でスニペットをスコア付けすることについて記述しているが、本開示は、任意の適切な様式でスニペットをスコア付けすることを想定している。
トは、構造化クエリの選択されたノードおよび選択されたエッジへの1または複数の参照を含む。特定の実施形態は、適切な場合には、図8の方法の1または複数の工程を繰り返す。本開示は、図8の方法の特定の工程同士を、特定の順序で生じるものとして記述し、示しているが、本開示は、任意の適切な順序で生じる図8の方法の任意の適切な工程同士を想定している。その上、本開示は、図8の方法の特定の工程を実行する特定の構成要素、デバイス、またはシステムについて記述し、示しているが、本開示は、図8の方法の任意の適切な工程を実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組合せを想定している。
前述したように、図7A〜図7Gは、例示的な検索結果ページを示している。特定の検索結果ページを生成するために使用された構造化クエリが、クエリ・フィールド350において示されており、その構造化クエリに応答して生成されたさまざまな検索結果が、結果フィールド710において示されている。クエリを行っているユーザから受け取られた構造化クエリに応答して、ソーシャルネットワーキング・システム160は、そのクエリに対して絞り込みまたはピボッティングを行うために使用される1または複数のクエリ修正を生成する。それらのクエリ修正は、特定のソーシャル・グラフ要素を参照して、クエリを行っているユーザが、構造化クエリ内で参照されているソーシャル・グラフ要素に追加または置換を行うことを可能にする。特定の実施形態においては、1または複数のクエリ修正は、検索結果ページ上で、修正フィールド720、提案される検索フィールド730、拡張検索フィールド740、またはあいまい性解消フィールド750内に提示される。クエリ修正は、構造化クエリにさらなる用語を追加することによって、そのクエリに対して絞り込みを行う、またはそれを狭めるために使用される。一般には、構造化クエリにさらなる用語を追加すると、そのクエリによって生成される検索結果の数は少なくなる。限定ではなく、例として、「スタンフォード大学に通っている私の友達」という構造化クエリに応答して、ソーシャルネットワーキング・システム160は、「私の友達」という用語に対するクエリ修正、たとえば、検索結果を性別によってフィルタリングするための「私の[男性の/女性の]友達」、または検索結果を交際状態によってフィルタリングするための「私の[独身の/結婚している]友達」などを生成する。クエリ修正は、そのクエリの1または複数の用語を変更することによって、構造化クエリに対してピボッティングを行う、またはそれを広げるために使用されることも可能である。限定ではなく、例として、「フェイスブックで働いている私の友達」という構造化クエリに応答して、ソーシャルネットワーキング・システム160は、「Acmeで働いている」というクエリ修正を生成することができ、このクエリ修正は、「フェイスブックで働いている」という用語に取って代わり、それによって、ユーザの1つのセットを検索することから、別のセットを検索することへと、クエリに対してピボッティングを行う。これらの提案されるクエリ修正を、クエリを行っているユーザに提供することによって、ソーシャルネットワーキング・システム160は、ユーザがまさに自分が探しているものを検索するための強力な方法を提供する。クエリを行っているユーザによってクエリ修正が選択されると、適切な文法を使用して新たな構造化クエリが生成されることが可能であり、それによって、その新たな構造化クエリも、自然言語シンタックスを使用してレンダリングされる。ソーシャルネットワーキング・システム160は、検索結果ページ上に表示される代替の構造化クエリを生成することもできる。これらの代替の構造化クエリは、提案されるクエリ、広げるクエリ、およびあいまい性解消クエリを含み、これらについては、以降でさらに記述する。本開示は、特定の様式でクエリ修正を生成することについて記述しているが、本開示は、任意の適切な様式でのクエリ修正を想定している。その上、本開示は、特定の様式でユーザにクエリ修正を提示することについて記述しているが、本開示は、任意の適切な様式でユーザにクエリ修正を提示することを想定している。
は複数のクエリ修正を生成する。それらのクエリ修正は、第1の構造化クエリを受け取ったことに応答して生成されることが可能であり、それによって、それらのクエリ修正は、第1の構造化クエリを修正するために使用される。クエリ修正は、検索クエリを修正するために使用される任意のタイプの用語である。たとえば、クエリ修正は、テキスト文字列、nグラム、終端/クエリ・トークン、値、プロパティー、クエリ演算子、別の適切なタイプの用語、またはそれらの任意の組合せである。特定の実施形態においては、クエリ修正は、カテゴリ別に編成される。限定ではなく、例として、図7Aにおいて示されている修正フィールド720は、「雇用主」、「学校」、「現住所」、「出身地」、「交際状態」、「関心」、「友達関係」、「性別」、「名前」、および「いいね!」に関するクエリ修正を示している。特定の実施形態においては、クエリ修正は、検索結果ページの一部として、クエリを行っているユーザへ送信される。限定ではなく、例として、図7D、図7E、および図7Fにおいて示されている検索結果ページはすべて、修正フィールド720内のドロップダウン・メニューにおいて表示されているクエリ修正のリストを示している。これらのドロップダウン・メニューにおいてリストアップされているクエリ修正は、検索フィールド350において表示されている構造化クエリ内の用語に追加または置換を行うために使用される。特定の実施形態においては、カスタマイズされたクエリ修正が、タイプ・アヘッド・プロセスに関連して生成される。事前に生成されたクエリ修正のリストから選択を行うことよりもむしろ、ユーザは、テキスト文字列を入力することができ、タイプ・アヘッド・プロセスは、入力されたテキスト文字列から、nグラムのうちの1または複数に対応するソーシャル・グラフ要素を識別する。次いで、ソーシャルネットワーキング・システム160は、1または複数の可能なマッチを提示する。限定ではなく、例として、図7Eは、クエリを行っているユーザが、修正フィールド720における「学校」カテゴリに関する入力フィールド内に「ハーバード」という文字列を入力しているところを示している。それに応答して、タイプ・アヘッド・プロセスは、数ある中でも、「ハーバード」、「ハーバード・ロー・スクール」、および「ハーバードウェストレイク」を含めて、いくつかの可能なマッチしているクエリ修正を生成している。ドロップダウン・メニューにおいて表示されているこれらのリストアップされている学校は、これらの学校に対応するソーシャル・グラフ200内のコンセプト・ノード204への参照である。本開示は、クエリ修正の特定のカテゴリについて記述し、示しているが、本開示は、クエリ修正の任意の適切なカテゴリを想定している。
4への参照である。次いで、クエリを行っているユーザは、参照されている学校を、構造化クエリに追加するために、これらのクエリ修正のうちの1または複数を選択することができ、それにより、検索結果を学校によってフィルタリングする。クエリを行っているユーザからの選択に応答して、ソーシャルネットワーキング・システム160は、構造化クエリを、選択された学校への参照を含むように修正する。限定ではなく、別の例として、図7Bは、「フェイスブックで働いている私の友達」という構造化クエリによって生成された例示的な検索結果ページを示している。「私の友達」への参照は、友達タイプのエッジ206によって、クエリを行っているユーザにつながっているユーザ・ノード202に対応しており、その一方で、「フェイスブック」への参照は、「フェイスブック」という会社を表すコンセプト・ノード204に対応している。構造化クエリ内の特定のノードおよびエッジへのこれらの参照は、図7Bにおいて示されている修正フィールド720内に示されており、この場合、「雇用主」に関するカテゴリは、既に「フェイスブック」という用語を選択されており、その一方で、「友達関係」に関するカテゴリは、既に「私の友達」という用語を選択されている。しかしながら、クエリを行っているユーザは、検索に対してピボッティングを行い、代わりに別の会社における友達を検索したいと望むかもしれない。クエリを修正するために、クエリを行っているユーザは、「雇用主」カテゴリを選択して、参照を「フェイスブック」から別の会社、たとえば「Acme」などに変更する。クエリを行っているユーザが、「雇用主」カテゴリを選択すると、ソーシャルネットワーキング・システム160は、そのカテゴリ用に生成されているクエリ修正のリストを表示する。クエリを行っているユーザからの選択に応答して、ソーシャルネットワーキング・システム160は次いで、構造化クエリを修正して、「フェイスブック」への参照を、「Acme」への参照と置換し(それによって、新たな構造化クエリは、「Acmeで働いている私の友達」となり)、それにより、友達の1つのセットから別のセットへと、検索に対してピボッティングを行う。本開示は、特定の様式で特定のクエリ修正を使用することについて記述しているが、本開示は、任意の適切な様式で任意の適切なクエリ修正を使用することを想定している。
て、ソーシャルネットワーキング・システム160は、(「〜在住の」タイプのエッジ206による、「サンフランシスコ」という都市を表すコンセプト・ノード204へのつながりを参照している)「サンフランシスコ在住の」というクエリ修正を受け取る。次いで、ソーシャルネットワーキング・システム160は、「サンフランシスコ在住の私の友達」という第2の構造化クエリを生成することができ、この第2の構造化クエリは、第1の構造化クエリからの「サンノゼ在住の」という選択されたノード/エッジへの参照を、「サンフランシスコ在住の」という代替ノード/エッジと置換している。本開示は、特定の様式で特定の修正された構造化クエリを生成することについて記述しているが、本開示は、任意の適切な様式で任意の適切な修正された構造化クエリを生成することを想定している。
アを、クエリを行っているユーザに関連付けられている検索履歴に基づいて決定する。クエリを行っているユーザが以前にアクセスしたことがあるソーシャル・グラフ要素、またはクエリを行っているユーザが以前にアクセスしたことがあるノード/プロフィール・ページに関連しているソーシャル・グラフ要素を参照するクエリ修正は、ユーザの構造化クエリに関連している可能性がより高い場合がある。したがって、これらのクエリ修正には、より高い相対的なスコアが与えられる。限定ではなく、例として、クエリを行っているユーザが、「スタンフォード大学にいる私の友達」を以前に検索したことがある場合には、ソーシャルネットワーキング・システム160は、クエリを行っているユーザが、「スタンフォード大学」を表すコンセプト・ノード204につながっているユーザ・ノード202に関心があるということを決定する。したがって、その後のクエリに応答して、ソーシャルネットワーキング・システム160は、「スタンフォード大学」を参照するクエリ修正を、その他のクエリ修正よりも高くランク付けする。これは、そのタイプのコンテキスト情報に対するクエリを行っているユーザの関心の履歴に起因している(したがって、図7Dにおいて示されている検索結果は、「スタンフォード大学を表すクエリ修正をより高くランク付けしている場合がある)。特定の実施形態においては、ソーシャルネットワーキング・システム160は、クエリ修正に関するスコアを、広告スポンサーシップに基づいて決定する。広告主(たとえば、特定のノードに対応する特定のプロフィール・ページのユーザまたは管理者など)は、特定のノードのスポンサーになることができ、それによって、そのノードを参照するクエリ修正は、より高くスコア付けされることが可能になる。本開示は、特定の様式でクエリ修正をスコア付けすることについて記述しているが、本開示は、任意の適切な様式でクエリ修正をスコア付けすることを想定している。
探す検索である。同様に、第1の構造化クエリが、写真を探す検索である場合には、提案されるクエリも、写真を探す検索である。特定の実施形態においては、提案されるクエリは、検索結果ページの一部として、クエリを行っているユーザへ送信される。限定ではなく、例として、図7Bにおいて示されている検索結果ページは、提案される検索フィールド730内にいくつかの例示的な提案されるクエリを示している。「フェイスブックで働いている私の友達」という第1の構造化クエリに応答して、ソーシャルネットワーキング・システム160は、数ある中でも、「フェイスブックに「いいね!」を表明している私の友達の友達」および「カリフォルニア州パロアルト在住の私の友達」という提案される構造化クエリを生成しており、それらは、提案される検索フィールド730内に示されている。これらの提案されるクエリは、第1の構造化クエリに基づいて生成されている場合があり、その場合、第1の構造化クエリからのクエリ・トークンのうちの1または複数が置換されている。本開示は、構造化クエリを特定の様式で生成することについて記述しているが、本開示は、構造化クエリを任意の適切な様式で生成することを想定している。
。第1の構造化クエリから限定を除去することによって、より多くのユーザが、そのクエリを満たし、結果として、これらのクエリは、より多くの検索結果を生成する。特定の実施形態においては、ソーシャルネットワーキング・システム160は、第1の構造化クエリからのゼロ以上の選択されたノードおよびゼロ以上の選択されたエッジへの参照を含む1または複数の第2の構造化クエリを生成することができ、その場合、それぞれの第2の構造化クエリは、第1の構造化クエリの選択されたノードまたは選択されたエッジへの少なくとも1つの参照を、それぞれ代替ノードまたは代替エッジと置換する。限定ではなく、例として、再び図7Aを参照すると、ソーシャルネットワーキング・システム160は、「フェイスブックが採用していた、一輪車に乗ることに関心がある人々」および「フェイスブックがこれまでに採用した、一輪車に乗ることに関心がある人々」という広げるクエリを生成した。これらの広げるクエリは、第1の構造化クエリに基づいて生成されている場合があり、その場合、「現在〜に勤務している」というクエリ・トークンは、それぞれ「採用していた」および「これまでに採用した」というクエリ・トークンによって置換されており、それによって、異なるタイムフレームを使用して検索結果をフィルタリングしている(これは、このクエリを満たすつながりエッジのタイプを、「〜で働いている」タイプのエッジ206から、「〜で働いた」タイプのエッジ206も含むように拡張する)。特定の実施形態においては、それらの広げるクエリは、検索結果ページの一部として、クエリを行っているユーザへ送信される。限定ではなく、例として、図7Aにおいて示されている検索結果ページは、拡張検索フィールド740内にいくつかの例示的な広げるクエリを示しており、それについては、上で論じてきた。本開示は、特定の広げるクエリを特定の様式で生成することについて記述しているが、本開示は、任意の適切な広げるクエリを任意の適切な様式で生成することを想定している。
いまい性解消クエリを生成した。ソーシャルネットワーキング・システム160はまた、自分が第1の構造化クエリをどのように解析したかの説明を提供しており、「これらの結果は、テネシー州出身のあなたの友達に属している写真を示しています」と記述している。言い換えれば、ソーシャルネットワーキング・システム160は、「〜においてタグ付けされている」タイプのエッジ206によってユーザ・ノード202につながっていた写真に対応するコンセプト・ノード204を識別するために第1の構造化クエリを解析しており、この場合、これらのユーザ・ノード202は、「〜に住んでいた」または「〜出身である」タイプのエッジ206によって「テネシー州」を表すコンセプト・ノード204につながっていた。対照的に、提案されるあいまい性解消クエリは、「〜において撮影された」タイプのエッジ206によって「テネシー州」を表すコンセプト・ノード204につながっていた写真に対応するコンセプト・ノード204を識別することになり、この場合、写真を表すコンセプト・ノード204は、クエリを行っているユーザの友達のユーザ・ノード202にもつながっていた。本開示は、特定の様式で特定のあいまい性解消クエリを生成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なあいまい性解消クエリを生成することを想定している。
図10は、例示的なコンピュータ・システム1000を示している。特定の実施形態においては、1または複数のコンピュータ・システム1000が、本明細書において記述されているまたは示されている1または複数の方法の1または複数の工程を実行する。特定の実施形態においては、1または複数のコンピュータ・システム1000が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1または複数のコンピュータ・システム1000上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1もしくは複数の方法の1もしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1または複数のコンピュータ・システム1000の1または複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができ、その逆もまた同様である。その上、コンピュータ・システムへの言及は、適切な場合には、1または複数のコンピュータ・システムを包含する。
を高速化する。TLBは、プロセッサ1002のための仮想アドレス変換を高速化する。特定の実施形態においては、プロセッサ1002は、データ、命令、またはアドレスのための1または複数の内部レジスタを含む。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ1002を想定している。適切な場合には、プロセッサ1002は、1もしくは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1もしくは複数のプロセッサ1002を含む。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
の適切な物理的な形態を取るマス・ストレージ1006を想定している。ストレージ1006は、適切な場合には、プロセッサ1002とストレージ1006との間における通信を容易にする1または複数のストレージ・コントロール・ユニットを含む。適切な場合には、ストレージ1006は、1または複数のストレージ1006を含む。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムの構成要素への添付の特許請求の範囲における言及は、その装置、システム、構成要素、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、または構成要素が、そうするように適合されている、そうするようにアレンジされている、そうする、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、構成要素を包含する。
Claims (17)
- コンピューティング・デバイスが、
複数のノードと、前記ノード同士をつなげる複数のエッジとを備えるソーシャル・グラフにアクセスする工程であって、前記ノードのうちの2つの間における前記エッジの各々は、それらの間における1次の隔たり度合いを表しており、前記ノードは、
オンライン・ソーシャル・ネットワークに関連付けられている第1のユーザに対応する第1のノードと、
前記オンライン・ソーシャル・ネットワークに関連付けられているコンセプトまたは第2のユーザに各々対応する複数の第2のノードとを含む、工程と、
前記第1のユーザによって入力された非構造化テキスト・クエリを前記第1のユーザのクライアント・システムから受け取る工程と、
前記非構造化テキスト・クエリに基づき前記ソーシャル・グラフの1以上のエッジおよび1以上の第2のノードを識別する工程であって、識別された前記エッジおよび識別された前記第2のノードの各々は、前記非構造化テキスト・クエリの少なくとも一部に対応している、識別工程と、
複数の文法を有する文法フォレストを含むコンテキストフリー文法モデルにアクセスする工程であって、各文法は1以上の非終端トークンおよび1以上のクエリ・トークンを含み、前記文法フォレストは、複数の非終端トークンおよび複数のクエリ・トークンを含む順序付きツリーとして編成されており、各文法は、非終端トークンを通じて1以上の他の文法に隣接する、編成されたサブツリーである、工程と、
前記ソーシャル・グラフの識別された前記1以上のエッジおよび識別された前記1以上の第2のノードに基づき前記文法フォレストの1以上の文法における1以上のクエリ・トークンを識別する工程であって、識別された各クエリ・トークンは前記ソーシャル・グラフの識別された前記第2のノードまたは識別された前記エッジのうちの1以上に対応する、工程と、
前記文法フォレストの1以上の文法を選択する工程であって、選択された各文法は、前記ソーシャル・グラフの識別された前記エッジおよび識別された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、文法選択工程と、
1以上の構造化クエリを生成する工程であって、各構造化クエリは選択された文法に対応し、各構造化クエリは対応する前記選択された文法によって生成される自然言語文字列に基づき、各構造化クエリは前記ソーシャル・グラフの識別された前記エッジおよび識別
された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、構造化クエリ生成工程と、
前記クライアント・システムの前記第1のユーザに対し、前記第1のユーザによって入力された前記非構造化テキスト・クエリに応じて、前記第1のユーザに対する表示用に提案されるクエリとして前記構造化クエリのうちの1以上を送信する工程と、を行う方法。 - 前記文法選択工程は、
各識別されたクエリ・トークンについて、文法フォレストを横断し、1以上の他の識別されたクエリ・トークンの横断と交わっている1以上の非終端トークンを識別する工程と、
識別された前記非終端トークンに隣接するセマンティック・ツリーにおける前記文法のうちの1以上を選択する工程と、を含む請求項1に記載の方法。 - 前記文法選択工程は、
前記非構造化テキスト・クエリに対応するセマンティック・ツリーを生成する工程であって、前記セマンティック・ツリーは交わりトークンおよび1以上のクエリ・トークンを含み、各クエリ・トークンは0以上の非終端トークンによって前記交わりトークンにつながっている、工程と、
前記文法フォレストを分析して、前記セマンティック・ツリーに実質的にマッチする非終端トークンおよびクエリ・トークンの1以上のセットを識別する工程であって、各セットは前記交わりトークンに対応する非終端トークンを有する、工程と、
前記交わりトークンに対応する前記非終端トークンに隣接する前記文法フォレストにおける前記文法のうちの1以上を選択する工程と、を含む請求項1に記載の方法。 - 前記非構造化テキスト・クエリに基づきクエリ・コマンドを生成する工程をさらに備える、請求項1に記載の方法。
- 前記構造化クエリ生成工程は、
各選択された文法について、該選択された文法に基づき、自然言語文字列を生成する工程であって、前記自然言語文字列は識別された前記1以上のクエリ・トークンを含む、工程と、
各自然言語文字列について、該自然言語文字列に基づき、構造化クエリをレンダリングする工程であって、前記構造化クエリは、識別された前記クエリ・トークンに対応する各識別された第2のノードまたは識別されたエッジへの参照を含む、工程と、を含む請求項1に記載の方法。 - 前記非構造化テキスト・クエリは1以上のnグラムを含み、識別された前記エッジおよび識別された前記ノードの各々は前記nグラムのうちの少なくとも1つに対応する、請求項1に記載の方法。
- 各nグラムが前記第1のユーザによって入力されるテキストの1以上の文字を含む、請求項6に記載の方法。
- 各nグラムが前記非構造化テキスト・クエリからのn個のアイテムの連続したシーケンスを含む、請求項6に記載の方法。
- 前記識別工程は、
nグラムがエッジまたは第2のノードに対応することを示す各nグラムに対するスコアを決定する工程であって、少なくとも1つのスコアは少なくとも1つのエッジに対応して決定され、少なくとも1つのスコアは少なくとも1つの第2のノードに対応して決定され
る、工程と、
エッジしきい値スコアよりよりも高いスコアを有する1以上のエッジを選択する工程であって、識別された前記エッジの各々は前記nグラムのうちの少なくとも1つに対応する、工程と、
ノードしきい値スコアよりよりも高いスコアを有する1以上の第2のノードを選択する工程であって、識別された前記第2のノードの各々は識別された前記エッジのうちの少なくとも1つにつながっており、識別された前記第2のノードの各々は前記nグラムのうちの少なくとも1つに対応する、工程と、を含む請求項6に記載の方法。 - 各nグラムに対する前記スコアは、前記nグラムがエッジまたは第2のノードに対応する確率である、請求項9に記載の方法。
- 各選択された文法に対するスコアを決定する工程をさらに備え、
前記構造化クエリ生成工程は、文法しきい値スコアよりも高いスコアを有する各選択された文法に対応する1以上の構造化クエリを生成する工程を含む、請求項1に記載の方法。 - 各文法に対するスコアを決定する工程が、前記第1のノードと、該文法のクエリ・トークンに対応する識別された前記第2のノードとの間における隔たり度合いに基づく、請求項11に記載の方法。
- 各文法に対するスコアを決定する工程が、該文法のクエリ・トークンに対応する識別された前記エッジに基づく、請求項11に記載の方法。
- 各文法に対するスコアを決定する工程が、該文法のクエリ・トークンに対応する識別された前記第2のノードにつながっている識別されたエッジの数に基づく、請求項11に記載の方法。
- 各文法に対するスコアを決定する工程が、前記第1のユーザに関連付けられている検索履歴に基づくか、のうちの1以上である、請求項11に記載の方法。
- ソフトウェアを具現する1以上の非一時的コンピュータ可読記憶媒体であって、該ソフトウェアは、実行されるとき、
複数のノードと、前記ノード同士をつなげる複数のエッジとを備えるソーシャル・グラフにアクセスする工程であって、前記ノードのうちの2つの間における前記エッジの各々は、それらの間における1次の隔たり度合いを表しており、前記ノードは、
オンライン・ソーシャル・ネットワークに関連付けられている第1のユーザに対応する第1のノードと、
前記オンライン・ソーシャル・ネットワークに関連付けられているコンセプトまたは第2のユーザに各々対応する複数の第2のノードとを含む、工程と、
前記第1のユーザによって入力された非構造化テキスト・クエリを前記第1のユーザのクライアント・システムから受け取る工程と、
前記非構造化テキスト・クエリに基づき前記ソーシャル・グラフの1以上のエッジおよび1以上の第2のノードを識別する工程であって、識別された前記エッジおよび識別された前記第2のノードの各々は、前記非構造化テキスト・クエリの少なくとも一部に対応している、識別工程と、
複数の文法を有する文法フォレストを含むコンテキストフリー文法モデルにアクセスする工程であって、各文法は1以上の非終端トークンおよび1以上のクエリ・トークンを含み、前記文法フォレストは、複数の非終端トークンおよび複数のクエリ・トークンを含む順序付きツリーとして編成されており、各文法は、非終端トークンを通じて1以上の他の
文法に隣接する、編成されたサブツリーである、工程と、
前記ソーシャル・グラフの識別された前記1以上のエッジおよび識別された前記1以上の第2のノードに基づき前記文法フォレストの1以上の文法における1以上のクエリ・トークンを識別する工程であって、識別された各クエリ・トークンは前記ソーシャル・グラフの識別された前記第2のノードまたは識別された前記エッジのうちの1以上に対応する、工程と、
前記文法フォレストの1以上の文法を選択する工程であって、選択された各文法は、前記ソーシャル・グラフの識別された前記エッジおよび識別された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、文法選択工程と、
1以上の構造化クエリを生成する工程であって、各構造化クエリは選択された文法に対応し、各構造化クエリは対応する前記選択された文法によって生成される自然言語文字列に基づき、各構造化クエリは前記ソーシャル・グラフの識別された前記エッジおよび識別された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、構造化クエリ生成工程と、
前記クライアント・システムの前記第1のユーザに対し、前記第1のユーザによって入力された前記非構造化テキスト・クエリに応じて、前記第1のユーザに対する表示用に提案されるクエリとして前記構造化クエリのうちの1以上を送信する工程と、を実行するように機能する、媒体。 - 1以上のプロセッサと、前記プロセッサによって実行可能な命令を備え前記プロセッサに結合されているメモリとを備えるシステムであって、前記プロセッサは、前記命令を実行するときに、
複数のノードと、前記ノード同士をつなげる複数のエッジとを備えるソーシャル・グラフにアクセスする工程であって、前記ノードのうちの2つの間における前記エッジの各々は、それらの間における1次の隔たり度合いを表しており、前記ノードは、
オンライン・ソーシャル・ネットワークに関連付けられている第1のユーザに対応する第1のノードと、
前記オンライン・ソーシャル・ネットワークに関連付けられているコンセプトまたは第2のユーザに各々対応する複数の第2のノードとを含む、工程と、
前記第1のユーザによって入力された非構造化テキスト・クエリを前記第1のユーザのクライアント・システムから受け取る工程と、
前記非構造化テキスト・クエリに基づき前記ソーシャル・グラフの1以上のエッジおよび1以上の第2のノードを識別する工程であって、識別された前記エッジおよび識別された前記第2のノードの各々は、前記非構造化テキスト・クエリの少なくとも一部に対応している、識別工程と、
複数の文法を有する文法フォレストを含むコンテキストフリー文法モデルにアクセスする工程であって、各文法は1以上の非終端トークンおよび1以上のクエリ・トークンを含み、前記文法フォレストは、複数の非終端トークンおよび複数のクエリ・トークンを含む順序付きツリーとして編成されており、各文法は、非終端トークンを通じて1以上の他の文法に隣接する、編成されたサブツリーである、工程と、
前記ソーシャル・グラフの識別された前記1以上のエッジおよび識別された前記1以上の第2のノードに基づき前記文法フォレストの1以上の文法における1以上のクエリ・トークンを識別する工程であって、識別された各クエリ・トークンは前記ソーシャル・グラフの識別された前記第2のノードまたは識別された前記エッジのうちの1以上に対応する、工程と、
前記文法フォレストの1以上の文法を選択する工程であって、選択された各文法は、前記ソーシャル・グラフの識別された前記エッジおよび識別された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、文法選択工程と、
1以上の構造化クエリを生成する工程であって、各構造化クエリは選択された文法に対応し、各構造化クエリは対応する前記選択された文法によって生成される自然言語文字列
に基づき、各構造化クエリは前記ソーシャル・グラフの識別された前記エッジおよび識別された前記第2のノードの各々に対応する少なくとも1つのクエリ・トークンを含む、構造化クエリ生成工程と、
前記クライアント・システムの前記第1のユーザに対し、前記第1のユーザによって入力された前記非構造化テキスト・クエリに応じて、前記第1のユーザに対する表示用に提案されるクエリとして前記構造化クエリのうちの1以上を送信する工程と、を実行するように構成されている、システム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/731,866 US9367607B2 (en) | 2012-12-31 | 2012-12-31 | Natural-language rendering of structured search queries |
US13/731,866 | 2012-12-31 | ||
EP13197468.5 | 2013-12-16 | ||
EP20130197468 EP2750085A1 (en) | 2012-12-31 | 2013-12-16 | Natural-language rendering of structured search queries |
PCT/US2013/075536 WO2014105499A1 (en) | 2012-12-31 | 2013-12-17 | Natural-language rendering of structured search queries |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016198268A Division JP6306120B2 (ja) | 2012-12-31 | 2016-10-06 | 構造化検索クエリの自然言語レンダリング |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016510449A JP2016510449A (ja) | 2016-04-07 |
JP2016510449A5 JP2016510449A5 (ja) | 2016-07-21 |
JP6023354B2 true JP6023354B2 (ja) | 2016-11-09 |
Family
ID=49765917
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015550465A Active JP6023354B2 (ja) | 2012-12-31 | 2013-12-17 | 構造化検索クエリの自然言語レンダリング |
JP2016198268A Expired - Fee Related JP6306120B2 (ja) | 2012-12-31 | 2016-10-06 | 構造化検索クエリの自然言語レンダリング |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016198268A Expired - Fee Related JP6306120B2 (ja) | 2012-12-31 | 2016-10-06 | 構造化検索クエリの自然言語レンダリング |
Country Status (11)
Country | Link |
---|---|
US (2) | US9367607B2 (ja) |
EP (1) | EP2750085A1 (ja) |
JP (2) | JP6023354B2 (ja) |
KR (2) | KR102101616B1 (ja) |
CN (2) | CN105144151B (ja) |
AU (2) | AU2013368262B2 (ja) |
BR (1) | BR112015015904A2 (ja) |
CA (2) | CA2945275A1 (ja) |
IL (2) | IL239661A (ja) |
MX (2) | MX344123B (ja) |
WO (1) | WO2014105499A1 (ja) |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9367607B2 (en) | 2012-12-31 | 2016-06-14 | Facebook, Inc. | Natural-language rendering of structured search queries |
US9361363B2 (en) | 2012-12-31 | 2016-06-07 | Facebook, Inc. | Modifying structured search queries on online social networks |
DE102013003055A1 (de) * | 2013-02-18 | 2014-08-21 | Nadine Sina Kurz | Verfahren und Vorrichtung zum Durchführen von Suchen in natürlicher Sprache |
US9223826B2 (en) * | 2013-02-25 | 2015-12-29 | Facebook, Inc. | Pushing suggested search queries to mobile devices |
US10169356B2 (en) * | 2013-02-26 | 2019-01-01 | Facebook, Inc. | Intelligent data caching for typeahead search |
US9336269B1 (en) * | 2013-03-14 | 2016-05-10 | Google Inc. | Determining question and answer alternatives |
US9519461B2 (en) * | 2013-06-20 | 2016-12-13 | Viv Labs, Inc. | Dynamically evolving cognitive architecture system based on third-party developers |
US9165028B1 (en) * | 2013-07-24 | 2015-10-20 | Google Inc. | Ranking modifications of a previous query |
US9336300B2 (en) * | 2014-01-17 | 2016-05-10 | Facebook, Inc. | Client-side search templates for online social networks |
US9860123B2 (en) | 2014-04-11 | 2018-01-02 | International Business Machines Corporation | Role and proximity-based management of networks |
KR102216049B1 (ko) * | 2014-04-21 | 2021-02-15 | 삼성전자주식회사 | 시맨틱 라벨링 시스템 및 방법 |
US20150324846A1 (en) * | 2014-05-09 | 2015-11-12 | Microsoft Corporation | Using card-linked offer data to detect user interests |
US10268763B2 (en) * | 2014-07-25 | 2019-04-23 | Facebook, Inc. | Ranking external content on online social networks |
US20160063061A1 (en) * | 2014-09-02 | 2016-03-03 | Microsoft Corporation | Ranking documents with topics within graph |
US10353964B2 (en) * | 2014-09-15 | 2019-07-16 | Google Llc | Evaluating semantic interpretations of a search query |
US20160148264A1 (en) * | 2014-11-24 | 2016-05-26 | Facebook, Inc. | Searching for Offers and Advertisements on Online Social Networks |
US9679024B2 (en) * | 2014-12-01 | 2017-06-13 | Facebook, Inc. | Social-based spelling correction for online social networks |
US9589305B2 (en) * | 2014-12-30 | 2017-03-07 | Facebook, Inc. | Techniques for graph based natural language processing |
KR101646754B1 (ko) * | 2015-03-18 | 2016-08-12 | 연세대학교 산학협력단 | 모바일 시멘틱 검색 장치 및 그 방법 |
US10033714B2 (en) | 2015-06-16 | 2018-07-24 | Business Objects Software, Ltd | Contextual navigation facets panel |
US20170024657A1 (en) * | 2015-07-21 | 2017-01-26 | Yp Llc | Fuzzy autosuggestion for query processing services |
US10963476B2 (en) * | 2015-08-03 | 2021-03-30 | International Business Machines Corporation | Searching and visualizing data for a network search based on relationships within the data |
US10541958B2 (en) | 2015-08-05 | 2020-01-21 | Facebook, Inc. | Controlling a device cloud |
US10348798B2 (en) * | 2015-08-05 | 2019-07-09 | Facebook, Inc. | Rules engine for connected devices |
US10567479B2 (en) | 2015-08-05 | 2020-02-18 | Facebook, Inc. | Managing a device cloud |
US10412160B2 (en) | 2015-08-05 | 2019-09-10 | Facebook, Inc. | Controlling a device cloud |
US10425392B2 (en) | 2015-08-05 | 2019-09-24 | Facebook, Inc. | Managing a device cloud |
US10515122B2 (en) * | 2015-11-12 | 2019-12-24 | Simply Measured, Inc. | Token stream processor and matching system |
US10430407B2 (en) | 2015-12-02 | 2019-10-01 | International Business Machines Corporation | Generating structured queries from natural language text |
US10191734B1 (en) * | 2015-12-15 | 2019-01-29 | Open Text Corporation | Method and system for software application optimization using natural language-based queries |
US10162899B2 (en) * | 2016-01-15 | 2018-12-25 | Facebook, Inc. | Typeahead intent icons and snippets on online social networks |
JP2017167433A (ja) * | 2016-03-17 | 2017-09-21 | 株式会社東芝 | サマリ生成装置、サマリ生成方法及びサマリ生成プログラム |
EP3440621A4 (en) * | 2016-04-08 | 2019-10-30 | BPU Holdings Corp. | SYSTEM AND METHOD FOR RESEARCHING AND MATCHING CONTENT ON RELEVANT SOCIAL NETWORKS FOR AN INDIVIDUAL |
US10628522B2 (en) * | 2016-06-27 | 2020-04-21 | International Business Machines Corporation | Creating rules and dictionaries in a cyclical pattern matching process |
WO2018005665A1 (en) * | 2016-06-28 | 2018-01-04 | Thomson Reuters Global Resources Unlimited Company | Apparatuses, methods and systems for relevance scoring in a graph database using multiple pathways |
SG11201811108YA (en) * | 2016-07-06 | 2019-01-30 | Mastercard International Inc | Method and system for providing sales information and insights through a conversational interface |
US10452652B2 (en) | 2016-09-15 | 2019-10-22 | At&T Intellectual Property I, L.P. | Recommendation platform for structured queries |
US10437810B2 (en) | 2016-09-30 | 2019-10-08 | Microsoft Technology Licensing, Llc | Systems and methods for maintaining cardinality schema to prevent corruption in databases indifferent to cardinality |
US10614141B2 (en) | 2017-03-15 | 2020-04-07 | Facebook, Inc. | Vital author snippets on online social networks |
KR101851785B1 (ko) | 2017-03-20 | 2018-06-07 | 주식회사 마인드셋 | 챗봇의 트레이닝 세트 생성 장치 및 방법 |
AU2018202359A1 (en) | 2017-04-05 | 2018-10-25 | Financial & Risk Organisation Limited | Systems. methods and machine readable programs for value chain analytics |
US20180322155A1 (en) * | 2017-05-05 | 2018-11-08 | Microsoft Technology Licensing, Llc | Search system for temporally relevant social data |
US10956510B2 (en) * | 2017-10-05 | 2021-03-23 | International Business Machines Corporation | Generate a knowledge graph using a search index |
US10678786B2 (en) | 2017-10-09 | 2020-06-09 | Facebook, Inc. | Translating search queries on online social networks |
US11276321B2 (en) | 2017-11-07 | 2022-03-15 | International Business Machines Corporation | Method and system to train users interacting with a search engine |
WO2019100167A1 (en) * | 2017-11-27 | 2019-05-31 | Retailcommon Inc. | Method and system for syntactic searching |
CN108153883B (zh) * | 2017-12-26 | 2022-02-18 | 北京百度网讯科技有限公司 | 搜索方法和装置、计算机设备、程序产品以及存储介质 |
US10664472B2 (en) * | 2018-06-27 | 2020-05-26 | Bitdefender IPR Management Ltd. | Systems and methods for translating natural language sentences into database queries |
CN108962384A (zh) * | 2018-07-03 | 2018-12-07 | 科大讯飞股份有限公司 | 一种决策结果确定方法、装置、设备及可读存储介质 |
US11526567B2 (en) | 2018-10-17 | 2022-12-13 | International Business Machines Corporation | Contextualizing searches in a collaborative session |
US11238850B2 (en) | 2018-10-31 | 2022-02-01 | Walmart Apollo, Llc | Systems and methods for e-commerce API orchestration using natural language interfaces |
US11195524B2 (en) * | 2018-10-31 | 2021-12-07 | Walmart Apollo, Llc | System and method for contextual search query revision |
US11404058B2 (en) | 2018-10-31 | 2022-08-02 | Walmart Apollo, Llc | System and method for handling multi-turn conversations and context management for voice enabled ecommerce transactions |
US11183176B2 (en) | 2018-10-31 | 2021-11-23 | Walmart Apollo, Llc | Systems and methods for server-less voice applications |
US11100145B2 (en) * | 2019-09-11 | 2021-08-24 | International Business Machines Corporation | Dialog-based image retrieval with contextual information |
CN110727695B (zh) * | 2019-09-29 | 2022-05-03 | 浙江大学 | 面向新型供电城轨列车数据运维的自然语言查询解析方法 |
CN111026856A (zh) * | 2019-12-09 | 2020-04-17 | 出门问问信息科技有限公司 | 一种智能交互方法、装置以及计算机可读储存介质 |
WO2021195146A1 (en) | 2020-03-23 | 2021-09-30 | Sorcero, Inc. | Ontology integration for document summarization |
CN111914534B (zh) * | 2020-07-30 | 2024-02-13 | 上海数策软件股份有限公司 | 构建知识图谱语义映射方法及系统 |
CN112541148A (zh) * | 2020-12-15 | 2021-03-23 | 北京百度网讯科技有限公司 | 信息发布方法、装置及电子设备 |
CN113032700B (zh) * | 2021-03-10 | 2023-11-10 | 携程计算机技术(上海)有限公司 | 自然语言数据渲染和网站优化方法、系统、设备及介质 |
US12118040B1 (en) | 2023-04-11 | 2024-10-15 | Spotify Ab | Systems and methods for generating synthetic queries |
Family Cites Families (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5909678A (en) * | 1996-09-13 | 1999-06-01 | International Business Machines Corporation | Computer systems, method and program for constructing statements by dragging and dropping iconic representations of subcomponent statements onto a phrase template |
US6243703B1 (en) * | 1997-10-14 | 2001-06-05 | International Business Machines Corporation | Method of accessing and displaying subsystem parameters including graphical plan table data |
US6009422A (en) | 1997-11-26 | 1999-12-28 | International Business Machines Corporation | System and method for query translation/semantic translation using generalized query language |
US6711561B1 (en) | 2000-05-02 | 2004-03-23 | Iphrase.Com, Inc. | Prose feedback in information access system |
US6957184B2 (en) | 2000-07-20 | 2005-10-18 | Microsoft Corporation | Context free grammar engine for speech recognition system |
US6714939B2 (en) | 2001-01-08 | 2004-03-30 | Softface, Inc. | Creation of structured data from plain text |
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 |
US7539697B1 (en) | 2002-08-08 | 2009-05-26 | Spoke Software | Creation and maintenance of social relationship network graphs |
US20050131872A1 (en) | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Query recognizer |
US7110172B2 (en) * | 2004-02-27 | 2006-09-19 | Hamamatsu Photonics K.K. | Microscope and sample observation method |
US7836044B2 (en) | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
US7529657B2 (en) | 2004-09-24 | 2009-05-05 | Microsoft Corporation | Configurable parameters for grammar authoring for speech recognition and natural language understanding |
US7499940B1 (en) | 2004-11-11 | 2009-03-03 | Google Inc. | Method and system for URL autocompletion using ranked results |
WO2006083939A2 (en) | 2005-01-31 | 2006-08-10 | 4Info, Inc. | Prioritization of search responses system and method |
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 |
TWI443547B (zh) | 2005-12-07 | 2014-07-01 | Telecomm Systems Inc | 有限電信裝置的使用者輸入方案的方法以及其系統 |
US8010523B2 (en) * | 2005-12-30 | 2011-08-30 | Google Inc. | Dynamic search box for web browser |
US8005909B2 (en) | 2006-11-16 | 2011-08-23 | Onmobile Global Limited | System and method for facilitating a ready social network |
US8280978B2 (en) | 2006-12-29 | 2012-10-02 | Prodea Systems, Inc. | Demarcation between service provider and user in multi-services gateway device at user premises |
CN101001415A (zh) * | 2007-01-24 | 2007-07-18 | 李笛 | 手持通讯设备多网融合互动交互通讯系统 |
US20080255977A1 (en) | 2007-04-10 | 2008-10-16 | Utbk, Inc. | Systems and Methods to Facilitate Searches via Social Network |
US8713143B2 (en) | 2007-04-27 | 2014-04-29 | President And Fellows Of Harvard College | Establishing a social network |
US20090094209A1 (en) | 2007-10-05 | 2009-04-09 | Fujitsu Limited | Determining The Depths Of Words And Documents |
KR101009638B1 (ko) | 2007-11-22 | 2011-01-19 | 중앙대학교 산학협력단 | 상황 적응적 서비스 제공을 위한 추론 장치 및 그 방법과그를 이용한 상황인지 지식서비스 시스템 |
US7966304B2 (en) | 2007-11-30 | 2011-06-21 | Yahoo! Inc. | Enabling searching on abbreviated search terms via messaging |
US9311402B2 (en) | 2007-12-21 | 2016-04-12 | Semantinet Ltd. | System and method for invoking functionalities using contextual relations |
US7853587B2 (en) | 2008-01-31 | 2010-12-14 | Microsoft Corporation | Generating search result summaries |
US20090228296A1 (en) | 2008-03-04 | 2009-09-10 | Collarity, Inc. | Optimization of social distribution networks |
US8140538B2 (en) | 2008-04-17 | 2012-03-20 | International Business Machines Corporation | System and method of data caching for compliance storage systems with keyword query based access |
US20120158720A1 (en) | 2008-04-29 | 2012-06-21 | Microsoft Corporation | Social network powered search enhancements |
US8417698B2 (en) | 2008-05-06 | 2013-04-09 | Yellowpages.Com Llc | Systems and methods to provide search based on social graphs and affinity groups |
US8027990B1 (en) | 2008-07-09 | 2011-09-27 | Google Inc. | Dynamic query suggestion |
WO2010048172A1 (en) | 2008-10-20 | 2010-04-29 | Cascaad Srl | Social graph based recommender |
US20100146012A1 (en) * | 2008-12-04 | 2010-06-10 | Microsoft Corporation | Previewing search results for suggested refinement terms and vertical searches |
US8412749B2 (en) | 2009-01-16 | 2013-04-02 | Google Inc. | Populating a structured presentation with new values |
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 |
JP5271808B2 (ja) * | 2009-05-28 | 2013-08-21 | 日本電信電話株式会社 | 共通クエリグラフパターン生成装置、共通クエリグラフパターン生成方法、および共通クエリグラフパターン生成用プログラム |
US20110078166A1 (en) | 2009-09-29 | 2011-03-31 | Nokia Corporation | Method and apparatus for creating and utilizing information representation of queries |
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 |
US20110179061A1 (en) | 2010-01-19 | 2011-07-21 | Microsoft Corporation | Extraction and Publication of Reusable Organizational Knowledge |
US20110184893A1 (en) | 2010-01-27 | 2011-07-28 | Microsoft Corporation | Annotating queries over structured data |
US10748119B2 (en) | 2010-02-01 | 2020-08-18 | Microsoft Technology Licensing, Llc | Social network search |
US9129012B2 (en) | 2010-02-03 | 2015-09-08 | Google Inc. | Information search system with real-time feedback |
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 |
US10204163B2 (en) | 2010-04-19 | 2019-02-12 | Microsoft Technology Licensing, Llc | Active prediction of diverse search intent based upon user browsing behavior |
US8180804B1 (en) | 2010-04-19 | 2012-05-15 | Facebook, Inc. | Dynamically generating recommendations based on social graph information |
JP5296014B2 (ja) | 2010-06-22 | 2013-09-25 | ヤフー株式会社 | 検索装置、方法及びプログラム |
US20110320441A1 (en) | 2010-06-25 | 2011-12-29 | Microsoft Corporation | Adjusting search results based on user social profiles |
US8719246B2 (en) | 2010-06-28 | 2014-05-06 | Microsoft Corporation | Generating and presenting a suggested search query |
US20120078954A1 (en) | 2010-09-24 | 2012-03-29 | Rovi Technologies Corporation | Browsing hierarchies with sponsored recommendations |
US8122061B1 (en) | 2010-11-10 | 2012-02-21 | Robert Guinness | Systems and methods for information management using socially constructed graphs |
US8650181B2 (en) | 2010-11-22 | 2014-02-11 | Sap Ag | OLAP execution model using relational operations |
US8364709B1 (en) | 2010-11-22 | 2013-01-29 | Google Inc. | Determining word boundary likelihoods in potentially incomplete text |
US8290981B2 (en) | 2011-03-08 | 2012-10-16 | Hon Hai Precision Industry Co., Ltd. | Social network system and member searching and analyzing method in social network |
US9495461B2 (en) | 2011-03-22 | 2016-11-15 | Excalibur Ip, Llc | Search assistant system and method |
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 |
US8843554B2 (en) | 2011-05-26 | 2014-09-23 | Facebook, Inc. | Social data overlay |
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 |
US8601027B2 (en) | 2011-06-20 | 2013-12-03 | Google Inc. | Query-based user groups in social networks |
US20130024439A1 (en) | 2011-07-20 | 2013-01-24 | Microsoft Corporation | Modeling search in a social graph |
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 |
US20130054631A1 (en) | 2011-08-30 | 2013-02-28 | Microsoft Corporation | Adding social network data to search suggestions |
US11620719B2 (en) | 2011-09-12 | 2023-04-04 | Microsoft Technology Licensing, Llc | Identifying unseen content of interest |
US8949232B2 (en) | 2011-10-04 | 2015-02-03 | Microsoft Corporation | Social network recommended content and recommending members for personalized search results |
US20130097137A1 (en) | 2011-10-14 | 2013-04-18 | International Business Machines Corporation | Integrating Social Networking and Query Submission |
US8321364B1 (en) | 2012-02-08 | 2012-11-27 | Google Inc. | Method and system for including robots into social networks |
US8762324B2 (en) | 2012-03-23 | 2014-06-24 | Sap Ag | Multi-dimensional query expansion employing semantics and usage statistics |
US9105068B2 (en) | 2012-11-12 | 2015-08-11 | Facebook, Inc. | Grammar model for structured search queries |
US9361363B2 (en) | 2012-12-31 | 2016-06-07 | Facebook, Inc. | Modifying structured search queries on online social networks |
US9367607B2 (en) | 2012-12-31 | 2016-06-14 | Facebook, Inc. | Natural-language rendering of structured search queries |
US9703844B2 (en) | 2012-12-31 | 2017-07-11 | Facebook, Inc. | Search result snippets for structured search queries |
-
2012
- 2012-12-31 US US13/731,866 patent/US9367607B2/en active Active
-
2013
- 2013-12-16 EP EP20130197468 patent/EP2750085A1/en not_active Ceased
- 2013-12-17 CA CA2945275A patent/CA2945275A1/en not_active Abandoned
- 2013-12-17 MX MX2015008569A patent/MX344123B/es active IP Right Grant
- 2013-12-17 KR KR1020177004490A patent/KR102101616B1/ko not_active Expired - Fee Related
- 2013-12-17 CN CN201380074096.XA patent/CN105144151B/zh active Active
- 2013-12-17 AU AU2013368262A patent/AU2013368262B2/en not_active Ceased
- 2013-12-17 JP JP2015550465A patent/JP6023354B2/ja active Active
- 2013-12-17 KR KR1020157020901A patent/KR101715869B1/ko not_active Expired - Fee Related
- 2013-12-17 WO PCT/US2013/075536 patent/WO2014105499A1/en active Application Filing
- 2013-12-17 CN CN201811081614.1A patent/CN109241264B/zh active Active
- 2013-12-17 CA CA2896493A patent/CA2896493C/en not_active Expired - Fee Related
- 2013-12-17 MX MX2016016058A patent/MX361584B/es unknown
- 2013-12-17 BR BR112015015904A patent/BR112015015904A2/pt not_active Application Discontinuation
-
2015
- 2015-06-25 IL IL239661A patent/IL239661A/en active IP Right Grant
-
2016
- 2016-03-17 US US15/073,374 patent/US10445352B2/en active Active
- 2016-10-06 JP JP2016198268A patent/JP6306120B2/ja not_active Expired - Fee Related
-
2017
- 2017-03-02 AU AU2017201443A patent/AU2017201443B2/en not_active Ceased
- 2017-04-06 IL IL251617A patent/IL251617A0/en unknown
Also Published As
Publication number | Publication date |
---|---|
IL239661A (en) | 2017-04-30 |
CA2896493A1 (en) | 2014-07-03 |
CN109241264B (zh) | 2022-02-25 |
US20140188935A1 (en) | 2014-07-03 |
MX361584B (es) | 2018-12-11 |
IL239661A0 (en) | 2015-08-31 |
US20160196335A1 (en) | 2016-07-07 |
KR102101616B1 (ko) | 2020-04-17 |
US9367607B2 (en) | 2016-06-14 |
AU2013368262B2 (en) | 2017-02-16 |
KR101715869B1 (ko) | 2017-03-13 |
IL251617A0 (en) | 2017-06-29 |
AU2017201443A1 (en) | 2017-03-23 |
CN105144151A (zh) | 2015-12-09 |
CN105144151B (zh) | 2018-10-16 |
CN109241264A (zh) | 2019-01-18 |
JP6306120B2 (ja) | 2018-04-04 |
JP2016510449A (ja) | 2016-04-07 |
AU2013368262A1 (en) | 2015-08-06 |
MX2015008569A (es) | 2016-01-20 |
KR20170021902A (ko) | 2017-02-28 |
CA2896493C (en) | 2016-11-22 |
JP2017037668A (ja) | 2017-02-16 |
MX344123B (es) | 2016-12-05 |
EP2750085A1 (en) | 2014-07-02 |
CA2945275A1 (en) | 2014-07-03 |
US10445352B2 (en) | 2019-10-15 |
KR20150104135A (ko) | 2015-09-14 |
AU2017201443B2 (en) | 2018-03-01 |
BR112015015904A2 (pt) | 2017-07-11 |
WO2014105499A1 (en) | 2014-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6462088B2 (ja) | オンライン・ソーシャル・ネットワーク上での構造化検索クエリの修正 | |
JP6306120B2 (ja) | 構造化検索クエリの自然言語レンダリング | |
JP6568609B2 (ja) | 構造化された検索クエリのための文法モデル | |
JP6435383B2 (ja) | オンライン・ソーシャル・ネットワーク上の示唆クエリをフィルタリング | |
US9703844B2 (en) | Search result snippets for structured search queries | |
JP6562962B2 (ja) | オンライン・ソーシャル・ネットワーク上のあいまいな構造化検索クエリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160530 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160530 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20160530 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20160707 |
|
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: 20160906 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161006 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6023354 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |