公開日: 09/19/2023

ここに画像を表示サポートベクトルマシンの例

この例では、[調整計画]オプションを使用して、異なるカーネル関数とパラメータ値を持つ複数のサポートベクトルマシンモデルをあてはめます。糖尿病患者の病気の進行を予測するための最適な分類モデルを見つけたいと考えています。このデータには、ベースラインの医療データと、初診から1年後における症状の進行が収集されています。病気の進行度は、「Low」(低)と「High」(高)の2値で測定されました。

1. [ヘルプ]>[サンプルデータフォルダ]を選択し、「Diabetes.jmp」を開きます。

2. [分析]>[予測モデル]>[サポートベクトルマシン]を選択します。

3. 「Y 2値」を選択し、[Y, 目的変数]をクリックします。

4. 「年齢」から「グルコース」までを選択し、[X, 説明変数]をクリックします。

5. 「検証」列を選択し、[検証]ボタンをクリックします。

6. [OK]をクリックします。

7. 「モデルの設定」パネルで、カーネル関数が[動径基底関数]になっていることを確認します。そして、[調整計画]チェックボックスをオンにします。

8. 「実験回数」の横に「10」と入力します。

9. [実行]をクリックします。

10. 「モデルの設定」の横にあるグレーの三角ボタンをクリックして、「モデルの設定」パネルを開きます。

11. カーネル関数を[線形]に変更し、[調整計画]チェックボックスをオンにします。

12. 「実験回数」の横に「10」と入力します。

13. [実行]をクリックします。

図9.2 「モデルの比較」レポート 

「モデルの比較」レポート

「モデルの比較」レポートを見ると、誤分類率とR2乗に関しては、モデル20が最良であることがわかります。このモデルは、「コスト」パラメータが0.04975の線形カーネル関数を用いたサポートベクトルマシンです。このモデルをさらに分析します。

図9.3 最良モデルのモデルレポート 

最良モデルのモデルレポート

「モデルの要約」レポートを見ると、学習セットと検証セットの誤分類率は非常に小さいことがわかります。これは、モデルがデータに過剰適合(オーバーフィット、過学習)していないことを示唆しています。混同行列では、モデルによって誤分類された割合を知ることができます。混同行列の左上隅を見ると、ほとんどの場合(学習で96%、検証で92.6%)において、モデルが「Low」を正しく分類していることがわかります。しかし、「High」が正しく分類されている率はそれよりも低くなっています(学習で53%、検証で68.4%)。そのため、誤分類の大部分は誤って「Low」と分類された「High」です。

メモ: 「調整計画」は、乱数によって計画点を算出します。そのため、分析を行うごとに結果は異なります。ここで示した結果は実際のものと異なったものになります。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).