JP5325579B2 - ロケーション検索クエリのための地理コーディング - Google Patents

ロケーション検索クエリのための地理コーディング Download PDF

Info

Publication number
JP5325579B2
JP5325579B2 JP2008552594A JP2008552594A JP5325579B2 JP 5325579 B2 JP5325579 B2 JP 5325579B2 JP 2008552594 A JP2008552594 A JP 2008552594A JP 2008552594 A JP2008552594 A JP 2008552594A JP 5325579 B2 JP5325579 B2 JP 5325579B2
Authority
JP
Japan
Prior art keywords
geographic
location
documents
document
search query
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008552594A
Other languages
English (en)
Other versions
JP2009524893A5 (ja
JP2009524893A (ja
Inventor
ブロン,フロリアン,マイケル
バラクリッシュナン,ラメッシュ
ノリス,ジェームス,クリストファー
ミュラー,ジェームス,ロバート
トラン,タイ
ラスマッセン,ラーズ,エイルストラップ
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.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2009524893A publication Critical patent/JP2009524893A/ja
Publication of JP2009524893A5 publication Critical patent/JP2009524893A5/ja
Application granted granted Critical
Publication of JP5325579B2 publication Critical patent/JP5325579B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

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)
  • Instructional Devices (AREA)

Description

関連出願
[0001] 本出願は、参照により本明細書に援用する、2006年1月27日に出願した「Geographic Coding for Location Search Queries」という名称の米国仮特許出願第60/763,168号の優先権を主張する。
[0002] 検索エンジンは、インターネットまたはワールドワイドウェブ(WWW)上のドキュメント、および/またはイントラネットのコンピュータ上に格納されているドキュメントのような、大規模ドキュメントデータベースにあるドキュメント内のコンテンツの位置を突き止めるための強力なツールを提供する。ドキュメントは、タームと呼ばれる、ユーザによって提示される1つまたは複数の語、用語、キーワード、および/または句で構成される検索クエリに応答して、ドキュメントのインデクスを使用して探し出される。ドキュメントインデクス内のドキュメントは、スコアを決定するために、検索クエリの1つまたは複数のタームと照合される。順位付けされた関連ドキュメントまたはドキュメントのロケーションのリストは、スコアに基づいて、ユーザに提供される。
[0003] 検索クエリは、さまざまな用途と形式を持つことができる。形式の1つのクラスは、ロケーション検索に対応する。従来のロケーション検索では、テンプレートなどの固定形式を使用することが多い。既存のテンプレートは、多くの場合固定されているか、または限定された数しかバリエーションを許容できないようになっている。例えば、既存のロケーション検索クエリの語またはタームは、予め定められた順序(ストリート名、州、郵便番号)および/または予め定められたスペリングを持つことができる。結果として、さまざまな国々で見られるような、スペルミス、ロケーションの代替名、および代替アドレス形式を含む広範囲のスペリングに適応することは、(従来のロケーション検索では)困難あるいは不可能である。
[0004] 数多くの既存の検索エンジンは、多くの場合、ロケーション検索クエリに応答して単一の結果を返す。そのためこれは、ロケーション検索クエリの形式に柔軟性が不足していることと相まって、ロケーション検索クエリおよび/またはユーザに返される結果の不確実性または多義性への適応を困難にしている。
[0005] 既存のロケーション検索クエリは多くの場合、単一データ構造で処理されるので、既存のロケーション検索クエリの柔軟性の不足はさらに、検索エンジンのパフォーマンスを損なうことも多い。データ構造を拡大縮小して、それを検索エンジン全体にわたり分散できないことで、ロケーション検索クエリの処理速度の低下を招く可能性もある。そのようなボトルネックを克服することは、結果としてさらなる検索エンジンの複雑さと費用をもたらすことになる。
[0006] 従って、ロケーション検索クエリを処理するための改良された形式および技法が必要とされている。加えて、ロケーション検索クエリの結果をユーザに報告する改良された方法も必要とされている。
[0007] ロケーション検索クエリに関連する前述の不足およびその他の問題は、プロセスおよび検索エンジンの開示される実施形態により軽減または解消される。
[0008] 一部の実施形態において、ロケーション検索を実行する方法は、ロケーション検索クエリを受信するステップと、ロケーション検索クエリに対応するキーワードを決定するステップと、ロケーション検索クエリのキーワードに対応する1つまたは複数のドキュメントを特定するステップと、1つまたは複数のドキュメントに対応する少なくとも1つのロケーションを特定する情報をクライアントシステムに提供するステップとを含む。
[0009] キーワードを決定するステップは、ロケーション検索クエリから句読記号およびロケーション以外のタームを削除するステップを含むことができる。キーワードは、ロケーション検索クエリの1つまたは複数のタームの1つまたは複数の同義語を含むことができる。キーワードは、1つまたは複数のタームに対応する予め定められた省略形を含むことができる。
[0010] 1つまたは複数のドキュメントを特定するステップは、キーワードに対応する正規表現を決定するステップを含むことができる。1つまたは複数のドキュメントを特定するステップは、1つまたは複数の各ドキュメントのスコアを決定するステップを含むことができる。それぞれのスコアは、複数のドキュメント内のキーワードの頻度、キーワードのうちの1つまたは複数を持つそれぞれのドキュメント内の1つまたは複数の語の一致、およびキーワードに対応する地理的フィーチャのサイズに従ってもよい。1つまたは複数のドキュメントを特定するステップは、キーワードの順序とは独立であってもよい。
[0011] 1つまたは複数のドキュメントは、地理的フィーチャに対応する複数のドキュメントを含むインデクスに格納されてもよい。複数のドキュメントは、地理的フィーチャに対応する参照座標を含むことができる。
[0012] 1つまたは複数のドキュメントに対応する少なくとも1つのロケーションを特定する情報を提供するステップは、対応するドキュメントの最高スコアが、1つまたは複数のドキュメントの上位N件中の次位のドキュメントについての次に高いスコアの予め定められた倍数よりも大きい場合に、1つのロケーションを特定する情報を提供するステップを含むことができる。提供する操作は、1つまたは複数のドキュメントに対応する上位N件までのロケーションを特定するステップを含むことができ、上位のドキュメントは予め定められた範囲内のスコアを有する。一部の実施形態において、上位N件の各ロケーションは、ロケーション識別子を含む。一部の実施形態において、上位N件の各ロケーションは、マップイメージに対応するリンクを含む。
[0013] 提供する操作は、少なくとも1つのロケーションに対応するマップイメージを提供するステップを含むことができる。マップイメージは、少なくとも1つのロケーションを中心とすることができ、少なくとも1つのロケーションを囲む予め定められたサイズより小さい領域を含むことができる。一部の実施形態において、少なくとも1つのロケーションは、対応するドキュメントが全てのキーワードを共通に持つ2つ以上の別個のロケーションを含むことができる。マップイメージは、2つ以上のロケーションに対応するタグを含むことができる。
[0014] もう1つの実施形態において、メモリに格納されているデータ構造は、ロケーション検索クエリを実行するために使用されてもよい。データ構造は、地理的フィーチャに対応する複数のドキュメントまたはレコード(これ以降、ドキュメントと呼ぶ)を含むことができる。複数のドキュメントのそれぞれのドキュメントは、ロケーション情報および補足情報を含むことができる。ロケーション情報は、1つまたは複数のロケーションに対応するキーワードまたはトークン、1つまたは複数のロケーションに関連付けられている1つまたは複数の領域、およびキーワードの同義語を含むことができる。補足情報は、1つまたは複数のロケーションに対応する参照座標を含むことができる。
[0015] 参照座標は、1つまたは複数のロケーションの緯度および経度を含むことができる。参照座標は、1つまたは複数のロケーションを取り囲む領域を含むことができる。領域は、予め定められているサイズよりも小さくすることができる。
[0016] データ構造は、ハイパーテキストマークアップ言語(HTML)に適合するものであってもよい。
[0017] それぞれのドキュメントのロケーション情報は、ロケーション検索クエリにおけるタームの順序の影響を受けなくてもよい。
[0018] 別の実施形態において、グラフィカルユーザインターフェイスは、ロケーション検索クエリに応答して提供される領域のマップイメージを含む。マップイメージは、ロケーション検索クエリに関連付けられている全てのタームを共通に持つ領域内の2つ以上の個別のロケーションに対応する2つ以上のタグを含む。
[0019] 別の実施形態において、グラフィカルユーザインターフェイスは、ロケーション検索クエリに応答して提供される領域のマップイメージを含む。マップイメージは、ロケーションを中心とする。マップイメージは、ロケーション検索クエリに関連付けられている条件の順序とは無関係に提供される。
[0020] 前述の方法、データ構造、およびグラフィカルユーザインターフェイスは、1つまたは複数の中央演算処理装置、1つまたは複数のコンピュータのメモリ、およびメモリに格納され、1つまたは複数の中央演算処理装置によって実行される1つまたは複数のプログラムを有する検索エンジンシステムに含まれ、および/または実行されてもよい。
[0021] 本発明の前述の実施形態およびその追加の実施形態をよりよく理解するために、以下の「発明を実施するための最良の形態」には、図全体を通じて類似する参照番号が対応する部分を示す以下の図面と併せて、参照が行われるものとする。
[0037] これ以降、実施形態について詳細に説明され、その例は添付の図面において示される。以下の詳細な説明において、本発明の十分な理解をもたらすために、多数の具体的な詳細が示される。しかし、当業者であれば、それらの具体的な詳細を使用せずに本発明を実施できることが明らかであろう。その他の例において、既知の方法、手順、構成要素、および回路については、実施形態の態様を不必要に不明瞭にすることのないように、詳細には説明されていない。
[0038] ロケーション検索クエリを実行して対応する結果をユーザに提供するためのシステムおよび方法の実施形態について説明する。この処理は、場合によっては、ジオコーディングと呼ばれることがある。市町村の番地などのロケーション検索クエリは、インターネット(ワールドワイドウェブやWWWとも呼ばれる)および/または1つまたは複数のイントラネットなど、ネットワークに結合された検索エンジンを使用してユーザから受信されてもよい。ロケーション検索クエリは、正規またはブール演算式を決定するように処理される。処理は、それぞれのロケーション検索クエリの1つまたは複数のキーワードを決定するステップと、それぞれのロケーション検索クエリから句読記号および非ロケーションターム(冠詞など)を削除するステップと、それぞれのロケーション検索クエリの1つまたは複数の条件の1つまたは複数の同義語を決定するステップとを含むことができる。同義語は、それぞれのロケーション検索クエリの1つまたは複数のタームの予め定められた省略形および/または予め定められたミススペルを含むことができる。正規表現は、キーワードの順序とは無関係であってもよい、つまりその影響を受けなくてもよい。
[0039] 正規表現は、検索エンジンにおいて地理的フィーチャドキュメントの索引と比較されうる。各地理的フィーチャドキュメントは、地理的フィーチャに対応するトークンのセットを有するが、これらはロケーション(例えば、ストリート、市町村、行政区、州、国)または地理的エンティティ(例えば、湖、川、山、大陸、海など)であってもよい。単一の地理的フィーチャは、番地のセットなど、ロケーションのセットに対応することができるが、地理的フィーチャに関連付けられている全てのロケーションは、ロケーション検索クエリと最善の一致を示すロケーションまたは地理的フィーチャを特定するコンテキストにおける「ロケーション」であると見なすことができる。「地理的フィーチャ(geographical feature)」および「ロケーション(location)」という用語は、本明細書の少なくとも一部において同義語として使用される。
[0040] 地理的フィーチャドキュメントの索引は、検索エンジンにおいて複数のコンピュータにわたり分散されてもよい。索引は、ロケーション情報および補足情報を含むことができる。ロケーション情報は、キーワード、キーワードの同義語、および複数ロケーションの隣接オブジェクトを含むことができる。補足情報は、ロケーションの緯度および経度、ならびに/あるいはストリート番号の範囲など、参照座標を含むことができる。
[0041] それぞれの正規表現にほぼ一致する地理的フィーチャドキュメントのサブセットのスコアは、コンピュータによって返されてもよい。上位N件の地理的フィーチャドキュメントの順位付けが決定されてもよい。最高スコアが、次に高いスコアの予め定められた倍数よりも大きい場合、最高スコアに対応するロケーションは、対応するロケーションのマップイメージと共にユーザに提供することができる。マップイメージは、対応するロケーションを中心とすることができ、対応するロケーションを囲む予め定められた境界ボックス、領域、またはウィンドウを含むようにサイズ変更されてもよい。代替として、最高スコアが予め定められた倍数よりも小さい場合、スコアの範囲に対応する複数のロケーションはユーザに提供されてもよい。ロケーション識別子(市町村、州、郵便番号、および/または国)および/または対応するマップイメージへのリンクなどの追加情報が供給されてもよい。
[0042] 従って、実施形態は、多種多様な形式に適応することができ、ロケーション検索クエリおよび/または結果の多義性を考慮して、ロケーション検索クエリ(ロケーション検索と呼ばれることもある)の高速処理をもたらすように並列処理を使用することができる。従って、実施形態は、ロケーション検索クエリの改良された処理をもたらすことができる。
[0043] さて、ロケーション検索プロセスに着目する。図1は、ロケーション検索プロセス100の実施形態を示すフローチャートである。以下で説明されるロケーション検索プロセス100は、特定の順序で発生するように見えるいくつかの操作を含むが、プロセス100が、連続または並行して(例えば、並列プロセッサまたはマルチスレッド環境を使用して)実行できるそれより多いかまたはそれより少ない操作を含むことができ、2つ以上の操作の順序は変更されてもよいか、および/または2つ以上の操作は単一の操作に組み合わされてもよいことは明らかであろう。
[0044] ロケーション検索クエリが受信されうる(110)。キーワードが決定されうる(112)。ロケーション検索クエリが、正規形式に変換されうる(114)。これは、1つまたは複数のロケーション以外あるいはノイズの語またはターム、句読記号、発音区別符号(つまり、特殊発音を示すために文字に追加される記号)、および/またはストリート番号をロケーション検索クエリから削除するステップを含む。ブール演算式が生成されうる(116)。ブール演算式は、ロケーション検索クエリの1つまたは複数の語または条件の同義語を含むことができる。検索クエリを正規形式に変換するステップはまた、「st.」または「st」を「street」に展開するなど、1つまたは複数の省略形を展開するステップを含むことができる。一部の実施形態において、ロケーション検索クエリのミススペルされた語または条件は(例えば、クエリ処理プロセスが決定する条件はミススペルされる可能性が高い)、対応する正しくスペルされた語を含むミススペルされた語の「同義語」でクエリを補うことによって「訂正」されてもよい。キーワードを決定するステップ(112)は、結果として得られるクエリを、キーワードの順序とは無関係にすることができる。N(例えば、10)個の最善の一致を示す地理的フィーチャドキュメントは、地理的フィーチャドキュメントデータベースから特定することができる(118)。特定されたドキュメントに対応する少なくとも1つの地理的フィーチャまたはロケーションが提供されうる(120)。あるいは、場合によっては、要求元ユーザにドキュメントが提供されないこともある。例えば、一部の実施形態において、N個の最善の一致を示す地理的フィーチャドキュメントの全てが第1のしきい値よりも小さいスコア(スコアについては以下で説明)を有する場合、地理的フィーチャまたはロケーションは特定されない。もう1つの例において、N個の最善の一致を示す地理的フィーチャドキュメントのリストは、(A)スコアが第1のしきい値よりも小さいドキュメント、および(B)SAF(以下で説明)が第2のしきい値よりも小さく、しかもスコアが第3のしきい値よりも小さい(例えば、第3のしきい値は通常第2のしきい値よりも高い(つまり、より限定的))ドキュメントを除去するようにフィルタリングされる。後者の「フィルタ」は、第1のしきい値を超えるが現在のビューポート(以下で定義される)のはるか外側にある低品位の一致を除去することで、現在のビューポート内にあるかまたはこれに近接する別の地理的フィーチャまたはロケーションが最善の一致として特定されるようにすることができる。
[0045] N個の最善の一致を示すドキュメントを特定するステップ118は、複数の計算操作を必要とする。第1に、検索クエリを満足する地理的フィーチャドキュメントが特定される118A。例えば、これは、各クエリタームと一致するトークンを有するドキュメントのリストを取り出してから、取り出したリストにブールAND演算を実行して、全てのクエリタームが一致するトークンを有するドキュメントのリスト(もしあれば)を生成することにより達成されてもよい。この状況において、各トークンは、地理的フィーチャに関連付けられている語、記号、あるいは語および/または記号の組み合わせである。人為的なミスを補うため、ドキュメントのトークンは、ドキュメントに関連付けられている地理的フィーチャを説明するさまざまなタームの種類豊富なミススペルを含むことができ、隣接するつまり近隣の地理的フィーチャ(例えば、ユーザの検索クエリが間違って隣接する市町村などを指定しているが、それ以外では地理的フィーチャに関連付けられているタームを正確にリストしている場合)の名前(およびそのミススペル)を含むことができる。もう1つの例において、検索クエリを満足するドキュメントを特定する前に、検索クエリは、非ロケーションタームと句読記号を削除することによって、最初に「書き換え」られる。オプションで、検索クエリの各々個別のタームは、タームおよび1つまたは複数の同義語を含むブールOR式に置き換えられてもよい。一部の実施形態において、同義語は、同義語のセットが事前定義されているクエリのタームごとに検索クエリに追加される。ブールOR式の一部として検索クエリに追加される「同義語」はまた、複合タームの個々の構成要素の「汎用同義語」を含むこともできる。例えば、ストリート名「N Rengstorff」の第1の構成要素の汎用同義語は「方向キーワード」であり、これはN、S、E、W、North、South、East、およびWestを含む、方向を示すキーワードと一致する。汎用同義語のもう1つの例は、ave、avenue、blvd.、boulevard、ln、lane、rd、road、st、street、rueなどのような語(またはトークン)と一致する「接辞キーワード」である。同様の汎用同義語はまた、対応する「正しい」キーワードと同じアドレス構成要素位置において、ドキュメントデータベースにトークンとして含まれる。書き換えられた検索クエリとドキュメント内の汎用同義語の間の一致は、検索クエリ内の同義語以外のキーワードとドキュメント内の同義語以外のトークンとの間の一致よりも、大幅に低いスコアを生成する。オプションとして、検索結果の品質を改善するように、事前定義されている規則に従って検索クエリにその他の変更を行うこともできる。
[0046] 次に、スコアは、特定された一致するドキュメントについて計算される(118B)。一致するドキュメントごとにスコアを生成する例示的なプロセスについては、以下で少し詳しく説明する。一般に、検索クエリに高品位の一致を持つドキュメントは、検索クエリに低品位の一致を持つドキュメントよりも高いスコアを割り当てられる。マップまたはイメージが表示される現在のビューポイントと相対的な、一致するドキュメントに対応する地理的フィーチャのロケーション、それらの地理的フィーチャの相対的重要度などの、その他の要因もまた、スコアを計算する際の要因となりうる。次いで、一致するドキュメントは、計算されたスコアに基づいて順位付けされ(118C)、上位N件のドキュメントが特定される(118D)。一部の実施形態において、ドキュメントの順位付けおよび上位N件のドキュメントの選択は、(例えば、スコアにわたり上位Nフィルタを実行することによって)単一の操作に一体化される。一部の実施形態において、上位N件のドキュメントよりも低い順位を有するドキュメントは、順位付けされない。
[0047] 図2は、ロケーション検索クエリを処理する実施形態200を示すブロック図である。「155 Abe Ave Great Neck NY」などのロケーション検索クエリ210は、具体的な実施例として使用される。ストリート番号155とピリオドは操作114の間に削除されて、その結果Abe Ave Great Neck NYとなる。操作116において、ロケーション検索クエリは、省略形(Aveなど)と同義語を展開することを含む、ブール演算式に変換することができる。結果として得られるブール演算式は、Abe AND(Ave OR Avenue OR Street OR Lane OR Court OR...)AND(Great Neck)AND(NY OR(NEW YORK))である。このブール演算式は、ロケーション検索クエリ210内の元の語またはタームの順序とは無関係である、つまりその影響を受けることはない。そのようにして、これはロケーション検索クエリ210の多種多様な形式に適応することができる。そのようなブール演算式は、分散された地理的フィーチャドキュメントデータベースを使用して、検索エンジン内で処理されうる形式を有する。これについては、以下でさらに説明する。
[0048] 地理的フィーチャドキュメントデータベースの実施形態に着目する。図3は、検索エンジン内の複数のコンピュータに格納されうる、複数の索引にわたり地理的フィーチャドキュメントを分散する実施形態300を示すブロック図である。地理的フィーチャドキュメント310は、複数の地理的フィーチャドキュメント312を含むことができる。ドキュメント312−1のような、それぞれの地理的フィーチャドキュメントは、フィーチャタイプ(ストリート、ロード、ルート、市町村、国、交差点など)、フィーチャ名(つまり、ロケーションの名前)、主要条件またはトークン(フィーチャに関連付けられている特定のキーワードなど)、近隣のフィーチャ条件またはトークン(近接または隣接する重要な目標物またはロケーションなど)、および補足情報(フィーチャの緯度および経度など)を含むことができる。補足情報は、それぞれの地理的フィーチャドキュメントのロケーションに対応するマップイメージを提示するためにマップまたはタイルサーバによって使用されてもよい。これについては、図5および図7を参照して以下でさらに説明する。
[0049] パーティショナ314は、1つまたは複数のインデクサ316を介して地理的フィーチャドキュメント310のサブセットを、複数の索引320内の索引320−1など、それぞれのインデクスに分散することができる。インデクス320−1は、インデクス320の1つのパーティションまたはサブパーティションに対応することができる(これは集合的に、地理的フィーチャドキュメントデータベース全体の逆インデクスであると見なすことができる)。インデクス320は、検索エンジンにおいて1つまたは複数のコンピュータに格納されてもよい。サブセットは、各インデクス320が、各々のロケーション検索クエリに関連付けられている処理の等価またはほぼ等価の部分を処理するように分散することができる。例えば、ドキュメント312−1は、索引320にわたりランダムに、または擬似ランダムに分散されてもよい。例えば、ハッシュ関数およびモジュロ関数は、M個のインデクサに地理的フィーチャドキュメントを分散するために使用することができ、ここでMはインデクスの数である(場合によっては、索引パーティションまたはインデクスサブパーティションと呼ばれる)。この例において、ハッシュ関数は、各地理的フィーチャドキュメント(または事前定義されたドキュメントの部分)に適用されてハッシュ値を生成し、その後「モジュロM」関数がハッシュ値に適用されて0とM−1の間の選択値を生成する。選択値は、M個のインデクサ316のうちのどのインデクサがインデクス付けのためにドキュメントを受け取るかを決定する。
[0050] それぞれの検索クエリを処理するとき、インデクス320の各々は、それぞれのクエリと一致するドキュメントのサブセット内の上位N件(上位10位など)のドキュメントのセットを提供することができる。さらに以下で説明するように、上位N件のドキュメントは、スコアの順位付けを基にすることができる。特に、スコアは、検索クエリと一致するドキュメントごとに決定されてもよい。スコアは、それぞれのロケーション検索クエリの正規および/またはブール演算式を基にすることができる。図7を参照すると、インデクス320のサブパーティションごとのクエリ処理は、それぞれのサーバ730によって処理されるが、これはクエリと一致する上位N件までのドキュメントを特定する情報を返す。アグリゲータまたはパーティションレベルクエリ実行マネージャと呼ばれることもあるサーバ726は、例えばサーバ730から返された結果の中からN件の最善の検索結果を選択することにより、サーバ730からの検索結果を結合する。階層内で次の上位レベルにあるクエリ実行マネージャ720において、全てのアグリゲータ726からの検索結果は、アグリゲータ720によって返された結果の中からN件の最善の検索結果を選択することにより結合される。より一般的には、事前定義された数の最善の検索結果は、分散された階層のレベルごとに選択され、次のレベルに伝えられる。例えば、10セットの上位10件のドキュメントが所定のレベルにおいて受信される場合、上位10件のドキュメントが決定されて伝えられてもよい。このようにして、分散される実施態様を使用して、ドキュメント312内の上位N件のドキュメントが決定および/または特定されうる。この手法は、検索エンジンのパフォーマンスを改善することができ、システムの費用および/または複雑さを軽減することができる。
[0051] 図4は、ドキュメント312−1のような、地理的フィーチャドキュメント400の実施形態を示すブロック図である。ドキュメント400は、ハイパーテキストマークアップ言語(HTML)および/または拡張マークアップ言語(XML)に適合するものであってもよい。ドキュメント400は、ロケーション(例えば、ストリート、交差点、市町村、関心地点など)のような、地理的フィーチャに対応する情報を含むことができる。一部のドキュメント400は、複数のロケーション(例えば、ストリート、市町村などの複数のセグメント)に関する情報を含むこともできる。そのようなロケーション情報は、1つまたは複数のロケーションに対応するキーワード、1つまたは複数のロケーションに関連付けられている1つまたは複数の領域、および1つまたは複数のキーワードの同義語を含むことができる。
[0052] 実施形態400に示されるように、HTMLタグ<CN>の後に続くテキストは、この場合はrouteであるロケーションのタイプを示すことができる。HTMLタグ<CNA>の後に続くテキストは、この場合はVictoria Streetであるロケーションの明示的な名前を示すことができる。HTMLタグ<CA>の後に続くテキストは、Westminster,LondonおよびEnglandなどの、ロケーションに対応するキーワードを示すことができる。HTMLタグ<A>の後に続くテキストは、Angleterre,United KingdomおよびVerenigd Koninkrijkなどの、ロケーションのキーワードおよび/または明示名の同義語を示すことができる。同義語は、外国語(つまり、キーワードの言語以外の言語)からの語を含むことができる。一部の実施形態において、同義語は、ロケーションの1つまたは複数のキーワードおよび/または明示名における省略形および/またはありがちなミススペルを含むことができる。HTMLタグ<Cn>の後に続くテキストは、ロケーションの近隣または隣接する他のロケーションまたは地域を示すことができる。この例において、付近のロケーションまたは地域は、Islington、West End、およびCovent Gardenである。
[0053] ドキュメント400のタグ付きテキストまたは情報は、情報項目またはテキスト項目またはトークンと呼ばれることもある。情報項目またはテキスト項目は、インデクサ316(図3)によって処理され、索引320を生成する。
[0054] ドキュメント400は、より少ないかまたは追加のタグを含む、より少ない情報または追加の情報を含むことができる。例えば、ドキュメント400は、マップまたはタイルサーバによって使用されうる、地理的フィーチャに対応する参照座標などの補足情報を含むことができる。1つの例示的な実施形態において、参照座標は、1つまたは複数のロケーションの緯度および経度、ならびに/あるいは1つまたは複数のロケーションを囲むストリート番号の範囲を含むことができる。その他の実施形態において、ドキュメント400内の情報の順序は、変更されてもよい。ドキュメント400内の2つ以上の項目は、単一の項目に結合されてもよい。
[0055] ドキュメント400内の補足情報の1つの具体的な例は、ストリートまたはその他のルートの補足情報である。この例において、補足情報は、各々ストリートまたはルートの一部に対応する、1つまたは複数のセグメントを含む。各セグメントは、セグメントの第1および第2の終点に対応する開始および終了のストリート番号を指定し、またセグメントの終点ごとの緯度および経度を指定する。ストリート番号を含むロケーション検索クエリがドキュメント400と一致するとき、指定されたストリート番号は、ドキュメントの補足情報内の最善の一致を示すセグメントを特定するために使用される。指定されたストリート番号が、最善の一致のセグメントの開始および終了のストリート番号の間に入る場合、ロケーション検索クエリによって指定されるロケーションの緯度および経度を決定するために線形補間が使用される。あるいは、指定されたストリート番号が、最善の一致のセグメントの開始または終了のストリート番号と一致する場合、対応する緯度および経度は、ロケーション検索クエリによって指定されるロケーションの位置決定に使用される。
[0056] 前述のように、それぞれのロケーション検索クエリに対応する正規および/またはブール演算式を、地理的フィーチャドキュメント310(図3)内のドキュメント312(図3)と比較するとき、一致の度合いを示すスコアが決定されうる。それらのスコアは、ロケーション検索クエリに対する、ドキュメント212の関連性、ひいては対応するロケーションを示すことができる。そのようにして、ロケーション検索クエリに応答して、スコアは、最善の結果、つまり最善のロケーション、または上位N件の結果のリスト、つまり上位N件のロケーションを決定するために検索エンジンによって使用されてもよい。
[0057] 一部の実施形態において、スコアは、ドキュメント312(図3)のサブセットに対してのみ決定されてもよい、つまり検索エンジンがロケーション検索クエリに対応しうるドキュメントの候補セットを決定してもよい。例示的な実施形態において、ドキュメントの候補セットへの包含の基準は、キーワードのうちの少なくとも1つがフィーチャの明示名と一致し(図4における<CNA>タグの後に続くテキスト)、正規および/またはブール演算式の要素またはタームの各々がドキュメントに生じるという要件を含むことができる。
[0058] 例示的な実施形態において、スコアは以下の式を使用して決定されてもよい。
Figure 0005325579
ただし、IRは、正規および/またはブール演算式のそれぞれのタームまたは要素「i」に対応するクエリ一致スコア(特定の候補ドキュメントに関して)であり、FRはフィーチャまたはロケーションの重要度を示す「フィーチャ順位」であり、Eは正規化値であり、Qは任意の係数である。Qは、クエリと候補ドキュメントとの一致の品位に対応してもよいか、または検索結果の品位を向上させるために使用されうるその他のメトリックに対応してもよい。Q係数の例は、図11〜図15を参照して以下で説明されるSAF係数である。もう1つの例において、Qは、SAF*Product(P)と等しく設定され、ただし、SAFは以下で説明されるスコア減衰率であり、各Pはペナルティ係数であり、Product(P)は全てのペナルティ係数の積(つまり、乗積)である。ペナルティ係数は各々、1.0のデフォルト値を有し、対応するペナルティが当該のドキュメントに適用可能である場合に、それよりも低い値(例えば、0.7など)を割り当てられる。ペナルティ係数の例には、A)ドキュメントがユーザの国またはユーザの現在のビューポート(以下で定義される)のいずれにもない場合に適用されるペナルティ係数、B)ドキュメントとクエリとの間の一致が不正確な一致である(例えば、クエリが無関係または誤った条件または記号を含み、誤った条件または記号とドキュメントの唯一の一致が、「汎用同義語」トークン(「汎用同義語」に関する上記の説明を参照)での一致であるため)場合に適用されるペナルティ係数、およびC)クエリとドキュメントとの間の一致にはキー要素が欠落している場合(例えば、クエリがストリート名トークンおよび国トークンで一致するが、ドキュメントの市町村トークンでは一致しない場合)に適用されるペナルティ係数がある。その他のペナルティ係数は、その他の実施形態において使用されてもよい。一般に、ペナルティ係数は、地理的フィーチャドキュメントと検索クエリとの間の潜在的に品位の劣る一致を示す状況に関連付けられている。その他の実施形態において、Qは使用されない、すなわち1に等しく設定される。
[0059] 一部の実施形態において、正規化値Eは、完全一致に対してはIRスコアの合計の最大値である、すなわち検索クエリにおけるキーワードのトークン量の合計である。IR値の合計は、合計一致スコア、または候補ドキュメントのIRスコアと呼ばれることもある。検索クエリの特定のキーワードに対するIRの値は、重みの積を含むことができる。重みは、正規および/またはブール演算式の対応する要素またはタームに対するトークン量、適合性スコア、および要素量を含むことができる。トークン量はタームのタイプに対応することができ、タームのタイプは、ストップワード、ストリート接辞キーワード(例えば、フランス語の「rue」のようなストリート接頭語、英語の「street」、「avenue」、「road」、「place」のようなストリート接頭語)、番号、同義語、および各事前定義済みのタームのタイプが事前定義されたトークン質量を割り当てられているその他のキーワードを含むことができる。事前定義されたトークン量値は、0から1、または0から8などのような、事前定義された範囲を有することもできる。一部の実施形態において、(「その他のキーワード」に対する)デフォルトのトークン量は1であるが、同義語、ストリート接辞キーワード、およびストップワードは全てそれよりも低いトークン量値を割り当てられる。一部の実施形態において、同義語は、ストリート接辞語よりも大きいトークン量を割り当てられる。
[0060] 適合性スコアは、テキスト一致の度合いに基づいて異なる場合があり、クエリキーワードとドキュメントの情報要素との間の完全テキスト一致には事前定義済みの最大値となる。クエリキーワードのドキュメントの情報要素との最善の一致が部分的一致でしかない(例えば、クエリキーワードがマルチワード要素のうちの1つの語しか一致しない)場合、適合性スコアは事前定義された最大値よりも小さくなり、テキスト一致の度合いを反映する。
[0061] 要素質量は、クエリキーワードと一致する(候補ドキュメントの)情報項目に関連付けられている地理的フィーチャのサイズまたはタイプに応じて変化することがある。例えば、国名である情報項目は、地方の名前(市町村名など)である情報項目よりも高い要素量を与えられることがあり、同様に、ストリート名である情報よりも高い値を与えられる。要素量はまた、クエリキーワードと一致する情報項目のタイプを反映することができる。例えば、地理的フィーチャの明示名を含む情報項目は、最高の要素量を割り当てられ、「コンテキスト」項目(例えば、ストリートが位置する市町村または国)である情報項目は、その次に高い要素量を割り当てられ、近隣市町村、地域、またはその他の地理的フィーチャの名前を含む情報項目は、最低の要素量を割り当てられることがある。一部の実施形態において、候補ドキュメントの情報項目の要素量は、2つの要素量係数の積と等しいが、その1つは、情報項目によって命名された地理的フィーチャのサイズまたはタイプに基づくものであり、その2つめは、クエリキーワードと一致する情報項目タイプ(明示名、コンテキスト、または近隣のフィーチャ)に基づくものである。一部のその他の実施形態において、候補ドキュメントの情報項目の要素量は、これらの2つの要素量係数の合計と等しい。
[0062] 候補ドキュメントのフィーチャ順位RFは、ドキュメント頻度(図3のデータベース310にあるドキュメント312でフィーチャが参照される回数)に基づくか、またはより大きいフィーチャ(つまり、地理的範囲)がより高いフィーチャ順位値を与えられるように、地理的フィーチャのサイズに基づくこともある。もう1つの実施形態において、フィーチャ順位は、少なくとも部分的に、候補ドキュメントに対応する地理的フィーチャの重要度または知名度に基づいていてもよい。例えば、候補ドキュメントに対応する地理的フィーチャの重要度または知名度は、地理的フィーチャの名前でのワールドワイドウェブ検索または他のデータベース検索によって決定されてもよい。
[0063] クエリキーワードが1つまたは複数の同義語を有する場合、IRスコアは、各同義語について、およびクエリキーワードについて(候補ドキュメントに関して)計算され、次いでそれらのIRスコアのうち最善のものが選択され、候補ドキュメントの結合IRスコアを計算するときに使用される。
[0064] 一部の実施形態において、上記のスコアリング関数は、その他の係数と相対的に1つまたは複数の係数の重要度を増加するように変更される。例えば、スコアリング関数は、以下のように変更されてもよい。
Figure 0005325579
ただし、指数Mは1よりも大きい値(例えば、2、2.5、または3)で、通常は2と5の間(2≦M≦5)であり、スコアリング関数において正規化合計一致スコアにフィーチャ順位FRおよびQ係数よりも大きい重要度を与えるようになっている。一部の実施形態において、上述のスコアリング関数は、名前が、同じタームと一致するドキュメントに亘る検索クエリにタームが配置された順序と同じ順序でタームを持つが、それらの名前に異なる順序でタームを持つドキュメントに有利になるように、変更される。例えば、合計一致スコアは、ペアワイズ一致スコアで補足されてもよいが(例えば、合計一致スコア+ペアワイズ一致スコア)、これはドキュメント名における順序付きタームペアと一致する検索クエリ内の順序付きタームペア(順序付けられた、近接のターム)の数に基づいている。
[0065] さて、ロケーション検索クエリに応答して1つまたは複数のロケーション結果をユーザに提供するためのプロセスの実施形態に着目する。第1のドキュメントの最高スコアが、上位N件中の第2のドキュメントの次に高いスコアの予め定められた倍数よりも大きい場合(例えば、次に高いスコアが最高スコアの70%未満)、第1のドキュメントに対応するロケーションがユーザに提供されうる。ドキュメントと共に格納されている補足情報を使用して、マップまたはタイルサーバはロケーションを中心とする領域のマップイメージをユーザに提供することができる。例えば、補足情報がロケーションを囲む番地を含む場合、マップイメージの中心は線形補間を使用して決定することができる。図5Aは、ユーザに提供されるマップイメージ500の実施形態を示すブロック図である。ロケーションに対応するロケーションタグ512−1は、境界ボックス510の中央に配置される。境界ボックス510は、ロケーションを取り囲む領域514が提供されるようにサイズ変更される。境界ボックス510のサイズは、地理的フィーチャまたはロケーションのサイズに基づいて決定されてもよい。さまざまな大きさのフィーチャ(市町村または国)は、さまざまな大きさの境界ボックスを持つことができる。
[0066] あるケースでは、領域内の複数の個別のロケーション(つまり、空間的に相互に切り離されている)が同じかまたはほぼ同じスコアを有することもある。例えば、複数のロケーションが、ロケーション検索クエリに対応する正規および/またはブール演算式でキーワードの全てが一致してもよい。そのような場合には、それらの結果はユーザに提供することができる。これは、マップイメージ550の実施形態を示すブロック図である図5Bに示されている。事前定義されている選択基準を満足する全てのロケーションを含む境界ボックス510が定義される。別個のロケーションに対応するロケーションタグ512は、境界ボックス510に含まれる。一部の実施形態において、タグはリンクである。タグの1つをクリックすることにより、ユーザは対応するロケーションを選択することができる。このロケーションは、マップイメージ500(図5A)のようなマップイメージと共にユーザに提示されてもよい。一部の実施形態において、最善の一致を示すロケーションのリスト520は、マップ550の横に一覧される。リスト内の各項目は、そのロケーションに対応するマップへのリンクを含むことができる。リスト520内の各項目は、対応する地理的フィーチャドキュメントからの正規名(図4の例においてCNAタグで特定される)およびコンテキストテキスト(図4の例においてCAタグで特定される)によって表すことができる。
[0067] 最高スコアが次に高いスコアの予め定められた倍数よりも大きくない場合、上位N件の範囲に対応する複数のロケーションを提供することができる。例えば、最高スコアの50%と等しいかまたはそれより大きいスコアを有するロケーションが(上位N件の結果の中から)提供されてもよい。さまざまな情報は、ロケーションと共に提供されうる。ロケーション検索クエリに応答して返される複数の検索結果を表示するための例示的なグラフィカルユーザインターフェイスが図6に示される。1つの領域610またはカラムに、最善の一致を示す地理的フィーチャまたはロケーションが一覧され、グラフィカルユーザインターフェイスの別の領域には、領域610に一覧されている最善の一致を示す地理的フィーチャまたはロケーションごとに1つずつ個別の小さいマップ620が示されている。この例では、ロケーション検索クエリは「San Antonio」であったが、これはいくつかの可能性のある妥当な回答を生成した。回答には、市町村、州、郵便番号、および/または国などの、1つまたは複数のロケーション識別子が提供されてもよい。一部の実施形態において、小さいマップ620は各々、対応するより大きいマップへのリンクを含む。同様に、一部の実施形態において、領域610に一覧されている最善の一致を示すロケーションは各々、対応するより大きいマップへのリンクを含む。回答または小さいマップの1つをクリックすると、ロケーションが、マップイメージ500(図5A)のようなマップイメージと共にユーザに提示されるようにすることができる。
[0068] ここで、前述の方法、地理的フィーチャドキュメント、およびグラフィックユーザインターフェイスを実施するための検索エンジン、クライアントコンピュータ、およびデータ構造の実施形態に着目する。図7は、クライアントシステムまたは装置900(図9)のような、1つまたは複数のクライアント710(本明細書において、クライアント装置またはクライアントシステムとも呼ばれる)から受信したロケーション検索クエリに応答してロケーション検索クエリ結果を生成する検索エンジンシステム700の実施形態を示すブロック図である。各クライアント710は、検索アシスタントモジュール930(図9)などの、検索アシスタントを有することができる。図7に示される検索エンジンシステム700のレイアウトが例示的なものに過ぎず、他の任意の適切なレイアウトまたは構成をとることができることを理解されたい。従って、検索エンジンシステム700は、これよりも少ないかまたは追加のコンポーネントまたはモジュールを含むことができ、ハードウェアおよび/またはソフトウェアで実施されてもよく、ロケーションあるいは1つまたは複数のコンポーネントまたはモジュールを変更することができる。検索エンジンシステム700は、地理的フィーチャドキュメント310(図3)など、ドキュメントのインデクスを検索するために使用される。
[0069] 検索エンジンシステム700は、通信ネットワーク712を使用してクライアント710と通信するマッピングアプリケーションサーバ714を含むことができる。通信ネットワーク712は、インターネットおよび/またはイントラネットであってもよい。マッピングアプリケーションサーバ714は、ロケーション検索クエリをクエリサーバ716に転送して、ロケーション結果をクエリサーバ716から受信することができる。マッピングアプリケーションサーバ714は、ロケーション結果の補足情報を使用して、タイルサーバ718から適切なマップイメージにアクセスし、そのようなマップイメージをロケーション結果と共にクライアント710に供給することができる。
[0070] クエリサーバ716は、ロケーション検索クエリを正規形式に変換すること、および/またはブール演算式を生成することを含む、ロケーション検索クエリのキーワードを決定することができる。正規および/またはブール演算式は、処理のためにクエリ実行マネージャ720に転送することができる。クエリ実行マネージャ720は、正規および/またはブール演算式を地理的フィーチャドキュメントデータベース722内の複数のパーティション724に供給することができる。パーティション724−Kのような、各パーティション724において、パーティションレベルクエリ実行マネージャ726は、正規および/またはブール演算式を1つのパーティションのサーバ730に分散することができる。サーバ730は、索引320(図3)を格納することができる。前述のように、地理的フィーチャドキュメントデータベース722のサーバは、階層形式でロケーション検索クエリに対応する上位N件のドキュメントを決定することができる。
[0071] 上位N件のドキュメントを受信すると、クエリ実行マネージャ720は、補足情報など、ドキュメントサーバ734内の対応する地理的またはロケーション情報にアクセスすることができる。一部の実施形態において、地理的またはロケーション情報は、地理的フィーチャドキュメントデータベース722に含まれてもよい。
[0072] クエリサーバ716のような、検索エンジンシステム700内の要素は、ロケーション検索クエリの極めて高速な処理をもたらすように、サーバのグループにわたり分散することができる。一部の実施形態において、システム700は、複数のデータセンター(例えば、さまざまな国、および/または1つまたは複数の国内のさまざまなロケーションに位置する)の、複数のロケーションにおけるクエリサーバ、クエリ実行マネージャ、タイルサーバ、および地理的フィーチャドキュメントデータベースのレプリカを含むことができる。クライアント710の1つにおけるユーザによって検索エンジンシステム700にサブミットされたロケーション検索クエリは、各データセンターの現在のロード、地理的位置および/または稼働状況に基づいて、ドメインネームシステム(DNS)を使用して適切なデータセンターにルーティングされる。
[0073] 各バックエンドは、好ましくは、通信ネットワーク712に結合された、クエリサーバ716のような複数のクエリサーバを含む。通信ネットワーク712は、インターネットであってもよいが、任意のローカルエリアネットワーク(LAN)および/またはワイドエリアネットワーク(WAN)であってもよい。一部の実施形態において、各クエリサーバ716は、ロケーション検索クエリ要求を受信して、Webページの形式で検索ロケーション結果をHTTP、XML、または類似したプロトコルを介して配信するサーバである。あるいは、クエリサーバ716がLAN内、つまり内部的に使用され、公開ではない場合、クエリサーバはイントラネットサーバであってもよい。クエリサーバ716のようなクエリサーバは、ドキュメントインデクスを検索すること、検索結果を分析してフォーマットすることを含む検索プロセスを制御するように構成される。一部の実施形態において、バックエンドは、クエリサーバ716のような複数のクエリサーバに結合された、複数のクエリ実行マネージャ720を含む。
[0074] 図8は、検索エンジン800の実施形態を示すブロック図である。検索エンジン800は、少なくとも1つのデータプロセッサまたは中央演算処理装置(CPU)810、他のコンピュータ、サーバおよび/またはクライアントと通信するための通信またはネットワークインターフェイス820、メモリ822、およびこれらのコンポーネントを相互に結合する1つまたは複数の信号線812を含むことができる。1つまたは複数の信号線812は、1つまたは複数の通信バスを構成することができる。
[0075] メモリ822は、1つまたは複数の磁気ディスク記憶装置などの、高速ランダムアクセスメモリおよび/または不揮発性メモリを含むことができる。メモリ822は、基本システムサービスを処理するためおよびハードウェア依存タスクを実行するための手順を含む、LINUX、UNIX(登録商標)、またはWINDOWS(登録商標)などのオペレーティングシステム(または命令のセット)824を格納することができる。メモリ822はまた、ネットワーク通信モジュール826の通信手順(または命令のセット)を格納することもできる。通信手順は、クライアント710(図7)などのクライアント、および検索エンジンシステム700(図7)のその他のサーバおよびコンピュータと通信するために使用される。
[0076] メモリ822はまた、クエリサーバ716(図7)に対応するクエリサーバモジュール(または命令のセット)、地理的フィーチャドキュメントデータベース722、ドキュメント832、および選択された結果836を格納することもできる。クエリサーバモジュール716は、前述のように、受信した検索クエリを書き換えることができるキーワードプロセッサ828を含むことができる。地理的フィーチャドキュメントデータベース722は、複数の索引830を含むことができる。ドキュメント832は、地理的またはロケーション情報を含む複数のドキュメント834を含むことができる。選択された結果836は、1つまたは複数のロケーション検索クエリに対する結果838を含むことができる。
[0077] 図8(図7と同様に)は検索エンジン800を複数の別個の項目として示しているが、図8は、本明細書に説明される実施形態の構造概要としてではなく、検索エンジンシステムに存在しうるさまざまなフィーチャの機能的な説明を目的としている。実際に、また当業者に認識されるように、検索エンジン800の機能は、それらの機能の特定のサブセットを実行するサーバのさまざまなグループと共に、多数のサーバまたはコンピュータにわたり分散されてもよい。図8において別々に示されている項目は結合されてもよく、また一部の項目は分離されてもよい。例えば、図8において別々に示されている一部の項目は、単一のサーバ上で実施されてもよく、また単一の項目は1つまたは複数のサーバによって実施されてもよい。検索エンジンシステム内の実際のサーバの数、およびそれらの間でフィーチャが割り当てられる方法は、実施態様ごとに異なり、部分的には、システムに格納される情報量および/またはシステムがピーク使用期間中および平均使用期間中に処理する必要のあるデータトラフィック量によって決まることもある。
[0078] 図9は、クライアントコンピュータ、装置、またはシステム900の実施形態を示すブロック図である。クライアントシステム900は、デスクトップコンピュータ、ラップトップコンピュータ、携帯情報端末(PDA)、携帯電話、パーソナルナビゲーション装置などであってもよい。クライアントシステム900は一般に、1つまたは複数の処理装置(CPU)910、ユーザインターフェイス914、1つまたは複数のネットワークまたはその他の通信インターフェイス912、メモリ922、およびこれらのコンポーネントを結合する1つまたは複数の信号バス920を含む。ユーザインターフェイス914は、1つまたは複数のキーボード918、1つまたは複数のディスプレイ916、および/またはマウスのような1つまたは複数のポインタ(図示せず)を含むことができる。メモリ922は、DRAM、SRAM、DDR RAMまたは他のランダムアクセスソリッドステートメモリデバイスなどのランダムアクセスメモリを含むことができ、1つまたは複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリデバイス、または他の不揮発性ソリッドステート記憶装置などの不揮発性メモリを含むことができる。通信バス920は、システムコンポーネントを相互接続して通信を制御する回路(チップセットと呼ばれることもある)を含むことができる。メモリ922は、中央演算処理装置910から離れて位置する大容量記憶ストレージを含むことができる。
[0079] 一部の実施形態において、メモリ922は、オペレーティングシステム(または命令のセット)924、ネットワーク通信モジュール(または命令のセット)926、ブラウザ/ツールモジュール928、および/または検索アシスタントモジュール(または命令のセット)930を含むことができる。検索アシスタントモジュール930は、入力および選択監視モジュール(または命令のセット)932、伝送モジュール(または命令のセット)934、検索結果受信モジュール(または命令のセット)936、および/または表示モジュール(または命令のセット)を含むことができる。
[0080] LINUX、UNIX(登録商標)、またはWINDOWS(登録商標)などのオペレーティングシステム924は、さまざまな基本システムサービスを処理するためおよびハードウェア依存タスクを実行するための手順(または命令のセット)を含むことができる。ネットワーク通信モジュール926は、1つまたは複数の通信ネットワークインターフェイス912、およびインターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、大都市圏ネットワークなどの1つまたは複数の通信ネットワークを介して、クライアントシステム900を他のコンピュータ(例えば、他のクライアントコンピュータおよび/または検索エンジン)に接続するために使用されてもよい。
[0081] ブラウザ/ツールモジュール928は、クライアントシステム900のユーザが、1つまたは複数の通信ネットワーク上の1つまたは複数のホスト(1つまたは複数のWebサイトおよび/またはWebページなど)と通信および/または情報を交換するために使用することができるWebブラウザであってもよい。例えば、ユーザは、ブラウザ/ツールモジュール928を使用して、インターネットを利用する(例えば、Webページおよび/またはWebサイトを表示する)ことができる。
[0082] 検索アシスタントモジュール930(例えば、ブラウザ拡張機能、ブラウザツールバー、または検索エンジンWebページに埋め込まれている命令)は、検索エンジンを使用してロケーション検索クエリなどの1つまたは複数の検索クエリを実行するため、および1つまたは複数のロケーション、1つまたは複数のマップイメージ、1つまたは複数のURLおよび/またはハイパーリンクを含む対応する検索結果を受信するために、ユーザによって使用されてもよい。特に、入力および選択監視モジュール932はユーザ入力を監視することができ、伝送モジュール934は検索クエリを検索エンジンに送信することができ、検索結果受信モジュール936は検索エンジンから検索結果を受信することができ、表示モジュール938は、1つまたは複数のドキュメントの順位および/または検索クエリに対応する特定されたコンテンツを含むドキュメントのロケーションなどの検索結果を表示することができる(または、ブラウザモジュール928によって表示するために検索結果のレンダリングを補助することができる)。ユーザは、ユーザインターフェイス914およびブラウザ/ツールモジュール928を使用して、検索結果の1つまたは複数のドキュメントおよび/またはドキュメントのロケーションにアクセスまたは選択することができる。例えば、ユーザは、ポインタ(図示せず)を使用してハイパーリンクをクリックしてもよい。
[0083] クライアントシステム900がローカルサーバコンピュータに結合される実施形態において、メモリ922内の1つまたは複数のモジュールおよび/またはアプリケーションは、通常はクライアントシステム900とは異なるロケーションにあるサーバコンピュータに格納されてもよい。上記の特定されたモジュールおよびアプリケーションは各々、前述の1つまたは複数の機能を実行するために命令のセットに対応する。これらのモジュール(つまり命令のセット)は、別個のソフトウェアプログラム、プロシージャ、またはモジュールとして実施される必要はない。さまざまなモジュールおよびサブモジュールは、再配置および/または結合することができる。メモリ922は、追加のモジュールおよび/またはサブモジュール、あるいはより少ないモジュールおよび/またはサブモジュールを含むことができる。例えば、検索アシスタントモジュール930は、ブラウザ/ツールモジュール928に組み込まれてもよい。従って、メモリ922は、上記の特定されたモジュールおよび/またはサブモジュールのサブセットまたはスーパーセットを含むことができる。
[0084] 図10は、地理的フィーチャドキュメントのデータ構造1000の実施形態を示すブロック図である。地理的フィーチャドキュメントデータ構造1000は、地理的フィーチャドキュメント722を含むことができる。地理的フィーチャドキュメント722は、複数のコンピュータ上の複数のパーティションにわたり分散される複数のレコード1010を含むことができる。各レコード1010は、それぞれの地理的フィーチャドキュメントに対応することができる。前述のように、地理的フィーチャドキュメントは、地理的フィーチャまたはロケーションに対応することができる。レコードは、キーワード1012、1つまたは複数のキーワードの同義語1014、関連する語1016(ロケーションが生じる市町村など)、および/または隣接するオブジェクト1018を含むことができる。地理的フィーチャドキュメントデータ構造1000は、より少ないかまたは追加の要素を含むことができ、2つ以上の要素は結合されてもよく、1つまたは複数の要素の位置は変更されてもよい。例えば、それぞれのレコード1010はさらに、1つまたは複数のロケーションの緯度および経度情報またはレコード1010によって表される地理的フィーチャに関連付けられている境界ボックスを含む補足情報1018を含むことができる。
ロケーション検索クエリからの結果のビューポート関連のスコアリング
[0085] 例えば、オンラインマッピングプログラムまたはサービスを使用して、ユーザが一連のロケーション検索を実行するとき、ユーザは多くの場合、直前のロケーション検索で検出された地理的フィーチャの近隣にある地理的フィーチャ(例えば、市町村、ストリート、特定のアドレスなど)を検索している。例えば、ユーザは、特定の市町村の第1の地理的フィーチャを検索した後、同じ市町村内、または周辺または隣接する市町村内の第2の地理的フィーチャをしばしば検索する。説明を容易にするため、地理的フィーチャは「ロケーション」と呼ばれることもあるが、(特定の番地とは対照的に)ストリートなどの一部の地理的フィーチャが多数のロケーションに対応することを理解されたい。
[0086] 図11を参照すると、以下の説明において、「ビューポート」または「現在のビューポート」は、ユーザのクライアント装置またはシステムに現在表示されている地理的領域に対応する。例えば、ビューポートは、直前のロケーション検索に応答して(例えば、オンラインマッピングプログラムまたはサービスにより)生成された表示ウィンドウであってもよいか、またはユーザのクライアントシステム上に表示されるビューポートの矩形の境界を示す円形領域であってもよい。従って、ビューポートは、矩形または円形の形状であってもよい。これ以降この説明において、ビューポートは、形状が円形であり、ユーザのクライアントシステムに表示されるビューポートの矩形を取り囲み、これを含むものと仮定する。加えて、ビューポートは、ビューポートをユーザが指定した領域に変更するユーザアクション(例えば、パンおよび/またはズームコマンドまたはアクション)の結果生じることもある。
[0087] ユーザが、複数の結果を生じるロケーションクエリを提示する場合、結果は、ビューポート外部のロケーションよりも現在のビューポート内の結果(つまりロケーション)に有利になるように、およびビューポートから遠く離れたロケーションよりもビューポートに近い(例えば、本明細書では「ビューポート周辺領域」と呼ばれる、ビューポートを取り囲む周辺領域内の)ロケーションに有利になるようにスコア付けされてもよい。1つの実施形態において、「ドキュメント」(ロケーション記述ドキュメントまたはロケーション記述データベースエントリと呼ばれることもある)をスコア付けする上記スコアリング関数は、スコア減衰率(SAF)を含むように変更されるが、これは現在のビューポートを交差する結果に有利になるように、およびビューポート領域およびビューポート周辺領域(つまりビューポート周辺領域の外部にある)のいずれも交差しない結果よりもビューポートを取り囲むビューポート周辺領域を交差する結果に有利になるように、スコアにバイアスをかけるようになっている。この状況において、「交差(intersect)」という用語は、検索結果によって特定された地理的フィーチャの少なくとも一部が特定の領域内に入ることを意味する。
[0088] 図12および図13に示すように、地球の表面上の領域のサイズおよび距離は、それらの領域または距離によって範囲が定められる地球の表面上の弧の角度の大きさである「角距離」に関して測定することができる。角距離は、弧度または度の単位で測定されてもよい。正規化角距離は、2πなどの正規化係数で除算され、最大角距離が1(または他の任意の事前定義された値)であり、最小角距離が0であるようになっている。図12および図13において、X1は、ビューポート領域の半径R1の角距離に基づいたビューポートの正規化サイズを表す。X2は、ビューポート周辺領域の半径R2の角距離に基づいたビューポート周辺領域の正規化サイズである。X2−X1は、ビューポート周辺領域の幅を表す。X3は、地理的フィーチャと最も近接するビューポート領域の端との間の正規化角距離、あるいはより一般的には、地理的フィーチャとビューポート領域との間の距離を表す。Xは、(A)地理的フィーチャとビューポート領域間の距離と(B)ビューポート周辺領域の幅の比率を表す。
[0089] 1つの実施形態において、ビューポート周辺領域のサイズは、ビューポート領域のサイズによって決まる。特に、ビューポート領域の半径が小さい(例えば、数キロメートル未満)場合、ビューポート周辺領域の半径は、SkirtFactorを構成可能なパラメータとして、ビューポート領域の半径の1+SkirtFactor倍もの大きさである。ビューポート領域の半径が大きい(例えば、数百キロメートルより大きい)場合、ビューポート周辺領域の半径は、ビューポート領域の半径とほぼ同じである。例示的な実施形態において、ビューポート周辺領域の半径は以下のように定義される。
SkirtRegionRadius=ViewportRadius×(1+SkirtFactor×EV)
EV=A+B×e−M×X1
ただし、AおよびBは、X1がゼロと等しい場合(つまり、ビューポート領域が非常に小さい場合)に、EVがその最大値1となり、X1がその最大値1と等しい(地球全体をカバーするビューポート領域に対応する)場合に、EVがその最小値、0と等しくなるように選択される。SkirtFactorは、構成可能な倍率である。SkirtFactorの例示的な値は10である。その他の実施形態において、SkirtFactorは、4から20の間の値と等しい。Mは、構成可能な指数関数的比率係数である。Mの例示的な値は50である。その他の実施形態において、Mは、10から200の間の値と等しい。加えて、Mの値は、角距離X1の倍率変更によって決まる。前述の制約に従ってAおよびBについて解くと、EVの式は以下のようになる。
Figure 0005325579
M=50のとき、e−Mはゼロに非常に接近し(e−50≒1.9*10−22)、EVはe−M*X1とほぼ等しい。
[0090] 例示的な実施形態において、スコアは、スコアリング関数に従って決定されてもよい。
Figure 0005325579
ただし、IRは、正規および/またはブール演算式のそれぞれの条件または要素「i」に対応するクエリ一致スコア(特定の候補ドキュメントに関して)であり、FRはフィーチャまたはロケーションの重要度を示す「フィーチャ順位」であり、Eは正規化値であり、SAFは前述のスコア減衰率である。IR、FR、およびEパラメータについては上記で詳細に説明されており、その説明はここで説明されるスコアリング関数にも同等に適用可能である。特定の候補ドキュメント(または地理的フィーチャ)のIR値の合計は候補の情報検索スコアまたはクエリ一致スコアと見なすことができ、スコアリング関数の他の全てのパラメータは、検索結果が順位付けされる方法を改良するように(つまり、最上位に順位付けされる検索結果がユーザによって検索されている地理的フィーチャに対応する可能性が最も高い検索結果であるように)、追加の係数に従ってスコアを倍率変更、増大、または減衰するためのものであることに留意されたい。
[0091] 例示的な実施形態において、特定の地理的フィーチャのSAFは、以下の関数に従って決定される。
SAF=C+D×e−K×X
ただし、Kは指数関数的スケーリング係数であり、Xは、図13を参照して上記で説明されているように、(A)地理的フィーチャとビューポート領域間の距離(つまり、ビューポート領域の最近の端)と(B)ビューポート周辺領域の幅の比率である。上記の式において、CおよびDは、Xが1と等しい場合(つまり、地理的フィーチャが周辺領域の最も外側部分にある場合)に、SAFがその最小値と等しくなり、Xがゼロと等しい場合(つまり地理的フィーチャがビューポート領域とビューポート周辺領域間の線または境界を交差するかまたは隣接している場合)に、その最大値1と等しくなるように選択される値である。前述の制約に従ってCおよびDについて解くと、SAFの式は以下のようになる。
Figure 0005325579
K=3のとき、e−Kは0.5にほぼ等しく、1−e−Kは0.95にほぼ等しい。MinScore=0.2かつK=3のとき、ビューポート周辺領域を交差する(ただしビューポート領域は交差しない)地理的フィーチャについて、SAFは0.158+0.842*e−3Xにほぼ等しい。SAFは、この式によれば、X=0のとき1.0に等しく、X=1のとき0.2にほぼ等しいことに留意されたい。前述のように、SAFは、ビューポート領域を交差する地理的フィーチャについては1に等しく、ビューポート領域およびビューポート周辺領域のいずれも交差しない地理的フィーチャについてはMinScore(例えば、0.2)に等しい。その他の実施形態において、MinScoreは、0.1から0.5の間の値であり、Kは、2と10の間の値である。
[0092] 本発明の具体的な実施形態についての上記の説明は、例示と説明を目的として提示されている。これらは、包括的であること、または本発明を開示されている厳密な形態に限定することを意図されていない。そうではなく、前述の教示を考慮して数多くの変更および変更が可能であることを理解されたい。実施形態は、本発明の原理およびその実際の適用を最もよく説明し、それにより当業者が本発明およびさまざまな実施形態を考案される特定の用途に適したさまざまな変更を加えて最もよく利用できるようにするために選択され説明されたものである。
ロケーション検索プロセスの実施形態を示すフローチャートである。 ロケーション検索クエリを処理する実施形態を示すブロック図である。 複数の索引にわたり地理的フィーチャドキュメントを分散する実施形態を示すブロック図である。 地理的フィーチャドキュメントの実施形態を示すブロック図である。 マップイメージの実施形態を示すブロック図である。 マップイメージの実施形態を示すブロック図である。 ロケーション検索クエリに応答して返される結果の実施形態を示すブロック図である。 検索エンジンシステムの実施形態を示すブロック図である。 検索エンジンの実施形態を示すブロック図である。 クライアントシステムの実施形態を示すブロック図である。 地理的フィーチャドキュメントのデータ構造の実施形態を示すブロック図である。 現在の表示ウィンドウに関して地理的領域のセットを示す図である。 地球の表面上の距離および領域が正規化角距離としてどのように測定され、ビューポート周辺領域内の地理的フィーチャのロケーションが比率値にどのように変換されるかを示す図である。 地球の表面上の距離および領域が正規化角距離としてどのように測定され、ビューポート周辺領域内の地理的フィーチャのロケーションが比率値にどのように変換されるかを示す図である。 ビューポート領域の半径に従って周辺領域の半径を決定する関数のグラフを示す図である。 現在のビューポート領域および周辺領域に相対的な地理的フィーチャのロケーションに従ってスコア減衰率を割り当てるために使用される関数のグラフを示す図である。

Claims (24)

  1. サーバシステムにおいて実施される、ロケーション検索を実行するための方法であって、
    前記サーバシステムが、
    前記サーバシステムとは別個のクライアントシステムからロケーション検索クエリを受信するステップと、
    前記ロケーション検索クエリに対応するキーワードを決定するステップと、
    前記ロケーション検索クエリの前記キーワードに対応する1つまたは複数のドキュメントを特定するように、1つまたは複数のインデックスを参照して、地理的フィーチャドキュメントデータベースにおけるドキュメントのセットを検索するステップと、
    前記特定された1つまたは複数のドキュメントに対応する1つまたは複数の地理的ロケーションにおける1つまたは複数のロケーションタグを含む地理的マップを、前記クライアントシステムにて表示されるよう、前記クライアントシステムに提供するステップと、を実行し、
    前記地理的フィーチャドキュメントデータベースにおけるドキュメントは、1つまたは複数のドキュメントを含み、該1つまたは複数のドキュメントは、前記1つまたは複数のインデックスに配置されてなり、
    各前記ドキュメントは、地理的ロケーションにおける地理的フィーチャに対応し、前記ロケーション検索クエリの前記キーワードに一致するタームを含み、前記対応する地理的フィーチャの地理的ロケーションに関する情報を含む、
    方法。
  2. 前記特定された1つまたは複数のドキュメントの各ドキュメントは、前記検索クエリの前記決定されたキーワードに対応するトークンを有する、請求項1に記載の方法。
  3. 前記キーワードを決定する前記ステップは、前記ロケーション検索クエリから句読記号および非ロケーションタームを削除するステップを含む、請求項1に記載の方法。
  4. 前記キーワードは、前記ロケーション検索クエリにおける1つまたは複数のタームの1つまたは複数の同義語を含む、請求項1に記載の方法。
  5. 前記1つまたは複数のドキュメントを特定する前記ステップは、前記キーワードに対応する正規表現を決定するステップを含む、請求項1に記載の方法。
  6. 記地理的フィーチャは、前記クライアントシステムにおける前記地理的マップ上に表示される、請求項1に記載の方法。
  7. 前記複数のドキュメントは、前記地理的フィーチャに対応する地理的参照座標を含む、請求項6に記載の方法。
  8. 前記1つまたは複数のドキュメントを特定する前記ステップは、前記1つまたは複数の各ドキュメントのスコアを決定するステップを含む、請求項1に記載の方法。
  9. それぞれのスコアは、複数のドキュメント内の前記キーワードの頻度、前記キーワードのうちの1つまたは複数を持つそれぞれのドキュメント内の1つまたは複数の語の一致、および前記キーワードに対応する地理的フィーチャのサイズに従う、請求項8に記載の方法。
  10. 前記提供するステップは、対応するドキュメントの最高スコアが前記1つまたは複数のドキュメントの上位N件中の次位のドキュメントについての次に高いスコアの予め定められた倍数よりも大きい場合に、1つの地理的ロケーションを含む、請求項8に記載の方法。
  11. 前記提供するステップは、前記1つまたは複数のドキュメントに対応する地理的ロケーションの上位N件を含み、前記上位N件は予め定められた範囲内のスコアを有するドキュメントを含む、請求項8に記載の方法。
  12. 前記上位N件の各地理的ロケーションは、ロケーション識別子を含む、請求項11に記載の方法。
  13. 前記上位N件の前記各地理的ロケーションは、地理的マップイメージへの対応するリンクを含む、請求項11に記載の方法。
  14. 前記地理的マップは、前記1つまたは複数の地理的ロケーションのそれぞれを中心とし、前記それぞれの地理的ロケーションの周りの予め定められたサイズより小さい領域を含む、請求項1に記載の方法。
  15. 前記1つまたは複数の地理的ロケーションは、全ての前記キーワードを共通に持つ領域における2つ以上の別個の地理的ロケーションを含み、前記地理的マップは、前記2つ以上の地理的ロケーションに対応するタグを含む、請求項14に記載の方法。
  16. 前記1つまたは複数のドキュメントを特定するステップは、前記キーワードの順序とは無関係である、請求項1に記載の方法。
  17. プログラムを実行する1つまたは複数の中央演算処理装置と、
    メモリと、
    前記メモリに格納され、前記1つまたは複数の中央演算処理装置によって実行されるプログラムと、
    を備える検索エンジンシステムであって、
    前記プログラムは、
    前記検索エンジンシステムとは別個のクライアントシステムからロケーション検索クエリを受信するための命令と、
    前記ロケーション検索クエリに対応するキーワードを決定するための命令と、
    前記ロケーション検索クエリの前記キーワードに対応する1つまたは複数のドキュメントを特定するように、1つまたは複数のインデックスを参照して、地理的フィーチャドキュメントデータベースにおけるドキュメントの集合を検索するための命令と、
    前記特定された1つまたは複数のドキュメントに対応する1つまたは複数の地理的ロケーションにおける1つまたは複数のロケーションタグを含む地理的マップを、前記クライアントシステムで表示されるよう、前記クライアントシステムに提供するための命令と、を含み、
    前記地理的フィーチャドキュメントデータベースにおけるドキュメントは、1つまたは複数のドキュメントを含み、該1つまたは複数のドキュメントは、前記1つまたは複数のインデックスに配置されてなり、
    各前記ドキュメントは、地理的ロケーションにおける地理的フィーチャに対応し、前記ロケーション検索クエリの前記キーワードに一致するタームを含み、前記対応する地理的フィーチャの地理的ロケーションに関する情報を含む、
    検索エンジンシステム。
  18. コンピュータシステムの1つまたは複数のプロセッサにより実行される1つまたは複数のプログラムを格納するコンピュータ可読記憶媒体であって、前記1つまたは複数のプログラムは、
    前記コンピュータシステムとは別個のクライアントシステムからロケーション検索クエリを受信するための命令と、
    前記ロケーション検索クエリに対応するキーワードを決定するための命令と、
    前記ロケーション検索クエリの前記キーワードに対応する1つまたは複数のドキュメントを特定するように、1つまたは複数のインデックスを参照して、地理的フィーチャドキュメントデータベースにおけるドキュメントのセットを検索するための命令と、
    前記特定された1つまたは複数のドキュメントに対応す1つまたは複数の地理的ロケーションにおける1つまたは複数のロケーションタグを含む地理的マップを、前記クライアントシステムで表示されるよう、前記クライアントシステムに提供するための命令と、を含み、
    前記地理的フィーチャドキュメントデータベースにおけるドキュメントは、1つまたは複数のドキュメントを含み、該1つまたは複数のドキュメントは、前記1つまたは複数のインデックスに配置されてなり、
    各前記ドキュメントは、地理的ロケーションにおける地理的フィーチャに対応し、前記ロケーション検索クエリの前記キーワードに一致するタームを含み、前記対応する地理的フィーチャの地理的ロケーションに関する情報を含む、
    コンピュータ可読記憶媒体。
  19. プログラムを実行する処理手段と、
    メモリと、
    前記メモリに格納され、前記処理手段によって実行されるプログラムと、
    を備える検索エンジンシステムであって、
    前記プログラムは、
    前記検索エンジンシステムとは別個のクライアントシステムからロケーション検索クエリを受信するための命令と、
    前記ロケーション検索クエリに対応するキーワードを決定するための命令と、
    前記ロケーション検索クエリの前記キーワードに対応する1つまたは複数のドキュメントを特定するように、1つまたは複数のインデックスを参照して、地理的フィーチャドキュメントデータベースにおけるドキュメントのセットを検索するための命令と、
    前記特定された1つまたは複数のドキュメントに対応す1つまたは複数の地理的ロケーションにおける1つまたは複数のロケーションタグを含む地理的マップを、前記クライアントシステムで表示されるよう、前記クライアントシステムに提供するための命令と、
    を含み、
    前記地理的フィーチャドキュメントデータベースにおけるドキュメントは、1つまたは複数のドキュメントを含み、該1つまたは複数のドキュメントは、前記1つまたは複数のインデックスに配置されてなり、
    各前記ドキュメントは、地理的ロケーションにおける地理的フィーチャに対応し、前記ロケーション検索クエリの前記キーワードに一致するタームを含み、前記対応する地理的フィーチャの地理的ロケーションに関する情報を含む、
    検索エンジンシステム。
  20. サーバのメモリに格納され、前記サーバとは別個のクライアントシステムから受信したロケーション検索クエリの実行に使用するためのデータ構造であって、
    地理的フィーチャに関する情報を含む、地理的フィーチャドキュメントデータベースにおける複数のドキュメントを含み、
    前記複数のドキュメント内のそれぞれのドキュメントは、前記検索クエリの実行において参照される1つまたは複数のインデックスに配置されてなり、
    前記それぞれのドキュメントは、地理的ロケーションにおける地理的フィーチャに対応し、かつ、地理的ロケーション情報および補足情報を含み、
    前記地理的ロケーション情報は1つまたは複数の地理的ロケーションに対応するキーワード、前記1つまたは複数の地理的ロケーションに関連付けられている1つまたは複数の領域、および前記キーワードの同義語を含み、
    前記補足情報は前記1つまたは複数の地理的ロケーションに対応する参照座標を含む、データ構造。
  21. 前記参照座標は、前記1つまたは複数の地理的ロケーションの緯度および経度を含む請求項20に記載のデータ構造。
  22. 前記参照座標は、前記1つまたは複数の地理的ロケーションを囲む領域を含み、前記領域は予め定められたサイズよりも小さい請求項20に記載のデータ構造。
  23. 前記データ構造は、ハイパーテキストマークアップ言語(HTML)に適合する請求項20に記載のデータ構造。
  24. 前記それぞれのドキュメントの前記地理的ロケーション情報は、ロケーション検索クエリ内のタームの順序の影響を受けない請求項20に記載のデータ構造。
JP2008552594A 2006-01-27 2007-01-26 ロケーション検索クエリのための地理コーディング Active JP5325579B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US76316806P 2006-01-27 2006-01-27
US60/763,168 2006-01-27
US86954906P 2006-12-11 2006-12-11
US60/869,549 2006-12-11
PCT/US2007/061133 WO2007087629A1 (en) 2006-01-27 2007-01-26 Geographic coding for location search queries

Publications (3)

Publication Number Publication Date
JP2009524893A JP2009524893A (ja) 2009-07-02
JP2009524893A5 JP2009524893A5 (ja) 2010-03-04
JP5325579B2 true JP5325579B2 (ja) 2013-10-23

Family

ID=37887978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008552594A Active JP5325579B2 (ja) 2006-01-27 2007-01-26 ロケーション検索クエリのための地理コーディング

Country Status (5)

Country Link
EP (2) EP2538356A1 (ja)
JP (1) JP5325579B2 (ja)
CN (2) CN101410833B (ja)
CA (1) CA2640365C (ja)
WO (1) WO2007087629A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7987195B1 (en) 2008-04-08 2011-07-26 Google Inc. Dynamic determination of location-identifying search phrases
US9092454B2 (en) * 2008-04-22 2015-07-28 Microsoft Technology Licensing, Llc Discovering co-located queries in geographic search logs
CN101661461B (zh) * 2008-08-29 2016-01-13 阿里巴巴集团控股有限公司 确定文档中核心地理信息的方法、系统
CN101546342B (zh) * 2009-05-08 2012-07-04 阿里巴巴集团控股有限公司 实现搜索服务的方法与系统
JP2011124287A (ja) 2009-12-08 2011-06-23 Sony Corp 発電量予測装置、発電量予測システム、発電量予測方法及びコンピュータプログラム
US20120158712A1 (en) 2010-12-16 2012-06-21 Sushrut Karanjkar Inferring Geographic Locations for Entities Appearing in Search Queries
US8688366B2 (en) * 2011-07-19 2014-04-01 Navteq B.V. Method of operating a navigation system to provide geographic location information
US8806322B2 (en) * 2011-11-28 2014-08-12 Google Inc. System and method for obtaining a structured address by geocoding unstructured address information
EP2883152A4 (en) * 2012-08-10 2016-03-16 Nokia Technologies Oy METHOD AND DEVICE FOR PROVIDING A CROWD SOURCE-FINANCED GEOCODING
US8965900B2 (en) * 2012-09-14 2015-02-24 Bentley Systems, Incorporated Efficiently finding spatially scored best entities
CA2906767A1 (en) * 2013-03-15 2014-09-18 The Dun & Bradstreet Corporation Non-deterministic disambiguation and matching of business locale data
CN104375992B (zh) * 2013-08-12 2018-01-30 中国移动通信集团浙江有限公司 一种地址匹配的方法和装置
US20160132567A1 (en) * 2014-11-12 2016-05-12 Microsoft Corporation Multi-search and multi-task in search
CN106855868A (zh) * 2015-12-09 2017-06-16 北京奇虎科技有限公司 地图搜索结果的显示方法及装置
JP7464462B2 (ja) * 2016-04-28 2024-04-09 オナー デバイス カンパニー リミテッド ヒューマンコンピュータインタラクション方法およびその装置
JP6725693B2 (ja) 2016-04-28 2020-07-22 華為技術有限公司Huawei Technologies Co.,Ltd. ヒューマンコンピュータインタラクション方法およびその装置
US11574074B2 (en) * 2017-12-11 2023-02-07 Digital Guardian Llc Systems and methods for identifying content types for data loss prevention
US11531779B2 (en) 2017-12-11 2022-12-20 Digital Guardian Llc Systems and methods for identifying personal identifiers in content
CN112115100A (zh) * 2019-06-20 2020-12-22 珠海金山办公软件有限公司 一种文档搜索方法、系统、存储介质和终端
CN117435823B (zh) * 2023-12-19 2024-03-29 北京智网易联科技有限公司 基于网格编码的时空数据服务方法及工业互联网平台

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990069299A (ko) * 1998-02-06 1999-09-06 윤종용 특정 위치에 속한 정보를 찾는 웹 검색 방법
JP2000200282A (ja) * 1999-01-06 2000-07-18 Seiko Epson Corp 情報検索方法及び情報検索システム並びに情報検索処理プログラムを記録した記録媒体
EP3367268A1 (en) * 2000-02-22 2018-08-29 Nokia Technologies Oy Spatially coding and displaying information
WO2001065410A2 (en) * 2000-02-28 2001-09-07 Geocontent, Inc. Search engine for spatial data indexing
US7606798B2 (en) * 2003-09-22 2009-10-20 Google Inc. Methods and systems for improving a search ranking using location awareness
JP4153887B2 (ja) * 2004-03-19 2008-09-24 株式会社日立製作所 移動体ナビゲーション装置、および、移動体ナビゲーション装置における目的地の検索方法

Also Published As

Publication number Publication date
CA2640365A1 (en) 2007-08-02
CN102354312B (zh) 2014-11-05
CA2640365C (en) 2015-03-17
CN101410833B (zh) 2011-09-28
EP1979841A1 (en) 2008-10-15
CN101410833A (zh) 2009-04-15
EP2538356A1 (en) 2012-12-26
CN102354312A (zh) 2012-02-15
WO2007087629A1 (en) 2007-08-02
JP2009524893A (ja) 2009-07-02

Similar Documents

Publication Publication Date Title
JP5325579B2 (ja) ロケーション検索クエリのための地理コーディング
US7912837B2 (en) Geographic coding for location search queries
US7792883B2 (en) Viewport-relative scoring for location search queries
US8463774B1 (en) Universal scores for location search queries
JP5296147B2 (ja) 地理的関連性に従う文書のインデックス付け
US20170132238A1 (en) Indicators for entities corresponding to search suggestions
US20090019066A1 (en) Hybrid location and keyword index
US20060218114A1 (en) System and method for location based search
US8898173B1 (en) Ranking location search results based on multiple distance measures
US8538956B1 (en) Geocoding results using geotopic annotation of web search results
WO2009064996A2 (en) Geocoding based on neighborhoods and other uniquely defined informal spaces or geographical regions
US8312010B1 (en) Local business ranking using mapping information
US10102222B2 (en) Semantic geotokens
US8694512B1 (en) Query suggestions
US8495046B1 (en) Encoding locations and using distances for resources
US20160210357A1 (en) Aggregating news and social content with map presentations
US9317528B1 (en) Identifying geographic features from query prefixes
Lee et al. Map-based range query processing for geographic web search systems
Ponciano et al. ToPI: an approach to identify places of interest using geo-tagged images
Jung et al. A map-based web search interface using point of interest aggregation
Lindgaard et al. Automatic geo-referencing of web-pages
OYAMA et al. Processing web aggregate queries by analyzing search engine indices

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120217

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120515

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120817

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121106

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130619

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130719

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130722

R150 Certificate of patent or registration of utility model

Ref document number: 5325579

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130729

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250