JP4900158B2 - 検索システム、方法およびプログラム - Google Patents

検索システム、方法およびプログラム Download PDF

Info

Publication number
JP4900158B2
JP4900158B2 JP2007247740A JP2007247740A JP4900158B2 JP 4900158 B2 JP4900158 B2 JP 4900158B2 JP 2007247740 A JP2007247740 A JP 2007247740A JP 2007247740 A JP2007247740 A JP 2007247740A JP 4900158 B2 JP4900158 B2 JP 4900158B2
Authority
JP
Japan
Prior art keywords
search
reduction
character string
condition
reduced
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.)
Expired - Fee Related
Application number
JP2007247740A
Other languages
English (en)
Other versions
JP2009080559A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007247740A priority Critical patent/JP4900158B2/ja
Publication of JP2009080559A publication Critical patent/JP2009080559A/ja
Application granted granted Critical
Publication of JP4900158B2 publication Critical patent/JP4900158B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本システムは、入力された検索文字列から検索条件を生成し、情報を検索する検索システムに関する。
従来、必要な情報に関連する階層構造を有する検索語および階層構造を有さない検索語を選択し、これらを組み合わせて検索式を作成し、全ての組み合わせについて検索式とヒット件数を蓄積して、蓄積結果から望ましい検索式と検索結果とを出力する情報の抽出方法がある(特許文献1を参照)。
特開2002−312388号公報 eBay Inc.、eBay、[online]、http://www.ebay.com/
従来、ユーザによって入力された検索文字列を用いてデータの検索を行い、一致する文字列を含む情報を抽出することで、ユーザに所望の情報を提供する検索技術が用いられている。しかし、膨大な量の情報から検索によって所望の情報を得るには、適切な検索条件による絞込みを行う必要がある。このため、従来の検索方法では、検索文字列に不要な文字列が含まれているために、検索結果が得られなかったり(ノーヒット)、得られた検索結果に所望の情報が含まれなかったりといった問題が発生する。
ここで、ノーヒットや不必要な絞込みの原因となった語句を特定し、この語句を除いて再度検索を行えば、適切な検索結果を得ることが出来る可能性がある。しかし、コンピュータの操作に慣れていないユーザであれば、検索語句の取捨選択を行えばよいという解決方法に思い至らないことが多い。また、操作に慣れたユーザにとっても、絞込みのために多くの文字や語句が入力されている中から、何れが不要な絞込みの原因となった語句であるかを特定するのは煩雑な作業である。このため、従来の検索では、必要な情報を求めて検索を開始しても、所望の情報が検索対象のデータベース内に存在するにも拘らず、所望の情報を索出することが出来ないことがある、という問題があった。
上記した問題に鑑み、ユーザに検索文字列を検討させる手間をかけることなく、適切な検索結果を得ることが可能な検索システムを提供することを課題とする。
本検索システムは、上記した課題を解決するために、検索結果を絞り込むための要素が削減された検索条件を用いて情報を検索することで、ユーザに検索文字列を検討させる手間をかけることなく、適切な検索結果を得ることを可能にした。
詳細には、本システムは、データベースに接続される検索システムであって、入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索手段と、前記入力された検索文字列から、前記情報検索手段によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する削減検索手段と、前記削減検索手段によって得られた検索結果を出力する出力手段と、を備える、検索システムである。
本検索システムは、入力された検索文字列から検索条件を生成し、情報を検索する検索システムである。ここで、検索システムはデータベースに接続され、データベースに含まれる情報を検索するものであるが、ここでいうデータベースとは、情報が蓄積されたものをいい、所謂データベース管理システムによって管理されたデータベースのみならず、記憶装置に何らかの情報が蓄積されたもの全般を含む。
本検索システムは、入力された検索文字列から検索条件を生成し、情報を検索する一般的な検索を実行し、更に、前記一般的な検索において用いられた検索条件に比べて検索結果を絞り込むための要素が削減された削減検索条件を生成し、情報を検索する。ここで、削減検索条件は、検索結果を絞り込むための要素が削減されている。このため、削減検索では一般的な検索では索出されない情報を索出することが可能となる。
前記削減検索手段は、前記情報検索手段によって検索結果が得られなかった場合に、前記削減検索条件を生成し、該削減検索条件を用いて検索してもよい。このようにすることで、一般的な検索で検索結果を得ることが出来なかった場合に、検索結果を絞り込むための要素が多すぎたために索出されなかった情報を索出することが可能となる。
また、前記削減検索手段は、前記入力された検索文字列を分解して得られた複数の前記要素のうち一部の要素を除くことで、前記削減検索条件を生成してもよい。入力された検索文字列を分解するには、例えば、予め設定された区切り文字が用いられる。入力文字列を区切り文字の前後で分解することで、複数の要素が得られる。そして、得られた複数の要素のうち、一部の要素を除くことで、一般的な検索において用いられる検索条件に比べて検索結果を絞り込むための要素が削減された、削減検索条件を生成することが可能となる。
また、前記削減検索手段は、前記複数の要素から所定の数の要素の組み合わせを複数抽出することで、抽出されない一部の要素が削減された複数の前記削減検索条件を生成してもよい。複数の要素から所定の数の要素の組み合わせが複数抽出され、この組み合わせの検索条件を用いて検索が行われることで、複数の検索条件のパターンについての検索結果を得ることが可能となる。このようにして得られた複数パターンの検索結果は、得られた検索結果の件数順に並び替える等して活用することが出来る。
また、前記削減検索手段は、検索文字列の後方の一部が除かれた文字列から、前記検索条件を生成することで、前記削減検索条件を生成してもよい。このようにすることで、検索文字列が長すぎるために検索結果が得られなかった場合などに、検索文字列の後方を削除して、前方が一致する検索結果を得ることが可能となる。また、所謂自然文検索など、入力された検索文字列を文章解析して検索を行う場合にも、検索文字列の後方を削除して、前方のみを文章解析して自然文検索することで、より広範な検索結果を得ることが可能となる。
また、本検索システムは、データベースに接続される検索システムであって、入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索手段と、前記情報検索手段によって検索結果が得られなかった場合に、前記入力された検索文字列を分解して得られた複数の前記要素から所定の数の要素の組み合わせを抽出することで、前記情報検索手段によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する第一削減検索手段と、前記第一削減検索手段によって検索結果が得られなかった場合に、検索文字列の後方の一部が除かれた文字列から、前記検索条件
を生成することで、前記削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する第二削減検索手段と、前記第一削減検索手段または前記第二削減検索手段によって得られた検索結果を出力する出力手段と、を備える、検索システムであってもよい。
即ち、通常の検索処理によって検索結果が得られなかった場合に、上記複数の要素から所定の数の要素の組み合わせを抽出して検索を行う検索処理(第一削減検索)が実行され、この第一削減検索によっても検索結果が得られなかった場合に、検索文字列の後方の一部を除いて検索を行う検索処理(第二削減検索)が実行される。このようにすることで、段階的により広範な検索結果が得られる検索方法を試行し、ユーザに検索方法を変更して再度検索を行わせる手間をかけることなく、ユーザに検索結果を提供することが可能となる。
更に、上記本装置による処理は、コンピュータが実行する方法、又はコンピュータに実行させるプログラムとしても提供することが可能である。また、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録して提供してもよい。ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
本検索システムによって、ユーザに検索文字列を検討させる手間をかけることなく、適切な検索結果を得ることが可能な検索システムを提供することが可能となる。
検索システムの実施の形態について、図面に基づいて説明する。図1は、本実施形態における検索システムの概略構成を示す図である。検索システム1は、CPU(Central Processing Unit)11、RAM(Random Access Memory)12等の主記憶装置、HDD(Hard Disk Drive)13等の補助記憶装置、ROM(Read Only Memory)14、およびネットワークデバイス19等を有するコンピュータである。
本実施形態における検索システム1は、ユーザに対してパーソナルコンピュータのサポート情報を提供するWebサイトに設けられる。検索システム1は、インターネット等のネットワーク5を介してユーザ端末3からのアクセスを受け、検索インターフェースをユーザ端末3に表示させるための情報をユーザ端末3へ送信する。ここで、検索インターフェースはWebサーバによってユーザに提供される。そして、検索システム1は、ユーザ端末3より送信された検索要求およびユーザ入力検索文字列を受け付け、サポート情報が蓄積された事例データベース4を検索する。ユーザは、検索システム1より送信された検索結果がユーザ端末3において表示されることで、所望のサポート情報を得ることが出来る。
HDD13には、コンピュータを管理するためのオペレーティングシステム(以下、OS)、コンピュータが有するかまたはコンピュータに接続されたデバイスを制御するためのデバイスドライバ、およびコンピュータにおいて起動されるサービス等の各種プログラムがインストールされている。本実施形態に係るコンピュータは、HDD13にインストールされた各種プログラム(OS、デバイスドライバ、検索プログラム等)がRAM13に展開され、CPU11によって解釈、実行されることで、検索システム1として動作する。
図2は、本実施形態における検索システムの機能構成の概略を示す図である。図1に示したハードウェア構成を有するコンピュータは、CPU11が、RAM12に展開された各種プログラムを解釈および実行することで、情報検索部21と、語句削減検索部22と、文字削減検索部23と、出力部24と、を備える検索システム1として機能する。但し、検索システム1によって実行される各機能は、夫々個別に、または複数の機能をまとめて、専用のハードウェアによって実現されてもよい。
情報検索部21は、ユーザ端末においてユーザによって入力され、ネットワーク5を介して受信されたユーザ入力検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、生成された検索条件を用いて事例データベース4に含まれる情報を検索する。即ち、情報検索部21は、従来の検索処理と概略同様の検索処理を行う。
語句削減検索部22は、情報検索部21によって検索結果が得られなかった場合に、ユーザ入力検索文字列を分解して得られた複数の語句から所定の数の語句の組み合わせを抽出することで、情報検索部21によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、語句削減検索条件を生成し、生成された語句削減検索条件を用いて事例データベース4に含まれる情報を検索する。
文字削減検索部23は、語句削減検索部22によって検索結果が得られなかった場合に、ユーザ入力検索文字列の後方の一部が除かれた文字列から、文字削減検索条件を生成し、生成された文字削減検索条件を用いて事例データベース4に含まれる情報を検索する。
出力部24は、情報検索部21、語句削減検索部22、または文字削減検索部23によって得られた検索結果を、ネットワークデバイス19およびネットワーク5を介してユーザ端末3へ送信する。
図3は、本実施形態に係る事例データベース4の概略構成を示す図である。事例データベース4には、質問内容や回答内容、QAナンバー、システムID、参照日時情報等を有する事例データが蓄積される。ここで、質問内容には、ユーザが解決したい問題や遭遇した事象等がテキスト形式で含まれ、回答内容には、質問内容に対応する解決方法や事象の説明等がテキスト形式で含まれる。即ち、ユーザは、質問内容を参照することで自分が解決したい問題や遭遇した事象を見つけ、対応する回答内容を参照することで問題を解決することができる。また、QAナンバーは、ユーザに対して提供される識別情報であり、システムIDは、システムが事例データを管理する際に使用する識別情報である。また、参照日時情報は、システム管理者やオペレータによって事例データが作成されたり内容が更新されたりした際の日時を示す情報である。
図4は、本実施形態における検索処理全体の流れを示すフローチャートである。本フローチャートに示された処理は、検索システム1が、ユーザ端末3においてユーザによって入力された検索文字列であるユーザ入力検索文字列を検索指示とともに受信したことを契機として開始される。
なお、本実施形態における検索処理では、キーワード検索、文章検索、QAナンバー検索の3種類の検索が行われる。ここで、キーワード検索とは、1または複数の検索キーワードを用いて、特に検索式が指定されない場合は所謂AND検索を行う検索である。通常、複数の検索キーワードは、半角スペースや全角スペース等の区切り文字で区切られて入力される。文章検索とは、ユーザによって入力され、受信された自然文を解析し(解析には、例えば形態素解析が用いられる)、解析結果に従って生成された検索条件を用いて所謂自然文検索を行うものである。また、QAナンバー検索とは、検索の対象となる事例データベース4内の事例データに付された識別情報であるQAナンバーを検索条件として検
索するものである。
ステップS101では、検索方式が判定される。検索システム1は、受信されたユーザ入力検索文字列を用いて検索する際の検索方式が、キーワード検索、文章検索、およびQAナンバー検索のうちの何れであるかを判定する。本実施形態では、ここでキーワード検索、文章検索およびQAナンバー検索のうちの何れが行われるかは、ユーザによる検索方式の指定に従うものとする。即ち、Webサーバによってユーザに提供される検索インターフェースには、キーワード検索、文章検索およびQAナンバー検索のうちの何れを行うかをユーザに選択させる表示があり、ユーザの選択結果が、ユーザ入力検索文字列とともにユーザ端末3から送信され、検索システム1によって受信される。検索システム1は、受信された、ユーザの選択結果に基づいて、何れの検索方式を用いて検索を行うかを決定する。検索方式がキーワード検索または文章検索であると判定された場合、処理はステップS102へ進む。検索方式がQAナンバー検索であると判定された場合、処理はステップS112へ進む。
ステップS102からステップS107では、キーワード検索または文章検索が行われる。情報検索部21は、キーワード検索であれば区切り文字でユーザ入力検索文字列を区切ってAND検索を行い、文章検索であればユーザ入力検索文字列の解析を行って自然文検索を行う(ステップS102)。そして、検索結果の有無を判定し(ステップS103)、検索結果が得られた場合、検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS104)。なお、本実施形態において、「検索結果が得られた」とは、検索によって少なくとも1件の事例データが抽出されたことをいう。検索結果が得られなかった場合、ユーザ入力検索文字列中の入力ミスと考えられる語句を正しい語句に置き換えたり、より適切と思われる語句に置き換えたりして、レコメンド検索文字列を生成し、このレコメンド検索文字列を用いて再検索を行う(ステップS105)。そして、再検索による検索結果の有無を判定し(ステップS106)、検索結果が得られた場合、検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS107)。検索結果が得られなかった場合、処理はステップS108へ進む。
ステップS108では、本実施形態に係る削減検索処理が行われる。本実施形態において、削減検索処理とは、ユーザ入力検索文字列をそのまま用いた検索において検索結果が得られなかった場合に、ユーザ入力検索文字列の一部を削除することで、新たな検索条件を作成し、再度検索を行うことをいう。検索システム1は、受信されたユーザ入力検索文字列の一部を削除し、再度検索を行う(ステップS108)。削減検索処理の詳細は後述する。その後、本フローチャートに示された処理は終了する。
ステップS112からステップS114では、QAナンバー検索が行われる。検索システム1は、ステップS101においてQAナンバー検索がユーザに選択されたと判定されたことを受けて、受信されたユーザ入力検索文字列が、予め定められたQAナンバーのフォーマット(本実施形態では、QAナンバーに使用される数字の桁数および数値の取りうる範囲)に合致するか否かを判定する(ステップS112)。ユーザ入力検索文字列がQAナンバーのフォーマットに合致すると判定された場合、検索システム1は、事例データベース4から、QAナンバーが合致する事例データを抽出する(ステップS113)。QAナンバーが合致する事例データが索出されると、合致したQAナンバーに係る事例データの情報をユーザ端末3へ送信し、ユーザ端末3に事例データを表示させる(ステップS114)。QAナンバーが合致する事例データが索出されなかった場合、検索結果が得られなかった旨をユーザに伝えるためのノーヒット画面情報をユーザ端末3へ送信し、ユーザ端末3にノーヒット画面を表示させる(ステップS115)。その後、本フローチャートに示された処理は終了する。
ステップS116およびステップS117では、キーワード検索が行われる。情報検索部21は、ステップS112でユーザ入力検索文字列がQAナンバーのフォーマットに合致しない(検索文字列が不正である)と判定された場合、ユーザ入力検索文字列を用いて通常のキーワード検索を行う(ステップS116)。ここで行われるキーワード検索は、ステップS102において行われるキーワード検索と同様のものである。そして、検索結果の有無を判定し(ステップS117)、検索結果が得られた場合、検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS118)。検索結果が得られなかった場合、ノーヒット画面情報をユーザ端末3へ送信し、ユーザ端末3にノーヒット画面を表示させる(ステップS115)。その後、本フローチャートに示された処理は終了する。
図5は、本実施形態における削減検索処理の流れを示すフローチャートである。即ち、本フローチャートは、図4のステップS108の削減検索処理の内容を示すフローチャートである。削減検索処理では、ユーザ入力検索文字列から1以上の語句を削減して検索を行う語句削減検索処理、または、ユーザ入力検索文字列から1以上の文字を削減して検索を行う文字削減検索処理、の何れかが選択されて実行される。
ステップS201では、区切り文字の有無が判定される。検索システム1は、初めに、受信されたユーザ入力検索文字列に区切り文字が含まれるか否かを判定する(ステップS201)。本実施形態では、半角スペース、全角スペース、タブ(水平タブ)、クオーテーションマーク、ダブルクオーテーションマーク、句点、読点、改行文字(CarriageReturnおよびLineFeed)、等が区切り文字として認識されるものとする。ユーザ入力検索文字列に区切り文字が含まれると判定された場合、処理はステップS202へ進む。また、区切り文字が含まれないと判定された場合、処理はステップS204へ進む。
ステップS202およびステップS203では、語句削減検索処理が実行され、検索結果の有無が判定される。語句削減検索部22は、ユーザ入力検索文字列から1以上の語句を削減し、得られた文字列を新たな検索文字列(語句削減検索条件)としてキーワード検索を行う、語句削減検索処理を実行する(ステップS202)。語句削減検索処理の詳細については後述する。そして、検索結果の有無を判定し(ステップS203)、検索結果が得られた場合、検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS206)。検索結果が得られなかった場合、処理はステップS204へ進む。
ステップS204からステップS207では、文字削減検索処理が実行され、検索結果の有無が判定される。文字削減検索部23は、ユーザ入力検索文字列から1以上の文字を削減し、得られた文字列を新たな検索文字列(文字削減検索条件)として文章検索を行う、文字削減検索処理を実行する(ステップS204)。文字削減検索処理の詳細については後述する。そして、検索結果の有無を判定し(ステップS205)、検索結果が得られた場合、検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS206)。検索結果が得られなかった場合、ノーヒット画面情報をユーザ端末3へ送信し、ユーザ端末3にノーヒット画面を表示させる(ステップS207)。その後、本フローチャートに示された処理は終了する。
図6aおよび図6bは、本実施形態における語句削減検索処理の流れを示すフローチャートである。即ち、本フローチャートは、図5のステップS202の語句削減検索処理の内容を示すフローチャートである。
ステップS301およびステップS302では、ユーザ入力検索文字列が区切り文字で
分解され、分解後の語数が検索上限語数よりも多いか否かが判定される。語句削減検索部22は、ユーザ入力検索文字列を、区切り文字を境に、複数の検索語句に分解する(ステップS301)。例えば、ユーザ入力検索文字列が「AA BB CC DD EE」であった場合、スペースを境に、「AA」、「BB」、「CC」、「DD」および「EE」の各検索語句に分解する。そして、語句削減検索部22は、分解後の検索語句の語数をカウントし、カウントされた語数が予め定められた検索上限語数より多いか否かを判定する(ステップS302)。ここで、検索上限語数は、後述する一連の検索処理における負荷の大きさと、検索システム1の処理能力、ユーザに対するレスポンス等を考慮して適宜予め設定されることが好ましい。検索語句の語数が検索上限語数よりも多いと判定された場合、処理はステップS303へ進む。検索語句の語数が検索上限語数以下であると判定された場合、処理はステップS307へ進む。
ステップS303からステップS306では、分解後の検索語句の一部が抽出され、キーワード検索が行われる。語句削減検索部22は、ステップS301で分解された検索語句のうち、検索上限語数分の語句を先頭から順番に抽出する(ステップS303)。例えば、検索上限語数が4に設定されており、分解された各検索語句が「AA」、「BB」、「CC」、「DD」および「EE」であった場合、先頭から4つの語句「AA」、「BB」、「CC」および「DD」が抽出される。そして、語句削減検索部22は、抽出された検索上限語数分の語句を検索条件として、キーワード検索を行う(ステップS304)。なお、このキーワード検索においては、上述のレコメンド検索文字列を提示する処理が行われてもよい。
その後、検索結果の有無が判定される(ステップS305)。検索結果が得られた場合、検索システム1(出力部24)は検索結果をユーザ端末3へ送信し、ユーザ端末3に検索結果を表示させる(ステップS306)。この際、ユーザ端末3へ送られる情報には、この検索結果は、ユーザ入力検索文字列の全部を用いた検索では検索結果が得られなかったためにユーザ入力検索文字列の一部を用いて検索を行って得られた検索結果である旨をユーザに伝達するための情報が含まれる。また、検索結果が得られなかった場合、処理はステップS307へ進む。
ステップS307では、検索語句の組み合わせが作成される。語句削減検索部22は、ステップS301で分解された検索語句の数が検索上限語数以下であるとステップS302において判定された場合には、分解された全ての検索語句の中から、「検索語句の数−1」個の検索語句を抽出する場合の組み合わせを生成する。また、語句削減検索部22は、ステップS301で分解された検索語句の数が検索上限語数よりも多いとステップS302において判定された場合には、ステップS303で抽出された検索上限語数分の検索語句の中から、「検索語句の数−1」個の検索語句を抽出する場合の全ての組み合わせを生成する。換言すると、ステップS307では、分解された検索語句から検索に使用しない語句が削除された、検索語句の組み合わせが生成される。
例えば、この時点で検索語句が「AA」、「BB」、「CC」および「DD」の4つである場合、これら4つの検索語句から、3(=4−1)つの検索語句を抽出する場合の全ての組み合わせである、「AA、BBおよびCC」、「AA、BBおよびDD」、「AA、CCおよびDD」、「BB、CCおよびDD」の4組が生成される。その後、処理はステップS308へ進む。
但し、ステップS307に示された処理は、この後の検索で検索結果が得られなかった場合に複数回実行される。複数回目の実行時には、検索語句の中から、「検索語句の数−実行回数」個の検索語句を抽出する場合の全ての組み合わせが生成される。例えば、1回目の実行時に抽出された「検索語句の数−1」個の検索語句の組み合わせでは検索結果が
得られなかった場合、2回目の実行時に「検索語句の数−2」個の検索語句を抽出する場合の組み合わせが生成される。上記の例に拠れば、「AAおよびBB」、「AAおよびCC」、「AAおよびDD」、「BBおよびCC」、「BBおよびDD」、「CCおよびDD」の6組が生成される。
ステップS308からステップS310では、キーワード検索が行われる。語句削減検索部22は、ステップS307で生成された組み合わせのうち、何れか1の組み合わせを検索条件として、通常のキーワード検索を行う(ステップS308)。ここで行われるキーワード検索は、ステップS102において行われるキーワード検索と同様のものである。そして、検索結果の有無を判定し(ステップS309)、検索結果が得られた場合、検索結果を検索結果リストへ保存する(ステップS310)。検索結果が得られなかった場合、および検索結果が得られて検索結果リストへの保存が完了した後は、処理はステップS311へ進む。
図7は、本実施形態における検索結果リストの概略構成を示す図である。検索結果リストには、検索条件、ヒット件数、索出された事例データの識別情報(システムIDまたはQAナンバー)が保存される。
ステップS311では、全ての組み合わせについてキーワード検索が終了したか否かが判定される。語句削減検索部22は、ステップS307で生成された全ての組み合わせについて、キーワード検索が完了したか否かを判定する。全ての組み合わせについて検索が完了していない場合、処理はステップS308へ進む。即ち、ステップS308からステップS311の処理は、ステップS307で生成された全ての組み合わせについてキーワード検索が完了するまで繰り返される。先述の例によれば、ステップS307で「AA、BBおよびCC」、「AA、BBおよびDD」、「AA、CCおよびDD」、「BB、CCおよびDD」の4組の組み合わせが生成されたため、ステップS308からステップS311の処理は、これら4組の全ての組み合わせについて検索が終了するまで、繰り返される。また、この際得られた検索結果は、ステップS310において検索結果リストへ保存される。全ての組み合わせについて検索が終了すると、処理はステップS312へ進む。
ステップS312では、ステップS307で生成された組み合わせのうち少なくとも1組の組み合わせにおいて、検索結果が得られたか否かが判定される。語句削減検索部22は、検索結果リストを参照し、検索結果リストに1つ以上の検索結果が保存されているか否かを判定する。検索結果が得られたと判定された場合、処理はステップS313へ進む。検索結果が得られなかったと判定された場合、処理はステップS314へ進む。
ステップS313では、検索結果リストから、ヒット件数が多い検索結果が抽出される。語句削減検索部22は、検索結果リストの検索結果を、ヒット件数順に並び替え、ヒット件数が多い検索結果を、上位から予め定められた数だけ抽出する。これは、検索結果リストに検索結果が多く保存されている場合に、ヒット件数が多い検索語句の組み合わせと検索結果とをユーザに提供するための処理である。なお、検索結果リストにヒット件数が同一の検索結果が含まれる場合には、ヒット件数が同一の検索結果は、生成された組み合わせパターン順に並び替えられる。その後、本フローチャートに示された処理は終了し、検索結果がユーザ端末3へ送信される(ステップS206を参照)。
図8は、本実施形態においてユーザ端末3に表示される検索結果のイメージである。ステップS206で表示される検索結果には、ユーザ入力検索文字列表示91と、ユーザ入力検索文字列を用いた検索では検索結果が得られなかった旨の表示92と、削減検索処理に用いられた検索条件の表示93と、ヒット件数94と、索出された事例データの一覧9
5と、検索結果が得られた他の検索条件96と、が含まれる。ユーザは、ユーザ端末3を操作して索出された事例データの一覧95内の所望の事例データを選択することで、該当する事例データの全体を閲覧することが出来る。また、検索結果が得られた他の検索条件96を選択することで、他の検索条件による検索結果を閲覧することも可能である。この際、ユーザ端末3によって送信された閲覧要求は、図示しないWebサーバによって処理される。
ステップS314では、組み合わせ検索の回数が最大回数を超えたか否かが判定される。語句削減検索部22は、一連の検索処理における組み合わせ検索が行われた回数、即ち、ステップS308の検索が行われた回数をカウントし、予め定められた最大回数を超えたか否かを判定する。この処理は、ステップS308の検索が多数回実行されることによって検索システム1の負荷が過大となりレスポンスが低下することを防止するために、予め定められた最大回数を超えた場合に語句削減検索処理を終了するための処理である。組み合わせ検索の回数が最大回数を超えていないと判定された場合、処理はステップS307へ進む。組み合わせ検索の回数が最大回数を超えたと判定された場合、本フローチャートに示された処理は終了し、ノーヒット画面情報がユーザ端末3へ送信される(ステップS207を参照)。
図9は、本実施形態における文字削減検索処理の流れを示すフローチャートである。本フローチャートは、図5のステップS204の文字削減検索処理の内容を示すフローチャートである。
ステップS401では、ユーザ入力検索文字列のトリミングが行われる。文字削減検索部23は、ユーザ入力検索文字列の前後に空白がある場合、文字列の前後における全ての空白を削除し、以降で使用されるトリミング済検索文字列を生成する。なお、ここで空白とは、半角スペース、全角スペース、タブ、改行文字をいう。例えば、ユーザ入力検索文字列が「 AA BB CC DD EE 」であった場合、前後の空白が削除され、トリミング済検索文字列「AA BB CC DD EE」が生成される。その後、処理はステップS402へ進む。
ステップS402では、削除文字数が算出される。文字削減検索部23は、ステップS401において生成されたトリミング済検索文字列の文字数をカウントし、この文字数と、最小検索文字数と、最大検索回数とに基づいて、削除文字数を算出する。ここで、最小検索文字数とは、文字削減検索処理において文章検索に用いられる検索文字列が少なくとも有することが好ましい文字数であり、最大検索回数とは、検索システム1の処理能力、ユーザに対するレスポンス等を考慮して設定された、文字削減検索処理における文章検索回数の上限である。
即ち、削除文字数は、「トリミング済検索文字列の文字数−最小検索文字数」を、最大検索回数で除算することによって求められる。除算結果に余りが発生する場合には、除算結果の切り上げ、または切り下げ等、実施形態に応じて適宜定められた方法で、整数値の削除文字数が算出されるようにする。なお、最小検索文字数および最大検索回数には、実施の形態に応じて最適な値が予め定められる。例えば、最小検索文字数が2、最大検索回数が3に設定されており、ステップS401においてトリミング済検索文字列「AA BB CC DD EE」が生成された場合、トリミング済検索文字列の文字数は14であるため、削除文字数は(14−2)÷3=4となる。その後、処理はステップS403へ進む。
ステップS403では、自然文検索で用いられる検索文字列が生成される。文字削減検索部23は、ステップS401で生成されたトリミング済検索文字列の後方から、ステッ
プS402で算出された削除文字数分の文字を削除することで、実際に自然文検索において用いられる検索文字列を生成する。上記具体例によれば、トリミング済検索文字列は「AA BB CC DD EE」であり、削除文字数は4であるため、後方の4文字が削除され、検索文字列「AA BB CC D」が生成される。その後、処理はステップS404へ進む。
但し、ステップS403に示された処理は、この後の検索で検索結果が得られなかった場合に複数回実行される。複数回目の実行時には、前回の実行時に生成された検索文字列から、更に削除文字数分の文字を削除する。例えば、検索文字列「AA BB CC D」では検索結果が得られなかった場合、更に4文字が削除されて検索文字列「AA BB
」が生成され、検索文字列「AA BB 」では検索結果が得られなかった場合、更に4文字が削除されて検索文字列「AA」が生成される。
ステップS404では、検索文字数が最小検索文字数以上であるか否かが判定される。文字削減検索部23は、ステップS403で生成された検索文字列の文字数と最小検索文字数(上記した例においては、2)を比較し、検索文字数が最小検索文字数以上であるか否かを判定する。検索文字数が最小検索文字数以上であると判定された場合、処理はステップS405へ進む。検索文字数が最小検索文字数以上ではない(最小検索文字数未満である)と判定された場合、本フローチャートに示された処理は終了し、ノーヒット画面情報がユーザ端末3へ送信される(ステップS207を参照)。
ステップS405およびステップS406では、文章検索が行われる。文字削減検索部23は、ステップS403で生成された検索文字列を用いて文章検索(自然文検索)を行う(ステップS405)。ここで行われる文章検索は、ステップS102において行われる文章検索と同様のものである。文章検索の実行後、文字削減検索部23は検索結果が得られたか否かを判定する(ステップS406)。検索結果が得られなかったと判定された場合、処理はステップS403へ進む。即ち、ステップS403からステップS406の処理は、検索結果が得られるまで繰り返される。検索結果が得られたと判定された場合、本フローチャートに示された処理は終了し、検索結果がユーザ端末3へ送信される(ステップS206を参照)。
本実施形態に拠れば、ユーザ入力検索文字列に不要な語句が含まれるか、ユーザ入力検索文字列が長すぎるために、通常の検索処理によって検索結果が得られなかった場合であっても、自動的に不要な語句の除去や長すぎる検索文字列の圧縮を行って再度検索を行うことで、ユーザに検索結果を提供することが出来る。更に、ユーザ入力検索文字列から語句を削除して複数の組み合わせについて検索を行う場合(語句削減検索処理)には、最もヒット件数の多い検索結果が出力されるために、適切な絞込みが行われた検索語句による検索結果をユーザに提供することが可能である。
なお、本実施形態では、ユーザ入力検索文字列の一部を削除して検索を行う削減検索処理が、通常の検索において検索結果が得られなかった場合に実行される。しかし、検索結果が得られなかった場合(ノーヒット)の他、得られた検索結果が少なすぎる場合など、通常の検索ではユーザに適切な検索結果を提供することが出来ないと判断できる場合に、上記削減検索処理が行われることとしてもよい。
また、本実施形態では、検索文字列の後方から、削除文字数分の文字を削除することで、実際に自然文検索において用いられる検索文字列を生成することとしたが、削除の単位は文字に代えて単語(語句)であってもよいし、削除される量は文字数に代えて単語数であってもよい。この場合、検索文字列を解析(例えば、形態素解析)等することで単語に分節、単語数をカウントし、この単語数に基づいて削除単語数が算出される。より具体的
には、「カウントされた単語数−最小検索単語数」を、最大検索回数で除算することによって求めることとしてもよい。除算結果に余りが発生する場合の処理や、最小検索単語数および最大検索回数が実施の形態に応じて適宜定められるべきことは、上記ステップS402において説明した通りである。その後、トリミング済検索文字列の後方から、算出された削除単語数分の単語が削除されることで、実際に自然文検索において用いられる検索文字列が生成される。以降の処理は、図9を用いて説明した文字削減検索処理と概略同様であるため、説明を省略する。
実施形態における検索システムのハードウェア構成の概略を示す図である。 実施形態における検索システムの機能構成の概略を示す図である。 実施形態に係る事例データベースの概略構成を示す図である。 実施形態における検索処理全体の流れを示すフローチャートである。 実施形態における削減検索処理の流れを示すフローチャートである。 実施形態における語句削減検索処理の流れを示すフローチャートaである。 実施形態における語句削減検索処理の流れを示すフローチャートbである。 実施形態における検索結果リストの概略構成を示す図である。 実施形態においてユーザ端末に表示される検索結果のイメージである。 実施形態における文字削減検索処理の流れを示すフローチャートである。
符号の説明
1 検索システム
3 ユーザ端末
5 ネットワーク
11 CPU(Central Processing Unit)
12 RAM(Random Access Memory)
13 HDD(Hard Disk Drive)
14 ROM(Read Only Memory)
19 ネットワークデバイス
21 情報検索部
22 語句削減検索部
23 文字削減検索部
24 出力部

Claims (11)

  1. データベースに接続される検索システムであって、
    入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索手段と、
    前記入力された検索文字列から、前記情報検索手段によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する削減検索手段と、
    前記削減検索手段によって得られた検索結果を出力する出力手段と、
    を備え、
    前記削減検索手段は、前記入力された検索文字列の長さに基づいて削減すべき文字または単語の数を算出し、算出された数の文字または単語を該検索文字列の後方から除き、該後方の一部が除かれた文字列から前記検索条件を生成することで、前記削減検索条件を生成する、
    検索システム。
  2. 前記削減検索手段は、前記入力された検索文字列の長さから所定の最小検索文字数を減算することで得られた値を、予め設定された検索回数の上限で除算することによって、前記削減すべき文字または単語の数を算出する、
    請求項1に記載の検索システム。
  3. 前記削減検索手段は、前記情報検索手段によって検索結果が得られなかった場合に、前記削減検索条件を生成し、該削減検索条件を用いて検索する、
    請求項1または2に記載の検索システム。
  4. 前記削減検索手段は、前記入力された検索文字列を分解して得られた複数の前記要素のうち一部の要素を除くことで、前記削減検索条件を生成する、
    請求項3に記載の検索システム。
  5. 前記削減検索手段は、前記複数の要素から所定の数の要素の組み合わせを複数抽出することで、抽出されない一部の要素が削減された複数の前記削減検索条件を生成する、
    請求項4に記載の検索システム。
  6. データベースに接続される検索システムであって、
    入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索手段と、
    前記情報検索手段によって検索結果が得られなかった場合に、前記入力された検索文字列を分解して得られた複数の前記要素から所定の数の要素の組み合わせを抽出することで、前記情報検索手段によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する第一削減検索手段と、
    前記第一削減検索手段によって検索結果が得られなかった場合に、前記入力された検索文字列の長さに基づいて削減すべき文字または単語の数を算出し、算出された数の文字または単語を該検索文字列の後方から除き、該後方の一部が除かれた文字列から、前記検索条件を生成することで、前記削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する第二削減検索手段と、
    前記第一削減検索手段または前記第二削減検索手段によって得られた検索結果を出力する出力手段と、
    を備える、検索システム。
  7. 前記第二削減検索手段は、前記入力された検索文字列の長さから所定の最小検索文字数を減算することで得られた値を、予め設定された検索回数の上限で除算することによって、前記削減すべき文字または単語の数を算出する、
    請求項6に記載の検索システム。
  8. データベースに接続されたコンピュータが、
    入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索と、
    前記入力された検索文字列から、前記情報検索において生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成し、該削減検索条件を用いて前記データベースに含まれる情報を検索する削減検索と、
    前記削減検索において得られた検索結果の出力と、
    を実行し、
    前記削減検索では、前記入力された検索文字列の長さに基づいて削減すべき文字または単語の数が算出され、算出された数の文字または単語が該検索文字列の後方から除かれ、該後方の一部が除かれた文字列から前記検索条件が生成されることで、前記削減検索条件が生成される、
    検索方法。
  9. 前記削減検索では、前記入力された検索文字列の長さから所定の最小検索文字数を減算することで得られた値を、予め設定された検索回数の上限で除算することによって、前記削減すべき文字または単語の数が算出される、
    請求項8に記載の検索方法。
  10. データベースに接続されたコンピュータを、
    入力された検索文字列から、検索結果を絞り込むための要素の集合である検索条件を生成し、該検索条件を用いて前記データベースに含まれる情報を検索する情報検索手段と、
    前記入力された検索文字列から、前記情報検索手段によって生成された検索条件に比べて前記検索結果を絞り込むための要素が削減された検索条件である、削減検索条件を生成
    し、該削減検索条件を用いて前記データベースに含まれる情報を検索する削減検索手段と、
    前記削減検索手段によって得られた検索結果を出力する出力手段と、
    として機能させ、
    前記削減検索手段は、前記入力された検索文字列の長さに基づいて削減すべき文字または単語の数を算出し、算出された数の文字または単語を該検索文字列の後方から除き、該後方の一部が除かれた文字列から前記検索条件を生成することで、前記削減検索条件を生成する、
    検索プログラム。
  11. 前記削減検索手段は、前記入力された検索文字列の長さから所定の最小検索文字数を減算することで得られた値を、予め設定された検索回数の上限で除算することによって、前記削減すべき文字または単語の数を算出する、
    請求項10に記載の検索プログラム。
JP2007247740A 2007-09-25 2007-09-25 検索システム、方法およびプログラム Expired - Fee Related JP4900158B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007247740A JP4900158B2 (ja) 2007-09-25 2007-09-25 検索システム、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007247740A JP4900158B2 (ja) 2007-09-25 2007-09-25 検索システム、方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2009080559A JP2009080559A (ja) 2009-04-16
JP4900158B2 true JP4900158B2 (ja) 2012-03-21

Family

ID=40655285

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007247740A Expired - Fee Related JP4900158B2 (ja) 2007-09-25 2007-09-25 検索システム、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP4900158B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315851B2 (en) * 2010-06-30 2012-11-20 Business Objects Software Limited Phonetic keys for the Japanese language
JP5600498B2 (ja) * 2010-07-01 2014-10-01 Kddi株式会社 情報選択装置、サーバ装置、情報選択方法、及びプログラム
JP5581273B2 (ja) * 2011-06-30 2014-08-27 株式会社エクシング 電子早見本装置
JP2014096083A (ja) * 2012-11-12 2014-05-22 Fuji Xerox Co Ltd 情報検索プログラム及び情報検索装置
KR101730647B1 (ko) * 2015-06-15 2017-04-26 네이버 주식회사 검색 서비스 제공 장치, 방법, 및 컴퓨터 프로그램
JP2018063610A (ja) * 2016-10-13 2018-04-19 株式会社オウケイウェイヴ 文章検索システム、q&a検索システム、クライアントステム及びサーバ

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10228484A (ja) * 1997-02-17 1998-08-25 Nippon Telegr & Teleph Corp <Ntt> データベース検索装置および方法
JPH11161659A (ja) * 1997-11-27 1999-06-18 Nippon Telegr & Teleph Corp <Ntt> 検索式の動的変更方法及び装置及び検索式の動的変更プログラムを格納した記憶媒体
JP2000057156A (ja) * 1998-08-07 2000-02-25 Nippon Telegr & Teleph Corp <Ntt> 情報検索システム及び情報検索プログラムを記録した記録媒体
JP2002230037A (ja) * 2001-01-31 2002-08-16 Kddi Corp 検索システム、方法及びプログラム

Also Published As

Publication number Publication date
JP2009080559A (ja) 2009-04-16

Similar Documents

Publication Publication Date Title
US7577963B2 (en) Event data translation system
JP6538277B2 (ja) 検索クエリ間におけるクエリパターンおよび関連する総統計の特定
US20070203688A1 (en) Apparatus and method for word translation information output processing
JP4900158B2 (ja) 検索システム、方法およびプログラム
JP2009169541A (ja) Webページ検索サーバ及びクエリ推薦方法
JP2011100403A (ja) 情報処理装置、情報抽出方法、プログラム及び情報処理システム
JP4631795B2 (ja) 情報検索支援システム、情報検索支援方法および情報検索支援プログラム
JP4091146B2 (ja) 文書検索装置およびその装置としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2007140603A (ja) アーリーアダプタ抽出方法及び装置及びプログラム及び話題語予測方法及び装置及びプログラム
JP2006285656A (ja) 文書検索システム、記録媒体、プログラム、および文書検索方法
JP4610543B2 (ja) 期間抽出装置,期間抽出方法,その方法を実装した期間抽出プログラム及びそのプログラムを格納した記録媒体
JP4719921B2 (ja) データ表示装置およびデータ表示プログラム
JP2009129009A (ja) 特許審査支援システム、特許審査支援方法、および特許審査支援プログラム
JP2008077252A (ja) 文書ランキング方法、文書検索方法、文書ランキング装置、文書検索装置、及び記録媒体
JP2007011973A (ja) 情報検索装置及び情報検索プログラム
JP5491446B2 (ja) 話題語獲得装置、方法、及びプログラム
JP3937741B2 (ja) 文書の標準化
JP5640700B2 (ja) 情報検索装置、検索入力方法、及び検索入力プログラム
JP5127553B2 (ja) 情報処理装置、情報処理方法、プログラム及び記録媒体
JP2008026967A (ja) 文書検索システム及びプログラム
JP2007128224A (ja) 文書インデキシング装置、文書インデキシング方法及び文書インデキシングプログラム
JP4783563B2 (ja) インデックス生成プログラム、検索プログラム、インデックス生成方法、検索方法、インデックス生成装置および検索装置
JP2006331001A (ja) 専門家抽出装置および辞書提供装置
JP2012043258A (ja) 検索システム、検索装置、検索プログラム、記録媒体及び検索方法
JP2009289094A (ja) キーワード比較システム、キーワード比較方法およびキーワード比較プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111003

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: 20111206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111219

R150 Certificate of patent or registration of utility model

Ref document number: 4900158

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees