|
検索アルゴリズム&多言語対応
既に検索エンジンを導入されている企業様で担当者の頭を悩ませている作業の1つにシステム辞書登録があります。検索漏れを防ぐために登録するのですが、QuickSolutionではそのシステム辞書への登録は不要です。
このページではその理由とグローバル企業を支援する多言語対応についてご紹介します。
検索アルゴリズム
全文検索では、検索を高速化するために、検索対象となる文書群からあらかじめ索引情報を準備しておくのが一般的です。
この索引情報をインデックスと呼びます。
(インデックス生成については 機能>高速検索機能 をご参照下さい)
インデックス生成時の文字列の抽出方法としては、主に形態素解析方式、N-gram方式、さらにその2つのより良い部分を組み合わせたハイブリッド方式があります。
全文検索エンジンQuickSolutionは、システム辞書が不要なN-gram方式をベースとした形態素解析併用の「QSハイブリッド方式」を採用。
形態素解析方式の特徴
英文の場合は単語と単語の間にスペースが入るため、スペースで区切られた文字列を抽出していけば、索引データの作成は容易です。 しかし、日本語の場合は、単語をスペースで区切る習慣がありません。
その為、文脈の解析、単語分解を行い、それをもとにインデックスを生成します。
それが形態素解析です。
形態素解析を行うためには解析用の辞書(システム辞書)が必須であり、検索結果は辞書の品質に大きく影響を受けます。
また、辞書に登録されていないひらがな単語の抽出に難があるなど、検索漏れが生じることが欠点とされています。
N-gram方式の特徴
検索対象を単語単位ではなく文字単位で分解して、インデックスを生成する方式。
たとえば「全文検索技術」という文字列の場合、「全文」「文検」「検索」「索技」「技術」「術(終端)」と2文字ずつ分割してインデックスを生成すれば、検索漏れが生じず、辞書の必要もありません。
しかし、形態素解析に比べると、検索結果にノイズ(「京都」で検索すると「東京都」がヒットするなど)が生じることが欠点とされています。
ハイブリッド方式の特徴
形態素解析方式とN-gram方式の両方のメリットを組み込んだ方式の為、検索漏れがなく、また検索結果にノイズも入りにくいのが、特徴です。
ただし、インデックスを形態素解析方式とN-gram方式の両方で生成する為、インデックスのサイズが大きくなってしまうことが欠点とされています。
各方式の特徴まとめ
| |
形態素解析方式 |
N-gram方式 |
ハイブリッド方式 |
| システム辞書 |
必要 |
不要 |
必要(必須ではない) |
インデックス 形式 |
単語転置ファイル:
単語インデックス |
N-gram転置ファイル: フルテキストインデックス |
N-gram転置ファイル+ 単語転置ファイル |
インデックス 生成方法 |
新たな検索語句を事前にシステム辞書に登録した後、追加ファイルだけでなく、既存のファイル全てに対してインデックスの再生成が必要 |
追加されたファイルの分だけ、インデックスを追加(差分更新) |
追加されたファイルの分だけ、インデックスを追加(差分更新) |
| 長所 |
検索結果にノイズが入りにくい |
任意の文字列を検索可能 検索漏れがない |
任意の文字列を検索可能 検索漏れがない 検索結果の上位にノイズが入りにくい インデックスの再生成が不要 |
| 短所 |
検索漏れが生じる 新語/造語が検索できない 辞書のメンテナンスが必要 インデックス再生成が必要 型番の部分一致に弱い →「イントラ」で検索して「イントラネット」がヒットしない |
検索結果にノイズが入りやすい →「京都」で検索して東京都がヒットする → 「スキー」で検索して「ウイスキー」がヒットする |
インデックスサイズが大きい CPUやメモリの負荷が比較的高い |

QSハイブリッド方式
全文検索エンジンQuickSolutionは、システム辞書が不要なN-gram方式をベースとした形態素解析併用の「QSハイブリッド方式」を採用。「QSハイブリッド方式」は、N-gram方式の特徴である検索漏れが発生しないという点に加え、検索ノイズについても独自アルゴリズムによる抑制および辞書の補完的併用により、さらにノイズが入りにくくなっています。
システム辞書は基本的に不要な為、未踏テキストもすぐに検索することが可能です。
さらに検索機能を補完・拡張する機能として、関連語辞書(同義語・類似語登録)と単語重み付け辞書(重要語・不要語の登録)などを使用することで、検索漏れのない、ノイズが少ない検索結果を手に入れることができます。
キーワード抽出機能・関連語抽出機能
辞書を必要としないため、新語や複合語もキーワードとして抽出可能です。
またキーワードを入力して関連語を抽出することも可能です。
これらの機能を利用して、検索条件を適切に表現できない場合でも、抽出されたキーワードや関連語を利用して、連想的に検索結果を絞り込めます(連想検索)。
様々な業種のシソーラス辞書(17種類)があり、それらと連携可能です(オプション)。
| 基本語 |
表記違い |
企業名称 |
団体名称 |
| 企業正式名称 |
団体正式名称 |
経済・法律・公共 |
放送・時事 |
| 石油・化学 |
電力・エネルギー |
非鉄・金属 |
自動車 |
| 機械 |
土木・建築 |
情報通信・コンピュータ |
医療・薬学 |
| 医学略語 |
|
|
|
※シソーラス連携はWindows/Linux環境でのみ動作します(Solaris環境では未対応です)

多言語対応 (一部オプション)
日本語はもちろん、英語や中国語のデータも全文検索可能。韓国語にも対応。
日本語以外の原野特殊文字が文字化けしないなど、グローバル企業にも最適な企業向け全文検索エンジンです。

|