memo.xight.org

日々のメモ

カテゴリ : GETA

1ページ目 / 全1ページ

GETAによるファイル全文検索

基本

  GETAプログラムは標準で /usr/local/geta にインストールされる
  その下の sbin/mkw を使って,単語出現マトリックス WAM (Word-Article Matrix)を作成することにより
  tf/idf法などによる検索を高速に実行することができる.
  WAMは疎行列を効率的に表現するデータ構造らしい.詳細はたぶん論文に書いてある.
  mkwは単語の出現頻度ファイルを入力とする. 出現頻度ファイルは chasen や MeCab などで作成する.
  検索は WAM ライブラリを使用する.例: search.c

注意

  文書やチュートリアルが用意されているのだが構成が悪く理解しづらい.
  例えばWAMという言葉の説明すらどこにも見当たらない.
  WAMのバイナリデータが cw.c などというファイル名になっておりまぎらわしい.

  単語出現頻度ファイルは以下のような形式になっている必要がある.
  スペースのかわりにタブだとエラーになる.
  @ファイルパス
  2 単語1
  4 単語2

  WAMの置き場所などは検索コマンドの引数で指定するのではなく ci.conf という設定ファイルに記述することになっているらしい.

運用

  単語出現頻度ファイルは,もとのファイルが更新されたときだけ更新する
  find コマンドで単語出現頻度ファイルのリストを作成し, それを引数として mkw を起動することにより WAM を作成する

Reference

  GETAによるファイルの全文検索
  http://pitecan.com/GETA/

汎用連想計算エンジン GETA

目的

  連想検索をはじめ,文書分類,単語間類似度計算など,大規模文書の分析に必要な要素技術をサポートすることを目的としている.

構成

  汎用連想計算エンジン(GETA)は,文書検索における単語頻度付き索引ファイルを典型とする,
  大規模かつ粗な行列型データを対象として,文書間および単語間の類似度を
  内積型メジャーにより高速計算することを中心とする一連のツール群から構成.

Reference

  汎用連想計算エンジン(GETA) 公開HP
  http://geta.ex.nii.ac.jp/

How to WAM (GETA)

  $GETAROOT/etc/ci.conf に

handle: [Handle]
short-name: [Short-name]
dataroot: /usr/local/geta/data/corpus/mainichi/
jma:p: japanese.sh

  japanese.sh は形態素解析の結果を 1 行に 1 形態素を出力するためのもの.
  dataroot と同じディレクトリに配置する.

WAM の生成

$ mkw [Handle] freqfile