# Interpretability of machine learning based prediction models in healthcare
###### tags: `paper`
### 參考資料
https://medium.com/sherry-ai/xai-%E6%A8%A1%E5%9E%8B%E5%8F%AF%E8%A7%A3%E9%87%8B%E6%80%A7%E7%9A%84%E9%87%8D%E8%A6%81-a0bbaa649978
[机器学习可解释性(一)_osc_tzzfwr6n - MdEditor](https://www.mdeditor.tw/pl/grpo)
[Explainable AI 是什麼?為什麼 AI 下判斷要可以解釋?](https://medium.com/trustableai/%E5%AE%83%E6%98%AF%E6%80%8E%E9%BA%BC%E7%9F%A5%E9%81%93%E7%9A%84-%E8%A7%A3%E9%87%8B%E6%B7%B1%E5%BA%A6%E5%AD%B8%E7%BF%92%E6%A8%A1%E5%9E%8B-f18f57d18d4f)
[XAI| 模型可解釋性的重要. 人工智慧所面臨的挑戰,如何打開黑盒子? | by Sherry Su | Sherry.AI](https://medium.com/sherry-ai/xai-%E6%A8%A1%E5%9E%8B%E5%8F%AF%E8%A7%A3%E9%87%8B%E6%80%A7%E7%9A%84%E9%87%8D%E8%A6%81-a0bbaa649978)
[「可解释性机器学习系列」2. 可解释性原理介绍(一)](https://zhuanlan.zhihu.com/p/345452196)
[zz[讀書筆記]《Interpretable Machine Learning》](https://www.twblogs.net/a/5d407661bd9eee5174231434)
[LIME - Local Interpretable Model-Agnostic Explanation 技術介紹](https://medium.com/@kstseng/lime-local-interpretable-model-agnostic-explanation-%E6%8A%80%E8%A1%93%E4%BB%8B%E7%B4%B9-a67b6c34c3f8)
https://christophm.github.io/interpretable-ml-book/
### 專有名詞
Interpretability:可解釋性
知識蒸餾
### 相關知識
* **data driven(數據導向):**
假設你在經營電商,有一個產品銷量不佳,身為營運單位的你會怎麼做?你會覺得問題是產品的圖片不夠吸引人?描述寫的不夠詳細?網站response太慢,還是根本這個產品在市場上沒有需求?
數據導向的公司不會用猜的,而是**運用各種可獲取、蒐集的數據中,抽絲剝繭找出答案。**
數據導向的公司應該是非常有邏輯性的一個體系,不會靠直覺去猜測問題所在。重點應該是如何找出問題所在以及如何蒐集與分析數據來找出對策
要注意的是很有可能被數據誤導,請一位經驗豐富的數據分析師很重要。但不同的人對不同數據會產生不同的解讀。如果解讀錯誤,很可能會做出錯誤決策,浪費時間與資源。
* **KNN**
用於分類
新的data 最近K個的label是什麼我就是什麼
* **Linear model**
* **Rule based model**
### **Abstract**
* **將可以用來解釋預測模型的方法分成兩組**
interpretability approaches:
1. personalized interpretation(**local interpretability**)
2. population level (**global interpretability**)
* we can group interpretability methods into model-specific techniques, which are designed to interpret predictions generated by a specific model, such as a neural network
**把interpretability approaches 加入**
1. **model-specific技術**(可用來解釋特定模型生成的預測 ex: neural network)。
2. **model-agnostic技術**(為任何機器學習模型的預測提供易於理解的解釋)。
### **Introduction**
:::info
**++為什麼需要解釋模型的原因++:**
**1. 判斷結果是否合理,進而改善模型**
這篇論文主要是在探討可解釋性interpretability,那在大多數的情況下,高準確率的模型常常因為過於複雜,導致人類難以理解其決策與行動背後的原因,進而在修改模型時不知道要從何改起,這也是為什麼機器學習(例如:深度學習)常被視為黑盒子。
因此,我們需要確保機器學習模型是可解釋的這樣才能更容易理解是什麼原因才導致有這樣的預測結果,進而優化我們的預測模型。
**2. 找出新現象,推論因果關係**
模型的可解釋性能幫助人類從大量的歷史資料中發現新現象,萃取有用的新知識,例如:找出可能影響肺癌的潛在因子。由觀察到的相關性(correlation)中產生一些假設,再藉由實證科學的驗證來推論因果關係(causation)。
**3. 符合法規規範**
隨著AI的演進,法規對於資料隱私權與 AI 的規範更加重視。
歐盟通過 GDPR 法案,其中「透明處理原則」就賦予民眾有權要求解釋(right to explanation)、拒絕適用(right not to be subject)的權力。
在醫療方面可解釋的機器學習模型能夠讓醫療保健專家做出合理和data driven的決定,進而提高醫療保健的服務品質。
* 實際可解釋性範例:
1. prediction of health-related outcomes(**預測與健康相關的結果**)
3. optimizing treatments or improving the efficiency of screening for specific conditions(**優化治療或提高特定條件篩查的效率**)
:::
:::success
高準確率的模型過於複雜:
尤其是深度類神經網絡,由於多個隱藏層與大量非線性性質的權重,幾乎難以理解輸入和結果輸出之間的關係
結構簡單=>例如:線性回歸
:::
:::info
解釋性與準確性往往需要做出取捨。通常解釋力高的模型,由於結構簡單(例如:線性回歸)難以處理比較複雜的問題;反之,複雜的模型可以得到較高的準確度,但由於模型結構複雜,人類難以理解特徵與結果的關係。
為了解決這個問題,資料科學家主要朝著兩個方向解決解釋性的問題:
1. 發展全新的模型框架(同時具備高解釋性與準確性)
2. 發展模型的事後可解釋方法(找出解釋複雜模型的方法)
:::
![](https://i.imgur.com/ZIEAWdg.png)
* 缺乏可解釋性是限制在醫療保健中廣泛採用 ML 的一個關鍵因素。
* 信任複雜的機器學習模型具有挑戰性,因為它們通常只針對狹小環境中的特定疾病進行設計和嚴格評估,並且依賴於統計學和機器學習的技術知識。
* 此外,大多數模型專注於準確性預測,很少以有意義的方式解釋他們的預測-> 這在醫療保健應用中尤其成問題,在醫療保健應用中,實現高預測準確性通常與理解預測一樣重要。所以可解釋的ML已成為一個研究領域,旨在設計透明和可解釋的模型
**=> 準確的預測,必須要是可以解釋得。**
**可解釋性通常被定義為人類能夠從ML模型中理解決策原因的程度,它也可以定義為解釋模型結果的能力(要能讓人類理解的)。**
->BUT還是有人質疑可解釋性,因為人們本來就不太能解釋ml是如何工作的。
* **傳統上**,ML 研究的重點是**global interpretability:**
以幫助使用者瞭解所有可能的 ML 模型輸入與模型所有預測空間之間的關係。
**local interpretation:**
本地解釋有助於使用者瞭解特定個體的預測或訓練有素的一個小的特定區域預測功能
=>這兩種方法已成功地應用於不同的醫療保健領域,並且仍和基於ML的預測模型開發中的新方法同時推進。
* 本文概述了基於ML的醫療保健預測模型的基本分類,並提供了一些研究於現實的例子
### **Interpretability of machine learning models**
:::info
**可解釋性方法的分類標準:**
1. **本質或事後可解釋性(intrinsic or post hoc):**
**intrinsic:**
指的是基於模型簡單的架構,而模型本身就能解釋(例如:線性回歸、決策樹)。
**post hoc:**
指的是模型訓練後利用可解釋的方法來進行解釋(例如:特徵重要性、 PDP)。
2. **是針對特定模型的還是通用的(model-specific or model-agnostic):**
**model-specific方法**
指的是解釋方法僅限於特定的模型類,這些方法依賴於模型的本身功能(例如:決策樹的規則、線性回歸的權重等等)->**決策樹只能被決策樹本身解釋。**
**model-agnostic方法**
指的是與模型架構無關,可以在任何模型上使用,並且屬於事後可解釋性。
用於任何機器學習模型 ->**某個model可以被不同種模型解釋 (ex:決策樹 二分法來解釋某模型)**
3. **局部還是全域解釋性(local or global):**
**local:**
可以解釋特定特徵的群體。
**global:**
可以解釋全體(整個model)。
:::
![](https://i.imgur.com/nM5I3q5.png)
機器學習用於判斷有無解釋性的方法有很多種:
1. **intrinsic classification:**
通常用來選擇和培訓機器學習模型,由於其結構簡單,這種模型在本質上是可以解釋的。
2. **post-hoc classification:**
通常用於模型培訓後,可解釋性方法的應用。
可解釋性方法也可以根據**構建機器學習模型的時間**進行分類。
3. **pre-model classification:**
它獨立於模型,可在決定使用哪個模型之前使用。
4. **in-model classification:**
具有模型本身固有的可解釋性。
5. **post-model classification:**
指建立模型後可提高可解釋性。並在不改變基礎模型的情況下,提供了對模型所學知識的洞察。
6. **classification based on the model outcome:**
* Feature summary statistics(功能摘要統計):
指影響模型預測的每個功能統計的摘要。
* Feature summary visualization(功能摘要可視化):
描述只能可視化且無法以表格形式有意義地呈現的方法。
* Model internals approach(模型內部方法):
指對「內在可解釋模型」和「線性模型」的解釋,其中模型權重代表模型內部和特徵的摘要統計。
* data point interpretability(數據點可解釋性):
指返回數據點以使模型可解釋的方法。這種方法要求數據點本身允許解釋性。
* Intrinsically interpretable models(內在可解釋模型):
可通過功能匯總統計的內部模型參數進行解釋。
* 我們將可解釋性方法分為兩個非排他性組,即model-specific 或 model-agnostic 和 local or global.
### **Model-specific or model-agnostic interpretability**
:::info
Typically, to achieve model-agnostic interpretability, one can use a surrogate or a simple proxy model to learn a locally faithful approximation of a complex, black- box model based on outputs returned by the black-box model.
通常要實現Model-agnostic interpretability,要使用代理模型學習基於黑匣子模型返回的輸出的複雜黑盒模型的本地忠實近似
:::
**Model-specific interpretability:**
僅限於特定模型,並通過檢查內部模型參數得出解釋。但是通常不會檢查內部模型參數,因為模型被視為black box。
**Model-agnostic interpretability:**
用於任何機器學習模型,通常應用建立模型後。
通常要實現Model-agnostic interpretability,要使用代理模型學習基於黑匣子模型返回的輸出的複雜黑盒模型的本地忠實近似。(???WTF)
### **Local or global interpretability**
**Local interpretability:**
可以解釋單個預測。
可以通過設計合理的模型架構來對模型進行本地解釋,從而解釋做出具體決策的原因。它也可以通過向目標實例提供類似的實例範例來實現。
例如,通過強調患者的具體特徵,這些特徵與較小組患者的特徵相似,但在其他患者中則不同。
**global interpretability:**
可以解釋整個模型行為。
會很清楚地讓你知道模型內部發生了什麼
* MUSE:通過子空間解釋模型,它使用具有某些興趣特徵的子空間行為進行解釋
### **Examples of interpretable machine learning models**
可以**用來解釋預測模型的方法**:
![](https://i.imgur.com/49n39vr.png)
* 從歷史上看,global interpretability被廣泛用於從預測模型中提取知識。Model-agnostic 和 Model-specific models 用於直接從模型中解釋決策(例如從決策樹中提取所有規則),或使用知識蒸餾等特定技術構建一個可以解釋的簡單 模型(例如決策樹、規則集或回歸函數)。
* Local interpretability較少被使用,直到最近。There are some exceptions, especially in some of the local model-specific approaches like extracting a limited number of rules from a decision tree that correspond to a specific individual.
### **Applications of interpretable machine learning in healthcare**
* 四組基於可解釋性特徵的醫療保健預測machine learning model:
![](https://i.imgur.com/8hlUu4O.png)
* **Global model-specific interpretability:**
由於其高度的可解釋性和在實踐中的簡單使用,像回歸模型或Naive Bayes分類器等方法仍然用於不同的醫療保健領域
* **Local model-specific interpretability:**
最近,在預測與健康有關的疾病時,採用了針對特定模型的方法,例如基於 KNN 或決策樹的本地解釋方法
* **Local model-agnostic interpretability:**
可用於複雜模型的可解釋性,如深度學習模型
* MUSE 用於幫助解釋接受抑鬱症診斷數據集培訓的 3 級神經網路的決定。它生成一組「如果」規則,描述Global層面的模型決策。但它也根據與患者合作的醫療保健專家選擇的功能為子空間提供了一套單獨的規則
* 典型的 global interpretability approach 不會考慮數據集中有一些功能比其他功能更有趣,因為患者和醫療保健專家可以通過引入一些干預措施來影響他們的價值觀。因此,**MUSE**可以歸類為**global model-agnostic interpretability approach**,但它也通過縮小最終使用者輸入的搜索子空間,展示了注重個性化解釋的方法的特徵。
### **Discussion**
* 我們根據model-specific and model-agnostic or global and local interpretability進行分類。後一種類型的可解釋性通常表示為以使用者為中心的方法,使用戶能夠為特定問題找到合適的模型。
例如,當需要解釋**人口水準的一般預測**時,則**global and model-specific models**可能是適當的選擇。近年來,可以觀察到從model-specific and global interpretable models到model-agnostic and local interpretable models的轉變,其中一個原因是醫療保健領域中大量數據集的可用性,進而轉向精密醫學。
### **Conclusion**
**local:** 可以解釋特定特徵的群體
**global:** 可以解釋全體
**specific:** 限特定模型、項目 (只能用決策樹解釋決策樹)
**agnostic:** 用於任何機器學習模型 (可以用不同種模型 例如決策樹 二分法來解釋模型)
muse: global specific