XNN:打開了自己黑箱的神經網路

ofollow,noindex" target="_blank">路雪 翻譯
Shagun Maheshwari 作者 陳韻竹、路 編譯 Medium 選自
XNN:打開了自己黑箱的神經網路
本文介紹了一種旨在「開啟」並解釋神經網路的新模型 XNN(可解釋神經網路)。該網路包含三個重要組成部分:投影層、子網路、組合層。XNN 還可用於替代複雜模型,無論將 XNN 用作主要模型還是用於更復雜模型的替代模型,XNN 都可以直接解釋模型如何使用輸入特徵進行預測。
將 人工神經網路 應用到特定系統的最大障礙之一是它的「黑箱」屬性。XNN(可解釋的神經網路)是一種旨在「開啟並解釋」神經網路黑箱的新模型。
使用 人工神經網路 和機器學習演算法訓練機器像人腦一樣學習資訊已經越來越流行。這讓機器能夠準確地輸出給定任務的預測結果。
在給定任務下訓練的 ANN 能進行貓和狗的分類
再舉一個例子,假定你想要訓練一臺機器,使其能根據客戶憑證確定銀行的哪些客戶離開銀行的概率最高。
神經網路將在包含每個客戶憑證(例如信用評分)的大資料集上進行訓練。它通過變數選擇識別資料中的哪些特徵對客戶的去留影響最大。神經網路將學習這些特徵,並通過學習特徵,根據其憑證(特徵)自行準確預測哪些客戶離開銀行的概率最高。(參見:https://www.linkedin.com/pulse/creating-deep-neural-net-accurately-predict-churn-rate-maheshwari/)
這些模型對大型資料集非常有效,因為在大型資料集中很難進行手動的變數選擇和特徵工程。另外,與傳統統計方法相比,它們具有更好、更準確的預測效能。
黑箱
然而 ANN 的一個問題在於,它們是黑箱。這意味著資料分析師或建模人員很難解釋輸入特徵與其響應(輸出)之間的關係。神經網路越複雜意味著新增的神經元和層數越多,這使解釋和確定 ANN 中的哪個函式導致輸出變得愈發困難。
應用
理解黑箱並具備解釋模型行為的能力非常重要,這是因為機器學習模型和 ANN 的使用需要納入醫療保健和金融等領域。事實證明,機器學習模型有可能徹底改變這些行業,提高某些任務的效率。
瘋狂的是,研究人員實際上能建立一種機器學習演算法來識別乳腺癌患者身體組織影象中的乳腺癌模式,而且效果比人類病理學家還要好!機器學習模型能夠更快地識別乳腺癌模式,準確率達 89%,高於訓練有素的人類病理學家的平均準確率73%!這只是 ANN 和機器學習模型多種實現方式的一個示例,它們能提供比傳統人類方法更高效、準確的工具。
然而,儘管這些模型的準確率和效率已經經過驗證,但人們仍在猶豫是否將它們納入醫療保健和銀行業等領域,因為這些模型具備黑箱屬性。解釋模型並解釋其行為的能力對於這些行業至關重要,因為它們涉及處理高風險問題並且必須受到嚴格監管。
可解釋神經網路
可解釋神經網路(XNN)是機器學習模型的一項新進展,旨在為模型提供可解釋的洞察力,消除其黑箱屬性。這意味著它能夠提供關於特徵以及網路完成輸出(預測)過程中所學得的非線性變換的直白解釋。通過該模型,研究者能清楚地解釋輸入特徵與複雜神經網路輸出之間的關係,因為 XNN 網路結構包含解釋這種關係的機制,並能對視覺化該網路所學習的函式起到幫助作用。
XNN 基於加性索引模型的概念,如下所示:
f (x) = g1 β1T x+ g2 β2T x+ · · · + gK βKT x
左側的函式可以表示為 K 個平滑函式 gi(·) 的和。這些平滑函式(即嶺函式)都用於在網路中訓練的輸入特徵的線性組合(βiT x)。這使得加性索引模型能夠提供靈活的框架,通過嶺函式逼近網路內的任意複雜函式,從而提供關於特徵和網路學得的非線性變換的解釋。
可解釋神經網路架構
可解釋神經網路提供加性索引模型的替代公式作為結構化神經網路。XNN 內建瞭解釋機制,這有助於解釋和理解模型內部過程以及該模型學到的函式。
替代公式如下:
f (x) = μ + γ1 h1 β1T x+ γ2 h2 β1T x+ · · · + γK hK βKT x
位移引數μ 和尺度引數γk 被用於模型擬合:通過正則化選擇適當數量的嶺函式。
XNN 結構中三個重要的組成部分包括:
i) 投影層(第一個隱藏層);
ii) 子網路(下圖的中間部分);
iii) 組合層(最後的隱藏層)。
XNN 結構
投影層
輸入層包含將輸入神經網路的所有信息。輸入層全連線到投影層,在投影層上傳遞特徵(資訊)。投影層由 K 個節點組成(每個節點對應一個嶺函式)。第一個隱藏層中的節點 i 的權重對應相應嶺函式輸入的係數(βi)。嶺函式有助於逼近輸入特徵中的複雜函式。投影層使用線性啟用函式,以確保該層中的每個節點都學習輸入特徵的線性組合。應用了嶺函式的投影層中每個節點的輸出恰好可以用作一個子網路的輸入。
子網路
子網路主要用於學習應用於輸入特徵的嶺函式。嶺函式對於子網路而言非常重要,因為它們逼近投影層的複雜函式。這使得子網路更容易學習並提供所習得的嶺函式的可解釋性,從而使資料分析師有能力理解子網路的運作、理解從輸入到輸出的過程。子網路只需要有足夠的結構,使每一個子網路都能學習大量單變數函式。在模擬中,研究者發現,使用由具有非線性啟用函式的兩個隱藏層組成的子網路,足以在擬合模型時學習足夠靈活的嶺函式。
組合層
組合層是 XNN 的最後一個隱藏層,由單個節點組成。節點的輸入包括嶺函式的所有輸出以及在子網路中學習和新增的權重。在該層上使用線性啟用函式,因此整個網路的輸出是所有嶺函式的加權和的線性組合。
XNN 元件視覺化
內置於 xNN 中的結構(如投影層和子網路)提供了一種機制來解釋這種網路所學習的函式。該內建機制用投影和單變數嶺函式這些相對簡單的術語描述模型學得的複雜函式,以確保模型可解釋。
下圖展示了研究者如何解釋和視覺化子網路中的單變數變換和嶺函式。
嶺函式(左)和訓練的 XNN 的對應投影索引(右)。
第一列解釋了單變數函式,其中包含由子網路學習到達其輸出的權重。第二列顯示 βi 的值,即投影係數。投影係數說明輸入特徵的哪個組合在通過子網路之前用作了每個嶺函式的輸入。這非常有用,因為上圖展示了網路最相關的特徵:縮放嶺函式和投影係數。
在上面的例子中,從 xNN 的結構我們可以看出 Subnetwork 1 已經學習了立方勒讓德函式 (f3(·)),Subnetwork 2 已經學習了二次函式 (f2(·)),並且只有 x2 的係數非零。
XNN 作為替代模型
XNN 還可以用作機器學習模型的替代模型,例如隨機森林(RF)和前饋神經網路(FNN)。
有點像這樣……但不完全如此。
在這種情況下,RF 和 FNN 被認為是基礎模型。由於 XNN 被設計為一個可解釋模型,因此我們可以使用輸入特徵和基礎模型預測的相應輸出值來訓練 XNN。然後,XNN 就可以解釋基礎模型所學到的關係!
使用更容易解釋的替代模型來幫助解釋複雜的機器學習模型,極大地增加了將機器學習模型融入不同行業的能力。
可解釋神經網路(XNN)是一個關鍵的機器學習模型。與其他機器學習模型不同,它能「開啟」神經網路的黑箱。該模型的結構和設計方式使其可以解釋學習的特徵以及導致其輸出或預測值的函式。這些可解釋性特徵非常吸引人,它本質上是有可加性的,並且能通過納入神經網路的機制(如子網路)直接得到解釋。
無論將 XNN 用作主要模型還是用於更復雜模型的替代模型,XNN 都可以直接解釋模型如何使用輸入特徵進行預測。這項技術為將機器學習模型整合入眾多不同行業提供了巨大的優勢,因為它能夠超越現有系統,並且能夠清晰解釋它如何獲得輸出。
-
相關論文:ExplainableNeural Networks based on Additive Index Models
-
論文地址:https://arxiv.org/abs/1806.01933
原文連結:https://medium.com/@shagunm1210/the-explainable-neural-network-8f95256dcddb
理論 黑箱 神經網路 論文
相關資料
Neural Network
(人工)神經網路是一種起源於 20 世紀 50 年代的監督式機器學習模型,那時候研究者構想了「感知器(perceptron)」的想法。這一領域的研究者通常被稱為「聯結主義者(Connectionist)」,因為這種模型模擬了人腦的功能。神經網路模型通常是通過反向傳播演算法應用梯度下降訓練的。目前神經網路有兩大主要型別,它們都是前饋神經網路:卷積神經網路(CNN)和迴圈神經網路(RNN),其中 RNN 又包含長短期記憶(LSTM)、門控迴圈單元(GRU)等等。深度學習是一種主要應用於神經網路幫助其取得更好結果的技術。儘管神經網路主要用於監督學習,但也有一些為無監督學習設計的變體,比如自動編碼器和生成對抗網路(GAN)。
來源:機器之心
Feed-forward neural network
前饋神經網路(FNN)是人工智慧領域中最早發明的簡單人工神經網路型別。在它內部,引數從輸入層經過隱含層向輸出層單向傳播。與遞迴神經網路不同,在它內部不會構成有向環。FNN由一個輸入層、一個(淺層網路)或多個(深層網路,因此叫作深度學習)隱藏層,和一個輸出層構成。每個層(除輸出層以外)與下一層連線。這種連線是 FNN 架構的關鍵,具有兩個主要特徵:加權平均值和啟用函式。
來源:機器之心
Feature engineering
特徵工程是利用資料所在領域的相關知識來構建特徵,使得機器學習演算法發揮其最佳的過程。它是機器學習中的一個基本應用,實現難度大且代價高。採用自動特徵工程方法可以省去採用人工特徵工程的需求。Andrew Ng 說“挖掘特徵是困難、費時且需要專業知識的事,應用機器學習其實基本上是在做特徵工程。”
來源: Wikipedia
Machine Learning
機器學習是人工智慧的一個分支,是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算複雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的演算法。因為學習演算法中涉及了大量的統計學理論,機器學習與推斷統計學聯絡尤為密切,也被稱為統計學習理論。演算法設計方面,機器學習理論關注可以實現的,行之有效的學習演算法。
來源:Mitchell, T. (1997). Machine Learning. McGraw Hill.
neurons
(人工)神經元是一個類比於生物神經元的數學計算模型,是神經網路的基本組成單元。 對於生物神經網路,每個神經元與其他神經元相連,當它“興奮”時會向相連的神經元傳送化學物質,從而改變這些神經元的電位;神經元的“興奮”由其電位決定,當它的電位超過一個“閾值”(threshold)便會被啟用,亦即“興奮”。 目前最常見的神經元模型是基於1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神經元模型”。 在這個模型中,神經元通過帶權重的連線接處理來自n個其他神經元的輸入訊號,其總輸入值將與神經元的閾值進行比較,最後通過“啟用函式”(activation function)產生神經元的輸出。
來源: Overview of Artificial Neural Networks and its Applications. (2018). medium.com.
Regularization
當模型的複雜度增大時,訓練誤差會逐漸減小並趨向於0;而測試誤差會先減小,達到最小值後又增大。當選擇的模型複雜度過大時,過擬合現象就會發生。這樣,在學習時就要防止過擬合。進行最優模型的選擇,即選擇複雜度適當的模型,以達到使測試誤差最小的學習目的。
來源:李航著 統計學習方法 清華大學出版社
Weight
線性模型中特徵的係數,或深度網路中的邊。訓練線性模型的目標是確定每個特徵的理想權重。如果權重為 0,則相應的特徵對模型來說沒有任何貢獻。
來源:Google AI Glossary
Accuracy
分類模型的正確預測所佔的比例。在多類別分類中,準確率的定義為:正確的預測數/樣本總數。 在二元分類中,準確率的定義為:(真正例數+真負例數)/樣本總數

機器之心編輯