提醒那些希望在 JMP v16 中使用 kNN 進行交叉驗證的人...
Word 附件表明,對於k = 3 :
| | 訓練 R2 | 驗證 R2 |
| 第二次展覽 | 0.92839 | 0.90874 |
| 第三次展覽 | 0.9706 | 0.9086 |
驗證 R2 很接近,但不完全相同。 儘管這很小,但訓練 R2 的差異並不是:0.93 與 0.97。
沒有關於這個問題的文檔,儘管提到 kNN 算法根據使用的是 Saved Predicteds 還是 Save Prediction Formula 產生不同的預測列,這很可能解釋了擬合統計量的差異。 但是,我們不知道哪些競爭的擬合統計量是正確的。
我們需要準確的訓練 R2s 結果來正確衡量模型表現出的過度擬合量。
JMP v16 對 kNN 使用了一種新算法,因此這種差異在 JMP v15 或更早版本中並未得到證實。
我還附上了用於生成 Word 文檔中顯示的結果的 JMP 數據文件。
您是否可能正在比較來自不同模型的 r 平方? 例如,您的表具有與 KNN 模型完全不同的擬合統計數據的最小二乘模型。
我按照您在 JMP 15 和 16 中的數據集的描述運行了 KNN。 版本 15 和 16 的訓練和驗證 r 平方統計量略有不同,但非常相似。 (隨機種子是一樣的),腳本是吹的。 不包括 14 和 15 之間的比較,它們是相同的。
如果 JMP Dev 的某個人沒有發表評論,請發送一條說明至support@jmp.com並參考此討論線程。 雖然我不知道任何細節,但我懷疑 KNN 背後的方法已更新以支持非常寬的表。 JMP16 可能提供了更精確的估計。

K Nearest Neighbors(
Validation( :"Train/Validate"n ),
Y( :MSRP ),
X(
:"Curb Weight (lbs)"n, :"Displacement (cc)"n, :Cylinders, :Horsepower,
:MPG City, :MPG Highway, :"Length (in)"n, :Seating Capacity,
:"Torque (lbs/ft)"n, :"Wheelbase (in)"n, :Car Type, :Make
),
K( 10 ),
Set Random Seed( 123 ),
Response( "MSRP", Plot Actual by Predicted( 1 ) )
)