クエリ候補提示装置
【課題】画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することで、ユーザの検索用キーワードの入力効率を向上させることを目的とする。
【解決手段】検索対象データ102に基づいて生成された読みトライ構造索引から、クエリ候補抽出部106がクエリ候補の文字列を抽出する。スコア計算部107は、クエリ候補を提示することによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数等を考慮して、クエリ候補のスコアを計算する。クエリ候補選択部109がスコアに応じたクエリ候補を登録してクエリ候補辞書103を生成する。入力部112を介してユーザから検索用キーワードの読み文字列が一文字ずつ入力されると、クエリ候補表示部113がクエリ候補辞書103を参照して読み文字列に応じたクエリ候補を提示する。
【解決手段】検索対象データ102に基づいて生成された読みトライ構造索引から、クエリ候補抽出部106がクエリ候補の文字列を抽出する。スコア計算部107は、クエリ候補を提示することによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数等を考慮して、クエリ候補のスコアを計算する。クエリ候補選択部109がスコアに応じたクエリ候補を登録してクエリ候補辞書103を生成する。入力部112を介してユーザから検索用キーワードの読み文字列が一文字ずつ入力されると、クエリ候補表示部113がクエリ候補辞書103を参照して読み文字列に応じたクエリ候補を提示する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、数文字の読みを入力すると検索用キーワードの候補を提示するクエリ候補提示装置に関するものである。
【背景技術】
【0002】
近年、各種の電子機器の高機能化が進み、電子マニュアル等を機器上で閲覧および検索したいというニーズが高まっている。また、環境問題の側面からも、従来の紙の説明書を電子化したいというニーズが大きい。
しかしながら、カーナビゲーション装置およびFA用表示器等のキーボードをもたない機器では、検索用キーワードの入力がしにくく操作の手間がかかるため、機器上の電子化文書を充分に活用できないという問題があった。
【0003】
そこで、この問題を解決するために、特許文献1では入力操作の手間を軽減するための技術が提案されている。特許文献1に開示の文字列予測装置は、ユーザが入力した文字に基づいて、ユーザが入力しようとする所望の文字列を予測するものである。この文字列予測装置は、ユーザが候補リストの中から候補文字列を選択するために必要な第1操作コストと、ユーザが次の文字を入力することによって絞り込まれる候補文字列を選択するために必要な第2操作コストとを比較し、第1操作コストが第2操作コストよりも大きい候補文字列を候補リストから除外して不要な候補文字列の提示を減らすことにより、入力効率を高めていた。
【0004】
【特許文献1】特開2008−46775号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
従来の文字列予測装置は以上のように構成されているので、第1操作コストが第2操作コストよりも大きい候補文字列を候補リストから削除するのみであるため、削除されない候補文字列が多数存在する場合には、結局入力に手間がかかってしまうという課題があった。
【0006】
また、候補リストに大量の候補文字列が存在する場合には、候補文字列をグループ化して階層的に入力することができないため、ユーザに提示する候補数が多くなってしまうという課題があった。
【0007】
さらに、一画面に表示可能な候補数が限られている機器に対して、表示可能な候補数を考慮したコスト計算がなされていないため、対象機器または対象画面に対して個別に適切な候補文字列の提示を行うことができないという課題があった。
【0008】
この発明は、上記のような課題を解決するためになされたもので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上させることを目的とする。
【課題を解決するための手段】
【0009】
この発明に係るクエリ候補提示装置は、一文字ずつ入力される検索用キーワードの読み文字で始まるクエリ候補をクエリ候補辞書から取得して、当該検索用キーワードの候補として提示するクエリ候補表示部を備えるクエリ候補提示装置であって、検索対象データから抽出された語句を当該語句の読み文字に基づいて階層構造化したデータから、クエリ候補となる文字列を抽出するクエリ候補抽出部と、検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア計算部と、検索対象データから抽出された語句の読み文字毎に、スコア計算部で計算されたスコアに基づいて文字列をクエリ候補としてクエリ候補辞書に登録するクエリ候補選択部とを備えるようにしたものである。
【発明の効果】
【0010】
この発明によれば、階層構造化したデータからクエリ候補となる文字列を抽出し、検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算して、検索対象データから抽出された語句の読み文字毎にスコアに基づいて文字列をクエリ候補としてクエリ候補辞書に登録するようにしたので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上できる。
【発明を実施するための最良の形態】
【0011】
実施の形態1.
図1は、この発明の実施の形態1に係るクエリ候補提示装置の構成を示すブロック図である。本実施の形態のクエリ候補提示装置は、検索対象データ102をもとにクエリ候補辞書103を生成するクエリ候補辞書生成部101と、ユーザによって読みが一文字ずつ入力されると、その読みで始まる検索用キーワードの候補、即ちクエリ候補をクエリ候補辞書103から選択して提示するクエリ候補提示部110とから構成される。
【0012】
先ず、クエリ候補辞書生成部101を説明する。クエリ候補辞書生成部101は、検索対象データ102を解析してクエリ候補の対象とすべき重要語句を抽出する重要語句抽出部104、抽出した重要語句を読みで構造化した読みトライ構造索引を生成するトライ構造索引生成部105、読みトライ構造索引からクエリ候補にする文字列を抽出するクエリ候補抽出部106、抽出したクエリ候補のスコアを計算するスコア計算部107、スコアに基づき最適なクエリ候補の組合わせを選択してクエリ候補辞書データを生成するクエリ候補選択部109を備える。
なお、クエリ候補提示装置は、検索対象データ102として施設名、説明書等のデータを用いる。
【0013】
重要語句抽出部104は、検索対象データ102を解析し、フォントサイズ等の画面レイアウト情報および章節構造等の文書構造情報等を手掛りに、クエリ候補とすべき重要な語句を抽出する。この処理は、例えば特開2001−52032号公報の「要約文作成方法及び装置及び要約文作成プログラムを格納した記憶媒体」等、公知の技術を用いて実現可能であるので、詳細な説明は省略する。
図2は、重要語句抽出部104がクエリ候補として抽出した重要語句の例を示す説明図である。重要語句抽出部104はクエリ候補となる重要語句を検索対象データ102から抽出して見出しとし、この見出しを単語毎に区切った単語区切り、およびこの見出しの読みを単語毎に区切った読み区切りの情報を生成する。そして、重要語句抽出部104は少なくともこれら3種類の情報を重要語句データに含めてトライ構造索引生成部105へ出力する。なお、重要語句データには、これら3種類の情報の他に、語句の重要度を示す情報等を含めてもよい。
【0014】
トライ構造索引生成部105は見出し、単語区切りおよび読み区切りの情報をもつ重要語句データを入力として、各重要語句の読みを木構造として整理した読みトライ構造索引を生成する。
図3は、トライ構造索引生成部105が生成した読みトライ構造索引を示す説明図である。図3では、図2に示す14個の重要語句を用いて生成された読みトライ構造索引を示す。読みトライ構造は、各重要語句の読みをノードNxとし、ルートノードNrを基点にして読みのうちの先頭一致する共通部分を木構造としてまとめあげて階層構造化したデータであり、自然言語処理における辞書検索処理等で多用される公知のデータ構造である。
同データ構造の高速な実装方式としてダブル配列(「ダブル配列におけるキー削除の効率化手法」情報処理学会自然言語処理研究会、Vol.2003 No.23 2002−NL−154)がよく知られており、トライ構造索引生成部105がダブル配列によって読みトライ構造索引データを生成してもよい。
【0015】
クエリ候補抽出部106は読みトライ構造索引データを入力とし、クエリ候補選択条件108に従って、読みトライ構造索引からクエリ候補辞書103に登録するクエリ候補をノード毎に抽出する。具体的には、図3に示す読みトライ構造索引の各ノードNxに対して、ノードNxの子孫ノードNyのうちの単語区切りの末端であるノードを全て抽出し、ルートノードNrから子孫ノードNyに至る各ノードに対応する読みをつなげた語句を、クエリ候補とする。ただし、図3の読みトライ構造索引は、説明を簡便にするために図を簡略化してあるため、単語区切りの末端であるノードを区別して示してはいない。
【0016】
検索対象データ102が大規模なデータである場合には、クエリ候補選択条件108として「子孫ノードNyはノードNxからW単語以内に限定」、「子孫ノードNyはノードNxからL文字以内に限定」、「子孫ノードNyはノードNxからの経路における分岐数をB個以内に限定」等の条件を指定しておくことにより、クエリ候補抽出部106によるクエリ候補抽出のための探索範囲を限定することができる。
【0017】
ここで、ノード間のショートカットについて説明する。クエリ候補辞書生成部101では、読みトライ構造索引の各ノードに対して、ノードNxからこのノードNxの子孫ノードNy中のショートカット先のノードであるショートカットノードNiへ、ノード間をショートカットするリンクを生成する。
図4は、読みトライ構造索引のショートカットを示す説明図である。例えば検索用キーワードの読み「とうきょうこ」が入力された場合、即ちルートノードNrからノードN6に注目ノードが遷移した状態(以下、読みNr〜N6と呼ぶ)のとき、詳細は後述するが、クエリ候補提示装置は「東京国際空港第一」、「東京国際空港第二」、「東京国際空港第三駐車場」をクエリ候補としてユーザに提示する。例えば「東京国際空港第一」というクエリ候補は、ユーザが入力した読み「とうきょうこ」の「こ」に対応するノードN6からノードN17へノード間をショートカットしたものといえる。
ユーザによりこれらのクエリ候補の中から「東京国際空港第一」が選択されると、クエリ候補提示装置は注目ノードをN6からショートカット先のノードN17に遷移させて(以下、ショートカットN6→N17と呼ぶ)、ショートカット経路中のノードN7,N8,・・・,N16に対応する読みを自動的に表示し、ユーザの入力手間を軽減させる。
【0018】
スコア計算部107はクエリ候補のデータを入力とし、検索用キーワード入力途中の読みに対応するクエリ候補を提示することによって得られる入力手間軽減の効果を定式化したスコアを、クエリ候補選択条件108に従って計算する。そして、スコア計算部107はクエリ候補に関するスコアデータをクエリ候補選択部109へ出力する。
スコア計算部107へ入力されるクエリ候補選択条件108として、一画面あたりに表示可能なクエリ候補数を示す最大表示候補数Dmaxがある。
【0019】
図5は、スコア計算部107の詳細構成を示すブロック図である。スコア計算部107は、打鍵数短縮スコア計算部11、確定後スコア計算部12、スコア集計部13を備える。また、図6は、スコア計算部107が用いるスコアの定義を示す説明図である。
図5に示す打鍵数短縮スコア計算部11は、読みNr〜Nxに対応するクエリ候補(「読みNr〜Nx」+「ショートカットNx→Ni」に対応する読みをつなげた語句)の打鍵数短縮スコアC1(Nx,Ni)を計算する。打鍵数短縮スコアは、ユーザが検索用キーワードの読み入力途中で提示されたクエリ候補を選択することによって、クエリ候補の読みを入力する場合と比較して何回少ない打鍵数で同じクエリ候補を入力できるかを示す。
【0020】
図7は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょうとり」(読みNr〜N66)が入力された場合のスコアを示す。図7では、クエリ候補選択条件108の最大表示候補数Dmaxは3と定義する。
ここで、図7に示す打鍵数短縮スコアC1(N66,Ni)について、図4および図6を用いて説明する。読みNr〜N66に対応するショートカットN66→N71のクエリ候補「東京都立第一」の場合、N66→N71の経路途中にあるノードNjのうち、葉の数(「ちゅうがく」および「こうこう」)がDmax以下、かつ、Depth(Nj)が最小となるノードNzはN70である。よって、「東京都立第一」の打鍵数短縮スコアC1(N66,N71)は、Nzが存在する場合の計算式から「6」となる。
他方、読みNr〜N66に対応するショートカットN66→N81のクエリ候補「東京都立第二」の場合、N66→N81の経路途中に葉の数がDmax以下となるノードNzが存在しない。よって、「東京都立第二」の打鍵数短縮スコアC1(N66,N81)は、Nzが存在しない場合の計算式から「6」となる。
打鍵数短縮スコア計算部11は、ノードN66に対応するショートカットのクエリ候補「東京都立第三」および「東京都立産業」についても上記同様に打鍵数短縮スコアを計算する。
【0021】
図5に示す確定後スコア計算部12は、読みNr〜Nxに対応するショートカットNx→Niのクエリ候補がユーザによって選択され、検索用キーワードの一部であることが確定した場合に、このクエリ候補に続く次のショートカットNi→Niiに対応したクエリ候補の打鍵数削減効果を予測して確定後スコアC2(Ni)とする。ここで、Niiは、ショートカットノードNiを基点にしたときのショートカット先のノードである。
【0022】
図8は、確定後スコア計算部12の確定後スコア計算例を示す説明図であり、クエリ候補として「東京国際空港」が選択された場合を示す。クエリ候補「東京国際空港」のショートカットノードN13を新たな基点のノードと仮定した場合の次のショートカットノードNiiは例えばN17、N31,N54,N64がある。このとき、次のショートカットNi→Niiの組合わせは、N13→N17,N13→N41,N13→N54,N13→N64である。確定後スコア計算部12は、これらショートカットの組合わせのスコアSc(Ni,{Ny})を計算する。ここで、{Ny}は次のショートカットノードNiiの集合を表しており、要素数はクエリ候補選択条件108で定義される一画面あたりの最大表示候補数Dmax以下とする。またスコアScについては後述する。
Niに対する次のショートカットノードNiiがDmax以上存在すると、ショートカットNi→Niiの組合わせも多数存在する。そのような場合には、確定後スコア計算部12がそれら多数のショートカットNi→Niiのクエリ候補をDmax以下ずつ組合わせたスコアSc(Ni,{Ny})を計算し、そのうち最大のもの(Max(Sc(Ni,{Ny}))をショートカットノードNiの確定後スコアC2(Ni)とする。
【0023】
図8の確定後スコア計算例では、{Ny}の選び方の代表例としてパターン8Aおよび8Bの2種類を示す。パターン8Aは、ショートカットN13→N17,N13→N41,N13→N54の組合わせを示し、パターン8Bはその組合わせをN13→N17,N13→N54,N13→N64にした場合を示す。確定後スコア計算部12は、各パターンのスコアSc(N13,{Ny})を比較して、最大となるパターン8Aのスコアを、クエリ候補「東京国際空港」(ノードN13)に対応する確定後スコアC2(N13)とする。
【0024】
図7のスコア計算例では、「東京都立第一」等のクエリ候補に対して次のショートカットノードNiiを考えた場合、いずれのショートカットノードNiiでもクエリ候補数が最大表示候補数Dmax以下となる。確定後スコア計算部12は、図6に示す定義に従えば、確定後スコアC2(N71)はスコアSc(N71,{Ny})で与えられるが、この場合はノードNzがN71となるため、打鍵数短縮スコアC1(N71,Nii)はいずれも0となる。そのため、Dmax個以下の次のショートカットノードNiiについてのC1(N71,Nii)を加算したものである、クエリ候補「東京都立第一」の確定後スコアC2(N71)も0となる。
【0025】
図5に示すスコア集計部13は、打鍵数短縮スコア計算部11が計算した打鍵数短縮スコアと確定後スコア計算部12が計算した確定後スコアを用いて各クエリ候補のショートカットスコアSe(Nx,Ny)を計算し、ショートカットスコアを用いて各クエリ候補の組合わせに応じたスコアSc(Nx,{Ny})を計算する。{Ny}はショートカットノードNiの集合を表しており、要素数は最大表示候補数Dmax以下とする。
【0026】
図7のスコア計算例では、{Ny}の選び方の代表例としてパターン7Aおよび7Bの2種類を示す。パターン7Aは、読みNr〜N66に対して、一画面あたりに表示するクエリ候補の組合わせを「東京都立第一」、「東京都立第二」および「東京都立第三」にした場合を示し、パターン7Bはその組合わせを「東京都立第一」、「東京都立第二」および「東京都立産業」にした場合を示す。スコア集計部13は、ショートカットにより入力を効率化できる葉の数Lzが同一であれば、ショートカットにより短縮できる読みの長さ(Depth(Nz)−Depth(Nx)およびDepth(Ni)−Depth(Nx))がより大きいパターン7Aに高いスコアを与える。
従来技術ではクエリ候補の提示により短縮できる読みの長さに応じてクエリ候補間の優先順位を決定することができなかったため、これらのパターン7Aおよび7Bに優劣をつけられず、表示候補数を適切な3種類に絞り込むことができなかった。これに対して、本実施の形態では最大表示候補数Dmaxに応じてクエリ候補を優先させることができる。
なお、同一パターン内のクエリ候補間の優劣は、ショートカットスコアに準じればよく、高いショートカットスコアのクエリ候補を優先させる。
【0027】
図9は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょうこ」(読みNr〜N6)が入力された場合のスコアを示す。図9においても、クエリ候補選択条件108の最大表示候補数Dmaxは3と定義する。パターン9Aは、読みNr〜N6に対して、クエリ候補の組合わせを「東京国際空港第一」、「東京国際空港第二」および「東京国際空港第三駐車場」にした場合を示し、パターン9Bはその組合わせを「東京国際空港第一」、「東京国際空港第三駐車場」および「東京国際空港第四駐車場」とした場合を示す。この例では、スコア集計部13は、ショートカットにより短縮できる読みの長さ(Depth(Nz)−Depth(Nx)およびDepth(Ni)−Depth(Nx))が同一であれば、葉の数Lzがより多いパターン9Aに高いスコアを与える。
従来技術では葉の数を考慮したスコア計算をしていなかったため、これらのパターン9Aおよび9Bに優劣をつけられず、表示候補数を適切な3種類に絞り込むことができなかった。これに対して、本実施の形態ではより多くの葉を含むクエリ候補を優先させることができる。
【0028】
また、図10に、確定後スコアがスコアに寄与する例を示す。図10は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょう」(読みNr〜N5)が入力された場合のスコアを示す。パターン10Aではクエリ候補数が最大表示候補数Dmaxに満たないにもかかわらず、パターン10Aとパターン10Bのスコアは同値となる。これは、スコア集計部13が確定後スコアを考慮してスコアを計算したことにより、ユーザによりクエリ候補が選択された後に予測される打鍵数節減の効果をスコアに反映したためである。
ここで、パターン10Aおよび10Bにおけるクエリ候補「東京国際空港」の確定後スコアC2(N13)は、図8において確定後スコア計算部12が計算した確定後スコアである。この確定後スコアは、パターン8AのスコアSc(N13,{N17,N31,N54})に相当する。
【0029】
また、上記のようなスコア計算部107のスコア計算により、読みトライ構造索引において木構造が偏った部分についても、検索対象データ102および最大表示候補数Dmaで定義される画面の大きさに応じた適切なクエリ候補選択が可能となる。例えば、図11に最大表示候補数Dmaxを5と定義した場合のスコア計算部107のスコア計算例を示す。ここでは読みとして「とうきょうとり」(読みNr〜N66)が入力されたときの、{Ny}の組合わせの代表例としてパターン11Aおよび11Bの各スコアを示す。この例では、スコア集計部13は、より広い範囲の葉をカバーできるパターン11Bを優先して高いスコアを与える。
【0030】
図1のクエリ候補選択部109は、クエリ候補選択条件108の最大表示候補数Dmaxとスコアデータを入力とし、スコアSc(Nx,{Ny})に基づいてスコアが最大となるクエリ候補の組合わせを選択して、ショートカット情報を生成する。クエリ候補選択部109は、生成したショートカット情報を、重要語句抽出部104で抽出された重要語句データと、トライ構造索引生成部105で生成された読みトライ構造索引データとをあわせてクエリ候補辞書データを生成し、クエリ候補辞書103へ登録する。
【0031】
図12は、クエリ候補提示装置のクエリ候補辞書103の構成を示すブロック図であり、クエリ候補辞書103は、見出し一覧21、読みトライ構造索引22およびショートカット情報23を備える。図13にクエリ候補辞書103に登録された見出し一覧21の例を示し、図14にクエリ候補辞書103に登録されたショートカット情報23の例を示す。読みトライ構造索引22の例は図3および図4に示す。
【0032】
図13の見出し一覧21は、読みトライ構造索引22およびショートカット情報23等の他データから参照するためのレコード番号およびクエリ候補としてユーザに提示される見出しからなる。
図14のショートカット情報23a,23b,23cは、ノードNxに対するショートカットの情報をリスト情報で表現している。リストの要素は(ア)〜(エ)からなり、それぞれ、「(ア)リストの次要素へのポインタ」、「(イ)ショートカットノードNi」、「(ウ)見出し一覧を参照するレコード番号」、「(エ)ショートカットスコアSe(Nx,Ny)」である。
【0033】
クエリ候補選択部109は、スコア計算部107で計算されたノードNxに対するクエリ候補の全組合わせからスコアが最大となるクエリ候補の組合わせを選択し、それらクエリ候補のショートカットに関する情報を図14に示すようにノードNxにリンクさせる。図14ではノードN6にリンクするショートカット情報を示しているが、このショートカット情報は図9のパターン9Aの組合わせに相当する。
【0034】
図15は、実施の形態1に係るクエリ候補提示装置のクエリ候補辞書生成部101の動作を示すフローチャートである。以下、図1〜図15を適宜用いて、クエリ候補辞書生成部101の動作を説明する。
ステップST1は重要語句抽出処理であり、重要語句抽出部104が検索対象データ102を解析して、画面レイアウト情報および文書構造情報等を利用して重要語句を抽出すると共に、単語分割および読み付与を実行する。そして、重要語句抽出部104は図2に示す重要語句データをトライ構造索引生成部105へ出力する。
【0035】
ステップST2はトライ構造索引生成処理であり、トライ構造索引生成部105がステップST1で抽出された重要語句の情報を用いて、図3に示す読みトライ構造索引を生成する。そして、トライ構造索引生成部105は読みトライ構造索引データをクエリ候補抽出部106へ出力する。
ステップST3はクエリ候補抽出処理であり、クエリ候補抽出部106はクエリ候補選択条件108およびステップST2で生成された読みトライ構造索引を用いて、クエリ候補辞書103に登録するためのクエリ候補を全て抽出する。そして、クエリ候補抽出部106は生成したクエリ候補データをスコア計算部107へ出力する。
【0036】
ステップST4はスコア計算処理であり、スコア計算部107が、ステップST3で抽出された各クエリ候補に対するスコアを計算する。クエリ候補毎に、打鍵数短縮スコア計算部11が打鍵数短縮スコアを計算し、確定後スコア計算部12が確定後スコアを計算する。そして、スコア集計部13が打鍵数短縮スコアおよび確定後スコアを用いて、クエリ候補の組合わせ毎にスコアを計算し、クエリ候補選択部109へスコアデータを出力する。
【0037】
ステップST5はクエリ候補選択処理であり、ステップST4で計算されたスコアデータを用いて、クエリ候補選択部109がスコアが最大となるクエリ候補の組合わせを選択し、図12〜図14に示す見出し一覧21、読みトライ構造索引22およびショートカット情報23を含むクエリ候補辞書データを生成してクエリ候補辞書103へ登録する。
全てのノードについて同様のスコア計算が行われ、各ノードに対してスコア最大となるクエリ候補の組合わせが登録されると(ステップST6“Yes”)、クエリ候補辞書生成処理は終了する。クエリ候補の組合わせが決まっていないノードが存在しているうちは、処理はステップST3のクエリ候補抽出処理へ戻り(ステップST6“No”)、クエリ候補抽出部106が次のノードに対応するクエリ候補を抽出する。
【0038】
次に、クエリ候補提示部110を説明する。図1に示すクエリ候補提示部110は、クエリ候補辞書生成部101で生成したクエリ候補辞書103、ユーザが入力した検索用キーワードの読み文字列111を受け付ける入力部112、検索用キーワードの読み文字列111をもとにクエリ候補辞書103を参照して次のクエリ候補を表示するクエリ候補表示部113を備える。
なお、検索用キーワードの読み文字列111は、ユーザが入力した検索用キーワードの読み文字列、またはクエリ候補表示部113で表示したクエリ候補に対するユーザの選択結果である。入力はタッチパネル上に表示したソフトウェアキーボード、テンキー等によって行うこととし、入力部112およびクエリ候補表示部113をこのタッチパネルによって実現する。上述したクエリ候補選択条件108の最大表示候補数Dmaxは、クエリ候補表示部113を実現するタッチパネルの表示画面の大きさに応じて定義されたものである。
【0039】
入力部112は、ユーザから検索用キーワードの読み文字列111およびクエリ候補選択結果111aの入力を受け付けて、その情報をクエリ候補表示部113へ出力する。
クエリ候補表示部113は、検索用キーワードの読み文字列111およびクエリ候補選択結果111aの情報を受けると、クエリ候補辞書103を参照して読みトライ構造索引の注目ノードを遷移させる。そして、遷移先のノードに対するショートカット情報をクエリ候補辞書103から取得してクエリ候補のリストを作成して提示する。
【0040】
具体的には、検索用キーワードの読み文字列111が何も入力されていない初期状態では、クエリ候補表示部113は、クエリ候補辞書103の読みトライ構造索引22においてルートノードNrを注目ノードとする。読みが入力されると、クエリ候補表示部113は入力された読みを一文字ずつ読み込み、注目ノードを、その注目ノードの子孫ノードのうちの入力された読みに合致するノードに遷移して、これを新たな注目ノードとする。
他方、クエリ候補表示部113は、提示した複数のクエリ候補の中からユーザが選択した選択結果を示すクエリ候補選択結果111aが入力された場合には、図14に示すショートカット情報の「(イ)ショートカットノードNi」を参照し、該当するノード番号に遷移する。
続いて、クエリ候補表示部113は、遷移した先のノード番号にリンクする全てのショートカット情報をもとに、各ショートカット情報の「(ウ)見出し一覧を参照するレコード番号」を参照し、さらに図13に示す見出し一覧からそのレコード番号の見出しを取得して、この見出しをクエリ候補としてユーザに提示する。このとき、クエリ候補表示部113は、ショートカット情報の「(エ)ショートカットスコアSe(Nx,Ny)」が高いクエリ候補の表示順位が高くなるように、表示順位を制御する。
【0041】
次に、クエリ候補提示部110の動作を説明する。図16は、この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補提示部110の動作を示すフローチャートである。
ステップST11は文字入力処理またはクエリ候補選択処理である。クエリ候補提示処理の開始直後、即ち初期状態のステップST11において、入力部112はユーザから入力される検索用キーワードの読み文字列111を受ける。
【0042】
ステップST12は読みトライ構造索引における状態遷移処理であり、ステップST11で受け付けた検索用キーワードの読み文字列111の情報に従って、クエリ候補表示部113が図3に示す読みトライ構造索引の注目ノードを更新する。例えば、読みNr〜N6の「とうきょうこ」が入力された場合、クエリ候補表示部113は注目ノードをルートノードNrからN6へ遷移させる。
【0043】
ステップST13は終了判定処理であり、ステップST12において注目ノードの子孫ノードのうち、入力された読みに合致する遷移先のノードがない場合は、ユーザが入力した読みに対応するクエリ候補が存在しないということなので、クエリ候補表示部113はクエリ候補提示処理を終了する(ステップST13“No”)。
遷移先のノードがあれば、クエリ候補表示部113は処理を次へ進める(ステップST13“Yes”)。読み「とうきょうこ」が入力された場合、遷移先のノードN6が存在するため次の処理へ進む。
【0044】
ステップST14はクエリ候補取得表示処理であり、クエリ候補表示部113が遷移先のノードに対応したショートカット情報を参照して、クエリ候補のリストを取得する。
読み「とうきょうこ」が入力された場合、遷移先の注目ノードN6に対応するショートカット情報は、図14に示すとおりである。クエリ候補表示部113は、先ずN6に対応するショートカット情報23a(ショートカットN6→N17)、ショートカット情報23b(ショートカットN6→N31)およびショートカット情報23c(ショートカットN6→N54)を参照して見出し一覧のレコード番号R3、R6およびR9を取得する。クエリ候補表示部113は次に、図13の見出し一覧21から同一レコード番号のクエリ候補「東京国際空港第一」、「東京国際空港第二」および「東京国際空港第三駐車場」を取得して、画面に表示する。
【0045】
図17は、クエリ候補提示装置のクエリ候補表示部113がユーザの入力に対して表示するクエリ候補提示の画面例を示す説明図である。図17(a)に示すように、クエリ候補表示部113が取得したクエリ候補を画面上のクエリ候補文字列として表示している。
そして、処理は再びステップST11に戻る。
【0046】
検索用キーワードの読み文字列111として「と」、「う」、「き」、「ょ」、「う」、「こ」が入力されるとき、クエリ候補提示部110はステップST11〜ステップST13の処理を繰り返し、注目ノードがルートノードNrからN1,N2,N3,N4,N5,N6まで遷移する。このとき、クエリ候補表示部113の表示画面は図17(a)の状態となる。ここで、処理がステップST11に戻り、図17(b)に示すようにユーザがクエリ候補「東京国際空港第二」を選択する入力を入力部112に対して行うと、入力部112がその入力をクエリ候補選択結果111aとして受け付けるクエリ候補選択処理を行う。
【0047】
そして、ステップST12において、クエリ候補表示部113が、クエリ候補「東京国際空港第二」に対するショートカット情報に従って注目ノードをショートカットノードN31に遷移させる。同時に、クエリ候補表示部113は、選択されたクエリ候補のショートカット経路(N6→N31)にある読み文字列「くさいくうこうだいに」を読み入力として補って画面表示する(図17(c))。
遷移先ノードが存在するので処理は進み(ステップST13“Yes”)、続くステップST14にて、クエリ候補表示部113はクエリ候補「東京国際空港第二」のショートカットノードN31に応じた次のクエリ候補「東京国際空港第二ターミナル」および「東京国際空港第二駐車場」を取得して画面表示する。
【0048】
再び処理がステップST11に戻り、クエリ候補「東京国際空港第二ターミナル」または「東京国際空港第二駐車場」のいずれか一方がユーザにより選択されると、ステップST13の終了判定において、遷移先のノードが存在しないことが確認されるため、ここでクエリ候補提示処理が終了する。
【0049】
図18は、最大表示候補数Dmaxを5に設定した場合のクエリ候補提示の画面例であり、読みNr〜N66の「とうきょうとり」が入力された場合を示す。クエリ候補提示部110は、図11に示すパターン11Bのスコア計算例に基づいて生成されたクエリ候補辞書103を用いてクエリ候補提示処理を行うことによって、図18の画面例のように項目数とその表示順位を制御して、クエリ候補を表示することができる。
【0050】
以上のように、実施の形態1によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107を用いてクエリ候補辞書103を生成し、クエリ候補提示部110がこのクエリ候補辞書103を参照してクエリ候補を提示するように構成した。そのため、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上できるという効果が得られる。
【0051】
実施の形態2.
図19は、この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。本実施の形態のスコア計算部107は、図19に示すように、打鍵数短縮スコア計算部11、確定後スコア計算部12、スコア集計部13、候補選択スコア計算部14を備える。
本実施の形態に係るクエリ候補提示装置の構成は、スコア計算部107の内部構成以外は図1に示した実施の形態1に係るクエリ候補提示装置の構成と同じであるため、スコア計算部107以外の図示および詳細な説明は省略する。
【0052】
図20は、スコア計算部107が用いるスコアの定義を示す説明図である。本実施の形態のスコア計算部107は、候補選択スコア計算部14が候補選択スコアCsel(Ni)を計算し、打鍵数短縮スコア計算部11が候補選択スコアCsel(Ni)を用いて打鍵数短縮スコアC1(Nx,Ni)を計算する点で、上記実施の形態1のスコア計算部107とは異なる。
【0053】
上記実施の形態1では、クエリ候補選択条件108として一画面に表示可能なクエリ候補数である最大表示候補数Dmaxを設定していたが、一画面に表示できる項目数以上のクエリ候補数をDmaxとして設定しておくことも可能である。このような場合には、クエリ候補提示部110は数ページにわたってクエリ候補を表示することになり、ユーザはスクロールバーまたはページ送りボタン等によってページを送り、クエリ候補を選択する。
候補選択スコア計算部14は、このようにスクロールバーまたはページ送りボタン等によって複数ページにわたってクエリ候補を提示する場合に、ページ数に応じて増大するユーザの入力手間を表す候補選択スコアCsel(Ni)を計算する。
【0054】
打鍵数短縮スコア計算部11は、候補選択スコア計算部14の候補選択スコアを反映した打鍵数短縮スコアを算出する。スコア計算部107のスコアの定義を図20のように拡張することによって、クエリ候補提示部110がスクロールバーまたはページ送りボタン等によって複数ページにわたってクエリ候補を提示する場合であっても、スコア計算部107は、2ページ目、3ページ目で表示されるクエリ候補の打鍵数低減に対する貢献度を考慮したスコア計算が可能となる。
【0055】
以上のように、実施の形態2によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107に、候補選択スコア計算部14を設けるように構成した。このため、スコア計算部107は、クエリ候補提示部110が複数ページにわたってクエリ候補を提示する場合の入力の手間を考慮した適切なスコア計算を行ってクエリ候補辞書103を生成できる。そして、クエリ候補提示部110が、このクエリ候補辞書103を参照してクエリ候補を提示するように構成したので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの入力効率を向上できるという効果が得られる。
【0056】
実施の形態3.
図21は、この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。本実施の形態のスコア計算部107は、図19に示した実施の形態2のスコア計算部107の構成に、候補重要度スコア計算部15を追加したものである。
本実施の形態に係るクエリ候補提示装置の構成は、スコア計算部107の内部構成以外は図1に示した実施の形態1に係るクエリ候補提示装置の構成と同じであるため、スコア計算部107以外の図面および詳細な説明は省略する。
【0057】
図22は、スコア計算部107が用いるスコアの定義を示す説明図である。本実施の形態のスコア計算部107は、候補重要度スコア計算部15が候補重要度スコアCL(Ni)を計算し、打鍵数短縮スコア計算部11が候補重要度スコアCL(Ni)を用いて打鍵数短縮スコアC1(Nx,Ni)を計算する点で、上記実施の形態1および2のスコア計算部107とは異なる。
【0058】
例えば、図2に示すような地名または施設名をクエリ候補としてクエリ候補辞書103を生成する場合、重要語句抽出処理において重要語句抽出部104が有名な地名または施設名に高い重要度を付与し(説明書の場合には画面レイアウト情報等を手掛りとした重要度を付与すればよい)、トライ構造索引生成処理においてトライ構造索引生成部105が各ノードに語句の重要度を反映した重み(図22のWgt(Nj))を与えておく。
候補重要度スコア計算部15は、ショートカットノードNiの子孫である葉ノードNjに対応する語句の重要度Wgt(Nj)を用いて、クエリ候補の重要度を示す候補重要度スコアCL(Ni)を計算する。
【0059】
打鍵数短縮スコア計算部11は、候補重要度スコア計算部15の候補重要度スコアを反映した打鍵数短縮スコアを算出する。スコア計算部107のスコアの定義を図22のように拡張することによって、読み文字数や葉ノード数にかかわらず、特に重要な語句を優先的にクエリ候補として表示することが可能となる。
【0060】
以上のように、実施の形態3によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107に、候補重要度スコア計算部15を設けるように構成した。このため、スコア計算部107は、読み文字数や葉ノード数にかかわらず特に重要な語句に高い優先順位を付けるスコア計算を行ってクエリ候補辞書103を生成できる。そして、クエリ候補提示部110が、このクエリ候補辞書103を参照してクエリ候補を提示するように構成したので、画面サイズ、検索対象データの読みの偏り、語句の重要度等に応じた適切なクエリ候補を提示することができ、ユーザの入力効率を向上できるという効果が得られる。
【図面の簡単な説明】
【0061】
【図1】この発明の実施の形態1に係るクエリ候補提示装置の構成を示すブロック図である。
【図2】この発明の実施の形態1に係るクエリ候補提示装置の重要語句抽出部が抽出した重要語句の例を示す説明図である。
【図3】この発明の実施の形態1に係るクエリ候補提示装置のトライ構造索引生成部が生成した読みトライ構造索引を示す説明図である。
【図4】この発明の実施の形態1に係るクエリ候補提示装置の読みトライ構造索引のショートカットを示す説明図である。
【図5】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図6】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【図7】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図8】この発明の実施の形態1に係るクエリ候補提示装置の確定後スコア計算部の確定後スコア計算例を示す説明図である。
【図9】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図10】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図11】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図であり、最大表示候補数Dmaxが5のときを示す。
【図12】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書の構成を示すブロック図である。
【図13】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書に登録された見出し一覧の例を示す説明図である。
【図14】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書に登録されたショートカット情報の例を示す説明図である。
【図15】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書生成部の動作を示すフローチャートである。
【図16】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補提示部の動作を示すフローチャートである。
【図17】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補表示部がユーザの入力に対して表示するクエリ候補提示の画面例を示す説明図である。
【図18】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補表示部が表示する最大表示候補数Dmaxが5のときのクエリ候補提示の画面例を示す説明図である。
【図19】この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図20】この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【図21】この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図22】この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【符号の説明】
【0062】
11 打鍵数短縮スコア計算部、12 確定後スコア計算部、13 スコア集計部、14 候補選択スコア計算部、15 候補重要度スコア計算部、21 見出し一覧、22 読みトライ構造索引、23,23a,23b,23c ショートカット情報、101 クエリ候補辞書生成部、102 検索対象データ、103 クエリ候補辞書、104 重要語句抽出部、105 トライ構造索引生成部、106 クエリ候補抽出部、107 スコア計算部、108 クエリ候補選択条件、109 クエリ候補選択部、110 クエリ候補提示部、111 検索用キーワードの読み文字列、111a クエリ候補選択結果、112 入力部、113 クエリ候補表示部。
【技術分野】
【0001】
この発明は、数文字の読みを入力すると検索用キーワードの候補を提示するクエリ候補提示装置に関するものである。
【背景技術】
【0002】
近年、各種の電子機器の高機能化が進み、電子マニュアル等を機器上で閲覧および検索したいというニーズが高まっている。また、環境問題の側面からも、従来の紙の説明書を電子化したいというニーズが大きい。
しかしながら、カーナビゲーション装置およびFA用表示器等のキーボードをもたない機器では、検索用キーワードの入力がしにくく操作の手間がかかるため、機器上の電子化文書を充分に活用できないという問題があった。
【0003】
そこで、この問題を解決するために、特許文献1では入力操作の手間を軽減するための技術が提案されている。特許文献1に開示の文字列予測装置は、ユーザが入力した文字に基づいて、ユーザが入力しようとする所望の文字列を予測するものである。この文字列予測装置は、ユーザが候補リストの中から候補文字列を選択するために必要な第1操作コストと、ユーザが次の文字を入力することによって絞り込まれる候補文字列を選択するために必要な第2操作コストとを比較し、第1操作コストが第2操作コストよりも大きい候補文字列を候補リストから除外して不要な候補文字列の提示を減らすことにより、入力効率を高めていた。
【0004】
【特許文献1】特開2008−46775号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
従来の文字列予測装置は以上のように構成されているので、第1操作コストが第2操作コストよりも大きい候補文字列を候補リストから削除するのみであるため、削除されない候補文字列が多数存在する場合には、結局入力に手間がかかってしまうという課題があった。
【0006】
また、候補リストに大量の候補文字列が存在する場合には、候補文字列をグループ化して階層的に入力することができないため、ユーザに提示する候補数が多くなってしまうという課題があった。
【0007】
さらに、一画面に表示可能な候補数が限られている機器に対して、表示可能な候補数を考慮したコスト計算がなされていないため、対象機器または対象画面に対して個別に適切な候補文字列の提示を行うことができないという課題があった。
【0008】
この発明は、上記のような課題を解決するためになされたもので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上させることを目的とする。
【課題を解決するための手段】
【0009】
この発明に係るクエリ候補提示装置は、一文字ずつ入力される検索用キーワードの読み文字で始まるクエリ候補をクエリ候補辞書から取得して、当該検索用キーワードの候補として提示するクエリ候補表示部を備えるクエリ候補提示装置であって、検索対象データから抽出された語句を当該語句の読み文字に基づいて階層構造化したデータから、クエリ候補となる文字列を抽出するクエリ候補抽出部と、検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア計算部と、検索対象データから抽出された語句の読み文字毎に、スコア計算部で計算されたスコアに基づいて文字列をクエリ候補としてクエリ候補辞書に登録するクエリ候補選択部とを備えるようにしたものである。
【発明の効果】
【0010】
この発明によれば、階層構造化したデータからクエリ候補となる文字列を抽出し、検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算して、検索対象データから抽出された語句の読み文字毎にスコアに基づいて文字列をクエリ候補としてクエリ候補辞書に登録するようにしたので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上できる。
【発明を実施するための最良の形態】
【0011】
実施の形態1.
図1は、この発明の実施の形態1に係るクエリ候補提示装置の構成を示すブロック図である。本実施の形態のクエリ候補提示装置は、検索対象データ102をもとにクエリ候補辞書103を生成するクエリ候補辞書生成部101と、ユーザによって読みが一文字ずつ入力されると、その読みで始まる検索用キーワードの候補、即ちクエリ候補をクエリ候補辞書103から選択して提示するクエリ候補提示部110とから構成される。
【0012】
先ず、クエリ候補辞書生成部101を説明する。クエリ候補辞書生成部101は、検索対象データ102を解析してクエリ候補の対象とすべき重要語句を抽出する重要語句抽出部104、抽出した重要語句を読みで構造化した読みトライ構造索引を生成するトライ構造索引生成部105、読みトライ構造索引からクエリ候補にする文字列を抽出するクエリ候補抽出部106、抽出したクエリ候補のスコアを計算するスコア計算部107、スコアに基づき最適なクエリ候補の組合わせを選択してクエリ候補辞書データを生成するクエリ候補選択部109を備える。
なお、クエリ候補提示装置は、検索対象データ102として施設名、説明書等のデータを用いる。
【0013】
重要語句抽出部104は、検索対象データ102を解析し、フォントサイズ等の画面レイアウト情報および章節構造等の文書構造情報等を手掛りに、クエリ候補とすべき重要な語句を抽出する。この処理は、例えば特開2001−52032号公報の「要約文作成方法及び装置及び要約文作成プログラムを格納した記憶媒体」等、公知の技術を用いて実現可能であるので、詳細な説明は省略する。
図2は、重要語句抽出部104がクエリ候補として抽出した重要語句の例を示す説明図である。重要語句抽出部104はクエリ候補となる重要語句を検索対象データ102から抽出して見出しとし、この見出しを単語毎に区切った単語区切り、およびこの見出しの読みを単語毎に区切った読み区切りの情報を生成する。そして、重要語句抽出部104は少なくともこれら3種類の情報を重要語句データに含めてトライ構造索引生成部105へ出力する。なお、重要語句データには、これら3種類の情報の他に、語句の重要度を示す情報等を含めてもよい。
【0014】
トライ構造索引生成部105は見出し、単語区切りおよび読み区切りの情報をもつ重要語句データを入力として、各重要語句の読みを木構造として整理した読みトライ構造索引を生成する。
図3は、トライ構造索引生成部105が生成した読みトライ構造索引を示す説明図である。図3では、図2に示す14個の重要語句を用いて生成された読みトライ構造索引を示す。読みトライ構造は、各重要語句の読みをノードNxとし、ルートノードNrを基点にして読みのうちの先頭一致する共通部分を木構造としてまとめあげて階層構造化したデータであり、自然言語処理における辞書検索処理等で多用される公知のデータ構造である。
同データ構造の高速な実装方式としてダブル配列(「ダブル配列におけるキー削除の効率化手法」情報処理学会自然言語処理研究会、Vol.2003 No.23 2002−NL−154)がよく知られており、トライ構造索引生成部105がダブル配列によって読みトライ構造索引データを生成してもよい。
【0015】
クエリ候補抽出部106は読みトライ構造索引データを入力とし、クエリ候補選択条件108に従って、読みトライ構造索引からクエリ候補辞書103に登録するクエリ候補をノード毎に抽出する。具体的には、図3に示す読みトライ構造索引の各ノードNxに対して、ノードNxの子孫ノードNyのうちの単語区切りの末端であるノードを全て抽出し、ルートノードNrから子孫ノードNyに至る各ノードに対応する読みをつなげた語句を、クエリ候補とする。ただし、図3の読みトライ構造索引は、説明を簡便にするために図を簡略化してあるため、単語区切りの末端であるノードを区別して示してはいない。
【0016】
検索対象データ102が大規模なデータである場合には、クエリ候補選択条件108として「子孫ノードNyはノードNxからW単語以内に限定」、「子孫ノードNyはノードNxからL文字以内に限定」、「子孫ノードNyはノードNxからの経路における分岐数をB個以内に限定」等の条件を指定しておくことにより、クエリ候補抽出部106によるクエリ候補抽出のための探索範囲を限定することができる。
【0017】
ここで、ノード間のショートカットについて説明する。クエリ候補辞書生成部101では、読みトライ構造索引の各ノードに対して、ノードNxからこのノードNxの子孫ノードNy中のショートカット先のノードであるショートカットノードNiへ、ノード間をショートカットするリンクを生成する。
図4は、読みトライ構造索引のショートカットを示す説明図である。例えば検索用キーワードの読み「とうきょうこ」が入力された場合、即ちルートノードNrからノードN6に注目ノードが遷移した状態(以下、読みNr〜N6と呼ぶ)のとき、詳細は後述するが、クエリ候補提示装置は「東京国際空港第一」、「東京国際空港第二」、「東京国際空港第三駐車場」をクエリ候補としてユーザに提示する。例えば「東京国際空港第一」というクエリ候補は、ユーザが入力した読み「とうきょうこ」の「こ」に対応するノードN6からノードN17へノード間をショートカットしたものといえる。
ユーザによりこれらのクエリ候補の中から「東京国際空港第一」が選択されると、クエリ候補提示装置は注目ノードをN6からショートカット先のノードN17に遷移させて(以下、ショートカットN6→N17と呼ぶ)、ショートカット経路中のノードN7,N8,・・・,N16に対応する読みを自動的に表示し、ユーザの入力手間を軽減させる。
【0018】
スコア計算部107はクエリ候補のデータを入力とし、検索用キーワード入力途中の読みに対応するクエリ候補を提示することによって得られる入力手間軽減の効果を定式化したスコアを、クエリ候補選択条件108に従って計算する。そして、スコア計算部107はクエリ候補に関するスコアデータをクエリ候補選択部109へ出力する。
スコア計算部107へ入力されるクエリ候補選択条件108として、一画面あたりに表示可能なクエリ候補数を示す最大表示候補数Dmaxがある。
【0019】
図5は、スコア計算部107の詳細構成を示すブロック図である。スコア計算部107は、打鍵数短縮スコア計算部11、確定後スコア計算部12、スコア集計部13を備える。また、図6は、スコア計算部107が用いるスコアの定義を示す説明図である。
図5に示す打鍵数短縮スコア計算部11は、読みNr〜Nxに対応するクエリ候補(「読みNr〜Nx」+「ショートカットNx→Ni」に対応する読みをつなげた語句)の打鍵数短縮スコアC1(Nx,Ni)を計算する。打鍵数短縮スコアは、ユーザが検索用キーワードの読み入力途中で提示されたクエリ候補を選択することによって、クエリ候補の読みを入力する場合と比較して何回少ない打鍵数で同じクエリ候補を入力できるかを示す。
【0020】
図7は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょうとり」(読みNr〜N66)が入力された場合のスコアを示す。図7では、クエリ候補選択条件108の最大表示候補数Dmaxは3と定義する。
ここで、図7に示す打鍵数短縮スコアC1(N66,Ni)について、図4および図6を用いて説明する。読みNr〜N66に対応するショートカットN66→N71のクエリ候補「東京都立第一」の場合、N66→N71の経路途中にあるノードNjのうち、葉の数(「ちゅうがく」および「こうこう」)がDmax以下、かつ、Depth(Nj)が最小となるノードNzはN70である。よって、「東京都立第一」の打鍵数短縮スコアC1(N66,N71)は、Nzが存在する場合の計算式から「6」となる。
他方、読みNr〜N66に対応するショートカットN66→N81のクエリ候補「東京都立第二」の場合、N66→N81の経路途中に葉の数がDmax以下となるノードNzが存在しない。よって、「東京都立第二」の打鍵数短縮スコアC1(N66,N81)は、Nzが存在しない場合の計算式から「6」となる。
打鍵数短縮スコア計算部11は、ノードN66に対応するショートカットのクエリ候補「東京都立第三」および「東京都立産業」についても上記同様に打鍵数短縮スコアを計算する。
【0021】
図5に示す確定後スコア計算部12は、読みNr〜Nxに対応するショートカットNx→Niのクエリ候補がユーザによって選択され、検索用キーワードの一部であることが確定した場合に、このクエリ候補に続く次のショートカットNi→Niiに対応したクエリ候補の打鍵数削減効果を予測して確定後スコアC2(Ni)とする。ここで、Niiは、ショートカットノードNiを基点にしたときのショートカット先のノードである。
【0022】
図8は、確定後スコア計算部12の確定後スコア計算例を示す説明図であり、クエリ候補として「東京国際空港」が選択された場合を示す。クエリ候補「東京国際空港」のショートカットノードN13を新たな基点のノードと仮定した場合の次のショートカットノードNiiは例えばN17、N31,N54,N64がある。このとき、次のショートカットNi→Niiの組合わせは、N13→N17,N13→N41,N13→N54,N13→N64である。確定後スコア計算部12は、これらショートカットの組合わせのスコアSc(Ni,{Ny})を計算する。ここで、{Ny}は次のショートカットノードNiiの集合を表しており、要素数はクエリ候補選択条件108で定義される一画面あたりの最大表示候補数Dmax以下とする。またスコアScについては後述する。
Niに対する次のショートカットノードNiiがDmax以上存在すると、ショートカットNi→Niiの組合わせも多数存在する。そのような場合には、確定後スコア計算部12がそれら多数のショートカットNi→Niiのクエリ候補をDmax以下ずつ組合わせたスコアSc(Ni,{Ny})を計算し、そのうち最大のもの(Max(Sc(Ni,{Ny}))をショートカットノードNiの確定後スコアC2(Ni)とする。
【0023】
図8の確定後スコア計算例では、{Ny}の選び方の代表例としてパターン8Aおよび8Bの2種類を示す。パターン8Aは、ショートカットN13→N17,N13→N41,N13→N54の組合わせを示し、パターン8Bはその組合わせをN13→N17,N13→N54,N13→N64にした場合を示す。確定後スコア計算部12は、各パターンのスコアSc(N13,{Ny})を比較して、最大となるパターン8Aのスコアを、クエリ候補「東京国際空港」(ノードN13)に対応する確定後スコアC2(N13)とする。
【0024】
図7のスコア計算例では、「東京都立第一」等のクエリ候補に対して次のショートカットノードNiiを考えた場合、いずれのショートカットノードNiiでもクエリ候補数が最大表示候補数Dmax以下となる。確定後スコア計算部12は、図6に示す定義に従えば、確定後スコアC2(N71)はスコアSc(N71,{Ny})で与えられるが、この場合はノードNzがN71となるため、打鍵数短縮スコアC1(N71,Nii)はいずれも0となる。そのため、Dmax個以下の次のショートカットノードNiiについてのC1(N71,Nii)を加算したものである、クエリ候補「東京都立第一」の確定後スコアC2(N71)も0となる。
【0025】
図5に示すスコア集計部13は、打鍵数短縮スコア計算部11が計算した打鍵数短縮スコアと確定後スコア計算部12が計算した確定後スコアを用いて各クエリ候補のショートカットスコアSe(Nx,Ny)を計算し、ショートカットスコアを用いて各クエリ候補の組合わせに応じたスコアSc(Nx,{Ny})を計算する。{Ny}はショートカットノードNiの集合を表しており、要素数は最大表示候補数Dmax以下とする。
【0026】
図7のスコア計算例では、{Ny}の選び方の代表例としてパターン7Aおよび7Bの2種類を示す。パターン7Aは、読みNr〜N66に対して、一画面あたりに表示するクエリ候補の組合わせを「東京都立第一」、「東京都立第二」および「東京都立第三」にした場合を示し、パターン7Bはその組合わせを「東京都立第一」、「東京都立第二」および「東京都立産業」にした場合を示す。スコア集計部13は、ショートカットにより入力を効率化できる葉の数Lzが同一であれば、ショートカットにより短縮できる読みの長さ(Depth(Nz)−Depth(Nx)およびDepth(Ni)−Depth(Nx))がより大きいパターン7Aに高いスコアを与える。
従来技術ではクエリ候補の提示により短縮できる読みの長さに応じてクエリ候補間の優先順位を決定することができなかったため、これらのパターン7Aおよび7Bに優劣をつけられず、表示候補数を適切な3種類に絞り込むことができなかった。これに対して、本実施の形態では最大表示候補数Dmaxに応じてクエリ候補を優先させることができる。
なお、同一パターン内のクエリ候補間の優劣は、ショートカットスコアに準じればよく、高いショートカットスコアのクエリ候補を優先させる。
【0027】
図9は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょうこ」(読みNr〜N6)が入力された場合のスコアを示す。図9においても、クエリ候補選択条件108の最大表示候補数Dmaxは3と定義する。パターン9Aは、読みNr〜N6に対して、クエリ候補の組合わせを「東京国際空港第一」、「東京国際空港第二」および「東京国際空港第三駐車場」にした場合を示し、パターン9Bはその組合わせを「東京国際空港第一」、「東京国際空港第三駐車場」および「東京国際空港第四駐車場」とした場合を示す。この例では、スコア集計部13は、ショートカットにより短縮できる読みの長さ(Depth(Nz)−Depth(Nx)およびDepth(Ni)−Depth(Nx))が同一であれば、葉の数Lzがより多いパターン9Aに高いスコアを与える。
従来技術では葉の数を考慮したスコア計算をしていなかったため、これらのパターン9Aおよび9Bに優劣をつけられず、表示候補数を適切な3種類に絞り込むことができなかった。これに対して、本実施の形態ではより多くの葉を含むクエリ候補を優先させることができる。
【0028】
また、図10に、確定後スコアがスコアに寄与する例を示す。図10は、スコア計算部107のスコア計算例を示す説明図であり、読みとして「とうきょう」(読みNr〜N5)が入力された場合のスコアを示す。パターン10Aではクエリ候補数が最大表示候補数Dmaxに満たないにもかかわらず、パターン10Aとパターン10Bのスコアは同値となる。これは、スコア集計部13が確定後スコアを考慮してスコアを計算したことにより、ユーザによりクエリ候補が選択された後に予測される打鍵数節減の効果をスコアに反映したためである。
ここで、パターン10Aおよび10Bにおけるクエリ候補「東京国際空港」の確定後スコアC2(N13)は、図8において確定後スコア計算部12が計算した確定後スコアである。この確定後スコアは、パターン8AのスコアSc(N13,{N17,N31,N54})に相当する。
【0029】
また、上記のようなスコア計算部107のスコア計算により、読みトライ構造索引において木構造が偏った部分についても、検索対象データ102および最大表示候補数Dmaで定義される画面の大きさに応じた適切なクエリ候補選択が可能となる。例えば、図11に最大表示候補数Dmaxを5と定義した場合のスコア計算部107のスコア計算例を示す。ここでは読みとして「とうきょうとり」(読みNr〜N66)が入力されたときの、{Ny}の組合わせの代表例としてパターン11Aおよび11Bの各スコアを示す。この例では、スコア集計部13は、より広い範囲の葉をカバーできるパターン11Bを優先して高いスコアを与える。
【0030】
図1のクエリ候補選択部109は、クエリ候補選択条件108の最大表示候補数Dmaxとスコアデータを入力とし、スコアSc(Nx,{Ny})に基づいてスコアが最大となるクエリ候補の組合わせを選択して、ショートカット情報を生成する。クエリ候補選択部109は、生成したショートカット情報を、重要語句抽出部104で抽出された重要語句データと、トライ構造索引生成部105で生成された読みトライ構造索引データとをあわせてクエリ候補辞書データを生成し、クエリ候補辞書103へ登録する。
【0031】
図12は、クエリ候補提示装置のクエリ候補辞書103の構成を示すブロック図であり、クエリ候補辞書103は、見出し一覧21、読みトライ構造索引22およびショートカット情報23を備える。図13にクエリ候補辞書103に登録された見出し一覧21の例を示し、図14にクエリ候補辞書103に登録されたショートカット情報23の例を示す。読みトライ構造索引22の例は図3および図4に示す。
【0032】
図13の見出し一覧21は、読みトライ構造索引22およびショートカット情報23等の他データから参照するためのレコード番号およびクエリ候補としてユーザに提示される見出しからなる。
図14のショートカット情報23a,23b,23cは、ノードNxに対するショートカットの情報をリスト情報で表現している。リストの要素は(ア)〜(エ)からなり、それぞれ、「(ア)リストの次要素へのポインタ」、「(イ)ショートカットノードNi」、「(ウ)見出し一覧を参照するレコード番号」、「(エ)ショートカットスコアSe(Nx,Ny)」である。
【0033】
クエリ候補選択部109は、スコア計算部107で計算されたノードNxに対するクエリ候補の全組合わせからスコアが最大となるクエリ候補の組合わせを選択し、それらクエリ候補のショートカットに関する情報を図14に示すようにノードNxにリンクさせる。図14ではノードN6にリンクするショートカット情報を示しているが、このショートカット情報は図9のパターン9Aの組合わせに相当する。
【0034】
図15は、実施の形態1に係るクエリ候補提示装置のクエリ候補辞書生成部101の動作を示すフローチャートである。以下、図1〜図15を適宜用いて、クエリ候補辞書生成部101の動作を説明する。
ステップST1は重要語句抽出処理であり、重要語句抽出部104が検索対象データ102を解析して、画面レイアウト情報および文書構造情報等を利用して重要語句を抽出すると共に、単語分割および読み付与を実行する。そして、重要語句抽出部104は図2に示す重要語句データをトライ構造索引生成部105へ出力する。
【0035】
ステップST2はトライ構造索引生成処理であり、トライ構造索引生成部105がステップST1で抽出された重要語句の情報を用いて、図3に示す読みトライ構造索引を生成する。そして、トライ構造索引生成部105は読みトライ構造索引データをクエリ候補抽出部106へ出力する。
ステップST3はクエリ候補抽出処理であり、クエリ候補抽出部106はクエリ候補選択条件108およびステップST2で生成された読みトライ構造索引を用いて、クエリ候補辞書103に登録するためのクエリ候補を全て抽出する。そして、クエリ候補抽出部106は生成したクエリ候補データをスコア計算部107へ出力する。
【0036】
ステップST4はスコア計算処理であり、スコア計算部107が、ステップST3で抽出された各クエリ候補に対するスコアを計算する。クエリ候補毎に、打鍵数短縮スコア計算部11が打鍵数短縮スコアを計算し、確定後スコア計算部12が確定後スコアを計算する。そして、スコア集計部13が打鍵数短縮スコアおよび確定後スコアを用いて、クエリ候補の組合わせ毎にスコアを計算し、クエリ候補選択部109へスコアデータを出力する。
【0037】
ステップST5はクエリ候補選択処理であり、ステップST4で計算されたスコアデータを用いて、クエリ候補選択部109がスコアが最大となるクエリ候補の組合わせを選択し、図12〜図14に示す見出し一覧21、読みトライ構造索引22およびショートカット情報23を含むクエリ候補辞書データを生成してクエリ候補辞書103へ登録する。
全てのノードについて同様のスコア計算が行われ、各ノードに対してスコア最大となるクエリ候補の組合わせが登録されると(ステップST6“Yes”)、クエリ候補辞書生成処理は終了する。クエリ候補の組合わせが決まっていないノードが存在しているうちは、処理はステップST3のクエリ候補抽出処理へ戻り(ステップST6“No”)、クエリ候補抽出部106が次のノードに対応するクエリ候補を抽出する。
【0038】
次に、クエリ候補提示部110を説明する。図1に示すクエリ候補提示部110は、クエリ候補辞書生成部101で生成したクエリ候補辞書103、ユーザが入力した検索用キーワードの読み文字列111を受け付ける入力部112、検索用キーワードの読み文字列111をもとにクエリ候補辞書103を参照して次のクエリ候補を表示するクエリ候補表示部113を備える。
なお、検索用キーワードの読み文字列111は、ユーザが入力した検索用キーワードの読み文字列、またはクエリ候補表示部113で表示したクエリ候補に対するユーザの選択結果である。入力はタッチパネル上に表示したソフトウェアキーボード、テンキー等によって行うこととし、入力部112およびクエリ候補表示部113をこのタッチパネルによって実現する。上述したクエリ候補選択条件108の最大表示候補数Dmaxは、クエリ候補表示部113を実現するタッチパネルの表示画面の大きさに応じて定義されたものである。
【0039】
入力部112は、ユーザから検索用キーワードの読み文字列111およびクエリ候補選択結果111aの入力を受け付けて、その情報をクエリ候補表示部113へ出力する。
クエリ候補表示部113は、検索用キーワードの読み文字列111およびクエリ候補選択結果111aの情報を受けると、クエリ候補辞書103を参照して読みトライ構造索引の注目ノードを遷移させる。そして、遷移先のノードに対するショートカット情報をクエリ候補辞書103から取得してクエリ候補のリストを作成して提示する。
【0040】
具体的には、検索用キーワードの読み文字列111が何も入力されていない初期状態では、クエリ候補表示部113は、クエリ候補辞書103の読みトライ構造索引22においてルートノードNrを注目ノードとする。読みが入力されると、クエリ候補表示部113は入力された読みを一文字ずつ読み込み、注目ノードを、その注目ノードの子孫ノードのうちの入力された読みに合致するノードに遷移して、これを新たな注目ノードとする。
他方、クエリ候補表示部113は、提示した複数のクエリ候補の中からユーザが選択した選択結果を示すクエリ候補選択結果111aが入力された場合には、図14に示すショートカット情報の「(イ)ショートカットノードNi」を参照し、該当するノード番号に遷移する。
続いて、クエリ候補表示部113は、遷移した先のノード番号にリンクする全てのショートカット情報をもとに、各ショートカット情報の「(ウ)見出し一覧を参照するレコード番号」を参照し、さらに図13に示す見出し一覧からそのレコード番号の見出しを取得して、この見出しをクエリ候補としてユーザに提示する。このとき、クエリ候補表示部113は、ショートカット情報の「(エ)ショートカットスコアSe(Nx,Ny)」が高いクエリ候補の表示順位が高くなるように、表示順位を制御する。
【0041】
次に、クエリ候補提示部110の動作を説明する。図16は、この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補提示部110の動作を示すフローチャートである。
ステップST11は文字入力処理またはクエリ候補選択処理である。クエリ候補提示処理の開始直後、即ち初期状態のステップST11において、入力部112はユーザから入力される検索用キーワードの読み文字列111を受ける。
【0042】
ステップST12は読みトライ構造索引における状態遷移処理であり、ステップST11で受け付けた検索用キーワードの読み文字列111の情報に従って、クエリ候補表示部113が図3に示す読みトライ構造索引の注目ノードを更新する。例えば、読みNr〜N6の「とうきょうこ」が入力された場合、クエリ候補表示部113は注目ノードをルートノードNrからN6へ遷移させる。
【0043】
ステップST13は終了判定処理であり、ステップST12において注目ノードの子孫ノードのうち、入力された読みに合致する遷移先のノードがない場合は、ユーザが入力した読みに対応するクエリ候補が存在しないということなので、クエリ候補表示部113はクエリ候補提示処理を終了する(ステップST13“No”)。
遷移先のノードがあれば、クエリ候補表示部113は処理を次へ進める(ステップST13“Yes”)。読み「とうきょうこ」が入力された場合、遷移先のノードN6が存在するため次の処理へ進む。
【0044】
ステップST14はクエリ候補取得表示処理であり、クエリ候補表示部113が遷移先のノードに対応したショートカット情報を参照して、クエリ候補のリストを取得する。
読み「とうきょうこ」が入力された場合、遷移先の注目ノードN6に対応するショートカット情報は、図14に示すとおりである。クエリ候補表示部113は、先ずN6に対応するショートカット情報23a(ショートカットN6→N17)、ショートカット情報23b(ショートカットN6→N31)およびショートカット情報23c(ショートカットN6→N54)を参照して見出し一覧のレコード番号R3、R6およびR9を取得する。クエリ候補表示部113は次に、図13の見出し一覧21から同一レコード番号のクエリ候補「東京国際空港第一」、「東京国際空港第二」および「東京国際空港第三駐車場」を取得して、画面に表示する。
【0045】
図17は、クエリ候補提示装置のクエリ候補表示部113がユーザの入力に対して表示するクエリ候補提示の画面例を示す説明図である。図17(a)に示すように、クエリ候補表示部113が取得したクエリ候補を画面上のクエリ候補文字列として表示している。
そして、処理は再びステップST11に戻る。
【0046】
検索用キーワードの読み文字列111として「と」、「う」、「き」、「ょ」、「う」、「こ」が入力されるとき、クエリ候補提示部110はステップST11〜ステップST13の処理を繰り返し、注目ノードがルートノードNrからN1,N2,N3,N4,N5,N6まで遷移する。このとき、クエリ候補表示部113の表示画面は図17(a)の状態となる。ここで、処理がステップST11に戻り、図17(b)に示すようにユーザがクエリ候補「東京国際空港第二」を選択する入力を入力部112に対して行うと、入力部112がその入力をクエリ候補選択結果111aとして受け付けるクエリ候補選択処理を行う。
【0047】
そして、ステップST12において、クエリ候補表示部113が、クエリ候補「東京国際空港第二」に対するショートカット情報に従って注目ノードをショートカットノードN31に遷移させる。同時に、クエリ候補表示部113は、選択されたクエリ候補のショートカット経路(N6→N31)にある読み文字列「くさいくうこうだいに」を読み入力として補って画面表示する(図17(c))。
遷移先ノードが存在するので処理は進み(ステップST13“Yes”)、続くステップST14にて、クエリ候補表示部113はクエリ候補「東京国際空港第二」のショートカットノードN31に応じた次のクエリ候補「東京国際空港第二ターミナル」および「東京国際空港第二駐車場」を取得して画面表示する。
【0048】
再び処理がステップST11に戻り、クエリ候補「東京国際空港第二ターミナル」または「東京国際空港第二駐車場」のいずれか一方がユーザにより選択されると、ステップST13の終了判定において、遷移先のノードが存在しないことが確認されるため、ここでクエリ候補提示処理が終了する。
【0049】
図18は、最大表示候補数Dmaxを5に設定した場合のクエリ候補提示の画面例であり、読みNr〜N66の「とうきょうとり」が入力された場合を示す。クエリ候補提示部110は、図11に示すパターン11Bのスコア計算例に基づいて生成されたクエリ候補辞書103を用いてクエリ候補提示処理を行うことによって、図18の画面例のように項目数とその表示順位を制御して、クエリ候補を表示することができる。
【0050】
以上のように、実施の形態1によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107を用いてクエリ候補辞書103を生成し、クエリ候補提示部110がこのクエリ候補辞書103を参照してクエリ候補を提示するように構成した。そのため、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの検索用キーワードの入力効率を向上できるという効果が得られる。
【0051】
実施の形態2.
図19は、この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。本実施の形態のスコア計算部107は、図19に示すように、打鍵数短縮スコア計算部11、確定後スコア計算部12、スコア集計部13、候補選択スコア計算部14を備える。
本実施の形態に係るクエリ候補提示装置の構成は、スコア計算部107の内部構成以外は図1に示した実施の形態1に係るクエリ候補提示装置の構成と同じであるため、スコア計算部107以外の図示および詳細な説明は省略する。
【0052】
図20は、スコア計算部107が用いるスコアの定義を示す説明図である。本実施の形態のスコア計算部107は、候補選択スコア計算部14が候補選択スコアCsel(Ni)を計算し、打鍵数短縮スコア計算部11が候補選択スコアCsel(Ni)を用いて打鍵数短縮スコアC1(Nx,Ni)を計算する点で、上記実施の形態1のスコア計算部107とは異なる。
【0053】
上記実施の形態1では、クエリ候補選択条件108として一画面に表示可能なクエリ候補数である最大表示候補数Dmaxを設定していたが、一画面に表示できる項目数以上のクエリ候補数をDmaxとして設定しておくことも可能である。このような場合には、クエリ候補提示部110は数ページにわたってクエリ候補を表示することになり、ユーザはスクロールバーまたはページ送りボタン等によってページを送り、クエリ候補を選択する。
候補選択スコア計算部14は、このようにスクロールバーまたはページ送りボタン等によって複数ページにわたってクエリ候補を提示する場合に、ページ数に応じて増大するユーザの入力手間を表す候補選択スコアCsel(Ni)を計算する。
【0054】
打鍵数短縮スコア計算部11は、候補選択スコア計算部14の候補選択スコアを反映した打鍵数短縮スコアを算出する。スコア計算部107のスコアの定義を図20のように拡張することによって、クエリ候補提示部110がスクロールバーまたはページ送りボタン等によって複数ページにわたってクエリ候補を提示する場合であっても、スコア計算部107は、2ページ目、3ページ目で表示されるクエリ候補の打鍵数低減に対する貢献度を考慮したスコア計算が可能となる。
【0055】
以上のように、実施の形態2によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107に、候補選択スコア計算部14を設けるように構成した。このため、スコア計算部107は、クエリ候補提示部110が複数ページにわたってクエリ候補を提示する場合の入力の手間を考慮した適切なスコア計算を行ってクエリ候補辞書103を生成できる。そして、クエリ候補提示部110が、このクエリ候補辞書103を参照してクエリ候補を提示するように構成したので、画面サイズ、検索対象データの読みの偏り等に応じた適切なクエリ候補を提示することができ、ユーザの入力効率を向上できるという効果が得られる。
【0056】
実施の形態3.
図21は、この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。本実施の形態のスコア計算部107は、図19に示した実施の形態2のスコア計算部107の構成に、候補重要度スコア計算部15を追加したものである。
本実施の形態に係るクエリ候補提示装置の構成は、スコア計算部107の内部構成以外は図1に示した実施の形態1に係るクエリ候補提示装置の構成と同じであるため、スコア計算部107以外の図面および詳細な説明は省略する。
【0057】
図22は、スコア計算部107が用いるスコアの定義を示す説明図である。本実施の形態のスコア計算部107は、候補重要度スコア計算部15が候補重要度スコアCL(Ni)を計算し、打鍵数短縮スコア計算部11が候補重要度スコアCL(Ni)を用いて打鍵数短縮スコアC1(Nx,Ni)を計算する点で、上記実施の形態1および2のスコア計算部107とは異なる。
【0058】
例えば、図2に示すような地名または施設名をクエリ候補としてクエリ候補辞書103を生成する場合、重要語句抽出処理において重要語句抽出部104が有名な地名または施設名に高い重要度を付与し(説明書の場合には画面レイアウト情報等を手掛りとした重要度を付与すればよい)、トライ構造索引生成処理においてトライ構造索引生成部105が各ノードに語句の重要度を反映した重み(図22のWgt(Nj))を与えておく。
候補重要度スコア計算部15は、ショートカットノードNiの子孫である葉ノードNjに対応する語句の重要度Wgt(Nj)を用いて、クエリ候補の重要度を示す候補重要度スコアCL(Ni)を計算する。
【0059】
打鍵数短縮スコア計算部11は、候補重要度スコア計算部15の候補重要度スコアを反映した打鍵数短縮スコアを算出する。スコア計算部107のスコアの定義を図22のように拡張することによって、読み文字数や葉ノード数にかかわらず、特に重要な語句を優先的にクエリ候補として表示することが可能となる。
【0060】
以上のように、実施の形態3によれば、クエリ候補を提示してユーザに選択させることによって節約できる打鍵数、ユーザのクエリ候補選択後に残りの文字列を入力するときに予測される打鍵数削減を示す確定後スコア、一画面に表示できる項目数である最大表示候補数等を考慮してスコア計算を行うスコア計算部107に、候補重要度スコア計算部15を設けるように構成した。このため、スコア計算部107は、読み文字数や葉ノード数にかかわらず特に重要な語句に高い優先順位を付けるスコア計算を行ってクエリ候補辞書103を生成できる。そして、クエリ候補提示部110が、このクエリ候補辞書103を参照してクエリ候補を提示するように構成したので、画面サイズ、検索対象データの読みの偏り、語句の重要度等に応じた適切なクエリ候補を提示することができ、ユーザの入力効率を向上できるという効果が得られる。
【図面の簡単な説明】
【0061】
【図1】この発明の実施の形態1に係るクエリ候補提示装置の構成を示すブロック図である。
【図2】この発明の実施の形態1に係るクエリ候補提示装置の重要語句抽出部が抽出した重要語句の例を示す説明図である。
【図3】この発明の実施の形態1に係るクエリ候補提示装置のトライ構造索引生成部が生成した読みトライ構造索引を示す説明図である。
【図4】この発明の実施の形態1に係るクエリ候補提示装置の読みトライ構造索引のショートカットを示す説明図である。
【図5】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図6】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【図7】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図8】この発明の実施の形態1に係るクエリ候補提示装置の確定後スコア計算部の確定後スコア計算例を示す説明図である。
【図9】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図10】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図である。
【図11】この発明の実施の形態1に係るクエリ候補提示装置のスコア計算部のスコア計算例を示す説明図であり、最大表示候補数Dmaxが5のときを示す。
【図12】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書の構成を示すブロック図である。
【図13】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書に登録された見出し一覧の例を示す説明図である。
【図14】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書に登録されたショートカット情報の例を示す説明図である。
【図15】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補辞書生成部の動作を示すフローチャートである。
【図16】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補提示部の動作を示すフローチャートである。
【図17】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補表示部がユーザの入力に対して表示するクエリ候補提示の画面例を示す説明図である。
【図18】この発明の実施の形態1に係るクエリ候補提示装置のクエリ候補表示部が表示する最大表示候補数Dmaxが5のときのクエリ候補提示の画面例を示す説明図である。
【図19】この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図20】この発明の実施の形態2に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【図21】この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部の詳細構成を示すブロック図である。
【図22】この発明の実施の形態3に係るクエリ候補提示装置のスコア計算部が用いるスコアの定義を示す説明図である。
【符号の説明】
【0062】
11 打鍵数短縮スコア計算部、12 確定後スコア計算部、13 スコア集計部、14 候補選択スコア計算部、15 候補重要度スコア計算部、21 見出し一覧、22 読みトライ構造索引、23,23a,23b,23c ショートカット情報、101 クエリ候補辞書生成部、102 検索対象データ、103 クエリ候補辞書、104 重要語句抽出部、105 トライ構造索引生成部、106 クエリ候補抽出部、107 スコア計算部、108 クエリ候補選択条件、109 クエリ候補選択部、110 クエリ候補提示部、111 検索用キーワードの読み文字列、111a クエリ候補選択結果、112 入力部、113 クエリ候補表示部。
【特許請求の範囲】
【請求項1】
一文字ずつ入力される検索用キーワードの読み文字で始まるクエリ候補をクエリ候補辞書から取得して、当該検索用キーワードの候補として提示するクエリ候補表示部を備えるクエリ候補提示装置において、
検索対象データから抽出された語句を当該語句の読み文字に基づいて階層構造化したデータから、前記クエリ候補となる文字列を抽出するクエリ候補抽出部と、
前記検索用キーワードの読み文字で始まる前記文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア計算部と、
前記検索対象データから抽出された語句の読み文字毎に、前記スコア計算部で計算されたスコアに基づいて前記文字列をクエリ候補として前記クエリ候補辞書に登録するクエリ候補選択部とを備えることを特徴とするクエリ候補提示装置。
【請求項2】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
前記打鍵数短縮スコアおよび前記確定後スコアを用いて、前記文字列をクエリ候補とすることによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア集計部とを備えることを特徴とする請求項1記載のクエリ候補提示装置。
【請求項3】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
クエリ候補表示部が同時に提示可能なクエリ候補数に基づいて、複数ページにわたってクエリ候補を提示することによって増大する前記検索用キーワードの入力手間を示す候補選択スコアを計算する候補選択スコア計算部を備え、
スコア集計部は、前記打鍵数短縮スコア、前記確定後スコアおよび前記候補選択スコアを用いて、前記文字列をクエリ候補として提示することによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算することを特徴とする請求項1記載のクエリ候補提示装置。
【請求項4】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
クエリ候補表示部が同時に提示可能なクエリ候補数に基づいて、複数ページにわたってクエリ候補を提示することによって増大する前記検索用キーワードの入力手間を示す候補選択スコアを計算する候補選択スコア計算部と、
検索対象データから抽出された語句の重要度に基づいて、前記文字列の重要度を示す候補重要度スコアを計算する候補重要度スコア計算部を備え、
スコア集計部は、前記打鍵数短縮スコア、前記確定後スコア、前記候補選択スコアおよび前記候補重要度スコアを用いて、前記文字列をクエリ候補とすることによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算することを特徴とする請求項1記載のクエリ候補提示装置。
【請求項5】
クエリ候補選択部は、検索対象データから抽出された語句の読み文字毎に、クエリ候補表示部が同時に提示可能なクエリ候補数に応じた数の文字列をクエリ候補としてクエリ候補辞書に登録することを特徴とする請求項1から請求項4のうちのいずれか1項記載のクエリ候補提示装置。
【請求項1】
一文字ずつ入力される検索用キーワードの読み文字で始まるクエリ候補をクエリ候補辞書から取得して、当該検索用キーワードの候補として提示するクエリ候補表示部を備えるクエリ候補提示装置において、
検索対象データから抽出された語句を当該語句の読み文字に基づいて階層構造化したデータから、前記クエリ候補となる文字列を抽出するクエリ候補抽出部と、
前記検索用キーワードの読み文字で始まる前記文字列をクエリ候補とすることによって得られる当該検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア計算部と、
前記検索対象データから抽出された語句の読み文字毎に、前記スコア計算部で計算されたスコアに基づいて前記文字列をクエリ候補として前記クエリ候補辞書に登録するクエリ候補選択部とを備えることを特徴とするクエリ候補提示装置。
【請求項2】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
前記打鍵数短縮スコアおよび前記確定後スコアを用いて、前記文字列をクエリ候補とすることによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算するスコア集計部とを備えることを特徴とする請求項1記載のクエリ候補提示装置。
【請求項3】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
クエリ候補表示部が同時に提示可能なクエリ候補数に基づいて、複数ページにわたってクエリ候補を提示することによって増大する前記検索用キーワードの入力手間を示す候補選択スコアを計算する候補選択スコア計算部を備え、
スコア集計部は、前記打鍵数短縮スコア、前記確定後スコアおよび前記候補選択スコアを用いて、前記文字列をクエリ候補として提示することによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算することを特徴とする請求項1記載のクエリ候補提示装置。
【請求項4】
スコア計算部は、
検索用キーワードの読み文字で始まる文字列をクエリ候補とすることによって削減される当該検索用キーワードの打鍵数を示す打鍵数短縮スコアを計算する打鍵数短縮スコア計算部と、
前記文字列が前記検索用キーワードの一部であることが確定した場合に当該文字列で始まる新たなクエリ候補を提示することによって予測される当該検索用キーワードの打鍵数削減の効果を示す確定後スコアを計算する確定後スコア計算部と、
クエリ候補表示部が同時に提示可能なクエリ候補数に基づいて、複数ページにわたってクエリ候補を提示することによって増大する前記検索用キーワードの入力手間を示す候補選択スコアを計算する候補選択スコア計算部と、
検索対象データから抽出された語句の重要度に基づいて、前記文字列の重要度を示す候補重要度スコアを計算する候補重要度スコア計算部を備え、
スコア集計部は、前記打鍵数短縮スコア、前記確定後スコア、前記候補選択スコアおよび前記候補重要度スコアを用いて、前記文字列をクエリ候補とすることによって得られる前記検索用キーワードの入力手間軽減の効果を示すスコアを計算することを特徴とする請求項1記載のクエリ候補提示装置。
【請求項5】
クエリ候補選択部は、検索対象データから抽出された語句の読み文字毎に、クエリ候補表示部が同時に提示可能なクエリ候補数に応じた数の文字列をクエリ候補としてクエリ候補辞書に登録することを特徴とする請求項1から請求項4のうちのいずれか1項記載のクエリ候補提示装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2010−86472(P2010−86472A)
【公開日】平成22年4月15日(2010.4.15)
【国際特許分類】
【出願番号】特願2008−257639(P2008−257639)
【出願日】平成20年10月2日(2008.10.2)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
【公開日】平成22年4月15日(2010.4.15)
【国際特許分類】
【出願日】平成20年10月2日(2008.10.2)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
[ Back to top ]