Location : Home > Languages > Perl > Package
Title : Statistics::Burst
Toolbox Logo

名称

 Statistics::Burst - Word Burst アルゴリズムの実装


概要

use Statistics::Burst;

my $burstObj=Burst::new();
$burstObj->generateStates(3,.111,2);
$burstObj->gamma(.5);
$burstObj->setData(\@gap_space);
$burstObj->process();

$statesUsed=$burstObj->getStatesUsed();

説明

 この Burst モジュールはクラインバーグのワード・バーストアルゴリズム(Kleinberg's Word Bursts algorithm)の実装である。
 アルゴリズムに関する論文は http://www.cs.cornell.edu/home/kleinber/bhs.pdf にある。
 このアルゴリズム実装が行うことは、いくつかのパラメータが設定されたときにドライバコードが数のリストを渡すことである。数のリストは異なる到着間の時間である。店の入り口に人が 8:10, 8:20, 8:25, 8:30 に到着するとモデル化すると、 Burst に渡される数のリストは (10,5,5) となる。
 バースト(burst)は到着とレートによる定義されるワードの多さをモデル化するために用いられる。例えばスラッシュドットからの RSS タイトルを監視しているとしよう。ワードがタイトルに現れたらワードが到着したと見なすことができる。このときの到着レートはあるワードが1日にどれくらい到着するか、または、1ハンドリングあたり何回ワードが現れるか(これは通常 1 より小さい)で評価できる。この情報により、Burst 関数によって処理される分離リリストを構築できる。

new

$burst=Statistics::Burst::new();

 burst オブジェクトを返す。

setState($lamba, [$index])

$burst->setState(.112); $burst->setState(.24,1);

 特定の状態の lamba を設定または変更する。$index が指定されていなければ新たな状態を生成する。

generateStates($count,$rate, $sigma)

$burst->generateStates(4,.123,1);

 状態を生成するデベロッパ。生成すべき状態の数 [$count] を 状態 0 に対する初期レート [$rate] 及び状態変化にどれくらいかかるかを示すパラメータ sigma を指定する。sigma が高ければ状態からの変動が大きい。

gamma($gamma)

$burst->gamma(2,);

 移行コストに対するパラメータ。値が大きいほどより高位に移行するためにコストが必要。

setData($gap_space)

$burst->setData([4,5,6,3,4,2]);

 処理すべきデータを設定する。

process

$burst->process();

 burst の計算を開始する。

getStatesUsed

$array_ref=$burst->getStatesUsed();

 データセットにおける各ステップに対する処理の状態を返す。


著者

 Copyright 2004-2005, Tommie M. Jones All Rights Reserved.

 本ライブラリはフリーソフトウェアであり、Perl 本体と同等の条件で修正/再配布してもよい。

Toolbox Logo
Updated : 2007/07/27