1. SVM原理
SVMは、第二クラス分類モデルです。バイナリデータへのアップグレードの前に添加した後に、効率的に、具体的には、カーネル関数のない3つの状況は(そして、線形モデルがされている取得したように、基本的な考え方は、特徴空間における最大のギャップ分離超平面を見つけることです非線形モデル):
- トレーニングサンプルは、ハードスペーサー、線形分類器の学習、すなわち、線形分離サポートベクターマシンを最大化することにより、線形分離されている場合には、
- 訓練データはほぼ直線的に分離可能である場合には、たるみの変数は柔らかいスペーサー、線形分類器の学習、すなわち、線形サポートベクターマシンを最大化することにより、導入されました。
- 距離と柔らかい、非線形サポートベクターマシンの学習を最大化するために核技術を使用して、非線形データ共有を訓練するとき。
2. SVMはなぜ間隔を最大化するために(知覚マシン間の差)を採用します。
訓練データが線形分離されると、超平面が正しく二つの別々のデータであってもよい分離無限の数があります。パーセプトロンは、誤分類の最小戦略を使用して分離超平面を求めるが、この時間は、ソリューションの無限の数があります。SVMは、分離超平面を最大化するための最適な間隔を見つける線形分離使用して、その後、唯一のソリューションです。一方、この時点で分離超平面は、最も堅牢な分類結果、最強の既知の例の汎化能力を発生させます。
3.あなたはその双対問題にSVMの元の問題を解決したいのはなぜ
- 一つは、多くの場合、我々は制約が検索の範囲を縮小する必要があるもののときの制約が存在するほとんどの時間利点を見つけたときに、二重の問題を解決する方が簡単ですが、問題を充填することは、より複雑になります。対処する問題を容易にするために、我々のアプローチは、新機能のすべての目標と制約を統合、すなわちラグランジュ機能、およびこの機能の最良の利点を発見することです。
- 第二に、それは当然の機能をカーネルができ、その後、非線形分類問題に拡張します。
4.なぜべきSVMのカーネル関数
試料は、特徴空間に直線的に分割することができるように、元の非線形時空間内のサンプルは、サンプルは、より高い次元の特徴空間に元の空間からのマッピングとすることができる場合。そして、このようなマップの導入は、実際にマッピング機能を解かずに必要なソリューションのデュアル問題を解決するが、唯一の彼らのコア機能を知っておく必要があります。定義されたカーネル関数:K(x、y)は<φ(x)は、φ(Y)> =、すなわち、それらの製品は、特徴空間における元のサンプル空間におけるカーネル関数Kにより算出した結果に等しいです。データのアスペクトは、高次元データ空間で線形分離となり、一方、解決の難しさを大幅に低減するように、特定のカーネル関数は、のみ与えることを与えることができ、特定のマッピング機能を解決する必要はありません。
X寸法は幸い数えるならば自身の言葉で、計算中SVMのいずれかのハードやソフトの間隔ごとに、少し低く、内積X Xを移調しているが、我々はX次元マップに低たかったとき高次元の時間が(そのため、データが線形分離可能になります)、このステップは計算では、あなたはX(x)はφの高次元にマッピングされ、その後、φ(X1)を計算計算する必要があると言うことは、計算するのが非常に困難であるとφ(×2)ドット積、このステップは計算多くのオーバーヘッドである、カーネルに計算の二段階の算出ステップとなっている。このときのカーネル関数、すなわち、わずか2 xで、また非常に困難ですカーネル関数を計算し、列子一見を与えます:
カーネル関数の個人的な理解は:カーネル関数は、2つの変数を取る関数で、これらの変数は低次元空間に変数であり、カーネルの機能評価マップの値が高いに2つの低次元ベクトル空間に等しく、内積次元空間の後。
不足しているデータへ5.なぜSVM敏感
ここでは、失われたデータの特徴データの一部が欠落つまり、ベクトルデータが不完全です。SVMの戦略は、欠損値を処理しません。特徴空間における所望のサンプル線形分離SVM、パフォーマンスSVMの特徴空間の質が重要です。データ機能が欠落してトレーニング結果の品質に影響を与えます。
カーネル関数を選択する方法6:
- 前記サンプル数が線形コアを使用して、(テキスト分類の問題は通常の場合である)寸法D mの数を超える場合、
- RBFカーネルを使用して時間の特徴寸法D mの平均数のサンプルを比較した場合、
- 特性寸法dが比較的小さい場合の試料mの特に多数、サポートベクターマシン、一般的に以下の深ニューラルネットワーク
7. SVMターゲット(ハードインターバル):
最初は間隔を最大化することで、第二は、サンプルの正しい分類、目的関数のため、導入を作ることです。そこに二つの目的があります:
距離に一つのターゲット表面は、特に、展開対象が2つのパーセプトロンと同等であるが、より大きいかまたは0ズーミングに等しいが1以上となっていない点から、簡単な処方、超平面パラメータwは、少し説明後者の誘導を容易にします。2つのゴールで、一緒に書き込み、それはSVMの究極の目標次のようになります。
8.ターゲット(ハード間隔)を解きます。
解決するラグランジュ関数は、最適化問題の制約条件である上記の式から分かります。
ラグランジュ式は次のとおりです。
スレーターは、元の問題が双対問題に変換するときKKT条件を満たすように定理、およびプロセスを満たしていた場合:
第一の最小内部を求める と 偏導関数は等しく、許容 利用できます。
将其代入到上式中去可得到
此时需要求解 ,利用SMO(序列最小优化)算法:
SMO算法的基本思路是每次选择两个变量和,选取的两个变量所对应的样本之间间隔要尽可能大,因为这样更新会带给目标函数值更大的变化。SMO算法之所以高效,是因为仅优化两个参数的过程实际上仅有一个约束条件,其中一个可由另一个表示,这样的二次规划问题具有闭式解。
9. 软间隔:
不管直接在原特征空间,还是在映射的高维空间,我们都假设样本是线性可分的。虽然理论上我们总能找到一个高维映射使数据线性可分,但在实际任务中,寻找一个合适的核函数核很困难。此外,由于数据通常有噪声存在,一味追求数据线性可分可能会使模型陷入过拟合,因此,我们放宽对样本的要求,允许少量样本分类错误。这样的想法就意味着对目标函数的改变,之前推导的目标函数里不允许任何错误,并且让间隔最大,现在给之前的目标函数加上一个误差,就相当于允许原先的目标出错,引入松弛变量 ,公式变为:
那么这个松弛变量怎么计算呢,最开始试图用0,1损失去计算,但0,1损失函数并不连续,求最值时求导的时候不好求,所以引入合页损失(hinge loss):
函数图长这样:
理解起来就是,原先制约条件是保证所有样本分类正确, ,现在出现错误的时候,一定是这个式子不被满足了,即 ,衡量一下错了多少呢?因为左边一定小于1,那就跟1比较,因为1是边界,所以用1减去 来衡量错误了多少,所以目标变为(正确分类的话损失为0,错误的话付出代价):
但这个代价需要一个控制的因子,引入C>0,惩罚参数,即:
可以想象,C越大说明把错误放的越大,说明对错误的容忍度就小,反之亦然。当C无穷大时,就变成一点错误都不能容忍,即变成硬间隔。实际应用时我们要合理选取C,C越小越容易欠拟合,C越大越容易过拟合。
所以软间隔的目标函数为:
其中:
10. 软间隔求解:
与硬间隔类似:
上式的拉格朗日函数为:
在满足Slater定理的时候,且过程满足KKT条件的时候,原问题转换成对偶问题:
先求内部最小值,对 , 和 求偏导并令其等于 可得:
将其代入到上式中去可得到,注意 被消掉了:
此时需要求解 ,同样利用SMO(序列最小优化)算法。
11. 关于支持向量的问题:
1.先说硬间隔:
先看KKT条件
支持向量,对偶变量 αi > 0 对应的样本;
- 线性支持向量机中, 支持向量是距离划分超平面最近的样本, 落在最大间隔边界上。
- 支持向量机的参数 (w; b) 仅由支持向量决定, 与其他样本无关。
2. 再说软间隔:
先看kkt条件:
经过SMO后,求得 , 。
对于任意样本,
若,此样本点不是支持向量,该样本对模型没有任何的作用
若,此样本是一个支持向量(同硬间隔)
若满足,进一步地,
- 若, 则,即刚好,样本恰好在最大间隔边界上
- 若,有,此时若则该样本落在最大间隔内部
- 場合サンプルは、最大間隔の内部低下(他の一部を所有していない)、すなわち誤分類
図:
SVM損失関数について12話:
ここではソフトの間隔であると言います。
ソフト区間の基本的な形を見てください:
軽微な変更を加えることによって:
トレーニングデータへのモデルの適合性を測定し、最初の項目は、経験的リスクと呼ばれる方法の標準損失関数+正則への書き込み、2番目は、正則化項として知られている構造的なリスク、と呼ばれています、モデル自体の複雑さを測定する。正則用語仮説空間が小さく、それにより、過学習のリスクを低減する。λは超調整可能なパラメータであり、経験的リスク構造リスクを比較検討します。
どこで:
上記の式は、MCが乗算され、この場合には、の式になるであろう。
13. SVMの長所と短所:
利点:
- SVMは、凸最適化問題であるので、それはグローバルな最適解ではなく局所的な最適化を取得する必要があります。
- だけでなく、直線的な問題も(コアスキルを持つ)非線形問題に適用される線形に適用されます。
- データセットの複雑さは唯一の意味での「次元の呪い」を避ける代わりに、データセットのサポートベクトルの大きさに依存するため、高次元データ空間を持つサンプルはまた、SVMを使用することができます。
- (例えば、よりブラックボックスのようなニューラルネットワークなど)は比較的音の理論的根拠。
短所:
- 二次計画問題を解くことは、大規模なデータセットすることは適用できない、(mはサンプルの数である)SVMをm次の行列を計算することを含みます。(SMOアルゴリズムは、この問題を軽減することができます)
- それだけで、バイナリの分類に適用されます。(SVMプロモーションもSVR回帰に適用され、マルチ分類問題を解決することができるSVMを複数組み合わせて)