メインコンテンツに移動

Excelでの1クラス・サポート・ベクター・マシンのトレーニング

このチュートリアルは、XLSTAT統計解析ソフトウェアを用いて**1クラス・サポート・ベクター・マシン(1クラスSVM)**をセットアップして訓練することを支援します。

SVM分類器を訓練するデータセット

このチュートリアルで使用するデータセットは、データサイエンス・プラットフォーム Kaggleから抽出されたものでこちらのアドレスでアクセスできます。

“Banknotes” データセットは、いくつの情報が添えられた200の紙幣の一覧からなります: このデータセットは7個の変数を含みます; 1つは質的変数で、紙幣の信ぴょう性を示し、その他は量的変数で紙幣の形を示します。

偽造: 紙幣が本物の場合、我々は“0”を与え、逆に偽造の場合、“1”を与えます。このデータセットの100個の紙幣が 偽造で、その他の100個が本物です。 Length, Left, Right, Bottom, Top, Diagonal が量的変数です。

10個の紙幣の2番目のデータセットがあり、それらの紙幣が本物か偽物かを予測するために使用されます。

このチュートリアルの目的

このチュートリアルの目的は、“Banknotes” データセットでの1クラスSVMによる異常検出の方法を学び、アルゴリスムがどれぐらいよく10フォルト・クロスバリデーションを実行するかを見ていきます。

1クラスSVM分類器とクロスバリデーションのセットアップ

1クラスSVMをセットアップするには、下記のように機械学習/1クラス・サポートベクター・マシン をクリックします: ボタンをクリックすると、ダイアログ・ボックスが現れます。Excel シートでデータを選択してください。

まず下図のようにチェックボックスをチェックして量的説明変数を選択します。 量的変数フィールドで、すべての量的説明変数を選択します:“Length”, “Left”, “Right”, “Bottom”, “Top” および “Diagonal”。

複数の列を選択するには、Ctrl キーを使用するとよいです。

各紙幣に参照があるので、それを使用するために、クラスをチェクして、バイナリ変数“Counterfeit”を選択する必要があります。そして、外れ値クラスとして “1” を入力します。これが偽造紙幣のクラスです。

表の最上部に各変数の名前があるので、変数ラベルチェックボックスをチェックしなければなりません。

オプション・タブでは、分類器パラメータがセットアップされます。SMO パラメータについては、Nu フィールドが正則化パラメータに対応します。最適化の際に外れ値をパーセンテージに変換します。Nu の値が1に近いほど、外れ値のパーセンテージが大きくなります。

許容度パラメータは、サポートベクターと比較するときに、最適化アルゴリスムがどれだけ正確かを示します。計算をスピードアップしたい場合は、許容度パラメータを増やすことができます。ここでは許容度をデフォルト値のままにしておきます。

下図のように前処理フィールドで標準化を選択し、線形カーネルを使用します。

最後に、分類器の品質を測定するために、10フォルト・クロスバリデーションを実行できます。

予測タブで6個の量的変数を選択して、10個の新しいオブザベーションを予測できます。再び、表の最上部に各変数の名前があるので、変数ラベルチェックボックスをチェックしなければなりません。 最後に出力タブで、下図のように得たい出力項目を選択します: OKをクリックすると計算が始まります。そして、結果が表示されます。

SVM分類器の結果の解釈とクロスバリデーション

最初の表は、クロスバリデーション(交差検証)の実行結果を示します。各フォルトで、分類誤差率fスコアバランス正確度 (BAC) が表示されます。そして、前に選択したパラメータを用いた平均分類誤差率が 29.1% です。 続く表は、10個の指標の表でトレーニング・データセットに関するパフォーマンス・メトリクスを表示します: 1クラス分類の場合、Fスコアが分類器を評価するのに好まれます。ここで、Fスコアが78% で、モデルが異常検出に良好であることを意味します。

続くグラフは分類器の評価を助けます。ROCは、さまざまな可能なしきい値での(1 – 特異度, 感度) のグラフィカルな表現です。我々は、曲線が左上隅に近いことを望みます: これで、我々の分類器による結果を見ることができます。

最初の表は、最適化されたSVM分類器の要約を表示します。下図で前に選んだように外れ値クラスが1であることがわかります。分類器のトレーニングに使用された200の観測値があり、そのうち113のサポートベクターが識別され、ゼロに近いバイアスが計算されました。 2番目の表は、113個のサポートベクターの完全なリストとそれに関するアルファを示します。前の表のバイアス値とともに、この情報は、最適化された分類器を完全に記述するのに十分です。 最後に、予測データセットの10個のオブザベーションについて、手法によって予測されたクラスがわかります:最初の列は各オブザベーション について予測されたクラスを示し、2番目の列は決定関数定です。 外れ値クラスとして « 1 » を選んだので、 “1” と予測されたオブザベーションは、この手法によれば外れ値です。

この記事は役に立ちましたか?

  • ウイ
  • いいえ