Lin’s concordance correlation coefficient (一致性相關係數)
2021/07/14
這是延續comment#4裡所應用的的Lin’s concordance correlation coefficient (CCC),簡單做為一個學習筆記。
在演算法的領域內,我們常會測試兩種預測方式 (例如一種新的演算法與一種已被廣泛使用的演算法) 所計算出的結果是否具一致性 (concordance),即兩種方法所預測的結果是否相同,一致性可以拿來參考準確程度,其中一種常用的一致性指標是kappa coefficient (Cohen’s kappa),但kappa coefficient運用的範圍是在類別型 (categorical) 資料,並不能用在連續型 (continuous) 資料上。
Lin’s concordance correlation coefcient (CCC) 即是運用在連續型資料上的一致性相關係數,由Lawrence I-Kuei Lin提出的文章A Concordance Correlation Coefficient to Evaluate Reproducibility已經超過6600次引用,可見CCC的廣泛使用。
什麼是CCC
CCC的作用是衡量一組數據 (Y) 與另一組數據 (X) 的一致性,想像一下我們把兩組數據做為X軸與Y軸並繪製散布圖,斜率=1的45°的直線就是兩者完美一致的狀況,若點都分布在該直線上表示兩種方法所計算出的結果是完全一致的 (數據X與數據Y有一致性),反之若點遠離該直線,則代表兩組數據的一致性相當低,因此,CCC值便是計算數據相對於通過原點的45°線的變異,以原作者的話來說就是variation from the 45° line through the origin。
那麼要如何計算CCC呢,由於通過原點的45°線就是所謂的1:1線,方程式為X=Y,計算變異的方法為
\(E[(Y-X)^2]=(\mu_Y - \mu_X)^2 + \sigma_Y^2 + \sigma_X^2 - 2\rho\sigma_Y\sigma_X\)
其中ρ是兩者的Pearson correlation coefficient。但是這個期望值在X與Y完全一致時為0,為避免此情況發生,將CCC轉變成如下的式子
\(CCC=1-{E[(Y-X)^2] \over E[(Y-X)^2|\rho=0]}\)
分母代表的是在X與Y不具相關性時的變異期望值,目的是要將這個指標做scaling,由於不具相關性代表ρ=0,其後續結果如下
\(\begin{aligned}
CCC &= 1-\frac{(\mu_Y - \mu_X)^2 + \sigma_Y^2 + \sigma_X^2 - 2\rho\sigma_Y\sigma_X}{(\mu_Y - \mu_X)^2 + \sigma_Y^2 + \sigma_X^2} \\
&= \frac{2\rho\sigma_Y\sigma_X}{(\mu_Y - \mu_X)^2 + \sigma_Y^2 + \sigma_X^2}\\
&= \frac{2Cov(X,Y)}{[E(Y)- E(X)]^2 + Var(X) + Var(Y)}
\end{aligned}\)
最後一行以常見的統計量表示。如此一來CCC的大小被調整成介於-1與1之間,1代表完全一致,-1代表完全不一致,0代表兩者完全獨立,從方程式中可以看到若E(X)=E(Y)且Var(X)=Var(Y)的話,CCC會等於其Pearson correlation coefficient。
實際應用上例如有一組以簡單線性迴歸產出的預測結果,以及另一組以random forest產出的預測結果,就可以利用CCC的值來衡量這兩種預測的結果是否相近。
參考資料
A Concordance Correlation Coefficient to Evaluate Reproducibility 原始論文
如何利用變異數成份估計一致性相關係數 撰文者:彰化師範大學統計資訊所副教授 蔡秒玉
Lin’s Concordance Correlation Coefficient NCSS統計分析軟體的學習文件