
K 最近傍 (KNN) プラットフォームは、特定の観測値のローカル近傍における観測値の応答を使用して、その観測値の応答値を予測します。これは、カテゴリカルな応答を分類したり、連続的な応答を予測したりするために使用できます。
KNN は、ノンパラメトリックな教師あり機械学習アルゴリズムです。これは、特定のパラメーター (観測値) の類似性が他のパラメーター (予測) の類似性を反映しているという基礎的な仮定に基づいて機能します。この仮定を満たすために、KNN は、特定の観測値と他のすべての観測値の間の k 個の最小距離をランク付けします。
この事実により、K 最近傍法は不規則な予測境界を持つ観測値を分類できます。ただし、アルゴリズムは無関係な予測子の影響を受けやすいため、予測子の選択が結果に影響を与える可能性があります。
距離を計算する
JMP pro 17 は、ユークリッド距離を使用して、予測値と他の予測値の間の距離を計算します。 2D 空間では、(x1, y1) と (x2, y2) の間のユークリッド距離dは次のようになります。
d = sqrt((x2-x1)^2 + (y2-y1)^2)
ユークリッド法では、すべての値が実数であることが必要です。
予測を立てる
KNN は、応答の種類に応じて予測を行います。
- 継続的な応答
JMP は、k 個の最近傍の応答の平均として値を予測します。各連続予測変数は、その標準偏差によってスケールされます。連続予測子の欠損値は、その予測子の平均によって置き換えられます。
- カテゴリカルな応答
JMP では、予測値は k 個の最近傍の最も頻度の高い応答レベルです。上位の応答が複数ある場合、予測された応答は、これらのレベルの 1 つをランダムに選択することによって割り当てられます。
k 値または n_neighbors
k の値が異なると、異なる予測が得られる可能性があります。 JMP では、k の最大数を指定するだけで済みます。各 k (1 ≤ k ≤ k_max) について、JMP はトレーニング セットの観測値のみを使用してモデルを構築します。これらの各モデルは、検証セットの観測値を分類するために使用されます。検証セットの結果は、誤分類率が最も低いモデル (別名、最良の k) を選択するために使用されます。
JMP モデリングにおける KNN の検証
JMP Pro での KNN モデリングの検証として数値列を追加できます。 JMP は、モデル化の前に検証を使用してデータをセットに分割し、過剰適合を減らし、適切な予測モデルを選択します。 KNN の場合、この機能はオプションです。ただし、過剰適合はトレーニングと予測の間に不一致を引き起こす可能性があります。つまり、アルゴリズムがトレーニング データに過度に固有になり、予測の精度が低下します。
KNN の場合、次の方法でデータを 2 つまたは 3 つのセットに分割できます。
|
方法
|
セット
|
関数
|
|
トレーニングして調整する
|
トレーニング
|
モデルパラメータの推定
|
|
検証
|
モデル フィッティング アルゴリズムでモデル パラメーターを調整し、最終的には優れた予測能力を持つモデルを選択します。
|
|
トレーニング、調整、評価
|
トレーニング
|
モデルパラメータを推定する
|
|
検証
|
モデル フィッティング アルゴリズムでモデル パラメーターを調整し、最終的には優れた予測能力を持つモデルを選択します。
|
|
テスト
|
適合モデルのパフォーマンスを独立して評価する
|
検証について詳しくは、JMP ドキュメント: Make Validation Column Platform (jmp.com) の例をご覧ください。
例
この例では、KNN を使用して、顧客の財務履歴に基づいて顧客を良いリスクと悪いリスクに分類したいと考えています。
- [ヘルプ] > [サンプル データ フォルダー]を選択し、 Equity.jmpを開きます。
- [分析] > [予測モデリング] > [K 最近傍]を選択します。
- [BAD]を選択し、 [Y, Response]をクリックします。は分析する値です。
- LOANとCLNOを選択し、 X、Factorをクリックします。これが予測変数です。
- 「検証」を選択し、 「検証」をクリックします。これは、過適合を回避し、適切な予測モデルを選択するために、モデリングの前にデータをセットに分割するために使用される値です。この例では、Train、Tune、Evaluate メソッドを使用しました。
- 「OK」をクリックします。
予測式を保存するには
- BAD の赤い三角形を右クリックし、 [予測式の公開]を選択します。
- [近傍数 K] の隣は、デフォルト値の 7 のままにします。
- 「OK」をクリックします。
予測方程式はFormula Depotに保存されます。 Formula Depot のモデル比較オプションを使用して、Formula Depot に公開された代替モデルのパフォーマンスを K = 7 最近傍モデルのパフォーマンスと比較できます。フォーミュラ デポの詳細については、ヘルプ/JMP ドキュメント ライブラリ (3763 ページ)を参照してください。
興味がある場合は、ステップ 4 に戻ってください。今回は、 LOANとCLNOの間にあるすべてのパラメーターをX、係数として入力します。何が変わったのか、そしてその理由は何ですか?
Shuran,
Jeremy T. @jeteezによるレビュー
2024 年 1 月、JMP(R) Pro 17.2.0 に基づく
この記事は、JMP Statistical Discovery および SAS Institute の立場や意見を反映したものではありません。