深度學習計算機視覺極限將至,我們該如何找到突破口?

機器之心發表於2019-02-13

選自the Gradient,作者:Alan L. Yuille、Chenxi Liu,機器之心編譯。

深度學習是近年來人工智慧技術發展的核心,雖然取得了巨大成功,但它具有明顯的侷限性。與人類視覺系統相比,深度學習在通用性、靈活性和適應性上要差很多,而在遇到複雜的自然影象時,深度學習可能還會遇到機制性困難。本文中,來自約翰霍普金斯大學的學者們向我們介紹了深度學習的幾大極限,以及如何解決這些問題的思路。

研究人員表示,目前形式的深度神經網路似乎不太可能是未來建立通用智慧機器或理解思維/人類大腦的最佳解決方案,但深度學習的很多機制在未來仍會繼續存在。

本文是《Deep Nets: What have they ever done for Vision?》論文的精簡版。

  • 論文連結:https://arxiv.org/pdf/1805.04025.pdf

深度學習的歷史

我們現在正目睹的是人工智慧的第三次崛起。前兩波發生在 1950-1960 年代和 1980-1990 年代——當時都產生了相當大的影響,卻也都慢慢冷卻下來。這是因為當時的神經網路既沒有實現本該達成的效能提升,也沒有幫助我們理解生物的視覺系統。第三次浪潮:21 世紀初——至今,此次與前兩次不同,深度學習在很多基準測試和現實應用上已經大幅超越了生物的能力。雖然深度學習的大多數基本思想在第二次浪潮中已經發展完善,但其能力在大型資料集和計算機算力(特別是 GPU)發展完善之前是無法釋放的。

深度學習的沉浮反映了學派的流行,以及不同演算法的熱度。第二次浪潮讓我們在高期待——低成果的發展中看到了經典 AI 的侷限性,這就是在 20 世紀 80 年代中期出現 AI 寒冬的原因。第二波浪潮的退卻轉化為支援向量機、核心方法以及相關方法的崛起。我們被神經網路研究者的成果驚豔,儘管其效果令人失望,但隨著時間的發展,它們又再次興起。今天,我們很難找到與神經網路無關的研究了——這同樣也不是一個好的現象。我們不禁有些懷疑:如果人工智慧領域的學者們追求更多不同的方法,而不是跟從流行趨勢,這個行業或許會發展得更快。令人擔憂的是,人工智慧專業的學生們經常完全忽略舊技術,只顧追逐新趨勢。

成功與失敗

在 AlexNet 橫空出世之前,計算機視覺社群對於深度學習持懷疑態度。2011 年,AlexNet 在 ImageNet 影象識別競賽中橫掃了所有競爭對手,隨後幾年,研究人員提出了越來越多效能更好的物件分類神經網路架構。同時,深度學習也很快適應了其他視覺任務,如目標檢測,其中影象包含一個或多個物體。在這種任務中,神經網路會對初始階段的資訊進行增強而確定最後的目標類別與位置,其中初始階段提出了物件的可能位置和大小。這些方法在 ImageNet 前最為重要的目標識別競賽——PASCAL 目標識別挑戰上優於此前的最佳方式,即可變形部件模型(Deformable Part Model)。其他深度學習架構也在一些經典任務上有了很大的提升,如下圖:

深度學習計算機視覺極限將至,我們該如何找到突破口?

圖 1. 深度學習可以執行很多不同視覺任務。其中包括邊界檢測、語義分割、語義邊界、曲面法線、顯著度、人體,以及目標檢測。

但是,儘管深度學習超越了此前的一些技術,它們卻並不能用於通用任務。在這裡,我們可以定義出三個主要限制。

首先,深度學習幾乎總是需要大量標註資料。這使得計算機視覺的研究者們傾向於解決易於解決——而不是真正重要的問題。

有一些方法可以減少監督的需求,包括遷移學習、few-shot 學習、無監督學習以及弱監督學習。但到目前為止,它們的成就並不如監督學習那樣令人印象深刻。

第二,深度學習在基準測試資料集上表現良好,但在資料集之外的真實世界影象上可能表現很差。所有資料集都有自己的偏差。這種偏差在早期視覺資料集中非常明顯,研究人員發現神經網路會利用資料集的偏差「投機取巧」,比如利用背景進行判斷(如在 Caltech101 中檢測魚曾經非常容易,因為魚圖是唯一以水為背景的圖)。儘管通過使用大資料集和深度神經網路可以減少這一現象,但問題仍然存在。

在下圖中,深度神經網路在 ImageNet 上訓練以識別沙發,但卻可能因為示例圖片數量不足而無法成功。深度神經網路是偏向於反「特殊情況」的,模型不會太考慮資料集中出現較少的情況。但在現實世界的應用中,這些偏差很成問題,將這樣的系統用於視覺檢測有可能導致嚴重後果。例如用於訓練自動駕駛汽車的資料集幾乎不會包含坐在路中間的嬰兒。

深度學習計算機視覺極限將至,我們該如何找到突破口?

圖 2:UnrealCV 允許視覺研究人員簡單操縱合成場景,比如改變沙發的視角。我們發現 Faster-RCNN 檢測沙發的平均精度(AP)在 0.1 到 1.0 範圍內,顯示出對視角的極度敏感性。這可能是因為訓練中的偏差導致 Faster-RCNN 更傾向於特定的視角。

第三,深度網路對影象的改變過於敏感,而這些改變在人類看來可能並不影響對圖的判斷。深度網路不僅對標準對抗攻擊(會導致難以察覺的影象變化)敏感,而且對環境的變化也過於敏感。圖 3 顯示了將吉他 PS 成雨林中的猴子的效果。這導致深度網路將猴子誤識為人類而且將吉他視作鳥,大概是因為拿吉他的更有可能是人類而不是猴子,而出現在雨林裡猴子身邊的更有可能是鳥而不是吉他。最近的研究給出了很多關於深度網路對環境過於敏感的案例,如將大象放進房間。

深度學習計算機視覺極限將至,我們該如何找到突破口?

圖 3:新增遮擋致使深度網路失靈。左:用摩托車進行遮擋後,深度網路將猴子識別為人類。中:用自行車進行遮擋後,深度網路將猴子識別為人類,而且叢林將網路對車把的識別誤導為鳥。右:用吉他進行遮擋後,深度網路將猴子識別為人類,而且叢林將網路對吉他的識別誤導為鳥。

對背景的過度敏感可以歸咎於資料集有限的規模。對於任意的物件,資料集中只能包含有限數量的背景,因此神經網路存在偏好。例如,在早期的影象標註資料集中,我們觀察到長頸鹿只會出現在樹的附近,因此生成的標註沒有提及影象中沒有樹的長頸鹿,儘管它們是最主要的物件。

對於深度網路等資料驅動型方法來說,捕獲背景大量變化的難題以及探索大量噪聲因素的需要是一個很大的問題。確保網路可以解決所有這些問題似乎需要無窮大的資料集,這又會給訓練和測試資料集帶來巨大的挑戰。

「大型資料集」還不夠大

組合性爆炸

以上所提到的所有問題都未必是深度學習的癥結所在,但它們是真正問題的早期訊號。也就是說,現實世界中的影象資料集組合起來非常大,因此無論多大的資料集都無法表徵現實世界的複雜性。

組合性大是什麼意思?想象一下通過從目標字典中選擇目標並將它們放在不同的配置中來構建一個可視場景。實現這一任務的方法數量可以達到指數級。即使是含有單個目標的影象也能擁有類似的複雜性,因為我們可以用無數種方法對其進行遮擋。其背景也有無數種變化的可能。

儘管人類能夠自然地適應視覺環境中的種種變化,但深度神經網路更加敏感、易錯,如圖 3 所示。我們注意到,這種組合性爆炸在一些視覺任務中可能不會出現,深度神經網路在醫學影象中的應用通常非常成功,因為其背景的變化相對較少(如胰腺和十二指腸總是離得很近)。但是對於許多應用來說,如果沒有一個指數級的大型資料集,我們就無法捕捉到現實世界的複雜性。

這一缺陷帶來了一些重大問題,因為在有限隨機樣本上進行訓練、測試模型這一標準正規化變得不切實際。這些樣本量永遠無法大到可以表徵資料底層分佈的程度。因此我們不得不面對以下兩個新問題:

1. 在需要龐大資料集才能捕獲現實世界組合複雜性的任務中,如何在規模有限的資料集上訓練演算法才能使其表現良好?

2. 如果只能在有限子集上測試,我們如何才能有效測試這些演算法以確保它們在龐大資料集上表現良好?

克服組合性爆炸

從現有形式來看,深度神經網路等方法很可能無法克服組合性爆炸這一難題。無論是訓練還是測試,資料集似乎永遠不夠大。以下是一些潛在的解決方案。

組合性

組合性是一種基本原則,可以詩意地表述為「一種信仰的體現,相信世界是可知的,人類可以拆解、理解並按照自己的意願重組事物」。此處的關鍵假設在於,結構是分層的,由更基本的子結構按照一組語法規則組合而成。這意味著,子結構和語法可以從有限的資料中習得,然後泛化到組合的場景中。

與深度網路不同,組合性模型(compositional model)需要結構化的表徵,這些表徵明確地表明其結構和子結構。組合性模型具備超越所見資料的推理能力,可以推理系統、進行干涉、實施診斷並基於相同的底層知識結構解決許多不同的問題。Stuart Geman 曾說過,「世界是組合的,或者說上帝是存在的,」否則上帝就要手工焊接人類智慧了。儘管深度神經網路擁有某種形式的複雜性,如高階特徵由來自低階特徵的響應組合而成,但這並不是本文中提到的組合性。

深度學習計算機視覺極限將至,我們該如何找到突破口?

圖 4:從(a)到(c),可變性遞增並使用了遮擋。(c)是一個龐大的組合資料集示例,本質上和驗證碼相同。有趣的是,關於驗證碼的研究表明,組合性模型的效能很好,但深度神經網路的表現卻很差。

圖 4 是關於組合性的一個示例,與合成分析有關。

組合性模型的若干概念優勢已經體現在一些視覺問題中,如使用相同的底層模型執行多個任務和識別驗證碼。其它非視覺示例也表明了相同的論點。嘗試訓練進行智商測試的深度網路沒有取得成功。這一任務的目標是預測一個 3x3 網格中缺失的影象,其它 8 個格子的影象都已給出,任務中的底層規則是組合性的(干擾可以存在)。相反地,對於一些自然語言應用,神經模組網路的動態架構似乎足夠靈活,可以捕捉到一些有意義的組合,其效能優於傳統的深度學習網路。實際上,我們最近證實,經過聯合訓練後,各個模組確實實現了它們預期的組合功能(如 AND、OR、FILTER(RED) 等)。

組合性模型有很多理想的理論特性,如可解釋、可生成樣本。這使得錯誤更容易診斷,因此它們比深度網路等黑箱方法更難被欺騙。但學習組合性模型很難,因為它需要學習構件和語法(甚至語法的性質也是有爭議的)。並且,為了通過合成進行分析,它們需要擁有目標和場景結構的生成模型。除了一些例外,如臉、字母和規則紋理影象,將分佈放在影象上很難。

更重要的是,處理組合性爆炸需要學習 3D 世界的因果模型以及這些模型如何生成影象。對人類嬰兒的研究表明,他們通過建立預測所處環境結構的因果模型來學習。這種因果理解使他們能夠從有限的資料中學習並泛化到新環境中。這類似於將牛頓定律和太陽系的托勒密模型進行對比,牛頓定律以最少的自由引數給出了因果理解,而托勒密模型給出了非常準確的預測,但需要大量的資料來確定其細節。

在組合資料上測試

在現實世界的組合複雜度上測試視覺演算法的一個潛在挑戰是,我們只能在有限的資料上進行測試。博弈論通過關注最壞的案例而不是一般的案例來解決這個問題。正如我們之前所說的,如果資料集沒有捕捉到問題的組合複雜度,那麼一般案例在有限大小資料集上的結果可能沒有意義。很明顯,如果目標是開發用於自動駕駛汽車或醫學影象中診斷癌症的視覺演算法,那將注意力放在最壞的案例上是有意義的,因為演算法的失敗會導致嚴重的後果。

如果能夠在低維空間中捕捉故障模式,如立體的危險因素,我們就可以用計算機圖形和網格搜尋來研究它們。但對於大多數視覺任務,尤其是涉及組合資料的任務來說,很難識別出少數可以被隔離或測試的危險因素。一個策略是將標準對抗攻擊的概念擴充套件到包含非區域性結構,這可以通過允許導致影象或場景改變但不會顯著影響人類感知的複雜操作(如遮擋或改變被觀察物體的物理屬性)來實現。將這一策略應用於處理組合資料的視覺演算法仍然頗具挑戰性。但,如果在設計演算法時考慮到了組合性,那它們的顯式結構可能使得診斷並確定它們的故障模式成為可能。

小結

幾年前,Aude Oliva 和 Alan Yuille(一作)共同組織了一場由美國國家科學基金會資助的計算機視覺前沿研討會(MIT CSAIL 2011)。會議鼓勵大家坦誠交換意見。與會人員對於深度網路在計算機視覺方面的潛力存在巨大分歧。Yann LeCun 大膽預測,所有人都將很快使用深度網路。他的預測是對的。深度網路的成功令人矚目,還使計算機視覺變得非常熱門,大大增加了學界和業界的互動,促使計算機視覺被應用於很多領域並帶來很多其它重要的研究成果。即便如此,深度網路還存在巨大挑戰,而我們要實現通用人工智慧和理解生物視覺系統,就必須克服這些挑戰。我們的一些擔憂與最近對深度網路的批評中提到的類似。隨著研究人員開始在越來越現實的條件下處理越來越複雜的視覺任務,可以說最嚴峻的挑戰是如何開發能夠處理組合性爆炸的演算法。雖然深度網路會是解決方案的一部分,但我們認為還需要涉及組合原則和因果模型的互補方法,以捕捉資料的基本結構。此外,面對組合性爆炸,我們要再次思考如何訓練和評估視覺演算法。

原文連結:https://thegradient.pub/the-limitations-of-visual-deep-learning-and-how-we-might-fix-them/


相關文章