libSVMは、分類子の確実性に基づいてテスト ポイントの p値を計算します (つまり、テスト ポイントが決定境界からどれだけ離れているか、マージンがどのくらい広いか)。
機能の重要性の決定は、SVM のトレーニングとは別の問題と考えるべきだと思います。「機能の選択」には多くのアプローチがありますが(テキストブックを開くだけです)、理解しやすい単純なアプローチの 1 つは、次のような単純な相互検証です。
- データセットをk 個のフォールドに分割します(たとえば、 k = 10 が一般的です) 。
- k 個のフォールド
のそれぞれについて:
- データをトレーニング/テスト セットに分割します (現在のフォールドはテスト セットで、残りはトレーニング セットです)
- n 個の特徴のうちn -1個のみを使用して SVM 分類器をトレーニングします
- 予測性能を測定する
- すべてのk 個のテスト フォールドについて、 n -1 個の特徴分類器のパフォーマンスを平均します。
- 残りのすべての機能について 1 ~ 3 を繰り返します
逆に、 n 個の機能を個別にテストすることもできますが、機能間の重要な 2 次以上の相互作用を見逃す可能性があります。
ただし、一般に、SVM は無関係な機能を無視するのが得意です。
また、主成分分析を使用してデータを視覚化して、データがどのように分布しているかを把握することもできます。