| 揚聲器 |
文字稿 |
| 米婭·史蒂芬斯 |
可能不會需要45分鐘。 |
| |
好了,沒事了。 |
| |
該死,為什麼突然彈出這封簡訊? |
| Jason Wiggins,JMP |
你看到了嗎,我正要問,我已經開始錄音了,但有人會進來把開頭剪到結尾。 |
| 米婭·史蒂芬斯 |
我覺得你在錄音。 |
| Jason Wiggins,JMP |
是的。 |
| |
如果你想讓我停下來,我可以停下來。 |
| |
一。 |
| Jason Wiggins,JMP |
好了,錄製開始了。 |
| 米婭·史蒂芬斯 |
您好,我叫 MIA Stevens,我是 JMP 產品經理。 |
| |
今天我們要討論的是 JMPed 16 或 JMP pro 16 型號中首次出現的螢幕篩選功能。 |
| |
實際上,讓我重新開始。 |
| Jason Wiggins,JMP |
錄製重新開始。 |
| 米婭·史蒂芬斯 |
大家好,我是米婭‧史蒂芬斯。 |
| |
我是JMP的產品經理。今天我們要討論的是模型篩選。模型篩選是JMP Pro 16中的一個新平台,它允許您同時擬合多個模型,從而簡化您的預測建模工作流程。 |
| |
所以我們首先要談談預測建模的含義,這與更經典的建模或解釋性建模形成對比。 |
| |
我們將了解您可以在 JMP Pro 中建立的模型類型,並簡要討論預測建模工作流程。然後,我們將了解如何使用模型篩選來簡化此工作流程。 |
| |
我們將看到幾個不同的指標來比較競爭模型,我們將使用 JMP Pro 中的兩個不同範例,我將使用 JMP Pro 16.1。 |
| |
首先,預測建模是什麼意思? |
| |
我們大多數人在大學、學院或公司都上過統計學課程,通常情況下,當我們學習統計建模時,我們學的是解釋性建模。 |
| |
我的意思是,你對研究某個 Y 變數(即感興趣的反應)作為幾個 X 變數(即輸入變數)的函數感興趣。 |
| |
因此,我們可能對識別重要變數感興趣,也許我們處於解決問題的某種情境中,想要嘗試識別最重要的 X,最重要的潛在原因。 |
| |
因此,透過解釋性建模,我們或許能夠識別出,例如,X1、X3 和 X6 是 Y 變化的潛在原因,這可能會引導您使用設計的實驗進一步研究這些變數。 |
| |
我們可能也有興趣量化這種關係的性質,例如,我們可能有興趣了解我們的反應 Y 平均而言如何隨 X 的變化而變化。 |
| |
X 變化一個單位,Y 就會變化五個單位。 |
| |
所以,當我們談論建模、統計建模或迴歸分析時,我們通常想到的就是這個。 |
| |
與之相反,預測建模則是準確預測或分類未來結果。 |
| |
因此,在經典建模中,我們通常是在描述平均值,即總體平均值。而在預測建模中,我們想知道接下來會發生什麼事。例如,這位客戶會流失嗎?這位客戶會繼續留任嗎? |
| |
接受信用卡付款嗎?機器會不會故障?所以我們想預測接下來會發生什麼事。因此,我們關注的是預測的準確性。 |
| |
在預測建模中,我們傾向於擬合和比較許多不同的可能模型,這涉及一些非常先進的技術。 |
| |
而且,其中一些技術可能不太容易解釋。因此,提到神經網絡,人們通常會認為神經網路有點像黑箱。 |
| |
對於這些更複雜的模型,過度擬合可能是一個問題,我所說的過度擬合是指我們傾向於…我們可能會擬合一個比我們需要的複雜得多的模型。 |
| |
因此,在預測建模中,我們通常會使用模型驗證。我們使用模型驗證來防止過度擬合和欠擬合。模型驗證涉及資料分割,一種典型的分割方法是保留一部分資料… |
| |
嗯,我們用一部分資料來訓練模型,一部分資料留待備用,可能還有第三組資料也留待備用。我們使用這些資料的方式是,用訓練資料來擬合我們的模型。 |
| |
然後我們觀察模型在驗證集上的表現。第三步可能會用到,這通常被稱為測試集。 |
| |
因為驗證…JMP 中的驗證資料通常用於控制模型的大小。我們稍後會看到它的實際應用。 |
| |
我不會詳細介紹驗證,但如果您對此主題比較陌生,那麼本簡報的最後有一些投影片是我從我們的免費線上課程 STIPS 借來的,它們說明了為什麼驗證很重要。 |
| |
JMP Pro 中有很多不同類型的預測模型可供您選擇。 |
| |
其中一些模型可以透過擬合模型獲得,因此,如果您有一個連續響應變量,則可以擬合線性迴歸模型。如果您有一個分類反應變量,則可以擬合 |
| |
邏輯迴歸模型。這可以是有序迴歸模型、多項式迴歸模型或二項式迴歸模型。您可以擬合廣義線性模型或懲罰迴歸模型,例如彈性網路、Lasso 迴歸和嶺迴歸。 |
| |
預測建模選單中有很多選項,例如神經網路。您可以在 JMP Pro 中擬合神經網路。 |
| |
兩層結構,多個節點,多個激活函數,以及提升演算法。通常在 JMP 中是如此。 |
| |
您可以使用相同平台來擬合分類響應或連續響應的模型。您可以擬合各種不同類型的決策樹,如果您有分類樹,您也可以進行擬合。 |
| |
如果反應變數是分類變量,則可以使用迴歸樹;如果反應變數是連續變量,則可以使用迴歸樹。您也可以擬合一些更複雜的樹狀模型,例如自助森林和提升樹。此外,還有其他一些方法可供選擇。 |
| |
多元方法下還有幾種預測建模平台,例如判別分析和偏最小平方法。當然,這並非全部方法,需要指出的是,擬合模型中也提供了偏最小平方法。 |
| |
問題是,為什麼我們需要這麼多模型?在經典的解釋性建模中,我們通常學習的是迴歸分析,但顯然還有很多許多其他類型的模型可以擬合。 |
| |
原因在於,沒有哪一種模型永遠是最佳的。最佳模型通常取決於資料的結構。 |
| |
你有多少個變量,你是純粹的連續變數 X,還是連續變數和分類變數的混合,以及是否存在非線性行為。 |
| |
因此,沒有哪一種模型總是能做到預測最準確。所以我們通常會嘗試幾種不同的模型,然後選擇效果最好的模型或模型組合。 |
| |
我們是在更廣泛的分析工作流程的背景下考慮預測建模的。 |
| |
當然,我們試圖解決的是某種問題,可能是商業問題,也可能是工程問題。 |
| |
但是,我們需要收集數據,這些數據可能來自各種不同的來源,我們需要將這些數據配對,我們需要整理這些數據。 |
| |
我們探索並視覺化數據,以了解我們現有的數據以及需要補充的數據。預測建模部分屬於「分析資料和建構模型」的範疇,在我看來,這才是真正樂趣的開始。 |
| |
因此,JMP 中的經典工作流程是擬合模型並進行驗證。 |
| |
然後,您可以將預測公式儲存到資料表中,或將其發佈到公式庫,我們稍後會看到這一點。 |
| |
然後你再擬合另一個模型。例如,你可以先擬合一個迴歸模型,然後再擬合一個基於樹的模型。然後你重複這個過程,擬合幾種不同類型的模型。 |
| |
然後使用模型比較來評估每個模型在驗證資料上的表現。記住,我們使用訓練資料來擬合模型,但要比較模型以確定哪個模型的預測最準確,我們需要使用驗證資料或測試資料。 |
| |
我們會選擇最佳模型或最佳模型組合。 |
| |
然後我們部署模型,所以這是典型的工作流程。 |
| |
現在,有了模型篩選功能,這個過程就簡化了。因此,您可以將所有所需的模型整合到模型篩選平台中。 |
| |
使用驗證資料比較這些模型,選擇最佳模型。您可以探索這些模型,甚至可以從模型篩選中擬合新模型,然後輕鬆部署最佳模型。 |
| |
為了更深入地了解這一點,我們將舉幾個例子,第一個例子你可能比較熟悉。 |
| |
糖尿病數據位於樣本數據目錄中。因此,研究人員希望能夠預測疾病進展速度。 |
| |
在基線測量一年後,共有10個基線變數和442名患者,我們將檢視兩種類型的反應。響應Y是一個定量指標,用於衡量疾病在一年內的進展程度。 |
| |
此外,還有二元反應,高/低,高表示疾病進展速度快,低表示疾病進展速度慢。 |
| |
這裡的建模目標是預測最有可能出現高疾病進展速度的患者,以便採取糾正措施。 |
| |
所以,最終,我們希望能夠建立一個模型,根據患者的人口統計變數和我們目前掌握的基線信息,對未來的患者進行分類。因此,我們希望能夠… |
| |
準確預測他們的疾病進展速度是否快,以便我們採取相應措施。好的,這就是目前的情況。 |
| |
在深入探討 JMP 之前,我想先談談我們如何決定哪個模型的預測效果最好。 |
| |
我之前提到過,我們會使用驗證集或測試集,我們可以使用幾種不同類型的度量方法。 |
| |
對於連續響應,我們使用均方根誤差 (RMSE),或使用相關指標均方根誤差 (RASE),即預測誤差,這裡越低越好。 |
| |
我們也可以使用平均絕對誤差 (AAE)、平均絕對偏差 (MAD) 或平均絕對誤差 (MAE),同樣,數值越低越好。所以,這些都是……這些都是……這些都是平均誤差的測量方法。 |
| |
然後是 R 平方,R 平方實際上是衡量適合度的指標,越高越好。 |
| |
因此,我們傾向於使用這些方法來測量連續性反應;還有許多其他類型的測量方法可供選擇。 |
| |
對於分類反應,我們通常感興趣的是誤分類率或錯誤率或準確率,而對於分類反應,我們可能感興趣的是精確度。 |
| |
還有其他一些衡量指標,例如 ROC 曲線下的面積、靈敏度和特異性,這些指標有好幾種不同的名稱。 |
| |
此外,我們在模型篩選中還添加了一些其他指標,這些指標在處理不平衡資料時非常有效。例如 F1 分數和 MCC(馬修斯相關係數),MCC 是一個可以值…的值。 |
| |
或者說,這是一個取值範圍在 -1 到 +1 之間的指標,它擅長衡量分類資料在所有四個可能類別(真陽性、真陰性、假陽性和假陰性)中的分類。 |
| |
那麼,我們……我們繼續進入JMP的世界吧。 |
| |
我這就打開數據。 |
| |
所以這些是……我再放大一點,這些都是糖尿病數據。 |
| |
如果你想嘗試使用這些數據,可以訪問一個使用這些數據的博客,也可以在「幫助」下的「範例數據」中找到它們。 |
| |
我們還有一個反應變數 Y,我把它放大一點,它是我們衡量疾病進展的連續變數。然後我們還有一個二元變數 Y,結果是低或高,我們會逐一分析它們。 |
| |
首先,讓我們來看看,如果您擁有 JMP 15 或不使用模型篩選,並且擁有 JMP Pro,您將如何擬合預測模型來預測 Y(連續響應)? |
| |
請注意,我們有幾個人口統計變數。 |
| |
所以有 10 個這樣的列,還有一個驗證列,驗證列將我們的資料分割成訓練資料和驗證資料。 |
| |
所以我們將使用訓練資料來擬合我們的模型,然後我們將看看當我們把模型應用到驗證資料上時,它的表現如何。 |
| |
要建立此列,可以使用分析、預測建模、建立驗證列等實用程序,這樣就可以建立驗證列。 |
| |
您可能希望將某些變數用作分層列,例如,您希望確保資料在各層之間保持平衡。 |
| |
驗證集。我直接點選「確定」就行了。 |
| |
這樣我們就可以將一定比例的資料分配到不同的資料集中。 |
| |
這裡還有一些其他的實用選項,例如隨機種子,如果你在教學,並且希望所有學生都有相同的分區,那麼隨機種子就非常好用。 |
| |
所以這是以前使用的。 |
| |
分析方面,我們先來看Y列,也就是連續反應變數。如果我要擬合預測模型,一個自然的起點是擬合迴歸模型,而JMP中的迴歸模型就在「擬合模型」下。 |
| |
我的回答是“是”,我將進行擬合……首先擬合一個僅包含主效應的模型。 |
| |
我將在此驗證欄位中輸入驗證方法,預設情況下,驗證方法為標準最小二乘法。但如果您熟悉 JMP 和 JMP Pro,您就會知道在驗證方法設定下有很多不同的選項。 |
| |
當我點擊運行時, |
| |
JMP 16 的一個變化是,如果我們查看實際值與預測值對比圖或任何其他圖表,會發現有一些點…這裡有一些點是 V 形的,而不是圓點。 |
| |
這表明這些點實際上被分配給了驗證集,所以我們基本上看到的是: |
| |
你知道,這個模型在周圍隨機雜訊中的預測效果如何,你可以看到存在一定程度的離散性。 |
| |
記住,我們正在用訓練資料擬合模型,並觀察它在驗證資料上的表現。下面是一些統計數據。所以,每次進行驗證時,你都會看到訓練集和驗證集的額外統計資料。 |
| |
我們可以看到這裡有兩個指標。一個是R平方,另一個是RASE。 |
| |
通常情況下,當你用一組資料來擬合模型,然後將該模型應用於新資料時,它在新資料上的表現不會像在舊資料上那麼好。因此我們可以看到,驗證集的R平方值較低,而RASE(即誤差)則略高一些。 |
| |
曾經…我們在預測分析器下方看到的一件事 |
| |
注意到這一點了嗎…注意到總膽固醇和低密度脂蛋白膽固醇在兩端呈現扇形分佈。 |
| |
當我拖著 |
| |
注意膽固醇值的置信區間有多寬。當我把它拉到低端時, |
| |
它變得非常寬,當我把它拖到高端時,情況也是如此。事實上,每個預測變數的這些區間都會變得非常寬。 |
| |
這有點超出本次演講的範圍,但這是因為我們在這個地區實際上沒有數據,或者說數據量很少。如果我……你看一下,我這就… |
| |
例如,選取總膽固醇和低密度脂蛋白膽固醇這兩個變數…對於膽固醇和低密度脂蛋白膽固醇而言。 |
| |
請注意,這兩者之間存在很強的相關性。我沒有該地區的任何數據。 |
| |
所以,如果你擬合了一個預測模型或任何類型的模型,其中你看到這些波段呈現扇形擴散, |
| |
這表示你在該區域的預測精度不會很高。 JMP Pro 中有一項新功能, |
| |
這叫做外推控制,它可以在出現問題時發出警告。所以如果我把這個拖長, |
| |
請注意,它提示我,這裡可能存在推斷誤差;你的預測可能有問題。如果我啟用推斷控制, |
| |
請注意,它截斷了這些區間,其意義是:你不能對這些區間之外的情況進行預測,這樣做是無效的。 |
| |
這有點超出本文的範圍,但如果你在預測分析器中看到某些頻段呈現扇形擴散, |
| |
這通常是因為你的預測因子彼此相關,而且…也可能是你在這些地區沒有足夠的數據來進行預測。所以,了解這一點很重要。 |
| |
好了,回到正題,我擬合了這個模型,簡化了模型,我覺得這就是我的最終模型。 |
| |
我將透過保存預測公式把這個模型保存到我的資料表中。你會看到資料表中新增了一列。我剛剛建立了一個線性模型,所以它把這個公式也保存到了資料表中。 |
| |
另一種方法是發布這個公式,我打算把它發佈到公式庫。 |
| |
所以,最終,我打算擬合幾種不同類型的模型(然後我就結束這個主題了),我想比較這些模型,以便我可以利用這些比較結果… |
| |
我可以透過儲存公式並轉到分析、預測建模、模型比較來實現這一點,我馬上就去做,或者將其保存到公式庫中。 |
| |
將其保存到公式庫的好處在於,我現在有了評分代碼。例如,如果這是我想要應用於新資料的最終模型, |
| |
我可以複製這個腳本,並將其應用於新資料的評分。 |
| |
(我不會在這裡這樣做),或者如果我想在生產環境中使用此模型,我可以用各種不同的語言編寫程式碼。 |
| |
以上是一個簡單的線性模型。如果我想擬合不同類型的模型呢? |
| |
我可以在這裡擬合一個更複雜的模型。 |
| |
所以我可以擬合一個廣義迴歸模型,也許我想擬合一個 Lasso 模型,所以我點擊這裡。 |
| |
這裡有一些廣義迴歸模型的比較,但假設我想保存這個模型,對吧。 |
| |
我並沒有太注意細節,但我會把這個保存下來。我會把預測公式保存下來。也許我還會把它發表出來。 |
| |
去這裡,發布這則訊息。 |
| |
我可能會重複這個過程,我可能會擬合一個包含交互作用的模型。然後,我可能會繼續擬合神經網路模型或分區模型、基於樹的模型,如果我有一個分類反應變量,那麼這些模型都會適用。 |
| |
分類樹。如果我有一個連續響應變量,則可以擬合回歸樹。我還可以擬合自助法森林,它是由許多較小的樹或提升樹組成的集合,因此我可以擬合幾種不同類型的模型。 |
| |
一旦我得到模型並將公式保存或發佈到公式庫,我就想找出哪個模型的預測最準確。 |
| |
所以我打算採用模型比較的方法。 |
| |
我只需將驗證作為我的判斷變數即可。 |
| |
因為我想看看模型在驗證資料上的表現如何。所以,我只用這兩個模型,然後查看驗證資料(訓練資料我會暫時放在一邊), |
| |
我可以看到,最小平方法模型的平均誤差較低,但最小平方法模型的 RASE 值略高。 |
| |
我的廣義 Lasso 的 R 平方值略有改善。 |
| |
所以,如果我們使用的是 JMP 15 Pro 或 JMP Pro 15,或不使用模型篩選功能,這就是我們進行預測建模的典型方法。模型篩選功能可以讓我們在一步之內完成所有操作。接下來,我將進入預測建模並啟動模型篩選。 |
| |
如果您看一下這裡角落的模型篩選功能,它使我們能夠根據我們擁有的資料類型,啟動每個合適的平台。 |
| |
然後自動運行這些模型。這樣我們就不用手動從選單中選擇模型了,可以直接在這裡自動執行。所以我要擬合同類型的模型,這裡是一個只包含主效果的模型。 |
| |
這些是我的 X。我將使用相同的驗證方式。 |
| |
這裡有很多選項,我們稍後會討論,現在我點擊確定。請注意,我這裡有決策樹、引導森林、提升樹和K近鄰演算法。 |
| |
預設情況下樸素貝葉斯演算法是關閉的,我可以擬合一個神經網路模型。 |
| |
底部還有其他的。請注意,我安裝了 XGBoost 插件,所以 XGBoost 可用。 |
| |
這是一個可以存取開源庫的免費插件,如果你已經在 JMP Pro 中安裝了它,那麼你就可以從模型篩選平台啟動它。所以我先不啟用它,直接點擊「確定」。 |
| |
所以它正在運行模型,就是這樣。它已經運行完畢,但實際上跳過了一個步驟,對吧?它已經自動為我運行了所有這些模型。 |
| |
而且,還有一些模擬可以用來確定調參的最佳初始值,所以我們擬合了所有這些模型。 |
| |
它會報告每個模型的驗證訓練和驗證統計資料。現在要找出哪個模型最好, |
| |
選擇主導項。而「選擇主導項」的基本作用是在所有可用指標上建立一個邊界,所以我在這裡點擊了「選擇主導項」。 |
| |
研究發現,對於這些數據,最佳模型是神經增強模型,該模型的詳細資訊請參見上方的「神經」部分。 |
| |
所以所有細節其實就是啟動平台並在此平台內收集所有資訊。 |
| |
這裡包含了神經網路的所有細節,它基本上運行了一個帶有三個節點的TanH演算法,並進行了提升。我可以查看訓練統計數據和驗證統計數據,如果我想查看實際擬合的模型, |
| |
這是底層模型。 |
| |
好的,所以……所以這是我表現最好的模型。如果我想更仔細地查看這些模型,可以從這裡進行探索,這裡有一些選項,我可以查看實際值與預測值的對比圖。 |
| |
我可以比較這些模型,正如預期的那樣,我們的訓練資料中的變異性比驗證資料和實際值與預測值之間的變異性要小一些。如果我想深入研究這一點,我可以關閉某些模型。 |
| |
我還可以啟動性能分析器,如果你的版本是 16.1,性能分析器是一個可選功能。如果你的版本是 16.0,它實際上是一個隱藏選項,而且我這裡使用的是專業版。性能分析器很好用,因為它允許我們探索適合我們的模型,所以我選擇了三個模型。 |
| |
讓我把它放大一點。 |
| |
或許沒那麼大。 |
| |
所以我創建了一個自助森林,這是一個基於樹的模型,它基本上是將許多不同樹的結果加在一起。 |
| |
我有一個增強模型,神經網路模型在捕捉非線性行為方面做得非常出色。我還有一個 Lasso 模型,它本質上就是一個線性模型。 |
| |
你可以很清楚地看到這些模型。注意看廣義 Lasso 模型,對吧,我得到了 BMI 之間的這種線性關係 |
| |
以及響應。使用神經增強演算法,我可以看到存在一些曲線。我在這裡使用 LTG 演算法也能看到這一點,而使用 Bootstrap Forest 演算法,我可以看到一個小小的階躍函數,對吧?所以它其實是在近似我們這裡存在的非線性關係。 |
| |
因此,如果我們最終確定神經增強模型是最佳選擇, |
| |
然後我們基本上可以啟動模型,從這裡啟動它,我們可以將公式保存到資料表中,或者我們可以將它們發佈到公式庫進行部署。 |
| |
這樣既節省了很多時間,又讓我們能夠探索我們的模型。 |
| |
如果反應變數是分類變數呢?記住,我們有 Y 是二元變數。我們可以用同樣的方法使用 Y 是二元變量,所以我接下來會進入分析,再次調用模型篩選,然後點擊召回,並將 Y 替換為 Y 是二元變量。 |
| |
我們可以在其中運行相同類型的模型。如果某種模型不適用,它就不會運作。例如,最小二乘迴歸在這裡就不適用,所以它實際上不會運行。 |
| |
這裡有幾個選項。如果我選擇設定隨機種子,例如 1、2、3、4、5,這將保證結果的可重複性;如果我從詳細資料中啟動模型, |
| |
它會……它會得到同樣的結果。我這裡還有一些其他的驗證方法。 |
| |
因此,結果表明,在許多情況下,使用傳統的訓練集、驗證集和測試集劃分方法會更有效。 |
| |
實際上,這種方法並非最佳選擇,尤其是在小資料集的情況下。因此,我可能會改用 K 折交叉驗證,我們還有巢狀交叉驗證。 |
| |
而且你可以重複進行 K 折交叉驗證。所以這是一個不錯的選擇,尤其適合資料集較小的情況。 |
| |
底部還有一些其他選項。因此,您可能需要添加雙向交互或二次函數。 |
| |
如果您知道存在缺失值,則可能需要使用資訊性缺失值處理方法。其他方法適用於其他廣義迴歸方法。如果您參與了 JMP 17 的早期採用者計劃,您會注意到選單對話框的這一部分。 |
| |
或者說,模型啟動對話框的佈局稍微調整了一下,讓它更流暢一些。好的,那我這裡就用預設設置,隨機產生一個種子,然後點選確定。 |
| |
所以它正在運行所有這些模型。再說一遍,速度非常非常快。現在,因為我的反應變數是二元的,所以我還有一些額外的指標。我有兩個 |
| |
R平方值,我這裡有誤分類率,也就是曲線下的面積,RASE。記住,這和均方根誤差有關。我再次點擊“選擇主導演算法”,它又找到了神經網路增強演算法,但這並非總是如此。 |
| |
如果我選擇我認為最好的模型,也就是紅色三角形下的選項,您可以查看這些模型的 ROC 曲線,而且,同樣,我可以勾選相應的複選框來啟用或停用模型。讓我來看一下。 |
| |
選擇此項。我最喜歡的新功能之一,也是模型比較平台和 JMP 17 中新增的,是任何進行分類建模的建模平台都可以使用的功能,它叫做決策閾值。 |
| |
我認為這是我們在 JMP 16 中添加的最強大的功能之一。 |
| |
因此,在選定這三個模型後,它給了我這三個模型的分類摘要。 |
| |
我打算把畫面放大一點,這樣我們就能看得更清楚一些。 |
| |
所以我們這樣理解:如果我們只看神經網路增強演算法,它就向我們展示了神經網路增強演算法的兩個類別…我們預測的是高機率。所以這些就是高機率的擬合結果。 |
| |
臨界值為 0.5,因此低於 0.5 的值被歸類為低;高於 0.5 的值被歸類為高。 |
| |
所以,如果我們看這裡的紅色方塊,這些點都被判定為低值,但實際上值很高,我們可以看到這裡的數字。總共有29個這樣的點,所以這些都是假陰性結果。 |
| |
下方紅色方框內的物品被歸類為高風險。 |
| |
但實際上這些都是低值。所以這些人都是假陽性。 |
| |
底部有一些指標和圖表,可以幫助我們理解這些數據,並幫助我們做出一些決策。這裡也有一些指標,我們可以看到相同的數值,例如29個漏診病例和17個誤診病例。 |
| |
我們還可以看到真正的優點和缺點。我最喜歡這一點是,它讓我能夠探索不同的閾值。 |
| |
因此,根據您的建模目標,例如,我們可能希望具有較高的靈敏度,但我們真的不希望特異性較低。 |
| |
靈敏度,這個關鍵點非常有用,靈敏度是真陽性率;特異性是真陰性率。 |
| |
你知道,我們能不能找到一個在這兩方面都表現得更好的臨界值?透過點擊並拖曳,你可以更改分類的臨界值。 |
| |
並嘗試找到一個效果更好的臨界值。例如,在 0.26 時(我在這裡用一個整數),臨界值為 0.25 時,靈敏度更高,同時仍能保持較高的特異性。 |
| |
我保存的那些圖表對於解讀這些數據也很有用,它們能讓我們全面了解錯誤分類的情況。 |
| |
按閾值、按比例,然後進行真實分類。所以,如果我想找到一個平衡特異性和靈敏度的點,我可以參考這張圖。 |
| |
所以,這些主線代表靈敏度,虛線代表特異性,那麼是否存在這樣一個點,在靈敏度仍然高於某個特定值的情況下… |
| |
靈敏度是多少?我的特異性又是多少?我們可以……我們可以平衡這兩者。所以如果我看這裡,我可以看到這是這兩條線的交點。 |
| |
如果數據不平衡,這一點就顯得格外重要。我們來看另一個例子。好了,我就講到這裡。 |
| |
不保存這個。我先關閉公式庫。順便說一下,公式庫是獨立的,它基本上不依賴我們之前使用的資料集。因此,將模型應用到新數據上非常方便。我這就關閉它。 |
| |
所以,接下來這個資料集,也就是名為「信用卡行銷」的資料集,其場景是這樣的: |
| |
我們正在進行一些關於信用卡優惠接受度的市場調查。調查結果顯示,優惠已被接受。但要注意的是,只有 5.5% 的優惠被接受。 |
| |
利用歷史數據,已被接受。這實際上是一個精心設計的實驗,我們正在研究不同的獎勵機制和不同的郵件類型。 |
| |
雖然財務資訊有所不同,但本實驗的設計重點在於獎勵和郵件類型。我們將專注於此特定的建模目標:識別最有可能接受信用卡優惠的客戶。 |
| |
透過這樣做,我們將嘗試 |
| |
將此模型應用於新客戶,並根據這些新客戶的分類,決定是否向他們發送優惠訊息。 |
| |
因此,如果客戶不太可能接受優惠,我們就不會向他們發送。如果他們極有可能接受,我們就會向他們發送。 |
| |
這就是目前的情況,回到JMP,我們已經接受了報價。接下來,我一邊講解數據,一邊執行一個已儲存的腳本。 |
| |
我們有10000個觀測值,所以這需要一些時間,現在它正在運行這些模型,我這裡使用的是預設值。我已經接受了報價。 |
| |
獎勵類型包括航空哩程、現金回饋或積分。郵件類型為信件或明信片。其餘資訊則與銀行業務相關…包括歷史銀行資訊和一些人口統計資料。 |
| |
您可以看到它正在運行支援向量機。支援向量機運行速度可能有點慢,尤其是在處理大數據集時;事實上,預設情況下,如果觀測值超過 10,000 個,它將不會運行。 |
| |
我們可以看到平均餘額。資料被分配到訓練集和驗證集,JMP 會自動將 0 識別為訓練集,1 識別為驗證集。好的,現在所有模型都運行完畢了。 |
| |
如果我選擇顯性,我們可以看到它選擇了逐步擬合和決策樹。 |
| |
但我想要指出這個誤分類率。 |
| |
所以,這……這確實是我們大海撈針時常遇到的情況,對吧。如果我看一下這些數據,然後我運行一下這些數據的分佈… |
| |
我把畫面放大一點,這樣我們就能看得更清楚些,好嗎?我現在正在查看驗證數據,請注意… |
| |
6.25、6.2、6.3% |
| |
在這些數值中,有一部分人對報價做出了回應,而這正是我們在這裡得到的錯誤分類率。 |
| |
為了更好地理解這一點,我將啟用決策閾值。 |
| |
再把它放大一點。 |
| |
請注意,預測的「是」全部為零,這是因為預測的機率都相對較低。 |
| |
請記住,在經典的混淆矩陣中,截止值為 0.5,如果您有不平衡的數據,在這種情況下,您不太可能將許多觀測值分類為「是」。 |
| |
當我點擊並拖曳時, |
| |
當我看到第一組要點時,就開始看到一些預測結果為「是」。實際上,我會開啟這些指標。 |
| |
當資料嚴重不平衡時,預測機率可能會非常低。 |
| |
因此,有了這個滑塊,你就可以探索不同的截止點。 |
| |
這會影響您的靈敏度和特異性。因此,在這種情況下,我們可能會說,如果我們發送… |
| |
我在這裡就填 0.05……如果我們向預測機率最高的 5% 的用戶發送信用卡優惠訊息,那麼我們的敏感度就是 0.05。 |
| |
這兩個模型之間的差異約為 0.72 和 0.75,而且我們的特異性仍然很高。因此,有了這個……這個閾值,這個滑塊,就可以讓你從模型中獲得更多有用的信息。 |
| |
所以,如果…在0.5的閾值下,我可以看到確實有一些真陽性結果。但我也看到了很多假陽性結果,對吧,所以這裡有一個權衡。 |
| |
現在,在這種情況下,您可能還會面臨一些經濟上的影響。沒錯。所以,考慮一下這個問題是很必要的… |
| |
利潤矩陣。還有一個按鈕。 |
| |
我點擊了這個。 |
| |
利潤矩陣是特定列的列屬性,我們可以設定 |
| |
該值,即機率閾值的截止值,可以作為列屬性,或者我們也可以代入數值。例如,在經典場景中,它可能需要花費 5 美元。 |
| |
如果我們選擇向某人發送報價。 |
| |
如果他們接受提議, |
| |
也許它值 100 美元。所以如果我們選擇向某人發出報價,而他們沒有回應,我們就損失 5 美元。 |
| |
如果我們選擇向某人發送報價,而他們也做出了回應,那麼我們平均可能賺到 100 美元。但也可能錯失了一些機會,也許我們會說我們損失了 100 美元。 |
| |
如果他們沒有回應。通常這樣做的代價是,這裡會留空,我們只需為「是」填入對應的值。如果我應用此設定並單擊“確定”, |
| |
然後添加一些新值,對吧。所以,現在我們有了一個利潤矩陣,如果我查看我們的指標,就可以看到預測利潤。 |
| |
平均而言,對於該資料集中的每個客戶,如果我們應用決策樹模型,他們將獲得 1.50 美元;如果我們應用逐步模型,他們將獲得略少一些的收益。 |
| |
因此,在資料不平衡且存在一些潛在成本的情況下,使用利潤矩陣是合理的。如果我們沒有潛在成本, |
| |
那麼,這個滑桿可以幫助我們選擇一個合適的閾值,從而達到我們的建模目標。它可以是最大化靈敏度、最大化特異性,或其他目標。 |
| |
這就是模型篩選的基本過程。 |
| |
讓我關閉這個窗口,回到幻燈片部分。 |
| |
我們已經簡單討論了一下預測建模以及預測建模的含義。 |
| |
我們已經看到,使用驗證可以輕鬆地擬合和比較許多模型,而模型篩選的全部意義在於簡化這個工作流程。 |
| |
你仍然可以外出試穿單一模型,但模型篩選功能允許你在一個平台上同時試穿所有模型,然後比較這些模型。 |
| |
更多信息,請參閱各種不同類型的指標以及用於分類數據的眾多指標。這裡有一個非常棒的 |
| |
維基百科上有一個關於靈敏度、特異性以及所有各種指標的頁面,我發現它非常有用,因為我當時正在深入研究並了解如何解釋所提供的指標。 |
| |
關於預測建模以及JMP Pro中的模型篩選,有許多資源可供參考。 |
| |
在我們的…在我們的使用者社群裡。我再次提到STIPS。 STIPS是我們開設的用於解決工業問題的統計思維課程。 |
| |
第七個模組是預測建模入門,所以如果您是預測建模的新手,我建議您先看看這個模組。此外,我們社群也發布了一個使用糖尿病數據的部落格。最後,您也知道,任何新功能都會… |
| |
將會經歷迭代改進的過程。模型篩選功能是在 JMP Pro 16 中引入的。我們已經在著手開發 JMP Pro 17,並且已經有許多改進正在進行中。 |
| |
所以,如果您有興趣了解即將推出的內容,這為您提供了一個提供回饋的機會。 |
| |
如果您有興趣加入早期用戶計劃,請聯絡我們,我們會幫您辦理相關手續。感謝您的時間,希望您在接下來的會議中一切順利。 |