weka
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
***SCOPEとweka [#u43bdf54]
+wekaダウンロード http://www.cs.waikato.ac.nz/~ml/weka/
--linux で weka 起動まで
wget http://prdownloads.sourceforge.net/weka/weka-3-6-1.zip
unzip weka-3-6-1.zip
cd weka-3-6-1
java -jar weka.jar
--その後
+++Explorer を選択
+++Open fileでファイル読み込み
+++J48を選択
--コマンドラインから起動する場合
java -classpath weka.jar weka.classifiers.trees.J48 -t ***.arff
java -classpath weka.jar weka.classifiers.trees.J48 -C 0.25 -M 1 -t ***.arff
--CLASSPATHの設定
---http://www.wikihouse.com/java/?path,classpath
---vi .bash_profile
export PATH=$PATH:/home/weka
export CLASSPATH=$CLASSPATH:/home/weka/weka.jar:.
---source .bash_profile
+weka サンプル
--サンプル作成 [[参考サイト>http://www.mkc.zaq.ne.jp/eabeh309/weka/index.html#%E5%85%A5%E5%8A%9B%E3%83%87%E3%83%BC%E3%82%BF]]
--SCOPE関連 政治的カテゴリに対する各議員の発言数を入力データとして決定木をつくる場合
@relation member
@attribute 財務(1010) Real
@attribute 病院事業(1101) Real
@attribute 教育(1120) Real
@attribute 学校(1121) Real
・・・
@attribute Member {memberA,memberB,memberC,・・・}
@data
0.113389626,0.031363088,・・・,0,memberA
0.151930262,0.078455791,・・・,0,memberB
--元のExcelデータ
#ref(weka-excel.jpg,,40%);
---メモ Excelで転置
コピーし、「形式を選択してペースト」で、行を列の入れ替えを選択
***J48 決定木の作成 [#l968669e]
-J48とは [[参考サイト>http://www1.doshisha.ac.jp/~mjin/R/20.pdf]]
--Quinlan の C4.5 に基づいた決定木を生成する
--デフォルトで実行すると、"J48 -C 0.25 -M 2" となっている。
---オプションCについて
Confidence Factor
剪定のための信頼要因。値が小さいほどより多く剪定される
---オプションMについて
miniNumObj
葉における最少の個体数
--オプションの説明 http://wiki.livedoor.jp/ryu_toshinori/d/classifiers.trees.J48
---binarySplits -- 名義属性の分割に二分分割を使うか(木を構築するときに).
---confidenceFactor -- 信頼度は枝刈りに対して利用しました.(より小さい値はより多く枝刈りを行います)
---debug -- trueに設定されると,分類学習アルゴリズムは追加インフォメーションをコンソールに出力します.
---minNumObj -- 葉あたりの最小事例数
---numFolds -- 誤り低減枝刈りのために利用するデータの量を決定してください. 1つの折り目部分集合は枝刈りのために利用され,残りは決定木の生成に利用します.
---reducedErrorPruning -- 誤り低減枝刈りをC4.5方式の枝刈りの変わりに使用するかどうか.
---saveInstanceData -- 訓練データを可視化のために保存するかどうか.
---seed -- データをランダム化するのに種が利用されます.誤り低減枝刈りを利用するときに.
---subtreeRaising -- 部分木の出現操作を枝刈りの際に考慮するかどうか.
---unpruned -- 枝刈りを実行するかどうか.
---useLaplace -- ラプラスに基づいて葉での数え上げが平滑化されるかどうかです.
+SCOPEのデータ作成方法
--各議員の発言数が異なるため正規化する
---各議員の発言総数で各議員のカテゴリ発言数を割る
---例
議員Aの発言総数 1000回 議員Aの財務に関連する発言200回 の場合
議員Aの財務の値は 0.2 となる
--議員名を載せていないバージョン、arff形式のファイル
---&ref(MemberH19.txt);
---"J48 -C 0.25 -M 2" 結果
#ref(weka-1.jpg,,50%);
--議員名を載せているバージョン、arff形式のファイル
---&ref(MemberH19-Otaru.txt);
---"J48 -C 0.25 -M 2" 結果
#ref(weka-member.jpg,,50%);
---"J48 -C 0.25 -M 1" 結果
#ref(weka-otaru-j48-C025-M1.jpg,,50%);
バッファの保存
#ref(OtaruH19-J48-C025-M1.txt)
***コマンドラインからの操作について [#wfc6f796]
+コマンドラインからサンプル http://furukawa.sfc.keio.ac.jp/course/DM01/man-w.html
--コマンドラインからどのように操作するのか?
--java weka.classifiers.j48.J48
-t : 訓練事例ファイルを指定する。
-T : テスト事例ファイルを指定する。 もしこれを指定しない場合、訓練事例に対して交差検定を行う。
-c : クラス属性を指定する。クラスとして指定したい属性を番号で指定する。その属性が入力ファイル中で1番最初に宣言された属性であれば1、2番目であれば2と指定する。
-x : 交差検定の fold 数を指定する。
-v : 木に対する評価(Error on training data)を表示しない。
-o : 決定木を表示しない。
-d : 生成した木を保存する。他のテスト事例に対して、同じ木を作り直す必要がなくなる。
-l : 保存した木を呼び出す。
-C : pruning confidence (枝刈りの強さを表す数値。値が小さいほど、大きい枝刈りが行われる。 デフォルト値は 25% )の値を指定する。
-M : 葉に最低限含まれなければならないデータ数を指定する。
--java weka.classifiers.j48.J48 -t weather.arff -d tree.out
---(weather.arff を訓練事例として生成した決定木を、tree.out という名前で保存する)
***評価用語 [#q3feb308]
+Correctly Classified Instances
--正しく分類された数とその割合
-- 0 0 %
+Incorrectly Classified Instances
--誤って分類された数とその割合
-- 17 100 %
+Kappa statistic
--K統計量。判定者内一致度
-- -0.0625
+K&B Relative Info Score
-- -19.0059 %
+K&B Information Score
-- -0.7744 bits -0.0456 bits/instance
+Class complexity | order 0
-- 85.1332 bits 5.0078 bits/instance
+Class complexity | scheme
-- 18258 bits 1074 bits/instance
+Complexity improvement (Sf)
-- -18172.8668 bits -1068.9922 bits/instance
+Mean absolute error
--平均絶対誤差。予測精度。低いほど良い
-- 0.1176
+Root mean squared error
--二乗平均平方根。変化量を統計的に評価する手法。予測精度。低いほど良い
-- 0.2691
+Relative absolute error
-- 103.208 %
+Root relative squared error
-- 111.0656 %
+Total Number of Instances
--決定木を作るのに寄与したインスタンスの数
-- 17
***参考サイト [#n9cb453e]
+http://wiki.livedoor.jp/ryu_toshinori/d/classifiers.trees.J48
+順序尺度、名義尺度 http://www.gen-info.osaka-u.ac.jp/testdocs/tomocom/express/express0.html
+http://blogs.yahoo.co.jp/pironotakarabako/52294173.html
終了行:
***SCOPEとweka [#u43bdf54]
+wekaダウンロード http://www.cs.waikato.ac.nz/~ml/weka/
--linux で weka 起動まで
wget http://prdownloads.sourceforge.net/weka/weka-3-6-1.zip
unzip weka-3-6-1.zip
cd weka-3-6-1
java -jar weka.jar
--その後
+++Explorer を選択
+++Open fileでファイル読み込み
+++J48を選択
--コマンドラインから起動する場合
java -classpath weka.jar weka.classifiers.trees.J48 -t ***.arff
java -classpath weka.jar weka.classifiers.trees.J48 -C 0.25 -M 1 -t ***.arff
--CLASSPATHの設定
---http://www.wikihouse.com/java/?path,classpath
---vi .bash_profile
export PATH=$PATH:/home/weka
export CLASSPATH=$CLASSPATH:/home/weka/weka.jar:.
---source .bash_profile
+weka サンプル
--サンプル作成 [[参考サイト>http://www.mkc.zaq.ne.jp/eabeh309/weka/index.html#%E5%85%A5%E5%8A%9B%E3%83%87%E3%83%BC%E3%82%BF]]
--SCOPE関連 政治的カテゴリに対する各議員の発言数を入力データとして決定木をつくる場合
@relation member
@attribute 財務(1010) Real
@attribute 病院事業(1101) Real
@attribute 教育(1120) Real
@attribute 学校(1121) Real
・・・
@attribute Member {memberA,memberB,memberC,・・・}
@data
0.113389626,0.031363088,・・・,0,memberA
0.151930262,0.078455791,・・・,0,memberB
--元のExcelデータ
#ref(weka-excel.jpg,,40%);
---メモ Excelで転置
コピーし、「形式を選択してペースト」で、行を列の入れ替えを選択
***J48 決定木の作成 [#l968669e]
-J48とは [[参考サイト>http://www1.doshisha.ac.jp/~mjin/R/20.pdf]]
--Quinlan の C4.5 に基づいた決定木を生成する
--デフォルトで実行すると、"J48 -C 0.25 -M 2" となっている。
---オプションCについて
Confidence Factor
剪定のための信頼要因。値が小さいほどより多く剪定される
---オプションMについて
miniNumObj
葉における最少の個体数
--オプションの説明 http://wiki.livedoor.jp/ryu_toshinori/d/classifiers.trees.J48
---binarySplits -- 名義属性の分割に二分分割を使うか(木を構築するときに).
---confidenceFactor -- 信頼度は枝刈りに対して利用しました.(より小さい値はより多く枝刈りを行います)
---debug -- trueに設定されると,分類学習アルゴリズムは追加インフォメーションをコンソールに出力します.
---minNumObj -- 葉あたりの最小事例数
---numFolds -- 誤り低減枝刈りのために利用するデータの量を決定してください. 1つの折り目部分集合は枝刈りのために利用され,残りは決定木の生成に利用します.
---reducedErrorPruning -- 誤り低減枝刈りをC4.5方式の枝刈りの変わりに使用するかどうか.
---saveInstanceData -- 訓練データを可視化のために保存するかどうか.
---seed -- データをランダム化するのに種が利用されます.誤り低減枝刈りを利用するときに.
---subtreeRaising -- 部分木の出現操作を枝刈りの際に考慮するかどうか.
---unpruned -- 枝刈りを実行するかどうか.
---useLaplace -- ラプラスに基づいて葉での数え上げが平滑化されるかどうかです.
+SCOPEのデータ作成方法
--各議員の発言数が異なるため正規化する
---各議員の発言総数で各議員のカテゴリ発言数を割る
---例
議員Aの発言総数 1000回 議員Aの財務に関連する発言200回 の場合
議員Aの財務の値は 0.2 となる
--議員名を載せていないバージョン、arff形式のファイル
---&ref(MemberH19.txt);
---"J48 -C 0.25 -M 2" 結果
#ref(weka-1.jpg,,50%);
--議員名を載せているバージョン、arff形式のファイル
---&ref(MemberH19-Otaru.txt);
---"J48 -C 0.25 -M 2" 結果
#ref(weka-member.jpg,,50%);
---"J48 -C 0.25 -M 1" 結果
#ref(weka-otaru-j48-C025-M1.jpg,,50%);
バッファの保存
#ref(OtaruH19-J48-C025-M1.txt)
***コマンドラインからの操作について [#wfc6f796]
+コマンドラインからサンプル http://furukawa.sfc.keio.ac.jp/course/DM01/man-w.html
--コマンドラインからどのように操作するのか?
--java weka.classifiers.j48.J48
-t : 訓練事例ファイルを指定する。
-T : テスト事例ファイルを指定する。 もしこれを指定しない場合、訓練事例に対して交差検定を行う。
-c : クラス属性を指定する。クラスとして指定したい属性を番号で指定する。その属性が入力ファイル中で1番最初に宣言された属性であれば1、2番目であれば2と指定する。
-x : 交差検定の fold 数を指定する。
-v : 木に対する評価(Error on training data)を表示しない。
-o : 決定木を表示しない。
-d : 生成した木を保存する。他のテスト事例に対して、同じ木を作り直す必要がなくなる。
-l : 保存した木を呼び出す。
-C : pruning confidence (枝刈りの強さを表す数値。値が小さいほど、大きい枝刈りが行われる。 デフォルト値は 25% )の値を指定する。
-M : 葉に最低限含まれなければならないデータ数を指定する。
--java weka.classifiers.j48.J48 -t weather.arff -d tree.out
---(weather.arff を訓練事例として生成した決定木を、tree.out という名前で保存する)
***評価用語 [#q3feb308]
+Correctly Classified Instances
--正しく分類された数とその割合
-- 0 0 %
+Incorrectly Classified Instances
--誤って分類された数とその割合
-- 17 100 %
+Kappa statistic
--K統計量。判定者内一致度
-- -0.0625
+K&B Relative Info Score
-- -19.0059 %
+K&B Information Score
-- -0.7744 bits -0.0456 bits/instance
+Class complexity | order 0
-- 85.1332 bits 5.0078 bits/instance
+Class complexity | scheme
-- 18258 bits 1074 bits/instance
+Complexity improvement (Sf)
-- -18172.8668 bits -1068.9922 bits/instance
+Mean absolute error
--平均絶対誤差。予測精度。低いほど良い
-- 0.1176
+Root mean squared error
--二乗平均平方根。変化量を統計的に評価する手法。予測精度。低いほど良い
-- 0.2691
+Relative absolute error
-- 103.208 %
+Root relative squared error
-- 111.0656 %
+Total Number of Instances
--決定木を作るのに寄与したインスタンスの数
-- 17
***参考サイト [#n9cb453e]
+http://wiki.livedoor.jp/ryu_toshinori/d/classifiers.trees.J48
+順序尺度、名義尺度 http://www.gen-info.osaka-u.ac.jp/testdocs/tomocom/express/express0.html
+http://blogs.yahoo.co.jp/pironotakarabako/52294173.html
ページ名: