| 揚聲器 |
抄本 |
| 麥可·克羅蒂 |
您好。感謝您收看 |
| |
我們討論不平衡分類插件,它允許您在 JMP Pro 中比較採樣技術和模型。 |
| |
我是 Michael Crotty,JMP 文件團隊的統計撰稿人之一。今天我的共同演講者是 Colleen McKendry,她也來自統計文件團隊。這是我們與 Marie Gaudard 合作完成的。 |
| |
以下是我們今天演講的簡短大綱。我們將討論我們創建的插件的目的、不平衡分類問題的一些背景知識,以及如何在這種情況下獲得分類模型。 |
| |
我們將研究插件中包含的一些適用於不平衡分類問題的採樣方法。 |
| |
我們將看看插件中可用的選項 |
| |
並討論如何取得插件,然後 Colleen 將展示插件的範例和示範。 |
| |
社區提供的投影片中還有參考資料和包含額外背景資訊的附錄。 |
| |
因此,我們的插件(不平衡分類插件)的目的是讓您應用針對不平衡資料設計的各種採樣技術。 |
| |
您可以比較應用這些技術的結果以及 JMP Pro 中提供的各種預測模型。 |
| |
您可以使用精確召回曲線、ROC 曲線和增益曲線以及其他測量方法來比較這些模型和取樣技術適合度。 |
| |
這使您可以選擇使用曲線進行分類的閾值。 |
| |
您還可以將 Tomek、SMOTE 和 SMOTE plus Tomek 採樣技術直接應用於您的數據,這樣您就可以使用現有的 JMP 平台和 |
| |
如果您不喜歡我們選擇的大部分預設方法選項,請對新採樣的資料進行微調建模選項。 |
| |
需要注意的是,Tomek、SMOTE 和 SMOTE 加 Tomek 採樣技術可用於名義和序數以及連續預測變數。 |
| |
以下是關於不平衡資料問題的一些背景資訊。 |
| |
因此,一般來說,您可能會得到多項式響應,但我們將重點關註二進制的響應變量,關鍵點在於一個響應級別的觀察數量遠遠大於另一個響應級別的觀察數量。 |
| |
我們將這些回應等級分別稱為多數類別等級和少數類別等級。因此,大多數情況下,少數類別等級是你感興趣的預測和檢測等級。這可能類似於檢測詐欺、疾病或信用風險的存在。 |
| |
我們希望根據迴歸變數來預測類別成員資格。 |
| |
為此,我們開發了一個預測模型,該模型將成員資格機率分配給少數類,然後我們選擇一個閾值來優化 |
| |
各種標準。這些標準可能是誤分類率、真陽性率、假陽性率等等。然後,如果預測的少數類別機率超過設定的閾值,我們就將觀察結果歸類到少數類別。 |
| |
那我們要如何獲得分類模型呢? |
| |
JMP 中有很多不同的平台可以預測二元變數、二元結果 |
| |
當存在迴歸變數時,我們需要一種方法來比較這些模型。一些傳統的指標,例如分類準確率,對於不平衡資料並不適用。舉一個極端的例子,你可以考慮2%少數類的情況。 |
| |
我可以給你98%的準確率,只要把所有觀察結果歸類為多數。但這不是一個有用的模型,你也不會想用它。 |
| |
因為你沒有預測......你沒有正確地將任何目標案例預測為少數案例,但總體準確率會達到 98%,這聽起來相當不錯。 |
| |
因此,人們開始探索其他方法來衡量不平衡分類模型中的分類準確率。其中之一就是精確召回率曲線。 |
| |
它們通常用於不平衡數據,並繪製陽性預測值或精確度與真實陽性率召回率的關係。 |
| |
並且由於精確度考慮了大多數實例,因此 PR 曲線比 ROC 曲線對類別不平衡更為敏感。 |
| |
因此,PR 曲線能夠更好地凸顯模型在不平衡資料方面的差異。因此,PR 曲線是我們插件報告中首先顯示的。 |
| |
處理不平衡分類資料的另一種方法是使用有助於對少數類別進行建模的採樣方法。 |
| |
總的來說,這些只是對響應分佈施加更多平衡的不同方法,反過來,這有助於更好地劃分多數類和少數類觀測值之間的界限。因此,在我們的附加模組中,我們有七種不同的採樣技術。 |
| |
我們不會過多談論前四個,我們會專注於後三個,但很快,不加權就意味著它聽起來是這樣的。我們不會做任何…不會做任何改變,就是這樣 |
| |
本質上,如果您不採用任何類型的採樣方法來解釋不平衡,那麼您將做什麼? |
| |
加權將對少數情況進行加權,以使多數類和少數類的權重總和相同。 |
| |
隨機欠採樣將隨機排除大多數情況以達到平衡的情況,而隨機過採樣將隨機複製 |
| |
少數案件再次達到平衡狀態。 |
| |
然後我們將在接下來的幻燈片中詳細討論接下來的三種更高級的方法。 |
| |
因此,第一個先進的方法是 SMOTE,它代表合成少數過採樣技術。 |
| |
這基本上是一種更複雜的過採樣形式,因為我們在數據中添加了更多的少數情況。 |
| |
我們透過產生與現有少數類別觀察相似的新觀察值來實現這一點,但我們並不是像過採樣那樣簡單地複製它們。 |
| |
因此,我們使用 Gower 距離函數並對每個少數類觀測執行 K 個最近鄰,然後產生觀測來填充由這些鄰居定義的空間。 |
| |
在這張圖中,你可以看到我們用紅色標記了少數情況。我們選擇了三個最近的鄰居。 |
| |
我們會隨機選出其中一個。它恰好是下面這個,然後我們產生一個案例,另一個少數案例,它位於這個小陰影框的某個位置。這是二維的。如果你有 |
| |
預測變數有 n 個維度,那麼陰影區域就是一個 n 維空間。 |
| |
但需要指出的關鍵一點是,你可以選擇最近鄰居的數量 |
| |
隨機選擇,你也可以選擇執行此操作的次數 |
| |
該演算法針對少數情況。 |
| |
下一個取樣方法是 Tomek 連結法。這種方法的作用是嘗試更好地定義少數類和多數類之間的界限。為此,它會從多數類中移除那些與少數類觀測值接近的觀測值。 |
| |
再次,我們使用 Gower 距離來查找 Tomek 鏈接,Tomek 鏈接是一對屬於不同類別的最近鄰。因此,一個多數類和一個少數類彼此是最近鄰。 |
| |
為了減少這些實例的重疊,可以移除對中的一個或兩個成員。在我們插件的主選項「評估模型」選項中,我們只移除多數實例。然而,在 Tomek 選項中,您可以使用任何一種移除方式。 |
| |
最後一種採樣方法是 SMOTE 加 Tomek。這種方法結合了前兩種採樣方法。 |
| |
它將它們結合起來的方式是應用這種模式演算法來產生新的少數觀測值,然後一旦你獲得了原始數據,再加上一堆生成的新少數案例, |
| |
tt 應用於 Tomek 演算法,以尋找屬於不同類別的最近鄰對。在此方法中,Tomek 對中的兩個觀測值均被移除。 |
| |
因此,當您安裝不平衡分類插件時,它有四個選項,它們都顯示為插件選單下的子選單項目。 |
| |
第一個是「評估模型」選項,它允許你使用各種取樣技術來擬合各種模型。接下來的三個是獨立的對話框,用來執行我們剛才討論的三種取樣技術。 |
| |
因此,在插件的評估模型選項中,它提供了一個不平衡分類報告,以便於比較模型和取樣技術組合。 |
| |
它顯示 PR 曲線和 ROC 曲線以及增益曲線,對於 PR 和 ROC 曲線,它顯示曲線下的面積,通常,每個曲線下的面積越大,模型擬合度越好。 |
| |
它提供了按類別預測的機率圖,幫助您了解每個模型的擬合情況。 |
| |
它還提供了技術和閾值數據表,該表包含一個允許您重現報告的腳本 |
| |
這是第一次運行插件時產生的。我們想強調的是,如果你運行這個插件,並且想要保存結果而不重寫整個 |
| |
建模和採樣方法演算法,您可以保存此技術和閾值表,這將允許您保存結果並重現報告。 |
| |
現在我們來看看評估模型選項的對話方塊。它允許你從多種模型和取樣技術中進行選擇。 |
| |
你可以輸入你的二元類別變數和所有 X 預測變量,然後 |
| |
為了適應所有模型和 |
| |
在測試集上進行評估時,我們會將資料隨機分成訓練集、驗證集和測試集。您可以提供…您可以設定每個資料集的比例。 |
| |
如果您想重現結果,可以使用隨機種子選項。此外,還有 SMOTE 選項 |
| |
正如我之前提到的,您可以選擇最近鄰居的數量,從中選擇一個作為用於生成新案例的最近鄰居,並且每個少數案例的複製就是對每個少數觀察重複該演算法的次數。 |
| |
同樣,還有另外三個採樣選項 |
| |
插件中的選項分別對應 Tomek、SMOTE 和 SMOTE + Tomek。在 Tomek 取樣選項中,它會在你的資料表中新增兩列,可用作預測的權重…適用於你想要的任何預測模型。 |
| |
第一列僅刪除連結中的大多數最近鄰居,另一列刪除 Tomek 連結的兩個成員,因此您可以選擇該選項。 |
| |
SMOTE 觀察將把綜合觀察加入您的資料表中。 |
| |
它還將提供一個來源列,以便您可以識別哪個 |
| |
新增了觀測值。 SMOTE 加 Tomek 新增了合成觀測值和加權列,該加權列刪除了 Tomek 連結的兩個成員。 |
| |
Tomek 採樣和 SMOTE 加 Tomek 的加權列, |
| |
它只是一個指標列,可以在 JMP 建模平台中用作權重。如果包含,則為 1;如果排除,則為 0。 |
| |
其他三個採樣選項對話框大部分看起來基本上一樣。 |
| |
其中一個選項是“顯示中間表”,而不是“評估模型”選項對話方塊中的選項。此選項適用於 SMOTE 和 SMOTE plus Tomek。 |
| |
基本上,它允許您查看用於建立 SMOTE 觀測的資料表。通常情況下,您不需要查看它,但如果您想更好地理解這些觀測是如何產生的,可以查看這些中間表。 |
| |
並且它們都在文檔中進行了解釋。 |
| |
再次強調,您可以透過社群取得該插件, |
| |
透過此頁面查看 2020 年美洲探索高峰會的演講 |
| |
社區的一部分。正如我剛才提到的,插件中提供了文件。只需點擊“幫助”按鈕即可。 |
| |
現在是時候讓科琳在插件的演示中展示一個範例了。 |
| 科琳·麥肯德里 |
謝謝Michael。我現在要示範這個插件,為了示範,我會用到這個乳房X光檢查的示範資料。 |
| |
因此,乳房 X 光攝影資料集是基於用於研究乳房 X 光攝影影像中微鈣化情況的一組數位化底片乳房 X 光攝影照片。 |
| |
在這些數據中,每個記錄都被分類為 1 或 0。1 表示影像中看到鈣化,0 表示沒有看到鈣化。 |
| |
在這個資料集中,您看到鈣化的影像就是您感興趣的預測影像,因此類別層級一就是您感興趣的類別層級。 |
| |
在完整的資料集中,有 6 個連續預測變數和大約 11,000 個觀測值。 |
| |
但為了減少本示範的運行時間,我們只使用完整資料集的子集。所以它大約佔了一半的觀測值。也就是大約 5500 個觀測值。 |
| |
被歸類為 1 的觀測值,也就是你感興趣的內容,在完整資料集和我們使用的簡報資料集中,約佔總觀測值的 2.31%。因此,少數類觀測值的比例約為 2%。 |
| |
現在我要切換到 JMP |
| |
到 |
| |
所以我有乳房 X 光攝影示範數據。 |
| |
我們將要打開,我已經安裝了插件。所以我的下拉式選單中有不平衡分類插件,我將使用評估模型選項。 |
| |
這裡我們有啟動窗口,我們將指定二元類變量,你的預測變量,我們將選擇所有模型和所有技術,我們將指定 |
| |
隨機種子。 |
| |
然後按一下“確定”。 |
| |
在運行這個插件的時候,我會解釋一下後台實際發生了什麼。插件做的第一件事就是將資料表拆分成訓練資料集和測試資料集。 |
| |
因此,您有兩個單獨的資料表,然後在訓練資料表中,這些觀察結果進一步分為訓練和驗證觀察結果,並且驗證用於模型擬合。 |
| |
一旦你有了這兩個資料集, |
| |
有指示變數...指示列,它們被添加到您指定的每種採樣技術的訓練資料表中,涉及 SMOTE 的技術除外。 |
| |
因此,這些列被新增並用作加權列,它們僅指定觀察值是否包含在分析中。 |
| |
如果您使用 SMOTE 指定了採樣技術,則會在資料表中新增額外的行。這些行就是產生的觀測值。 |
| |
因此,一旦產生了列和行,那麼對於每個模型,每個模型都會適合每種取樣技術。所以如果你選擇所有 |
| |
就像我們剛才做的一樣,總共有42個不同的模型正在進行擬合。這就是目前發生的一切。在 |
| |
在目前的演示中,我們有 42 個模型正在擬合。一旦模型擬合完成,就會收集相關信息,並將其匯總到結果報告中。這份報告 |
| |
希望它很快就會彈出來,報告就在這裡。你還可以得到一個技術和閾值表,以及一個總計表。 |
| |
讓我們來看看運行插件後會得到什麼。首先我們有訓練集。你可以看到這裡是加權列,也就是新增的權重列。這些列是為這些觀測值的預測機率而加的。 |
| |
然後我們有測試集。它不包含任何加權列,但它確實包含測試集觀測值的預測機率。 |
| |
我們有結果報告 |
| |
以及技術和閾值數據表。 Michael 在 |
| |
之前說過,但這很重要,因為如果你想保存結果並再次查看結果,這就是你想要保存的內容 |
| |
無需重新運行整個腳本。所以這個資料表就是你要儲存的,它包含可以重現的腳本 |
| |
結果報告和總結表,這是我最後要展示的內容。它只包含每種採樣技術、模型組合及其 AUC 值的摘要。 |
| |
現在來看看實際結果窗口,頂部是對話規範。它包含了你在啟動視窗中指定的資訊。 |
| |
因此,如果您忘記了指定的任何內容,例如隨機種子或分配的比例,您只需打開它並查看即可。 |
| |
我們還有二分類分佈。也就是類別變數在訓練集和測試集中的分佈。其設計目的是確保比例相同,在本例中為 2.3。 |
| |
然後我們還有缺失閾值。這不是特別重要,但它只是給了 |
| |
指示類別變數的值是否缺少預測值,然後在此處顯示。 |
| |
對於實際結果,我們有這些標籤圖。因此,我們有精確率/召回率曲線、ROC 曲線和累積增益曲線。對於 PR 曲線和 ROC 曲線,我們也有對應的 AUC 值。 |
| |
我們還有按類別預測機率的圖表。當你一次只查看幾個類別時,這些圖表會更有用,我們稍後會講到。 |
| |
然後我們有一個數據過濾器將所有這些圖表和結果連接在一起。 |
| |
現在我們可以看一下實際的分析結果。首先,我要對它們進行排序。 |
| |
因此,您已經可以看到 ROC 曲線和 PR 曲線,PR 曲線之間的差異比 ROC 曲線之間的差異大得多。 |
| |
如果我們選擇前五個,那麼它們的 AUC 實際上都是 0.97。 |
| |
你可以看到它們彼此非常接近,基本上是互相疊加的。很難確定哪個模型實際上更好,你應該選擇哪一個。 |
| |
這就是為什麼,尤其是在資料不平衡的情況下,精確率/召回率曲線非常重要。如果我們切換回來,我們可以看到,那些在 ROC 曲線上 AUC 值最高的模型, |
| |
它們在精確率/召回率曲線上確實分佈很分散。而且實際上…它們在 PR 曲線上並沒有最高的 AUC 值。 |
| |
所以也許那裡......也許那裡有一個更好的模型可供我們選擇。 |
| |
所以現在我要關注前兩個,即提升樹 Tomek 和 SVM Tomek,我將使用資料過濾器來實現。 |
| |
然後我們只想看看那些將要顯示和包含的內容。 |
| |
所以現在我們有了這兩個模型的曲線,藍色曲線是提升樹,紅色曲線是 SVM。 |
| |
你可以在這些曲線中看到,它們在不同的真陽性率值上相互重疊。所以你可以用這些曲線 |
| |
選擇分析中使用的模型,可能基於可接受的真陽性率。如果我加入一些參考線,我們就能看出這一點。請原諒我的手,等我打字的時候你就能看到了。 |
| |
好的,假設這些是您可能感興趣的一些不同的真實陽性率。因此,例如,對於您擁有的任何資料集,您想要的真實陽性率為 0.55。 |
| |
你可以選擇閾值,使其成為真陽性率。在這種情況下, |
| |
對於真正的陽性率,提升樹Tomek模型的精確度更高。所以你可以選擇這個模型。 |
| |
但是,如果您希望真實陽性率達到 0.85 左右,那麼 SVM 模型可能是更好的選擇,因為它對該特定真實陽性率具有更高的精確度。 |
| |
然後,如果您的真實陽性率更高,為 0.95,您會再次翻轉,也許您會想要選擇提升樹模型。 |
| |
因此您可以使用這些曲線來選擇最適合您的資料的模型。 |
| |
現在我們再看一下這些圖,現在只有幾張。這顯示了我們選擇的模型中每個類別的預測機率分佈。在這個例子中,你可以看到,在SVM中,大多數 |
| |
在整個預測機率範圍內的機率,其中提升樹可以更好地將它們保持在較低端。 |
| |
這次演示就到這裡,但在結束之前,我只想再演示一件事。這是一個如何使用評估的範例 |
| |
模型選項。但假設您只想使用特定的採樣技術,您可以在這裡操作。啟動視窗看起來大致相同。您可以指定二分類和預測因子,然後點選「確定」。 |
| |
這將產生一個新的數據表,並且您有 |
| |
指示柱。 |
| |
您的指標列僅顯示觀察結果是否應包含在分析中。 |
| |
然後因為它是 SMOTE 加 Tomek,所以您還可以獲得所有這些 SMOTE 生成的觀察結果。 |
| |
現在你有了這個新的資料表,你可以使用任何類型的模型和任何你想要的選項,只需將此列用作權重或頻率列,然後以此為基礎進行操作即可。至此,我們關於不平衡分類插件的示範就結束了。感謝觀看。 |