預測罕見事件我正在與一位客戶合作進行 Pro 試用。他們正在研究約 300 萬行的資料集,試圖建立一個預測模型來預測發生率為 0.1% 的故障(二元反應、連續因素)。失敗是致命的,並且會很樂意接受一個可以捕捉所述失敗的模型,即使是以失去通行證為代價。
我幾乎已經把我知道的一切都扔掉了。為了縮短運行時間,他們將原始檔案子集縮小到原始資料的 1-10%,並嘗試了各種加權技術、Torch、XG Boost 和模型篩選。提升樹 (Boosted Tree) 取得了最大的成功,但在每個實例中,在子集上開發的模型都過於擬合,以至於無法在大小相似但唯一不同的資料集或更大的資料集上使用。
我是否應該增加權重(目前通過/失敗的權重為 1/100),並建立一個失敗率過高的資料子集?對於這種高度不平衡的模型,是否有可以最佳化設定的超參數?我正在尋找建議/指導,以了解如何與此人相處。謝謝。
回覆:預測罕見事件您是否嘗試過不平衡分類插件?不久前我嘗試了一下它,發現它可以提高我們的一個樣本資料集(我現在記不清是哪一個了)的效能。我不是 SMOTE 或 Tomek Links 的專家,但我發現這篇 Kaggle 文章的介紹有助於理解基礎知識。
如果您還沒有嘗試的話,這應該是一個很好的下一步。
回覆:預測罕見事件這些罕見事件讓我想到了可靠性,但我不確定這是否是可行的方法。因此,隨著時間的推移,您會不斷輸入各種因素,但時不時就會出現失敗。一些控制圖工具,特別是多元控製圖怎麼樣?試著將某些因素的組合與故障的發生連結起來。
回覆:預測罕見事件您是否看過模型篩選中的決策閾值?它用於二元分類。您可以看到不同的閾值(.1 與 .5)如何影響模型。
回覆:預測罕見事件您是否考慮過在 GenReg 平台中使用零膨脹二項式?另外,您是否考慮過導致更高 I 型/假陽性的決策閾值?
回覆:預測罕見事件另外,雖然我還沒看過,但如果我猜得沒錯的話, @Jason_Wiggins最近關於缺陷計數模型的掌握網絡研討會可能會有所幫助: 為缺陷計數模型做出最佳選擇
回覆:預測罕見事件gen reg 中的零膨脹聽起來是個好方法,但不確定運行時間。無論您最終採用哪種模型,請務必使用決策閾值來確定適當的截止值(否則預測公式假設任一事件的比例為 50:50)。我將向您發送我製作的一份投影片,以幫助您根據決策閾值報告決定截止值。回覆:預測罕見事件所以...如果他們在一台不錯的機器上運行基於專業的模型(並且不會因為因素數量而發瘋),我不知道 3M 記錄是否會太糟糕。我認為您這裡有幾個問題需要考慮。
首先,他們是否做過一些因素篩選?增強樹或隨機森林應該會告訴您其中是否存在不重要的因素。減少這些因素將會減少適配時間。
第二(或可能並列第一——我不確定),他們正在進行分層交叉驗證嗎?讓他們使用驗證列設定工具來建立與分層欄位中的回應的 TVT 交叉驗證。這將使模型保持誠實。我喜歡在訓練組中擁有大量數據,而在後兩者中減少數據量。
建議的模型類型和分佈都是好主意 - 我傾向於使用基於樹的方法(隨機森林,增強樹或XGBoost),並使用隨機種子來實現可重複性。它們是為這些更大的數據集而設計的。我認為傑瑞對罕見事件可靠性角度有一個有趣的想法。您也可以考慮這個:https: //youtu.be/Ac6E7da9igU
關於權重 — — 我認為你做得還不夠。使用您的 0.01% 失敗率,我會為透過資料賦予 0.0001 的權重,為失敗資料賦予 0.9999 的權重。不久前,我們有一個咒語,即將出現這種情況,並且(部落 - 我承認)指導是將回應列放入分佈中並反轉比例(我在第二句中描述了這一點)。看起來效果還不錯。
最後,也許只是作為情況的重塑,當評估旨在讓他們相信他們能夠找到問題的解決方案時,評估會更加順利。他們並不太關心如何真正幫助他們解決問題。我想我們都知道,這樣的事情需要他們經過一段時間的學習,並且很可能會在評估的剩餘時間內進展順利。如果您致力於讓他們相信他們能夠透過 Pro 找到解決方案,那麼即使您沒有獲得針對他們問題的“模型”,他們也會購買。
回覆:預測罕見事件謝謝大家的貢獻(到目前為止)!我針對這個問題提出了下面列出的許多想法,但不是全部,也不是按照建議的方式。我感謝你們大家的建議。