マルチストリーム索引付け
複数のストリームを、異なるオプションを指定して一度に定義できます。
複数のストリームを定義することには、利点と欠点があります。例えば、再現率を向上する必要がある小規模なコレクションがある場合に、以下の 3 つのストリームを定義するとします。
<vse-index-stream stem="none" /> <vse-index-stream stem="depluralize+case" /> <vse-index-stream stem="english+case" />
このコレクションでは、The men murder stones のようなストリングは以下の 3 つの異なるストリームで索引付けされます。
The men murder stones the man murder stone the man kill stone
この索引では、1 つのデフォルト・ストリームしかない索引とは異なり、以下のようになります。
- The の照会は、この文書と、元のテキストが the pigs fly であった別の文書と一致しますが、この文書の方が関連性が高くなります。
- man の照会と kill の照会は一致します。
ただし、この索引はデフォルトの索引よりサイズが大きくなります。索引付けとマージにも、より長時間かかります。この索引に対して行われる照会の数が増え、そのために検索時間が長くなります。
マルチストリーム索引付けの利点は、高い再現率と適合率が高い関連性ランキングとを組み合わせることができる点です。索引ストリームが 1 つだけの場合、再現率を高めると、多くの場合、ランキングにおける適合率が低くなります。ステマー english+case を含むストリームでは、「kill」を含む文書と「murder」を含む文書を区別できません。同様に、単一のストリームでは、適合率を上げると再現率が下がる可能性があります。ステマーを含まないストリームでは、「apple」と「Apple」は区別できますが、「apple」という単一の照会で両方の文書を返すことはできません。複数のストリームを使用すると、それぞれのストリームの長所が結合されます。例えば、上記の 2 つのストリームを組み合わせると、照会「Apple」に対して、単語「apple」、「Apple」、そしておそらく「Macintosh」が含まれた文書がすべて返されますが、照会語に完全一致した文書は、より多くのストリームで一致となるため、最高のランクになります。
マルチストリーム索引付けの欠点は、生成される索引が大きくなることです。これにより、いくつかの結果が生じます。以下の n はストリーム数です。
- 索引サイズおよびマージ時間が、約 1/3 * n だけ増大します。
- (クロールではなく) 索引付けにかかる時間が n 倍になります。
- この索引に対して実行される照会の数が n 倍になります。