インテル® DAAL プログラミング・ガイド

詳細

サイズ pn 特徴ベクトル x1= (x11,…,x1p), ..., xn= (xn1,…,xnp)、クラスラベルのベクトル y = (y1,…,yn)、ここで yi {-1,1} は特徴ベクトル xi が属するクラスで、2 クラス SVM (サポート・ベクトル・マシン) 分類器を作成します。

訓練段階

SVM モデルは、二次最適化問題のソリューションである Boser メソッド [Boser92] を使用して訓練されます。


0 αiC, i = 1, ... , n, yTα = 0

ここで、e はベクトル、C はベクトル α の座標の上限、Q はサイズ n x nQij=yiyjK(xi,xj) の対称行列、K(x,y) はカーネル関数です。

アルゴリズムの各反復で更新される α の作業サブセットは、作業セット選択 (WSS) 3 スキーム [Fan05] に基づきます。スキームは、以下のいずれかまたは両方の手法を使用して最適化できます。

問題のソリューションは、分離超平面と対応する決定関数 D(x)= kykαkK(xk,x) + b を定義します。ここで、非ゼロの αk に対応する xk のみ和に現れます。b はバイアスです。各非ゼロの αk分類係数と呼ばれ、対応する xkサポートベクトルと呼ばれます。

予測段階

SVM 分類器と r 特徴ベクトル x1,…,xr で、決定関数 D(xi), i=1, ... , r の符号付きの値を計算します。値の符号は、特徴ベクトルのクラスを定義します。関数の絶対値は、特徴ベクトルと分離超平面の間の距離の倍数です。

最適化に関する注意事項

インテル® コンパイラーは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。インテル® マイクロアーキテクチャーに非固有の特定の最適化は、インテル製マイクロプロセッサー向けに予約されています。この注意事項の適用対象である特定の命令セットの詳細は、該当する製品のユーザー・リファレンス・ガイドを参照してください。

改訂 #20110804