操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    機器之心報道

    機器之心編輯部

    魚和熊掌我都要!BAIR公布神經支持決策樹新研究,兼顧準確率與可解釋性。

    隨著深度學習在金融、醫療等領域的不斷落地,模型的可解釋性成了一個非常大的痛點,因為這些領域需要的是預測準確而且可以解釋其行為的模型。然而,深度神經網絡缺乏可解釋性也是出了名的,這就帶來了一種矛盾??山忉屝匀斯ぶ悄埽╔AI)試圖平衡模型準確率與可解釋性之間的矛盾,但 XAI 在說明決策原因時并沒有直接解釋模型本身。

    決策樹是一種用于分類的經典機器學習方法,它易于理解且可解釋性強,能夠在中等規模數據上以低難度獲得較好的模型。之前很火的微軟小冰讀心術極可能就是使用了決策樹。小冰會先讓我們想象一個知名人物(需要有點名氣才行),然后向我們詢問 15 個以內的問題,我們只需回答是、否或不知道,小冰就可以很快猜到我們想的那個人是誰。

    周志華老師曾在「西瓜書」中展示過決策樹的示意圖:

    決策樹示意圖。

    盡管決策樹有諸多優點,但歷史經驗告訴我們神經網絡 損失函數種類,如果遇上 這一級別的數據,其性能還是遠遠比不上神經網絡。

    「準確率」和「可解釋性」,「魚」與「熊掌」要如何兼得?把二者結合會怎樣?最近,來自加州大學伯克利分校和波士頓大學的研究者就實踐了這種想法。

    他們提出了一種神經支持決策樹「- trees」,在 上取得了 75.30% 的 top-1 分類準確率,在保留決策樹可解釋性的同時取得了當前神經網絡才能達到的準確率,比其他基于決策樹的圖像分類方法高出了大約 14%。

    這種新提出的方法可解釋性有多強?我們來看兩張圖。

    中深層神經網絡可視化后是這樣的:

    馬尾神經損失_神經網絡 損失函數種類_bp神經網絡的損失成本函數

    而論文所提方法在 上分類的可視化結果是這樣的:

    哪種方法在圖像分類上的可解釋性強已經很明顯了吧。

    決策樹的優勢與缺陷

    在深度學習風靡之前,決策樹是準確性和可解釋性的標桿。下面,我們首先闡述決策樹的可解釋性。

    如上圖所示,這個決策樹不只是給出輸入數據 x 的預測結果(是「超級漢堡」還是「華夫薯條」),還會輸出一系列導致最終預測的中間決策。我們可以對這些中間決策進行驗證或質疑。

    然而,在圖像分類數據集上,決策樹的準確率要落后神經網絡 40%。神經網絡和決策樹的組合體也表現不佳,甚至在 數據集上都無法和神經網絡相提并論。

    這種準確率缺陷使其可解釋性的優點變得「一文不值」:我們首先需要一個準確率高的模型,但這個模型也要具備可解釋性。

    走近神經支持決策樹

    現在,這種兩難處境終于有了進展。加州大學伯克利分校和波士頓大學的研究者通過建立既可解釋又準確的模型來解決這個問題。

    研究的關鍵點是將神經網絡和決策樹結合起來,保持高層次的可解釋性,同時用神經網絡進行低層次的決策。如下圖所示,研究者稱這種模型為「神經支持決策樹(NBDT)」,并表示這種模型在保留決策樹的可解釋性的同時,也能夠媲美神經網絡的準確性。

    馬尾神經損失_神經網絡 損失函數種類_bp神經網絡的損失成本函數

    在這張圖中,每一個節點都包含一個神經網絡,上圖放大標記出了一個這樣的節點與其包含的神經網絡。在這個 NBDT 中,預測是通過決策樹進行的,保留高層次的可解釋性。但決策樹上的每個節點都有一個用來做低層次決策的神經網絡,比如上圖的神經網絡做出的低層決策是「有香腸」或者「沒有香腸」。

    NBDT 具備和決策樹一樣的可解釋性。并且 NBDT 能夠輸出預測結果的中間決策,這一點優于當前的神經網絡。

    如下圖所示,在一個預測「狗」的網絡中,神經網絡可能只輸出「狗」,但 NBDT 可以輸出「狗」和其他中間結果(動物、脊索動物、肉食動物等)。

    此外,NBDT 的預測層次軌跡也是可視化的,可以說明哪些可能性被否定了。

    與此同時,NBDT 也實現了可以媲美神經網絡的準確率。在 、 和 等數據集上,NBDT 的準確率接近神經網絡(差距

    神經支持決策樹是如何解釋的

    對于個體預測的辯證理由

    最有參考價值的辯證理由是面向該模型從未見過的對象。例如,考慮一個 NBDT(如下圖所示),同時在 Zebra 上進行推演。雖然此模型從未見過斑馬,但下圖所顯示的中間決策是正確的-斑馬既是動物又是蹄類動物。對于從未見過的物體而言,個體預測的合理性至關重要。

    對于模型行為的辯證理由

    此外,研究者發現使用 NBDT,可解釋性隨著準確性的提高而提高。這與文章開頭中介紹的準確性與可解釋性的對立背道而馳,即:NBDT 不僅具有準確性和可解釋性,還可以使準確性和可解釋性成為同一目標。

    層次結構(左)不如 層次結構(右)。

    神經網絡 損失函數種類_馬尾神經損失_bp神經網絡的損失成本函數

    例如, 的準確度比 上的 低 4%。相應地,較低精度的 ^ 6 層次結構(左)將青蛙,貓和飛機分組在一起且意義較小,因為很難找到三個類共有的視覺特征。而相比之下,準確性更高的 層次結構(右)更有意義,將動物與車完全分離開了。因此可以說,準確性越高,NBDT 就越容易解釋。

    了解決策規則

    使用低維表格數據時,決策樹中的決策規則很容易解釋,例如,如果盤子中有面包,然后分配給合適的孩子(如下所示)。然而,決策規則對于像高維圖像的輸入而言則不是那么直接。模型的決策規則不僅基于對象類型,而且還基于上下文,形狀和顏色等等。

    此案例演示了如何使用低維表格數據輕松解釋決策的規則。為了定量解釋決策規則,研究者使用了 的現有名詞層次;通過這種層次結構可以找到類別之間最具體的共享含義。例如神經網絡 損失函數種類,給定類別 Cat 和 Dog, 將反饋哺乳動物。在下圖中,研究者定量驗證了這些 假設。

    左側從屬樹(紅色箭頭)的 假設是 。右邊的 假設(藍色箭頭)是 。

    值得注意的是,在具有 10 個類(如 )的小型數據集中,研究者可以找到所有節點的 假設。但是,在具有 1000 個類別的大型數據集(即 )中,則只能找到節點子集中的 假設。

    How it Works

    - 決策樹的訓練與推斷過程可分解為如下四個步驟:

    為決策樹構建稱為誘導層級「 」的層級;

    該層級產生了一個稱為樹監督損失「Tree Loss」的獨特損失函數;

    通過將樣本傳遞給神經網絡主干開始推斷。在最后一層全連接層之前,主干網絡均為神經網絡;

    以序列決策法則方式運行最后一層全連接層結束推斷,研究者將其稱為嵌入決策法則「 Rules」。

    馬尾神經損失_bp神經網絡的損失成本函數_神經網絡 損失函數種類

    - 決策樹訓練與推斷示意圖。

    運行嵌入決策法則

    這里首先討論推斷問題。如前所述,NBDT 使用神經網絡主干提取每個樣本的特征。為便于理解接下來的操作,研究者首先構建一個與全連接層等價的退化決策樹,如下圖所示:

    以上產生了一個矩陣-向量乘法,之后變為一個向量的內積,這里將其表示為$\hat{y}$。以上輸出最大值的索引即為對類別的預測。

    簡單決策樹(naive tree):研究者構建了一個每一類僅包含一個根節點與一個葉節點的基本決策樹,如上圖中「B—Naive」所示。每個葉節點均直接與根節點相連,并且具有一個表征向量(來自 W 的行向量)。

    使用從樣本提取的特征 x 進行推斷意味著,計算 x 與每個子節點表征向量的內積。類似于全連接層,最大內積的索引即為所預測的類別。

    全連接層與簡單決策樹之間的直接等價關系,啟發研究者提出一種特別的推斷方法——使用內積的決策樹。

    構建誘導層級

    該層級決定了 NBDT 需要決策的類別集合。由于構建該層級時使用了預訓練神經網絡的權重,研究者將其稱為誘導層級。

    具體地,研究者將全連接層中權重矩陣 W 的每個行向量,看做 d 維空間中的一點,如上圖「Step B」所示。接下來,在這些點上進行層級聚類。連續聚類之后便產生了這一層級。

    馬尾神經損失_神經網絡 損失函數種類_bp神經網絡的損失成本函數

    使用樹監督損失進行訓練

    考慮上圖中的「A-Hard」情形。假設綠色節點對應于 Horse 類。這只是一個類,同時它也是動物(橙色)。對結果而言,也可以知道到達根節點(藍色)的樣本應位于右側的動物處。到達節點動物「」的樣本也應再次向右轉到「Horse」。所訓練的每個節點用于預測正確的子節點。研究者將強制實施這種損失的樹稱為樹監督損失(Tree Loss)。換句話說,這實際上是每個節點的交叉熵損失。

    使用指南

    我們可以直接使用 包管理工具來安裝 nbdt:

    pip?install?nbdt

    安裝好 nbdt 后即可在任意一張圖片上進行推斷,nbdt 支持網頁鏈接或本地圖片。

    nbdt?https://images.pexels.com/photos/126407/pexels-photo-126407.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=32

    #?OR?run?on?a?local?image
    nbdt?/imaginary/path/to/local/image.png

    不想安裝也沒關系,研究者為我們提供了網頁版演示以及 Colab 示例,地址如下:

    下面的代碼展示了如何使用研究者提供的預訓練模型進行推斷:

    from?nbdt.model?import?SoftNBDT
    from?nbdt.models?import?ResNet18,?wrn28_10_cifar10,?wrn28_10_cifar100,?wrn28_10??#?use?wrn28_10?for?TinyImagenet200

    model?=?wrn28_10_cifar10()
    model?=?SoftNBDT(
    ??pretrained=True,
    ??dataset='CIFAR10',
    ??arch='wrn28_10_cifar10',
    ??model=model)

    另外,研究者還提供了如何用少于 6 行代碼將 nbdt 與我們自己的神經網絡相結合,詳細內容請見其 開源項目。

    機器之心 CVPR 2020 線上分享第二期,我們邀請到曠視研究院基礎模型組實習生、北京大學軟件工程系碩士楚選耕為我們分享 Oral 論文《 in : One , 》,歡迎讀者們參與報名。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有