2019 年對於人工智慧領域的發展是關鍵的一年。一方面,許多趁著 AI 的風口展開的專案紛紛慘淡收場;另一方面,也有不少人工智慧產品透過了市場的檢驗,並獲得了寶貴的經驗資料以進一步打磨產品。人工智慧研究的發展離不開產業界的支援,研究成果又可以反過來推動產業升級。而人工智慧產品的落地除了演算法本身以外,更離不開商業上的場景適配及優秀的工程實現等支援,因此學界和業界關注點的差別是巨大的。
本次對於 CVPR2019 接收論文的探討筆者想專注於學術研究於業界的貢獻——以從業者的角度,討論怎樣的研究對於工業產品有更高的借鑑價值。當然,從產品角度看來有些「無用」的研究仍然是十分重要、需要投入資源的,只不過已經有大量關於學術會議的文章集中於討論此類基礎、創新的研究,因此筆者不妨「另闢蹊徑」。
對於一位工程師來講,應用於產品的演算法需要明確應用範圍、使用的損失函式/正則化手段等超引數需要高效且有合理的理由、演算法開發應當儘可能自動化。本篇文章從這三個方面各選取了 1-2 篇文章進行討論。所選的文章的作者大都與工業界有些聯絡,希望能夠從恰當的方面提升人工智慧產品的表現,並且一定程度上保證演算法落地的簡單性。
論文討論
1. Direct Object Recognition Without Line-of-Sight Using Optical Coherence
連結:https://arxiv.org/pdf/1903.07705.pdf
本文一作 Xin Lei 來自合刃科技,這是一家專注於全息全頻機器視覺系統研發的公司。曾經榮獲機器之心評選的 2017 年中國 10 大最具潛力早期 AI 公司。
可能由於作者來自工業界,文章的出發點十分實際——目前的機器視覺演算法主要集中研究有直接視線(direct line-of-sight)的物體,即感測器(相機、雷達、鐳射等)直接作用於物體成像。這些演算法所取得的表現已經十分優秀,但在某些產品的實際應用中,我們往往希望演算法即使在沒有直接視線的時候也能夠至少有一定的表現。比如在自動駕駛中,汽車如果能夠識別拐角處的行人或障礙物,就能提前做出應對。
早於 2014 年, Singh 等人就提出過利用全息影像來達到無視線直接視覺化物體的方法,不過,全息技術要在工業界產品中應用具有一定的挑戰性。基於此,作者直接利用鐳射——在工業界的應用廣泛得多的感測器——在牆面上的散射光來複原無直接視線的物體。
光不僅有強度(intensity)資訊,更包含了相位資訊。普通光源發出的是非相干光(incoherent light),據此獲得的照片將會丟失相位資訊。而根據鐳射等相干光的拍攝的照片強度依賴於反射光源的物體的幾何形狀和相對於影像的位置,因此,拍攝具有複雜表面幾何形狀的物體折射的相干光,影像上會呈現複雜的、看似隨機的干涉圖案,即散斑圖案。相位資訊由散斑圖案中的光強度的明暗分佈表示。
本質上,該方法和全息影像利用的都是鐳射的相干性,只是作者將實驗設定簡化成為只利用一束鐳射,這樣之後在產品上的部署會更簡單。
上圖左給出了一個例子——模擬手寫數字的散斑圖案。頂行中的影像是來自 MNIST 資料集的手寫數字的原始影像,而底行中的影像是與頂行中的數字相對應的散斑圖案。在人眼看來,上圖中的底行影像未免有些嘈雜,並且沒有明顯的模式。作者在本文中證明了深度神經網路可以有效的學習散斑團中包含的物件資訊並且執行物件識別。實際上,相位資訊往往是十分重要的。雖然目前普遍的研究方法是將許多感測器訊號直接轉化為一般影像——如將聲音訊號轉化為時頻譜(spectrogram)然後使用 cnn 識別,這種方法的好處是更加直觀——筆者在參與的研發專案中發現使用複數卷積將傅立葉變換後的雷達訊號的虛數部分也納入神經網路中能夠帶來準確率的大幅提升。
此外,從上圖右可以看出,不僅僅不同的數字、姿勢等模式可以形成不同的散斑圖案,不同的人體折射的鐳射也會形成不同的散斑圖案,因為不同人的身材等特徵不同。這會給識別任務造成一定的困難。
作者一共提供了 4 種實驗情況,分別是 1. 以牆壁阻擋物體和相機之間的直接視線,鐳射位於物體一側; 2. 以牆壁阻擋物體和相機之間的直接視線,鐳射位於相機一側;3. 以旋轉的牆壁阻擋物體和相機之間的直接視線,鐳射位於物體一側;4. 以牆壁兩次阻擋物體和相機之間的直接視線,鐳射位於物體一側。見下圖示意:
作者使用了兩種神經網路——simpleNet(由 4 個卷積層和一個全連線層)和 Resnet18,前者用於手寫數字的識別,後者則用於人體姿勢的識別。最終的模型表現如下:
表中提供的結果有基於實驗的,也有基於模擬的,為什麼做出這樣的選擇作者沒有做出解釋。總體來說模型的準確率非常高,全部高於 90%,相對於目前手寫數字識別準確率可以達到 99% 以上的表現也沒有差很多。這裡值得注意的是模型在實驗設定 1、2、4 的模擬資料上表現完全一樣,筆者本來期待的準確率是實驗設定 1>2>4,因為光強度在經過牆壁漫反射後應該會降低,從而導致訊雜比低得多,識別精度也應該相應降低。這裡沒有出現這種情況筆者猜測是實驗環境比較理想,加上距離較近,在幾次反射中也沒有損失太多資訊。
圖 3 顯示了神經網路(resnet-18)識別人體姿勢散斑模擬圖案結果,這裡的結果全部是基於模擬得到的結果,且僅使用了第一種實驗設定,因此可以預見在實驗資料上準確度應該還會進一步下降。10 個姿勢的平均識別準確率為 78.18%,最高可以達到 91%,最低則只有 56%,相對於手寫數字識別的表現來說是一個比較大的下降。不過,如果使用的神經網路經過更細緻的調優,這部分準確率的損失也許能夠被彌補。
這裡作者使用的資料質量已經是在相當理想的情況下才可能獲得的——無背景、僅有檢測目標且需識別的動作也較明顯。另外一些離落地還較遠的點有:在大部分實驗場景中作者將鐳射設定在物體一側而非相機一側;實驗場景較小,鐳射離物體和牆壁都非常近——作者也提到未來可以使用邊緣發光二極體鐳射器等能夠發射發散光束的鐳射器來增加面積。
但本文提出的方法也有其他突出優點——因為相干源是單色的神經網路僅需要使用灰度影像,這可以減小模型大小並加快執行速度;影像中的每個區域都包含被拍攝物體的全部資訊,即便部分圖案被遮擋也不影響演算法的工作,相對來說不像一般的 CNN 那麼依賴成像的質量,同時也可以減小引數的數量。
總體來看,筆者認為目前該演算法在作者舉例的自動駕駛等場景中得到應用的可能性暫時還比較小——僅考慮相機需要拍攝到被折射的鐳射所形成的散斑圖案就已經是一個很大的問題——但在一些單調的場景中也許已經可以找到用武之地。
2. Precise Detection in Densely Packed Scenes
連結:https://arxiv.org/pdf/1904.00853.pdf
本文一作 Eran Goldman 來自 Trax retail,是一名高階研發工程師。專門開發大規模細粒度結構化分類解決方案,以及在擁擠場景中進行物體檢測。
本文也是在 Eran Goldman 所專注的領域——擁擠場景——下所做出的研究,這些場景通常是人造的,例如貨架上密集拜訪的商品、交通和城市景觀影像。儘管在現實世界存在著大量此類環境,但它們在目前常用的神經網路訓練/檢測資料集中卻較少被收錄。因此,現有模型的表現往往在這種資料集上大幅下降。這一點也是筆者在前文中提到的,目前很多工程師都詬病深度學習使用的資料集仍然與產品真正面對的情況相去甚遠——大部分物體識別的圖片都以目標識別物為前景,圖片內容乾淨,即便圖片是基於真實世界場景,它們所展現的也是一個「更好版本的世界」。
為了解決這類問題,作者提出了使用 Soft-IoU 層學習 Jaccard 指數,然後將 IoU 分數轉換為高斯混合分佈(MoG),利用期望最大化(EM)求解並將重疊檢測合併為單一檢測。下圖圖示了整個神經網路的運作流程。
Resnet 作為神經網路的主幹,然後連線了三個 FPN (Feature Pyramid Network) 來檢測物件,一個為 detection head(圖 2.1 中的 BB),為每個物件生成一個 4 元組邊界框,(x,y,h,w),分別為邊界框的中心座標、邊界框高度和寬度;另一個為 classification head(圖 2.2 中的 objectness (Obj.) heads),用於預測表示有無檢測目標的標籤 c;最後一個即是作者提出的 Soft-IoU。
作者也使用了IoU,即 Jaccard index,用於衡量回歸檢測框和物件位置的重合程度,在目標檢測中十分常見。這裡筆者僅簡單給出文中的定義——給定 N 個預測,預測的邊界框$b_i$,i∈{1..N} 與實際邊界框$\hat{b_i}$之間的 IoU 定義為:
作者從機率角度理解上式,並用交叉熵(binary cross-entropy loss)讓 Soft-IoU 層學習該 IoU 值。Soft-IoU 層的預測則被稱為 Soft-IoU 得分,$c^{iou}∈[0, 1]$。
網路的損失函式則由三部分組成,即 detection head 的迴歸損失,classification head 的分類損失,以及 Soft-IoU 的交叉熵。
接下來的部分作者稱其為 EM-Merger 單元——現在,給定測試影像,網路會輸出 N 個預測的邊界框位置,每個位置都有其對應的檢測目標標籤 c 和 Soft-IoU 得分$c^{iou}$。
作者將網路生成的 N 個邊界框視為一組二維高斯分佈:
其中p為 2D 影像座標,因此,第 i 個檢測的 4 元組邊界框,(x_i,y_i,h_i,w_i),中的框的中心點 (x_i,y_i) 可以由$\mu_i$表示,框的大小 (h_i,w_i) 則可以由協方差矩陣$\Sigma_i = [(h_i/4)^2, 0; 0, (w_i/4)^2] 表示。
將這些高斯分佈結合起來,則可以用一個高斯混合分佈(MoG) 表達:
其中混合係數$\alpha_i = \frac{c^{iou}}{\sum_{k=1}^N c^{iou}_k}$由模型給出,故與實際邊界框重合更多的預測會被分配更多權重。
圖 2.2 將高斯混合分佈(MoG) 轉換為 heat map 進行了視覺化,可以達到畫素精度,每個檢測區域的高斯混合分佈密度由累積的 Soft-IoU 加權計算得出。
接下來,作者將問題定義為找到一組由 k 個高斯分佈組成的混合高斯分佈來逼近上文中得出的 N 個高斯分佈組成的混合高斯分佈,其中 k 應該遠小於 N。即,給出高斯混合分佈:
我們希望兩個高斯混合分佈之間的 KL 散度儘可能的小:
上述最佳化問題可以用 EM 演算法求解,E-step 將每個邊界框分配到最近的邊界框叢集,其中邊界框相似性由相應高斯分佈之間的 KL 距離定義;M-step 隨後對模型的引數($\beta$, $\mu$, $\Sigma$)重新進行估計。
雖然這樣做模型多了一定計算量,但由於作者使用的是 EM 演算法,該演算法在 2D 空間的矩陣計算十分快,並且由於檢測框是軸對齊的,協方差矩陣是對角協方差(diagonal covariances),可以進一步提高計算速度。
作者還對所提出的方法進行了 runtime 分析,與目前執行較快的目標檢測神經網路進行了分析,表 2.1 中報告了每秒平均幀數(FPS)和每秒檢測數(DPS)。基線方法是基於 RetinaNet 所以兩者的執行時間是相同的,可以看到,新增 Soft-IoU 層不會影響表現。新增了 EM-Merger 單元后基線方法的 FPS 和 DPS 直接降低了一半,執行速度有明顯下降,作者認為這是因為 GPU 和 CPU / RAM 之間需要進行記憶體交換,並且說明其 GPU 最佳化版本幾乎與基線方法一樣快,但文中並沒有看到具體資料。
文章所提出的方法相較 faster-rcnn 和 yolo9000 在執行速度上仍然有明顯的差距,不過其檢測精度大大優於後兩個網路。模型的 precision 和 recall 並沒有比 RetinaNet 高很多,但 MAE 和 RMSE 小了很多,說明模型預測的每一個檢測框幾乎都更準確的檢測到了目標(RetinaNet 有很多多餘的檢測框),在其後報告的計數任務上的表現也證明了模型在這方面的能力。
筆者個人很欣賞這篇文章的演算法設計,引入的 Soft-IoU 和 M-Merger 單元及其簡單精巧的求解,但模型表現的提升仍有些不夠驚豔,不過這也說明了這些密集的場景仍然是未來工作的一個挑戰性前沿。另外,筆者認為在這類場景中傳統計算機視覺演算法也許能夠取得不錯的結果——如從灰度影像的邊緣/線條檢測出發——如果能夠看到模型與這類傳統模型的表現和執行速度的比較就更好了。
3. RegularFace: Deep Face Recognition via Exclusive Regularization
連結:http://mftp.mmcheng.net/Papers/19cvprRegularFace.pdf
作者個人主頁:http://kaizhao.net/cn/
本文一作趙凱,目前是南開大學博士生,導師是程明明教授。趙凱在上海大學完成了本科和碩士學業,研究興趣主要在計算機視覺,統計學習和強化學習。
損失函式的設計和正則化對深度學習演算法的表現有著極大的影響,筆者在此前的文章中也探討過這方面的論文。本篇論文以人臉識別為背景,透過懲罰同一性與其最近鄰居之間的角度, 明確區分身份, 從而形成判別面的表示。本文筆者想討論的是不同損失函式對演算法表現的影響。
對於分類任務來說,傳統上我們使用 softmax 來引導 cnn 將輸入資料轉化為可分的特徵,但由於特徵的類內方差較大,會出現某些類內距離大於類間距離的情況,造成分類困難。學習辨別性特徵(discriminative feature)是準確識別不同類別的關鍵。類間分散程度 (inter-class separability) 與類內緊湊程度 (intra-class compactness) 是具有辨別性的兩個重要因素:屬於同一類的特徵應當在表示空間中更接近,而屬於不同類的特徵在表示空間中則應該比較疏遠。
本文中作者主要比較了幾個損失函式的效果:Softmax loss,Angular softmax loss,Center loss,SphereFace 以及作者提出的 RegularFace。
softmax 這裡筆者不過多贅述,僅給出定義。
1(.) 是一個指標函式,當條件為真時值為 1,否則值為 0。y_i 為輸入資料對應的標籤,C 是標籤類的數量。然後我們將偏置歸零並歸一化 W 的每一列以推導角度 Angular softmax loss,給定的向量 x_i 屬於類 c 的 xi 的後驗是:
在上式中,是$\phi_{i,j}$是 x_i 特徵和權重向量 W_j 之間的角度。顯然,最小化 softmax loss 相當於最小化$\phi_{i,y_i}$。因此,權重向量 W_j 可以被視為所有 y_i = j 的 xi 的聚類中心。由於偏置 b 為 0,權重的模為 1,決策邊界的角度現在只取決於角度,可以大大簡化問題。
SphereFace 本質上使用的就是 Angular softmax loss,但其在決策邊界引入了角度餘量,以便在超球面空間中壓縮相同類別的特徵表示。
其中 m 是超引數,來控類別之間的 angular margin。當 m = 1 時,上式完全等價於 Angular softmax loss 的後驗分佈。
筆者認為這個思想和 svm 的設計有些相像:面對一系列能夠區分來自不同的類的特徵的決策邊界,svm 試圖找到能夠最大化到不同類的例子的距離的決策邊界。並且由於 svm 可以將訓練資料對映到更高維的空間內,找到合適的決策邊界的難度也大大降低了。
Center loss 的思想則有些類似 k-means 演算法。它的特徵與其相應中心之間的歐幾里德距離,目的是在表示空間中強加類內緊湊性:
其中 x_i 是樣本 i 的對應特徵,c_{yi} 則是相應的中心。
作者認為,利用資料視覺化將訓練資料對應的特徵在低維空間(2D 或 3D)中表示的方法實際上是有誤導性的——由於在這種情況下,資料標籤的類別大於表示維度,聚類演算法傾向於拉伸資料以減少分類錯誤。這樣會造成聚類中心少在某種程度上均勻地分佈在特徵空間中的錯覺,並認為在這些聚類中心附近有更好的可分性——顯然,如果中心點均勻的分佈在特徵空間中,距離其他中心點距離最遠的就是該中心點。然而,在實際訓練中,我們往往在維度遠大於資料標籤的類別的空間中表示資料,作者認為這種情況下叢集中心可能分佈不是很均勻。
為了證明這一觀點,作者使用將特徵對映到標籤置信度的分類矩陣 W ∈ R^{K×C} 來定量評估類間可分性。W_i 是 W 的第 i 列,其表示第 i 個標籤類的權重向量,K 是特徵向量的維度。則類間可分性可以定義為:
其中$\phi_{i,j}$是 W_i 和_Wj 之間的角度。理想情況下,聚類中心應該是均勻分佈的,並且儘可能遠離其他聚類中心,因此,cos 值應當較小。換句話說,Sep 的平均值和標準差應該儘可能小。下表列出了用不同損失函式訓練的模型的定量比較。模型使用的網路和資料集都是一樣的。
表 3.1 的統計資料證明了以上方法的聚類中心分佈不是很好。不過,從上述資料也很難看出這種區別是否具有統計顯著性。另外,SphereFace 的資料實際上不錯,將偏置歸零並將權重能夠明顯減小方差,angular margin 的引入則能減小均值。
迴歸到作者提出的損失函式,作者從另一角度出發,不是增加類內的緊湊性,而是增加類間的分散程度。前文提到,在 angular softmax loss 中,權重向量 W_j 可以被視為所有 x_i 在 y_i = j 上的聚類中心。為了為了增加來自不同類的樣本之間的角度距離,作者引入了正則化函式:
實際上就是將作者提出的類間可分性指標作為正則化。
下圖 3.1 對上文提到的損失函式進行了視覺化表示。
可以看到,Softmax loss 僅學習可分離的決策邊界;Angular softmax loss 和 Softmax loss 本質上是等價的,但學習的是角度可分離的決策邊界; Center loss 將屬於同一類的特徵表示「拉」到其中心,以便獲得緊湊和有辨別力的表示;SphereFace 將資料點的外邊界「推遠」; RegularFace 將資料點的中心「推遠」。
在實際應用中,將這一正則化與 Angular softmax loss——或其他損失函式——加在一起,就是完整的 RegularFace。這樣,Angular softmax loss 將樣本 x_i 對應的特徵拉向其聚類中心 W_{yi}。同時,正則化項將推動不同的聚類中心分離。
作者還在多個資料集上進行了測試,使用 RegularFace 幾乎都取得了最優結果,特別是 RegularFace 結合 SphereFace。看來「雙管齊下」還是有效果的。
從這篇文章其實可以看到,目前很多神經網路研究的思路和過去幾十年學者最佳化傳統統計模型的思路還有相似之處。如果這樣,不妨也研究一下如何將 svm 等傳統模型應用在海量資料上,特別是二階矩陣運算所帶來的限制。此外,本文中損失函式的設計其實和笛卡爾座標系和極座標系之間的轉換很相似,在許多問題中,如訊號處理,座標的選擇也十分重要,「換個角度看世界」,可能問題就簡單許多。
4. Auto-DeepLab: Hierarchical Neural Architecture Search for Semantic Image Segmentation
連結:https://arxiv.org/pdf/1901.02985.pdf
作者個人主頁:https://www.cs.jhu.edu/~cxliu/
文章作者 Chenxi Liu 是 Johns Hopkins University 大學的博士生,師從 Alan Yuille,Chenxi Liu 此前於加州大學洛杉磯分校取得碩士學位,清華大學取得本科學位。他還曾在谷歌,Adobe,豐田技術學院,多倫多大學和萊斯大學展開過研究。Chenxi Liu 的研究領域在於計算機視覺和自然語言處理,特別是它們的交集。
神經網路結構搜尋 (NAS) 一直是一個值得關注的研究領域,和 auto-ML 的願景一樣,NAS 領域的研究者希望能夠最大化的降低深度學習演算法構建對人的依賴性。影像分類是 NAS 的一個很好的起點,因為它是最基礎和最被充分研究的識別任務。並且,CIFAR-10 和 MNIST 等小影像基準資料集的存在便於展開探索性研究。
在本文中,作者試圖將 NAS 的應用延伸到語義影像分割任務中。但這樣做首先面臨著解析度變化帶來的問題——NAS 在影像分類任務中的搜尋一般是在低解析度影像上進行的,而高解析度對語義分割的準確率是相當重要的。因此,作者提出兩個要求:(1)更寬鬆和通用的搜尋空間來捕捉更高解析度帶來的架構變化,以及(2)更高效的架構搜尋技術,因為更高的解析度會帶來更大的計算量。
作為一個搜尋問題,自然的,執行任務之前需要對搜尋空間定義。在 NAS 任務中,神經架構搜尋空間是定義的子空間,透過對一般的神經架構施加約束來定義可能的神經架構,並且形成一個有限的運算空間。搜尋空間可以分為兩類:全域性搜尋空間 和 cell-based 搜尋空間。
由於目前取得優秀表現的神經架構幾乎都基於重複的固定結構,然後由這個固定結構堆疊起來形成神經網路的大概架構。因此,神經架構搜尋可以對這樣的固定結構——一般稱為單元(cell)——進行搜尋。而全域性搜尋空間中假設有一個架構模版,用於限制搜尋架構時可以選擇的運算,整體來說,自由度較大。對於 NAS 的更多介紹,可以參考機器之心的這篇文章:神經架構搜尋方法知多少。
回到本文中,作者沒有像現有的工作一樣僅集中在搜尋可重複的單元結構,他們的演算法同時試圖在一定程度上搜尋全域性搜尋空間。
首先看作者對 cell-based 搜尋空間的定義:作者將一個單元定義為一個小的卷積模組,更具體地,單元是由 B 個模組組成的有向無環圖。每個模組是雙分支結構,從 2 個輸入張量對映到 1 個輸出張量。單元 l 中的模組 i 可以定義為 5 元組(I_1,I_2,O_1,O_2,C),其中 I_1,I_2 是輸入張量,O_1,O_2 是應用於相應輸入張量的層的型別,C 是用於組合這個模組的兩個分支的輸出,以形成該模組的輸出張量 H_i^l 的方法。則單元的輸出張量 H^l 就是每個模組的輸出張量 H_1^l,..., H_B^l 的串聯。
從數學上,可以定義為每個模組的輸出張量 H_i^l 都連線到輸入 I_i^l 中的所有隱藏狀態:
這裡 O_{j→I} 可以用它的連續鬆弛Ōj→i 近似:
其中:
換句話說,α_{j→i}^k 是與每個運算子 O^k 相關聯的歸一化標量,容易實現為 softmax,從而容易對備選的層型別做出選擇。在一個單元內,所有張量都具有相同的 shape,這使得方程中的(加權)總和成為可能。
單元 l 中的模組 i 的輸入張量 I_i^l 的集合包括前一個單元 H^{l-1} 的輸出,前前一個單元 H^{l-2} 的輸出,以及當前單元中的此前的模組的輸出 {H_1^l, ..., H_i^l}。因此,隨著模組的增加,下一個模組的輸入張量集合會不斷增加。作者定義了 8 個常見的運算子組成可能的層型別集合 O:
由於 H^{l-1} 和 H^{l-2} 總是包含在 I_i^l 中,並且 H^l 是 {H_1^l,..., H_B^l} 的串聯。結合此前的數學表達,單元的更新方程可以表達為:
可能的組合運算子 C 的集合則僅包括元素新增(element-wise addition)。
全域性搜尋空間方面,網路的搜尋起點總是一個兩層「骨幹」神經網路,用於將解析度降低兩倍。此後,神經網路可以最多有 L 層,每層可以下采樣或維持目前的解析度,最終解析度可以被降低 4-32 倍。下圖給出了這個搜尋思路的圖示,搜尋目標是在這個 L 層的空間中找到合適的路徑。
圖 4.2 中的左側圖解了全域性搜尋空間,灰色節點表示固定的「骨幹」神經網路,沿藍色節點的路徑表示候選神經架構。灰色箭頭代表了標量β,用於控制網路整體架構。網路的更新方程為:
其中 s=4,8,16,32,即下采樣倍數,l=1,2,...,L。因此,藍色節點連線的三個箭頭代表著該層之後神經網路應該下采樣、維持解析度不變或上取樣,分別對應上式的三個部分。
標量β需要被歸一化,以保證β也容易實現為 softmax:
網路的更新方程實際上顯示了本文中兩個層次(單元層次和全域性層析)的連續鬆弛如何能夠組合在一起。引入這種連續鬆弛是必要的,它使得標量$\alpha,\beta$變得可微,便於最佳化。從作用上看,β控制外部網路級別,因此取決於空間大小和層索引。β中的每個標量控制整組α,而α指定既不依賴於空間大小也不依賴於層索引的結構。
圖 4.2 中的右圖表明在搜尋過程中,單元(cell)之間是密集連線的結構。每個黃色箭頭與α_{j→i} 相關聯。concat 之後的三個箭頭分別與β_{s/2→s}^l,β_{s→s}^l,β_{2s→s}^l 相關聯。
雖然筆者起初感覺這種全域性搜尋的設計有些「人工」,但令人驚訝的是,該設計的表示能力非常強大。
目前 U-net 等需要和前 n 層連線的網路結構還不能被表示,但透過對搜尋策略的簡單更改就可以實現這一操作,作者也提到在未來他們計劃進一步放寬這個搜尋空間。
作者在 Cityscapes, PASCAL VOC 2012 和 ADE20K 資料上彙報了搜尋到的最佳神經網路架構的表現,並與其他網路進行了對比。神經網路架構的搜尋以語義分割的準確率為損失函式進行訓練。在 Cityscapes 上,搜尋到的架構準確率比 FRNN-B 等模型高出 8.6%,在 PASCAL VOC 2012 和 ADE20K 上,Auto-DeepLab 也優於多個基於 ImageNet 預訓練的模型。
不過,筆者實際上更期待作者能夠給出與基於其他搜尋方法的模型表現對比。基於強化學習和進化演算法的最佳化策略也是 NAS 研究中常用的手段,強化學習透過獎勵函式的設定可以帶來較強的引導性,而進化演算法依賴的變異等操作不依賴梯度,在對搜尋空間的探索上有優勢。但缺點是效率太低。而作者在文章中強調 Auto-DeepLab 的優勢之一就是搜尋非常有效——在 Cityscapes 資料集上的搜尋只需要大約 3 P100 GPU days。如果能夠看到與目前效果比較好搜尋方案的表現和耗時比較就更好了。
筆者個人非常喜歡這篇文章,也很期待 NAS 的進一步發展。NAS 研究的突破必然能夠提高人工智慧工業產品的開發速度。不過,從目前的發展水平來看,當前的 NAS 設計仍然非常侷限於任務範圍,或者說研究僅在有限種類的任務上進行。並且即使確定了搜尋空間,在實際運用中仍然有許多需要人工確定的搜尋條件,比如特徵核的數量。這篇文章的亮點主要在於作者透過人工的搜尋策略設計所能夠達到驚豔的表示能力、將$\alpha,\beta$設計為可以輕易轉換為 softmax 的設計、以及連續鬆弛帶來的梯度最佳化。
小結
總體來看,筆者認為目前的人工智慧研究陷入了一個看似「矛盾」的狀態:一方面,人工智慧的熱度仍然熱度很高,獲得了學界和業界的密切關注;另一方面,唱衰人工智慧的聲音也隨處可見,許多認為人工智慧的寒冬已經近了。筆者認為,與其說人工智慧的能力有限,不妨說簡單的、入門的任務已經解決的差不多了。比如目前許多研究使用的神經網路主幹都相似(resnet 等),然後在其上做一些適配修改,就可以在許多基準任務上取得還不錯的結果。而更復雜的任務仍然十分困難,面對真實世界的嘈雜資料,神經網路仍然很難取得令人滿意的結果,如上文 Precise Detection in Densely Packed Scenes 中取得的 average precision 也不過是 50% 左右。在這些任務上,仍然需要有突破性的創新,才可能解決真正的困難。
這種「矛盾」也適用於業界的人才的要求——一方面,資料爆發、知識增加,使得人們精通一門學科/研究越來越難;另一方面,跨學科的知識融合越來越重要。這似乎有些困難,不過筆者相信,熱愛這份工作的人一定會對面對的困難感到興奮,同時在新知識的學習中找到樂趣。畢竟在工作中能夠自由地、名正言順地探索、試錯、測驗自己的想法的機會並不多 :p
作者簡介:YUANYUAN LI:幾次轉行,本科國際貿易,研究生轉向統計,畢業後留在歐洲,選擇從事農用機械研發工作,主要負責影像處理,實現計算機視覺演算法的落地。欣賞一切簡單、優雅但有效地演算法,試圖在深度學習的簇擁者和懷疑者之間找到一個平衡。我追求生活的寬度,這也是為什麼在工作之外,我也是機器之心的一名兼職分析師。希望在這裡透過分享自己的拙見、透過思想的碰撞可以拓寬自己的思路。
機器之心個人主頁:https://www.jiqizhixin.com/users/a761197d-cdb9-4c9a-aa48-7a13fcb71f83