昨天,Google Brain 推了一篇十分有趣的 paper ——《The building blocks of interpretability》(中譯:畫出黑盒子裏的風景)。本文在此簡單介紹一下這篇有趣的 paper ,以及人們在「開箱」過程當中作出的努力,爲何咱們迫切須要把深度學習的黑箱拆開,這個工做有怎樣的應用?
node
鬼畜的可視化——萬里長征第一步算法
被論文嚇跑準備左上角的別動!論文無非就是說了:網絡
「我終於知道我訓練出來的神經元它是幹啥的,怎麼幹的」
機器學習
ヾ(。`Д´。)我擦,乾淨利落!
函數
你們知道機器學習是喂數據,而後吐答案,中間是咱們的模型。整個過程就是將咱們須要的特徵 (feature) 導入模型(好比咱們用房子面積、房子離市中心的距離等,來獲得一個房價)。學習
然而在圖像識別裏,好比說你要識別一隻貓,按照傳統機器學習的思路就是把貓耳朵貓腦殼貓肚子貓毛毛貓的特徵等一堆東西給所有作出來——這特麼不累死你?機器學習的本意並不是如此的【機械化運動】,而卷積神經網絡正好能夠自動抓。因而乎貓耳朵貓腦殼貓啥啥就所有的不用作了——而後丟進模型中訓練走起就行了。然而問題就是,
ui
我用卷積神經網絡提出來的特徵到底是個什麼鬼?人工智能
在大名鼎鼎的 CS231n 中,Justin Johnson 將模型獲得的權重矩陣的行向量可視化,獲得了一串很鬼畜的圖片。這特麼什麼鬼?在不遠的過去,就有大佬對每一個神經元進行可視化,但願獲得到底是哪些輸入讓這些神經元獲得相對較高的響應。(所謂的激活函數不就是這樣的一個篩選響應的東西嗎?)[2][3]3d
可是結果第一層是長這樣的(這啥玩意?):
cdn
第二層是長這樣的(這不是高中的時候觀察的洋蔥上表皮細胞的排列嗎?):
感受仍是不大對勁,咱們看第四層好了,哎呀挺好看的——但是爲何長這樣!!
神級的可視化:.讓你聽懂神級網絡作決定的緣由
然而論文的工做就很厲害了,它是怎麼作的呢?它們將神經元組合起來,獲得一個雖然這個圖像猙獰,可是我仍是能夠勉強看得懂你是個啥玩意的結果。
論文給出了卷積神經網絡提取出來的人能看得懂的特徵(與之相對的是上面宛如洋蔥表皮細胞的可視化),就至關於咱們在以前提到的手工提出花瓶是個啥特徵(好比圓圓的,肚子胖胖的等等),哎呀這個你看,咱們經過獲得的花瓶的幾個特徵裏,最像花瓶的可不是那一個嗎?而那一個特徵,還真的是置信機率最高的。
更有意思的是你會發現其所甄別的特徵對應的位置。哎呀這下不就懂了嗎?
兩種解釋
這種可解釋性與丘成桐先生的工做不一樣[4],幾何大佬丘成桐先生試圖找到一個幾何學觀點下的對 GAN 的解釋,將成果以及凸幾何類比[5]。認爲 Discriminator 就是 WGAN 中判別器中計算 Wasserstein 距離,而 Generator 用來計算 Brenier 勢能。認爲 Brenier 勢能能夠用計算Wasserstein 距離來獲得[6]。
而這個東西在低維下是根本不須要一個 GANs 的過程的(即 Generator VS Discriminator 得 Nash 均衡),是有一個解析解的。因此說丘成桐先生不通常,他們的想法是經過最優傳輸理論及其各類降維近似,直接取代神經網絡,從而使得黑箱透明。
以上的解釋是你別來了,我用一堆東西來 Duang 的一下作的比你更好了,整個過程——嚴謹數學證實。然而咱們不能期望現階段這樣的工做一個個爆發而後瘋狂運用,這是不現實。
丘成桐:得到了數學界的諾貝爾獎(菲爾茨獎)的丘成桐先生是對近代拓撲學、代數幾何學等作出了巨大的貢獻的人。
算法權力
Google 的論文所提供的是一個權力——解釋權[7]。即解釋算法輸出的權力,這種權利主要是指我的權利——能夠解釋爲對我的有重大影響的決定,尤爲是法律上或財務上。例如,你說我想上清華,而後清華拒絕了你。你有權力知道爲啥被拒了。好比這個時候,清華表示咱們不要高考分沒到我們線上而且你又沒自主招生加分 blahblahblah。
在法律問題裁定上,假如在之前,咱們用一個什麼算法,你說哇它老牛逼了。可是有人不服咋辦?那麼這個時候,這個算法可以被認爲是可接受做爲斷定憑證的嗎?俗話說的好,罵人也要名正言順的罵人。
而問題更嚴重的是你能保證你的算法不偏不倚,是個公正的算法嗎?算法就不能有偏見嗎?OpenAI 和 DeepMind 提出一些質疑[8][9],甚至有一些暢銷書做家也提到相似的內容。
例如咱們的用來作法律裁定的算法中多是輸入一大堆我的信息,例若有種族、所住的街區等等,輸出是裁定的刑期。假如某些羣體他符合某些狀況,那麼是否是由於算法的偏好而可能被判更長的刑期?或者說,你怎麼能保證大量的輸入數據中,法官對其作出的判決是 100% 無偏見的呢?
這個時候 OpenAI 和 DeepMind 就認爲,搞不定數據輸入是否是沒問題?ok啊,我若是徹底無監督,用強化學習來作呢?那就沒有這個問題了對吧?另外一種作法是在咱們在全部的人工智能模型中創建 「不肯定性」 - 基本上可讓人類糾正將來的行爲,而不是徹底理解。然而即便如此,機器學習/深度學習算法其實仍是很難做爲一個裁定。
本文做者:limber
若是喜歡這篇文章的?對深度學習感興趣?推薦優達學城的深度學習納米學位項目,體驗一流師資、挑戰硅谷獨家實戰項目!