1. correct answers ≠ intelligent e.g.神马汉斯
2. 在很多真實的應用中,可解釋性的模型往往是必須的
3. 可解释性ML的可提升ML model。
今天在使用這些深度學習技術的時候、往往狀況是這個樣子、
有某人说”這個就是你的機器學習的系統“,
- 是啊 我就是把資料丟進去、、裡面就是有很多矩陣的相乘、就會跑出我的結果。
如果結果不如預期的話,怎麼樣呢
- 現在大家都知道就爆調一下參數對不對、、改個 Learning Rate、調一下 Network 的架構對不對,我就把這一堆數學,這一堆 Linear Algebra 再重新打亂一下,看看結果會不會比較好
但實際上今天深度學習的模型,你往往要改進模型,就是需要調一些 Hyperparameter,
今天離用 Explainable 的 Machine Learning,做到上述 Improve Model 的想法,還有很長的一段距離,
对于一些线性模型(可能根据实际的物理特性构建出几阶的或者几个参数的模型),但是线性模型在描述实际现实生活中的物理对象(大多非线性)时就没那么强大了。
虽然深度网络很难解释其中内部的一些道理(因为是黑箱),但是深度网络模型往往比线性模型在刻画实际非线性系统特性时能力更强一些。我们不能因为其是黑箱,就放弃了这种能力很强的模型。
注:Explainable 和 Interpretable的区别。两者都可以翻译成可解释性,但是Explainable是说对于一个黑箱,我们想办法赋予它可解释性的能力,称为Explainable;Interpretable用于这个东西本来不是黑箱(比如线性模型),我們本來就可以知道它的內容,称为Interpretable。在文献上常被混用,
有没有一些模型又具有可解释性,能力又非常强呢?于是可以想到decision tree(决策树)。
但是decision tree也有一些问题,
1. 比如当解决很复杂问题的时候,单一决策树可能相当的复杂(左图)。
2. 另外 你想想是怎麼實際使用 Decision Tree 這個技術的呢
(打 Cargo 比賽的時候、Deep Learning 不是最好用、decision tree才是 Cargo 比賽的常勝軍)
當我们在使用 Decision Tree 技術的時候,并不是只用一棵 Decision Tree ,你真正用的技術叫做 Random Forest(右图),好多棵 Decision Tree 共同決定的結果,比如 當你有 500 棵 Decision Tree 的時候,解释性大大减弱。
所以 Decision Tree 也不是最終的答案,並不是有 Decision Tree就解决了Explainable Machine Learning 的問題
而对于可解释性的机器学习,它的评价标准来说一直很难定夺,因为一个理由的可解释是因人而异的。
对于解释性方面有些人的想法是:一定要完全知道ML model如何工作的,但是对于我们人脑来说,我们并不完全知道人脑是如何工作的,但是我们往往会相信人脑做出的决策。
所以好的explanation,