組合模型如果我今年從美洲發現高峰會學到了一件事,那就是平均和/或創建整合模型是多麼普遍,這是我聽說過但從未考慮過的事情(作為一個建模新手)。 所以我決定這麼做。 製作整合模型很容易;我將模型儲存為預測公式,並簡單地將其作為預測變數包含在下一輪模型篩選中(使用 JMP Pro 16 的模型篩選)。 模型平均似乎更簡單,但讓我感到困惑。 如果我找到兩個我喜歡的模型,將它們作為預測公式保存到我的數據表中,然後創建一個將它們組合在一起的新列,似乎機率被組合在一起,但公式不是我所使用的語法可以將其應用於新數據(它僅顯示機率的平均值)。 如果我將兩個模型發佈到 Formula Depot,我可以輕鬆地以這種方式對它們進行平均,這就是我目前的解決方法,但我是否也應該能夠在表本身中對它們進行平均? 我認為問題可能是,因為預測公式有一個公式和一個機率,當我將它們組合起來時,只有機率被平均,而當我實際上想對公式本身進行平均時。 我是否可以以允許我將平均公式複製到新數據表中並使用新數據對其進行測試的方式對兩者進行平均? 如果沒有,Formula Depot 就是為了做到這一點而設計的,所以這沒什麼大不了的。 我只是想有幾個選擇! 也許我只是將機率部分刪除到列的資訊單元格中僅保留公式的位置?
預測建模和機器學習回覆:組合模型是的! 像往常一樣,我相信您對嘗試預測一個自然變量的奇怪性質是正確的,其中您實際上需要兩個方程,從而使事情變得更加棘手。 我希望做的是最終擁有足夠大的樣本量,達到真正的梯度,可以是 1-10、1-5 或 1-100,想法是一樣的:1 = 糟糕,最高的數字 = 很好。 即使在這種情況下,我要么有兩個類別(抗漂白與漂白敏感),要么有時有三個(前兩個+“中間”)。 我可能會嘗試將它們分別重新編碼為 1、50 和 100,分別表示易感、中度和抗藥性,然後看看會得到什麼樣的結果。 我認為獲得和分析的樣本越多,將 Y 設為連續變數就越有意義。 我現在正在使用 20 個樣本,基本上沒有足夠的數據來超出 2-3 個 bin。 但是,當我將分類重新編碼為連續變數時,看看我的模型是否看起來非常不同,這將會很有趣。 這肯定會讓所有的模型構建變得更加無縫。 事實上,本質上它不會像「健康」與「生病」那麼簡單;我確實希望得到一個跨越健康範圍的梯度,就像你在人類中看到的那樣(例如,你在 JMP 糖尿病數據集中看到的)。 不過,關於機率分數,這個練習的有趣之處在於,我從來沒有真正看過這麼多;我直接進入JMP的“猜測”。 但現在看看實際的機率非常有趣,因為這就是我最終想要報告的:珊瑚 A 有 95% 的機會白化。 因此,透過這個模型平均練習,我意外地發現了一些我之前完全錯過的很酷的細微差別! 正如我之前所說,即使我暫時「卡在」分類回應中,Formula Depot 的模型平均功能也能很好地解決這個問題。
您會很高興知道,由於您的 GUI,我最近提交的論文(主要描述了階段 1 = 實驗室實驗)中有超過 20,000 個神經網路模型(21,450 個,但誰在數?!)。 顯然,只有少數通過了所有品質控制,在文本中詳細討論的就更少了,但是了解哪些神經網路參數對我來說最重要的調整是非常有用的。 另外,我想建立最簡單、(可能)最簡約的模型,因此如果一個NN 有兩個隱藏層,每個隱藏層有三個激活節點,而第二個模型有一層帶有NTANH(3),其他條件相同,我會選擇後者,儘管我想這並不重要,因為即使是最簡單的也相當複雜。 今年我在 Discovery 尋求學習的一件事(感謝 Chris Gotwalt)是,NN Profiler 下的變數重要性指標是否可以用來從本質上告訴您哪些分析物在模型中最具影響力。 舊規則是神經網路是一個黑盒子,要挖掘哪些反應變數是最重要的太複雜了,但我很高興看到這並不完全正確。 它們很難解釋嗎? 是的。 您能說一種蛋白質的行為可以透過模型的預測能力以特定的、易於定義的方式擴展嗎? 也許不會。 但如果一位分子生物學家問我:“哪些珊瑚蛋白在你最好的神經網路模型中最重要”,我至少可以從神經網路分析器的可變重要性特徵中列出一些。 這其實就是我選擇在演講中討論 gen-reg 模型的原因;我不確定我是否可以「信任」神經網路的分析器(!),但現在我發現我可以。 但無論如何,這就是為什麼作為一個建模新手,我從這類研討會中受益匪淺。 再次感謝您深思熟慮的回覆以及您的所有幫助。
回覆:組合模型你好@abmayfield ,
喜歡你的演講,但必須點播觀看,無法參加現場觀看和問答。
通常,如果您正在執行典型的迴歸公式(數字形式),您將能夠對預測列進行平均。 您只需取兩者的平均值即可。 但是,由於您正在使用分類值“是”或“否”(甚至可能),它會變得更加複雜,因為它必須將數字 X 輸入轉換為邏輯函數,然後找到機率並將結果與 IfMax( ) 功能。
以 Big Class 檔案為例。 如果你試著用 :height 和 :weight 來預測 :sex,你會得到一個邏輯輸出函數,在我的例子中,我試著預測 sex = M。 但有一些中間函數用於確定 Prob[M] 和 Prob[F]。 線性函數就是這樣,例如 Lin[M] = a + b*:height + c*:weight,其中 a、b 和 c 只是擬合係數。 為了獲得機率,JMP 對 Prob[M] 使用變換 1/(1_exp(-Lin[M])),對 Prob[F] 使用變換 1/(1+exp(Lin[M]),這只是 1-問題[M]. 最可能的結果是 MaxIf(Prob[M]=>M, Prob[F]=>F),Prob[y] 較大的一個是最可能的結果,M 或 F。
就您而言,如果您處理分類結果,我認為您需要對 Lin[Y] 函數進行平均,然後將其轉換為機率。 它是與資料擬合的線性函數,而不是機率函數,因此這就是為什麼在轉換線性函數之前需要進行平均。
如果您可以將結果變更為連續回應,那麼預測公式的簡單平均值就很簡單。 只要建模類型是名目型或有序型,JMP 就會將其視為離散等級並每次執行邏輯建模。
我不得不使用連續比例的一個想法是表示給定區域內的漂白百分比。 假設您評估了 100 cm^2(一塊 10cmx10cm 的斑塊)珊瑚,並確定大約 2cmX3cm(或 6cm^2)發生白化,那麼白化百分比將為 60%。 透過這種方式,您可能會更準確地表示珊瑚樣本的白化程度,並且您現在可以透過回歸與分類進行建模的連續反應。
希望這可以幫助!,
DS
聚苯乙烯 探索峰會很棒。 我喜歡很多演講。 另外,我正在更新 GUI 以根據使用者輸入自動產生調整表。 新版本準備好後我會通知您。 透過產生帶有您希望執行的運行次數的空間填充設計,應該有助於進一步自動化該過程。
回覆:組合模型根據您的描述,聽起來您想要平均預測(離散)而不是機率(連續)。我還沒見過這樣做的。有一種技術,即保形預測,旨在查看模型預測的穩健程度。但您所描述的內容如下所示:假設有2 個類別需要預測,並且您將它們編碼為連續的0 和1。假設您有3 個模型:其中2 個預測特定情況下的0,1 個預測1然後,你的「平均」會產生 1/3 的結果,我猜你會把它視為獲得 1 的機率。有趣的想法,但我不確定這種方法有什麼統計基礎。此外,它似乎僅限於二元分類(儘管這只是一個限制)。我很想看看您還能得到什麼其他回應。