もっと簡単にロジスティック回帰できないか
前回の記事( https://qiita.com/SeijiMiwa/items/64ae3d7b96d1ecca8478 )では、wekaのAPIをJavaから呼び出して、ロジスティック回帰する方法を説明しました。
本当は、コマンドラインで実現したかったのですが、そのときは方法がわからず。
ただ、コマンドラインのヘルプで、「何となくこんな感じかな」というところまでたどり着きましたので、やってみます。間違っていたらご指摘をお願いします。
データ
前回と同様、fukugyou.arff を教師データ。fukugyou-test.arff をテストデータとします。
コマンドライン
今回も mini-wekaを使います
java -cp mini-weka-3.9.15955.jar:. weka.classifiers.functions.Logistic -t fukugyou.arff -d fukugyou.model
これで fukugyou.model にモデルが生成されます。
これを使って、テストデータを推測してみます。
java -cp jar/mini-weka-3.9.15955.jar:. weka.classifiers.functions.Logistic -T fukugyou-test.arff -l fukugyou.model -p 0
出力結果
=== Predictions on test data ===
inst# actual predicted error prediction
1 1:? 1:y 1
2 1:? 2:n 0.912
前回記事の値と似たような結果になりました。
つまり、1人め(年収740万)は、副業しているとみられ、その可能性は100%。2人め(年収490万)は、副業していないとみられ、その可能性は91.2%と出ました。