JP6151450B2 - オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え - Google Patents
オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え Download PDFInfo
- Publication number
- JP6151450B2 JP6151450B2 JP2016531793A JP2016531793A JP6151450B2 JP 6151450 B2 JP6151450 B2 JP 6151450B2 JP 2016531793 A JP2016531793 A JP 2016531793A JP 2016531793 A JP2016531793 A JP 2016531793A JP 6151450 B2 JP6151450 B2 JP 6151450B2
- Authority
- JP
- Japan
- Prior art keywords
- query
- objects
- user
- parsing
- social networking
- 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
- 238000000034 method Methods 0.000 claims description 73
- 238000004422 calculation algorithm Methods 0.000 claims description 60
- 230000015654 memory Effects 0.000 claims description 31
- 238000003860 storage Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 26
- 238000000926 separation method Methods 0.000 claims 1
- 230000006855 networking Effects 0.000 description 249
- 230000003068 static effect Effects 0.000 description 83
- 230000004044 response Effects 0.000 description 37
- 230000009471 action Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 12
- 238000005192 partition Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000013515 script Methods 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001360 synchronised 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
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000000872 buffer Substances 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
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 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
- 230000002441 reversible effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003997 social interaction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/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/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24539—Query rewriting; Transformation using cached or materialised 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
-
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- 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/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- 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)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Computing Systems (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Marketing (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
Description
ジェクト・タイプを取り出さなければならない場合に、特に処理パワーの非効率的使用に関連して非効率となり得る。このプロセスは、最良の最終スコアを有するオブジェクトの一部またはすべてを取り出し、ユーザに送り返される生成された検索結果の品質が維持されることを可能にしながらも、各データ・ストアから取り出されるオブジェクトの数が減少されることが可能な場合に改善され得る。取り出されるオブジェクトの数を減少させるために、ソーシャル・ネットワーキング・システムは、各データ・ストアから取り出されたオブジェクトの数を、ソーシャル・ネットワーキング・システムによって計算されるそれらのオブジェクトに対する最終スコアと比較し、実質的に同じ品質の検索結果を維持しながらも、より少ないオブジェクトをクエリ・コマンドが要求するように構文解析アルゴリズムを修正することができる。たとえば、ソーシャル・ネットワーキング・システムは、アーカイブされた検索クエリのセットにアクセスし、これらのクエリによって取り出されたオブジェクトの最終スコアに基づいて、構文解析アルゴリズムを最適化することができる。アーカイブされたクエリは1つまたは複数のデータ・ストアにサブミットされてよく、それにより、構文解析アルゴリズムによってそれらのクエリに対して生成されたクエリ・コマンドによって指定された取り出すべきオブジェクトの数に基づいて、第1の数の結果を取り出すことができる。次いで、各取り出されたオブジェクトは、最終スコア/ランクを決定するようにスコア付けされてよく、次いで、最終スコア/ランクが、取り出されたオブジェクトの数と比較されて、上位N個のスコア付け結果のうちの十分な数を取り出しながらも、特定のオブジェクト・タイプについて取り出されるオブジェクトの数が減少されることが可能かどうかを決定することができる。可能な場合、構文解析アルゴリズムは、特定のクエリに応答して生成されたクエリ・コマンドが、より少ないオブジェクトまたはオブジェクト・タイプを取り出すことを指定するように、修正されてよい。
AN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
ングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパー・テキスト・マークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標)and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用することができる)1つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
ーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャル・ネットワーキング・システム160を通じてオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャル・ネットワーキング・システム160のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャル・ネットワーキング・システム160を通じて、つながり、関連付け、または関係を形成しているソーシャル・ネットワーキング・システム160のその他の任意のユーザを示すことができる。
・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム130に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
ともできる。ネットワーク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から受け取られたロケーション情報を記憶するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
、ソーシャル・ネットワーキング・システム160と、またはソーシャル・ネットワーキング・システム160を通じて対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャル・ネットワーキング・システム160とのアカウントに登録した場合には、ソーシャル・ネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1つまたは複数のデータ・ストア内に記憶することができる。本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード202を示すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、ソーシャル・ネットワーキング・システム160に登録されていないユーザを示すことができる。特定の実施形態においては、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード202は、1つまたは複数のウェブページに対応することができる。
システム160にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ170に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード204に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード202は、対応するユーザ・プロフィール・ページを有することができ、そのユーザ・プロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード204は、対応するコンセプト・プロフィール・ページを有することができ、そのコンセプト・プロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
いるが、本開示は、ユーザ・ノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャル・グラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を示すことができる。
用語を備えるクエリを受信し、その検索用語に対応する1つまたは複数の検索インデックスからの検索結果にアクセスし、その検索結果を取り出す。いくつかの実施形態において、特定のオブジェクト・タイプに対応するバーティカルは、複数の物理的パーティションまたは論理的パーティションを備え、各々がそれぞれの検索インデックスを備える。
施形態では、検索エンジンは、サードパーティ・システム170、インターネットもしくはワールド・ワイド・ウェブ、または他の適切なソースなど、他のソースに関連付けられているオブジェクトを求めて検索してもよい。本開示では特定の様式でオンライン・ソーシャル・ネットワーク160に問い合わせることを説明しているが、本開示は任意の適切な様式でオンライン・ソーシャル・ネットワーク160に問い合わせることを企図する。
ブミットされてよく、それにより、それらの静的ランクに基づいて、第1の数の結果を取り出すことができる。次いで、各取り出されたオブジェクトは、最終スコア/ランクを決定するようにスコア付けされてよく、次いで、最終スコア/ランクは静的ランクと比較されてよく、静的ランクが最終ランクにより密接にマッチするように変更されることが可能である。これは、様々なクエリまたはクエリ・タイプに関して行われ、その結果静的スコアが、様々なクエリに関して可能な限り密接に最終スコアにマッチするように最適化され得る。本開示では特定の様式で静的ランク付けを改善することを説明しているが、本開示は任意の適切な様式で静的ランク付けを改善することを企図する。
生成されたクエリ・コマンドが、より少ないオブジェクトまたはオブジェクト・タイプを取り出すことを指定するように、修正されてよい。本開示では特定の様式でクエリ・コマンドがどのように生成されるかを改善することを説明しているが、本開示は任意の適切な様式でクエリ・コマンドがどのように改善されるかを改善することを企図する。
);パロアルトの(in palo also);パロアルトの友人(friends in palo alto)を識別することができる。特定の実施形態では、特定の実施形態では、各n−gramは、テキスト・クエリからのn個のアイテムの連続したシーケンスを含むことができる。本開示では特定の様式で特定のクエリを構文解析することを説明しているが、本開示は任意の適切な様式で任意の適切なクエリを構文解析することを企図する。要素の検出および検索クエリの構文解析に関連して、特定の実施形態では、それぞれを本願明細書に援用する2012年7月23日に出願された米国特許出願第13/556072号、2012年12月31日に出願された米国特許出願第13/732101号に開示された1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、または工程を利用してよい。
・ネットワーキング・システム160に実行してほしい特定の構造化クエリを示すことができる。特定の構造化クエリを選択すると、ユーザのクライアント・システム130は、選択された構造化クエリを実行するようにソーシャル・ネットワーキング・システム160に要求または他の形式で指示することができる。本開示では特定の様式で特定の構造化クエリの選択を受け取ることを説明しているが、本開示は任意の適切な様式で任意の適切な構造化クエリの選択を受け取ることを企図する。
(OR friends of:(friends of:<me>):num_to_score:50)
(OR pages:<>:num_to_score:25))
このクエリ・コマンドは、第1のクエリ制約(OR friends of:(friends of:<me>):num_to_score:50)を含み、このクエリ制約は、ユーザ・バーティカル164にアクセスして文字列「kais(カイス)」にマッチする問合せユーザの友人の友人であるユーザを求めて検索し、上位50個の結果を取り出すように、ソーシャル・ネットワーキング・システム160に指示する。第2のクエリ制約(OR pages:<>:num_to_score:25)は、ウェブページ・バーティカル164にアクセスして文字列「kais」にマッチするページを求めて検索し、上位25個の結果を取り出すように、ソーシャル・ネットワーキング・システム160に指示する。しかしながら、このプロセスは、十分な数の検索結果を生成するためにソーシャル・ネットワーキング・システム160が特定のオブジェクト・タイプの過度のオブジェクトを取り出さなければならない場合に、非効率となり得る。クエリを処理するときに消費される処理(CPU)パワーの量を改善するために、ソーシャル・ネットワーキング・システム160は、上位N個のスコアのオブジェクトを取り出すために十分な数のオブジェクトを取り出しながらも、各バーティカル164から取り出されるオブジェクト・タイプの数およびオブジェクトの数を最小化する、構文解析構成パラメータを使用することができる。一例として、限定としてではなく、先の例を続けると、上位10個の検索結果を生成するために、ソーシャル・ネットワーキング・システム160は、上位25個の友人の友人、および上位15個のページを取り出すことが必要なだけであり得る。これは、たとえば、26〜50にランク付けされる友人の友人すべてが上位10個の検索結果の外に位置付けられる最終スコアを有するためであり得る。したがって、同じ品質の検索結果を維持するために引き出される必要があるユーザがより少ない。これは、各検索クエリによって消費される処理パワーを可能にする。構文解析構成パラメータは、より多いまたはより少ないオブジェクト・タイプ(および場合によっては追加のバーティカル164)が検索されるように、あるいは各オブジェクト・タイプのより多いまたはより少ないオブジェクトが取り出されるように、修正され得る。本開示では特定の様式で特定のクエリ・コマンドを生成することを説明しているが、本開示は任意の適切な様式で任意の適切なクエリ・コマンドを生成することを企図する。
ム160は、クエリ・コマンドによって指定されるように、ユーザから受け取られた検索クエリに応答して1つまたは複数のバーティカル164にアクセスすることができる。各バーティカル164は、オンライン・ソーシャル・ネットワークに関連付けられている1つまたは複数のオブジェクトを記憶することができる。検索クエリに応答してアクセスされるバーティカル164の数およびタイプは、クエリ・コマンドのクエリ制約に基づくことができる。各バーティカル164は、クエリ制約によって指定されたオブジェクト・タイプのオンライン・ソーシャル・ネットワークに関連付けられているオブジェクトを記憶することができる。一例として、限定としてではなく、ユーザに対するクエリ・コマンドのクエリ制約の1つとして、ソーシャル・ネットワーキング・システム160は、ユーザ・バーティカル164にアクセスして、クエリにマッチする1または複数のユーザを識別することができる。ソーシャル・ネットワーキング・システム160は、任意の適切な様式で、たとえば、1つまたは複数の列マッチング・アルゴリズムを使用して、文字列を、オブジェクトの1つまたは複数のそれぞれに関連付けられている文字の列とマッチさせることなどによって、マッチするオブジェクトを識別することができる。一例として、限定としてではなく、検索クエリ入力「kais」に応答して、ソーシャル・ネットワーキング・システム160は、1つまたは複数のユーザ・バーティカル164および1つまたは複数のページ・バーティカル164にアクセスし、アクセスされたバーティカルを検索して、それらのバーティカルに記憶されたオブジェクト(たとえば、ユーザ・プロフィール・ページまたはコンセプト・プロフィール・ページ)を識別することができる。ソーシャル・ネットワーキング・システム160は、各アクセスされたバーティカルに以下のクエリ・コマンドをサブミットすることができる。
(OR friends of:(friends of:<me>):num_to_score:50)
(OR pages:<>:num_to_score:25))
ソーシャル・ネットワーキング・システム160は、各バーティカル164のインデックス・サーバ330にアクセスして、インデックス・サーバ330がクエリ・コマンドにマッチする結果を返すようにすることができる。一例として、限定としてではなく、ソーシャル・ネットワーキング・システム160は、ユーザ・バーティカル164のインデックス・サーバ330にアクセスして、(それぞれユーザ識別子によって表される)ユーザ<Kaisen L(カイセン L)>、<Nathen Kaiser(ネイサン カイザー)>、<Catie Kaiser(ケイティ カイザー)>、および<Alex Kaiser(アレックス カイザー)>を、インデックス・サーバ330に識別させることができる。すなわち、ユーザ<Kaisen L>、<Nathen Kaiser>、<Catie Kaiser>、および<Alex Kaiser>は、「Kais」にマッチする名前を有することができる。さらに、これらの識別されたユーザのそれぞれは、問合せユーザの友人の友人であるユーザに対応するオブジェクトを要求する、クエリ制約(friends of:(friends of:<me>))にマッチする。ソーシャル・ネットワーキング・システム160はまた、ページ・バーティカル164のインデックス・サーバ330にアクセスして、インデックス・サーバ330に、バンド<Kaiser Chiefs(カイザー チーフス)>のページを識別させることができる。すなわち、バンド<Kaiser Chiefs>は、「kais」にマッチする名前を有する。さらに、識別ページは、ページに対応するオブジェクトを要求するクエリ制約(pages:<>)にマッチする。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、1つまたは複数の検索結果を識別するために、特定のノードから特定の接続エッジ206(またはエッジ・タイプ)に沿って、クエリ・コマンドによって指定されたオブジェクトに対応するノードへとソーシャル・グラフ200をたどることによって、クエリ・コマンドにマッチするオブジェクトを識別することができる。一例として、限定としてではなく、クエリ・コマンド(pages_liked_by:<us
er>)は、<user>に対応するユーザ・ノード202から「いいね」タイプ・エッジ206に沿って、<user>によって「いいね」を表明されたページに対応するコンセプト・ノード204へとソーシャル・グラフ200をたどることによって、ソーシャル・ネットワーキング・システム160により実行され得る。本開示では特定の様式で特定のオブジェクトを求めて検索することを説明しているが、本開示は任意の適切な様式でオブジェクトを求めて検索することを企図する。
ティに基づいて)これら100個のオブジェクトについて最終スコアが計算され得る。スコア付けアルゴリズムによる上位5個のスコアのオブジェクトは、たとえば、4、12、20、78、および95の静的ランクを有するオブジェクトであり得る。このプロセスは、たとえば、上位N個のオブジェクトの静的ランクが最終ランクによる上位N個のオブジェクトと同じであった場合に改善され得る。オブジェクトの静的ランクを、検索エンジンによって計算された最終ランクとより密接に合わせることにより、ソーシャル・ネットワーキング・システムは、十分な数の検索結果を生成するためにソーシャル・ネットワーキング・システムが取り出してスコア付けする必要があるマッチするオブジェクトの数を減少させることが可能であり得る。特定の実施形態では、オブジェクトの静的スコアは、検索クエリ自体に基づくことができる。言い換えれば、特定のクエリまたはクエリ・タイプに応じて、オブジェクトは、そのクエリまたはクエリ・タイプを基準に異なる静的スコアを有することができる。一例として、限定としてではなく、スコア付けする数が500である場合、上位500個のオブジェクトが識別されてよい。そして、これら500個のオブジェクトは、1つまたは複数のファクタ(たとえば、検索クエリまたは他のクエリ制約に対するマッチ、ソーシャル・グラフ・アフィニティ、検索履歴など)に基づいてスコア付けされてよく、次いで、上位M個の結果が、問合せユーザへ表示する検索結果として生成されてよい。特定の実施形態では、1または複数ラウンドのランク付けの後の上位の結果が、最終ラウンドのランク付けのためにアグリゲータ320に送られてよく、そこで、識別されたオブジェクトが並べ替えられてよく、冗長な結果が廃棄されてよく、または任意の他のタイプの結果処理が問合せユーザへの提示前に行われてもよい。本開示では特定の数のオブジェクトを識別することを説明しているが、本開示は任意の適切な数のオブジェクトを識別することを企図する。さらに、本開示では特定の様式でオブジェクトをランク付けすることを説明しているが、本開示は任意の適切な様式でオブジェクトをランク付けすることを企図する。
4>、<post 5>、<post 6>を作成している場合がある。ユーザ<ディック>が投稿<post 1>、<post 2>、<post 3>を作成し、ユーザ
<トム>が投稿<post 5>および<post 6>を作成し、ユーザ<ハリー>が投稿<post 4>を作成した場合、ソーシャル・ネットワーキング・システム160は、ユーザ<マーク>によって「いいね」を表明された投稿のリスト内の投稿のほとんどをディックが作成したので、ユーザ<ディック>を最も高くスコア付けすることができ、続いて<トム>および<ハリー>がより低いスコアを有する。別の例として、限定としてではなく、先の例を使用して、ソーシャル・ネットワーキング・システム160は、投稿の「いいね」のカウントに対して投稿をマップするフォワード・インデックスにアクセスすることができる。インデックス・サーバは、フォワード・インデックスにアクセスし、ユーザ<マーク>によって「いいね」を表明された投稿のリストの各投稿について「いいね」のカウントを取り出すことができる。インデックス・サーバは、投稿のリスト内の投稿(すなわち、<post 1>、<post 2>、<post 3>、<post 4>、<post 5>、<post 6>)を、それぞれの「いいね」のカウントに基づいてスコア付けし、上位のスコアの投稿(たとえば、上位3個のスコア付けされたまたは最も「いいね」を表明された投稿)の作成者を、第1の識別されたノードとしてソーシャル・ネットワーキング・システム160に返すことができる。各適切なスコア付けファクタが特定の識別されたノードについて考慮された後、識別されたノードに対する総合的スコアが決定され得る。次いで、ノードのスコア付けに基づいて、ソーシャル・ネットワーキング・システム160は、1つまたは複数のセットの識別されたノードを生成することができる。一例として、限定としてではなく、ソーシャル・ネットワーキング・システム160は、閾値スコアより大きいスコアを有するノードに対応する識別されたノードのセットのみを生成してよい。別の例として、限定としてではなく、ソーシャル・ネットワーキング・システム160は、スコア付けされたノードをランク付けし、閾値ランク(たとえば、上位10個、上位20個など)より高いランクを有するノードに対応する識別されたノードのセットのみを生成してよい。本開示では特定の様式でマッチするノードをスコア付けすることを説明しているが、本開示は任意の適切な様式でマッチするノードをスコア付けすることを企図する。
れたフォトに対応する識別されたコンセプト・ノード204をスコア付けするとき、ソーシャル・ネットワーキング・システム160は、問合せユーザについてフォトにタグ付けされたユーザに関する(たとえば、アフィニティ係数によって測定される)問合せユーザのそれぞれのソーシャル・グラフ・アフィニティに基づいて、フォトをより高くスコア付けすることができる。さらに、フォトにタグ付けされた友人がより多いと、その特定のフォトについて問合せユーザのアフィニティが大きくなり得るので、問合せユーザの友人のより多数を示しているフォトは、ユーザの友人のより少数を示しているフォトよりも高度にタグ付けされ得る。本開示では特定の様式でアフィニティに基づいて検索結果をスコア付けすることを説明しているが、本開示は任意の適切な様式でアフィニティに基づいて検索結果をスコア付けすることを企図する。さらに、ソーシャル・グラフ・アフィニティおよびアフィニティ係数に関連して、特定の実施形態が、それぞれを本願明細書に援用する2006年8月11日に出願された米国特許出願第11/503093号、2010年12月22日に出願された米国特許出願第12/977027号、2010年12月23日に出願された米国特許出願第12/977027号、2012年10月1日に出願された米国特許出願第13/632869号に開示された1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、または工程を利用することができる。
明しているが、本開示は任意の適切な様式で静的スコア付けアルゴリズムを修正することを企図する。
(OR friends of:(friends of:<me>):num_to_score:50)
(OR pages:<>:num_to_score:25))
ページ・バーティカル164からの取り出されたページの最終スコアの分析が、取り出されたページが上位N個の結果のうちにないことを示す場合、そのクエリ制約全体が除去され得る。言い換えれば、構文解析アルゴリズムは、このクエリ・タイプに応答してページ・バーティカル164が検索されないように修正され得る。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、閾値スコア以上の最終スコアを有するすべての識別されたオブジェクトを取り出すために、データ・ストアから取り出される必要があるオブジェクトの数に基づいて、構文解析アルゴリズムを修正することができる。一例として、限定としてではなく、ソーシャル・ネットワーキング・システムは、閾値スコア以上のスコア(またはランク)を有する各取り出されたオブジェクトを識別することができる。次いで、ソーシャル・ネットワーキング・システム160は、各クエリ・コマンドの各クエリ制約について、閾値スコア以上のスコアを有する各識別されたオブジェクトを取り出すためにデータ・ストアから取り出される必要があるオブジェクトの数を決定することができる。データ・ストアから取り出される必要があるオブジェクトの決定された数に基づいて、ソーシャル・ネットワーキング・システム160は、構文解析構成パラメータのうちの1つまたは複数を修正することができる。本開示では特定の様式で構文解析アルゴリズムを修正することを説明しているが、本開示は任意の適切な様式で構文解析アルゴリズムを修正することを企図する。
160が、オンライン・ソーシャル・ネットワークの1または複数のユーザから受け取られたオンライン・ソーシャル・ネットワークのクエリの第1のセットにアクセスすることができる。工程720で、ソーシャル・ネットワーキング・システム160は、第1の構文解析アルゴリズムを使用してクエリの第1のセットにおける各クエリを構文解析して、各クエリに基づいてクエリ・コマンドを生成することができる。各クエリ・コマンドは、1つまたは複数のクエリ制約を備えることができる。さらに、各クエリ制約は、第1の構文解析アルゴリズムの1つまたは複数の構文解析構成パラメータによって指定される指定オブジェクト・タイプの指定数のオブジェクトについてのクエリ制約であり得る。工程730で、ソーシャル・ネットワーキング・システム160は、各クエリ・コマンドの各クエリ制約について、1つまたは複数のデータ・ストア164から、クエリ制約の少なくとも一部分にマッチする指定数のオブジェクトを取り出すことができる。各データ・ストア164は、クエリ制約の指定オブジェクト・タイプのオンライン・ソーシャル・ネットワークに関連付けられている1つまたは複数のオブジェクトを記憶することができる。工程740で、ソーシャル・ネットワーキング・システム160は、各クエリ・コマンドについて、第1のスコア付けアルゴリズムに基づいて、各取り出されたオブジェクトをスコア付けすることができる。工程750で、ソーシャル・ネットワーキング・システム160は、取り出されたオブジェクトとクエリ制約の指定数のオブジェクトのとのスコアの比較に基づいて、1つまたは複数の修正された構文解析構成パラメータを生成することができる。特定の実施形態において、適宜に図7の方法の1つまたは複数の工程を繰り返すことができる。本開示では特定の順序で発生する図7の方法の特定の工程を説明し示しているが、本開示は任意の適切な順序で発生する図7の方法の任意の適切な工程を企図する。さらに、本開示では、図7の特定の工程を含む検索クエリの構文解析を改善するための例示的方法を説明し示しているが、本開示は、適宜に図7の方法の工程の全部もしくは一部を含むまたは含まないことが可能な任意の適切な工程を含む、検索クエリの構文解析を改善するための任意の適切な方法を企図する。さらに、本開示では図7の方法の特定の工程を実行する特定のコンポーネント、デバイス、またはシステムを説明し示しているが、本開示は図7の方法の任意の適切な工程を実行する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組合せを企図する。
される)フォトに対応する検索結果を生成するために実行され得る。言い換えれば、ユーザの「マット」および「ステファニー」のユーザ・ノード202にフォトが接続されているので、(photos_of:<マット>)および(photos_of:<ステファニー>))についての制約が両方ともフォトによって満たされる。クエリにマッチするものとして識別されたノードは、スコア付け(場合によってはランク付け)されてよく、そして1つまたは複数(たとえば閾値数)が、ユーザへ表示する検索結果として生成されてよい。本開示では特定の様式で検索結果を生成することを説明しているが、本開示は任意の適切な様式で検索結果を生成することを企図する。
図8は、例示的なコンピュータ・システム800を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム800が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム800が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム800上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム800の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができる。その上、コンピュータ・システムへの言及は、適切な場合には、1つまたは複数のコンピュータ・システムを包含することができる。
オペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ802のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ802は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ802を想定している。適切な場合には、プロセッサ802は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ802を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
のROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ806を想定している。ストレージ806は、適切な場合には、プロセッサ802とストレージ806との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ806は、1つまたは複数のストレージ806を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース810を含むことができる。通信インタフェース810は、適切な場合には、1つまたは複数の通信インタフェース810を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。
Claims (14)
- 1つまたは複数のコンピューティング・デバイスが、
オンライン・ソーシャル・ネットワークの複数のユーザから受け取られた前記オンライン・ソーシャル・ネットワークのアーカイブされたクエリの第1のセットにアクセスする工程であって、各クエリは特定のタイプのクエリである、工程と、
第1の構文解析アルゴリズムを使用してクエリの前記第1のセットにおける各クエリを構文解析し、各クエリに基づいてクエリ・コマンドを生成する工程であって、各クエリ・コマンドは、1つまたは複数のクエリ制約を含み、各クエリ制約は、前記第1の構文解析アルゴリズムの1つまたは複数の構文解析構成パラメータが指定する、指定オブジェクト・タイプの指定数のオブジェクトについてのクエリ制約であり、前記構文解析構成パラメータは、各特定のタイプのクエリについて、該特定のタイプのクエリについての指定される数のデータ・ストアから取り出されるべき指定オブジェクト・タイプの指定数のオブジェクトについての指定数のクエリ制約を含むクエリのタイプに基づいてクエリ・コマンドを生成するための命令を指定する、工程と、
各クエリ・コマンドの各クエリ制約について、1つまたは複数のデータ・ストアから前記クエリ制約のうちの少なくとも一部分にマッチする前記指定数のオブジェクトを取り出すオブジェクト取出工程であって、各データ・ストアは、前記クエリ制約の前記指定オブジェクト・タイプの前記オンライン・ソーシャル・ネットワークに関連付けられている1つまたは複数のオブジェクトを記憶している、工程と、
各クエリ・コマンドについて、第1のスコア付けアルゴリズムに基づいて、各取り出されたオブジェクトをスコア付けするスコア付け工程と、
前記取り出されたオブジェクトと前記クエリ制約の前記指定数のオブジェクトとのスコアの比較に基づいて、1つまたは複数の修正された構文解析構成パラメータを生成する修正構文解析構成パラメータ生成工程と、
前記構文解析構成パラメータに基づいて前記第1の構文解析アルゴリズムを修正する工程であって、指定オブジェクト・タイプの前記指定数のオブジェクトのうちの1つまたは複数が修正された前記構文解析構成パラメータに基づいて減少される、工程と、
を備える方法。 - 前記構文解析構成パラメータに基づいて前記第1の構文解析アルゴリズムを修正する工程であって、前記クエリ制約のうちの1つまたは複数が、修正された前記構文解析構成パ
ラメータに基づいて、前記第1の構文解析アルゴリズムによって生成された前記クエリ・コマンドから除去される、工程をさらに備える、請求項1に記載の方法。 - 前記第1の構文解析アルゴリズムは、アクセスすべきデータ・ストアの数をさらに指定し、前記方法は、
前記構文解析構成パラメータに基づいて前記第1の構文解析アルゴリズムを修正する工程であって、指定される前記数のアクセスすべきデータ・ストアのうちの1つまたは複数が、修正された前記構文解析構成パラメータに基づいて減少される、工程をさらに備える、請求項1に記載の方法。 - 前記スコア付け工程は、前記取り出されたオブジェクトのすべてをランク付けする工程を含む、請求項1に記載の方法。
- 前記修正構文解析構成パラメータ生成工程は、
閾値スコア以上のスコアを有する各取り出されたオブジェクトを識別する工程と、
各クエリ・コマンドの各クエリ制約について、前記閾値スコア以上のスコアを有する各識別されたオブジェクトを取り出すために前記データ・ストアから取り出される必要があるオブジェクトの数を決定する工程と、
前記データ・ストアから取り出される必要があるオブジェクトの決定された前記数に基づいて、前記構文解析構成パラメータのうちの1つまたは複数を修正する工程と、
を含む、請求項1に記載の方法。 - 複数のノードと前記複数のノードを接続する複数のエッジとを含むソーシャル・グラフにアクセスする工程をさらに備え、前記複数のノードのうちの2つのノードの間の前記エッジの各々は、前記2つのノードの間の一次の隔たりを表し、前記複数のノードは、
前記オンライン・ソーシャル・ネットワークの複数のユーザにそれぞれ対応する複数のユーザ・ノードと、
前記オンライン・ソーシャル・ネットワークに関連付けられている複数のコンセプトにそれぞれ対応する複数のコンセプト・ノードと、を含み、
クエリの前記第1のセットにおける各クエリは、特定のユーザ・ノードに対応し、各取り出されたオブジェクトは、前記複数のノードのユーザ・ノードまたはコンセプト・ノードに対応する、請求項1に記載の方法。 - クエリの前記第1のセットの各クエリは、前記複数のノードからの1つまたは複数の選択されたノードと前記複数のエッジからの1つまたは複数の選択されたエッジとに対する参照を含む構造化クエリである、請求項6に記載の方法。
- 各クエリ制約は、選択された前記エッジのうちの第1のエッジによって選択された前記ノードのうちの第1のノードに接続された前記複数のノードのうちの1つまたは複数のノードについてのクエリ制約である、請求項6に記載の方法。
- クエリの前記第1のセットの各クエリは、1つまたは複数のn−グラムを含む非構造化テキスト・クエリである、請求項1に記載の方法。
- 前記オブジェクト取出工程は、各クエリ制約について、
前記クエリ制約の前記指定オブジェクト・タイプのオブジェクトを記憶している1つまたは複数のデータ・ストアにアクセスする工程と、
前記クエリ制約の少なくとも一部分にマッチするアクセスされた前記データ・ストアの1つまたは複数のオブジェクトを識別する工程と、
を含む、請求項1に記載の方法。 - 前記指定オブジェクト・タイプは、ユーザ、フォト、投稿、ウェブページ、アプリケーション、ロケーション、およびユーザ・グループからなる群から選択される、請求項1に記載の方法。
- 各データ・ストアは、ユーザ・データ・ストア、フォト・データ・ストア、投稿データ・ストア、ウェブページ・データ・ストア、アプリケーション・データ・ストア、ロケーション・データ・ストア、またはユーザ・グループ・データ・ストアからなる群から選択される、請求項1に記載の方法。
- ソフトウェアを具現化する1つまたは複数の非一時的なコンピュータ可読記憶媒体であって、前記ソフトウェアは、実行されたとき、
オンライン・ソーシャル・ネットワークの複数のユーザから受け取られた前記オンライン・ソーシャル・ネットワークのアーカイブされたクエリの第1のセットにアクセスする工程であって、各クエリは特定のタイプのクエリである、工程と、
第1の構文解析アルゴリズムを使用してクエリの前記第1のセットにおける各クエリを構文解析し、各クエリに基づいてクエリ・コマンドを生成する工程であって、各クエリ・コマンドは、1つまたは複数のクエリ制約を含み、各クエリ制約は、前記第1の構文解析アルゴリズムの1つまたは複数の構文解析構成パラメータが指定する、指定オブジェクト・タイプの指定数のオブジェクトについてのクエリ制約であり、前記構文解析構成パラメータは、各特定のタイプのクエリについて、該特定のタイプのクエリについての指定される数のデータ・ストアから取り出されるべき指定オブジェクト・タイプの指定数のオブジェクトについての指定数のクエリ制約を含むクエリのタイプに基づいてクエリ・コマンドを生成するための命令を指定する、工程と、
各クエリ・コマンドの各クエリ制約について、1つまたは複数のデータ・ストアから前記クエリ制約のうちの少なくとも一部分にマッチする前記指定数のオブジェクトを取り出すオブジェクト取出工程であって、各データ・ストアは、前記クエリ制約の前記指定オブジェクト・タイプの前記オンライン・ソーシャル・ネットワークに関連付けられている1つまたは複数のオブジェクトを記憶している、工程と、
各クエリ・コマンドについて、第1のスコア付けアルゴリズムに基づいて、各取り出されたオブジェクトをスコア付けするスコア付け工程と、
前記取り出されたオブジェクトと前記クエリ制約の前記指定数のオブジェクトとのスコアの比較に基づいて、1つまたは複数の修正された構文解析構成パラメータを生成する修正構文解析構成パラメータ生成工程と、
前記構文解析構成パラメータに基づいて前記第1の構文解析アルゴリズムを修正する工程であって、指定オブジェクト・タイプの前記指定数のオブジェクトのうちの1つまたは複数が修正された前記構文解析構成パラメータに基づいて減少される、工程と、
を行うように動作可能である、媒体。 - 1つまたは複数のプロセッサと、前記プロセッサに結合されており前記プロセッサによって実行可能な命令を含むメモリとを備えるシステムであって、前記プロセッサは、前記命令を実行するとき、
オンライン・ソーシャル・ネットワークの複数のユーザから受け取られた前記オンライン・ソーシャル・ネットワークのアーカイブされたクエリの第1のセットにアクセスする工程であって、各クエリは特定のタイプのクエリである、工程と、
第1の構文解析アルゴリズムを使用してクエリの前記第1のセットにおける各クエリを構文解析し、各クエリに基づいてクエリ・コマンドを生成する工程であって、各クエリ・コマンドは、1つまたは複数のクエリ制約を含み、各クエリ制約は、前記第1の構文解析アルゴリズムの1つまたは複数の構文解析構成パラメータが指定する、指定オブジェクト・タイプの指定数のオブジェクトについてのクエリ制約であり、前記構文解析構成パラメ
ータは、各特定のタイプのクエリについて、該特定のタイプのクエリについての指定される数のデータ・ストアから取り出されるべき指定オブジェクト・タイプの指定数のオブジェクトについての指定数のクエリ制約を含むクエリのタイプに基づいてクエリ・コマンドを生成するための命令を指定する、工程と、
各クエリ・コマンドの各クエリ制約について、1つまたは複数のデータ・ストアから前記クエリ制約のうちの少なくとも一部分にマッチする前記指定数のオブジェクトを取り出すオブジェクト取出工程であって、各データ・ストアは、前記クエリ制約の前記指定オブジェクト・タイプの前記オンライン・ソーシャル・ネットワークに関連付けられている1つまたは複数のオブジェクトを記憶している、工程と、
各クエリ・コマンドについて、第1のスコア付けアルゴリズムに基づいて、各取り出されたオブジェクトをスコア付けするスコア付け工程と、
前記取り出されたオブジェクトと前記クエリ制約の前記指定数のオブジェクトとのスコアの比較に基づいて、1つまたは複数の修正された構文解析構成パラメータを生成する修正構文解析構成パラメータ生成工程と、
前記構文解析構成パラメータに基づいて前記第1の構文解析アルゴリズムを修正する工程であって、指定オブジェクト・タイプの前記指定数のオブジェクトのうちの1つまたは複数が修正された前記構文解析構成パラメータに基づいて減少される、工程と、
を行うように動作可能である、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/954,719 | 2013-07-30 | ||
US13/954,719 US9514230B2 (en) | 2013-07-30 | 2013-07-30 | Rewriting search queries on online social networks |
PCT/US2014/048401 WO2015017320A1 (en) | 2013-07-30 | 2014-07-28 | Rewriting search queries on online social networks |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017102233A Division JP6377807B2 (ja) | 2013-07-30 | 2017-05-24 | オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016531355A JP2016531355A (ja) | 2016-10-06 |
JP2016531355A5 JP2016531355A5 (ja) | 2017-05-18 |
JP6151450B2 true JP6151450B2 (ja) | 2017-06-21 |
Family
ID=52428629
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016531793A Active JP6151450B2 (ja) | 2013-07-30 | 2014-07-28 | オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え |
JP2017102233A Expired - Fee Related JP6377807B2 (ja) | 2013-07-30 | 2017-05-24 | オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017102233A Expired - Fee Related JP6377807B2 (ja) | 2013-07-30 | 2017-05-24 | オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え |
Country Status (7)
Country | Link |
---|---|
US (2) | US9514230B2 (ja) |
JP (2) | JP6151450B2 (ja) |
KR (2) | KR102099208B1 (ja) |
AU (2) | AU2014296446B2 (ja) |
CA (2) | CA2919664C (ja) |
IL (2) | IL243771A (ja) |
WO (1) | WO2015017320A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8542802B2 (en) | 2007-02-15 | 2013-09-24 | Global Tel*Link Corporation | System and method for three-way call detection |
US9710765B2 (en) * | 2011-05-26 | 2017-07-18 | Facebook, Inc. | Browser with integrated privacy controls and dashboard for social network data |
US9317614B2 (en) | 2013-07-30 | 2016-04-19 | Facebook, Inc. | Static rankings for search queries on online social networks |
US9514230B2 (en) | 2013-07-30 | 2016-12-06 | Facebook, Inc. | Rewriting search queries on online social networks |
GB2519516B (en) * | 2013-10-21 | 2017-05-10 | Openwave Mobility Inc | A method, apparatus and computer program for modifying messages in a communications network |
US20220050882A1 (en) * | 2013-10-22 | 2022-02-17 | Steven Michael VITTORIO | Content search and results |
US9875322B2 (en) * | 2014-07-31 | 2018-01-23 | Google Llc | Saving and retrieving locations of objects |
WO2016168811A1 (en) | 2015-04-17 | 2016-10-20 | Vittorio Steven Michael | Content search and results |
US10853370B2 (en) * | 2015-06-26 | 2020-12-01 | Intel Corporation | Devices and/or methods to provide a query response based on ephemeral data |
US10409830B2 (en) | 2015-10-14 | 2019-09-10 | Microsoft Technology Licensing, Llc | System for facet expansion |
WO2017066472A1 (en) * | 2015-10-14 | 2017-04-20 | Linkedin Corporation | Assisted search query |
US10445386B2 (en) | 2015-10-14 | 2019-10-15 | Microsoft Technology Licensing, Llc | Search result refinement |
US10102255B2 (en) * | 2016-09-08 | 2018-10-16 | Facebook, Inc. | Categorizing objects for queries on online social networks |
US10997227B2 (en) | 2017-01-18 | 2021-05-04 | Google Llc | Systems and methods for processing a natural language query in data tables |
US10248645B2 (en) * | 2017-05-30 | 2019-04-02 | Facebook, Inc. | Measuring phrase association on online social networks |
US10503800B1 (en) * | 2018-12-27 | 2019-12-10 | Coupa Software Incorporated | System and methods for enabling disintermediated communication associated with search operations |
US20230196832A1 (en) * | 2021-12-21 | 2023-06-22 | Western Digital Technologies, Inc. | Ranking Images in an Image Group |
Family Cites Families (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1125107A (ja) * | 1997-07-02 | 1999-01-29 | Omron Corp | データベース検索方法および装置 |
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 |
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 |
US8095875B2 (en) | 2001-06-22 | 2012-01-10 | Krause Philip R | Method and apparatus for consolidating network information |
US20090006543A1 (en) | 2001-08-20 | 2009-01-01 | Masterobjects | System and method for asynchronous retrieval of information based on incremental user input |
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 |
US6944609B2 (en) | 2001-10-18 | 2005-09-13 | Lycos, Inc. | Search results using editor feedback |
PL374305A1 (en) | 2001-12-28 | 2005-10-03 | Jeffrey James Jonas | Real time data warehousing |
US7512612B1 (en) | 2002-08-08 | 2009-03-31 | Spoke Software | Selecting an optimal path through a relationship graph |
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 |
US20050091202A1 (en) | 2003-10-22 | 2005-04-28 | Thomas Kapenda J. | Social network-based internet search engine |
US20050096102A1 (en) * | 2003-11-05 | 2005-05-05 | Motorola, Inc | Remotely initiated low power mode |
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 |
US8554794B2 (en) | 2004-05-17 | 2013-10-08 | Hoover's Inc. | System and method for enforcing privacy in social networks |
US7836044B2 (en) | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
US7499940B1 (en) | 2004-11-11 | 2009-03-03 | Google Inc. | Method and system for URL autocompletion using ranked results |
US7565345B2 (en) * | 2005-03-29 | 2009-07-21 | Google Inc. | Integration of multiple query revision models |
TWI443547B (zh) | 2005-12-07 | 2014-07-01 | Telecomm Systems Inc | 有限電信裝置的使用者輸入方案的方法以及其系統 |
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 |
WO2008085207A2 (en) | 2006-12-29 | 2008-07-17 | Prodea Systems, Inc. | Multi-services application gateway |
US8713143B2 (en) | 2007-04-27 | 2014-04-29 | President And Fellows Of Harvard College | Establishing a social network |
US7783620B1 (en) | 2007-06-29 | 2010-08-24 | Emc Corporation | Relevancy scoring using query structure and data structure for federated search |
JP2009093384A (ja) * | 2007-10-09 | 2009-04-30 | Navitime Japan Co Ltd | Poi検索システム、経路探索サーバおよびpoi検索方法 |
US20090164929A1 (en) | 2007-12-20 | 2009-06-25 | Microsoft Corporation | Customizing Search Results |
US20090197681A1 (en) | 2008-01-31 | 2009-08-06 | Microsoft Corporation | System and method for targeted recommendations using social gaming networks |
US20090228296A1 (en) | 2008-03-04 | 2009-09-10 | Collarity, Inc. | Optimization of social distribution networks |
US8744976B2 (en) | 2008-04-28 | 2014-06-03 | Yahoo! Inc. | Discovery of friends using social network graph properties |
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 |
US8027990B1 (en) | 2008-07-09 | 2011-09-27 | Google Inc. | Dynamic query suggestion |
US8412749B2 (en) | 2009-01-16 | 2013-04-02 | Google Inc. | Populating a structured presentation with new values |
US20100235354A1 (en) | 2009-03-12 | 2010-09-16 | International Business Machines Corporation | Collaborative search engine system |
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 |
US20110087534A1 (en) | 2009-10-14 | 2011-04-14 | Wantsa Media (Canada), Inc. | Search queries and advertising platforms utilizing at least one social graph |
US8224847B2 (en) * | 2009-10-29 | 2012-07-17 | Microsoft Corporation | Relevant individual searching using managed property and ranking features |
US8239364B2 (en) | 2009-12-08 | 2012-08-07 | Facebook, Inc. | Search and retrieval of objects in a social networking system |
US20110184940A1 (en) * | 2010-01-26 | 2011-07-28 | Yahoo! Inc. | System and method for detecting changes in the relevance of past search results |
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 |
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 |
US8732208B2 (en) | 2010-04-19 | 2014-05-20 | Facebook, Inc. | Structured search queries based on social-graph information |
US8185558B1 (en) | 2010-04-19 | 2012-05-22 | 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 |
US8180804B1 (en) | 2010-04-19 | 2012-05-15 | Facebook, Inc. | Dynamically generating recommendations based on social graph information |
US8244848B1 (en) | 2010-04-19 | 2012-08-14 | Facebook, Inc. | Integrated social network environment |
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 |
US8880520B2 (en) * | 2010-04-21 | 2014-11-04 | Yahoo! Inc. | Selectively adding social dimension to web searches |
US8447772B2 (en) * | 2010-06-23 | 2013-05-21 | International Business Machines Corporation | Energy monetary cost aware query optimization |
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 |
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 |
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 |
US20120297017A1 (en) | 2011-05-20 | 2012-11-22 | Microsoft Corporation | Privacy-conscious personalization |
KR101243289B1 (ko) | 2011-05-27 | 2013-03-13 | 주식회사 솔트룩스 | 소셜 네트워크 서비스 정보 검색 시스템 |
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 |
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 |
US8495058B2 (en) | 2011-08-05 | 2013-07-23 | Google Inc. | Filtering social search results |
US20130041876A1 (en) | 2011-08-08 | 2013-02-14 | Paul Alexander Dow | Link recommendation and densification |
US11620719B2 (en) | 2011-09-12 | 2023-04-04 | Microsoft Technology Licensing, Llc | Identifying unseen content of interest |
US20130086024A1 (en) * | 2011-09-29 | 2013-04-04 | Microsoft Corporation | Query Reformulation Using Post-Execution Results Analysis |
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 |
US8321364B1 (en) | 2012-02-08 | 2012-11-27 | Google Inc. | Method and system for including robots into social networks |
US9195748B2 (en) * | 2012-02-21 | 2015-11-24 | Spotright, Inc. | Systems and methods for identifying and analyzing internet users |
US9971993B2 (en) * | 2012-03-26 | 2018-05-15 | Microsoft Technology Licensing, Llc | Leveraging a social graph for use with electronic messaging |
US20140129552A1 (en) * | 2012-11-02 | 2014-05-08 | Linkedln Corporation | Leveraging homophily in ranking search results |
US9317614B2 (en) | 2013-07-30 | 2016-04-19 | Facebook, Inc. | Static rankings for search queries on online social networks |
US9514230B2 (en) | 2013-07-30 | 2016-12-06 | Facebook, Inc. | Rewriting search queries on online social networks |
US9569735B1 (en) * | 2015-12-19 | 2017-02-14 | Linkedin Corporation | Member communication reply score calculation |
-
2013
- 2013-07-30 US US13/954,719 patent/US9514230B2/en active Active
-
2014
- 2014-07-28 WO PCT/US2014/048401 patent/WO2015017320A1/en active Application Filing
- 2014-07-28 JP JP2016531793A patent/JP6151450B2/ja active Active
- 2014-07-28 KR KR1020177019352A patent/KR102099208B1/ko active IP Right Grant
- 2014-07-28 CA CA2919664A patent/CA2919664C/en not_active Expired - Fee Related
- 2014-07-28 AU AU2014296446A patent/AU2014296446B2/en not_active Ceased
- 2014-07-28 CA CA2961250A patent/CA2961250A1/en not_active Abandoned
- 2014-07-28 KR KR1020167005425A patent/KR101761230B1/ko active IP Right Grant
-
2016
- 2016-01-26 IL IL243771A patent/IL243771A/en not_active IP Right Cessation
- 2016-10-28 US US15/337,452 patent/US10324928B2/en active Active
-
2017
- 2017-05-24 JP JP2017102233A patent/JP6377807B2/ja not_active Expired - Fee Related
- 2017-07-12 AU AU2017204810A patent/AU2017204810B2/en not_active Ceased
- 2017-07-27 IL IL253686A patent/IL253686A0/en unknown
Also Published As
Publication number | Publication date |
---|---|
KR101761230B1 (ko) | 2017-07-25 |
US20170046385A1 (en) | 2017-02-16 |
IL243771A (en) | 2017-08-31 |
AU2014296446B2 (en) | 2017-06-01 |
US9514230B2 (en) | 2016-12-06 |
IL243771A0 (en) | 2016-04-21 |
CA2919664A1 (en) | 2015-02-05 |
AU2014296446A1 (en) | 2016-03-17 |
KR20170084366A (ko) | 2017-07-19 |
JP2017182828A (ja) | 2017-10-05 |
CA2919664C (en) | 2017-05-16 |
IL253686A0 (en) | 2017-09-28 |
CA2961250A1 (en) | 2015-02-05 |
US10324928B2 (en) | 2019-06-18 |
WO2015017320A1 (en) | 2015-02-05 |
JP2016531355A (ja) | 2016-10-06 |
AU2017204810A1 (en) | 2017-07-27 |
KR102099208B1 (ko) | 2020-04-10 |
KR20160040253A (ko) | 2016-04-12 |
JP6377807B2 (ja) | 2018-08-22 |
AU2017204810B2 (en) | 2019-07-18 |
US20150039597A1 (en) | 2015-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6388988B2 (ja) | オンライン・ソーシャル・ネットワークにおける検索クエリのための静的ランク付け | |
JP6377807B2 (ja) | オンライン・ソーシャル・ネットワークにおける検索クエリの書き換え | |
JP6293830B2 (ja) | オンライン・ソーシャル・ネットワークにおける検索クエリに対する近似的プライバシ | |
JP6568609B2 (ja) | 構造化された検索クエリのための文法モデル | |
JP6408081B2 (ja) | オンライン・ソーシャル・ネットワーク上の検索結果をブレンドすること | |
JP6193518B2 (ja) | オンライン・ソーシャル・ネットワーク上での検索クエリ対話 | |
JP6407968B2 (ja) | 可変検索クエリ・バーティカル・アクセス | |
JP2018501584A (ja) | オンライン・ソーシャル・ネットワーク上でニュース関連のコンテンツを検索するための提案キーワード | |
JP6562962B2 (ja) | オンライン・ソーシャル・ネットワーク上のあいまいな構造化検索クエリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170403 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170403 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20170403 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170418 |
|
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: 20170425 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170524 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6151450 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |