(57)【要約】ソーシャル・ネットワーク情報を検討することにより検索クエリ式の自動サジェスチョンが容易にされる。複数の検索クエリは、ユーザとユーザの１つ以上のソーシャル・ネットワーク・コンタクトの検索履歴とによって特定される部分検索クエリの機能として特定される。引き続き、これら特定されたクエリはランク付けされることができ、特定したクエリのサブセットの決定を支援して、クエリ補完についてサジェストする。さらに、ソーシャル・ネットワーク・コンタクトから結果として生じたクエリ・サジェスチョンは注釈付けされることができて、他のクエリ・サジェスチョンとは別個にセットされる。【選択図】図１
2014528112.tif 000002
【特許請求の範囲】
【請求項１】
検索を容易にする方法であって、
メモリに格納されたコンピュータ実施可能命令を実施するように構成される少なくとも１つのプロセッサを用いるステップであって、検索の実施を開始する前に、１つ以上の検索クエリを、ユーザによって指定される部分的な検索クエリの機能として特定し、前記ユーザの１つ以上のソーシャル・コンタクトの検索活動を特定する行為を実行させる、ステップを含む方法。
【請求項２】
請求項１記載の方法であって、更に、検索結果を選択したソーシャル・コンタクトが前記１つ以上のクエリの内対応する１つの実施の結果として提供されたかに基づいて、前記１つ以上の検索クエリをランク付けするステップを含む、方法。
【請求項３】
請求項１記載の方法であって、更に、特定のサジェストされた検索クエリの関数として生成した検索結果が選択されたソーシャル・コンタクトの数に基づいて、前記１つ以上の検索クエリをランク付けするステップを含む、方法。
【請求項４】
ソーシャル・コンタクトの近接関数として前記１つ以上の検索クエリをランク付けするステップを更に含む、請求項１記載の方法。
【請求項５】
前記１つ以上の検索クエリを実行したソーシャル・コンタクトを特定する情報を用いて前記１つ以上のクエリを注釈付けするステップを更に含む、請求項１記載の方法。
【請求項６】
検索を容易にするシステムであって、
メモリに結合されるプロセッサであって、前記メモリに格納されるコンピュータ実施可能な第１のコンポーネントであって、検索を実施する前に複数のサジェストされたクエリをユーザにより指定されたクエリの一部の機能として特定し、前記ユーザの１つ以上のソーシャル・ネットワーク・コンタクトによって実行されるクエリを特定するように構成された第１のコンポーネントを実施させるよう構成されたプロセッサを備える、システム。
【請求項７】
請求項６記載のシステムであって、更に、実行されたクエリに関して、前記ソーシャル・ネットワーク・コンタクトの行動に基づいて前記サジェストされたクエリをランク付けするように構成される第２のコンポーネントを備える、システム。
【請求項８】
請求項７記載のシステムであって、更に、前記１つ以上のソーシャル・ネットワーク・コンタクトによって実行された前記サジェストされたクエリを注釈付けするように構成される第３のコンポーネントを備える、システム。
【請求項９】
請求項８記載のシステムにおいて、前記第３コンポーネントが、各クエリを実行した１つ以上の前記ソーシャル・ネットワーク・コンタクトの画像を用いて前記サジェストされたクエリの内少なくとも１つを注釈付けするように構成される、システム。
【請求項１０】
請求項６記載のシステムであって、更に、複数のユーザの検索相互作用を記録するように構成される第２のコンポーネントを備える、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  検索エンジンは、豊富なデータ間で意味がある情報の所在を特定する可能性を最大化するために、使用される。Ｗｏｒｌｄ Ｗｉｄｅ Ｗｅｂ（ｗｅｂ）のようなリソース（例えば、ウェブ・ページ、イメージ、レコード・・・）のデータ・セットが解析され、自動的にインデックスされる。検索クエリは、自動補完(automatic completion)の支援の有無にかかわらず、ユーザによって特定することができる。自動補完は、例えば、ユーザがクエリ文字を入力するようなクエリを、検索ボックス内の文字によってサジェストする。クエリを受け取ると、検索エンジンは、生成されたインデックスを利用して、関連した検索結果の所在を迅速に特定して返す。引き続き、多数の方法で検索結果をユーザに提示することができる。例えば、多くのユニフォーム・リソース・ロケータ（ＵＲＬ）またはリンクが、クエリを満たす特定のウェブ・ページを特定して返されることができる。あるいは、イメージを表しているタイルセットのサムネイルが、イメージ・データベースにわたる検索の結果として提示されることができる。検索結果の関連性を改良するために、検索エンジンは、ユーザに関連した地理的位置のような追加のコンテキストを採用することを求めることができる。
【０００２】
[0002]  ソーシャル・ネットワーキング・サービスが非常に普及し続けている。ソーシャル・ネットワークは、とりわけ、友好関係、親類関係、ビジネス、および／または共通の関心を含む様々な種類の関係性によって繋がる個人またはコンタクトで成り立つソーシャル構造である。ソーシャル・ネットワーキング・サービスは、オンライン／ｗｅｂベースのサービスであり、サービス・ユーザが、他のユーザとのソーシャルな関係性を確立するのに加えて、関心があるデータを幾らかのまたは全ての関連付けられたユーザと共有するのを可能にする。この文脈では、各ユーザは、人口統計学(demographic)情報や、趣味やプロフェッショナル・スキルといった関心のセット、およびユーザにとって関心があるリソースのセットのような、ユーザが有する様々な態様を特定するプロファイルを他のユーザに提示する。ユーザは、パブリックまたはターゲット・メッセージ、ファイル、ウェブ・ページのような関心があるリソースへの参照を含む特定のソーシャル・データ項目を他のユーザと共有するために選択する。ユーザはまた、例えば、ニュース・フィード内のデータ項目を再投稿することにより、他のユーザによって共有されたソーシャル・データ項目に注目させるよう選択することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
[0003]  ソーシャル・サーチは、検索エンジンと組み合わせてソーシャル・ネットワーキング・サービスを採用することを伴い、実行されたクエリの結果を特定のユーザに調整させるのを可能にする。例えば、ソーシャル・ネットワーキング・プロフィールは、検索クエリの結果に影響を与えるように利用させることができる。
【課題を解決するための手段】
【０００４】
[0004]  以下は、開示する主題の幾らかの態様の基本的な理解に供するために、簡略化した摘要を提示したものである。本摘要は広範囲の概要でない。主要な／重大な要素を特定する、または特許請求した主題の範囲を詳細に描くことを目的とするのではない。後に提示するより詳細な説明に対する序文として、幾らかの概念を簡略化した形態で提示することを唯一の目的とする。
【０００５】
[0005]  簡潔に説明すると、本件開示は、全般的にソーシャル・ネットワークで起動する(power)クエリ・サジェスチョンに関連する。自動クエリ・サジェスチョン機能は、潜在的なクエリ・サジェスチョンのソースとしてユーザのソーシャル・ネットワーク・コンタクトの検索履歴を含むことによって拡張され、その結果、例えば部分的なクエリを補完(complete)させる。更に、クエリ・サジェスチョンは、ソーシャル・ネットワークのコンタクト行動の機能として、とりわけランク付けを行うことができる。更にまた、ソーシャル・ネットワーク・コンタクトの検索履歴から結果として生じるクエリ・サジェスチョンは、様々な方法で注釈付けをする(annotate)ことができ、他のソースから結果として生じるクエリ・サジェスチョンからこれらのクエリを区別することができる。
【０００６】
[0006]  上記および関連する目的を達成するために、特許請求する主題の特定の例示の態様について、次の説明および添付の図面を参照して本明細書で説明する。これらの態様は、本主題を実施できる様々な方法を表しており、その全てが特許請求した主題の範囲内となることを意図するものである。図面に関連して検討すると、他の利点および新規な特徴が、以下の詳細な説明から明らかなものとすることができる。
【図面の簡単な説明】
【０００７】
【図１】[0007]図１は、検索システムのブロック図である。
【図２】[0008]図２は、代表的なクエリ・サジェスチョン・コンポーネントのブロック図である。
【図３】[0009]図３は、ユーザの検索活動を特定する方法についてのフロー・チャート図である。
【図４】[0010]図４は、クエリ・サジェスチョンについての方法のフロー・チャート図である。
【図５】[0011]図５は、クエリ・サジェスチョンを提示する方法についてのフロー・チャート図である。
【図６】[0012]図６は、本件開示の態様についての適切な動作環境を例示する概略ブロック図である。
【発明を実施するための形態】
【０００８】
[0013]  以下の詳細な説明は、全般的に、ソーシャル・ネットワークで起動するクエリ・サジェスチョンに向けられる。検索を実行する際、クエリ式(query formulation)は、検索結果の品質を確保するために、ユーザにとって克服すべき最も困難な課題の１つである。このタスク、自動サジェスチョン、または補完(completion)を用いてユーザを支援するために、機能が利用される。例えば、ユーザが検索ボックスにおいて文字によりクエリ文字を入力すると、検索クエリは、逐次、検索エンジンのユーザにサジェストすることができる。従来は、検索クエリは、凝集した(aggregated)匿名のソースから管理された包括的な(generic)クエリのセットの中からサジェストされてきた。ここで、クエリ・サジェスチョンは、潜在的クエリ・サジェスチョンのセット内にユーザのソーシャル・ネットワーク・コンタクトの検索履歴を含めることによって、拡張される。更に、クエリのランク付けは、とりわけ、ソーシャル・ネットワーク・コンタクトの行動に基づくものとすることができる。また、ソーシャル・ネットワーク・コンタクトから生じるサジェストされたクエリは注釈付けをすることができ、他のサジェストされたクエリとは別個にそれらをセットすることができる。
【０００９】
[0014]  本開示の様々な態様について、これより添付の図面を参照してより詳細に説明する。全体を通じて、同じ符号は同様のまたは対応する要素を参照している。しかしながら、関連する図面および詳細な説明は、開示する特定の形態で特許請求する主題を限定することを意図するものではない。それよりかはむしろ、全ての修正、均等および代替が、特許請求された主題の趣旨および範囲内に収まることを意図している。
【００１０】
[0015]  最初に図１を参照して、検索システム１００について例示する。検索システム１００は、通信によりソーシャル・ネットワーク・サービス１２０に結合されるソーシャル・ネットワーク・サービス１２０、並びに複数のクエリのソース、即ち、包括クエリ・サジェスチョン１３０、ユーザ検索履歴１４０およびソーシャル・ネットワーク・コンタクト検索履歴１５０を含む。
【００１１】
[0016]  検索エンジン１１０は、全般的に、データのセットを通じてユーザから検索クエリの受信、および検索結果のセットの戻し可能にするように構成される。検索エンジン１１０は、特定の種類のデータ・ソースに対し設計することができる。１つの顕著な種別の検索エンジン１１０は、ウェブ検索エンジンであり、インターネットによりアクセス可能な、テキスト、イメージ、オーディオ、ビデオを含む様々なウェブサイトのようなウェブ・リソースのセット、即ちコンテンツについてインデックス付けを行う。ユーザからの検索クエリを受け取ると、ウェブ検索エンジンは、検索クエリに関連付けられるウェブ・ページを特定し、そして、検索エンジンの結果ページ（ＳＥＲＰ）へのリンクのセットを戻すことができる。
【００１２】
[0017]  更にまた、検索エンジン１１０は、検索前(pre-search)のクエリ式支援を提供する。より具体的には、クエリ・サジェスチョン・コンポーネント１１２は、自動サジェスチョン、即ちクエリ補完(query completion)機能を供給するように構成される。例えば、検索クエリは、ユーザが検索ボックス内において文字によりクエリ文字を入力すると、逐次、検索エンジンのそのユーザにサジェストすることができる。クエリ・サジェスチョン・コンポーネント１１２は、様々なソースからのサジェスチョンについてクエリを特定することができる。例えば、従来から行われているように、クエリ・サジェスチョン・コンポーネント１１２は、包括クエリ・サジェスチョン１３０からのクエリを特定することができる。包括クエリ・サジェスチョン１３０は、凝集(aggretated)された匿名のソースから管理されるクエリを含む。言い換えると、包括クエリ・サジェスチョン１３０は、検索エンジン・ユーザの大多数が入力したものに対応付ける。加えて、または代替として、包括クエリ・サジェスチョン１３０は、とりわけ、より良好なパフォーマンスまたは結果を有するクエリに向けてバイアスされた人間の編集者によってプログラムすることができる。更に、サジェスチョンに対する候補クエリは、ユーザ検索履歴１４０およびソーシャル・ネットワーク・コンタクト履歴１５０から特定することができる。即ち、（ソーシャル・コンタクトとして知られる）ユーザまたはユーザの友人、ファン、フォロワー等によって実行された以前のクエリの機能としてクエリを特定することができる。
【００１３】
[0018]  一例として、ユーザがシアトルのような訪問先の都市で良好なシーフード・レストランを探しているユーザについて検討する。ユーザがシアトルについて何も知らない場合には、そのユーザは通例、検索クエリを「シアトルでのシーフード(seafood in Seattle)」として入力し、数多くのレストランへのリンクが戻されるであろう。その内の幾らかは良好であり、また幾らかは酷いものである。今、ユーザは各レストランのレビューについて調査することを必要としている。基本的に、このことは、検索するユーザのスキル、トピックの知識、そして適切な検索用語を入力できる能力に依存したプロセスとなる。しかしながら、ユーザは、友人、家族、またはシアトルに住んでいる他のソーシャル・コンタクトを有しているかもしれず、または、以前にシアトルを訪問し同一の検索を行ったことがあるかもしれない。コンタクトに尋ねることなく、コンタクトがどのようにして同一の検索を形成され、ユーザに提示され、そしてクエリ補完サジェスチョンを駆動するのに利用されたかについての情報を、自動的に取得することができる。ソーシャル・コンタクトがどのような検索を実行し、ソーシャル・コンタクトが何を見て、また、当該コンタクトが（ソーシャル信号と共に）何を行ったかに基づいて、どのクエリをサジェストして、部分的なクエリを補完するかについて決定を行う。
【００１４】
[0019]  検索モニタ・コンポーネント１１４は、検索エンジンのユーザ１１０によって入力されたクエリをモニタするように構成される。モニタリングを容易にするために、ユーザが検索エンジン１１０を利用するときに、そのユーザを他のユーザから区別するために識別子を彼らや彼らのコンピュータに関連付けることができる。この識別子は、ランダムに割り当てることができ、または、識別を提供するサービスに対し認証を行うことによって提供される。一実施形態によれば、その識別提供サービスは、ソーシャル・ネットワーク・サービス１２０とすることができるが、それに限定されない。従って、ユーザがソーシャル・ネットワーク・サービス１２０にログオンすると、その識別子を提供することができる。ユーザが検索を行うと、検索クエリを含むユーザの検索履歴１４０が、選択した検索結果（例えばクリックしたＵＲＬ）と共に、検索モニタ・コンポーネント１１４によって、当該識別子について格納される。もちろん、ユーザは、プライバシー上の理由により、様々な態様に対してオプトインまたはオプトアウトすることができる。例えば、ユーザは、識別子について格納されることになる検索クエリへのパーミションを付与することができるものの、ソーシャル・コンタクトと共に収集したデータを共有しないとしてもよい。
【００１５】
[0020]  ソーシャル・ネットワーク・サービス１２０は、オンライン・ソーシャル・ネットワーク・サービスを提供するコンポーネントの集合である。当該サービスは、ユーザが、ユーザを表現し説明するソーシャル・プロフィールを生成することと、様々な種別の他のユーザとの関係（例えば、家族、友人、知人、同僚、ファン・・・）を表す関連付けを確立することとを可能にする。更に、ソーシャル・ネットワーク・サービス１２０は、人口統計学的情報（例えば、年齢、学歴、職歴、関心・・・）、メッセージ（例えば、特定のユーザまたはユーザ・グループに向けられた個人メッセージ、チャット・セッションに参加している特定のユーザに届けられるチャット・メッセージ、ソーシャル・ネットワーク・サービスにおける多くのユーザによって閲覧されることがあるパブリック・コメント・・・）、ならびに他のデータ（例えば、ドキュメント、イメージ、音楽ビデオ、ファイル・・・）を含む情報について交換を可能にすることができる。一例としては、ソーシャル・ネットワーク・サービス１２０は、上記およびその他の機能を提供するウェブサイトとして実施することができる。
【００１６】
[0021]  検索モニタ・コンポーネント１１４は、特定ユーザのソーシャル・ネットワーク・コンタクトに関する識別子および他の情報を取得するために、ソーシャル・ネットワーク・サービス１２０と相互作用することができる。ソーシャル・ネットワーク・サービス１２０は、ユーザのソーシャル・ネットワーク・コンタクトを特定するソーシャル・グラフを維持することができる。従って、検索モニタ・コンポーネント１１４は、特定ユーザのソーシャル・ネットワーク・コンタクトに要求することができ、または、ユーザのソーシャル・ネットワーク・コンタクトについて提供されたソーシャル・グラフから、それらを決定することができる。ソーシャル・ネットワーク・コンタクトによって実行された検索は、次いで、対応する識別子に対し、クエリ・サジェスチョン・コンポーネント１１２によって使用されるソーシャル・ネットワーク・コンタクト検索履歴１５０として格納することができる。
【００１７】
[0022]  図２は、特定コンポーネント２１０、ランク付けコンポーネント２２０、および注釈付けコンポーネント２３０を含んだより詳細の代表的なクエリ・サジェスチョン・コンポーネント１１２について示す。特定コンポーネント２１０は、ユーザが入力したクエリの一部と重複する様々なソースの中から候補クエリを特定するように構成される。重複は、語彙的または概念的なものとすることができる。語彙的な重複は、同一に見える語に関連する。例えば、クエリの一部が２文字「ｘｂ」を含む場合には、候補クエリは「ｘｂｏｘ」および「ｘｂｏｘゲーム」を含むことができる。何故ならば、それら両方は「ｘｂ」で始まるからである。概念的な重複は、同一または類似の概念または文脈に関連するクエリに関する。上記の例では、概念的に重複するクエリは、「プレイステーション」および「プレイステーション・ゲーム」を含むことができる。何故ならば、「Ｘｂｏｘ」および「プレイステーション」は同一の概念、即ち、ビデオ・ゲーム・システムに関連するからである。更にまた、特定コンポーネント２１０は、ユーザが例えばクエリの文字を継続して入力するときに、重複する候補クエリを絶えず改善させることができる。
【００１８】
[0023]  ランク付けコンポーネント２２０は、特定コンポーネント２１０で特定された候補クエリをランク付けまたは加重して、ユーザによって選択されることになるようなサブセット・クエリについてサジェストを可能にする。例えば、特定の部分クエリの補完を可能にする。一実施形態によれば、ソーシャル・ネットワーク・コンタクトの行動を含むソーシャル・ネットワーク情報は、ランク付けした候補クエリにおいて利用することができる。例えば、ランク付けは、とりわけ、クエリを実行したソーシャル・ネットワーク・コンタクトの数、特定のソーシャル・ネットワーク・コンタクトがクエリの実施により生成された検索結果を選択（例えばクリック）したかどうか、検索結果に基づきコンタクトが行った選択の数、幾つのコンタクトがクエリから生成された検索結果を選択したか、サジェストされたクエリを選択したコンタクトの数、コンタクトの近接度、および／またはコンタクトの相対的な専門性(expertise)における関数として実行することができる。一例としては、ユーザがソーシャル・ネットワーク・コンタクト「Ｘ」および「Ｙ」と頻繁に通信するものの、「Ｚ」とは通信しない場合に、ランク付けコンポーネント２２０は、「Ｘ」および「Ｙ」により実行されるクエリに対し、「Ｚ」に対するものよりもより大きいランク付けスコア、即ち加重を割り当てることができる。勿論、ランク付けコンポーネント２２０は、候補クエリについて完全のまたは部分的なユーザ・クエリに対する類似性のような他のランク付けアルゴリズムも同様に採用することができるが、これに限定されない。
【００１９】
[0024]  注釈付けコンポーネント２３０は、ソーシャル・ネットワークまたはより特定のソーシャル・ネットワーク・コンタクトから生じた結果のクエリ・サジェスチョンを何らかの方法で特定するように構成される。このようにサジェストされたクエリは、つまり、例えば一般公衆が提供を受け、且つ当局がソーシャル・ネットワーク・コンタクトに基づきサジェストされたクエリに付加された他のクエリとは別のものとしてセットすることができる。注釈コンポーネント２３０により提供される注釈の例には、１つ以上のソーシャル・ネットワーク・コンタクトの画像または名前、ソーシャル・ネットワークの名称、または他のマーキングが含まれるが、これに限定されない。
【００２０】
[0025]  クエリ・サジェスチョン・コンポーネント１１２は、ユーザのためにカスタマイズした方法で動作するように構成することができる。一例では、ユーザは、特定のソーシャル・ネットワーク・コンタクトを特定し、クエリ・サジェスチョンまたは加重を多少含むか、多少排除することができる。例えば、ユーザは、仕事場の同僚のような、コンタクトのサブセットを特定することができ、全てのまたは特定タイプのクエリのサジェスチョンに対して採用することができる。全体的に、如何なる信号（正であれ負であれ、粗くともきめ細かくとも(coarse or fine grained)・・・）もが、ユーザによって指定され、クエリ・サジェスチョンを支配することができる。
【００２１】
[0026]  上記のシステム、アーキテクチャ、環境等について、幾らかのコンポーネント間での相互作用に関して説明してきた。このようなシステムおよびコンポーネントは、これらコンポーネントもしくはここで特定されるサブコンポーネント、特定のコンポーネントもしくはサブコンポーネントの幾らか、および／または追加のコンポーネントを含むことができることが認められるべきである。サブコンポーネントはまた、親のコンポーネント内に含まれるのではない、他のコンポーネントに通信により結合されるコンポーネントとして実装することもできる。更にまた、１つ以上のコンポーネントおよび／またはサブコンポーネントは、凝集した機能性を提供するために、単一のコンポーネントに結合することができる。システムとコンポーネントおよび／またはサブコンポーネントとの間の通信は、プッシュまたはプル・モデルに従って実現することができる。コンポーネントはまた、簡潔のために本明細書に特段記載していない１つ以上の他のコンポーネントと相互作用してもよく、当業者にとって公知である。
【００２２】
[0027]  更にまた、上記開示したシステムおよび以下の方法における様々な部分は、人工知能、機械学習、ナレッジもしくはルール・ベースのコンポーネント、サブコンポーネント、プロセス、手段、方法論、または機構（例えば、サポート・ベクトル・マシン、ニューラル・ネットワーク、エキスパート・システム、ベイジアン・ネットワーク、ファジー・ロジック、データ・フュージョン・エンジン、クラシファイア・・・）を含むかまたは採用することができる。このようなコンポーネントは、とりわけ、これらによって実行される特定の機構やプロセスを自動化することができ、その結果、システムおよび方法の部分を、効率的また知的なものにするのに加えて、より適応可能なものにする。一例としては、これに限定されないが、クエリ・サジェスチョン・コンポーネント１２１２は、サジェスチョンのための候補クエリをランク付けするために、このような機構を利用することができる。
【００２３】
[0028]  上記に説明した例示のシステムを鑑みると、開示した主題に従って実装することができる方法論について、図３〜５のフロー・チャートを参照することでよりよく認められるであろう。説明の簡潔性のために、本方法論を一連のブロックとして示し説明する一方で、特許請求する主題は、ブロックの順序に限定されないことが理解および認められるべきである。何故ならば、幾らかのブロックは、異なる順序で、および／または本明細書に示し記載したものから他のブロックと同時に生じることもあるからである。更に、図示した全てのブロックが、以降に説明する方法を実装するのに必要とされるという訳ではない。
【００２４】
[0029]  図３を参照する。ユーザの検索活動を特定する方法３００が示される。符号３１０では、特定のユーザに関連付けられた識別子を取得する。一実施形態によれば、サービスを認証すると（例えば、ユーザ名およびパスコードを提供する）、その識別子は、ソーシャル・ネットワークまたは他のサービスから取得することができる。符号３２０では、ユーザの検索活動は、モニタされ、さもなければ観察される。検索活動は、とりわけ、特定のクエリに関する結果において実施および選択のために提出される検索クエリを含むことができる。符号３３０では、観察した検索活動は、ユーザと関連付けられた識別子について格納される。
【００２５】
[0030]  図４は、クエリ・サジェスチョンについての方法４００を示す。符号４１０では、ユーザまたは特定のユーザ・コンピュータと関係付けられた識別子が取得される。このような識別子は、例えば、ユーザから直接取得することができ、または、検索エンジンおよび／またはソーシャル・ネットワーク・サービスを有する認証を通じて間接的に取得することができる。符号４２０では、例えば検索ボックスにユーザがタイプするような部分クエリ入力、言い換えると完全な検索クエリの一部のようなクエリ入力を受け取る。符号４３０では、ユーザのソーシャル・ネットワーク・コンタクトによって行われるクエリを取得する。クエリは、辞書的または概念的に部分検索クエリと重複する。これらのクエリは、候補クエリと呼ばれる。何故ならば、これらはサジェスチョンの候補だからである。符号４４０では、候補クエリは、とりわけ、例えばソーシャル・ネットワーク・コンタクトの行動についての関数としてランク付けがされる。符号４５０では、候補クエリは、他のソースから、とりわけ、そのユーザの検索履歴（お気に入り、タグ、注のようなユーザによって行われる注釈付けを含む）、包括的なサジェスチョンのセット、および／またはクエリ・コンテキストに基づいてアルゴリズム的に生成したサジェスチョンを含んで取得することができる。符号４６０では、全てのソースから取得した候補クエリがランク付けされる。符号４７０では、クエリのサブセットが、ランク付けに基づいて選択され、ユーザに提示される。
【００２６】
[0031]  図５は、クエリ・サジェスチョンの方法５００についてのフロー・チャート図を示す。符号５１０では、クエリ・サジェスチョンのセットを受け取り、抽出し、または取得もしくは獲得する。符号５２０では、ソーシャル・ネットワーク・コンタクトから結果として生じたクエリ・サジェスチョンが特定される。符号５３０では、ソーシャル・ネットワーク・コンタクトから結果として生じたクエリ・サジェスチョンを他のクエリ・サジェスチョンから区別するために、特定したクエリ・サジェスチョンが注釈付けされる。例えば、このようなクエリ・サジェスチョンは、画像、テキスト、または他のマーキングと共に注釈付けされることができる。一例としては、サジェストされたクエリを実行した１つ以上のソーシャル・ネットワーク・コンタクトの画像がクエリの次に織り込まれる(injected)。
【００２７】
[0032]  開示した主題の態様は、明確さおよび理解のために、単一のソーシャル・ネットワーク・サービスの文脈で説明してきた。もちろん、本開示の態様はまた、複数のソーシャル・ネットワーク・サービスにも同様に適用可能である。例えば、クエリ・サジェスチョンは、一般的なソーシャル・ネットワーク・サービス（例えば、Ｆａｃｅｂｏｏｋ）並びにビジネスおよびプロフェッショナルのネットワーク・サービス（例えば、Ｌｉｎｋｅｄｌｎ）からのソーシャル・コンタクトに基づいてランク付けをすることができる。更にまた、ランク付けは、ネットワークによって変更することができる。例えば、検索がビジネスまたはプロフェッショナルのコンテンツに関するものであると例えば決定または推測される場合には、プロフェッショナルおよびビジネスのネットワークからのコンタクトによって実行される検索は、一般的なソーシャル・ネットワークからのそれよりもより重く重み付けがされる。更にまた、サジェスチョンは、情報を用いて任意に注釈付けをすることができる。この情報は、幾らかのソーシャル・ネットワーク内のどのソーシャル・ネットワークからサジェスチョンが生成されたかを示す。
【００２８】
[0033]  本明細書で用いる「コンポーネント」、「システム」および「エンジン」という用語ならびにこれらの形態は、コンピュータ関連のエンティティを指すことを意図し、ハードウェア、ハードウェアおよびソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれでもよい。例えば、コンポーネントは、プロセッサ上で起動するプロセス、プロセッサ、オブジェクト、インスタンス、実施可能形式(executable)、実施のスレッド、プログラム、および／またはコンピュータとすることができるが、これに限定されない。実例として、コンピュータ上で起動するアプリケーションおよびコンピュータは共に、コンポーネントとすることができる。１つ以上のコンポーネントは、プロセスおよび／または実行スレッドに常駐してもよく、また、コンポーネントは、１つのコンピュータ上でローカライズされ、および／または２つ以上のコンピュータ間で分散されてもよい。
【００２９】
[0034]  「例示(exemplary)」という用語またはこの形態は、本明細書では例(example)、例(instance)、または図示を意味するために用いている。本願明細書において「例示」として説明した如何なる態様または設計(design)は、必ずしも、他の態様または設計を超えて好適なものまたは有利なものとして解釈する必要はない。更にまた、単に明確さおよび理解のために単に例を提供したに過ぎず、特許請求する主題または本開示での関連部分を如何なる方法でも制限または限定することを意味するものではない。範囲を変更する無数の追加のまたは代替の例について提示できたものの、簡潔さのために省略したものと認められる。
【００３０】
[0035]  本説明および添付の特許請求の範囲の中で用いた「または(or)」なる連結は、他に特定または文脈から明白でなければ、排他的な「または(or)」ではなく、包括的な「または(or)」を意味することを意図する。言い換えれば、「ＸまたはＹ」は、「Ｘ」および「Ｙ」の如何なる包括的な順列を意味することを意図する。例えば、「ＡはＸを雇用する」、「ＡはＹを雇用する」、または「ＡはＡおよびＢを雇用する」として場合には、「ＡはＸまたはＹを雇用する」が如何なる上記例示の下で満たされる。
【００３１】
[0036]  本明細書において、「推測(inference)」または「推測する(infer)」という用語は、イベントおよび／またはデータを通じてキャプチャされた観察のセットから、システム、環境、および／またはユーザの状態について推理し、または推測することを包括的に指す。推測は、特定の文脈または行為(action)を確認するために採用することができ、または、例えば、状態を通じた確率(probability)分布を生成することができる。推測は、確率論とすることができる。即ち、データおよびイベントの考慮に基づいて関心がある状態にわたる確率分布の計算とすることができる。推測はまた、イベントおよび／またはデータのセットからより上位レベルのイベントを構成するために作るために採用される技術に関連することもできる。このような推測は、イベントが接近した一時的な近接度において相関するか否か、イベントおよびデータが１または複数のイベントおよびデータ・ソースから入来したものかに関し、観察されたイベントおよび／または格納したイベント・データから、新規のイベントや行為を構成することとなる。様々な分類方式および／またはシステム（例えば、サポート・ベクトル・マシン、ニューラル・ネットワーク、エキスパート・システム、ベイジアン・ネットワーク、ファジー・ロジック、データ・フュージョン・エンジン・・・）が、特許請求した主題に関連する、自動および／または推測した行為を実行することに関連して採用することができる。
【００３２】
[0037]  更にまた、「含む(include)」、「収容する(contain)」、「有する(has)」、「有している(having)」なる用語、またはこれらの形態での変形は、発明の詳細な説明および特許請求の範囲のいずれでも用いられる。これらの用語は、「備える(comprising)」が特許請求の範囲において移行性のある語として用いられる場合に解釈されるように、「備える(comprising)」という用語と類似の方法で含むことを意図する。
【００３３】
[0038]  特許請求する主題についての文脈を供するために、図６は、以降の検討と同様に、適切な環境についての簡潔で包括的な説明を提供する。この適切な環境では本主題の様々な態様を実装することができる。しかしながら、この適切な環境は、例示に過ぎず、使用または機能の範囲に関して如何なる限定をも示唆することを目的とはしない。
【００３４】
[0039]  上記に開示したシステムおよび方法は、１つ以上のコンピュータで起動するプログラムを有したコンピュータ実施可能命令という包括的な文脈において説明することができると共に、態様はまた、他のプログラム・モジュール等と組み合わせて実装できることが当業者にとって認識されるであろう。一般的に、プログラム・モジュールは、とりわけ、ルーチン、プログラム、コンポーネント、データ構造を含み、特定のタスクを実行し、および／または特定の抽象データ・タイプを実装する。更には、上記のシステムおよび方法が、単一プロセッサ、複数プロセッサ、マルチ・コア・プロセッサ・コンピュータ・システム、ミニ・コンピューティング・デバイス、メインフレーム・コンピュータを、パーソナル・コンピュータ、ハンド・ヘルド・コンピューティング・デバイス（例えばパーソナル・デジタル・アシスタント（ＰＤＡ）、電話、時計）、マイクロプロセッサ・ベースまたはプログラム可能なコンシューマまたは産業電子機器等を含む様々なコンピュータ・システムと共に実施することができることは当業者にとって理解されるであろう。態様はまた、タスクが通信ネットワークにわたってリンクされるリモート処理デバイスによって実行される分散コンピューティング環境において実施することもできる。しかしながら、全てではないにしても、幾らかの特許請求した主題では、スタンド・アロンのコンピュータ上で実施することができる。分散コンピューティング環境において、プログラム・モジュールは、ローカルおよびリモートのメモリ記憶デバイスの一方または双方に位置することができる。
【００３５】
[0040]  図６を参照すると、例示の汎用コンピュータ６１０またはコンピュータ・デバイス（例えば、デスクトップ、ラップトップ、サーバ、ハンド・ヘルド、プログラム可能なコンシューマまたは産業電子機器、セット・トップ・ボックス、ゲーム・システム・・・）が示される。コンピュータ６１０は、１つ以上のプロセッサ（１または複数）６２０、メモリ６３０、システム・バス６４０、大容量ストレージ６５０、および１つ以上のインタフェース・コンポーネント６７０を含む。システム・バス６４０は、少なくとも上記のシステム・コンポーネントを通信可能に結合する。しかしながら、その最も単純な形態において、コンピュータ６１０はメモリ６３０に結合される１つ以上のプロセッサ６２０を含み、メモリ６３０に格納された様々なコンピュータ実行可能行為、指示、および／またはコンポーネントを実施することが認められるべきである。
【００３６】
[0041]  プロセッサ（１または複数）６２０は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、もしくは他のプログラム可能な論理デバイス、別個の(discrete)ゲート、もしくはトランジスタ・ロジック、別個のハードウエア・コンポーネント、または設計されたこれらの任意の組み合わせを用いて実施し、本明細書に説明した機能を実行することができる。汎用プロセッサは、マイクロプロセッサとしてもよいが、代替としては、如何なるプロセッサ、コントローラ、マイクロコントローラ、または状態マシンとしてもよい。プロセッサ（１または複数）６２０はまた、コンピューティング・デバイス、例えばＤＳＰおよびマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、マルチ・コア・プロセッサ、ＤＳＰコアと関連する１つ以上のマイクロプロセッサ、または他のこのような構成における組み合わせとして実装することもできる。
【００３７】
[0042]  コンピュータ６１０は、特許請求した主題における１つ以上の態様を実施するために、コンピュータ６１０の制御を容易にする様々なコンピュータ可読媒体を含む、またはこれと相互作用することができる。コンピュータ可読媒体は、コンピュータ６１０によってアクセスすることができ、揮発性および不揮発性の媒体および着脱可能および着脱不可能な媒体を含むことができる如何なる利用可能なメディアともすることもできる。一例としては、コンピュータ可読媒体は、コンピュータ記憶媒体および通信メディアを備えることができるが、これに限定されない。
【００３８】
[0043]  コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラム・モジュール、または他のデータのような情報を記憶するための如何なる方法または技術において実装される揮発性および不揮発性の、並びに着脱可能および着脱不可能な媒体を含む。コンピュータ記憶媒体は、メモリ・デバイス（例えば、ランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、電気的に消去可能なプログラマブル・リード・オンリ・メモリ（ＥＥＰＲＯＭ）・・・）、磁気記憶デバイス（例えば、ハードディスク、フロッピーディスク、カセット、テープ・・・）、光ディスク（例えば、コンパクト・ディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）・・・）、および、ソリッド・ステート・デバイス（例えば、ソリッド・ステート・ドライブ（ＳＳＤ）、フラッシュ・メモリ・ドライブ（例えば、カード、スティック、キー・ドライブ・・・）・・・）、または、所望の情報を格納するために使用することができ、且つコンピュータ６１０によってアクセスできる他の如何なる媒体をも含むが、これに限定されない。
【００３９】
[0044]  通信媒体は、通例、コンピュータ可読命令、データ構造、プログラム・モジュールまたは搬送波または他の搬送機構のような変調データ信号における他のデータを実施し、また、如何なる情報配信媒体をも含む。「変調データ信号」なる用語は、１つ以上のその特徴セットを有し、または信号内の情報を符号化するような方法で変化された信号を意味する。一例としては、通信媒体は、有線ネットワークまたは直接有線接続のような有線媒体、および音響、ＲＦ、赤外線および他の無線媒体のような無線媒体を含むが、これに限定されない。上記の如何なる組合せもが、コンピュータ可読媒体の範囲内に含まれなければならない。
【００４０】
[0045]  メモリ６３０および大容量ストレージ６５０は、コンピュータ可読記憶媒体の例である。コンピューティング・デバイスの正確な構成および種別に従って、メモリ６３０は、揮発性（例えば、ＲＡＭ）としても、不揮発性（例えば、ＲＯＭ、フラッシュ・メモリ・・・）としても、または２つのある組み合わせとしてもよい。一例として、スタートアップ間のようなコンピュータ６１０内の要素間で情報を移送するための基本的なルーチンを含む基本入出力システム（ＢＩＯＳ）は、不揮発性メモリに格納することができる。その一方で、揮発性メモリは、とりわけ、プロセッサ（１または複数）６２０によって処理を容易にさせる外部キャッシュ・メモリとして作用することができる。
【００４１】
[0046]  大容量ストレージ６５０は、メモリ６３０に対し大量データを記憶するために、着脱可能／着脱不可能な、揮発性／不揮発性のコンピュータ記憶媒体を含む。例えば、大容量ストレージ６５０は、磁気または光ディスク・ドライブ、フロッピーディスク・ドライブ、フラッシュ・メモリ、ソリッド・ステート・ドライブまたはメモリ・スティックのような１つ以上のデバイスを含むが、これに限定されない。
【００４２】
[0047]  メモリ６３０および大容量ストレージ６５０は、オペレーティング・システム６６０、１つ以上のアプリケーション６６２、１つ以上のプログラム・モジュール６６４およびデータ６６６を含むことができ、または、それらの中に格納することができる。オペレーティング・システム６６０は、コンピュータ６１０のリソースを制御および割り当てる行為を行う。アプリケーション６６２は、システムおよびアプリケーション・ソフトウェアの一方または双方を含み、プログラム・モジュール６６４並びにメモリ６３０および／または大容量ストレージ６５０に格納したデータ６６６を通じたオペレーティング・システム６６０によるリソースの管理を活用して、１つ以上の行為を実行する。したがって、アプリケーション６６２は、これにより供給されたロジックに従って、汎用コンピュータ６１０を特定マシンにすることができる。
【００４３】
[0048]  特許請求した主題の全てまたは部分は、ソフトウェア、ファームウェア、ハードウェア、または如何なるそれらの組み合わせをも生産するために、標準的なプログラミングおよび／または光学技術を用いて実装することができ、その結果、開示した機能を実現させるコンピュータを制御する。一例としては、これに限定されないが、検索エンジン１１０またはその部分は、アプリケーションとするまたはその一部を形成することができ、１つ以上のモジュール６６４並びにメモリ６３０および大容量ストレージ６５０に格納したデータを含むことができ、１つ以上のプロセッサ（１または複数）によって実施されるときに、その機能性を実現することができる。
【００４４】
[0049]  １つの特定の実施形態によれば、プロセッサ（１または複数）６２０は、チップ（ＳＯＣ）上のシステム、または、単一の集積回路基板上のハードウェアおよびソフトウェアの両方を含む、即ち集積した類似のアーキテクチャに対応することができる。ここで、とりわけ、プロセッサ（１または複数）６２０は、１以上のプロセッサを、プロセッサ（１または複数）６２０およびメモリ６３０に少なくとも類似するメモリと同様に含むことができる。従来のプロセッサは、最小量のハードウェアおよびソフトウェアを含み、外部のハードウェアおよびソフトウェアに広範囲に依存していた。これとは対照的に、プロセッサのSOC実装はより強力である。何故ならば、ハードウェアおよびソフトウェアを内部に組み込み、外部のハードウェアおよびソフトウェアに最小限に依存または全く依存することなく特定の機能を可能にするからである。例えば、検索エンジン１１０および／または関連する機能は、ＳＯＣアーキテクチャのハードウェア内に組み込むことができる。
【００４５】
[0050]  コンピュータ６１０はまた、システム・バス６４０に通信可能に結合されコンピュータ６１０との相互作用を容易にする１つ以上のインタフェース・コンポーネント６７０も含む。一例としては、インタフェース・コンポーネント６７０は、ポート（例えば、シリアル、パラレル、ＰＣＭＣＩＡ、ＵＳＢ、Ｆｉｒｅ Ｗｉｒｅ・・・）、またはインタフェース・カード（例えば、サウンド、ビデオ・・・）等とすることができる。１つの例示の実装では、インタフェース・コンポーネント６７０は、ユーザ入出力インタフェースとして組み込むことができ、１つ以上の入力デバイス（例えば、マウス、トラックボール、スタイラス、タッチパッド、キーボード、マイクロフォン、ジョイスティック、ゲームパッド、衛生アンテナ、スキャナ、カメラ、その他コンピュータ・・・）を通じてユーザがコマンドおよび情報をコンピュータ６１０に入力することを可能にする。他の例示の実装では、インタフェース・コンポーネント６７０は、とりわけ、ディスプレイ（例えば、ＣＲＴ、ＬＣＤ、プラズマ・・・）、スピーカ、プリンタ、および／または他のコンピュータに対して出力を供給する出力周辺機器インタフェースとして組み込むことができる。更にまた、インタフェース・コンポーネント６７０は、ネットワーク・インタフェースとして組み込むことができ、有線または無線の通信リンクを介するように他のコンピューティング・デバイス（図示せず）との通信を可能にする。
【００４６】
[0051]  上記に説明してきたことは、特許請求する主題の態様の例を含む。特許請求する主題を説明する目的でコンポーネントまたは方法論における全ての考え得る組み合わせを説明することはもちろん不可能であるが、特許請求する主題の数多くの更なる組み合わせおよび順列が可能であることが当業者には認められる。したがって、開示した主題は、添付した特許請求の範囲の趣旨および範囲に収まるこのような全ての代替、修正および変更を包含することを意図する。
【図１】
2014528112.tif 000003
【図２】
2014528112.tif 000004
【図３】
2014528112.tif 000005
【図４】
2014528112.tif 000006
【図５】
2014528112.tif 000007
【図６】
2014528112.tif 000008
【国際調査報告】
2014528112.tif 000009
2014528112.tif 000010