Dルートで行こう

ハック日記

R言語…しゅごい

R言語マニュアル

https://cran.r-project.org/doc/contrib/manuals-jp/Mase-Rstatman.pdf

 

wekaでは統計学の真似事しかできず、細かい値が分からないのでR言語をやらないといけない。

Rには一応RwekaというものがありWekaれることも確認。

 

 

・Wekaった結果

spam ham で単に分けてみる。メールはあげられないけどARFFぐらいはどっかのアップローダ使ってアップしてみようかな

使用アルゴリズム

1.Multilayerperceptron 99.732

2.J48        100.000

3.RepTree      100.000

4.BayesNet      99.911

5.Logistic       78.3036

 

ロジスティク回帰以外は良好。ロジスティックの目的変数は2つあれば解析でき、spamhamの目的変数を撮るARFFはいい感じに分類されると思っていたが、そうはならなかった。

 

ここからが問題でwekaで時間予測する。

モデルを与えて,

Arff を時系列順に並び替え、それを 3 分割し た。先頭2部はモデル生成の ARFF とし、後尾1部はテストデータとして解析する。(例として元3000通、モデル2000通、テスト1000通)2008 年 2 月半ばから 2010 年 3 月までのメールを解析するデータとした.

 

 

 

しゅごくゴミです。。。

目的変数Unixtime  説明変数11 個

 

使用アルゴリズム

 

1.Multilayerperceptron

Correlation coefficient -0.0513

Mean absolute error 13799602.723

Root mean squared error 14940678.406

Relative absolute error 64.0257 %

Root relative squared error 69.028 %

 

2.GausianProcess

Correlation coefficient -0.0188

Mean absolute error 17201100.4342

Root mean squared error 17362248.6297

Relative absolute error 79.8075 %

Root relative squared error 80.216 %

Coverage of cases (0.95 level) 100 %

Mean rel. region size (0.95 level) 392.8374 %

 

3.SMOreg Correlation coefficient -0.0218

Mean absolute error 17469945.5814

Root mean squared error 17660912.5654

Relative absolute error 81.0549 %

Root relative squared error 81.5959 %

 

時間の相関 2 変数を時間と IP と spamham の3つにした。どうやら関係ないどころか、期待に反して悪化 している。

 

1.SMOreg

Correlation coefficient -0.0014

Mean absolute error 23064370.1931

Root mean squared error 23157477.9568

Relative absolute error 107.0112 %

Root relative squared error 106.9908 %

 

wekaが問題なの?実は半分正解である。

時間を予測するのではなく、ある時間にあるスパムメールがくることが目的としなければならず、wekaではそれができない。できない!

 

そしてR言語に頼るのである。

R?やだーめんどくさいじゃないですかー。と最初に貼ったリファレンスpdfを見ると、なんとスッキリしていることだろうか。。。

Cでもある程度は組めるが、本当に無駄な作業が多くなる。(PG量が増える)

 

決定木の予測としてはpredict.treeを使える。もちろん、モデルとテストデータに分けてモデルで予測した値をテストデータと相関やらなんやら比べることもできる

 

>even.n<-2*(1:75)-1

>train.data<-iris[even.n,]

>test.data<-iris[-even.n,-5]

>iris.lab<-factor(c(rep("S",25),rep("C",25),rep("V",25)))

>train.data[,5]<-iris.lab

>iris.rp2<-rpart(Species~.,train.data)

>plotcp(iris.rp2)

 

Brownleeの排気損失率データ (同志社大

 

CRANパッケージ見ると離散時間生存木とかもあるみたいだー

スパムハムを離散時間にするって意味わからんけど