サポートベクターマシンと線形判別分析の違いは何ですか?
サポートベクターマシンと線形判別分析の違いは何ですか?
回答:
LDA:想定:データは正規分布しています。すべてのグループは同じように分布しています。グループの共分散行列が異なる場合、LDAは二次判別分析になります。LDAは、すべての仮定が実際に満たされている場合に利用可能な最高の弁別器です。ところで、QDAは非線形分類器です。
SVM:Optimally Separating Hyperplane(OSH)を一般化します。OSHは、すべてのグループが完全に分離可能であると想定しており、SVMは「スラック変数」を使用して、グループ間の一定量のオーバーラップを可能にします。SVMはデータに関する仮定をまったく行いません。つまり、非常に柔軟な方法です。一方、柔軟性は、LDAと比較して、SVM分類器からの結果を解釈するのを難しくすることがよくあります。
SVM分類は最適化の問題であり、LDAには分析ソリューションがあります。SVMの最適化問題には、ユーザーがデータポイントの数または変数の数のいずれかで最適化できるデュアルおよびプライマリ定式化があり、どの方法が最も計算上実行可能かによって異なります。SVMはカーネルを使用して、SVM分類器を線形分類器から非線形分類器に変換することもできます。お気に入りの検索エンジンを使用して「SVMカーネルトリック」を検索し、SVMがカーネルを使用してパラメーター空間を変換する方法を確認します。
LDAはデータセット全体を使用して共分散行列を推定するため、外れ値が発生しやすくなります。SVMはデータのサブセットに対して最適化されます。これは、分離マージンにあるデータポイントです。最適化に使用されるデータポイントは、SVMがグループを区別する方法を決定し、分類をサポートするため、サポートベクトルと呼ばれます。
私の知る限り、SVMは3つ以上のクラスを実際に区別しません。外れ値の堅牢な代替手段は、ロジスティック分類を使用することです。LDAは、前提が満たされている限り、いくつかのクラスを適切に処理します。ただし、いくつかの古いベンチマークでは、多くの状況でLDAが通常非常によく機能し、初期分析ではLDA / QDAが頻繁に使用される方法であることがわかりました(警告:根拠のない主張)。
つまり、LDAとSVMの共通点はほとんどありません。幸いなことに、両方とも非常に便利です。
サポートベクターマシンは、最小のエラーでクラスを分離する線形セパレーター(線形結合、超平面)を見つけ、最大マージン(データポイントにヒットする前に境界を広げることができる幅)を持つセパレーターを選択します。
たとえば、クラスを最もよく分離する線形セパレータはどれですか?
最大マージンを持つもの:
線形判別分析は、各クラスの平均ベクトルを見つけ、平均の分離を最大化する投影方向(回転)を見つけます。
また、クラス内の分散を考慮して、平均の分離を最大化しながら分布のオーバーラップ(共分散)を最小化する投影を見つけます。