ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

分類学習器アプリを使用したサポート ベクター マシンの学習

この例では、2 つのクラスが含まれている ionosphere データセットを使用して分類学習器アプリでサポート ベクター マシン (SVM) 分類器を構築する方法を示します。分類学習器では、2 つ以上のクラスがあるサポート ベクター マシン (SVM) を使用できます。SVM では、あるクラスのすべてのデータ点を別のクラスのデータ点から分離する最適な超平面を探索することによりデータを分類します。ionosphere のデータでは、良好なレーダー反射を表す g、不良なレーダー反射を表す b という 2 つのレベルがあるカテゴリカル変数が応答変数です。

  1. MATLAB®ionosphere データセットを読み込み、このデータセットに含まれている変数の一部を分類に使用するように定義します。

    load ionosphere
    ionosphere = array2table(X);
    ionosphere.Group = Y;
  2. [アプリ] タブの [機械学習] グループで [分類学習器] をクリックします。

  3. [分類学習器] タブの [ファイル] セクションで、[新規セッション] をクリックします。

    [新規セッション] ダイアログ ボックスで、データ型に基づいて応答および予測子変数が選択されていることを確認します。応答変数 Group には、2 つのレベルがあります。他の変数はすべて予測子です。

  4. [セッションの開始] をクリックします。

    データの散布図が作成されます。

  5. 散布図を使用して、どの変数が応答の予測に有用であるかを可視化します。X 軸と Y 軸の制御で他の変数を選択します。クラスが最も明確に分離されるのはどの変数であるかを調べます。

  6. SVM モデルの選択肢を作成するため、[分類学習器] タブの [モデル タイプ] セクションで下矢印をクリックして分類器のリストを展開してから [サポート ベクター マシン][すべての SVM] をクリックします。

    次に、[学習] をクリックします。

    ヒント

    Parallel Computing Toolbox™ がインストールされている場合、はじめて [学習] をクリックすると、ワーカーの並列プールが開くときにダイアログが表示されます。プールが開いた後で、同時に複数の分類器に学習をさせ、作業を続行することができます。

    ギャラリー内の各 SVM 分類オプションの学習が 1 つずつ行われ、最高のスコアが強調表示されます。最適なモデルの [精度] スコアの概要がボックスに表示されます。

  7. 結果を表示するため、[履歴] の一覧でモデルを選択します。学習済みモデルの散布図を確認し、別の予測子のプロットを試します。誤分類された点は X で示されます。

  8. 各クラスにおける予測子の精度を調べるには、[分類学習器] タブの [プロット] セクションで [混同行列] をクリックします。真のクラスと予測したクラスの結果が含まれている行列が表示されます。

  9. 比較する他のモデルを一覧から選択します。

  10. [履歴] の一覧で最適なモデルを選択します (最高のスコアがボックスで強調表示されます)。モデルを改善するため、異なる特徴量をモデルに含めます。予測力が低い特徴量を削除するとモデルを改善できるかどうか調べます。

    [分類学習器] タブの [特徴量] セクションで [特徴選択] をクリックします。[特徴選択] ダイアログ ボックスでモデルから削除する予測子を指定して [学習] をクリックすると、新しいオプションを使用して新しいモデルの学習が行われます。[履歴] の一覧で各分類器の結果を比較します。

  11. 追加または除外する特徴量を調べるには、平行座標プロットを使用します。[分類学習器] タブの [プロット] セクションで、[平行座標プロット] を選択します。

  12. [履歴] の一覧で最適なモデルを選択します。モデルをさらに改善するため、SVM の設定を変更します。[分類学習器] タブの [モデル タイプ] セクションで [詳細設定] をクリックします。設定の変更を試してから、[学習] をクリックして新しいモデルに学習をさせます。設定についての詳細は、サポート ベクター マシンを参照してください。

  13. 学習済みのモデルをワークスペースにエクスポートするため、[分類学習器] タブを選択して [モデルのエクスポート] をクリックします。新しいデータを予測するための分類モデルのエクスポートを参照してください。

  14. この分類器に学習をさせるためのコードを確認するため、[関数の生成] をクリックします。SVM モデルについては、予測用の C コードの生成を参照してください。

このワークフローを使用すると、分類学習器で学習させることができる他のタイプの分類器を評価および比較できます。

選択したデータセットに対して使用できる事前設定済みの分類器モデルをすべて試すには、次のようにします。

  1. [モデル タイプ] セクションの右端にある矢印をクリックして分類器のリストを展開します。

  2. [すべて] をクリックしてから [学習] をクリックします。

他の分類器のタイプについては、分類学習器アプリにおける分類モデルの学習を参照してください。

関連するトピック