【てんちいんでっくす】
転置インデックス とは?
最終更新:
💡 「APIはどこに書いてある?」に答える、文書の逆引き索引
単語から、その単語を含む文書のID一覧を引ける索引。検索のたびに全文書を読み直す代わりに、あらかじめ作った「単語→文書」の対応を使う。
📌 このページのポイント
- 単語ごとに、その単語を含む文書IDの一覧を持つ
- 索引を作るときに、文書を区切り、検索に使う語を整える
- ANDは共通の文書、ORはいずれかの語を含む文書を探す
- 文書を見つける仕組みと、関連度で順位を付ける仕組みは分けて考える
何をひっくり返しているの?
検索するたびに全部の文章を読むの?
転置インデックスを使う検索では、先に索引を作っておくよ。検索時は単語に対応する文書IDの一覧を調べられる。ただし、文書が増えたり変わったりしたら、索引も更新する必要があるんだ
日本語でも同じようにできる?
どこで語を区切るかを決める必要があるよ。日本語では形態素解析で区切ったり、一定の文字数ごとに分けたりする方法がある。英語も記号や表記の扱いを考えるので、空白だけで常に十分とは限らないんだ
一覧の先頭が、一番よい検索結果なの?
文書IDの順番だけで、内容が一番合うとは言えないよ。検索語を含む文書を見つけたあと、関連度を計算して並べる仕組みを組み合わせることがある。文書を登録するときと検索するときで、語の区切り方や整え方を合わせるのも大切なんだ
まとめ:ざっくりこれだけ覚えればOK!
「転置インデックス」って出てきたら「単語から文書を探す逆引き索引」と思えばだいたいOK!
📖 おまけ:英語の意味
「Inverted Index」 = 転置索引
💬 通常の「文書→単語」の関係をInvert(反転)して「単語→文書」にしたからこの名前だよ