タグ

algorithmとlibraryに関するkgbuのブックマーク (3)

  • 開発メモ: IndexDB: 転置インデックスのためのDB

    大震災の時分に何だが、Kyoto Cabinetベースで検索エンジンの核となる転置インデックスを作るのに適したDBを実装したという話。 転置インデックスとappend操作 多くの検索エンジンの核となる転置インデックスとは、検索語に一致する表現がどこに出てきたかという位置情報のリストを保持するものであり、検索語をキーとして位置情報リストを値とする連想配列である(転置インデックスを使わない検索エンジンもあるが)。この位置情報リストをposting listとか呼んだりするらしい。転置インデックスにもいくつか流儀があり、検索語をどのように切り分けるかで単語(分かち書き)方式とか文字N-gram方式とか呼ばれるものがあったりするが、いずれにせよ、小さいキーと、非常にでかい値を保持する連想配列を作ることには変わりない。 で、素朴に転置インデックスを作ろうとすると、検索対象の文書を解析しながら、得られ

    kgbu
    kgbu 2011/03/11
    インデックス作成の際のappendに関するバッファリングをうまいことしてくれるらしい
  • Facebook

  • matlab で GPGPU - potasiumchの日記

    いわゆる GPGPU (General Purpose GPU) 的なことを matlab (ひいては Python/Java/C/C++)でやるためのラッパーを作っている人たちがいて、近くでデモをやるというので見に行った。 現時点で汎用の CPU よりもビデオカードに載っている GPU の方が計算性能ははるかに高いので、行列の掛け算とか FFT ぐらいまで単純化できる計算はもう GPU にやらせた方が安いし速いんじゃないか? という話。 ラッパーのインターフェースは至ってシンプルで、任意の matlab 行列を GPU 行列にキャストしたらあとは普通に演算がオーバーロードされる。 gA = gsingle(mA); gB = gsingle(mB); C = gA*gB; d = sum(gA(:)); みたいな。これだけで演算が(行列のサイズやビデオカードにもよるけど)最大で数十倍〜百

    kgbu
    kgbu 2008/05/15
    GPUを使って数値演算するパッケージを作ってるベンチャーの話。昔のFPUを思い出すが、行列計算というところがミソなんだろうな。sparseな行列とかには対応できるんだろうか?
  • 1