国产迷奸一区,国产小仙女视频一区二区,国产精品无码久久久久成人app,久久精品成人一区二区三区,97精品 ,天天干天天骚天天色,亚洲精品中文字幕不卡一区二区,www.szjiaye.cn,亚洲欧美v国产一区二区三区

  1. 首頁
  2. 大牛說
  3. 深度神經網絡的不可解釋性,可能讓自動駕駛無法實現?

深度神經網絡的不可解釋性,可能讓自動駕駛無法實現?

星河頻率

作者 / 周彥武(業內資深專家)

編輯 / 極客之心101

特斯拉為代表的單目和三目系統,對深度學習高度依賴。

在深度學習視覺感知中,目標分類與探測(detection) 是一體的,無法分割。

這就意味著,如果自動駕駛系統無法將目標進行分類,也就無法進行探測識別。這帶來的結果是,車輛在行駛過程中,遇到前方有障礙物時候,會識別為無障礙物,進而不減速直接撞上去。

訓練數據集無法完全覆蓋真實世界的全部目標,能覆蓋 10% 都已經十分了不起了,更何況真實世界每時每刻都在產生著新的不規則目標。

特斯拉多次事故都是如此,比如在中國兩次在高速公路上追尾掃地車(第一次致人死亡),在美國多次追尾消防車。還有無法識別車輛側面(大部分數據集都只采集車輛尾部圖像沒有車輛側面圖像)以及無法識別比較小的目標。

毫米波雷達容易誤判,特別是靜止目標,如金屬井蓋,金屬天橋,金屬護欄,因此毫米波雷達會自動過濾到靜止目標。

此時,自動駕駛系統需要雙目或激光雷達,這兩類傳感器都無需分類即可探測。

那么特斯拉為何不用激光雷達?真的如馬斯克所言「激光雷達價格昂貴,丑陋且不必要」嗎?背后的真正原因是什么?

01、從激光雷達算法說開去

目前,主流的激光雷達算法也是基于深度學習,深度學習視覺遇到的問題,激光雷達也可能會遇到。

盤點一下,主流的激光雷達算法經歷了三個階段:

  • 第一階段是 PointNet

  • 第二階段是 Voxel

  • 第三階段是 PointPillar

PointNet 是斯垣福大學在 2016 年提出的一種點云分類/分割深度學習框架,是開天辟地的點云深度學習框架。

眾所周知,點云在分類或分割時存在空間關系不規則的特點,因此不能直接將已有的圖像分類分割框架套用到點云上,也因此在點云領域產生了許多基于將點云體素化(格網化)的深度學習框架,取得了很好的效果。

但是,將點云體素化勢必會改變點云數據的原始特征,造成不必要的數據損失,并且額外增加了工作量,而 PointNet 采用了原始點云的輸入方式,最大限度地保留了點云的空間特征,并在最終的測試中取得了很好的效果。

有多好呢?

在 KITTI 三維目標檢測中,F-PointNet 排名第一,這比激光雷達與攝像頭融合的 MV3D 還要好。

PointNet 架構

2017 年,斯坦福大學對此做了改進,提出 PointNet++架構。

首先,PointNet 是逐點 point-wise MLP,僅僅是對每個點表征,對局部結構信息整合能力太弱 --> PointNet++的改進:采樣(sampling)和分組整合( grouping )局部鄰域。

其次,全局特征(Global Feature)直接由最大池化(Max Pooling)獲得,無論是對分類還是對分割任務,都會造成巨大的信息損失 --> PointNet++的改進:

分級特征學習框架(hierarchical feature learning framework),通過多個抽樣化( set abstraction )逐級降采樣,獲得不同規模不同層次的局部到全局的特征。

最后,分割任務的全局特征是直接復制與本地特征拼接,生成 discriminative feature 能力有限 --> PointNet++的改進:

分割任務設計了編解碼 encoder-decoder 結構,先降采樣再上采樣,使用跳過連接 skip connection 將對應層的 local-global feature 拼接。

PointNet++結構

但是 PointNet 的缺點是不是端到端的處理方式,處理點云需要大量手工作業,于是 VoxelNet 出現了。

2017年,蘋果推出基于點云的 3D 物體檢測論文《VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection》:

將三維點云劃分為一定數量的 Voxel,經過點的隨機采樣以及歸一化后,對每一個非空 Voxel 使用若干個 VFE(Voxel Feature Encoding) 層進行局部特征提取,得到 Voxel-wise Feature,然后經過 3D Convolutional Middle Layers 進一步抽象特征(增大感受野并學習幾何空間表示),最后使用 RPN(Region Proposal Network) 對物體進行分類檢測與位置回歸。

Voxel 架構

Voxel 的缺點是對 GPU 要求太高,太慢,用3080 這樣的 GPU 幀率不到 5Hz。

于是終極算法登場,這就是PointPillar,幀率達到 105Hz。

在 VoxelNet 當中,會將所有的點云切割成一個一個 Grid,我們稱之稱為 Voxel。

PointPillar 也是這樣的操作原理,但是在 z 軸上它不進行切割,相當于精簡版本的 Voxel,也可以看成 z 軸上的 Voxel 合成一個 Pillar。

這是由知名的零部件供應商安波福提出的算法,是國內車廠用的最多的算法,也是最貼近實戰的算法,而不是試驗室產品。

PointPillar 少了 Z 軸切割,而是使用 2D 骨干,這導致其精度下降,性能相較于純 2D 的視覺,提升并不明顯,特斯拉不用激光雷達很正常,而不依賴深度學習的具備可解釋性的激光雷達算法目前還未見到。

博世、奔馳豐田目前正在研究,這會是一個漫長的過程。

02、自動駕駛的關鍵問題:過于依賴深度神經網絡

深度學習有多好用呢?

不到半年,一個普通大學生就可以熟練調參了,幾乎沒有人研究激光雷達的傳統算法。

目前自動駕駛最關鍵的問題是,過于依賴不具備解釋性的深度學習或者說深度神經網絡,這點可能導致自動駕駛永遠無法實現。

在沒有高浮點算力的 GPU 出現之前,神經網絡或者說深度學習可以說完全被否定,英偉達憑一己之力撐起了半邊天。

如今 AI 是最熱門的話題,最熱門的學習方向和就業崗位,如今神經網絡已經是 AI 的全部。

實際上,當年加州大學伯克利分校計算機科學家,人類兼容人工智能中心(CHAI)主任斯圖爾特·羅素(Stuart Russell)所著作的《人工智能:一種現代的方法》(Artificial Intelligence: A Modern Approach)一書,也只有 4 頁左右的內容提到神經網絡。

然而對于自動駕駛系統而言,需要一個可解釋性

可解釋性,是指人(包括機器學習中的非專家)能夠理解模型在其決策過程中所做出的選擇(怎么決策,為什么決策和決策了什么)

因為它和安全強關聯,只有具備可解釋性才能保證安全性不斷提高,如果出了事故找不到人類思維可以理解的原因,那自然就無法解決事故,類似的事故還會發生。

而神經網絡或者說現在的人工智能最缺的就是可解釋性。

深度神經網絡缺乏歸納偏置(Inductive bias),它對未知情況的預測很不確定也不好解釋,這導致了使用深度模型時的「黑盒」困擾。

如果是線性回歸做擬合,我們可以觀測其 Y 值與以 X 向量為參數的線性函數。

如果是 Logistic 回歸,我們可以觀察其超平面對正負樣本的切分情況。

這些歸納偏置都可以證實(justify)模型的預測。

而深度神經網絡只能表明 Y 是 X 向量的某種非線性函數,該函數與數據增強、網絡結構、激活函數、歸一化等各種在訓練過程中加入的約束條件有關,這導致在實際使用中無法證實預測結果的有效性。

簡單地說,就是特斯拉搞了個算法,它無法預測在某個環境下識別目標的準確度,完全是聽天由命,為什么在某個場景下能識別,換了一個場景就無法識別,無法解釋。

康奈爾大學發布的這篇論文:《Practical Black-Box Attacks against Machine Learning》(https://arxiv.org/abs/1602.02697v4),提出了一種解決機器學習模型黑盒對抗攻擊問題的新思路。

在計算機視覺領域,對抗攻擊(adversarial attack)旨在通過向圖片中添加人眼無法感知的噪音以欺騙諸如圖像分類、目標識別等機器學習模型。

如下圖所示,輸入原圖像,圖像分類器給出的結果為「是熊貓的概率為 57.7%」,而在給原圖像加上一段噪音后,結果變成了「是長臂猿的概率為 99.3%」。

對于人類來說,這兩張圖片幾乎是一模一樣的。

但在人類看來,這兩張圖幾乎沒有任何區別。

這是人為設計的噪音,而智能駕駛領域噪音再是非人為產生的,比如下雨天的雨滴,渣土車的灰塵,嚴重的霧霾,林蔭大道的樹蔭,突然飛入的大量的麻雀等等。

除非我們真的能打開深度神經網絡黑盒,不然其中的安全隱患是永遠無法消除的。

03、深度神經網絡的「不可解釋性」將給自動駕駛帶來哪些難題?

由于神經網絡本身不可解釋,那么一些用于攻擊或防御的算法也很有可能無法用數學去解釋其原理,例如對抗樣本的遷移性。

類似的例子還體現在神經網絡的泛化、優化上。

在圖像分類方面,深度神經網絡效果確實比手工模型要好,以至于如今帶火了整個 AI 領域,肯定是因為其在某個角度觸碰到了真理,但我們既不知道是哪個角度,更不知道真理是什么。

不可解釋性,導致人和機器之間沒有辦法協同。

任何兩個主體之間要想協同,必須具備所謂的共同語言。如果機器的輸出人不懂,人的輸出機器不懂,導致人和機只能取其一,導致「1+1=1」,要么就全信機器,要么就全不信。

在很多風險敏感型的領域,醫療、軍事、金融、工業,人不可能完全信賴一個機器的決策。

這種情況下,如果無法理解機器的輸出,就會導致沒有辦法在這樣的風險敏感型領域放心應用這樣的技術和系統。

不可解釋性,導致無法復現事故或錯誤。

當前主流人工智能方法都有一個基本的統計學上的假設——「獨立同分布」,即我們所訓練的模型和所測試的模型要求是一個分布。

換句話說,就是要求測試模型的數據和訓練模型的數據「長得像」,只有在長得像的情況下,我們現在這個模型的性能才是有保障的。

如果測試這個模型的數據分布和訓練分布存在偏差,從理論和實際角度來講,這個模型的性能不穩定且沒有保障。

在實際的應用過程中,其實很難保證一個模型的測試分布和訓練分布是一致的。

比如自動駕駛,我們在開發自動駕駛汽車視覺模塊的時候會采集很多特征來訓練這樣的視覺模塊,訓練出來以后,再在特定的訓練數據分布下訓練該模塊。

當實際產品上線后,沒有辦法保證司機會將該汽車駕駛到什么樣的城市,以及這個城市的分布和訓練數據分布是否大體一致——就像現在衡量算法都是去 KITTI 打榜,這樣的成績實際毫無意義。

說個有趣的例子,SpamAssassin 是一個垃圾郵件檢測的開源項目,它在歷史上出現過一個神奇的 bug,會把所有 2010 年之后的郵件全部判別為垃圾郵件。

因為在垃圾郵件這種強對抗場景里攻擊方總在變換不同花樣,它的 Bayesian 判別器按照年份調整了每個特征的權重,這本是一個合理的做法,但是訓練集里沒有 2010 年之后的數據,該判別器就本著寧可錯殺也不放過的偏置將所有未知的郵件全部判斷為垃圾郵件。

當然,SpamAssassin 的模型偏置提供了方便理解的證實預測的理由,這個問題很快就被找到并修復。

究其原因,由于是貝葉斯網絡,是具備可解釋性的,所以問題最終還是解決了,但深度神經網絡可不具備可解釋性,它可能在某一個領域持續犯錯,但卻無法修正,也就是說它無法迭代。

舉例來說,無論特斯拉的 FSD 進化到哪個版本,它高度依賴深度神經網絡,它可能跟最初版本沒有任何提高,也就沒必要進行 OTA 了。

不可解釋性意味著其安全邊界無法界定。

這不僅是說完全自動駕駛的 L5 不可能實現,局限在某個區域或某個限制條件下的自動駕駛 L4 也無法實現。

道理很簡單,你不知道系統究竟在哪個范圍內是安全的,這個限制區域或限制條件是無法界定的。

不可解釋性,導致自動駕駛對算力無止境的追求。

地圖四色定理的證明,數學家將平面圖的構型分成 1936 種,然后用計算機逐一驗證。當然在足夠的算力下,這可以證明地圖四色定理。

但是在這個過程中:沒有新穎理論提出。換言之,機械蠻力代替了幾何直覺。

神經網絡深度學習也是如此,一切都是靠蠻力。

幾千萬甚至上億參數,通過調整參數擬合輸入與輸出。目前所有的機器學習都是這樣。

但人類不是如此,計算機圖像識別里圖像會被分成像素,而人類的視覺里沒有像素概念,而是整體概念,比如一個蘋果,計算機看到的是幾百萬像素,人類看到的是一個整體,人類只需要兩三個樣本甚至一個樣本就能學會識別蘋果,計算機需要幾百萬個樣本,并且準確度不高。

神經網絡只知道相關性,不知道因果性

神經網絡只知道這個測試與樣本有強相關,可能是蘋果,而無法解釋為什么有關聯,為什么是蘋果。

因為無法解釋,神級網絡就不斷增加深度加大數據集。目前看來,貌似這兩種做法能提高性能。

當然這只是猜測,畢竟深度神經網絡不可解釋。

這就帶來另一個問題,那就是對算力的追求永無止境。

英偉達當然喜聞樂見,但對消費者來說就是成本不斷增加。

業內把訓練神經網絡昵稱為煉丹——類似于中世紀的煉金術和中國古代的煉丹,道士們不知道最后煉出來的是什么,反正就吃了。有時候確實有效果,也有皇帝因為吃多了仙丹而死,例如雄才大略的李世民。

那么,將來有沒可能出現可解釋的深度神經網絡?

人類的基礎數學理論已經停滯了近百年,沒有重大突破。換句話說,人類智慧已經進入瓶頸期,想要具備可解釋的深度神經網絡完全不可能。

來源:第一電動網

作者:星河頻率

本文地址:http://www.155ck.com/kol/175564

返回第一電動網首頁 >

收藏
66
  • 分享到:
發表評論
新聞推薦
第一電動網官方微信

反饋和建議 在線回復

您的詢價信息
已經成功提交我們稍后會聯系您進行報價!

第一電動網
Hello world!
--> 主站蜘蛛池模板: 泾源县| 商水县| 军事| 青神县| 平定县| 察隅县| 浠水县| 蚌埠市| 永州市| 华容县| 通河县| 南平市| 河津市| 水富县| 家居| 喀喇| 仙居县| 宁明县| 新野县| 大渡口区| 镇沅| 怀来县| 金山区| 浠水县| 繁峙县| 合肥市| 格尔木市| 云浮市| 周宁县| 泾川县| 鄱阳县| 施甸县| 德惠市| 广水市| 龙山县| 鄄城县| 大石桥市| 温宿县| 井陉县| 遂平县| 兴文县|