公開日: 11/25/2021

Image shown hereサポートベクトルマシンの例

糖尿病患者442人に関するデータがあります。このデータには、初診から1年後における症状の進行も収集されています。病気の進行度は、「Low」(低)と「High」(高)の2値で測定されました。ここでは、ある患者の病気の進行が「High」と「Low」のどちらになるかを予測する分類モデルを作成します。「サポートベクトルマシン」プラットフォームで用意されている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 「モデルの比較」レポート 

Model Comparison Report

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

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

Model Report for Best Fitting Model

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

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