タグ

algorithmとsearchに関するhide-Kのブックマーク (2)

  • 全文検索エンジンSedue - テクノロジー

    全文検索では検索要求に対し、「漏れなく」「高速」かつ「正確」に結果を返す必要があります。 この前者二つの実現のためにSedueではCompressed Suffix Arrays(CSA)と呼ばれる索引を利用しています。また、「正確」な結果を実現するために形態素解析や文書情報を解析した結果を利用したランキングを利用しています。これらを順に解説していきます。 Compressed Suffix Arrays Sedueは全文検索を実現するのにCompressed Suffix Arrays (CSA)を利用しています。従来の全文検索システムでは前もって辞書などで決めておいた各単語の出現位置を記録した転置ファイル方式、または、全ての長さNの部分文字列の出現位置を記録したn-gram方式が利用されていました。 転置ファイル方式では高速な検索が実現できる一方、検索漏れが生じる恐れがあり、またn-g

  • 接尾辞配列 - Wikipedia

    元の文字列があれば、接尾辞の開始位置を指定することですべての接尾辞を余すことなく得ることができる。この接尾辞を辞書順に並べたときの開始位置の配列が接尾辞配列となる。 "abracadabra"に対する接尾辞配列は、表のように、(11, 8, 1, 4, 6, 9, 2, 5, 7, 10, 3) となる。接尾辞 "a" の開始位置は11で、接尾辞 "abra" の開始位置は8だからである。 "abracadabra"に対して、12番目の接尾辞として空文字を考えることができる。しかし、これは常に先頭に配置されることになるので特に情報を持たないので、省略しても問題ない。 構築法[編集] 接尾辞配列を構築する最も容易な方法は、効率的な比較ソートを利用することである。この場合、回の接尾辞の比較が必要になるが、接尾辞の比較は の時間が必要となる。従って全体的な計算時間は となる。より精巧なアルゴリズ

    hide-K
    hide-K 2008/11/21
    suffix array
  • 1