あいまい検索とは、入力された検索キーワードが正確でなくても、ユーザーの要求を予想して適切な語句を探す検索方式で、表記の揺れや類義語・同義語を補完します。またスペル補正はユーザーの入力ミスを指摘し、より精度の高い検索を提供します。

あいまい検索とスペル補正とは

検索エンジンはユーザーが入力する検索語句を元に情報を探し、基本的にはユーザーが入力した検索キーワードを確実に含んだWebページだけを検索します。しかしユーザーが入力するキーワードが常に正確ではなく、表記の揺れや同義語、類義語、変換ミス、タイプミスや入力ミスなどがどうしても混入してしまいます。

そうしたユーザー側のミスや表記揺れに対応し、確実な情報検索を行うためのクエリプロセスが、曖昧検索とスペル補正です。これによって正確なキーワードでなくとも柔軟に検索することが可能になり、ユーザーはより日常的に使う最小数の語句の入力だけで、それを適切な検索結果を得られるようになります。

入力キーワードの同義語・類義語による検索

日本語に限らず、各国の言語には多くの同義語、関連語が存在します。また、全く同じ語句で表記が違う場合もあります。例えば「検索エンジン」と「サーチエンジン」の2つの語句は全く同じ意味を持っていますが、検索アルゴリズムには別の語句として認識されてしまいます。

このような同義語や表記の違いなどを吸収するのがシソーラスを導入したあいまい検索システムです。シソーラスを利用することで、例えば「検索エンジン」と検索しても「サーチエンジン」の検索結果も同時に返すようなことが可能になります。シソーラスの導入で検索はよりユーザーの意図に近づくため、検索の利便性は飛躍的に高まります。

なおシソーラスとは、ユーザーが意図するキーワードと同意の検索を行うための、同義語・類義語辞書のことです。自然文解析というアプローチで全文検索型データベース、ロボット型検索エンジンを捉えるとき、シソーラスを導入した検索アルゴリズムは今後重要な技術になると考えられています。

検索エンジンにおけるシソーラスの実装例

シソーラスはまだ発展途上の技術ですが、徐々に検索エンジンへの実装が進められています。

英数字の表記揺れへの対応
英数字の表記などに対しては、現状で多くの検索エンジンがシソーラス処理を行っています。例えば、Yahoo!やGoogleでは、「A」「A」、「1」「1」のような英数字の全半角の違いがあってもそれらは同じ文字として検索します。また、「A」「a」のような、ローマ字の大文字・小文字も同じものとして検索します。
英単語の表記揺れへの対応
Googleなどの検索エンジンでは、英文における動詞の活用や複数形などを辞書で吸収し、過去形と現在形、単数形と複数形などを同じ語として検索します。これにより、英文での検索は飛躍的に簡単になりました。
カタカナ表記の揺れへの対応
カタカナ言葉の表記などに対しても、現状で多くの検索エンジンがシソーラス処理を行っています。例えば、Yahoo!やGoogleでは「ヴァーチャル」「バーチャル」、「ダイヤモンド」「ダイアモンド」などはどちらで検索しても同じ結果を表示します。
日本語表記揺れへの対応
gooが2003年12月から導入したより高度なシソーラスを用いたクエリプロセシングでは、送り仮名の違い・読みの違い・略語などを修正して検索を行います。同様のものは他の主要な検索エンジンにも随時導入され、現在では表記揺れ(「引っ越し」と「引越」など)についてユーザーは特に何も考える必要がなくなりました。

正しいキーワードでの検索を助けるスペル補正

スペル補正とは、検索精度を高めるため、ユーザーが入力する検索語句のスペルミスを補正する技術です。ユーザーの入力するキーワードに入力ミスがある場合や、ユーザーが正しくキーワードを把握していない場合には、検索エンジンはユーザーが求める情報とは異なる情報を探し出してしまうことになります。このとき、ユーザー側のケアレスミスを検索エンジンが補正することで、間違いのない検索を行うことができます。

スペル補正はまだ発展途上の技術ですが、徐々に検索エンジンへの実装が進められています。

Googleによる英単語のスペルチェック
Googleでは英単語のスペルチェック機能を実装しています。入力されたキーワードを辞書と照らし合わせ、もし該当する語句がなければ最もそれに近いと思われるスペルをユーザーに提示しなおします。例えば、「searc engine」と入力すると、検索結果の一覧のトップに、「もしかして:search engine」(英語サイトでは「Did yor mean : search engine」)と表示され、検索したキーワードが間違っていないかどうかユーザーに問い直します。

同様の機能は他の主要な検索エンジンにも実装されつつあり、日本語への対応なども進んでいます。適当なスペルや変換で検索しても、正しい表記が候補として表れるため、検索語を決めるために検索する、といったユーザーの手間は大きく低減されるようになってきました。