CA1421 - データベース検索システムの比較 / 西村大

カレントアウェアネス
No.265 2001.09.20


CA1421

データベース検索システムの比較

様々な情報がデータベース化されるにともない,その検索についても多くの方法が考えられてきた。しかし再現率(データベース中から目的に合致するデータがどれだけヒットするかを示す指標で,高ければデータがヒットしやすく,検索漏れが少ないということである)を上げればノイズが増えるというように,ある性能を上げるためには他の性能が犠牲になることが多い。英語のデータベースについて比較した調査では,システムによってその機能がバラエティに富んでいることが指摘されている。

以下では,どのようにインデクス(索引語)と検索の際の入力語(検索語)が処理されるかについて,四つに分けて説明していく。それぞれ,長所と短所を挙げて比較する。

(1)ターム作成型
例)国立国会図書館Web-OPAC(http://webopac2.ndl.go.jp/)

データから特定のタームを切り出してインデクスとし,そのタームと入力語が一致した場合のみヒットする方法。単語に分割し,助詞はストップワード(検索に使われない言葉)として除かれることが多い。例えば,「図書館の使い方」というデータからは「図書館」と「使い方」というインデクスが作られ,「図書館」や「使い方」という入力語でヒットする。

単語単位で検索するので,検索速度が速く,ノイズが少ない。しかし,利用者がタームの通りに入力するとは限らず,再現率は低い。また,複合語をヒットさせる場合,複合語だけについてもインデクスを作る必要があるため,使用ディスク量が増加する。

(2)ターム作成(入力語分割)型
例)検索エンジンInfoseek(http://www.infoseek.co.jp/)

データからタームを切り出してインデクスとし,さらに入力語からもタームを切り出して検索を行う方法。例えば,「図書館の使い方」と入力すると,「図書館」と「使い方」に分けて検索され,両者をインデクスに持つデータがヒットする。利用者がタームの切り出し方を知らなくても自動的にタームの形で検索されるため,(1)よりは再現率が高い。しかし,入力語が助詞を含む場合や固有名詞の場合などに意図しない形のタームとなることがあり,再現率が下がることがある。

複合語のために重複してインデクスを持つ必要はない。切り出されたタームがデータ内のどこかに存在すればヒットする方法と,タームが隣接して存在する場合のみヒットする方法がある。前者のほうがノイズが多くなる。

(3)ターム作成(入力語分割・一部合致)型
例)検索エンジンExcite(http://www.excite.co.jp/)

(2)と同じだが,入力語から切り出したタームが一つでも合致すればヒットする方法。例えば「図書館の使い方」で検索し,「図書館」「使い方」とタームが切り出された場合,「使い方」だけが含まれるデータも関連するものと見なしてヒットさせる。再現率は高いが,ノイズが非常に多い。表示の際は,より多くのタームが合致したものから順に並べかえられることが多い。

(4)フリーターム型
例)検索エンジンGoogle(http://www.google.co.jp)

データからインデクスを作るときも,入力語についても文字単位で処理する方法。どのような形で入力しても,データのどこかと一致すればヒットする。再現率は最も高いが,「タイル」で「スタイル」がヒットしてしまうように,ノイズは最も多い。(1)と(4)を組み合わせて,ひらがな,カタカナ,英数字での検索はターム作成型で,それ以外はフリーターム型で検索する方法もある。

ところで,(1)〜(4)のいずれの型においても,日本語には表記の揺れの問題がつきまとう。再現率を上げるためには,「コンピューター」と「コンピュータ」,「滝」と「瀧」などに対して,どちらを入力しても同じようにヒットさせる,などの工夫がある。この場合,インデクスと入力語の双方に対し,長音の削除,異体字の統一などの正規化処理が必要となり,処理時間がかかる。また,「チーズ」で「地図」がヒットしてしまったり,「瀧」だけで検索したいのに「滝」までヒットしてしまったりと,かえってノイズが増えることもある。このため,利用者が正規化を行うか否かの選択を行えるようにする方法もあるが,その場合はインデクスとして元の形のものと正規化したものの両方が必要となり,使用ディスク量が増加する。

これらの問題には,マシンの性能を上げる,ディスクを増設する,などといったハードウェア的な対処が可能だが,予算面での負荷は重くなる。

最終的にはデータベースの用途に応じて,どの性能を重視するかを取捨選択すること,長所を有効に活用し,短所を抑えるようなシステム上の工夫を行うことが必要となる。

西村 大(にしむらまさる)

Ref:全文検索システム協議会 活動報告 [http://www.ftsanet.com/report.html] (last access 2001. 6. 15)
検索エンジンのしくみ教えます [http://www.mars.sphere.ne.jp/engine/index.htm] (last access 2001. 6. 15)
Sabin-Kildiss, L. et al. Assessing the functionality of Web-based versions of traditional search engines. Online 25(2) 18-26, 2001