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

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

 形態素解析により抽出された語句は、用語や代表表記、大文字/小文字、全角/半角などにより正規化が行われます。まず、「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化フィルターとランキングコントロールについて、さらに詳しく紹介します。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30