フィードバックがなく、時間に敏感な質問であるため、これをmath.stackexchange.comから相互投稿しています。
私の質問は、サポート ベクター マシンにおける超平面による線形分離可能性に関するものです。
ウィキペディアによると:
...正式には、サポートベクターマシンは、分類、回帰、またはその他のタスクに使用できる、高次元または無限次元の空間に超平面または超平面のセットを構築します。直感的には、任意のクラスの最も近いトレーニング データ ポイント (いわゆる関数マージン) までの最大距離を持つ超平面によって適切な分離が達成されます。これは、一般に、マージンが大きいほど、classifier.classifier の一般化エラーが低くなるためです。
超平面によるクラスの線形分離は、直感的に理解できます。そして、2 次元幾何学の線形分離可能性を理解していると思います。ただし、一般的な SVM ライブラリ (libSVM) を使用して SVM を実装していますが、数値をいじると、SVM がクラス間で曲線を作成する方法や、カテゴリ 1 の中心点を円形の曲線で囲む方法を理解できません。 n 次元空間 V の超平面が次元 n − 1 の「平坦な」部分集合である場合、または 2 次元空間の場合はカテゴリ 2 の点で囲まれています (1D 線)。
これが私が意味することです:
それは超平面ではありません。それは円形です。これはどのように作動しますか?それとも、2 次元の 2D 入力フィーチャよりも多くの次元が SVM 内にありますか?
このサンプル アプリケーションは、ここからダウンロードできます。
編集:
包括的な回答をありがとう。そのため、SVM はカーネル関数を使用することで、奇妙なデータをうまく分離できます。データを SVM に送信する前に線形化することは役に立ちますか? たとえば、私の入力フィーチャ (数値) の 1 つには、カテゴリ 1 にきちんと収まる転換点 (たとえば 0) がありますが、0 より上と下ではカテゴリ 2 に収まります。分類が SVM のこの機能の絶対値を送信するのに役立ちますか?