シミュレーションデータ作成プログラム

IMG_1486.JPG
※去年の春にいった鳥取砂丘、気持ちいい


ARモデルを用いて、数値シミュレーション用のデータを自動生成するプログラムを作りました。

一応簡単なアルゴリズムとしては、ARモデルでノイズを期待値0、分散1のガウス分布に従って発生させ、1000時点毎に変化点があるようなデータとするために、ARモデルで発生させた数値に、変化量の初期値を5として、変化点毎に(変化量)-0.5していくような値を足していくようにしてます。

実行方法は、

gcc -lm ファイル名.c

でコンパイルした後、

./実行ファイル名 発生データ数 ARパラメータ1 ARパラメータ2

とすると、標準出力されます。

ファイルで用いる場合は、リダイレクトなどでテキストに落としてください。

続きを読む

異常検出に関する妄想

IMG_2141.JPG
※去年の冬にいった渦潮で有名な鳴門大橋


今日、不正アクセスやウィルスなどを、変化点検出エンジンを用いて検出する方法について、ふと思いついた方法がある。
プログラムでシミュレーションもしていないし、理論的にも単純すぎて、説得力がないような方法だが、意外と効果があるんじゅないのかな、と妄想している。

では、その方法について、メモ程度に記載しておく。

続きを読む

よくない議論

IMG_2366.JPG
※春に行った舞鶴の赤レンガ建築物


中学生の頃に、仲のよかった友人から、

君は、ものを考えて話す能力がすごく高い。けど、知識が人より少ない。僕と逆だね。けど、知識は簡単に増やすことができるから、君が知識を身につけたら、かなわないだろうな。

と言われたことがある。

彼とは、毎日のように、何かについて議論をしていたような記憶がある。
彼は、知識があり、語彙も多いために、否定したくても否定すことができずに終わった議論もあった。

続きを読む

変化点検出エンジン

IMG_2203.JPG
※春に行った京都の玄武岩


さて、久々の研究報告です。

NECさんの開発している変化点検出エンジン「ChangeFinder」を、プログラムで実装してみました。
「ChangeFinder」は、これまでの従来の手法による変化点検出にかかる計算コストを大幅に削減した独自のアルゴリズムによって開発されています。

データマイニングの観点から、外れ値と変化点を区別して、変化点を検出することに成功しています。
このように、変化点と外れ値は同一のアルゴリズム内で扱うのは難しいとされてきた中で、計算量を削減した上で同一に扱えるというのは、かなり画期的な手法です。

それでは、実験的にデータを発生させたりすることで、適当な時系列データを作成し、どの程度の精度と計算コストで検出できるかを実験してみました。

結果からいうと、すばらしいです!
では、簡単に数値シミュレーション結果を示していきます。

画像をクリックして拡大表示できます。

続きを読む