欲しい情報をピンポイントに検索する技術

2009年1月22日(木)
松田 潤

語句の正規化からインデックス登録

 形態素解析により抽出された語句は、用語や代表表記、大文字/小文字、全角/半角などにより正規化が行われます。まず、「2.用語正規化」を行うことで、活用が異なる語句であっても同じ意味だとみなすことが可能になります。例えば、「走っていた」と「走る」を同じ意味であると判断できます。

 また「走らない」などの否定形と判断された場合には、まず「走る」という肯定形に正規化した後に否定フラグをセットします。さらに「走らなくない」のように否定が連続した場合には、否定の数で肯定形か否定形かを判断します。例文では「書かなかった」が「書く」の否定形として正規化されます。

 次に、「3.代表表記正規化」では、形態素解析辞書に基づいた表記の統制を行います。例えば、「バイオリン/ヴァイオリン」のような外来語やカタカナのゆれ、「売り上げ/売上げ」のような送りがなのゆれ、「いちじく/イチジク/無花果」のような交ぜ書き、ひらがな、漢字のゆれ、「サーバ/サーバー」のような長音の統制、「15000/一万五千」のような数値の統制などです。例文では、「検索エンヂン」が「検索エンジン」に正規化されます。

 さらに、「4.大文字小文字全角半角正規化」では、英字の全角と半角、大文字と小文字、カタカナや記号の全角と半角の表記ゆれを統制します。このとき、英字は半角小文字に、カタカナは全角に統制されます。例文では、「A-3456BC」が「a-3456bc」に正規化されます。

 正規化が行われた語句は、「5.V-gram解析」により分割されます。前回、紹介したN-gram方式は、テキストをあらかじめ決められた文字数で分割することでインデックスを作成しました。一方、V-gram解析では、テキストを文字種(UNICODE区分)ごとに異なった文字数で分割します。

 例えばCBESでは、漢字は2文字、ひらがな/カタカナは3文字、英字/数字/記号は4文字、字種間のまたがりは2文字で分割されます。このとき、文字種ごとの末尾は2文字分まで分割し、1文字はインデックス化を行いません。末尾の1文字を登録しないのは、語句中の1文字を検索ノイズと判断しているためです。

 V-gram解析された語句は、開始フラグと終了フラグがセットされ、「6.自立語統計インデックス」が作成されます。開始フラグ、終了フラグは、概念検索を行う場合の特徴ターム(関連するキーワード)として使用されます。

 「1.形態素解析による自立語の抽出」~「6.自立語統計インデックス」で抽出された例文の語句は、図2のとおりCBインデックスに登録されます。
 

インデックスの作成

 「7.CBインデックス」は、「クロール」「抽出」「インデキシング」の大きく3つのステップで作成されます。クロールは、設定されている外部ストレージを巡回し、インデックス化するべき文書を抽出する処理です。外部ストレージとは、例えばWindowsファイルシステムやhttpサーバー、Lotus Notesデータベースなどを指します。クロール処理は、全文書の取得はもちろん、前回クロール時からの差分だけを取得することもできます。

 次に抽出では、クロールで取得した文書のファイル形式ごとに提供されるXML化フィルターを使用して構造化を行います。現在、CBESでは、一太郎や三四郎をはじめ、Microsoft Word/Excel/PowerPoint、PDF、テキストファイル、CSV、XML、HTMLなど、さまざまなXML化フィルターが提供されています。XML化フィルターにより構造化されたXMLデータは、ここまでに紹介したとおり、NL-Vgram方式で解析されCBインデックスに登録されます。

 次ページでは、XML化フィルターとランキングコントロールについて、さらに詳しく紹介します。

株式会社ジャストシステム
エンタープライズマーケティング部 部長。鐘紡株式会社にて、主に金融機関向けシステムの開発・導入や、企業向けパッケージ・ソリューションの企画、事業化を担当。94年より株式会社ジャストシステムに移り、企業向けソリューション販売事業を担当。ConceptBase事業については、事業企画から、アライアンス、KMエバンジェリストまで、幅広い活動を行っている。http://www.justsystems.com/jp/

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています