ある新聞社が、過去の記事を検索できるシステムを作る。索引の作り方として、形態素解析で記事を単語に区切って登録する方式(単語方式)と、連続する2文字ずつの文字bi-gramで登録する方式(bi-gram方式)を比べている。2つの方式の説明として、最も不適切なものを1つ選べ。
正解と解説を見る
解説
正解 D
この問題の論点:全文検索の索引の単位
ポイント
文字n-gramの索引は検索漏れが少ない代わりに意図しない一致が増えやすく、単語単位の索引はその逆の傾向をもちます。
選択肢ごとの解説
- A
適切
「東京都」をbi-gramに区切ると「東京」「京都」となり、「京都」の索引と一致します。文字の並びだけで照合するため、別の語の一部に含まれる文字列も拾ってしまいます。
- B
適切
たとえば「関西国際空港」が1語として登録されていると、「国際空港」で検索しても一致しません。単語方式は区切った単位でしか照合できないため、区切り方の食い違いが検索漏れにつながります。
- C
適切
単語方式は意図しない一致が少なく、bi-gram方式は検索漏れが少ないため、併用すると長所を補い合えます。ただし索引を2つ作るため、記憶容量や更新の手間は増えます。
- D
不適切 正解
これはbi-gram方式の特徴です。単語方式は辞書をもとに単語を区切るため、辞書にない新語は正しく区切れないことがあり、辞書の更新と索引の作り直しが必要になる場合があります。
試験での狙われ方
n-gramは言語モデルだけでなく、文字列を機械的に区切る方法としても使われます。用途ごとに長所と短所を整理しておくと判断しやすくなります。
参考
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目27 自然言語処理)
- 工藤智行「検索エンジンを作る 第6回 N-gramと形態素解析との比較」(gihyo.jp、2007年)