我需要使用神經網路建模來預測變數並避免過度擬合,我正在利用 K 折交叉驗證方法。在模型篩選平台上,神經網路使用三個 TanH 函數的 boosting 進行擬合。是否可以使用與平台預設設定不同的數量和配置來自訂神經網路?我需要單獨獲得每個折疊的 R 方值,並且我還想調整神經網路設置,例如更改函數數量和應用魯棒擬合。
@尼馬克西姆 -
以下是關於如何繼續處理神經網路模型的一些想法。
模型篩選
當您執行模型篩選時,NN 平台將執行一組基準參數:3 個 TanH 節點和 20 個 Boost。據我所知,您無法在模型篩選中調整這些基準參數。
建構單獨的神經網路模型
當然,您可以透過啟動“分析”>“預測建模”>“神經網路”來建立單獨的模型。在此介面中,您可以指定許多附加參數來找到最適合您的系統的神經網路模型。
當您在 NN 平台中建立 NN 模型時,可以套用 KFold 列。為此,首先透過前往分析 > 預測建模 > 建立驗證列來建立 KFold 列。在“選定方法”功能表中,選擇“製作 K 折疊列”,按一下“確定”,然後指定折疊次數並按一下“執行”。資料表中將出現一個新列,標題為「n Fold Column」。啟動 NN 平台並將此列新增為您的驗證列:

比較所有折疊中的 R2
將 R2 與所有折疊進行比較有點棘手,但有一種方法。首先,在 NN 平台中建立您的 NN 模型。接下來,使用紅色三角形選單儲存每個模型的公式(設定檔公式即可)。如果您想要儲存多個模型,請按鍵盤上的 Ctrl 鍵並選擇「儲存設定檔公式」以同時對報表中的所有模型執行此操作。在此範例中,我建立了兩個模型並將它們的公式儲存到表中(您會注意到,您不知道此模型報告中使用哪個 Fold 進行驗證):

接下來,前往分析 > 預測建模 > 模型比較並載入 NN 預測公式並使用 KFold 列作為群組角色:

在模型比較報告中,您將獲得一個表格,其中顯示每個模型中每個折疊的擬合測量:

您可能會注意到運行之間的模型有所不同。如果它們差異很大,您可以在模型對話方塊中指定隨機種子。如果您使用相同的隨機種子和相同的驗證列,則每次執行模型時的擬合度量應該是一致的。
建構和比較多個神經網絡
在 JMP 中建立和比較多個神經網路模型非常簡單。您可以在模型對話方塊中輕鬆指定和變更參數。如果您發現想要建立和比較許多具有各種函數、節點和其他擬合參數的不同 NN 模型,您可能想嘗試我建立的 NN Tuning 外掛程式。您可以在這裡找到它:神經網路調整插件