JP2012190472A - 検索クエリ完成前の代替クエリの連想 - Google Patents

検索クエリ完成前の代替クエリの連想 Download PDF

Info

Publication number
JP2012190472A
JP2012190472A JP2012108604A JP2012108604A JP2012190472A JP 2012190472 A JP2012190472 A JP 2012190472A JP 2012108604 A JP2012108604 A JP 2012108604A JP 2012108604 A JP2012108604 A JP 2012108604A JP 2012190472 A JP2012190472 A JP 2012190472A
Authority
JP
Japan
Prior art keywords
search
search query
query
user
alternative
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.)
Pending
Application number
JP2012108604A
Other languages
English (en)
Inventor
Kasperski Richard
カスパースキー,リチャード
Borkovsky Arkady
ボルコフスキー,アルカディ
Rabbat Ralph
ラバット,ラルフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Inc
Original Assignee
Yahoo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/212,044 external-priority patent/US7672932B2/en
Priority claimed from US11/313,525 external-priority patent/US7516124B2/en
Application filed by Yahoo Inc filed Critical Yahoo Inc
Publication of JP2012190472A publication Critical patent/JP2012190472A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】予測検索クエリに対する代替検索クエリを与える。
【解決手段】検索クエリはクライアントノードから受信される。クライアントノードから、検索クエリが完全に形成されたという指示を受信する前に、以下のステップが行われる:1)完成されたときに検索クエリがどのようになるかを予測することにより予測検索クエリが決定され、2)予測検索クエリとは異なる代替検索クエリが予測検索クエリに基づいて決定される。代替検索クエリはクライアントノードに与えられる。代替検索クエリはユーザ検索クエリが完成されそうもないものもあり得る。例えば、ユーザが“brittany sp”という検索クエリを入力するのに応答して、“britney spears”というスペリング連想を有する代替検索クエリが決定されて、ユーザに与えられる。
【選択図】図10

Description

発明の分野
本発明は検索エンジンに関し、詳細には予測検索クエリに対する代替検索クエリを与えることに関する。
発明の背景
検索エンジンは、ユーザが情報を見つけるのを助けるコンピュータプログラムである。検索エンジンを使用して、ユーザは1つ以上の検索クエリ用語を入力して、これらの検索クエリ用語に一致する題材を含む、またはそれらに関連付けられたリソースのリストを得ることができる。検索エンジンは多様なコンテキストに適用し得るが、検索エンジンは特にインターネットを介してアクセス可能なリソースを見つけるのに有用である。検索エンジンを介して見つけられ得るリソースは、例えば、コンテンツがハイパーテキストマークアップ言語(HTML)などのページ記述言語で構成されるファイルを含む。このようなファイルは典型的にはページと呼ばれる。検索エンジンを使用して、興味のあるファイルまたはページへのURL(Universal Resource Locator)および/またはHTMLリンクを作成する。
検索エンジンは典型的にはユーザが検索基準を特定することを可能とするインターフェースおよび検索結果を表示するインターフェースを有する。典型的には、検索エンジンは、ユーザへ検索結果インターフェースを提示する前に検索結果を順序付ける。順序付けは通常、「ランキング」の形態を取り、最も高いランキングの文書は、ユーザにより特定された検索基準に反映される興味を最も満足させそうであると考えられる文書である。ランキングに基づいて、ユーザに1つ(またはそれ以上)の検索結果ページを送信する。但し、ユーザはそれでも尚、検索結果を処理して検索クエリが適切な検索結果を生成したかどうかを決定するのに、かなりの時間と労力を費やさなければならない。ユーザが結果に満足しない場合は、ユーザは新しい検索クエリを形成してそのプロセスを繰り返す。
このように検索プロセスは、ユーザが検索クエリを形成して、膨大な検索結果が適切かどうかを決定し、その後、適宜検索クエリを再決定するという対話式のタスクであることが多い。それゆえに検索エンジンに関するユーザの経験はいらいらする、時間のかかるものであることが多い。
本節で説明されるアプローチは、遂行可能なアプローチではあるが、必ずしもすでに着想または遂行されたアプローチではない。それゆえに、別途指示がなければ、本節で説明されるアプローチのいずれも単に本節に包括されるがゆえに先行技術とみなすことを前提とすべきでない。
本発明の実施形態に従う推測検索結果を与えるグラフィカルユーザインターフェースを図示する。 本発明の実施形態に従う推測検索結果を与えるグラフィカルユーザインターフェースを図示する。 本発明の実施形態に従う推測検索結果を与えるグラフィカルユーザインターフェースを図示する。 本発明の実施形態に従う推測検索結果を与えるグラフィカルユーザインターフェースを図示する。 本発明の実施形態に従う検索結果に対する推測検索結果を与える技術を図示するフロー図である。 本発明の実施形態に従う関連性のある推測検索結果を決定するための技術を図示する流れ図である。 本発明の実施形態により与えられる種々のタイプの推測検索結果を図示する。 本発明の実施形態により与えられる種々のタイプの推測検索結果を図示する。 本発明の1つの実施形態に従うクエリフィールドに打ち込まれた入力に基づいて予測クエリと最も可能性のある予測クエリからの検索結果とを表示するユーザインターフェースを図示する。 本発明の1つの実施形態による、どの潜在的クエリがユーザに送信される予測クエリとなるかの決定に時間的関連性がどのように組み入れられるかを示すフロー図である。 本発明の1つの実施形態に従うクライアント上のウェブブラウザとフロントエンドサーバとの間の通信を示すブロック図である。 本発明の別の実施形態に従うクライアント上のウェブブラウザとフロントエンドサーバとの間の通信を示すブロック図である。 本発明の別の実施形態に従うクライアント上のウェブブラウザとフロントエンドサーバとの間の通信を示すブロック図である。 本発明の実施形態に従う予測検索クエリに対する代替を表示するための実例ユーザインターフェースを描く。 本発明の実施形態に従う予測検索クエリの代替を決定するプロセスのステップを示すフローチャートである。 本発明の実施形態に従う予測検索クエリと代替検索クエリとを表示するユーザインターフェースを図示する図である。 本発明の実施形態に従う予測検索クエリと代替検索クエリとを表示するユーザインターフェースを示す図である。 本発明の実施形態に従う予測検索クエリと代替検索クエリとを表示するユーザインターフェースを図示する図である。 本発明の実施形態が実施し得るコンピュータシステムを示すブロック図である。
発明の詳細な説明
本発明は、添付の図面の図において決して限定としてではなく例として図示され、同じ参照番号は同様の要素を示す。
以下の記述では、説明の目的で本発明の深い理解を与えるために多くの具体的詳細が述べられる。但し、本発明はこれらの具体的詳細なしで実践し得ることは明らかとなるであろう。他の例では、不必要に本発明を分かりにくくするのを避けるために、周知の構造および装置がブロック図形式で示される。
(推測(SPECULATIVE)検索結果概要)
典型的には、ワールドワイドウェブなどの検索を形成する際に、ユーザは検索クエリを決定して、その後キャリッジリターンを入力するか、または「検索ボタン」をクリックして検索クエリに基づいて検索要求を開始する。検索要求を開始する動作はまた、検索クエリが「送信」されたことを指示するように機能する。検索を開始する動作以前は、検索クエリは「未送信」である。本発明の実施形態は、検索を行うとともにユーザが検索要求を明示的に開始する前に未送信検索クエリに基づいて推測検索結果を与える。
本明細書では、検索クエリの入力完了の前に検索クエリに推測検索結果を与えるための技術を記載する。1つの実施形態によると、クライアントノードからの未送信検索の受信に応答して、前述の検索クエリが完全に形成されたというクライアントノードからの指示を受信する前に、未提出検索クエリに対して推測検索結果がクライエントノードに与えられる。推測検索結果は、未送信検索クエリとしてクライアントノード上の同一のウェブページに表示され得るが、検索クエリはなおユーザにより入力されている。ユーザが検索クエリを決定し続けるにつれて、新しい推測検索結果がユーザに与えられ得る。
検索要求および検索結果はワールドワイドウェブに関し得るが、本明細書に記載される技術はそのように限定されない。より一般的には、検索要求および結果は任意のフォーマットの任意の検索可能データに関し得る。例えば、データはユーザアドレス帳、保存リンク、個人的に保存された画像(.jpegファイル、.gifファイルなど)、ビデオ、オーディオ(.mp3ファイル、.wmvファイルなど)、連絡先カード(例えば、vカード)、カレンダオブジェクト、ワープロ文書、グラフィックファイルまたはコンピュータコード(オブジェクトファイルおよびソースコード)であり得る。
(推測検索開始基準)
検索クエリの入力時において新しい推測検索結果が与えられる頻度を制限するために、未送信検索クエリが検索を開始するための基準を満たしているかどうかについて判断を行い得る。このような基準は本明細書では「推測検索開始基準」と称される。推測検索開始基準は、推測検索結果を高度に関連のある結果に限定されるように設計され得る。例えば、基準はユーザが未送信検索クエリに完全な言葉を入力したことであり得る。
推測検索開始基準を使用して、検索クエリが形成されるにつれて、おびただしい数の頻繁に変化する検索結果をユーザが受け取ることのないようにし得る。また、推測検索開始基準を必須とするのは、検索エンジンがおびただしい数の検索要求を受け取ることがないようにするのに役立つ。さらには、推測検索開始基準を満足させるまでなんら検索を行わないことにより、推測検索結果がそのリターンをユーザに対して保証するのに十分な関連性を有する可能性が高まり得る。例えば、いくつかの部分的に形成された言葉に基づいた推測検索結果は低い関連性を有し得る。しかし、部分的に形成された言葉に基づいた推測検索結果が高度に関連性があり得るという場合がある。部分的な言葉であろうがなかろうが、どの部分的検索クエリが関連性のある推測検索結果に繋がりそうかを判断する技術が提供される。
未送信検索クエリが検索を開始する基準を満たし、それによって十分に形成されているかどうかを判断するための1つの技術は、ユーザが検索要求において文字を最後に入力してからの時間を計ることである。タイマが時間切れになると、検索が開始される。タイマの期間はユーザに適応するように動的に調整可能である。例えば、ユーザが早くタイプを打ちすぎた場合、検索はあまりにもまれにしか開始され得ない。または、ユーザがゆっくりタイプすると、検索はあまりにも頻繁に開始され得る。
未送信検索クエリが推測検索開始基準を満たすかどうかを判断するための別の技術は、所定文字が検索クエリに含まれるかどうかを判断することである。例えば、ユーザがスペース文字を入力すると、ユーザが言葉を完成しそうであり、検索クエリは十分に形成されて検索を開始し得る。本明細書で使用されるように、「言葉」は英語のような自然言語に発生する言葉か、または略語、頭字語、製品コード、URLなどのような特別な表記法のいずれかであり得る。
未送信検索クエリが十分に形成されて検索を開始するかどうかを判断する別の技術は、検索クエリが予め定義されたフレーズを含む辞書中のフレーズに一致するか、またはほとんど一致するかどうかを判断することである。予め定義されたフレーズは検索要求における言葉の組み合わせである可能性があるフレーズであり得る。1つの実施形態では、辞書は人気のあるクエリに基づく。1つの実施形態では、辞書を使用して、検索を行うための条件として未送信検索クエリがその辞書の用語またはフレーズに一致するかまたはほとんど一致するかどうかを判断することにより行われる検索クエリの数を制限する。
未送信検索クエリが十分に形成されて検索を開始するかどうかの判断は本明細書に記載される技術に限定されない。また、技術の任意の組み合わせを使用して判断がなされ得る。判断はクライアントノードで行われ得るが、これは必須条件ではない。1つの実施形態では、クライアントノードはAJAX(Asynchronous Java(登録商標)Script+XML)エンジンを有して、検索エンジンへ未提出検索クエリを転送するべきかどうかについての判断を容易にする。クライアントノードは他の技術により判断を行い得る。別の実施形態では、検索を開始するべきかどうかの決定は、検索エンジンなどクライアント以外のノードで行われ得る。
(関連性閾値)
推測検索開始基準が満たされた後、予め定義された検索ルールが適用されて、ユーザに1つまたは数個の関連性の高い推測検索結果を与え、それが未送信検索クエリと同一のウェブページに表示され得る。例えば、予め定義されたルールは、関連性の高い推測検索結果を生成しそうな第1の検索を行うことを含み得る。第1の検索が一定の関連性閾値を満たす推測検索結果を生成しない場合、ユーザには検索結果が提示されない。あるいは、第2の検索が行われる。第2の検索は未送信検索クエリの現在の状態に基づいて行われるが、この状態はそれに基づいて第1の検索が行われた未送信検索クエリの状態とは異なり得る。第2の検索の結果が関連性閾値を満たさない場合、第2の検索の結果はユーザに提示されない。未送信検索クエリに基づいた繰り返し行われる検索のプロセスは、検索クエリが送信されるまで継続し得る。検索クエリが送信されるまで、それらの結果が関連性閾値を満たす場合にだけユーザは推測検索の結果が提示される。
様々な検索は様々な検索技術を採用可能であり、および/または様々なデータベースを検索し得る。この順序付けされた検索および関連性閾値の使用は、ユーザに関連性の高い結果を提供し、推測検索結果関連性または他の基準が低すぎると見なされるとユーザにはなんら結果を返す必要がないので、結果に関してユーザに負担をかけすぎることを回避する。
(クエリ決定時における推測検索の例)
図1A、図1B,図1Cおよび図1Dは、本発明の実施形態に従う推測検索結果を与えるためのグラフィカルユーザインターフェース100を図示する。図1A〜図1Dでのシーケンスは、ユーザがさらに検索クエリを入力し続けるにつれて、推測検索結果が関連性のある検索結果に更新されることを示す。新しい推測検索をいつ開始すべきかを決定するための技術が本明細書に記載される。
図1Aでは、ユーザは検索クエリ101a“sun”を検索ボックス102に入力している。ユーザはまだ、検索クエリが完成したという指示を入力していない。従って、テキスト「sun」は未送信検索クエリである。例えば、ユーザはまだ、「ウェブ検索」ボタン104をクリックするか、キャリッジリターンを入力して自動的な検索をトリガしていない。しかし、未送信検索クエリ101aは検索エンジンに転送されて、検索エンジンは未送信検索クエリ101aに基づいて推測検索結果106aを与える。この場合、推測検索結果106aはURLを与えるハイパーテキストリンクを有する。
推測検索結果106aはユーザにそれを与えるに値するのに十分な関連性を有すると判断されたものである。例えば、おびただしい数の関連性の低い結果をユーザが受け取ることは望ましくない。本発明の実施形態は、どの推測検索結果がユーザに返すに値するのに十分な関連性を有するかを判断するための種々の技術を提供する。検索クエリ101aを完成する前に、ユーザは任意の推測検索結果106aのハイパーテキストリンク106aをクリックし得る。
ユーザがさらに検索クエリを入力するにつれて推測検索結果106aは更新され得る。図1Bは、ユーザが今“sunn”という未送信検索クエリ101bを入力した状態のグラフィカルユーザインターフェース100を図示する。推測検索結果106bが未送信検索クエリ101b“sunn”に対して与えられている。このように、更新された検索クエリ101bに基づいて、推測検索結果106bは更新されている。この場合、推測検索結果106bは未提出検索クエリ101a“sunn”に関連したストックに関する情報の系統付けられた集合を含む。
推測検索結果は必ずしも、ユーザが新しい文字を検索クエリ101に入力する度に更新されるとは限らない。今度は図1Cを参照すると、未提出検索クエリ101cは、今は“sunnyvale”である。テキスト“Sunnyvale”に基づいて、Sunnyvale,Calif.という都市に関連する新しい推測検索結果106cが与えられる。なお、“sunnyv”などの検索クエリに対しては、必ずしも推測検索結果に更新があるとは限らない。このように、推測検索結果を用語“sunnyv”に対して与えることは可能であろうが、本発明の実施形態は、かかる推測検索結果はユーザに与えられるべきでないと決定する。この決定を行うための技術が本明細書に記載される。
図1Dを参照すると、検索クエリ101dは今や“sunnyvale weather”であり、Sunnyvale,Calif.の天候に関連する新しい推測検索結果106dが与えられている。この場合、推測検索結果106dは天候サイトへのリンク112ならびにSunnyvale,Calif.に対する天候の概要を提供するアブストラクト114を含む。
(推測検索結果の提供)
図2は、本発明の実施形態に従う、検索クエリに推測検索結果を与えるためのプロセス200を示すフロー図である。ブロック202では、未送信検索クエリが受信される。例えば、クライアントノード上で実行するアプリケーションは、ユーザにより入力された未送信検索クエリを受信する。未送信検索クエリは検索エンジンに転送され得るが、未送信検索クエリを検索エンジンに転送することはプロセス200においてより後の方で行われ得る。
この説明を通して使用されるように、未送信検索クエリとは、検索要求が完成したという指示が、検索クエリを入力するためのユーザインターフェースにより受信されていない検索クエリを意味する。例えば、ワールドウェブなどの検索を形成する際に、ユーザは典型的にはキャリッジリターンを入力するか、または「検索ボタン」をクリックして検索要求を開始し、これにより検索クエリが完成したことを指示する。
ブロック204では、未送信検索クエリが推測検索開始基準を満たしているかについての判断がなされる。推測検索開始基準が満たされると、ブロック206において検索が開始される。未送信検索クエリが推測検索開始基準を満たすのに十分に形成されていない場合は、プロセス200はブロック202に戻り、未送信検索クエリのさらなる入力を受信する。
ブロック206では、検索は未送信検索クエリ上で行われる。検索は任意の便利な技術で行われ得、いくつかのステージを含み得る。検索を行うための実施形態が図3に述べられるが、本発明はこの技術に限定されない。検索は任意のデータベースであり得る。例えば、検索は必ずしもワールドワイドウェブの実質的部分に基づいたインデックスを有するデータベースであるとは限らない。1つの実施形態では、検索の少なくとも一部は検索クエリを行っているユーザに関連した情報に関するデータベースである。例えば、ユーザアドレス帳、カレンダなどが検索され得る。
ブロック208では、推測検索結果がユーザに与えられる。例示的な推測検索結果106は図1A〜図1D、図4および図5に描かれる。推測検索結果はユーザが検索クエリを入力している同一のウェブページ上に表示され得る。推測検索結果は、ウェブページへのリンク、ウェブページそのもの、グラフィック(例えば、対話式マップ)およびテキスト記述を含むが、但しこれらに限定されない、多くの種々の形態を取ることが可能である。従って、ユーザは推測検索結果を見ることができ、検索クエリが完成したことを指示する前に、推測検索結果の関連性を決定することができる。典型的な状況では、情報がユーザに殺到しないように、限定された1セットの結果がユーザに表示される。検索エンジンはウェブページ全体または更新された情報のみをクライアントノードに転送して、クライアントノードがクライアントノード上に現在記憶されているウェブページに統合し得る。1つの実施形態では、クライアントノードはAJAXエンジンを有し、クライアントと検索エンジンとの間のデータ伝送を容易にすると共に、更新されたウェブページを解釈して表示する(rendering)のを助ける。
ブロック210においてユーザが推測検索結果を選択すると、ブロック212において推測検索結果に関連するコンテンツが与えられる。例えば、ユーザが図1A〜図1Dで描かれた推測検索結果においてリンクの1つを選択すると、選択されたリンクに関連するウェブページがユーザに与えられ得る。
ユーザが検索クエリを完成したという指示を与えると、ユーザは従来の検索において返され得る検索結果が与えられる。従って、ブロック214において検索クエリが完成したという指示が受信されると、ブロック216において完成検索結果がユーザに与えられる。例えば、ユーザが検索ボタン(図1A、104)をクリックするかキャリッジリターンを入力すると、クライアントノードは検索エンジンに完成検索クエリと検索クエリが完成したという明示または黙示の指示を転送する。完成検索クエリに応答して、検索エンジンはURLに関連付けられたコンテンツの簡単な説明を添えたURLを含み得るリストなど、完成検索結果を与える。この完成検索結果は、検索クエリウェブページとは別のウェブページ上に与えられ得る。
プロセス200は、ユーザが、検索クエリが完成したことを指示しなければ、ブロック202に戻り、未送信検索クエリへのさらなる入力が受信される。プロセス200は継続し、ユーザがさらなる情報に対する推測検索結果の1つを選択するか、または検索クエリが完成したことを指示すると終了し得る。
(推測検索の実施)
推測検索を開始すると判断された後で、かつユーザが明示的に検索要求を開始する前に、予め定義された検索ルールが適用されてユーザに1つまたは2,3個の高度に関連性のある検索結果を与え、これらはまだ検索クエリを形成しているのと同一のウェブページ上に表示され得る。図3は、本発明の実施形態による関連性のある推測検索結果を決定してユーザに与える、プロセス300を図示するフロー図である。このプロセス300は、関連性のありそうな結果をユーザに与え、より関連性がないと予想される検索結果をフィルタにかけて除去することによりノイズを低減する。ブロック302では、未送信検索クエリがアクセスされる。例えば、検索エンジンが未送信検索クエリにアクセスする。
ブロック304では、検索クエリが、その検索クエリに関連する情報の系統付けられた集合を含み得る予め定義された検索結果のトリガとなるかどうかの判断が行われる。例えば、多くの検索の分析に基づいて、検索クエリに関連する種々のリンクを含む1セットの予め定義された検索結果が形成される。一例としては図1Bに描かれるストックに対する推測検索結果は予め定義された検索結果を生じる検索クエリの一例である。予め定義された検索結果の他の例は図5に描かれるが、「1ドルを円に換算」という検索クエリに応答してドルを円に換算する検索結果が与えられている。
ブロック304において検索クエリが予め定義された検索結果と一致(またはほとんど一致)したら、ブロック306において予め定義された検索結果が与えられる。例えば、ウェブサーバは予め定められた検索結果をクライアントノードに転送し、クライアントノード上で実行するアプリケーションは、検索クエリが形成されているのと同じウェブページ上にその結果を表示可能である。
ブロック308では、未送信検索クエリが分析されて、URLなどのナビゲーションリンクを得るための検索クエリであり得るかどうかを決定する。例えば、ユーザがURLに確信がない場合、多くのユーザはURLを得るための検索クエリを採用する。未送信検索クエリを分析することにより、検索クエリがURLを見つける試みのように見えるかどうかを決定することが可能である。場合によって、ユーザはURLに論理的に関連すると予想されるであろう検索クエリをタイプし得るが、実際のURLは予想したものと異なることもある。ユーザに関連性の高いウェブサイドへのURLが与えられるように、内蔵された知能(intelligence)によりかかる状況を補正することができる。
ブロック308において検索クエリはナビゲーションリンク用であり得るという判断がされた場合は、ナビゲーションリンクはブロック310でユーザに与えられる。例えば、検索エンジンはウェブリンクをクライアントノードに転送し、クライアントノード上で実行するアプリケーションは検索クエリと同一のウェブページ上にナビゲーションリンクを表示する。
未送信検索クエリが予め定義された検索結果かナビゲーションリンクの何れについてもトリガとならない場合は、ブロック312においてユーザにフォールバック検索結果を与えるべきかどうかについての判断がなされる。潜在的フォールバック結果の関連性はそれをユーザに与える前に査定されるので、ユーザはおびただしい数の関連性の低い結果を受け取ることはない。本明細書の1つの実施形態では、辞書を使用して、フォールバック検索を行う前に検索クエリにフィルタをかける。従って、辞書内の用語またはフレーズに検索クエリが一致しない、またはほとんど一致しない場合は、プロセス200はブロック314に進み、フォールバック検索は行われない。1つの実施形態では、辞書内のフレーズは検索の統計的分析から学習される。
ブロック312のテストが、フォールバック検索を行うべきであると判断すると、ブロック316でユーザに提供するための1つ以上のフォールバック検索結果が選択される。フォールバック検索結果はウェブページのタイトル、ページの1つ以上のアブストラクト、ページのURLを含み得る。フォールバック結果はウェブ検索または部分的ウェブ検索の単一結果(または限定数の結果)を与えることができる。また、検索の範囲を調節して、検索結果の予想関連性に影響を与えることが可能である。フォールバック検索結果については、以下、より詳細に説明する。
(フォールバック検索結果)
関連性が低いかもしれない一般的でない検索結果を与えるのではなく、フォールバック検索を1セットの一般的な検索結果に限定できる。例えば、上位50,000件の検索の結果が追跡され、未送信検索クエリが人気のある検索結果のうち1つのトリガとなる場合にのみフォールバック検索結果が与えられる。任意の便利な数の人気のある検索結果が使用され得る。従って、本発明の実施形態は、未送信検索クエリに基づいた検索が曖昧なウェブページをトリガするがゆえに関連性のない検索結果をユーザに与えるのを回避する。フォールバック検索結果は、検索エンジンを使用するすべての人から、現在の検索クエリを形成しているユーザのみに至る範囲の任意のセットのユーザ検索に基づくことができる。
ユーザ経験を簡素化するために、限られた数のフォールバック結果が検索クエリページ上に示される。例えば、1つの実施形態では単一結果のみがユーザに与えられ得る。典型的には検索者の結果に1つの関連性が認められる。1つの実施形態では、関連性の高い検索結果が与えられる。または、関連性の分析に基づいて数個の結果が与えられ得る。1つの実施形態では、検索結果はその関連性が閾値を終えた場合にのみ与えられる。上位の結果間の関連性の広がりが緊密である場合は複数の結果を与え得る。閾値は動的であり得る。その関連性についてユーザを案内するのに役立つように、結果に関してアブストラクトが示され得る。
関連性は多様な技術により決定され得る。例えば、ページの関連性スコアは検索クエリからのいくつの言葉がそのページに含まれ、および/またはどのくらい頻繁にそれらの言葉がそのページから発生するかに基づき得る。ページの関連性スコアはまた、引用索引、ページソースの信頼性などのようないくつかの「ページ品質評価指標」も考慮し得る。ページの関連性はまた、クエリを提出したユーザに関して定義され得る。例えば、関連性はクエリを送信するのに使用された言語(例えば、英語またはフランス語)に基づき得る。別の例では、関連性はユーザの特性(例えば、ユーザの地理的地域、性別、または社会的グループ)に基づき得る。従って、英国にいるユーザにより提出されたクエリから生じるページの関連性スコアは、米国にいるユーザにより提出された同じクエリから生じるページの関連性スコアとは異なって決定され得る。
(検索クエリを改善する連想)
検索クエリの品質を改善するために、本発明の実施形態は、ユーザが、検索クエリが完成したことを指示する前に、形成されている検索クエリに対する代替のスペリングを連想する。例えば、ユーザはスペリング誤りの可能性があると判断される予備検索クエリを入力するかもしれない。ユーザには本発明の実施形態による代替スペリング連想が促される。また、スペリング連想は、検索クエリが完成したことをユーザが指示する前に与えられる。ユーザはスペリング連想に関連付けられた、与えられたリンクをクリックして、検索ボックス内のスペリングを自動的に修正し得る。さらには、連想されたスペリングに関連付けられたリンクをユーザがクリックすることに応答して、ナビゲーションリンクが推測検索結果として与えられ得る。
別の実施形態では、ユーザは未送信検索クエリの分析に基づいて、別の検索クエリを試みるように促される。連想された代替検索クエリは、ユーザがまだ検索クエリを入力している間に未送信検索クエリに応答して与えられる。
1つの実施形態では、ユーザの検索要求の履歴が追跡されて、関連性のある検索結果を決定するのに使用される。例えば、ユーザが頻繁に一定の天気予報にアクセスする場合、ユーザが検索クエリの最初の文字をタイプすると自動的にリンクが与えられ得る。
ユーザ経験を高める推測の1つのタイプは、未送信検索クエリが何になるかを推測して、推測された完成検索クエリに基づいて積極的に検索することである。例えば、データベースが部分的に形成された検索クエリで索引を付けられて、完成検索クエリが何であり得るかについて推測することができる。または、アドレス帳もしくは電話帳などのユーザ固有の情報が部分的に形成された検索クエリで検索されて、完成検索クエリが何であり得るかについて推測することができる。例えば、未提出検索クエリとしてユーザによりフレーズ“john telep”が入力されると、ユーザの電話/アドレス帳が検索されて、Johnという名前の誰かの電話番号をみつけることができる。未提出検索クエリに応答して電話番号がユーザに与えられる。eメール、ノートパッド、お気に入り、履歴など、他のユーザデータベースも同様に検索可能であろう。
(例示的検索結果)
本発明の実施形態はキーワードに対する検索クエリを分析して、どのようなタイプの検索が行われるべきかを決定する。例えば、図4はユーザが“sf map”という検索501を入力して、ユーザが検索クエリ502においてタイピングしている間にSan Franciscoのマップ502が提供される例を図示する。また、他の役に立つリンク504が推測検索結果において与えられる。
(予測検索クエリ概要)
検索エンジンへのインターフェースを与えるための技術が提供される。検索エンジンへのインターフェースは、1)ユーザがそれまでインターフェースのクエリフィールドに入力した文字(単数または複数)に基づいて、ユーザが何を検索しているかを予測することにより、および2)ユーザが正式に意図するクエリを発行する必要なしにインターフェースを介してユーザに検索結果を提供することにより、ユーザを援助する。クエリフィールドに入力される文字毎に、それまで入力されたクエリの部分が、クエリのその部分に対応する1つ以上の予測クエリのセットを決定するクエリプレディクタに自動的に送られる。予測クエリのセットは以前に発行されたクエリの頻度のみに基づいて、または以前のクエリがいつ発行されたかにも基づいて決定される。最も可能性のある予測クエリが検索エンジンにより処理されて検索結果を得る。予測クエリと検索結果は共に対話式ユーザインターフェースを介してユーザに与えられる。予測クエリは、ユーザに対して表示される場合、その人気のみに基づくか(頻度ベース)、またその時間的関連性(時間ベース)にも基づいて順序付けられ得る。
ユーザが最も可能性のある予測クエリに基づいた検索結果に興味がない場合は、ユーザは予測クエリのセットにおいて任意のクエリを選択し得る。ユーザがリスト内で異なる予測クエリを選択すると、検索結果はその後更新されて、異なる予測クエリに関する検索結果を表示する。
ユーザインターフェースを介した予測クエリおよび検索結果のユーザに対する表示に加えて、最も可能性のある予測クエリに関連するが、必ずしも検索結果により得られるとは限らない、広告やウェブサイトへの他の関連リンクといった他の動的データが与えられてもよい。
(予測検索機能概要)
図6は、本発明の1つの実施形態によるユーザインターフェース表示、予測クエリおよび検索結果を図示する。ユーザはウェブブラウザ600を介して、ユーザの意図するクエリを構成することになる文字をクエリフィールド602に入力する。第1の文字が入力するとすぐに、下記で説明するように(また、図8A〜図8C参照)、後続の入力文字毎に意図されるクエリのその部分がクエリプレディクタに送信される。その部分クエリに基づいて、クエリプレディクタは1つ以上の予測クエリのセットを決定する。予測クエリはユーザに送り返され、例えばドロップボックス604に表示される。ウェブブラウザ600はまた、選択された予測クエリ608(以後、「特定予測クエリ」と称する)も表示する。
検索エンジンは1セットの予測クエリからの特定予測クエリ608を処理して、検索結果612をユーザに送信して、例えば結果ページ610に表示する。従って、実際に意図するクエリが決定されて、意図するクエリの結果が表示されるまでにユーザは1つまたは2、3個の文字を入力するだけよいということが可能である。それゆえに、意図したクエリが発行されるのに、検索ボタン606が選択される必要はないかもしれない。
クエリプレディクタ
本発明の1つの実施形態では、ユーザによりそれまで入力されたクエリの部分は、ユーザのウェブブラウザからネットワークでクエリプレディクタに送信される。これはユーザにより入力される文字毎、または文字のシーケンス毎に行われ得る。クエリプレディクタは、1つ以上の文字を調べて意図するクエリが何かについて1つ以上の予測をする。1つ以上の予測は1つ以上の完成したクエリの形態であるが、それぞれは以前に発行されたクエリである。これらの1つ以上の予測はユーザのコンピュータに送信され、表示されて、ユーザがクエリフィールドに意図するクエリ全体を完全にタイプする前にクエリを決定することを効果的に援助する。
クエリプレディクタの基本前提は、少なくとも他の1人の個人が以前に発行しているクエリをユーザが発行しようする可能性が高いということである。その情報を使用することにより、高度な対話式検索エンジンは、クエリの決定においてユーザを援助するか、またはおそらくユーザが興味を持つであろうクエリに生じ得る他の変形をリストにすることにより、クエリを改良する際のユーザの手助けとなり得る。クエリが1人のユーザにとって価値がある場合は別のユーザにも潜在的価値があるので、以前に発行されたクエリはすべて保存され、ログされる。
1つの実施形態では、クエリプレディクタは他の言語に延長し、英語だけに限定されない。クエリプレディクタはまた、ユーザがその小さい部品だけが分かっている製品名および部品数など、他のタイプのストリングもサポートし得る。
(「スマート」語彙完成)
従って、クエリプレディクタは、一旦1つ以上の文字をユーザから受信するとクエリプレディクタがアクセスし得るクエリの検索可能データベースを有する。部分クエリに基づいて、クエリプレディクタは語彙的に一致するクエリのデータベースから1つ以上の完成したクエリを決定する。但し、部分クエリを語彙的に単に完成し、部分クエリ内の文字(単数または複数)から始まるようなクエリのみを返す代わりに、予測クエリのどこかにその語彙的完成を含む他のクエリも見つけられる。例えば、ユーザがストリング“th”を入力すると、“theory of evolution”がユーザに送信される予測クエリであり得るだけでなく、“th”の単なる語彙完成ではない、“string theory”または“music theory”も予測クエリであり得る。
(頻度および時間)
場合によっては、以前発行された多くのクエリが“th”で始まり得る。最も有用なクエリは、最もしばしば発行されている(人気)だけでなく、最も新しく発行されている(時間的関連性)ものである可能性があると判断されている。それゆえに、本発明の1つの実施形態では、クエリプレディクタは、その頻度(すなわち、クエリが全クエリデータベース履歴において発行された回数)およびそれらが特定時間、例えばこの1週間のうちにどのくらい頻繁に発行されたかに基づいて、結果的に得られる予測クエリのセットにバイアスを与える。最も新しく発行されたクエリにバイアスをかけるという事実は、ユーザは他の多くの人々が概ね同じ時間に興味を持つ主題により興味を持ちそうであるという前提に基づいている。
一例として、“renewable energy sources”(エネルギー源の一新)はクエリとして“nuclear energy”(原子力エネルギー)よりも5倍頻繁に発行されたかもしれないが、100個の原子炉が建設されるというアメリカ連邦議会による仮説的な最近の発表ゆえに、先週は“nuclear energy”がずっと頻繁に発行されたかもしれないので、部分クエリ“ener”はクエリプレディクタに、特定予測クエリとして“nuclear energy”を生成させる。
1つの実施形態では、1つは相対的に新しいクエリに対するものと、もう1つは相対的に古いクエリに対するものとからなる少なくとも2つのデータベースを検索して、その後、新しいデータベースを検索した結果を調整して、それに応じてそれらに重み付けを行うことにより時間要素が決定される。図7は、本実施形態が実施され得るステップを図示する。本発明はこの特定例に限定されないので、「古い」クエリデータベースおよび「新しい」クエリデータベースの数に加えて、この調整および重み付けが行われ得る多くの方法があることは明白となるであろう。本実施形態において、クエリプレディクタは先週発行されたすべてのクエリからなる小さいデータベースと、一週間前より以前に発行されたすべてのクエリからなる大きいデータベースとにアクセスする。潜在的に価値のある予測クエリを求めて小さいデータベースを検索する場合、潜在的クエリが小さいデータベースで見つけられる回数はあるファクタに基づいて調整される。このファクタは、適度に人気のあるクエリが小さいデータベースで見つけられる回数に対する同じ適度に人気のあるクエリが大きなデータベースで見つけられる回数の比率である。例えば、“(公序良俗違反につき、不掲載)”は先週および過去数年を通して適度に人気のあるクエリであるとする。“(公序良俗違反につき、不掲載)”が大きいデータベースで1,700,000回見つけられ、小さいデータベースで25,000回見つけられたとすると、ファクタは1,700,000/25,000すなわち68であろう。
小さいデータベースと大きいデータベースとの両者における適度に人気のあるクエリが調整に使用されなかったら、クエリ予測は効果が少ないであろう。クエリが大きいデータベースでのみ人気があり、小さいデータベースでは人気がなかったとすると、調整ファクタは歪められるであろう。例えば、クエリ“floppy disk”が調整ファクタとして使用されて、大きいデータベースの履歴において何度もクエリされているが、これ以上誰もフロッピディスクを生産しないか使用しないという単純な理由でその前の週では数回しかクエリされていないとすると、大きいデータベースと小さいデータベースとの間の比率は膨大になろう。これは相対的により古く、潜在的により価値のあるクエリの不利益に対して相対的に最近のクエリを重く重み付けしすぎることにより部分的クエリの結果を歪めていることになろう。
この1週間においてだけ発行されたが、大きいデータベースの履歴ではまれにしか発行されていない新しいクエリが調整ファクタとして使用されると、同様の問題が存在するであろう。例えば、“nuclear energy”は過去においてあまり頻繁に発行さていないクエリであるかもしれない。しかし、100個の原子炉が建設されるというアメリカ連邦議会による仮説的な最近の発表ゆえに、数十万回ではないがクエリ“nuclear energy”が数千回発行されそうである。その場合、調整ファクタはかなり小さくて、小さいデータベースにおけるクエリが大きなデータベースにおけるクエリに対して重み付けされると、相対的により新しく潜在的により価値がある予測クエリよりも、相対的により古い予測クエリが最もユーザに返されるであろう。
それゆえに、図7を参照すると、クエリプレディクタはステップ702において、所定の潜在的に価値のあるクエリが小さい(すなわち最近の)データベースにおいて発行された回数を決定した後、ステップ704において調整クエリとしての“(公序良俗違反につき、不掲載)”に関する上記で決定した調整ファクタに基づいて、その回数を68に調整する。その結果生じた調整値は本質的に、小さいデータベースにおける潜在的クエリが大きい(すなわち、古い)データベースにおける潜在的クエリと重みにおいて等しいことを示す。ついで、クエリプレディクタはステップ706において、「より古い」クエリの大きなデータベースにおいて潜在的クエリが現われる回数を決定する。
この時点で、大きいデータベースにおける潜在的クエリに対して小さいデータベースにおける潜在的クエリに重みが加えられる。これは調整された小さいデータベース数の結果に2/3をかけて、潜在的クエリが大きいデータベースで見つかった数に1/3を掛けた結果にそれを加えることにより行われる(ステップ708〜ステップ712を参照)。ステップ702〜ステップ712は、クエリプレディクタにより決定された潜在的クエリ毎に行われる。処理すべき潜在的クエリがこれ以上ない場合(714)、ステップ712において潜在的クエリ毎に決定された各値に基づいて、すべての潜在的クエリは互いに比較される(ステップ716)。最も高い値を有する2つ以上のクエリ(例えば、10)は予測クエリとなり、その後ユーザに送信される。
(検索エンジン)
本発明の1つの実施形態では、検索エンジン構成要素はユーザが興味を持つであろう特定予測クエリ(すなわち最も意図されそうな予測クエリ)を処理する。特定予測クエリが処理されて検索結果を得る。この目的に使用され得る検索エンジンは当該技術において一般的であり、さらなる説明は必要としない。
検索エンジンにより得られた検索結果はユーザのコンピュータに送信され、表示される。特定予測クエリがユーザの意図するクエリである場合は、特定予測クエリに基づいた検索結果が、ユーザがクエリフィールドに別の文字を入力する前であっても、および意図するクエリを完全に入力し終わるまさに直前であっても、ユーザのモニタに現れ得る。特定予測クエリがユーザの意図する検索でない場合、ユーザはリスト中の異なる予測クエリを選択するか、あるいは文字のタイプを続けることができ、このときに、選択された、または新たな特定予測クエリに基づく新たな検索結果のセットが、ユーザインターフェースを介して表示されることになる。
(予測クエリおよび検索結果の提供)
図8Aは、本発明の1つの実施形態により、部分クエリが処理される1つの方法および部分クエリの結果がどのように返されるかを図示するブロック図である。
クライアント800におけるユーザはウェブブラウザ802に部分クエリを入力する。部分クエリ812はネットワーク805でフロントエンドサーバ804に送信される。フロントエンドサーバ804は本発明の任意の実施形態において必要な要素ではない。その主たる目的は、対話式検索エンジンシステムにセキュリティを付加することである。ネットワーク850もまた、任意の実施形態において必須の要素ではなく、本発明が実施され得る1つのアプローチを示すのに図示されるだけである。ネットワーク850はローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)またはインターネットであり得る。フロントエンドサーバ804は部分クエリ812を、上述のクエリプレディクタ806に転送して、クエリプレディクタ806はその部分クエリを処理する。
フロントエンドサーバ804、クエリプレディクタ806および検索エンジン808または任意のこれらの組み合わせは同一装置上で実行され得る。但し、図示および簡素化の目的で、それらはそれぞれ異なる装置に存在する。
クエリプレディクタ806は部分クエリに基づいて、1つ以上の予測クエリのセットを決定して、それら814をフロントエンドサーバ804に送り返す。予測クエリのセットと共に、クエリプレディクタ306はそのセット内の予測クエリのいずれが特定予測クエリであるかを指示するさらなるデータを送信する。クエリプレディクタ806は、どの予測クエリが特定予測クエリかを決定するか、またはウェブブラウザ802にその決定を行うのに十分な情報を与えるかのいずれかが行われる。フロントエンドサーバ804はその後、予測クエリ814および特定予測クエリを示すデータをネットワーク850でクライアント800に転送して、ウェブブラウザ802上に表示する。
予測クエリのセットを受信すると、ウェブブラウザ802はネットワーク850でフロントエンドサーバ804に特定予測クエリ816を送信して、フロントエンドサーバ804は特定予測クエリ816を検索エンジン808に転送する。上述の検索エンジン808は特定予測クエリを処理して検索結果を得る。検索結果818は最後にフロントエンドサーバ804に送信され、フロントエンドサーバ804はそれら818をネットワーク850でクライアント800に転送する。
この実行の1つの利点は、予測クエリはそれらが決定されるとすぐにユーザに送信されるということである。しかし、この実行はまた、ユーザが自分のウェブブラウザのクエリフィールドにタイプする文字ごとにクライアント800とフロントエンドサーバ804との間で通信が行わなければならないという2回の全往復がある可能性も示す。
図8Bは、本発明の別の実施形態による、部分クエリが処理される異なる方法および、その結果がどのようにユーザに返されるかを図示するブロック図である。
ユーザクライアント800はウェブブラウザ802に部分クエリを入力する。部分クエリ812はネットワーク850でフロントエンドサーバ804に送信される。フロントエンドサーバ804は部分クエリ812をクエリプレディクタ806に転送し、クエリプレディクタ806は部分クエリを処理する。
クエリプレディクタ806は、部分クエリに基づいて1つ以上の予測クエリのセットを決定し、それら814をフロントエンドサーバ804に送信する。予測クエリをクライアント800に即座に転送する代わりに、フロントエンドサーバ804は予測クエリを保持して、検索エンジン808に特定予測クエリ816を送信する。再び、予測クエリのセットとともに、クエリプレディクタ806は、そのセット内の予測クエリのうちのいずれが特定予測クエリであるかを示すさらなるデータを送信する。クエリプレディクタ806が、どの予測クエリが特定予測クエリであるかを決定するか、フロントエンドサーバ804がその決定をするのに十分な情報を与えるかのいずれかが行われる。
エンジン808は、特定予測クエリを処理して検索結果を得る。検索結果818はフロントエンドサーバ804に送信され、このときフロントエンドサーバ804は予測クエリ814と検索結果818との両方をネットワーク850でクライアント800に転送する。
フロントエンドサーバ804がない場合、クエリプレディクタ806は予測クエリ814を検索エンジン808に送信して、検索エンジン808はその後予測クエリ814および検索結果818をネットワーク850でクライアント800に送信する。
この実施の1つの利点は、クライアント800とフロントエンドサーバ804との間の通信(すなわち、トラフィック)がより少ないということである。しかし、予測クエリは、予測クエリがクライアント800に転送される前に検索結果が生成されてフロントエンドサーバ804に送信されるまで待たなければならないので、前述の実施形態ほど迅速にユーザのウェブブラウザ802に表示し得ない。
図8Cは、本発明の別の実施形態による、部分クエリが処理される異なる方法および、その結果がどのようにユーザに返されるかを図示するブロック図である。
クライアント800のユーザはウェブブラウザ802に部分クエリを入力する。部分クエリ812はネットワーク850でフロントエンドサーバ804に送信される。フロントエンドサーバ804は部分クエリ812をクエリプレディクタ806に転送し、クエリプレディクタ806は部分クエリを処理する。
クエリプレディクタ806は、部分クエリに基づいて1つ以上の予測クエリのセットを決定し、それら814をフロントエンドサーバ804に送信する。再び、予測クエリのセットとともに、クエリプレディクタ806は、そのセット内の予測クエリのうちのいずれが特定予測クエリであるかを示すさらなるデータを送信する。クエリプレディクタ806はどの予測クエリが特定予測クエリであるかを決定するか、フロントエンドサーバ804にその決定をするのに十分な情報を与えられるかのいずれかが行われる。
先の実施形態のように予測クエリを「保持(hold on)する代わりに、フロントエンドサーバ804は予測クエリ814をネットワーク850でクライアント800に送信し、実質的に同時に特定予測クエリ816を検索エンジン808に送信する。また、クエリプレディクタ806が特定予測クエリを検索エンジン808に直接送信することも可能である。
エンジン808は特定予測クエリを処理して検索結果を得る。検索結果818はフロントエンドサーバ804に送信され、このときフロントエンドサーバ804は検索結果818をネットワーク850でクライアント800に転送する。フロントエンドサーバ804がない場合、クエリプレディクタ806は予測クエリ814と特定予測クエリ816との両方を検索エンジン808に送信して、その後、検索エンジン808は予測クエリ814および検索結果818をネットワーク850でクライアント800に送信する。
フロントエンドサーバ804がない場合、クエリプレディクタ806は予測クエリ814と特定予測クエリ816との両方を検索エンジン808に送信して、その後、検索エンジン808は予測クエリ814および検索結果818をネットワーク850でクライアント800に送信する。
図8Aで説明される実施形態と比較したこの実施の利点は、クライアント800とフロントエンドサーバ804との間のトラフィックがより少ないということである。図8Bで説明される実施形態と比較した利点は、予測クエリはクライアント800に転送される前に、検索結果が生成されてフロントエンドサーバ804に送信されるのを「待つ」必要がないことである。従って、予測クエリはその生成後すぐに送信され、クライアント800とフロントエンドサーバ804の間の通信はより少なくて済む。
(ユーザインターフェース)
本発明の1つの実施形態では、図6に図示されるように、ユーザインターフェースは少なくとも1)部分クエリを構成する文字をユーザが入力するクエリフィールド602と、2)1つ以上の予測クエリのセットを一覧表示するドロップダウンボックス604と、3)検索結果ページ610と、4)「検索」ボタン606とを含む。検索ボタンは、ユーザが双方向検索エンジンにより与えられた予測クエリのいずれにも満足しない場合に、ユーザが、自分が入力するクエリを選択することを可能とする任意のメカニズムの形態であり得る。ドロップダウンボックス604に一覧表示された予測クエリのセットは、テキストボックス、リストボックス、メニュまたはコンテキストメニュを含むが、これらに限定されない他のほぼ任意のタイプのユーザインターフェース要素で表され得る。ユーザインターフェースは、INTERNET EXPLOREまたはMOZILLA FIREFOXなどのウェブブラウザを使用して見得る。
1つの実施形態では、最も可能性のありそうな予測クエリから最も可能性の少ない予測クエリの順番で、一番上から予測クエリのセットが一覧表示される。
(変形例)
上述のユーザインターフェース、クエリプレディクタおよび検索エンジンに加えて、双方向検索エンジンを多くの方法で変更して、検索経験の様相、感覚、応答性を変化させ得る。
(タブ)
例えば、ユーザインターフェースは図6のボタンやリンク622のようなタブを含み、ユーザは可能なクエリのサブセクションを選択し、そのサブセクションに基づいて検索し得る。タブの集合、すなわち、「ウェブ」「画像」「動画」および「買い物」などの「バーティカル検索」で、ユーザは異なるクエリセットを選択し得る。クエリプレディクタが予想しているデータは何にユーザが興味を持っているかに基づいて異なり、そのデータはこれらのタブを使用することにより狭められる。例えば、ユーザが製品の買い物に興味がある場合は、ユーザは「買い物」タブを選択する。その後、ユーザは製品名またはサービスをクエリフィールド602に入力し始める。クエリプレディクタには部分クエリだけでなく、ユーザが特定製品またはサービスを検索していることを示す買い物選択情報も送信され、クエリプレディクタはその製品およびサービスに関するような予測クエリのみを返す。
(キーワード)
クエリが発行される場合、クエリにおける言葉の順番は重要でないこともしばしばある。先に触れたように、発行されたクエリは英語である必要はない。他の実施形態では、他の自然言語が支持されるだけでなく、ユーザが非自然ストリングの一部しか知らない製品名および部品番号などの非自然ストリングも支持される。それゆえに、本明細書で使用される用語「言葉」は、英語の言葉、韓国語の言葉、または製品番号を含み得る。
ユーザがクエリフィールドに2つ以上の言葉を入力する場合、ユーザは必ずしも、検索エンジンが入力された順番で2つ以上の言葉を含むウェブアクセス可能文書へのリンクを返すことを気にしているとは限らない。むしろ、ユーザはそれらがどのような順番で見つけられるかに関わらず、単にこれらの言葉を含むウェブアクセス可能文書に興味がある。
例えば、ユーザはクエリフィールドに“solar wind water power”と入力する。ユーザは特に順番にこだわらない。ユーザはむしろ、クエリのどこかに“solar”、“wind”、“water”および“power”を含むクエリに興味がある。クエリプレディクタは何の言葉がクエリにおいて重要であるか、またどの言葉が重要でないかを決定して、その後、単に一致するサブストリングに基づいてクエリを予測する代わりに重要な言葉に基づいてクエリを予測する。
(遅延結果)
別の実施形態では、予測クエリおよび/または検索結果を表示するステップが遅延する。予測クエリを即座に返す代わりに、クエリプレディクタは、予測クエリ及び検索結果が表示される前に、一定の基準(特定時間量の経過、または数個の文字が入力されたとき、またはその両方など)が満たされるまで「待機」する。待機というこのさらなるステップは、ユーザが何についてクエリしたいのかを確信していないかもしれないということを想定している。このように、待機基準に基づいて対話式ユーザインターフェースが、これはユーザが本当にクエリするつもりのものであるということを決定するまで、予測クエリは遅延する。一旦待機基準が満たされると、部分クエリは上述のようにクエリプレディクタおよび検索エンジンにより処理される。
(他の動的データ)
意図されるクエリを予測して適切な検索結果を返す以外にユーザを手助けするさらなる方法がある。別の実施形態では、クエリプレディクタから返される特定予測クエリに基づいて、対話式ユーザインターフェース上に現われる広告が変化する。このように、特定予測クエリが変化するたびに、クエリに関連する新しい広告がユーザインターフェースに掲載されて、より古いおよび関連性のないクエリに関する広告はユーザインターフェースから削除される。例えば、ユーザが“elli”と入力し、クエリプレディクタは“elliptical”(楕円の)を特定予測クエリとして決定すると、運動機器に関連する広告がユーザインターフェースに現われることになる。
広告に加えて、クエリを送信する際に他の動的情報がユーザに有用であり得る。別の実施形態では、特定予測クエリに関連するが検索結果で見つけられない情報がユーザインターフェースを介してユーザに表示される。上記で使用した“theory”の例を発展させると、クエリプレディクタは “theory”がユーザにより入力された部分クエリ“th”に対する特定予測クエリであると決定する。クエリプレディクタまたはおそらく他のプログラムは、“theory”は“string theory”、“music theory”、“math theory”に関連付けられると決定し、これらの関連題材を返し、予測クエリの形態または異なる形態でユーザインターフェース上に表示する。“theory”のような短いクエリに関しては、このさらなる情報はクエリプレディクタが生成するであろうものとたまたま同一のセットであることもある。
しかしながら、ユーザがクエリフィールドに“interna”と入力し、クエリプレディクタが特定予定クエリを“international trade”と決定すると、クエリプレディクタは、予測クエリに加えて “internaional trade”(国際貿易)の語彙完成でなく、国際貿易のトピックに関連したクエリを返すであろう。このようなクエリはGATT、WTO、UN、US貿易政策などに関し得るであろう。クエリプレディクタとは別のプログラムもこの機能を行い得るであろう。
明らかに、本発明のこの態様はクエリ予測を行うことではなくむしろ、ユーザに動的で関連のある、希望的有用情報を提供することである。広告、さらなるクエリおよび他の関連情報を与える際の原則はユーザインターフェースを介して表示されるすべてのものをクエリプレディクタがユーザの意図であると「信じる」ものと一致させておくが、クエリプレディクタはそれを部分クエリから決定することである。
(予測検索クエリの代替:概要)
ユーザ検索クエリが完成されたときに何になるかを予め予測するための技術について述べてきた。このように予測される検索クエリは本明細書では、「予測検索クエリ」と称される。1つの実施形態によると、予測検索クエリを決定した後、検索エンジンは予測検索クエリの1つ以上の代替を決定してそれをユーザに提供し続ける。このような代替クエリを本明細書では、「代替検索クエリ」と称する。各代替検索クエリは少なくとも部分的に予測検索クエリに基づくが、予測検索クエリとは幾分異なる。
予測検索クエリとは異なり、代替検索クエリはユーザクエリが完成されるとどのようになるかの予測ではない。実際に、代替検索クエリは、部分的に形成されたユーザ検索クエリがそのように完成しそうもないこともしばしばである。例えば、ユーザが“brittany sp”という検索クエリを入力したことに応答して、予測検索クエリは“brittany spears”であり得るが、代替検索クエリは“britney spears”であり得る。本例では、ユーザがスペリングの前に戻って変更した場合にのみ“britney spears”が生成され得るので、“brittany sp”の完成されたバージョンは “britney spears”ではない可能性が高い。
本発明の実施形態によると、代替検索クエリは以下のように決定される。検索クエリがクライアントノードから受信される。検索クエリが完全に形成されたという指示をクライアントノードから受信する前に、以下のステップが行われる:1)検索クエリが完成されたときに何になるかを予め予測することにより予測検索クエリが決定される。2)予測検索クエリとは異なる代替検索クエリが、予測検索クエリに基づいて決定される。代替検索クエリはクライアントノードに与えられる。
代替検索クエリは、予測検索クエリの代替スペリング(またはスペリング連想)に基づいて行われ得る。代替検索クエリは予測検索クエリに緊密に関連した検索クエリであり得る。例えば、予測検索クエリが頭字語である場合は、代替は頭字語の展開であり得る。緊密に関連した検索クエリの別の例は“movie times”と“show times”である。
(実例のユーザインターフェース)
図9は、本発明の実施形態による、実例ユーザインターフェース900である。ユーザインターフェースは検索ボックス901を有し、そこにはユーザが“chicken r”(鶏肉r)というユーザ検索クエリ902を入力している。検索ボックス901の下には、ユーザがユーザ検索クエリ902を入力するにつれてリアルタイムにユーザに与えられる検索クエリのリストがある。検索クエリのリストは、ユーザ検索クエリ902のミラードバーション903を含む。ミラードバージョン903の下は、予測検索クエリ904および代替検索クエリ905を含む領域であり、その両者とも本発明の実施形態によるユーザ検索クエリ902に基づいて直接または間接的に決定される。1つの実施形態によると、予測検索クエリ904および代替検索クエリ905はユーザ検索クエリ902との予想される関連性に基づいてランク付けされる。より高くランク付けされた検索クエリはリストにおいてより高いところに提示され得る。
予測検索クエリ904“chicken recipes”,“chicken recipe”(鶏肉レシピ)および“chicken ranch”(養鶏場)がユーザ検索クエリ902が完成されたときのものの予測である。本発明の実施形態によると、代替検索クエリ905は予測検索クエリ904に基づいて決定される。一例として、検索クエリ“chicken and rice recipes”(鶏飯レシピ)は、予測検索クエリ“chicken recipes”(複数の鶏肉レシピ)の代替である。なお、代替検索クエリ905はユーザ検索クエリ902の末尾以外に文字を付加することにより形成される。他の代替検索クエリ905は、“chicken wing recipes”,“chicken wings recipe”(鶏肉手羽レシピ)、“chicken rice recipe”(鶏飯レシピ)、“easy chicken recipes”(簡単鶏肉レシピ)および“baked chicken recipes”(焼鳥レシピ)を含む。
ユーザインターフェース900は検索クエリの1つ以上を満足させる文書(例えば、ウェブページ)へのリンクを含む検索結果906を有する。本例では、検索結果906は予測検索クエリ904および代替検索クエリ905の最も高い関連性ランキングを有する予測検索クエリ“chicken recipes”(鶏肉レシピ)に関する。1つの実施形態では、これらの検索結果はユーザがその特定検索クエリに対する検索結果を要求することなく初期設定でユーザに与えられる。但し、検索結果は代替検索クエリ905の何れかを含む、検索クエリの何れかに対して与えることが可能である。なお、この実例のユーザインターフェース900には、ユーザが検索クエリを提出するボタンがない。1つの実施形態では、ユーザは検索クエリのリスト(ミラード検索クエリ903を含む)中をスクロールすることによりどの検索結果が表示されるかを変更することができる。
ユーザインターフェース900は、スポンサ提供領域910などの検索クエリに関連する結果を表示するための他の領域を有する。予測検索クエリ904または代替検索クエリ905のいずれかに関連する結果がスポンサ提供領域910に表示され得る。
(予測検索クエリの代替を決定するフロー)
図10は、本発明の実施形態による予測検索クエリの代替を決定するプロセス1000のステップを図示するフロー図である。プロセス1000は、図8Aのクライアント/サーバシステムおよび図9の実例のユーザインターフェースと関連して述べられるが、プロセス100はそのように限定されない。
ステップ1002では、検索クエリがクライアントノードから受信される。例えば、図9の実例のユーザインターフェース900は、クライアントノード800上で実行するウェブブラウザ802などの一部である。一例として、ユーザは検索クエリ“chicken r”を入力し、それがサーバ804に転送される。
ステップ1004では、完成されると検索クエリが何になるかを予測することにより1つ以上の予測検索クエリが決定される。ステップ1004は、検索クエリが完全に形成されたというクライアント800からの指示を受信する前に行われる。例えば、クエリプレディクタ806は、ユーザ検索クエリが完成されると、“chicken recipe”または“chicken recipes”となると決定する。
1つの実施形態では、予測検索クエリは、過去に提出された検索クエリのデータベース(「履歴データベース」)から検索クエリを選択することにより決定される。例えば、履歴データベースはまた、各検索クエリが提出された頻度を記憶して、予測検索クエリの選択はその頻度に基づいて行われる。本例では、ユーザが検索クエリ“chicken recipe”および“chicken recipes”を提出した頻度は十分高いのでユーザ検索クエリがそれらのうちの1つに完成するであろうことを予測できる。選択は検索クエリが過去に提出された頻度以外またはそれに付加する情報に基づき得る。
ステップ1006では、予測検索クエリの少なくとも1つに対して、予測検索クエリとは異なる少なくとも1つの代替検索クエリが決定される。ステップ1006は、クライアント800が検索クエリを完成したという指示を与える前に行われる。例えば、代替検索クエリ“chicken and rice recipes”は“chicken recipes”に基づいて決定される。他の実例代替検索クエリは“chiken wing recipes”、“chicken wings recipe”、“chicken rice recipe”、“easy chicken recipes”および“baked chicken recipes”である。
なお、本例では、代替はユーザ検索クエリの末尾に文字を付加することにより形成されていない。例えば、“wing”および“wings”などの言葉はユーザ検索クエリ“chicken r”の文字のストリングの真中に挿入される。なお、代替検索クエリ“easy chicken recipes”のようにユーザ検索クエリの前に文字が付加され得る。代替検索クエリがどのように決定されるかについてのさらなる詳細は以下に述べる。
ステップ1008において、代替検索クエリの少なくとも1つがクライアント800に与えられる。1つの実施形態では、潜在的代替検索クエリがユーザ検索クエリとの予測関連性に応じてランク付けされ、より高くランク付けされた代替がクライアント800に与えられる。代替検索クエリはその後、図9に示すようにユーザインターフェース900に表示される。なお、代替検索クエリは、クライアント800が検索クエリが完成したという指示を与える前に、クライアント800に与えられる。
オプションのステップ1010では、代替検索クエリの1つ以上を満足させる検索結果が決定され、クライアント800に与えられる。予測検索結果の1つ以上を満足させる結果などの他の検索結果はクライアント800に転送可能である。代替検索クエリの1つ以上を満足させる結果は、スポンサ提供領域910などのユーザインターフェース900の他の領域において検索結果906として表示され得る。
(予測検索クエリに基づいて生成される代替検索クエリの例)
代替検索クエリは多数の方法で決定可能である。以下の節では、代替検索クエリを決定するためのいくつかの方法について説明する。但し、予測検索クエリに対する代替検索結果の決定はこれらの例に限定されない。
(高度関連情報との関連付けに基づくもの)
検索クエリによっては、おそらく構造上全く異なってはいるが互いに関連しているものもある。ユーザがこれらの検索クエリの1つを入力すると、関連検索クエリの1つ以上がまた興味深いものであり得る。場合によっては、検索クエリは極めて同様の検索結果を生成し得る。一例は、検索クエリ“movie times”と“show times”である。別の例は、検索クエリ“CIA”と“central intelligence agnecy”である。関連検索クエリによっては必ずしも実質的に同様の結果を生成するとは限らない。例えば、検索クエリ“flowers”(花)と“wedding flowers”(結婚式の花)は関連しているが、検索結果は全く異なり得る。
A)頭字語
検索クエリが関連し得る1つの方法は、他方において書き出された言葉の頭字語を一方が含む場合である。図11Aは本発明の実施形態による、ユーザインターフェース900を描いている。検索ボックス901は“cia”というユーザ検索クエリ902を含む。検索クエリ902が完成したという指示をユーザが与える前に、検索クエリ902が完成されたときに何になるかについて1つ以上の予測がなされる。この場合、予測検索クエリ904は、“cia”、“ciara”“cialis”、“cia factbook”、“cia country factbook”、および“cia world factbook”を含む。なお、予測検査クエリ904“cia”はユーザ検索クエリ902と同一であり、従ってユーザ検索クエリ902のミラードバージョンとして機能する。
1つの実施形態では、ユーザ検索クエリが完成したときに何になるかの判断は履歴検索クエリの分析に基づく。例えば、1つの実施形態では、検索クエリ“cia”が十分に高い頻度で履歴データベースに現われる場合、完成検索クエリと予測される。同様のプロセスは他の予測検索クエリ904の決定に適用する。
前述のように、本発明の実施形態により代替検索クエリが決定され、クライアントに与えられる。例えば、1つの予測検索クエリ904は“cia”である。本例では、1つの代替検索クエリ905は“central intelligence agency”(中央情報局)である。この代替検索クエリは“CIA”が頭字語であることを認識して、頭字語を展開することに基づく。プロセスは逆も可能である。言い換えると、予測検索クエリが“central intelligence agency”であった場合、“cia”の代替検索クエリがクライアントに与えられ得るであろう。“cia”の予測検索クエリ904に対する他の代替検索クエリ905は、“culinary institute of america”(アメリカ調理協会)および“cairo international airport”(カイロ国際空港)である。
ユーザインターフェース900は、検索クエリの1つ以上を満足させる文書(例えば、ウェブページ)へのリンクを含む検索結果906を有する。本例では、検索結果906は検索クエリの1つ以上に関する。例えば、代替検索クエリ905“central intellignece agency”および“culinary institute of America”に関連性のある検索結果が与えられる。
B)別の試し(ALSO TRY)
代替検索クエリはまた、「別の試し」提案に基づくことも可能である。別の試し提案は互いに緊密に関連する検索クエリに基づく。別の試しクエリの例は、“show times”のユーザ検索クエリに関連した検索クエリ“movie times”を提案することである。本発明の実施形態により、緊密に関連した検索クエリの関連付けを有するデータベース(「試しデータベース」(also try database)を使用して、代替検索クエリを決定する。
図11Bは、ユーザ検索クエリ902が“sony we”であるインターフェースを描いている。ユーザ検索クエリ902が完成されたという指示をユーザが入力する前に、完成された検索クエリ904が“sony wega”となるという予測がなされる。他の予測検索クエリ904のなかには、“sony wega tv”、“sony wega 42 tv”などがある。予測検索クエリ904のうちの少なくとも1つに基づいて、多数の代替検索クエリ905がユーザに提案される。例えば、“sony fd trinitron wega ”および“sony plasma wega”の代替が代替検索クエリ905として与えられる。
なお、代替検索クエリはユーザ検索クエリの本文に挿入される1つ以上の文字を含まれ得る。例えば、“fd trinitron”はユーザ検索クエリ902“sony we”の本文に現われる。この代替は、試しデータベースを検索することにより決定可能であるが、他の技術も使用され得る。例えば、互いに関連付けられたまたは関連した検索クエリを含む任意のデータベースを検索可能である。
代替検索クエリはまた、ユーザ検索クエリの本文を導く文字を含み得る。例えば、ユーザ検索クエリ902が“flowers”である場合、予測される完成された検索クエリは“flowers”であり得るであろう。この予測された検索クエリに基づいて、“wedding flowers”、“pictures of flowers”などの代替が代替検索クエリとして与えられ得る。なお、これらの代替検索クエリのどれも、単に1つ以上の文字をユーザ検索クエリの末尾に付加することによりユーザ検索クエリを完成するだけで形成され得ないであろう。
図9を再び参照すると、ユーザ検索クエリ902は“chicken r”である。本発明の実施形態によると、代替検索クエリ905は“chicken recipe”または“chicken recipes”の予測検索クエリ904のうちの1つに関連する検索クエリに基づいて決定される。
このように、本発明の実施形態によると、単に文字をユーザ検索クエリの末尾に付加するだけで形成することが出来ない代替検索クエリが決定される。
(スペリング連想)
本発明の実施形態によると、スペリング連想を使用して予測検索クエリの代替を決定する。前述のように、ユーザが提出した検索クエリの履歴データベースが生成可能である。1つの実施形態では、履歴データベースを使用して、ユーザ検索クエリがどのように完成するかの予測を行う。ユーザがスペルミスした用語を含む検索クエリを送信すると、その検索クエリはまず履歴データベースに付加され得る。但し、1つの実施形態では、スペルミスを有する検索クエリは履歴データベースから除去される。スペルミスした検索クエリがデータベース内にある場合およびない場合をカバーする変形例が下記で述べられる。
1つの実施形態では、スペリングデータベースを使用して、潜在的にスペルミスしたユーザ検索クエリに対する代替検索クエリを決定する。スペリングデータベースへの入力は、用語の第1のスペリングとその用語の少なくとも1つの代替スペリングとからなる。スペリングデータベースはさらに、用語の第1のスペリングに対する用語の代替スペリングを選択するのに使用可能な頻度情報を含み得る。スペリングデータベースをどのように使用して代替検索クエリを決定し得るかの例を以下で説明する。
スペリング連想に基づいて予測検索クエリの代替検索クエリを提供することは、幾つかの異なる方法で行われ得る。以下は3つの異なる実施形態である。但し、スペリング連想に基づいて予測検索クエリに対する代替検索クエリを提供することは以下の実施形態に限定されない。
A)履歴データベースがユーザ検索クエリに対する入力を有している場合
図11Cでは、ユーザは“brittany sp”というユーザ検索クエリ902を入力している。この検索クエリ902は、このユーザ検索クエリ902が完成されたときにどのようになるかを予測するクエリプレディクタ(図8、806)に転送される。例えば、予測された検索クエリ904は“brittany spaers”である。1つの実施形態では、この予測は履歴検索クエリのデータベースの検索に基づく。この場合、履歴データベースは、スペルミスされた検索クエリ“brittany spears”を含む。予測検索クエリ904はクライアントに与えられる。
さらには、本実施形態では、予測検索クエリに対する代替スペリングである代替検索クエリ905が決定される。例えば、1つの実施形態では、予測検索クエリ“brittany spears”をキーとして使用してスペリングデータベースを検索することにより代替検索クエリ905が決定される。代替検索クエリ905“britney spears”がクライアントに与えられ、そのように図11Cのユーザインターフェースに表示される。
本例において、さらなる予測検索クエリ904もクライアントに与えられる。例えば、検索クエリ“brittany spaniel”がユーザに与えられる。さらには、連想された検索クエリの1つを満足させる検索結果906がユーザに与えられる。本例では、代替検索クエリ905“Britney Spears”に対する検索結果906が与えられる。代替検索クエリ905に関連したスポンサ提供結果910も与えられる。
B)履歴データベースはユーザ検索クエリに対する入力を有していないが、スペリング連想データベースはユーザ検索クエリに対する入力を有している場合
別の例では、ユーザが検索クエリ“ritney spears”を入力した場合、完成された検索クエリに対する予測は“ritney spears”であり得る。本例では、履歴データベースを検索して検索クエリ“ritney spears”が存在しないと判断することにより、予測が行われ得る。ユーザは過去においてこのスペルミスを送信したかもしれないが、この特定スペルミスに対する入力は履歴データベースから除去されている。履歴データベースには、この検索クエリ、またはユーザがその末尾に付加するかもしれないさらなる文字を有する検索クエリのいずれも含まれないという事実に基づいて、“ritney spears”が完成されたユーザ検索クエリであるという予測に達することができる。
予測検索クエリに基づいて、“britney spaers”という代替検索クエリが決定されてユーザに与えられる。1つの実施形態では、代替検索クエリは、予測検索クエリをキーとして使用してスペリングデータベースを検索することにより決定される。本例では、検索用語“ritney spears”は第1の検索クエリとしてスペリングデータベース内にあり、“britney spears”に関連付けられる。
C)履歴データベースおよびスペリング連想データベースのいずれもユーザ検索クエリの入力を有していない場合
さらに別の例では、ユーザは検索クエリ“nkusp f”を入力した。本例では、履歴データベースはこの検索クエリに一致する、またはさらなる文字を末尾に付加して一致可能となりうるいかなる入力も含み得ない。それゆえに、これは完成された検索クエリであるという予測がなされる。例示の目的で、検索クエリ“nkusp f”がスペリングデータベースに表れない場合、スペリング訂正はユーザ検索クエリの現在の形態の使用では判断可能ではない。この場合、ユーザ検索クエリは改められ、改められたユーザ検索クエリに関してスペリング訂正が試みられる。例えば、文字ユーザ検索クエリの右端の1つ以上の文字が除去される。特定の例として、用語“nkusp”がスペリングデータベースにおいて検索される。例示の目的で、スペリングデータベースは“nakusp”を“nkusp”と関連付ける。そのために、ブリティッシュコロンビア州の都市である、代替検索クエリ“nakusp”がクライアントに与えられる。
なお、代替検索クエリ“nakusp”はユーザが検索クエリに“f”を入力する前にユーザに与えられたかもしれない。但し、場合によっては、ユーザは適切な検索クエリが与えられた後でもさらに文字をタイプし続けることになる。
(代替検索クエリを決定するための組み合わせ)
代替検索クエリは本明細書で述べられる技術の1つ以上の組み合わせに基づくことも可能である。例えば、代替検索クエリは、代替スペリングを予測検索クエリに適用してその後、さらに代替スペリングを修正することにより形成される。例えば、代替スペリングは頭字語であり得る。頭字語は展開されて1つ以上の代替検索クエリを生成することができる。
(ハードウェア概要)
図12は本発明の実施形態が実施され得るコンピュータシステム1200を図示するブロック図である。コンピュータ1200は、情報を通信するためのバス1202または他の通信メカニズム、およびバス1202に連結された情報を処理するためのプロセッサ1204を含む。コンピュータシステム1200は、情報およびプロセッサ1204により実行される命令を記憶するための、バス1202に連結されたランドダムアクセスメモリ(RAM)または他の動的記憶装置などのメインメモリ1206も含む。メインメモリ1206はまた、プロセッサ1204により実行される命令の実行時における一時的数値変数または他の中間情報を記憶するために使用され得る。コンピュータシステム1200はさらに、静的情報およびプロセッサ1204のための命令を記憶するための、バス1202に連結された読み出し専用メモリ(ROM)1208または他の静的記憶装置を含む。磁気ディスクまたは光ディスクなどの記憶装置1210が情報および命令を記憶するために設けられて、バス1202に連結される。
コンピュータシステム1200はバス1202を介して、コンピュータユーザに情報を表示するための、ブラウン管(CRT)などのディスプレイ1212に連結され得る。英数字および他のキーを含む入力装置1214が、情報およびプロセッサ1204へのコマンド選択を通信するためにバス1202と連結される。別のタイプのユーザ入力装置は、方向情報およびプロセッサ1204へのコマンド選択を通信するため、およびディスプレイ1212上のカーソルの動きを制御するためのマウス、トラックボール、カーソル方向キーなどのカーソル制御1216である。この入力装置は典型的には、装置が平面における位置を特定できるようにする第1軸(例えば、x)および第2軸(例えば、y)の2軸おける2つの自由度を有する。
コンピュータシステム1200を使用して、本明細書に記載された技術を実行し得る。本発明の1つの実施形態によると、それらの技術は、プロセッサ1204がメインメモリ1206に含まれる1つ以上の命令の1つ以上のシーケンスを実行することに応答して、コンピュータシステム1200により行われる。このような命令は、記憶装置1210などの別のコンピュータ読み取り可能媒体からメインメモリ1206内に読み取られ得る。メインメモリ1206に含まれる命令のシーケンスの実行により、プロセッサ1204は本明細書に記載される処理ステップを行う。代替実施形態においては、本発明を実施するために、ソフトウェア命令の代わり、またはそれと組み合わせて配線回路が使用され得る。このように、本発明の実施形態はハードウェア回路およびソフトウェアのいかなる特定組み合わせにも限定されない。
本明細書で使用される用語「コンピュータ読み取り可能媒体」は実行のためにプロセッサ1204に命令を与えることに関与する任意の媒体を称する。このような媒体は、不揮発性媒体、揮発性媒体および伝送媒体を含むがこれらに限定されない多く形態を取り得る。例えば、不揮発性媒体は記憶装置1210などの光ディスクまたは磁気ディスクを含む。不揮発性媒体はメインメモリ1206などの動的メモリを含む。伝送媒体は、バス1202を構成するワイヤを含む同軸ケーブル、銅線および光ファイバを含む。伝送媒体はまた、電波および赤外線データ通信時において生成されるものなど音波または光波の形態も取ることが可能である。
コンピュータ読み取り可能媒体の一般的な形態は、例えば、フロッピディスク(登録商標)、フレキシブルディスク、ハードディスク、磁気テープまたは他の任意の磁気媒体、CD−ROM,他の任意の光媒体、パンチカード、ペーパーテープ、孔のパターンを備える他の任意の物理媒体、RAM、PROM、およびEPROM、FLASH−EPROM、他の任意のメモリチップまたはカートリッジ、以後説明される搬送波、またはコンピュータが読み取ることが可能な他の任意の媒体を含む。
コンピュータ読み取り可能媒体の種々の形態は、実行のためにプロセッサ1204に対する1つ以上の命令の1つ以上のシーケンスを運ぶのに従事し得る。例えば、命令はまずリモートコンピュータの磁気ディクス上で運ばれ得る。リモートコンピュータはその動的メモリに命令をロードして、モデムを使用した電話線でその命令を送信し得る。コンピュータシステム1200にローカルなモデムが電話線上でデータを受信して、赤外線トランスミッタを使用してデータを赤外線信号に変換し得る。赤外線検出器は赤外線信号で運ばれるデータを受信し得、適切な回路がデータをバス1202に置き得る。バス1202はデータをメインメモリ1206に運び、そこからプロセッサ1204が命令を取り出して実行する。メインメモリ1206により受信された命令は、オプションでプロセッサ1204による実行前または実行後の何れかに記憶装置1210上に任意に保存され得る。
コンピュータシステム1200はまた、バス1202に連結された通信インターフェース1218も含む。通信インターフェース1218は、ローカルネットワーク1222に接続されたネットワークリンク1220に連結された2方向データ通信を提供する。例えば、通信インターフェース1218は総合デジタル通信網(ISDN)カードまたは、対応タイプの電話線へのデータ通信接続を提供するモデムであり得る。別の例では、通信インターフェース1218は、互換性のあるLAへのデータ通信接続を提供するためのローカルエリアネットワーク(LAN)カードであり得る。無線リンクも実施され得る。かかる任意の実施において、通信インターフェース1218は種々のタイプの情報を表すデジタルデータストリームを運ぶ電気信号、電磁信号または光信号を送受信する。
ネットワークリンク1220は典型的には、他のデータ装置への1つ以上のネットワークを介するデータ通信を提供する。例えば、ネットワークリンク1220はローカルネットワーク1222を介したホストコンピュータ1224への、またはインターネットサービスプロバイダ(ISP)1226により操作されるデータ機器への接続を提供し得る。ISP1226は今度は、現在では一般的に「インターネット」1228と呼ばれるワールドワイドパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク1222およびインターネット1228はともに、デジタルデータストリームを運ぶ電気信号、電磁信号または光信号を使用する。デジタルデータをコンピュータシステム1200に対して運んだり、そこから運び出したりする種々のネットワークを介する信号およびネットワークリンク1220上および通信インターフェース1218を介する信号は、情報を運搬する搬送波の例示的形態である。
コンピュータシステム1200は、ネットワーク(単数、複数)、ネットワークリンク1220および通信インターフェース1218を介して、メッセージを送信しプログラムコードを含むデータを受信し得る。インターネット例では、サーバ1230は、インターネット1228、ISP1226、ローカルネットワーク1222および通信インターフェース1218を介してアプリケーションプログラムに対する要求コードを転送し得るであろう。
受信されたコードは、それが受信され、かつ/または記憶装置1210または、後に実行するための他の不揮発性記憶装置に保存されると、プロセッサ1204により実行され得る。このように、コンピュータシステム1200は搬送波の形態においてアプリケーションコードを得るかもしれない。
前述の明細書において、本発明の実施形態は実施毎に変わり得る多くの具体的詳細を参照して説明された。従って、何が本発明であるか、および出願者により何が本発明であると意図されるかについての唯一かつ排他的指標は、任意の後続の補正を含む請求項が発行する特定形態における本出願から発行される一連の請求項である。かかる請求項に含まれる用語に対する本明細書で述べるいかなる定義も、請求項において使用されるような用語の意味に適用されるべきである。それゆえに、請求項において明確に述べられていないいかなる限定、要素、特性、特徴、利点、または属性もかかる請求項の範囲を決して限定すべきでない。従って、明細書および図面は限定的な意味というよりは例示的な意味で考慮されるべきである。

Claims (20)

  1. 命令によって生じるマシーン実行動作を行うことを含む方法であって、前記マシーン実行動作は、
    A)前記命令を伝送媒体で送信することと、
    B)前記命令を伝送媒体で受信することと、
    C)マシーン読み取り可能な記憶媒体に前記命令を記憶することと、
    D)前記命令を実行すること
    のうち少なくとも1つであり、
    前記命令は、1つ以上のプロセッサにより実行されるときに、1つ以上のプロセッサに、
    クライアントノードから検索クエリを受信するステップと、
    前記検索クエリが完全に形成されたという指示をクライアントノードから受信する前に、前記検索クエリが完成されたときにどのようになるかを予測することにより予測検索クエリを決定するステップと、
    前記予測検索クエリに基づいて、前記予測検索クエリと異なる代替検索クエリを決定するステップと、
    前記代替検索クエリを前記クライアントノードに与えるステップと、を実行させる命令である、方法。
  2. 前記代替検索クエリを決定するステップは、前記予測検索クエリについての代替スペリングを決定するステップを含む、請求項1に記載の方法。
  3. 前記代替検索クエリを決定するステップは、前記予測検索クエリに関連する検索クエリを決定するステップを含む、請求項1に記載の方法。
  4. 前記予測検索クエリは頭字語を含み、
    前記代替検索クエリを決定するステップは、
    前記頭字語を展開することにより1つ以上の用語を形成するステップと、
    前記代替検索クエリにおいて1つ以上の用語を含むステップと、を含む、請求項3に記載の方法。
  5. 前記代替検索クエリは、前記クライアントノードからの前記検索クエリを導く1つ以上の文字を含む、請求項1に記載の方法。
  6. 前記代替検索クエリは、前記クライアントノードからの前記検索クエリの本文に挿入される1つ以上の文字を含む、請求項1に記載の方法。
  7. 前記予測検索クエリを決定するステップは、1セットの履歴検索クエリから前記予測検索クエリを選択するステップを含む、請求項1に記載の方法。
  8. 前記予測検索クエリを決定するステップは、前記履歴検索クエリのうちの各1つが前記検索クエリとして送信された頻度に基づく、請求項7に記載の方法。
  9. 予測検索クエリを決定するステップは、前記履歴検索クエリのうちの各1つが前記検索クエリとしていつ送信されたかに基づく、請求項7に記載の方法。
  10. 前記代替検索クエリを決定する前に、前記クライアントノードからの検索クエリから修正された検索クエリを形成するステップをさらに含み、
    前記代替検索クエリは、修正された検索クエリに基づく、請求項1に記載の方法。
  11. 命令によって生じるマシーン実行動作を行うことを含む方法であって、前記マシーン実行動作は、
    A)前記命令を伝送媒体で送信することと、
    B)前記命令を伝送媒体で受信することと、
    C)マシーン読み取り可能な記憶媒体に前記命令を記憶することと、
    D)前記命令を実行すること、
    のうち少なくとも1つであり、
    前記命令は、1つ以上のプロセッサにより実行されるときに、1つ以上のプロセッサに、
    クライアントノードから検索クエリを受信するステップと、
    前記検索クエリが完全に形成されたという指示をクライアントノードから受信する前に、前記代替検索クエリを決定するステップとを実行させ、前記代替検索クエリは、前記クライアントノードからの前記検索クエリの前に追加された、または前記クライアントノードからの前記検索クエリの本文中に挿入された1つ以上の任意の文字を含み、前記命令はさらに、
    前記代替検索クエリを前記クライアントノードに与えるステップと、を実行させる命令である、方法。
  12. 前記代替検索クエリは、前記クライアントノードからの前記検索クエリを導く1つ以上の文字を含む、請求項11に記載の方法。
  13. 前記代替検索クエリは、前記クライアントノードからの前記検索クエリの本文中に挿入される1つ以上の文字を含む、請求項11に記載の方法。
  14. 前記検索クエリが完成されたときにどのようになるかを予測することにより予測検索クエリを決定するステップをさらに含み、
    前記代替検索クエリは、予測検索クエリに基づく、請求項11に記載の方法。
  15. 前記代替検索クエリを決定するステップは、前記予測検索クエリについての代替スペリングを決定するステップを含む、請求項14に記載の方法。
  16. 前記代替検索クエリを決定するステップは、予測検索クエリに関連する検索クエリを決定するステップを含む、請求項14に記載の方法。
  17. 前記予測検索クエリは頭字語を含み、
    前記代替検索クエリを決定するステップは、
    前記頭字語を展開することにより1つ以上の用語を形成するステップと、
    前記代替検索クエリにおいて1つ以上の用語を含むステップと、を含む、請求項14に記載の方法。
  18. 前記予測検索クエリを決定するステップは、1セットの履歴検索クエリから前記予測検索クエリを選択するステップを含む、請求項14に記載の方法。
  19. 前記予測検索クエリを決定するステップは、前記履歴検索クエリのうちの各1つが前記検索クエリとして提出された頻度に基づく、請求項18に記載の方法。
  20. 前記予測検索クエリを決定するステップは、前記履歴検索クエリのうちの各1つが前記検索クエリとしていつ提出されたかに基づく、請求項18に記載の方法。
JP2012108604A 2005-08-24 2012-05-10 検索クエリ完成前の代替クエリの連想 Pending JP2012190472A (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US11/212,044 US7672932B2 (en) 2005-08-24 2005-08-24 Speculative search result based on a not-yet-submitted search query
US11/212,044 2005-08-24
US11/313,525 US7516124B2 (en) 2005-12-20 2005-12-20 Interactive search engine
US11/313,525 2005-12-20
US11/430,487 2006-05-08
US11/430,487 US7747639B2 (en) 2005-08-24 2006-05-08 Alternative search query prediction

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008528004A Division JP5121714B2 (ja) 2005-08-24 2006-08-15 検索クエリ完成前の代替クエリの連想

Publications (1)

Publication Number Publication Date
JP2012190472A true JP2012190472A (ja) 2012-10-04

Family

ID=37772184

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2008528004A Expired - Fee Related JP5121714B2 (ja) 2005-08-24 2006-08-15 検索クエリ完成前の代替クエリの連想
JP2012108605A Pending JP2012164353A (ja) 2005-08-24 2012-05-10 検索クエリ完成前の代替クエリの連想
JP2012108604A Pending JP2012190472A (ja) 2005-08-24 2012-05-10 検索クエリ完成前の代替クエリの連想
JP2014214506A Expired - Fee Related JP5909271B2 (ja) 2005-08-24 2014-10-21 検索クエリ完成前の代替クエリの連想

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2008528004A Expired - Fee Related JP5121714B2 (ja) 2005-08-24 2006-08-15 検索クエリ完成前の代替クエリの連想
JP2012108605A Pending JP2012164353A (ja) 2005-08-24 2012-05-10 検索クエリ完成前の代替クエリの連想

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2014214506A Expired - Fee Related JP5909271B2 (ja) 2005-08-24 2014-10-21 検索クエリ完成前の代替クエリの連想

Country Status (7)

Country Link
US (1) US7747639B2 (ja)
EP (1) EP1917609A2 (ja)
JP (4) JP5121714B2 (ja)
KR (1) KR100948733B1 (ja)
CN (2) CN102867012B (ja)
HK (1) HK1179705A1 (ja)
WO (1) WO2007024645A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017501505A (ja) * 2013-12-31 2017-01-12 グーグル インコーポレイテッド ナビゲーショナル検索結果の表面化
JP2021176086A (ja) * 2020-12-15 2021-11-04 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 情報検索方法、装置、電子機器及びコンピュータ可読記憶媒体

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7844594B1 (en) 1999-06-18 2010-11-30 Surfwax, Inc. Information search, retrieval and distillation into knowledge 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
US7209906B2 (en) 2002-01-14 2007-04-24 International Business Machines Corporation System and method for implementing a metrics engine for tracking relationships over time
US8630984B1 (en) 2003-01-17 2014-01-14 Renew Data Corp. System and method for data extraction from email files
US8943024B1 (en) 2003-01-17 2015-01-27 Daniel John Gardner System and method for data de-duplication
US8375008B1 (en) 2003-01-17 2013-02-12 Robert Gomes Method and system for enterprise-wide retention of digital or electronic data
US8065277B1 (en) 2003-01-17 2011-11-22 Daniel John Gardner System and method for a data extraction and backup database
US8255417B2 (en) * 2003-05-20 2012-08-28 Google Inc. System and method for providing definitions
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US7487145B1 (en) * 2004-06-22 2009-02-03 Google Inc. Method and system for autocompletion using ranked results
JP2006099442A (ja) * 2004-09-29 2006-04-13 Canon Inc 情報処理装置、履歴ファイル作成方法、及びプログラム
US20060106769A1 (en) 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US8069151B1 (en) 2004-12-08 2011-11-29 Chris Crafford System and method for detecting incongruous or incorrect media in a data recovery process
US8527468B1 (en) 2005-02-08 2013-09-03 Renew Data Corp. System and method for management of retention periods for content in a computing system
US7672932B2 (en) 2005-08-24 2010-03-02 Yahoo! Inc. Speculative search result based on a not-yet-submitted search query
US20070067268A1 (en) * 2005-09-22 2007-03-22 Microsoft Corporation Navigation of structured data
US20080189273A1 (en) * 2006-06-07 2008-08-07 Digital Mandate, Llc System and method for utilizing advanced search and highlighting techniques for isolating subsets of relevant content data
US8150827B2 (en) * 2006-06-07 2012-04-03 Renew Data Corp. Methods for enhancing efficiency and cost effectiveness of first pass review of documents
US20100198802A1 (en) * 2006-06-07 2010-08-05 Renew Data Corp. System and method for optimizing search objects submitted to a data resource
US7716201B2 (en) * 2006-08-10 2010-05-11 Yahoo! Inc. Method and apparatus for reconstructing a search query
US20080091637A1 (en) * 2006-10-17 2008-04-17 Terry Dwain Escamilla Temporal association between assets in a knowledge system
US11783925B2 (en) 2006-12-29 2023-10-10 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US8856289B2 (en) 2006-12-29 2014-10-07 Prodea Systems, Inc. Subscription management of applications and services provided through user premises gateway devices
US9602880B2 (en) 2006-12-29 2017-03-21 Kip Prod P1 Lp Display inserts, overlays, and graphical user interfaces for multimedia systems
US20170344703A1 (en) 2006-12-29 2017-11-30 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US11316688B2 (en) 2006-12-29 2022-04-26 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US9569587B2 (en) 2006-12-29 2017-02-14 Kip Prod Pi Lp Multi-services application gateway and system employing the same
US9286935B1 (en) * 2007-01-29 2016-03-15 Start Project, LLC Simplified data entry
US8161069B1 (en) 2007-02-01 2012-04-17 Eighty-Three Degrees, Inc. Content sharing using metadata
US8583592B2 (en) * 2007-03-30 2013-11-12 Innography, Inc. System and methods of searching data sources
US9069853B2 (en) * 2007-03-30 2015-06-30 Innography, Inc. System and method of goal-oriented searching
US7698344B2 (en) * 2007-04-02 2010-04-13 Microsoft Corporation Search macro suggestions relevant to search queries
US7809714B1 (en) 2007-04-30 2010-10-05 Lawrence Richard Smith Process for enhancing queries for information retrieval
US8019742B1 (en) 2007-05-31 2011-09-13 Google Inc. Identifying related queries
US7822774B2 (en) * 2007-06-11 2010-10-26 Microsoft Corporation Using link structure for suggesting related queries
EP2031819A1 (en) * 2007-09-03 2009-03-04 British Telecommunications Public Limited Company Distributed system
CN101842787A (zh) * 2007-09-14 2010-09-22 谷歌公司 在查询结果中建议替选查询
US20090083255A1 (en) * 2007-09-24 2009-03-26 Microsoft Corporation Query spelling correction
CN101398835B (zh) * 2007-09-30 2012-08-29 日电(中国)有限公司 基于自然语言的服务选择系统与方法以及服务查询系统与方法
US8667004B2 (en) * 2007-11-30 2014-03-04 Microsoft Corporation Providing suggestions during formation of a search query
US8126888B2 (en) * 2007-12-12 2012-02-28 DECHO, Corporation Methods for enhancing digital search results based on task-oriented user activity
US20090171929A1 (en) * 2007-12-26 2009-07-02 Microsoft Corporation Toward optimized query suggeston: user interfaces and algorithms
US20090187540A1 (en) * 2008-01-22 2009-07-23 Microsoft Corporation Prediction of informational interests
US8615490B1 (en) 2008-01-31 2013-12-24 Renew Data Corp. Method and system for restoring information from backup storage media
US20090241018A1 (en) * 2008-03-18 2009-09-24 Cuill, Inc. Apparatus and method for displaying search results with configurable columns and textual summary lengths
US20090248401A1 (en) * 2008-03-31 2009-10-01 International Business Machines Corporation System and Methods For Using Short-Hand Interpretation Dictionaries In Collaboration Environments
CN101593179B (zh) * 2008-05-26 2011-08-10 国际商业机器公司 文档搜索方法和装置及文档处理器
US7890516B2 (en) * 2008-05-30 2011-02-15 Microsoft Corporation Recommending queries when searching against keywords
US8356041B2 (en) 2008-06-17 2013-01-15 Microsoft Corporation Phrase builder
US9542438B2 (en) * 2008-06-17 2017-01-10 Microsoft Technology Licensing, Llc Term complete
US20090320097A1 (en) * 2008-06-18 2009-12-24 Jackson Bruce Kelly Method for carrying out a distributed search
US9183323B1 (en) * 2008-06-27 2015-11-10 Google Inc. Suggesting alternative query phrases in query results
US20090327236A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual query suggestions
US8312032B2 (en) * 2008-07-10 2012-11-13 Google Inc. Dictionary suggestions for partial user entries
US8677018B2 (en) * 2008-08-25 2014-03-18 Google Inc. Parallel, side-effect based DNS pre-caching
US8010537B2 (en) * 2008-08-27 2011-08-30 Yahoo! Inc. System and method for assisting search requests with vertical suggestions
US9197486B2 (en) * 2008-08-29 2015-11-24 Google Inc. Adaptive accelerated application startup
US8316296B2 (en) * 2008-10-01 2012-11-20 Microsoft Corporation Phrase generation using part(s) of a suggested phrase
US8930350B1 (en) * 2009-03-23 2015-01-06 Google Inc. Autocompletion using previously submitted query data
GB0905562D0 (en) * 2009-03-31 2009-05-13 British Telecomm Electronic resource storage system
US8219539B2 (en) * 2009-04-07 2012-07-10 Microsoft Corporation Search queries with shifting intent
CN102483752A (zh) 2009-06-03 2012-05-30 谷歌公司 用于部分输入的查询的自动完成
US8825691B2 (en) * 2009-06-03 2014-09-02 Yahoo! Inc. Open search assist
US8244749B1 (en) 2009-06-05 2012-08-14 Google Inc. Generating sibling query refinements
US8583675B1 (en) 2009-08-28 2013-11-12 Google Inc. Providing result-based query suggestions
US20110119268A1 (en) * 2009-11-13 2011-05-19 Rajaram Shyam Sundar Method and system for segmenting query urls
US20110145269A1 (en) * 2009-12-09 2011-06-16 Renew Data Corp. System and method for quickly determining a subset of irrelevant data from large data content
US8738668B2 (en) 2009-12-16 2014-05-27 Renew Data Corp. System and method for creating a de-duplicated data set
US8849785B1 (en) 2010-01-15 2014-09-30 Google Inc. Search query reformulation using result term occurrence count
US8498983B1 (en) * 2010-01-29 2013-07-30 Guangsheng Zhang Assisting search with semantic context and automated search options
US9129012B2 (en) * 2010-02-03 2015-09-08 Google Inc. Information search system with real-time feedback
US20110191332A1 (en) * 2010-02-04 2011-08-04 Veveo, Inc. Method of and System for Updating Locally Cached Content Descriptor Information
US8560562B2 (en) * 2010-07-22 2013-10-15 Google Inc. Predictive query suggestion caching
AU2011291544B2 (en) 2010-08-19 2015-03-26 Google Llc Predictive query completion and predictive search results
KR101122366B1 (ko) * 2010-09-20 2012-03-23 엔에이치엔(주) 검색어 리스트 제공 시스템 및 방법
US9323722B1 (en) 2010-12-07 2016-04-26 Google Inc. Low-latency interactive user interface
JP5230715B2 (ja) * 2010-12-08 2013-07-10 ヤフー株式会社 検索支援装置
NZ589787A (en) * 2010-12-08 2012-03-30 S L I Systems Inc A method for determining relevant search results
US20120166415A1 (en) * 2010-12-23 2012-06-28 Microsoft Corporation Supplementing search results with keywords derived therefrom
WO2012092709A1 (en) * 2011-01-05 2012-07-12 Google Inc. Method and system for facilitating text input
JP5678686B2 (ja) * 2011-01-25 2015-03-04 ヤマハ株式会社 端末装置、プログラムおよび楽曲検索方法
US9507861B2 (en) 2011-04-01 2016-11-29 Microsoft Technolgy Licensing, LLC Enhanced query rewriting through click log analysis
US8732151B2 (en) 2011-04-01 2014-05-20 Microsoft Corporation Enhanced query rewriting through statistical machine translation
US8583672B1 (en) * 2011-04-14 2013-11-12 Google Inc. Displaying multiple spelling suggestions
US9633109B2 (en) 2011-05-17 2017-04-25 Etsy, Inc. Systems and methods for guided construction of a search query in an electronic commerce environment
CN102799591B (zh) * 2011-05-26 2015-03-04 阿里巴巴集团控股有限公司 一种提供推荐词的方法及装置
US8510322B2 (en) 2011-06-17 2013-08-13 Microsoft Corporation Enriched search features based in part on discovering people-centric search intent
JP5277296B2 (ja) * 2011-08-31 2013-08-28 楽天株式会社 検索システム、情報処理装置、情報処理装置の制御方法、プログラム、及び情報記憶媒体
US20150193393A1 (en) * 2011-09-01 2015-07-09 Scott R. Violet Dynamic Display of Web Content
US8478777B2 (en) * 2011-10-25 2013-07-02 Google Inc. Gesture-based search
US9275421B2 (en) * 2011-11-04 2016-03-01 Google Inc. Triggering social pages
US20130159143A1 (en) * 2011-11-28 2013-06-20 Lavelle Industries, Inc. Method, system and software product for selecting toilet repair products
US9405856B2 (en) 2011-12-30 2016-08-02 Microsoft Technology Licensing, Llc Task-oriented query-completion suggestions with shortcuts
US9235654B1 (en) * 2012-02-06 2016-01-12 Google Inc. Query rewrites for generating auto-complete suggestions
US9922344B1 (en) * 2012-02-24 2018-03-20 Google Llc Serving advertisements based on partial queries
US8954463B2 (en) * 2012-02-29 2015-02-10 International Business Machines Corporation Use of statistical language modeling for generating exploratory search results
US9098586B1 (en) * 2012-07-05 2015-08-04 EarthNetTV Inc. Private user interest recognition and targeted recommendation system
WO2014006715A1 (ja) * 2012-07-05 2014-01-09 富士通株式会社 入力支援方法、情報処理システムおよびプログラム
US9424233B2 (en) 2012-07-20 2016-08-23 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US9002174B2 (en) 2012-10-01 2015-04-07 Microsoft Technology Licensing, Llc Semantic zoom for related content
US9285958B1 (en) * 2012-11-19 2016-03-15 Amazon Technologies, Inc. Browser interface for accessing predictive content
US9092509B2 (en) 2012-11-19 2015-07-28 Microsoft Technology Licensing, Llc Search query user interface
KR101446468B1 (ko) * 2012-11-28 2014-10-06 (주)이스트소프트 자동완성 질의어 제공 시스템 및 방법
US9384279B2 (en) 2012-12-07 2016-07-05 Charles Reed Method and system for previewing search results
US20140172564A1 (en) * 2012-12-17 2014-06-19 Facebook, Inc. Targeting objects to users based on queries in an online system
US8965909B2 (en) * 2012-12-24 2015-02-24 Yahoo! Inc. Type-ahead search optimization
US9449095B1 (en) * 2012-12-31 2016-09-20 Google Inc. Revising search queries
EP3640938B1 (en) 2013-05-07 2024-07-03 Veveo, Inc. Incremental speech input interface with real time feedback
US9772765B2 (en) 2013-07-06 2017-09-26 International Business Machines Corporation User interface for recommended alternative search queries
WO2015028898A1 (en) 2013-08-29 2015-03-05 Yandex Europe Ag A system and method for displaying of most relevant vertical search results
KR101511031B1 (ko) * 2013-09-12 2015-04-10 네이버 주식회사 버티컬 서비스 연결을 제공하는 검색 시스템 및 방법
US10162889B2 (en) * 2014-06-18 2018-12-25 Google Llc Methods, systems, and media for searching for video content
US10242088B2 (en) * 2014-09-18 2019-03-26 Microsoft Technology Licensing, Llc Multi-source search
CA2961952C (en) 2014-09-30 2018-11-20 Ebay Inc. Identifying temporal demand for autocomplete search results
GB201418402D0 (en) * 2014-10-16 2014-12-03 Touchtype Ltd Text prediction integration
US9852136B2 (en) 2014-12-23 2017-12-26 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US9854049B2 (en) 2015-01-30 2017-12-26 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US10664537B2 (en) * 2016-03-18 2020-05-26 Amazon Technologies, Inc. User interface element for surfacing related results
US10305828B2 (en) * 2016-04-20 2019-05-28 Google Llc Search query predictions by a keyboard
CN107402702A (zh) 2017-07-17 2017-11-28 北京小米移动软件有限公司 运营入口获取方法和装置
US10846756B2 (en) * 2017-09-13 2020-11-24 Ebay Inc. Search result-based listing generation in a single view
JP7166855B2 (ja) * 2018-09-12 2022-11-08 ヤフー株式会社 情報処理装置、サーバ、情報処理方法及び情報処理プログラム
US10783175B2 (en) * 2018-09-28 2020-09-22 Microsoft Technology Licensing, Llc Expanding search queries using query term weighting
US11017764B1 (en) * 2018-09-28 2021-05-25 Splunk Inc. Predicting follow-on requests to a natural language request received by a natural language processing system
US11475053B1 (en) 2018-09-28 2022-10-18 Splunk Inc. Providing completion recommendations for a partial natural language request received by a natural language processing system
US11144560B2 (en) 2019-08-23 2021-10-12 International Business Machines Corporation Utilizing unsumbitted user input data for improved task performance
US11531818B2 (en) * 2019-11-15 2022-12-20 42 Maru Inc. Device and method for machine reading comprehension question and answer
JP7021290B2 (ja) * 2020-05-19 2022-02-16 ヤフー株式会社 推定装置、推定方法、及び推定プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11353316A (ja) * 1998-06-04 1999-12-24 Oki Electric Ind Co Ltd 省略語補完装置
JP2001249933A (ja) * 2000-03-06 2001-09-14 Nippon Telegr & Teleph Corp <Ntt> 検索語入力補完方法及び装置、並びに該方法を実施するためのプログラムを格納した記録媒体

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4255796A (en) * 1978-02-14 1981-03-10 Bell Telephone Laboratories, Incorporated Associative information retrieval continuously guided by search status feedback
DE3069324D1 (en) * 1980-12-19 1984-10-31 Ibm Interactive data retrieval apparatus
US5278980A (en) * 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
JPH08255159A (ja) * 1995-03-15 1996-10-01 Toshiba Corp 文字列予測方法,文字列予測装置,仮名漢字変換方法,仮名漢字変換装置及び文書作成装置
JPH08292944A (ja) * 1995-04-24 1996-11-05 Matsushita Electric Ind Co Ltd 文字入力装置
JPH09259145A (ja) * 1996-03-27 1997-10-03 Sony Corp 検索方法および音声認識装置
US5913215A (en) * 1996-04-09 1999-06-15 Seymour I. Rubinstein Browse by prompted keyword phrases with an improved method for obtaining an initial document set
JPH10222502A (ja) * 1997-02-07 1998-08-21 Toshiba Corp 文書作成装置及び入力処理方法
US5845278A (en) * 1997-09-12 1998-12-01 Inioseek Corporation Method for automatically selecting collections to search in full text searches
US6169984B1 (en) * 1998-04-01 2001-01-02 Microsoft Corporation Global incremental type search navigation directly from printable keyboard character input
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
US6321226B1 (en) * 1998-06-30 2001-11-20 Microsoft Corporation Flexible keyboard searching
US6300947B1 (en) * 1998-07-06 2001-10-09 International Business Machines Corporation Display screen and window size related web page adaptation system
US6144958A (en) * 1998-07-15 2000-11-07 Amazon.Com, Inc. System and method for correcting spelling errors in search queries
US6385602B1 (en) * 1998-11-03 2002-05-07 E-Centives, Inc. Presentation of search results using dynamic categorization
US6608895B1 (en) 1998-11-04 2003-08-19 Tadiran Telecom Business Systems, Ltd. Method of anticipatory dialing
US6411950B1 (en) * 1998-11-30 2002-06-25 Compaq Information Technologies Group, Lp Dynamic query expansion
GB2347239B (en) 1999-02-22 2003-09-24 Nokia Mobile Phones Ltd A communication terminal having a predictive editor application
US7225182B2 (en) * 1999-05-28 2007-05-29 Overture Services, Inc. Recommending search terms using collaborative filtering and web spidering
US7181438B1 (en) * 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US6985898B1 (en) * 1999-10-01 2006-01-10 Infoglide Corporation System and method for visually representing a hierarchical database objects and their similarity relationships to other objects in the database
US6430559B1 (en) * 1999-11-02 2002-08-06 Claritech Corporation Method and apparatus for profile score threshold setting and updating
US6963867B2 (en) * 1999-12-08 2005-11-08 A9.Com, Inc. Search query processing to provide category-ranked presentation of search results
US6772150B1 (en) 1999-12-10 2004-08-03 Amazon.Com, Inc. Search query refinement using related search phrases
JP2004515829A (ja) 2000-04-13 2004-05-27 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 検索タスクモデル及び双方向検索タスク改良処理を有する検索エンジン
US6564213B1 (en) * 2000-04-18 2003-05-13 Amazon.Com, Inc. Search query autocompletion
US6876997B1 (en) * 2000-05-22 2005-04-05 Overture Services, Inc. Method and apparatus for indentifying related searches in a database search system
US6640218B1 (en) * 2000-06-02 2003-10-28 Lycos, Inc. Estimating the usefulness of an item in a collection of information
US6507837B1 (en) * 2000-06-08 2003-01-14 Hyperphrase Technologies, Llc Tiered and content based database searching
US6615317B2 (en) * 2000-07-07 2003-09-02 Fitech Laboratories, Inc. Methods and systems for providing a highly scalable synchronous data cache
FR2813684B1 (fr) * 2000-09-04 2003-01-10 Jean Baptiste Dumas Dispositif d'exportation de donnees d'une base de donnees vers un terminal informatique et procede associe
CA2323856A1 (en) * 2000-10-18 2002-04-18 602531 British Columbia Ltd. Method, system and media for entering data in a personal computing device
US7089237B2 (en) * 2001-01-26 2006-08-08 Google, Inc. Interface and system for providing persistent contextual relevance for commerce activities in a networked environment
US6697793B2 (en) * 2001-03-02 2004-02-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for generating phrases from a database
US20030018621A1 (en) * 2001-06-29 2003-01-23 Donald Steiner Distributed information search in a networked environment
US7752326B2 (en) * 2001-08-20 2010-07-06 Masterobjects, Inc. System and method for utilizing asynchronous client server communication objects
US7373335B2 (en) * 2001-09-27 2008-05-13 Accudata Technologies, Inc. System and method for processing database queries
US6978264B2 (en) * 2002-01-03 2005-12-20 Microsoft Corporation System and method for performing a search and a browse on a query
US7209906B2 (en) * 2002-01-14 2007-04-24 International Business Machines Corporation System and method for implementing a metrics engine for tracking relationships over time
US7565367B2 (en) * 2002-01-15 2009-07-21 Iac Search & Media, Inc. Enhanced popularity ranking
DE10235548B4 (de) 2002-03-25 2012-06-28 Agere Systems Guardian Corp. Verfahren und Vorrichtung für die Prädiktion einer Textnachrichteneingabe
US7039635B1 (en) * 2002-06-11 2006-05-02 Microsoft Corporation Dynamically updated quick searches and strategies
US7236923B1 (en) * 2002-08-07 2007-06-26 Itt Manufacturing Enterprises, Inc. Acronym extraction system and method of identifying acronyms and extracting corresponding expansions from text
US7370035B2 (en) * 2002-09-03 2008-05-06 Idealab Methods and systems for search indexing
DE60301534T2 (de) 2002-10-09 2006-07-13 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren und Vorrichtung für das Vorausahnen des Dienstablaufs
JP3818586B2 (ja) * 2002-10-15 2006-09-06 株式会社日立製作所 通信型ナビゲーションシステムにおける入力支援方法ならびに装置
CA2411506C (en) * 2002-11-07 2010-02-16 Research In Motion Limited Pseudo-interactive input processing in wireless environments
US20040153963A1 (en) 2003-02-05 2004-08-05 Simpson Todd G. Information entry mechanism for small keypads
US6947930B2 (en) * 2003-03-21 2005-09-20 Overture Services, Inc. Systems and methods for interactive search query refinement
US7885963B2 (en) * 2003-03-24 2011-02-08 Microsoft Corporation Free text and attribute searching of electronic program guide (EPG) data
US20040215654A1 (en) * 2003-04-28 2004-10-28 Eberwine David Brent Total liability compliance (TLC) system
JP2004334690A (ja) * 2003-05-09 2004-11-25 Sharp Corp 文字データ入出力装置、文字データ入出力方法、文字データ入出力プログラム、およびコンピュータ読み取り可能な記録媒体
US7225187B2 (en) * 2003-06-26 2007-05-29 Microsoft Corporation Systems and methods for performing background queries from content and activity
JP2005022147A (ja) * 2003-06-30 2005-01-27 Brother Ind Ltd 画像形成装置
JP3931166B2 (ja) * 2003-10-31 2007-06-13 松下電器産業株式会社 携帯型端末装置
US7106312B2 (en) * 2003-11-10 2006-09-12 Microsoft Corporation Text input window with auto-growth
US7240049B2 (en) * 2003-11-12 2007-07-03 Yahoo! Inc. Systems and methods for search query processing using trend analysis
US20050114130A1 (en) * 2003-11-20 2005-05-26 Nec Laboratories America, Inc. Systems and methods for improving feature ranking using phrasal compensation and acronym detection
JP2005173984A (ja) * 2003-12-11 2005-06-30 Nec Corp 入力履歴による予測入力方式および予測入力方法
US7249126B1 (en) * 2003-12-30 2007-07-24 Shopping.Com Systems and methods for dynamically updating relevance of a selected item
US20050192944A1 (en) * 2004-02-27 2005-09-01 Melodeo, Inc. A method and apparatus for searching large databases via limited query symbol sets
US7664734B2 (en) * 2004-03-31 2010-02-16 Google Inc. Systems and methods for generating multiple implicit search queries
US8631001B2 (en) * 2004-03-31 2014-01-14 Google Inc. Systems and methods for weighting a search query result
US8019735B2 (en) * 2004-05-21 2011-09-13 Oracle International Corporation Systems and methods for query caching
US20050288959A1 (en) * 2004-06-16 2005-12-29 David Eraker Map-based search for real estate service providers
US7836044B2 (en) * 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
JP2006048408A (ja) * 2004-08-05 2006-02-16 Obic Business Consultants Ltd 入出力画面作成システム、入出力画面作成方法及び業務処理システム
US7509260B2 (en) * 2004-09-20 2009-03-24 International Business Machines Corporation Systems and methods for inputting graphical data into a graphical input field
US20060064411A1 (en) * 2004-09-22 2006-03-23 William Gross Search engine using user intent
US7499940B1 (en) * 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US20060106769A1 (en) * 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US20060173822A1 (en) * 2005-02-03 2006-08-03 Microsoft Corporation System and method for optimization of results based on monetization intent
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
US7788248B2 (en) * 2005-03-08 2010-08-31 Apple Inc. Immediate search feedback
US7647312B2 (en) * 2005-05-12 2010-01-12 Microsoft Corporation System and method for automatic generation of suggested inline search terms
US20060287980A1 (en) * 2005-06-21 2006-12-21 Microsoft Corporation Intelligent search results blending
US20070022299A1 (en) * 2005-07-20 2007-01-25 Kyocera Mita Corporation Password authentication device, recording medium which records an authentication program, and authentication method
US7516124B2 (en) * 2005-12-20 2009-04-07 Yahoo! Inc. Interactive search engine
US7672932B2 (en) 2005-08-24 2010-03-02 Yahoo! Inc. Speculative search result based on a not-yet-submitted search query
US8010523B2 (en) * 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
US20070244863A1 (en) * 2006-04-13 2007-10-18 Randy Adams Systems and methods for performing searches within vertical domains
US7487144B2 (en) * 2006-05-24 2009-02-03 Microsoft Corporation Inline search results from user-created search verticals
US8762289B2 (en) * 2006-07-19 2014-06-24 Chacha Search, Inc Method, apparatus, and computer readable storage for training human searchers
US20080109401A1 (en) * 2006-09-12 2008-05-08 Microsoft Corporation Presenting predetermined search results with query suggestions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11353316A (ja) * 1998-06-04 1999-12-24 Oki Electric Ind Co Ltd 省略語補完装置
JP2001249933A (ja) * 2000-03-06 2001-09-14 Nippon Telegr & Teleph Corp <Ntt> 検索語入力補完方法及び装置、並びに該方法を実施するためのプログラムを格納した記録媒体

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNG200500021003; 小松 弘幸 他: '動的略語展開を利用した文脈をとらえた予測入力' 情報処理学会論文誌 第44巻 第11号 , 20031115, pp.2538-2546, 社団法人情報処理学会 *
CSNG201000460045; 北 研二 他: '検索キー・コンプリ-ションを実装した全文検索システムの開発' 言語処理学会第11回年次大会発表論文集 , 20050315, pp.185-188, 言語処理学会 *
JPN6013027961; 北 研二 他: '検索キー・コンプリ-ションを実装した全文検索システムの開発' 言語処理学会第11回年次大会発表論文集 , 20050315, pp.185-188, 言語処理学会 *
JPN6014016863; 小松 弘幸 他: '動的略語展開を利用した文脈をとらえた予測入力' 情報処理学会論文誌 第44巻 第11号 , 20031115, pp.2538-2546, 社団法人情報処理学会 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017501505A (ja) * 2013-12-31 2017-01-12 グーグル インコーポレイテッド ナビゲーショナル検索結果の表面化
JP2021176086A (ja) * 2020-12-15 2021-11-04 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 情報検索方法、装置、電子機器及びコンピュータ可読記憶媒体
JP7330229B2 (ja) 2020-12-15 2023-08-21 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド 情報検索方法、装置、電子機器及びコンピュータ可読記憶媒体

Also Published As

Publication number Publication date
EP1917609A2 (en) 2008-05-07
HK1179705A1 (zh) 2013-10-04
CN102867011A (zh) 2013-01-09
KR20080040012A (ko) 2008-05-07
JP2015038767A (ja) 2015-02-26
JP2009506429A (ja) 2009-02-12
JP5909271B2 (ja) 2016-04-26
WO2007024645A3 (en) 2007-07-12
US20070050351A1 (en) 2007-03-01
JP5121714B2 (ja) 2013-01-16
JP2012164353A (ja) 2012-08-30
CN102867011B (zh) 2016-09-07
US7747639B2 (en) 2010-06-29
WO2007024645A2 (en) 2007-03-01
KR100948733B1 (ko) 2010-03-22
CN102867012A (zh) 2013-01-09
CN102867012B (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
JP5909271B2 (ja) 検索クエリ完成前の代替クエリの連想
US7844599B2 (en) Biasing queries to determine suggested queries
US7516124B2 (en) Interactive search engine
US10372738B2 (en) Speculative search result on a not-yet-submitted search query
US8868539B2 (en) Search equalizer
KR101506380B1 (ko) 무한 브라우즈
KR101708448B1 (ko) 예측 쿼리 제안 캐싱
US7962466B2 (en) Automated tool for human assisted mining and capturing of precise results
KR101393839B1 (ko) 링크된 용어들을 포함하는 활성 요약들을 제공하는 검색시스템
US20120221587A1 (en) Method for Generating Search Results and System for Information Search
US20020138479A1 (en) Adaptive search engine query
US20080201219A1 (en) Query classification and selection of associated advertising information

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130910

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130913

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131210

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140428