この論文で計算するものは, ある文字列をκ回以上含むドキュメントの総数 (
dfκ) である. 全ての部分文字列に対してこれらの統計量を保存する場合O (
N2) の表が必要となり, コーパスの大きさを考えると, この表は実用的でなく, 通常の計算機では実際に作ることは難しい.しかし, κ=1の場合, Suffix Array, 文字列のクラス分けを利用して, 統計量をクラス毎に保存することで, これを0 (N) の表にできるという報告がある (Yamamoto, Church 2001). このクラスは同じ統計量を持つ文字列の集合であり, コーパス内の全ての文字列の統計量はクラス毎に作成した統計量の表から取り出すことができる.しかし, この方法はκ ≧2の場合には使用できない.我々は, κ≧2の場合にも使用でき, 表を用いることによって文字列の統計量を計算するアルゴリズムを提案する.本稿では
dfκ の性質を述べた後, 単純な計算方法と提案するアルゴリズムとの比較を行う.このアルゴリズムは, 前処理として表を作成するために0 (
N log
N) の計算時間とO (
N) のメモリを使用し, その表を用いてO (log
N) 時間で文字列の統計量を取り出すことができる.
抄録全体を表示