科莫哥洛夫-斯米爾諾夫檢定(Kolmogorov-Smirnov Test)是什麼?

用於比較樣本分佈與理論分佈是否相同,或兩個樣本是否來自相同分佈的無母數統計檢定。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Kolmogorov-Smirnov Test
主題標籤
統計檢定、無母數方法、資料品質
考點定位
非 iPAS 核心術語
最後更新
2026/06/22
科莫哥洛夫-斯米爾諾夫檢定(Kolmogorov-Smirnov Test)是什麼? 統計檢定無母數方法
術語快查

搜尋意圖: 如果你在找「科莫哥洛夫-斯米爾諾夫檢定 是什麼」或「科莫哥洛夫-斯米爾諾夫檢定 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 用於比較樣本分佈與理論分佈是否相同,或兩個樣本是否來自相同分佈的無母數統計檢定。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

用於比較樣本分佈與理論分佈是否相同,或兩個樣本是否來自相同分佈的無母數統計檢定。

科莫哥洛夫-斯米爾諾夫檢定(Kolmogorov-Smirnov Test,以下簡稱 KS 檢定)由蘇聯數學家安德烈·柯爾莫戈洛夫(Andrei Kolmogorov)與尼古拉·斯米爾諾夫(Nikolai Smirnov)在 20 世紀中期各自發展,是統計學中最重要的非參數檢定方法之一,廣泛應用於資料品質驗證、模型監控、特徵選取等機器學習實務場景。

KS 檢定的核心概念圍繞「累積分佈函數」(Cumulative Distribution Function,CDF)展開。對於一組連續型資料,我們可以計算其經驗累積分佈函數(Empirical CDF,ECDF),即「資料值小於或等於某閾值的比例」隨閾值變化的函數。KS 統計量 D 定義為:ECDF 與參考分佈(理論 CDF 或另一樣本的 ECDF)在所有可能的 x 值上的最大絕對差距,即 D = sup|F_n(x) - F(x)|。D 值越大,表示兩個分佈的差異越大;D 值越小,表示兩者越接近。

在實際應用中,KS 檢定分為兩種主要形式。單樣本 KS 檢定(Goodness-of-Fit Test)用於判斷一組樣本資料是否符合某個特定的理論分佈,例如常態分佈、均勻分佈或指數分佈。雙樣本 KS 檢定則用於比較兩組獨立樣本,判斷它們是否來自同一個母體分佈,不需要事先知道該分佈的形式。

在機器學習與 AI 的實務應用中,KS 檢定有幾個關鍵的使用場景。首先是資料漂移偵測(Data Drift Detection):當模型上線後,生產環境的輸入資料分佈可能隨時間改變(稱為 Covariate Shift),可以定期對訓練資料與線上資料的各特徵分別執行 KS 檢定,若 D 值超過閾值或 p 值低於顯著水準,則觸發警報,提示需要重新訓練模型。其次是模型監控(Model Monitoring):除了輸入特徵,也可以對模型的輸出分佈(預測值分佈、預測概率分佈)做 KS 檢定,監控模型輸出是否發生漂移。第三是特徵選取:在二元分類問題中,雙樣本 KS 檢定可以比較正類與負類樣本在某個特徵上的分佈差異,KS 值越大表示該特徵對區分正負類越有幫助,可以作為特徵重要性的無母數估計。

KS 檢定的優點包括:不需要對資料的分佈形式做假設(無母數方法)、計算簡單、對分佈的整體形狀(包括位置、尺度、偏態)都敏感。然而,KS 檢定也有其侷限性:它對分佈尾部的差異相對不敏感(因為 ECDF 在尾部的觀測值稀疏,最大差距往往出現在分佈的中段);在樣本量極大時,即使是實務上無關緊要的微小差異也可能產生顯著的 p 值;此外,標準 KS 檢定只適用於連續型資料,對離散型資料需要使用修正版本。

針對 KS 檢定尾部不敏感的問題,Anderson-Darling 檢定(AD Test)提供了一種加權版本,對分佈尾部給予更高的權重,在許多場景下比 KS 檢定有更高的統計功效(Statistical Power)。實務上,資料科學家常同時使用 KS 檢定與 AD 檢定,互相補充。

IPAS 中級考試中,KS 檢定通常與以下概念一起考察:假設檢定的基本框架(虛無假設、對立假設、顯著水準、p 值的解讀)、無母數方法與參數方法的比較、資料前處理中的分佈檢驗(例如確認殘差是否符合常態分佈)以及資料漂移監控的方法論。考生需要能辨識 KS 檢定的適用情境,並理解其結果的統計意義。

在 Python 生態系中,scipy.stats 模組提供了 kstest(單樣本)與 ks_2samp(雙樣本)函式,能快速計算 KS 統計量與對應的 p 值。機器學習平台如 Evidently AI、WhyLabs 等 MLOps 工具也將 KS 檢定內建為標準的資料品質監控指標之一。

常見問題

KS 檢定的 p 值要怎麼解讀?p 值大代表什麼意思?

KS 檢定的虛無假設(H₀)是「兩個分佈相同」或「樣本符合指定分佈」。p 值是在假設 H₀ 為真的情況下,觀察到目前 KS 統計量 D 值(或更極端值)的機率。p 值大(通常 > 0.05)表示沒有足夠的統計證據拒絕虛無假設,即無法區分兩個分佈有差異;p 值小(< 0.05)則表示有統計顯著的差異存在。需要注意的是,p 值不代表差異的大小,只代表統計顯著性。當樣本量很大時,極微小的分佈差異也可能產生 p 值 < 0.05,但在實務上這種差異可能並不重要,因此應該同時參考 KS 統計量 D 值本身的大小。

KS 檢定與卡方適合度檢定(Chi-Square Goodness-of-Fit Test)有何不同,何時選擇哪一種?

兩者都可用於檢驗樣本是否符合某分佈,但適用場景不同。KS 檢定適用於連續型資料,不需要對資料分組,使用的是 ECDF 與理論 CDF 的最大差距,對分佈形狀的整體差異敏感。卡方適合度檢定則適用於離散型資料或已分組的連續資料,透過比較觀察頻率與期望頻率的差距來評估擬合程度,需要足夠大的期望次數(通常每格 ≥ 5)。實務建議:連續型資料優先使用 KS 檢定(或 Anderson-Darling 檢定);類別型或計數型資料使用卡方檢定;若連續資料量很少,可考慮 Shapiro-Wilk 檢定專門測試常態性。

在機器學習模型監控中,如何用 KS 檢定偵測資料漂移?

資料漂移監控的標準流程如下:首先,在模型訓練完成後,儲存訓練資料集各特徵的分佈(或以訓練資料本身作為參考集)。模型上線後,定期(例如每日、每週)收集一批線上請求的特徵資料,對每個特徵分別執行雙樣本 KS 檢定,比較線上資料與訓練資料的分佈。若某特徵的 KS 統計量 D 值超過設定閾值(例如 0.1 或 0.2),或 p 值低於顯著水準(例如 0.05),則標記該特徵發生漂移,觸發告警。若多個重要特徵同時發生漂移,通常需要重新評估模型性能,考慮使用新資料重新訓練或更新模型。這種機制可以幫助團隊在模型性能明顯下降之前主動發現資料分佈的變化。