最佳模特兒你好
我的問題是如何找到非常適合我的資料集的最佳參數模型?
我想找一個參數模型來預測我的反應
進階統計建模基礎資料分析與建模回覆:最佳模型你好@maryam_nourmand ,
您的問題涉及廣泛的主題,在回答此問題之前可能有(很多)問題需要解決和回答:
- 數據是如何收集的?觀察性研究、實驗設計…?資料集的代表性和完整性 ?探索性資料分析可能有助於檢測迴歸模型中假設的一些模式和可能的陷阱,例如多重共線性,這可能需要 PLS 等適應模型或 PCA 等預處理步驟。
- 模型的目標 ? 因果解釋、預測和最佳化,或兩者兼而有之(也連結到可用的資料集和收集方法)?
- 驗證策略/特徵選擇 ?例如,如何確保創建的模型具有適當的複雜程度並且仍然具有良好的預測性能?您是否透過「標準」機器學習驗證策略(使用交叉驗證或訓練/驗證/測試分割)或透過基於可能性、資訊標準(AICc、 BIC),p 值...?請注意,模型複雜度也應直接受到資料收集的限制:例如,如果您有 3 個不同層級的因子,則您將無法擬合比二階項更高的項。
- 評估/選擇指標和閾值 ?您如何評價這些模型?選擇過程/標準是什麼:您是選擇具有所選指標的最佳預測結果的模型,還是選擇比基準模型或樸素模型具有更好性能的所有模型,...?您最終如何測試模型?
其中一些問題和答案已在先前的帖子中描述過:
https://community.jmp.com/t5/Discussions/Statistical-Significance/mp/765928/highlight/true#M94573
https://community.jmp.com/t5/Discussions/Analysis-of-split-plot-design-with-full-factorial-vs-RSM/mp/770579/highlight/true#M95183
建立、比較和選擇模型需要與您的目標和閾值/標準相關聯的評估指標,以選擇一個或多個模型。如果您只是想要最佳的預測模型,您可以:
- 使用標準 ML 驗證策略(例如交叉驗證)或能夠控制模型複雜性的策略建立模型,
- 使用與預測準確性相關的一個或多個指標,例如 RMSE、MAPE...
- 根據指標和領域專業知識比較模型:哪些模型最適合/與您的主題相關,哪些模型具有最佳性能,
- 選擇使用選定的模型來估計各個預測,以了解它們的差異/差異,和/或使用組合模型來平均預測誤差。
- 在“真實”情況/生產環境中測試模型。
您可能也對這些資源感興趣:
哪個型號什麼時候?
指定和擬合模型
建構和理解預測模型
為相關和高維度資料建立預測模型
使用 JMP Pro 建立更好的預測模型 - 模型篩選(它可能有助於篩選參數和機器學習模型選項並同時比較它們)
預測建模
STIPS 模組 7:預測建模和文字挖掘
什麼型號什麼時候? (以及哪種建模類型?)- (2023-US-PO-1509)
使用模型選擇標準在 JMP 中選擇模型 - (2023-US-30MP-1456)
資料探勘與預測建模
我希望第一個討論的開始能對您有幫助,
回覆:最佳模型
如果我想更準確地解釋我的目標:
我有一個與癌症患者數據相關的初始數據集。我想找到一個最適合我的資料集的參數統計模型。使用此模型,我的目標是模擬數據,以便在模型的截距中應用偏移。最終,我想看看我現有的機器學習模型能夠多快地偵測到控製圖中的這種轉變(即獲取 ARL)。為此,我需要最適合我的數據的模型,以便我可以從中模擬數據。
回覆:最佳模型嗨@maryam_nourmand ,
好的,那麼您將更有可能採用資料探勘方法,使用固定的觀察資料資料集,嘗試擬合可接受的預測模型。使用驗證列(對特徵進行分層)將有助於根據生產資料驗證(以避免過度擬合)和測試模型。在建模策略方面,您很可能會使用逐步方法來選擇特徵,以及使用驗證列方法的廣義迴歸方法。
例如,我使用 Kaggle 的 Cancer_Data 資料集根據個體特徵預測是否存在良性或惡性癌症: https://www.kaggle.com/datasets/erdemtaha/cancer-data ?resource=download
在第一次探索性資料分析主要關注特徵之間的分佈和相關性之後,我創建了一個驗證列公式(特徵分層),訓練/驗證/測試集的比率為70/20/10,然後使用廣義迴歸模型驗證列方法,以及所有主效應特徵和 2 個特徵交互項作為模型中可能的項輸入。我選擇自適應彈性網絡,因為特徵是強相關的,但也可能有其他選項,例如 PLS 或 PCA 預處理。
然後,您可以儲存模型的公式,並使用預測刻畫器建立模擬,以評估特徵效果對反應的影響,並可能估計雜訊增加對預測反應的影響。
我希望這幾個選項可以幫助您解決您的主題,
回覆:最佳模型你的回答讓我不禁要問:「參數統計模型」是什麼意思?我通常認為機器學習模型是非參數的,所以你在這裡排除這樣的模型嗎?目前還不清楚,因為你說你有一個預先存在的機器學習模型。您想比較參數模型和非參數模型嗎?如果您使用模型篩選平台,您可以建立多個這兩種類型的預測模型。使用您發現的“最佳擬合”,您可以儲存預測公式以進行模擬。我不完全確定“模型截距的變化”是什麼意思,但我認為您可以在公式中添加附加擾動來產生模擬資料。
回覆:最佳模型感謝您的答覆。
但我認為對於模擬,最好轉到“保存列->保存模擬公式”部分,因為它包含一個模擬公式,我也可以使用它來編寫程式碼,對嗎?
感謝您介紹數據集。
但是您是否有與包含多個階段的治療過程相關的資料集?我的意思是,第一次治療後,疾病復發,進行第二次治療,記錄藥物劑量等治療資訊。如果您有這樣的數據集,如果您能分享它,我將不勝感激。
回覆:最佳模型是的,我所說的「參數模型」並不是指機器學習模型。
我尋找最佳參數模型的目標是模擬和產生數量比初始資料集更大的資料。我想為我的機器學習模型使用更多數據,但我希望模擬數據與我的初始數據集非常相似。
回覆:最佳模型我不明白為什麼你需要參數模型來做到這一點。您可以執行任何預測模型並使用探查器模擬任意數量的附加資料點,為自變數指定不同的值並向預測添加隨機雜訊。也許我不明白你打算做什麼,但我認為參數模型部分沒有必要。
回覆:最佳模型透過「儲存列->儲存模擬公式」儲存模擬公式與使用Profiler工具進行模擬有什麼不同?
我使用參數模型進行模擬的原因是我想要有關係和模擬公式,以便我可以編寫相應的程式碼並循環重複此過程100次(以基於以下方式獲得我的控製圖的ARL)我在第一階段建構的模型)。
如果我用軟體手動完成此操作,將非常耗時且困難。
回覆:最佳模型嗨@maryam_nourmand ,
這取決於您的目標是什麼。
儲存模擬公式可以幫助您透過使用診斷模擬公式切換診斷反應來評估模型的係數分佈: 模擬

模擬公式只是您可以從模型擬合報告中保存的預測公式的精簡版本:您只需在同一公式內保存一列包含機率計算和分類的列,而不是為每個類別提供一個機率列和一個最終分類列。
如果您對模型在輸入變化方面的穩健性更感興趣,那麼使用 Prediction Profiler 中的模擬器與輸入變化(並可能在輸出中添加雜訊)並執行模擬實驗可能會對您有所幫助。然後,您可以在輸入中產生變化,並可能改變特徵的分佈以查看它如何影響您的模型,以及增加雜訊以查看您的預測模型的穩健性。
附註與@dlehman1提出的觀點相關:
我尋找最佳參數模型的目標是模擬和產生數量比初始資料集更大的資料。我想為我的機器學習模型使用更多數據,但我希望模擬數據與我的初始數據集非常相似。
為了模擬並產生與收集的真實數據相似的數據,您必須「模仿」數據生成過程。如果您的 ML 模型發現了強非線性、相關性或其他模式,且參數模型未考慮這些模式,則您應該使用 ML 模型進行模擬和生成數據,否則您將在模擬/中引入強烈的偏差。的數據。我不明白需要有一個單獨的模型來針對此用例進行資料生成和預測。
請注意,無論模型的預測能力如何,它都只是您嘗試理解和預測的現象的簡化,因此該模型生成的數據可能仍然或多或少有偏差(並且可能產生比真實結果更少的噪聲結果)數據)。但它仍然有助於評估其對數據變化的穩健性,就像您打算做的那樣。
不抱歉,我沒有包含多階段治療的資料集。我剛剛找到了這個並用它來提供一個適合您的用例的說明範例,僅此而已。
希望這個回答對你有幫助
回覆:最佳模型@維克多G
我想我將學習一些新的 JMP 功能。請告訴我您在哪裡獲得模擬窗口,其中包含要切換的列。我到處都找不到它。我確實看到在哪裡運行模擬實驗,但我找不到任何提示保存模擬公式的地方。謝謝。
回覆:最佳模型嗨@dlehman1 ,
可以透過右鍵單擊模型平台的任何面板/報告來存取模擬功能: 啟動模擬功能
以下是 SVM 模型摘要的範例:

然後系統會提示您選擇要切換的列和切換的列。在 Simulate 的上下文中,您可以將其用於線性迴歸模型的參數估計,將響應與模擬響應切換以評估參數估計分佈,或在模型摘要上使用它以評估模型性能的一致性:模擬窗口
關於模擬公式,可以在廣義迴歸平台中的「儲存列」下找到並儲存為選項之一:

我使用此“模擬”選項來評估使用驗證列公式的機器學習模型的穩健性。使用此列作為模型對話方塊視窗中的驗證,然後我可以模擬並切換這些列值,以表示具有相同分層或分組方法的略有不同的訓練/驗證/測試集。它可以幫助評估演算法的穩健性(例如交叉驗證也將啟用: https://community.jmp.com/t5/Discussions/How-can-I-automate-and-summarize-many-repeat-validations-into / mp/632192/highlight/true#M83061 ),並可能透過微調超參數來測試模型的效能改進(如果有)( https://community.jmp.com/t5/Discussions/Boosted-Tree-調整表設計/ mp/609591/highlight/true#M81062 )。
希望這個回答可以幫助你
回覆:最佳模型再一次問好
例如看看這個模擬公式:
(-0.741104921699375) + 0.0237113448295257 * :權重 + 匹配( :性別,
0,(:年齡 - 33.8085106382979)* 0.0091364700024452,
1、(:年齡 - 33.8085106382979)* 0,
。
) + (:體重 - 63.3936170212766) * Match(:family, 0, -0.015643799304455, 1, 0, . ) + (:腫瘤大小 - 2.49893617021277) *
Match( :family, 0, 0.441690642908435, 1, 0, . ) + (:腫瘤大小 - 2.49893617021277) * Match( :hyper, 0, -0.3462796, 1972, 1972, 0.
+Match( :hyper, 0, Match( :解剖, 0, 0.354356313550484, 1, 0, . ), 1, Match( :解剖, 0, 0, 1, 0, . ), . ) + (0.1546886
+ 0) * 正切( Pi() * (隨機均勻() - 0.5) )
我的專案需要這樣的公式,因為我應該寫一個Python程式碼並產生100次來計算ARL
我是否成功表達了我的觀點?