[実施の形態1]
図1に、本技術の実施の形態に係る検索支援装置の機能ブロック図を示す。検索支援装置は、入力部11と、データ格納部12と、同義語候補検索部13と、同義語候補データベース(DB)14と、同義語候補検証部15と、文書データベース(DB)16と、絞込比率テーブル格納部17と、優先度テーブル格納部18と、出力部19とを有する。
入力部11は、ユーザから検索式の入力を受け付け、データ格納部12へ格納する。同義語候補検索部13は、同義語候補が格納されている同義語候補DB14から、データ格納部12に格納された検索式に含まれる検索語の同義語候補を抽出し、データ格納部12に格納する。同義語候補検証部15は、データ格納部12に格納された検索語及び同義語候補を用いて、例えば特許文献のような文書データが格納されている文書DB16に対し検索処理及び絞込検索処理を行い、絞り込み前後の該当件数から比率を算出して絞込比率テーブル格納部17に格納する。また、同義語候補検証部15は、算出された比率から同義語候補の採否を判断する際の規準となる優先度を算出すると共に、同義語として採用すべき同義語候補を特定し、優先度テーブル格納部18に格納する。なお、同義語候補検証部15は、文書検索部151と、絞込比率算出部152と、候補特定部153とを含む。そして、出力部19は、優先度テーブル格納部18に格納された同義語候補及び優先度を出力する。
次に、図2乃至14を用いて、本実施の形態に係る検索支援装置の処理内容について説明する。図2に、検索支援装置の処理フローを示す。まず、入力部11は、ユーザから検索式の入力を受け付け、データ格納部12に格納する(図2:ステップS1)。この後の処理では、検索式においてANDで接続された検索語のうちの1語について同義語候補を抽出し、検索語のうちの他の語との関係から同義語としての妥当性を判断する。便宜上、検索語のうちの同義語候補を抽出される1語を展開対象語と呼ぶこととする。本ステップでは、ANDで接続された展開対象語と他の語とを含む検索式を受け付ける。例えば、図3に示すように、「発話」AND「解釈」という検索式が入力され、「解釈」が展開対象語であるものとする。なお、ユーザから明示的に展開対象語の指定を受け付けてもよいし、予め保持されている同義語候補との関係等から自動的に展開対象語を選択するようにしてもよい。また、検索語の各々を展開対象語として本実施の形態に係る処理を繰り返すようにしてもよい。そして、同義語候補検索部13は、同義語候補DB14から、データ格納部12に格納された展開対象語の同義語候補を抽出し、データ格納部12に格納する(ステップS3)。
同義語候補DB14には、例えば、過去に使用された検索式において同義語として用いられた検索語が、互いに関連付けられて格納されている。図4に、過去に使用された検索式の例を示す。図4の表は検索履歴データの一例であり、便宜上付された通番(No.)の列、該当した文書の件数の列及び使用された検索式の列が含まれている。例えば、No.002の検索式においては、S1(No.001)の検索式と、「解釈」、「理解」、「確認」、「意味」及び「実体」の少なくともいずれかとで、AND検索を行っている。ここで、ORで接続され全体を括弧でくくられた「解釈」、「理解」、「確認」、「意味」及び「実体」は、これらの語の少なくともいずれかを含むという検索条件を表したものであり、これらの語はいわゆる同義語として用いられている。同義語候補DB14には、このような語が互いに関連付けられて格納されているものとする。なお、図4に示したような検索履歴データを同義語候補DB14に格納しておき、ORで接続された語を同義語候補として抽出するようにしてもよい。
ステップS3では、図5に示すように、「解釈」の同義語として「認識」、「理解」及び「確認」が抽出されたものとする。その後、同義語候補検証部15は、絞込比率算出処理を実施する(ステップS5)。この絞込比率算出処理については、図6乃至図10を用いて説明する。
まず、同義語候補検証部15の文書検索部151は、データ格納部12に格納された展開対象語、検索語のうちの他の語及び同義語候補を用いて、絞込比率テーブルを生成し、絞込比率テーブル格納部17に格納する(図6:ステップS11)。なお、検索語のうちの他の語を、以降は検証キーワードと呼ぶこととする。絞込比率テーブルの一例を図7に示す。絞込比率テーブルには、検証キーワードの列と、検証キーワードでの該当件数の列と、同義語候補の列と、同義語候補での該当件数の列と、検証キーワード及び同義語候補によるAND検索での該当件数の列と、検証キーワードでの検索結果をさらに同義語候補で絞り込んだ場合の該当件数の比率の列と、同義語候補での検索結果をさらに検証キーワードで絞り込んだ場合の該当件数の比率の列とが含まれる。本ステップでは、検証キーワード及び同義語候補の列には、ユーザにより入力された検索語及び同義語候補DB14から抽出された同義語候補が登録され、件数及び比率の列には初期値として0が登録されるか又は何も登録されない。なお、ここでは展開対象語も同義語候補の列に登録するものとする。また、本実施の形態では、検証キーワードでの検索結果をさらに同義語候補で絞り込んだ場合の該当件数の比率の列、及び同義語候補での検索結果をさらに検証キーワードで絞り込んだ場合の該当件数の比率の列については、少なくともいずれか一方の列があればよい。
そして、文書検索部151は、検証キーワード、展開対象語及び同義語候補のそれぞれを検索語として、文書DB16を検索し、各語を含む文書の件数を絞込比率テーブルに登録する(ステップS13)。文書DB16には任意の文書データが格納されており、文書データに対して全文検索等ができるものとする。ここでは、図8に示すように、検証キーワードでの該当件数及び同義語候補での該当件数が登録される。
その後、文書検索部151は、文書DB16に対して検証キーワードと同義語候補又は展開対象語とを用いてAND検索を行い、該当件数を絞込比率テーブルに登録する(ステップS15)。ここでは、図9に示すように、検証キーワード及び同義語候補によるAND検索での該当件数の列に各同義語候補を用いた場合の該当件数が登録される。そして、同義語候補検証部15の絞込比率算出部152は、絞込比率テーブルに登録された各件数に基づき、検証キーワードでの検索結果に対しさらに同義語候補若しくは展開対象語で絞込検索を行った場合の該当件数の比率、又は同義語候補若しくは展開対象語での検索結果に対しさらに検証キーワードで絞込検索を行った場合の該当件数の比率を算出し、絞込比率テーブルに登録する(ステップS17)。ここでは、図10に示すように、絞り込み前後の該当件数の比率が登録される。その後、絞込比率算出処理を終了して図2の処理に戻る。
ここで、本実施の形態における同義語としての妥当性の判断について説明する。まず、検索式において検索語に対しその同義語をORで接続して含めれば、関連性のある文書の抽出漏れが少なくなる。図11は、展開対象語「解釈」、同義語候補「認識」及び検証キーワード「発話」を含む文書の集合を表したベン図である。例えば「解釈」AND「発話」という条件で検索した場合、「認識」及び「発話」を含み「解釈」を含まない文書(すなわち斜線の領域に属する文書)は抽出されない。しかし、「解釈」と「認識」とが同義語として妥当であれば、これらの文書も検索者の求めているものである可能性が高い。ただし、「解釈」と「認識」とが同義語として妥当でないならば、これらの文書は検索者の求めているものとして適切でなく、これらの文書が抽出されればいわゆるノイズとなる。
また、ある同義語は、その語が用いられた検索式における他の検索語との組み合わせにおいては妥当なものであっても、異なる検索式における他の検索語との組み合わせの下では、必ずしも妥当とはいえない場合がある。例えば、「音声」という検索語と共にAND検索を行う場合、「解釈」、「理解」及び「認識」という単語はそれぞれ同義語として用いられ得る。しかし、「解釈」と「理解」とは一般的に同義語として利用可能かもしれないが、「解釈」と「認識」とは必ずしも同義語とは言えない。従って、過去に同義語として用いられた場合であっても、他の検索語との関係から同義語としての妥当性を判断し、適切な同義語候補を選定することが好ましい。
本実施の形態では、検証キーワードと展開対象語又は同義語候補とを用いて絞込検索を行った際の絞込比率の類似性を利用して同義語としての妥当性を判断する。例えば図12に示すように、「音声」を含む文書のうちさらに「解釈」も含む文書の割合が1/160、「音声」を含む文書のうちさらに「理解」も含む文書の割合が1/130、「音声」を含む文書のうちさらに「確認」も含む文書の割合が1/13であるとする。この例では、「確認」で絞り込んだ場合の絞込比率は、「解釈」又は「理解」で絞り込んだ場合の絞込比率よりも大きく、「確認」で絞り込んだ場合は「解釈」又は「理解」で絞り込んだ場合ほど大きく絞り込まれていないといえる。本実施の形態では、この絞込比率が近い「解釈」と「理解」とが同義語としての妥当性が高いと判断する。
絞込比率算出処理では、図10に示したように、検証キーワードと展開対象語及び同義語候補の各々との組み合わせについて、検証キーワードから展開対象語若しくは同義語候補の順で絞り込んだ場合、又は展開対象語若しくは同義語候補から検証キーワードの順で絞り込んだ場合の絞込比率が算出された。本実施の形態では、後の処理において、同義語候補に係る絞込比率が展開対象語に係る絞込比率に近いほど同義語としての妥当性が高いものと判断する。
なお、検索式を立てる際、検索者には該当する文献をどの程度の割合に絞り込むかおおよその想定がある場合もある。従って、本実施の形態における同義語としての妥当性は、このような場合においてユーザが意図する絞り込みの度合いに沿っているか否かという観点から判断されるものでもある。
図2の説明に戻り、同義語候補検証部15の候補特定部153は、優先順位算出処理を実施する(ステップS7)。この優先順位算出処理については、図13及び図14を用いて説明する。
まず、候補特定部153は、絞込比率テーブル格納部17の絞込比率テーブルから、検証キーワードでの検索結果に対しさらに同義語候補若しくは展開対象語で絞込検索を行った場合の該当件数の比率、又は同義語候補若しくは展開対象語での検索結果に対しさらに検証キーワードで絞込検索を行った場合の該当件数の比率を取得する(図13:ステップS21)。ここでは、同義語候補又は展開対象語での検索結果に対しさらに検証キーワードで絞込検索を行った場合の該当件数の比率が取得されたものとする。
そして、候補特定部153は、展開対象語に係る絞込比率と同義語候補に係る絞込比率との値の近さを表す優先度を各同義語候補について算出し、優先度テーブル格納部18に格納する(ステップS23)。優先度は、例えば以下の数式により求める。
優先度=1/(|展開対象語に係る絞込比率の逆数−同義語候補に係る絞込比率の逆数|)*100
図10に示した比率を用いると、「認識」についての優先度は、1/(|125−81|)*100=2.29、「理解」についての優先度は、1/(|125−51|)*100=1.35、「確認」についての優先度は、1/(|125−814|)*100=0.15と算出される。また、図14に示すように、優先度テーブル格納部18の優先度テーブルには、各同義語候補と関連付けて算出された優先度が登録される。
上で述べた優先度は、差の絶対値を取ることで、展開対象語に係る比率と比較して同義語候補に係る比率が大きい場合であっても小さい場合であっても、展開対象語に係る比率と近さを判断できるようにしている。また、本実施の形態における絞込比率は、大きく絞り込まれるほど0に近づく値であり、単純に絞込比率の差をとるだけでは、例えば同義語候補に係る絞り込みの度合いが大きいほど展開対象語に係る比率との差が小さくなってしまう。例えば逆数を用いることで、差を把握し易い指標値を得ることができる。なお、上記優先度は一例であり、絞込比率算出処理で求めた絞込比率の近さを表す値であれば、他の値を用いてもよい。
ステップS23の後、候補特定部153は、優先度テーブル格納部18の優先度テーブルに登録された値に基づき、同義語として妥当な同義語候補を特定する(ステップS25)。例えば、予め所定の閾値をデータ格納部12等に保持しておき、ここでは当該閾値と優先度とを比較して妥当な同義語候補を特定する。なお、ここでは特に同義語候補を除外せず、同義語として採用するか否かはユーザに判断させるようにしてもよい。その後、優先順位算出処理を終了して図2の処理に戻る。
以上のような処理を行うことにより、絞込比率の近さを表す優先度に基づいて、同義語として適切な同義語候補を特定することができる。
図2の説明に戻り、出力部19は、優先度テーブル格納部18に格納された優先度テーブルからステップS25において特定された同義語候補を取得し、出力する(ステップS9)。例えば、出力部19は、同義語候補を表示装置に表示させ、ユーザに提示する。なお、優先度に基づきソートしてから出力するようにしてもよい。また、ユーザに同義語候補の採否を判断させる場合には、各同義語候補について順に確認するようにしてもよいし、同義語候補を一覧表示しチェックボックス等を用いて確認するようにしてもよい。
以上のような処理を実施することにより、絞込比率の近さに基づいて、検索式で用いるのに適切な同義語候補を特定することができるようになる。このような同義語候補を検索式に含めることで、漏れ及びノイズの少ない検索結果が期待できる。
[実施の形態2]
図15に、本技術の実施の形態に係る検索支援装置の機能ブロック図を示す。検索支援装置は、入力部11と、データ格納部12と、同義語候補検索部13と、同義語候補データベース(DB)14と、同義語候補検証部15と、文書データベース(DB)16と、絞込比率テーブル格納部17と、優先度テーブル格納部18と、出力部19と、検証条件テーブル格納部20とを有する。
入力部11は、ユーザから検索式の入力を受け付け、データ格納部12へ格納する。同義語候補検索部13は、同義語候補が格納されている同義語候補DB14から、データ格納部12に格納された検索式に含まれる検索語の同義語候補を抽出し、データ格納部12に格納する。同義語候補検証部15は、データ格納部12に格納された検索語及び同義語候補を用いて、例えば特許文献のような文書データが格納されている文書DB16に対し検索処理及び絞込検索処理を行い、絞り込み前後の該当件数から比率を算出して絞込比率テーブル格納部17に格納する。また、算出された比率から、検索語及び絞り込みの順序について、判断基準として用いるのに適切な組み合わせを特定する。そして、特定された組み合わせに係る比率から同義語候補の採否を判断する際の規準となる優先度を算出すると共に、同義語として採用すべき同義語候補を特定し、優先度テーブル格納部18に格納する。なお、同義語候補検証部15は、文書検索部151と、絞込比率算出部152と、候補特定部153と、検証条件選定部154とを含む。そして、出力部19は、優先度テーブル格納部18に格納された同義語候補及び優先度を出力する。
本実施の形態に係る機能ブロック図は実施の形態1とほぼ同様であるが、検証条件選定部154及び検証条件テーブル格納部20が追加されている。
次に、図16乃至26を用いて、本実施の形態に係る検索支援装置の処理内容について説明する。まず、入力部11は、ユーザから検索式の入力を受け付け、データ格納部12に格納する(図16:ステップS31)。本実施の形態では、検索式において、展開対象語と他の検索語とがANDで接続されており、さらに他の検索語として2語がORで接続されているものとする。例えば、図17に示すように、(「音声」OR「発話」)AND「解釈」という検索式が入力され、「解釈」が展開対象語であるものとする。
そして、同義語候補検索部13は、同義語候補DB14から、データ格納部12に格納された展開対象語の同義語候補を抽出し、データ格納部12に格納する(ステップS33)。本実施の形態でも、「解釈」の同義語として「認識」、「理解」及び「確認」が抽出されたものとする。その後、同義語候補検証部15は、絞込比率算出処理を実施する(ステップS35)。この絞込比率算出処理については、図18及び図19を用いて説明する。
まず、同義語候補検証部15の文書検索部151は、データ格納部12に格納された展開対象語、検証キーワード及び同義語候補を用いて、絞込比率テーブルを生成し、絞込比率テーブル格納部17に格納する(図18:ステップS51)。本ステップの処理はステップS11の処理と同様であるが、本実施の形態では検証キーワードが2つあるため、図19に示すように検証キーワードと同義語候補との組み合わせが増えた絞込比率テーブルが生成される。なお、図19にはすでに値が登録されているが、本ステップでは初期値が登録されるものとする。
そして、文書検索部151は、検証キーワード、展開対象語及び同義語候補のそれぞれを検索語として、文書DB16を検索し、各語を含む文書の件数を絞込比率テーブルに登録する(ステップS53)。また、文書検索部151は、文書DB16に対して検証キーワードと同義語候補又は展開対象語とを用いてAND検索を行い、該当件数を絞込比率テーブルに登録する(ステップS55)。そして、同義語候補検証部15の絞込比率算出部152は、絞込比率テーブルに登録された各件数に基づき、検証キーワードでの検索結果に対しさらに同義語候補若しくは展開対象語で絞込検索を行った場合の該当件数の比率、又は同義語候補若しくは展開対象語での検索結果に対しさらに検証キーワードで絞込検索を行った場合の該当件数の比率を算出し、絞込比率テーブルに登録する(ステップS57)。ステップS53乃至ステップS57の処理は、ステップS13乃至ステップS17の処理と同様であり、ここでは図19に示したような値が登録される。その後、絞込比率算出処理を終了して図16の処理に戻る。
図16の説明に戻り、同義語候補検証部15の検証条件選定部154は、検証条件選定処理を実施する(ステップS37)。この検証条件選定処理については、図20乃至図23を用いて説明する。
検証条件選定部154は、絞込比率テーブル格納部17に格納された絞込比率テーブルのデータ項目を基に検証条件テーブルを生成し、検証条件テーブル格納部20に格納する(図20:ステップS61)。検証条件テーブルは、図21に示すように、検証キーワードの各々に対応する行と、絞り込みに係る順序の各々に対応する列とを含む。本実施の形態では、複数の検証キーワードと絞り込みの順序との組み合わせのぶんだけ絞込比率が存在するため、いずれの組み合わせに係る絞込比率を用いて同義語候補の妥当性を検証するのかが問題となる。検証条件テーブルは、各組み合わせに係る絞込比率を採用するか否かを示すフラグを保持するために用いるものとする。なお、検証キーワードと絞り込みの順序との組み合わせを、以降は検証条件と呼ぶこととする。
そして、検証条件選定部154は、検証条件テーブルを0で初期化する(ステップS63)。また、検証条件選定部154は、絞込比率テーブル格納部17に格納された絞込比率テーブルにおいて、検証条件毎に、同義語候補に係る絞込比率の最大値を特定する(ステップS65)。図19に示した絞込比率テーブルでは、破線で囲われた各々が検証条件に対応しており、各検証条件に含まれる絞り込み比率のうち同義語候補に係る絞込比率から最大値を特定する。本ステップでは、検証条件毎に同義語候補に係る絞込比率の最大値を特定する。検証条件1901においては「認識」の1/7、検証条件1902においては「認識」及び「理解」の1/7、検証条件1903においては「認識」の1/6、検証条件1904においては「理解」の1/51が特定される。
また、検証条件選定部154は、絞り込み条件の最大値で検証条件をソートする(ステップS67)。図19の例では、絞込比率の最大値について例えば降順にソートされると、検証条件1903、検証条件1901及び検証条件1902、検証条件1904となる。そして、検証条件選定部154は、検証条件テーブル格納部20の検証条件テーブルにおいて、絞込比率が最大の検証条件のフラグに1を設定する(ステップS69)。図22に示すように、ここでは、まず「発話」から同義語候補への絞り込みに係る検証条件のフラグに1が設定される。
そして、検証条件選定部154は、検証条件テーブルにおいて、フラグが0の検証条件は1つであるか判断する(ステップS71)。フラグが0の検証条件が2つ以上ある場合、ステップS69の処理に戻る。一方、フラグが0の検証条件が1つである場合、検証条件選定処理を終了して、図16の処理に戻る。本実施の形態では、ステップS69及びステップS71の処理を繰り返すことで最終的に図23のような検証条件テーブルが生成され、図16の処理に戻る。
ここで、検証条件の選定について説明する。例えば、検証キーワードと同義語候補との組み合わせが複合語として定着していたり、両者を含む言い回しとして多用されていたりすると、当該組み合わせに係る絞込比率は例外的に大きな値となる。このような値は他の同義語と優先度を比較する上で問題となるため、このような値となる組み合わせを含まない検証条件を用いて優先度を比較する方が好ましい。
本実施の形態では、「音声」と「認識」との組み合わせが「音声認識」という複合語を形成するため、「音声」AND「認識」という条件での該当件数は例外的に多くなる。そして、このような複合語を含む検証条件を用いると、同義語としての妥当性の判断を誤るおそれがある。例えば、実施の形態1でも述べたとおり、「発話」と各同義語候補とについて絞込比率及び優先度を算出すると、図24に示すような値が算出される。そして、優先度の最も低い「確認」は同義語として不適切であると判断される。この結果は、人間が各語の意味を考慮すれば妥当であると判断できる。一方、「音声」に対して同様に絞込比率を算出すると、図25に示すように、「認識」に係る絞込比率は例外的に大きな1/7となり、優先度は「理解」や「確認」よりも低くなってしまう。優先度を比較するためには、このような組み合わせを含まない検証条件を用いる方が好ましい。
また、優先度は、絞り込みの順序によっても変わる。検証キーワードを含む文書のうちさらに同義語候補を含む文書の割合と、同義語候補を含む文書のうちさらに検証キーワードを含む文書の割合とでは、その分母の数が異なるためである。例えば、「雨」という単語と「しとしと」という単語は、そもそも言い回しとして同時に用いられることの多い組み合わせでもあるが、絞り込みの順序によっても絞込比率が大きく変わる。すなわち、「雨」を含む文書のうち「しとしと」を含む文書の割合と、「しとしと」を含む文書のうち「雨」を含む文書の割合とでは、「しとしと」を含む文書のうち「雨」を含む文書の割合の方が大きくなる。このように、非対称な関連度が存在する場合も、同義語としての妥当性の判断を誤るおそれがある。従って、絞込比率が例外的に大きくなるような方向に係る組み合わせを含まない検証条件を用いる方が好ましい。
上で述べたステップS67乃至ステップS71の処理では、絞込比率が例外的に大きな値となる組み合わせを含むおそれのある検証条件を除外している。すなわち、後の処理では検証条件テーブルにおいてフラグが0の検証条件を採用する。なお、ステップS67乃至ステップS71の処理は、例えば、絞込比率の最大値が最も小さい検証条件を1つ特定するという処理に置き換えてもよい。
図16の処理の説明に戻り、同義語候補検証部15の候補特定部153は、優先順位算出処理を実施する(ステップS39)。この優先順位算出処理については、図26を用いて説明する。
まず、候補特定部153は、検証条件テーブル格納部20の検証条件テーブルにおいてフラグが0の検証条件を特定する(図26:ステップS81)。ここでは、図23に示した検証条件テーブルから、検証キーワード「発話」を用いて同義語候補から検証キーワードの順に絞り込みを行う検証条件が特定される。そして、候補特定部153は、絞込比率テーブル格納部17の絞込比率テーブルから、検証条件に対応する絞込比率を取得する(S83)。ここでは、図19に示した絞込比率テーブルから、検証条件1904に含まれる検証比率が取得される。
その後、候補特定部153は、展開対象語に係る絞込比率と同義語候補に係る絞込比率との値の近さを表す優先度を各同義語候補について算出し、優先度テーブル格納部18に格納する(ステップS85)。そして、候補特定部153は、優先度テーブル格納部18の優先度テーブルに登録された値に基づき、同義語として妥当な同義語候補を特定する(ステップS87)。ステップS85及びステップS87の処理は、実施の形態1におけるステップS23及びステップS25の処理と同様である。ステップS87の後、優先順位算出処理を終了して図16の処理に戻る。
図16の説明に戻り、出力部19は、優先度テーブル格納部18に格納された優先度テーブルからステップS87において特定された同義語候補を取得し、出力する(ステップS41)。本ステップの処理は、実施の形態1におけるステップS9の処理と同様である。
以上のような処理を実施することにより、まず、例外的に大きな絞込比率を含む検証条件を除外することができる。すなわち、不適切な検証条件に基づいて同義語としての妥当性の判断を誤るようなことを防ぐことができる。そして、適切な検証条件を用いて、絞込比率の近さを基準として、検索式で用いるのに適切な同義語候補を特定することができるようになる。このような同義語候補を検索式に含めることで、漏れ及びノイズの少ない検索結果が期待できる。
本実施の形態では、適切な検証キーワードを1つ用いて(適切な検証条件を1つ選定して)優先度を算出したが、例えば代わりに複数の検証キーワードの論理和等を用いて優先度を判断するようにしてもよい。また、検証条件を1つ選定するのではなく、検証キーワードの各々に対して妥当な同義語候補を特定するようにしてもよい。図19の例では、例えば、「音声」に対しては「理解」が、「発話」に対しては「認識」が、それぞれ「解釈」の同義語として優先度に基づき特定される。このような結果から、例えば、(「音声」AND(「解釈」OR「理解」))OR(「発話」AND(「解釈」OR「認識」))という検索式を作成することができる。
また、本実施の形態では、絞り込み処理に用いる検索語の順序を考慮して絞込比率を算出したが、例えば、検証キーワードと同義語候補とでOR検索した場合の該当件数に対する検証キーワードと同義語候補とでAND検索した場合の該当件数により絞込比率を算出するようにしてもよい。
[実施の形態3]
実施の形態2では、絞込比率の大きさを基準として、例えば検証キーワードと同義語候補とが複合語を形成するような場合の例外的な値を含む検証条件を除外した。本実施の形態では、予め用意された複合語辞書を用いて、検証キーワードと同義語候補とが複合語を形成するか判断し、複合語を形成する組み合わせを含む検証条件を除外する。
図27に、本技術の実施の形態に係る検索支援装置の機能ブロック図を示す。本実施の形態の機能ブロック図は実施の形態2とほぼ同様であるが、複合語辞書DB21が追加されている。そして、同義語候補検証部15は、予め複合語が登録されている複合語辞書DB21に検証キーワードと同義語候補とのいずれの組み合わせも登録されていない検証条件を用いて、同義語として採用すべき同義語候補を特定する。
次に、本実施の形態に係る検索支援装置の処理内容について説明する。本実施の形態の処理内容も、実施の形態2とほぼ同様である。ただし、本実施の形態では、例えば、実施の形態2のステップS51(図18)において、文書検索部151が、データ格納部12に格納された検証キーワード及び同義語候補を用いて複合語辞書DB21を検索する。そして、同義語候補のいずれかとの組み合わせが複合語辞書DB21に登録されている検証キーワードについては、絞込比率テーブルに行を生成しない。すなわち、絞り込みの順序に関わらず、複合語を形成する組み合わせを含む検証条件は用いない。例えば、検証キーワード「音声」及び「発話」、並びに同義語候補「認識」、「理解」及び「確認」があり、複合語辞書DB21に「音声認識」という複合語が登録されている場合、図7に示したように検証キーワード「発話」に係る行のみが生成される。また、その後のステップにおいても、「音声」に係る件数や比率については処理対象から除外される。
一方、複合語辞書DB21に同義語候補のいずれとの組み合わせも登録されていない検証キーワードについては、実施の形態2と同様に絞込比率を算出し、当該絞込比率を用いて適切な検証条件を選定した後、当該検証条件を用いて妥当な同義語候補を特定する。
このようにすれば、複合語を形成する組み合わせを含まない検証条件を用いて、同義語候補の妥当性を判断することができる。上でも述べたとおり、複合語を形成する語は同一の文書中に現れることが多くなり、絞込比率を適切に比較することができない。本実施の形態では、絞込比率を算出することなく、問題のある検証条件を除外することができる。
なお、全ての検証条件が、複合語を形成する組み合わせを含む場合も考えられる。そのような場合のために、例えば、複合語辞書DB21において予め優先度を保持させておくようにしてもよい。このようにすれば、全ての検証条件を除外することなく、例えば複合語を形成する組み合わせのうち優先度の低いものを含む検証条件を用いて同義語候補の妥当性を判断することができるようになる。
また、複合語を形成する組み合わせを含む検証条件を除外するタイミングは、上記ステップS51でなくてもよい。例えば、ステップS53及びステップS55(図18)において、文書検索部151が、当該検証条件に係る該当文書の件数を登録しないようにしてもよいし、ステップS57(図18)において、絞込比率算出部152が、当該検証条件に係る絞込比率を算出しないようにしてもよい。さらに、例えばステップS63(図20)において、当該検証条件に係るフラグを予め1に設定しておくようにしてもよい。いずれにしても、複合語辞書DB21に予め登録されている複合語に基づいて、複合語を形成する組み合わせを含む検証条件を除外することができる。
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成と一致しない場合もある。また、処理フローについても、処理結果が変わらない限り、ステップの順番を入れ替えたり、並列実施するようにしてもよい。
なお、上で述べた検索支援装置は、コンピュータ装置であって、図28に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると、以下のようになる。
本実施の形態に係る検索支援装置は、(A)展開対象語と他の語とを含む検索語の入力をユーザから受け付ける入力部と、(B)単語と関連付けられて当該単語の同義語候補が格納されている同義語候補格納部から、展開対象語に関連付けられた1又は複数の同義語候補を抽出する同義語候補抽出部と、(C)複数の文書が格納されたデータベースを、展開対象語又は同義語候補で検索した場合の該当件数に対する、当該検索結果を他の語でさらに絞り込んだときの該当件数の比率である第1の比率、及び他の語で検索した場合の該当件数に対する、当該検索結果を展開対象語又は同義語候補でさらに絞り込んだときの該当件数の比率である第2の比率のうちの少なくともいずれかを、展開対象語及び同義語候補の各々について算出する比率算出部と、(D)展開対象語及び同義語候補の各々について比率算出部により算出された比率の比較結果に基づき、展開対象語の同義語として採用すべき同義語候補を特定する同義語特定部とを有する。
例えば、展開対象語として「CD」、同義語候補として「コンパクトディスク」及び「自動支払機」、並びに他の語として「銀行」があるものとする。このようなケースにおいて、例えば、「銀行」で検索した結果に対し「CD」、「コンパクトディスク」又は「自動支払機」でそれぞれ絞込検索を行った場合における絞り込み前の該当件数に対する絞り込み後の該当件数の比率(上記第1の比率)を比較する。このとき、本ケースにおける適切な同義語「CD」及び「自動支払機」を用いた検索については、上記比率が同程度の値になる。一方、本ケースにおいて「CD」の同義語としては不適切な「コンパクトディスク」を用いた検索についての上記比率は、適切な同義語「CD」及び「自動支払機」と比べると、大きく異なる値となる。すなわち、同義語としての妥当性は、各同義語候補について上記比率を比較することによって、判断できる。なお、「CD」、「コンパクトディスク」又は「自動支払機」で検索したそれぞれの結果に対し「銀行」で絞込検索を行った場合(上記第2の比率を用いた場合)についても同様のことがいえる。
そこで、上で述べたような処理を実施することによって、検索式で用いるのに適切な同義語を特定することができるようになる。
また、比率算出部は、展開対象語及び同義語候補の各々について第1の比率及び第2の比率を算出し、(E)第1の比率の集合及び第2の比率の集合の各々において同義語候補に係る比率の最大値を特定し、当該最大値が小さい集合を特定する集合特定部をさらに有するようにしてもよい。その際、同義語特定部は、集合特定部により特定された集合の比率を用いて採用すべき同義語候補を特定するようにしてもよい。例えば、「しとしと」及び「雨」がそれぞれ他の語及び同義語候補であり、この2語について絞り込み前の該当件数に対する絞り込み後の該当件数の比率を算出するものとする。このとき、「しとしと」を含む文書のうち「雨」も含む文書の比率と、「雨」を含む文書のうち「しとしと」も含む文書の比率とでは、前者の方が高い値になる。このように、「しとしと」と「雨」とには非対称な関連度(又は遷移確率)が存在しており、それが第1の比率及び第2の比率の差異として現れる。このような非対称性は例外であるが、極端な値の上記比率として算出されて、上で述べたような同義語の妥当性を表す、各同義語候補についての上記比率の差異を覆い隠してしまう可能性がある。従って、第1及び第2の比率を両方算出して、比較するのに妥当な第1又は第2の比率の集合を特定することで、同義語としての妥当性をより正確に判断することができるようにする。
そして、処理対象とされる他の語(例えば複合語を構成するものを除く)が複数存在する場合、当該他の語の各々に対し、比率算出部は、展開対象語及び同義語候補の各々について第1の比率及び第2の比率のうちの少なくともいずれかを算出し、(F)他の語の各々に対して算出された、第1の比率の集合及び第2の比率の集合のうちの少なくともいずれかにおいて、同義語候補に係る比率の最大値を特定し、当該最大値が最も小さい他の語と比率の集合との組み合わせを特定する組み合わせ特定部をさらに有するようにしてもよい。その際、同義語特定部は、組み合わせ特定部により特定された、他の語と比率の集合との組み合わせに係る比率を用いて採用すべき同義語候補を特定するようにしてもよい。
上で述べたように、他の語が複数存在すると、その中で、他の語と同義語候補とが複合語を形成する場合や、同時に用いられることが多い関係にある場合には、上記比率が例外的に大きくなることがある。この場合も、極端な値の上記比率として算出されれば、同義語の妥当性を表す、各同義語候補についての上記比率の差異を覆い隠してしまう可能性がある。従って、例えば他の語の各々に対し、各同義語候補についての第1の比率及び第2の比率のうちの少なくともいずれかを算出して、比較するのに妥当な、他の語と比率の集合との組み合わせを特定することで、同義語としての妥当性をより正確に判断することができるようにする。
また、同義語特定部は、同義語候補に係る比率が展開対象語に係る比率に近いほど優先して展開対象語の同義語であると特定するようにしてもよい。このようにすれば、展開対象語に係る上記比率と同義語候補に係る上記比率とが近いほど同義語としての妥当性が高いものとして判断することができる。
さらに、同義語特定部は、展開対象語に係る比率の逆数と同義語候補に係る比率の逆数との差の絶対値が小さいほど優先して展開対象語の同義語であると特定するようにしてもよい。大きく絞りこまれるほど大きくなる値である上記比率の逆数を用い、その差に基づいて同義語としての妥当性を判断することができる。
また、比率算出部又は組み合わせ特定部は、複合語が格納されている複合語格納部において同義語候補のいずれとの組み合わせも格納されていない他の語が存在する場合、当該他の語に対して処理を行うようにしてもよい。別途複合語を保持している場合は、組み合わせ特定部が、複合語を形成しない他の語と比率の集合との組み合わせを特定するようにしてもよいし、比率算出部が、複合語を形成する他の語と展開対象語又は同義語候補との組み合わせについてはそもそも上記比率を算出しないようにしてもよい。
そして、同義語特定部により特定された同義語候補をユーザに提示する出力部をさらに有するようにしてもよい。このようにすれば、ユーザに対し、検索処理に有用な同義語候補を示すことができる。
なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
展開対象語と他の語とを含む検索語の入力をユーザから受け付ける入力部と、
単語と関連付けられて当該単語の同義語候補が格納されている同義語候補格納部から、前記展開対象語に関連付けられた1又は複数の同義語候補を抽出する同義語候補抽出部と、
複数の文書が格納されたデータベースを、前記展開対象語又は前記同義語候補で検索した場合の該当件数に対する、当該検索結果を前記他の語でさらに絞り込んだときの該当件数の比率である第1の比率、及び前記他の語で検索した場合の該当件数に対する、当該検索結果を前記展開対象語又は前記同義語候補でさらに絞り込んだときの該当件数の比率である第2の比率のうちの少なくともいずれかを、前記展開対象語及び前記同義語候補の各々について算出する比率算出部と、
前記展開対象語及び前記同義語候補の各々について前記比率算出部により算出された比率の比較結果に基づき、前記展開対象語の同義語として採用すべき前記同義語候補を特定する同義語特定部と
を有する検索支援装置。
(付記2)
前記比率算出部は、前記展開対象語及び前記同義語候補の各々について前記第1の比率及び前記第2の比率を算出し、
前記第1の比率の集合及び前記第2の比率の集合の各々において前記同義語候補に係る比率の最大値を特定し、当該最大値が小さい集合を特定する集合特定部をさらに有し、
前記同義語特定部は、前記集合特定部により特定された集合の比率を用いて採用すべき前記同義語候補を特定する
付記1記載の検索支援装置。
(付記3)
処理対象とされる前記他の語が複数存在する場合、当該他の語の各々に対し、前記比率算出部は、前記展開対象語及び前記同義語候補の各々について前記第1の比率及び前記第2の比率のうちの少なくともいずれかを算出し、
前記他の語の各々に対して算出された、前記第1の比率の集合及び前記第2の比率の集合のうちの少なくともいずれかにおいて、前記同義語候補に係る比率の最大値を特定し、当該最大値が最も小さい前記他の語と比率の集合との組み合わせを特定する組み合わせ特定部をさらに有し、
前記同義語特定部は、前記組み合わせ特定部により特定された、前記他の語と前記比率の集合との組み合わせに係る比率を用いて採用すべき前記同義語候補を特定する
付記1記載の検索支援装置。
(付記4)
前記同義語特定部は、前記同義語候補に係る比率が前記展開対象語に係る比率に近いほど優先して前記展開対象語の同義語であると特定する
付記1乃至3のいずれか1つ記載の検索支援装置。
(付記5)
前記同義語特定部は、前記展開対象語に係る比率の逆数と前記同義語候補に係る比率の逆数との差の絶対値が小さいほど優先して前記展開対象語の同義語であると特定する
付記1乃至3のいずれか1つ記載の検索支援装置。
(付記6)
前記比率算出部又は前記組み合わせ特定部は、複合語が格納されている複合語格納部において前記同義語候補のいずれとの組み合わせも格納されていない前記他の語が存在する場合、当該他の語に対して処理を行う
付記3乃至5のいずれか1つ記載の検索支援装置。
(付記7)
前記同義語特定部により特定された前記同義語候補をユーザに提示する出力部をさらに有する
付記1乃至6のいずれか1つ記載の検索支援装置。
(付記8)
展開対象語と他の語とを含む検索語の入力をユーザから受け付けるステップと、
単語と関連付けられて当該単語の同義語候補が格納されている同義語候補格納部から、前記展開対象語に関連付けられた1又は複数の同義語候補を抽出するステップと、
複数の文書が格納されたデータベースを、前記展開対象語又は前記同義語候補で検索した場合の該当件数に対する、当該検索結果を前記他の語でさらに絞り込んだときの該当件数の比率である第1の比率、及び前記他の語で検索した場合の該当件数に対する、当該検索結果を前記展開対象語又は前記同義語候補でさらに絞り込んだときの該当件数の比率である第2の比率のうちの少なくともいずれかを、前記展開対象語及び前記同義語候補の各々について算出する比率算出ステップと、
前記展開対象語及び前記同義語候補の各々について前記比率算出ステップにおいて算出された比率の比較結果に基づき、前記展開対象語の同義語として採用すべき前記同義語候補を特定するステップと
をコンピュータに実行させるためのプログラム。