現在、私は機械学習アルゴリズムの仕組みを理解しようとしています。実際には得られないことの1つは、予測ラベルの計算精度と視覚的混同行列の間の明白な違いです。私は可能な限り明確に説明しようとします。ここでPython - 機械学習
(ここではあなたが9つのサンプル(実際のデータセットには約4K)、6つの機能および9つのではない数字を表しラベル(が、いくつかの意味とがが7のように比較することはできません見ることができます>データセットの抜粋です4> 1)):好奇心を支持して
f1 f2 f3 f4 f5 f6 label
89.18 0.412 9.1 24.17 2.4 1 1
90.1 0.519 14.3 16.555 3.2 1 2
83.42 0.537 13.3 14.93 3.4 1 3
64.82 0.68 9.1 8.97 4.5 2 4
34.53 0.703 4.9 8.22 3.5 2 5
87.19 1.045 4.7 5.32 5.4 2 6
43.23 0.699 14.9 12.375 4.0 2 7
43.29 0.702 7.3 6.705 4.0 2 8
20.498 1.505 1.321 6.4785 3.8 2 9
Iは、多数のアルゴリズム(線形、ガウス、SVM(SVC、SVR)、ベイズなど)を試みました。私のマニュアルを理解する限り、私の場合は、回帰(連続)ではなく分類子(離散)で作業する方が良いです。一般的な使用方法:
model.fit(X_train, y_train)
model.score(X_test, y_test)
私が得た:
Lin_Reg: 0.855793988736
Log_Reg: 0.463251670379
DTC: 0.400890868597
KNC: 0.41425389755
LDA: 0.550111358575
Gaus_NB: 0.391982182628
Bay_Rid: 0.855698151574
SVC: 0.483296213808
SVR: 0.647914795849
連続のアルゴリズムを、より良い結果をしました。私はベイジアンリッジの混乱行列を使用する場合、その結果を検証する(整数にfloat型に変換する必要がありました)、私は次のようだ:私は85%の精度が間違っているという理解を与えた何
Pred l1 l2 l3 l4 l5 l6 l7 l8 l9
True
l1 23, 66, 0, 0, 0, 0, 0, 0, 0
l2 31, 57 1, 0, 0, 0, 0, 0, 0
l3 13, 85, 19 0, 0, 0, 0, 0, 0
l4 0, 0, 0, 0 1, 6, 0, 0, 0
l5 0, 0, 0, 4, 8 7, 0, 0, 0
l6 0, 0, 0, 1, 27, 36 7, 0, 0
l7 0, 0, 0, 0, 2, 15, 0 0, 0
l8 0, 0, 0, 1, 1, 30, 8, 0 0
l9 0, 0, 0, 1, 0, 9, 1, 0, 0
。 これはどのように説明できますか?これはfloat/int変換なのでしょうか?
は、ドキュメント hereを見てみましょなどの直接の答え/リンク
精度はどのくらい正確に計算されましたか? 'sklearn.metrics.accuracy_score(y_test、model.predict(X_test))'のようなもの? – sietschie
'model.predict()'の結果を手作業でラベルと比較する場合、計算された精度や混同行列が間違っているかどうかを知る必要があります。 (または両方がオフの場合) – sietschie
@sietschie後半に申し訳ありません!私は "model.score(X_test、y_test)"を使用しました。はい、私はこれらの1つが間違っていると私は計算精度が1つだと思う。 – Moveton