AutoML:最新技術概覽

原文鏈接:https://arxiv.org/pdf/1908.00709.pdf

原文鏈接:https://arxiv.org/pdf/1908.00709.pdf

Xin He, Kaiyong Zhao, Xiaowen Chu∗
Department of Computer Science, Hong Kong Baptist University
Email: {csxinhe, kyzhao, chxw}@comp.hkbu.edu.hk

Abstract

深度學習已滲透到我們生活的方方面面,併爲我們帶來了極大的便利。 但是,針對特定任務構建高質量的深度學習系統的過程不僅耗時,而且需要大量資源,並且依賴於人類的專業知識,這阻礙了行業和學術界深度學習的發展。 爲了緩解這個問題,越來越多的研究項目專注於自動機器學習(AutoML)。 在本文中,我們提供了有關最新的AutoML的全面而最新的研究。 首先,我們根據機器學習管道詳細介紹AutoML技術。 然後,我們總結了現有的神經體系結構搜索(NAS)研究,這是AutoML中最受歡迎的主題之一。 我們還將NAS算法生成的模型與這些人爲設計的模型進行比較。 最後,我們提出了一些未解決的問題,以供將來研究。
關鍵詞:machine learning, AutoML, NAS, survey

1. Introduction

如今,深度學習已應用於各個領域,並解決了許多具有挑戰性的AI任務,包括對象分類和檢測,語言建模,推薦系統等。具體地說,在AlexNet [1]在2012年ImageNet挑戰賽中勝過所有其他傳統手動方法之後 ,提出了越來越複雜和深入的神經網絡。 以VGG-16 [2]爲例,它具有超過1.3億個參數,佔據了近500 MB的存儲空間,並且需要153億個浮點運算來完成圖像識別任務。 但是,必須指出的是,這些模型都是由專家通過反覆試驗手動設計的,這意味着即使擁有相當多的專業知識,我們仍然必須花費大量的資源和時間來設計這種性能良好的模型。
在這裏插入圖片描述
圖1:使用強化學習的神經體系結構搜索概述(來自[3])。
 
爲了降低如此巨大的成本,已經出現了使機器學習的整個流水線過程自動化的新想法,即,自動機器學習(AutoML)。 AutoML有多種定義。 例如,根據Wikipedia 1,“ AutoML是使端到端過程自動化的過程,該過程應用適當的數據預處理,特徵工程,模型選擇和模型評估來解決特定任務”。 在[4]中,AutoML被定義爲自動化和機器學習的結合。 換句話說,AutoML可以自動建立具有有限計算預算的機器學習管道。
 
無論如何定義AutoML,都必須指出,AutoML不是一個全新的概念。之所以成爲工業界和學術界最近的熱門話題,是因爲計算能力得到了極大的提高,因此動態組合不同的技術以形成端到端的易於使用的流水線系統是可能且實際的(如圖2所示。許多AI公司都提供了這樣的系統(例如Google的Cloud AutoML 2)來幫助幾乎沒有機器學習知識的人構建高質量的定製模型。事實上,這是Zoph等人的工作。 [5]提請注意AutoML。在[5]中,通過強化學習訓練循環網絡以自動搜索性能最佳的體系結構(圖1)。從那時起,人們提出了越來越多的有關AutoML的工作,其中大多數工作主要集中在神經體系結構搜索(NAS)上,該體系結構旨在通過從預定義的搜索空間中選擇和組合不同的基本組件來生成健壯且性能良好的神經體系結構。根據一些搜索策略。我們將從兩個角度介紹NAS。首先是模型的結構。通用結構包括整個結構[5] – [7],基於單元格的結構[6],[8] – [11],層次結構[12]和基於態射的結構[13] – [15]等。第二個是用於設計模型結構的超參數優化(HPO)。廣泛使用的方法包括強化學習(RL)[5],[6],[8],[9],[16],進化算法(EA)[17] – [23]和梯度下降(GD)[ 10],[24],[25],貝葉斯優化[26]-[32]等。除NAS之外,AutoML還涉及其他已研究了很長時間的技術,我們基於機器學習管道將這些技術分爲以下類別,如圖2所示:數據準備,特徵工程,模型生成和模型評估。
 
必須指出,AutoML的許多子主題都足夠大,可以擁有自己的調查表。 但是,我們的目標不是對所有子主題進行徹底的調查,而是將重點放在AutoML領域的研究範圍上。 因此,在以下各節中,我們將僅選擇最具代表性的作品進行討論和分析。 此外,儘管不同子主題之間存在模糊的邊界,但我們認爲這不會影響我們對AutoML發展的理解,因爲有時很難清楚地分離出幾個問題。 例如,模型選擇也可能是HPO的問題,因爲它的主要目的是優化原始模型組件的組合,但是模型選擇包含HPO所不涉及的一些重要技術,因此有必要採用 除HPO外,還進行了模型選擇討論。
在這裏插入圖片描述
圖2:AutoML管道概述,涵蓋數據準備(第二部分),功能工程(第三部分),模型生成(第四部分)和模型評估(第五部分)。
 
本文的貢獻如下:
 
1)儘管有幾項與AutoML相關的調查(例如[3],[4],[33]),但根據機器學習的流程(圖2),我們涵蓋了更廣泛的現有AutoML技術,從而得出了 初學者對AutoML有全面而清晰的瞭解。 具體來說,我們將數據收集過程擴展到管道中,這可以提高AutoML框架的通用性。
 
2)目前,NAS已成爲AutoML中最受歡迎的子主題之一。 因此,本文從各個方面對各種NAS算法進行了詳細的比較,包括基準數據集的性能,搜索的時間和資源成本以及最佳模型的大小。
 
3)除了總結現有作品外,我們還討論了當前面臨的一些開放性問題,並提出了一些有希望的未來作品。
 
本文的其餘部分如下:數據準備,特徵工程,模型生成和模型評估的過程分別在第二,第三,第四和第五部分中介紹。 在第六節中,我們對NAS算法進行了詳細的總結,並比較了NAS生成的模型和人工設計的模型的性能。 在第七節中,我們提出了一些關於AutoML的未解決問題,並討論了相應的有前途的未來工作。 最後,我們在第八節中完成了調查。

2. 數據準備

衆所周知,機器學習流程的第一步是準備數據,但是對於許多任務,例如醫學圖像識別,很難獲得足夠的數據,或者數據的質量不夠好。 因此,強大的AutoML系統應該能夠處理此問題。 接下來,我們將其分爲兩個步驟:數據收集和數據清理。

A. 數據採集

隨着機器學習(ML)的研究越來越深入,人們逐漸意識到數據非常重要,這就是爲什麼出現了大量開放數據集的原因。 在ML研究的早期,提供了一個手寫數字數據集,即MNIST [34]。 之後,還提出了更大的數據集,如CIFAR10和CIFAR100 [35]和ImageNet [1]。 此外,我們還可以通過在以下網站中鍵入關鍵字來搜索各種數據集:Kaggle [36],Google Dataset Search(GOODS)[37],Elsevier Data Search [38]。
 
但是,當涉及特殊任務時,尤其是像醫療任務或其他涉及隱私的任務時,通常很難通過上述方法找到合適的數據集。 提出了兩種類型的方法來解決此問題:數據合成和數據搜索。
 
1)數據綜合:鑑於廣泛的計算機視覺問題,這裏我們僅討論生成綜合數據的一些代表性方法。最常用的方法之一是擴充現有數據集。對於圖像數據,有許多增強操作,包括裁切,翻轉,填充,旋轉和調整大小等。Python庫(例如torchvision [39]和Augmentor [40])提供了這些增強操作以生成更多圖像。 Wong等。 [41]提出了兩種創建額外訓練示例的方法:數據扭曲和合成過採樣。前者通過在數據空間上應用變換來生成其他樣本,而後者通過特徵空間來創建其他樣本。對於文本數據,同義詞插入是一種常見的擴充方法。另一個想法是先將文本翻譯成某種外語,然後再將其翻譯回原始語言。最近,謝等人。 [42]提出了一種非特定領域的數據增強策略,該策略在RNN中使用了噪聲,並且在語言建模和機器翻譯等NLP任務中表現良好。 Yu等。 [43]建議使用反向翻譯來增強數據的閱讀理解能力。
 
在某些特殊任務(例如自動駕駛)方面,由於存在潛在的安全隱患,因此在研究階段無法直接在現實世界中測試和調整模型。因此,爲此類任務創建數據的一種實用方法是數據模擬器,它試圖儘可能地匹配現實世界。例如,OpenAI Gym [44]是一種流行的工具包,提供了各種仿真環境,開發人員可以在其中集中精力設計算法,而不必爲生成數據而費力。它也用於輔助機器學習[45]。此外,在[46]中提出了一種基於強化學習的方法,用於優化數據模擬器的參數以控制合成數據的分佈。
在這裏插入圖片描述
圖3:GAN生成的人臉圖像。 (來自[47])
 
另一項新穎的技術是“生成對抗網絡”(GAN)[47],它不僅可以用於生成圖像,還可以用於生成文本數據。 圖3顯示了一些人臉圖像,這些圖像是GAN在Karras等人的工作中生成的。 [48]。 而不是生成圖像,Eno等人。 [49]開發一種綜合數據定義語言(SDDL)爲Iris數據集[50]創建新數據。 此外,自然場景文本也可以在[51],[52]中生成。 哦,Jaroensri等。 [53]建立一個合成的數據集,它捕獲視頻運動放大的小運動。
 
2)數據搜索:由於Internet上存在取之不盡用之不竭的數據,一種收集數據集的直觀方法是搜索網絡數據[54]-[57]。但是使用網絡數據存在一些問題。一方面,有時搜索結果與關鍵字不完全匹配。爲了解決這個問題,一種方法是過濾不相關的數據。例如,Krause等。 [58]將不準確的結果劃分爲跨域和跨類別的噪聲,它們會刪除出現在搜索結果中的多個類別的圖像。 Vo等。 [59]對相關結果重新排序,並根據關鍵詞線性提供搜索結果。另一個問題是Web數據可能帶有錯誤的標籤,甚至沒有標籤。基於學習的自標記方法通常用於解決此問題。例如,主動學習[60]是一種選擇最“不確定”的未標記個體示例來要求人類標記的方法,然後它將迭代地標記其餘數據。爲了使人們擺脫標籤化並進一步加快標籤化過程,提出了許多半監督學習自標籤化方法。 Roh等。 [61]將自我標記方法概括爲以下幾類:自我訓練[62],[63],共同訓練[64],[65]和共同學習[66]。此外,由於網絡圖像內容的複雜性,單個標籤不能很好地描述圖像,因此,Yang等人。 [67]爲網絡圖像分配多個標籤,並且如果這些標籤具有非常接近的置信度得分或具有最高得分的標籤與圖像的原始標籤相同,則他們選擇該圖像作爲新的訓練樣本。
 
另一方面,Web數據的分佈可能與目標數據集完全不同,這將增加訓練模型的難度。 常見的解決方案是微調這些Web數據[68],[69]。 楊等。 [54]模型訓練和網絡數據過濾的迭代算法。 此外,數據集不平衡也是一個普遍的問題,因爲某些特殊類的Web數據可能很少。 爲了解決這個問題,提出了合成少數族羣過採樣技術(SMOTE)[70],以在現有真實少數族裔樣本之間合成新的少數族裔樣本,而不是對其進行上採樣或下采樣。 郭等。 [71]提出將boosting方法與數據生成相結合,以增強針對不平衡數據集的模型的泛化性和魯棒性。

B.數據清理

在進入特徵生成之前,必須對原始數據進行預處理,因爲存在多種類型的數據錯誤(例如,冗餘,不完整或不正確的數據)。以表格數據爲例,常見的錯誤類型是缺失值,錯誤的數據類型。廣泛用於數據清理的操作包括標準化,縮放,定量特徵的二值化,一鍵編碼定性特徵以及用平均值填充缺失值等。就圖像數據集而言,有時可能會爲圖像分配錯誤的標籤在這種情況下,可以使用上面提到的類似自標記的技術來解決該問題。但是,數據清理過程通常需要預先手動定義,因爲即使對於同一數據集,不同的方法也可能有不同的要求。例如,神經網絡只能處理數字數據,而基於決策樹的方法則可以處理數字和分類數據。提出了包括[72] – [75]在內的工作以自動化數據清理過程。

3. 特徵工程

在行業中,人們普遍接受數據和特徵確定機器學習的上限,而模型和算法僅近似於此。 特徵工程的目的是最大程度地從原始數據中提取特徵,以供算法和模型使用。 要素工程包含三個子主題:要素選擇,提取和構建。 特徵提取和構造是特徵轉換的變體,通過該變體可以創建一組新的特徵[76]。 特徵提取通常旨在通過某些功能映射來減小特徵的維數,而特徵構造則用於擴展原始特徵空間。 另外,特徵選擇的目的是通過選擇重要特徵來減少特徵冗餘。 在某種程度上,自動要素工程的本質是這三個過程的動態結合。

A.功能選擇

特徵選擇是通過減少不相關或冗餘的特徵而基於原始特徵集構建特徵子集的過程,這有助於簡化模型,從而避免過擬合和提高模型性能。 所選要素通常是不同的,並且與對象值高度相關。 根據[77]提出的工作,典型的特徵選擇過程有四個基本步驟(見圖4):
在這裏插入圖片描述
圖4:特徵選擇的迭代過程。 首先,根據搜索策略選擇特徵子集並進行評估。 然後,執行驗證過程以檢查子集是否有效。 然後重複上述步驟,直到滿足停止標準爲止。
 
用於特徵選擇的搜索策略可以分爲三類:完整,啓發式和隨機搜索算法。 對於完全搜索,它涉及窮舉和非窮舉搜索,可以將其進一步分爲四種方法,即廣度優先搜索,分支和界限,波束搜索和最佳優先搜索。 對於啓發式搜索,它包括順序向前選擇(SFS),順序向後選擇(SBS)和雙向搜索(BS)。 對於前兩種情況,分別從空集中添加特徵或從完整集中去除特徵,而對於BS,它同時使用SFS和SBS進行搜索,直到這兩種算法獲得相同的子集。 在隨機搜索方面,常用的方法是模擬退火(SA)和遺傳算法(GA)。
 
用於子集評估的方法可以分爲三個不同的類別。 第一種是過濾方法,它根據散度或相關性對每個特徵評分,然後通過閾值選擇特徵。 爲了對每個特徵進行評分,常用的評分標準是方差,相關係數,卡方檢驗和互信息等。包裝方法是另一種選擇,該方法將樣本集與所選特徵子集進行分類,並使用分類精度 作爲衡量特徵子集質量的標準。 第三種方法是嵌入式方法,該方法執行變量選擇作爲學習過程的一部分。 正則化,決策樹和深度學習都是嵌入式方法。

B.特徵構造

特徵構造是從基本特徵空間或原始數據構造新特徵以幫助增強模型的魯棒性和泛化性的過程,其實質是提高原始特徵的代表性。 傳統上,此過程高度依賴於人類的專業知識,最常用的方法之一是預處理轉換,例如標準化,規範化,特徵離散化。 此外,變換操作可能與不同類型的特徵有所不同。 例如,包括合取,析取,取反在內的運算通常用於布爾特徵,而對於數值特徵,我們可以使用最小值,最大值,加法,減法,均值等運算,而對於名義特徵,則可以使用常用運算 是笛卡爾積[78]和M-of-N [79]。
 
不可能手動探索所有可能性。因此,爲了進一步提高效率,已經提出了一些自動特徵構建方法,並且還可以獲得與人類專門知識相同的結果,甚至更好。這些算法主要旨在使搜索和評估工序組合的過程自動化。在搜索方面,基於決策樹的方法[79],[80]和遺傳算法[81]之類的算法需要預定義的操作空間,而基於註釋的方法則消除了這一要求,因爲它可以在註釋形式以及訓練示例[82]。這種方法可以追溯到工作[83],其中作者引入了交互式特徵空間構造協議,其中學習者識別特徵空間的不足區域,並與領域專家協作,通過現有語義資源增加了描述性。在選擇了可能的操作並構造了新功能後,將應用功能選擇技術來測量新功能。

C.特徵提取

特徵提取是通過某些映射函數進行的降維過程,該過程根據某些特定指標來提取信息性和非冗餘性的特徵。 與特徵選擇不同,特徵提取將更改原始特徵。 特徵提取的核心是映射功能,可以通過多種方式實現。 值得一提的方法是主成分分析(PCA),獨立成分分析,isomap,非線性降維,線性判別分析(LDA)。 最近,一種廣泛使用的方法是前饋神經網絡方法,該方法使用預訓練模型的隱藏單元作爲提取特徵。 基於自動編碼器提出了許多算法。 孟等人。 [84]提出了一種同時考慮數據特徵及其關係的關係自動編碼器模型。 [85]提出了一種使用自動編碼器樹的無監督特徵提取方法。
在這裏插入圖片描述
圖5:整體生成的鏈結構神經架構的示例。 圖中的每個節點表示具有特定操作的圖層,例如 N1代表第1層。每個節點的操作都從搜索空間中選擇,包括卷積或最大池化等。邊緣指示信息流。 例如,左圖中從N2到N3的邊表示N3接收N2的輸出作爲其輸入。

4. 模型生成

生成特徵後,我們需要生成一個模型並設置其超參數。 如圖2所示,模型選擇有兩種方法:傳統模型選擇和NAS。 前者是從傳統的機器學習算法中選擇性能最佳的模型,包括支持向量機(SVM),k最近鄰(KNN),決策樹,KMeans等。在本文中,我們將重點放在NAS上, 這是當前非常熱門的話題,旨在設計一種無需人工幫助的新型神經體系結構。 爲了使讀者清楚地瞭解NAS,我們將從兩個方面介紹它們:模型結構和用於優化所生成模型的參數的算法。
在這裏插入圖片描述
圖6:在[6]中發現的細胞結構。 一個單元由B個節點組成。 在該單元中,有7個節點,每個節點都有兩個具有指定操作的子節點。 前兩個節點(即h [i]和h [i-1])被視爲輸入,它們是前兩個單元的輸出。 [6]

A.模型結構

該模型是通過選擇和組合一組原始操作生成的,這些操作在搜索空間中已預先定義。這些操作可大致分爲卷積,合併,串聯,元素加法,跳過連接等。這些操作的參數通常也根據經驗進行預定義。例如,卷積的內核大小通常設置爲3×3和5×5,並且廣泛使用的卷積運算也是由人設計的,例如深度可分離[86],膨脹[87]和可變形卷積[88]。 。通過回顧與NAS相關的文獻,我們總結了以下幾種代表性結構:
 
1)整個結構:第一種直觀的方法是生成整個結構的神經網絡[5],[6],與傳統的神經網絡結構相似。圖5展示了所生成網絡的兩個不同示例,它們都是鏈式結構,而右側則相對更爲複雜,因爲它使用了一些手工製作的結構,例如跳過連接和多分支網絡,這些已在實踐中被證明是有效的。 。但是,整個結構具有幾個缺點。例如,這種類型的結構可能非常深,因此搜索空間很大,這需要大量時間和計算資源才能找到最佳的體系結構。此外,最終生成的架構缺乏可移植性,這意味着在小型數據集上生成的架構可能不適用於較大的數據集,因此我們只能在較大的數據集上重新生成新模型。

在這裏插入圖片描述
圖7:連接3個塊(每個塊包含N個卷積單元和1個歸約單元)以構成最終網絡的示例。 卷積單元保留特徵張量的空間分辨率,而歸約單元將空間分辨率除以2,然後將濾鏡數量乘以2。[6]

在這裏插入圖片描述
圖8:網絡級搜索空間。 開頭的三個灰色節點表示固定的“詞幹”結構,每個藍點都是如上所述的單元結構。 藍點旁的黑色箭頭表示最終選擇的網絡級別結構。 彩色效果最佳。 (來自[89])
 
2)基於單元的結構:爲解決整個結構的問題並受到幾種人爲設計的結構的啓發[90],[91],一些著作[6],[8],[9]提出了基於單元的結構,首先搜索單元格結構,然後堆疊預定數量的發現單元格,以類似於鏈結構的方式生成整個體系結構。圖6展示了在[6]中爲卷積神經網絡發現的細胞結構的示例。這種設計神經體系結構的方法可以大大降低搜索複雜度。爲了說明這一點,讓我們做以下假設。假設有6個預定義的操作,並且對於Lj層,可以連接j-1個層,從而導致每層6×2j-1個可能的決策。對於整個結構,當L = 12時,有6L×2^L(L-1)/ 2^ = 68×2^12(12-1)/ 2^= 1.6×1029個可能的網絡。對於基於單元的結構,一個單元中有B個節點,每個節點由兩個具有指定操作的子節點組成。節點i(i≥2)的每個子節點的輸入均來自先前的i − 1節點。由於每個節點的所有決策都是獨立的,因此存在(6×(B − 2)!)2個可能的單元結構。除了卷積單元外,通常還有另一種結構,稱爲還原單元,用於將輸入的空間尺寸縮小2倍。圖7顯示了將卷積單元和還原單元組合成整個網絡的示例。假設一個單元中有8個節點,則用於單元結構的搜索空間的最終大小爲(6×(B -2)!)4 =(6×(8-2)!)4 = 3.5×1014,即比整個結構的搜索空間小得多。值得一提的是,對於整個結構,每個層僅指示單個操作,而對於基於單元的結構,每個層均指示覆雜的單元結構。換句話說,通過簡單地堆疊更多的單元格,可以更輕鬆地將基於單元格的結構從小型數據集轉移到大型數據集。
 
通過查看基於細胞的結構[6],[8],[9],[16],[18],[19],我們發現它們都遵循兩級層次結構:內部是細胞級, 選擇每個節點的操作和連接; 外部是網絡級別,它控制空間分辨率的變化。 但是,它們僅關注單元級別,而忽略網絡級別。 因爲一旦設計了單元結構,就可以通過以鏈方式堆疊單元來生成整個網絡。 如圖7所示,網絡是通過組合固定數量的卷積單元和歸約單元來構建的,其中卷積單元保持了特徵張量的空間分辨率。 爲了共同學習可重複的細胞結構和網絡結構的良好結合,Liu和Yuille等。 [89]定義了網絡級結構的一般表述,如圖8所示,其中許多現有的良好網絡設計都可以這種方式進行復制。
 
3)層次結構:層次結構爲類似於基於單元的結構,但主要區別在於生成單元的方式。如前所述,基於單元的結構中單元節點的數量是固定的。生成單元后,通過鏈式堆疊一定數量的單元來構建網絡。但是,對於分層結構,存在許多級別,每個級別都有固定數量的單元。通過迭代合併較低級別的單元來生成較高級別的單元。如圖9所示,原始操作(例如1級的1×1和3×3卷積以及3×3的最大池化)是2級單元的基本組成部分。然後將2級單元用作原始操作以生成3級單元。最高級別的單元是與整個體系結構相對應的單個主題。此外,通過可學習的鄰接上三角矩陣G來定義更高級別的單元,即,Gij = k意味着在節點i和j之間實現第k個操作0k。例如,圖9(a)中的2級單元格由矩陣G定義,其中G01 = 2,G02 = 1,G12 = 0(索引從0開始)。與基於單元的結構相比,該方法可以發現具有複雜靈活拓撲的更多類型的網絡結構。
 
4)基於網絡形態的結構:基於網絡形態(NM)的結構[13],[14],[20],[92]是將存儲在現有神經網絡中的信息轉換爲新神經網絡的方法。因此,它可以基於先前性能良好的結構來更新結構,而不是從頭開始重新生成新的結構,如圖10所示。同時,保證新網絡的性能優於或至少等同於新網絡。到舊網絡。例如,在[14]中,作者通過使用網絡態射來生成基於VGG16的新網絡,ImageNet上的最終結果的準確度爲69.14%top-1和89.00%top-5,優於VGG16的原始結果。 ,即top-1的準確性爲67.3%,top-5的準確性爲88.31%。
在這裏插入圖片描述
圖10:傳統的生成結構方法與Net2Net [13]的比較,後者重用了來自現有網絡的信息以生成新的結構。
 

B.超參數優化

定義網絡結構的表示形式後,我們需要從較大的搜索空間中找到性能最佳的體系結構。 可以將這種過程視爲每個節點的操作和連接的優化。 因此,在本文中,我們將搜索網絡體系結構的過程視爲超參數優化(HPO),類似於優化學習速率,批量大小等。我們總結了以下常用的HPO算法。
 
1)網格和隨機搜索:網格搜索和隨機搜索是HPO使用最廣泛的策略。 網格搜索是一種將可能的超參數空間劃分爲規則間隔(網格),然後針對網格上的所有值訓練模型,然後選擇效果最佳的模型的方法,而顧名思義,隨機搜索選擇一組 超參數是隨機的。
在這裏插入圖片描述
圖11:優化二維空間函數的9種試驗的網格和隨機搜索之間的比較表示爲f(x,y)= g(x)+ h(y)≈g(x),這意味着參數在 g(x)(每個正方形上方)相對重要,但是h(y)(每個正方形左側)中的參數並不重要。 對於網格搜索,九個試驗僅涵蓋三個不同的重要參數值。 但是,隨機搜索可以探索g的9個不同值。 因此,與網格搜索相比,隨機搜索更有可能找到參數的最佳組合。 (來自[96])
 
在超參數搜索研究開始之初,網格搜索[93]-[95]是最流行的方法之一,因爲它易於並行實現,並且在相同條件下查找比手動搜索更好或更好的超參數。時間量,但它也有一些缺點。從圖11中可以看到,網格搜索只能測試9個試驗的三種不同配置,而隨機搜索可以測試更多可能的超參數。在[96]中,已經證明並不是所有的超參數都對調優同樣重要,但是網格搜索爲探索不重要的超參數分配了太多的試驗。爲了利用超參數空間的良好表現區域,Hsu等人。 [97]建議先使用粗網格,然後在網格上找到更好的區域,然後在該區域上進行更精細的網格搜索。同樣,Hesterman等。 [98]提出了一種契約網格搜索算法。它首先計算網格中每個點的似然度,然後以最大似然值爲中心生成一個新的網格。新網格中的點間距減少到舊網格的一半。重複此過程進行固定次數的迭代,以收斂到局部最小值。
 
儘管Bergstra和Bengio [96]從經驗和理論上表明,隨機搜索對HPO比網格搜索更爲實用和有效,但是仍然存在一個問題,即難以確定是否找到了最佳的超參數集,這是衆所周知的。 搜索時間越長,找到最佳超參數的可能性就越大。 爲了減輕這個問題,Li和Jamieson等人。 [99]介紹了一種新穎的搜索算法,即超帶寬,該算法在資源預算和性能之間進行權衡。 通過在訓練過程完成之前很長時間就連續丟棄最差的配置設置,Hyperband僅將有限的資源(例如時間或CPU)分配給最有前途的超參數。
 
2)強化學習:如第1節所述,NAS首先在[5]中引入,他們訓練遞歸神經網絡(RNN)以使用強化學習(RL)技術自動生成網絡體系結構。之後,MetaQNN [16]提供了一種使用Qlearning和-greedy探索策略的元建模算法,並通過經驗重播來順序搜索神經體系結構。通常,基於RL的算法由兩部分組成(請參見圖1):控制器(是RNN,用於在不同時期生成不同的子網絡)以及獎勵網絡,其訓練和評估生成的子網絡,以及使用獎勵(例如準確性)來更新RNN控制器。儘管這兩項工作取得了包括CIFAR10和Penn Treebank(PTB [100])的數據集的最新結果,但是[5]花了28天的時間和800 K40 GPU來搜索性能最佳的架構,這對於個人而言是無法承受的研究人員甚至公司,MetaQNN [16]用了10天的時間和10個GPU來搜索在不同數據集上訓練的不同架構,包括CIFAR10,CIFAR100,SVHN和MNIST。
 
如上所述,設計整個架構非常耗時,並且需要大量計算資源,這就是上述兩種基於RL的方法效率不高的原因。 爲了提高效率,提出了許多基於RL的算法來構建基於單元的結構,包括NASNet [8],BlockQNN [9]和ENAS [6]。 BlockQNN在三天內完成了對網絡結構的搜索。 此外,ENAS取得了更大的突破,使用1個GPU搜索最佳架構僅花費了大約10個小時,比[5]快了近1000倍,同時,它還保持了準確性。 ENAS的新穎之處在於,所有子架構都被視爲預定義搜索空間的子圖,因此它們可以共享參數,以避開從頭到收斂的每個子模型的訓練。
 
3)進化算法:進化算法(EA)是一種基於種羣的通用啓發式優化算法,它從生物進化中獲得啓發。 與傳統的基於微積分法和窮舉法的優化算法相比,進化算法是一種成熟的全局優化方法,具有較高的魯棒性和廣泛的適用性。 它可以有效地解決傳統優化算法難以解決的複雜問題,而不受問題性質的限制。
 
不同的基於EA的NAS算法可能使用不同類型的編碼方案進行網絡表示,因此遺傳操作因方法而異。編碼方案有兩種類型:直接和間接。直接編碼是一種廣泛使用的方法,它明確指定了表型。例如,Genetic CNN [23]使用二進制編碼方案來表示網絡結構,即1表示兩個節點已連接,反之亦然。二進制編碼的優點是它可以輕鬆執行,但是其計算空間與節點數成正比。更糟糕的是,節點數通常是有限且固定的。爲了表示可變長度的網絡結構,Suganuma等。 [21]使用笛卡爾遺傳編程(CGP)[101],[102]編碼方案,將網絡表示爲有向無環圖,用於CNN體系結構表示。在[18]中,各個體系結構也被編碼爲圖形,其中頂點指示三級張量或激活(使用ReLU或普通線性單位的批歸一化),而邊緣指示身份連接或卷積。增強拓撲結構(NEAT)的神經進化[17],[18]也使用直接編碼方案,其中每個節點和每個連接都存儲在DNA中。間接編碼指定生成規則以構建網絡並允許更緊湊的表示。 Gruau提出的蜂窩編碼(CE)[103]是利用網絡結構間接編碼的系統示例。 CE將神經網絡家族編碼爲一組標記樹,這是基於簡單圖文法的。最近,一些著作[20],[104]-[106]也使用間接編碼方案來表示網絡。例如,[20]中的網絡是按功能編碼的。每個網絡都可以使用保留功能的網絡態運算符進行修改,因此子網絡的容量在增加,並且可以保證子網絡的行爲至少與父網絡一樣。
在這裏插入圖片描述
圖12:進化算法概述
 
典型的進化算法包括以下步驟:選擇,交叉,變異和更新(參見圖12):

  • 選擇 此步驟是從所有生成的網絡中選擇一部分網絡進行交叉。選擇單個網絡有三種策略。第一個是適應度選擇,這意味着被選擇的個體的概率與其適應度值成正比,即P(hi)=Fitness(hi)n=1NFitness(hj)P(h_i)= \frac{Fitness(h_i)}{\sum_{n=1}^NFitness(h_j)},其中hi表示第i個個體網絡。第二個是等級選擇,類似於適應度選擇,但是選擇概率與相對適應度成正比,而不是絕對適應度。比賽選擇[12],[18] – [20]是基於EA的NAS算法中使用最廣泛的選擇策略之一。對於每次迭代,它首先從總體中隨機選擇k個(錦標賽大小)個體。然後,按性能對k個個體進行排序,並以概率p選擇最佳個體,而次優個體的概率爲p×(1- p),依此類推。
  • 分頻器 選擇後,每兩個個體被選出一個新的後代,該後代繼承了父母雙方的部分遺傳信息。它類似於繁殖和生物交叉。交叉方式因編碼方案而異。對於二進制編碼,網絡被編碼爲線性的位串,這樣兩個父網絡可以通過一個點或多點交叉進行組合。但是,有時可能會損壞有用的信息。因此,在[23]中,分頻器中的基本單元不是階段,而是將每個位作爲單元使用,它是一個由二進制字符串構造的高級結構。對於蜂窩編碼,從一個父樹中剪切隨機選擇的子樹,並替換另一父樹中的子樹。 NEAT根據歷史標記執行人工突觸,從而使其可以添加新結構,而不會在整個模擬過程中跟蹤哪個基因是哪個基因。
  • 變異 當父母的遺傳信息被複制並遺傳給下一代時,基因突變也會發生。點突變[21],[23]是使用最廣泛的操作之一,即獨立且隨機地翻轉每個位。 [22]中有兩種類型的突變:一種啓用或禁用兩層之間的連接,另一種添加或刪除兩個節點或層之間的跳過連接。 Real和Moore等。 [18]預定義了一組突變運算符,其中包括更改學習率和過濾器大小,以及刪除節點之間的皮膚連接等。儘管突變過程看起來像是一個錯誤,會導致網絡結構損壞並導致損失在功能方面,有可能探索更多新穎的結構並確保多樣性。
  • 更新 完成上述步驟後,將生成許多新的網絡。通常,由於有限的計算資源,有必要刪除一些網絡。在[18]中,隨機選擇了兩個個體,並且最差的一對立即從種羣中剔除,但在[19]中,最老的個體被剔除。某些方法[21] – [23]會定期刪除所有模型。然而,劉等。 [12]不要從人口中刪除任何網絡,而是讓它隨着時間增長。
     
    4)貝葉斯優化:就網格,隨機搜索和進化算法而言,每次測量一個超參數設置的性能的試驗都是獨立的。 換句話說,重複測試了一些性能較差的搜索空間區域。 貝葉斯優化(BO)是一種算法,該算法建立目標函數的概率模型,然後使用該模型選擇最有前途的超參數,最後對真實的目標函數評估所選的超參數。 因此,BO可以通過跟蹤過去的評估結果來迭代更新概率模型。 概率模型在數學上將超參數映射到目標函數上得分的概率。
     
    表I:用於貝葉斯優化的一些流行的開源軟件庫列表。 GP,RF,TPE分別指示高斯過程,隨機森林和樹木parzen估計量。 ANCL表示學術非商業許可證。
    在這裏插入圖片描述
     
    在這裏插入圖片描述
     
    基於序列模型的優化(SMBO)是貝葉斯優化的簡潔形式。 SMBO的步驟在算法1中表示(來自[107])。首先,使用來自搜索空間X的一小部分樣本隨機初始化概率模型。 D是一個包含樣本對的數據集:(xi,yi),其中yi = f(xi) 是昂貴的步驟。模型M進行了調整以適合數據集D,因此通過預定義的採集函數S依次選擇了服從M分佈的一組新的超參數。對於昂貴的目標函數,採集函數可以看作是廉價的替代品F。獲取功能有幾種類型:例如1)基於改進的策略2)樂觀策略; 3)基於信息的政策和4)收購職能組合。就概率模型的類型而言,BO算法可分爲以下幾類:高斯過程(GPs)[108],[109],樹Parzen估計量(TPE)[32]和隨機森林[30]。表中總結了幾種流行的用於貝葉斯優化的開源軟件庫。我從中可以看到,基於GP的BO算法是最受歡迎的算法。
     
    即使目標函數是隨機的,非凸的,甚至是非連續的,貝葉斯優化算法也可以有效[107],但是在優化深度神經網絡的參數時,情況就不同了。此外,儘管基於強盜的配置優化算法Hyperband可以在有限的預算內搜索有前途的超參數,但它缺乏指導以確保儘快收斂到最佳配置。爲了解決上述問題,Falkner和Klein等人。 [110]提出了基於貝葉斯優化的超帶(BOHB),它結合了貝葉斯優化和超帶的優勢,並且在各種問題類型(例如SVM,神經網絡和深度強化學習)上都表現出色。此外,在[28]中引入了更快的BO程序,即FABOLAS。它根據數據集大小映射驗證損失和訓練時間,即在子數據集上訓練生成模型,該子數據集的大小逐漸增加。結果,FABOLAS比其他SOTA BO算法和Hyperband快10到100倍,同時,它也可以找到有前途的超參數。
     
    5)梯度下降:儘管上面介紹的搜索算法都可以自動生成架構,同時達到最新的結果,但是它們以離散方式搜索超參數,並且HPO的過程被視爲黑盒優化問題, 這導致需要評估許多參數集,因此需要大量時間和計算資源。 爲了解決基於離散樣本的方法中遇到的問題,進行了許多嘗試([10],[111]-[115])。 具體來說,劉等。 [10]建議通過使用softmax函數放鬆對超參數的離散選擇來在連續且可區分的搜索空間上搜索超參數:
    在這裏插入圖片描述
    其中 o(x) 表示輸入 x 的運算,例如卷積或池化,αo(i,j) 表示一對節點(i,j)之間的運算o的權重,即xjo(i,j)o(xi),O是一組預定義的候選操作。 放鬆之後,將搜索超參數的任務簡化爲權重矩陣α(i,j)的優化,如圖13所示。
    在這裏插入圖片描述
    圖13:DARTS概述。 (a)數據的方向只能從較低級別的節點流向較高級別的節點,邊緣的操作最初是未知的。 (b)每個邊上都有各種候選操作。 (c)邊緣上每個操作的權重是可學習的,範圍從0到1,與離散採樣方法不同,它只能是0或1。(d)通過保留每個邊緣上最大權重值的操作來構造最終結構 爲了效率。
     
    基於梯度下降的方法可以減少花費在搜索超參數上的時間,但是GPU內存的需求隨候選操作的數量線性增長。在圖13中,在每個邊緣上存在三種不同的候選操作,因此爲了提高效率,僅可以保留每個邊緣的權重值最高(大於0)的操作。爲了節省內存消耗,在[116]中,引入了一種新的路徑級修剪方法。首先,訓練包含所有可能操作的超參數網絡,然後逐步刪除冗餘部分,在這種情況下,只需訓練一個網絡。但是,包含所有操作的網絡會佔用大量內存。因此,將架構參數二值化,並且在訓練時僅激活一條路徑。洪特等。 [117]提出了SharpDARTS,它使用了通用,均衡和一致的設計,即SharpSepConv塊。他們還引入了可區分的超參數網格搜索和HyperCuboid搜索空間,比DARTS快50%,同時,在CIFAR10上生成的最終模型的準確性也提高了20%至30%。

5. 模型估計

生成新網絡後,我們必須評估該網絡的性能。 一種直觀的方法是訓練網絡收斂,然後根據最終結果判斷網絡的優缺點。 但是,此方法需要大量時間和計算資源。 例如,在[5]中,每個時期都會生成一個新的網絡,然後對其進行訓練以收斂,然後才能對其進行評估,因此最終,該方法花費了800個K40 GPU,總共耗時28天。 此外,NASNet [8]和AmoebaNet [19]分別使用500個P100 GPU和450個K40 GPU來發現架構。 爲了加快模型評估的過程,提出了幾種算法,總結如下:

A.低保真

由於訓練時間與數據集和模型大小高度相關,因此我們可以從不同角度加速模型評估。一方面,我們可以減少圖像數量或圖像分辨率(用於圖像分類任務)。例如,FABOLAS [28]在訓練集的子集上訓練模型以加速模型估計。在[118]中,提供了ImageNet64×64及其變體32×32、16×16,同時這些較低分辨率的數據集可以保持與原始ImageNet數據集相似的特徵。另一方面,可以通過減少模型大小來實現低保真度模型評估,例如每層更少的濾波器數量訓練[8],[19]。與集成學習類似,[119]提出了傳遞序列擴展(TSE),它通過線性組合一系列基本的低保真估計量來構造一個集成估計量,因此它解決了單個低保真估計量可能會嚴重偏差的問題。此外,Zela等。 [27]從經驗上證明,短時間和長時間的訓練後的性能之間存在弱相關性,因此我們不需要花費太多時間搜索網絡配置(見圖14)。
在這裏插入圖片描述
圖14:在整個HPO過程中,以不同預算生成的每個配置的驗證錯誤。 例如,每個灰點代表相應網絡的驗證錯誤,其配置是通過400秒搜索獲得的。 最後,搜索需要3600秒(橙色點)的網絡與需要10800秒(紅色點)的網絡一樣好。

B.轉移學習

在像[5]這樣的NAS算法開發之初,經過長時間培訓以收斂的每個網絡體系結構在評估其性能後都被丟棄。 因此,轉移學習技術被用來加速NAS的進程。 例如,Wong和Lu等。 [120]提出了Transfer Neural AutoML,它使用先前任務中的知識來加快網絡設計。 ENAS [6]在子網絡之間共享參數,比[5]快1000倍。 基於網絡態態的算法[13],[14]也可以繼承以前架構的權重。

C.代理

基於代理的方法[121] – [123]是另一種功能強大的工具,類似於黑匣子功能。 通常,一旦獲得良好的近似值,找到最佳配置比直接優化最初昂貴的目標要容易得多。 例如,PNAS [11]引入了一個替代模型來控制搜索方式。 儘管ENAS [6]非常高效,但是PNAS評估的模型數量是ENAS的5倍以上,而PNAS的總計算速度則快8倍。 但是,當優化空間太大且難以量化時,此方法不適用,並且每種配置的評估都非常昂貴[124]。

D.提前停止

早期停止最初是用來防止經典機器學習的過度擬合,現在通過停止預測在驗證集上表現不佳的評估,現在用於加速模型評估[125]-[127]。 例如,[127]提出了一種學習曲線模型,該模型是從文獻中選擇的一組參數曲線模型的加權組合,從而可以預測網絡的性能。 此外,[128]提出了一種基於快速計算出的梯度的本地統計信息的提前停止的新方法,該方法不再像以前的方法那樣依賴於驗證集,而是可以使優化器充分利用所有訓練 數據。

6. NAS性能摘要

近年來,NAS已成爲研究的熱點,提出了各種算法,因此有必要對不同類型的算法進行總結和比較,以幫助讀者更好,更全面地理解NAS方法。我們選擇總結幾種流行的NAS算法類型,包括基於隨機搜索(RS),強化學習(RL),進化算法(EA)和梯度下降(GD)的算法。此外,每種算法都有幾種模型變體,每種變體可能對應於不同的數據集或模型大小。爲了清楚地衡量這些方法的性能,我們考慮幾個因素:結果(如準確性),搜索時間和資源以及所生成模型的大小。由於每種算法使用的GPU數量不同,因此僅根據搜索時間來評估算法的效率是不公平的。因此,我們使用GPU Days來衡量不同算法的效率,其定義爲:
在這裏插入圖片描述
其中N代表GPU的數量,D代表實際花費的搜索天數。 表II中列出了不同算法的性能。 但是,由於這些文獻中沒有介紹GPU的版本,因此仍然很難對這些NAS方法進行公平的比較。 爲了大致瞭解這些方法的性能,我們忽略了GPU版本的影響,並繪製了圖15,從中可以發現這些方法在CIFAR10上的結果非常接近,而基於GD的方法則是 因爲他們不僅可以花費更少的時間和資源來找到性能最佳的體系結構,所以效率更高。 相反,EA往往需要大量時間和資源進行搜索,這可能是由於EA需要同時搜索和評估許多子網絡這一事實所致。 另一個令人驚訝的發現是基於隨機搜索的算法也可以達到可比的結果。
 
表二:不同的NAS算法性能的總結。 不同任務的指標(%)不同。 例如,圖像分類任務的度量標準(如CIFAR10)是準確性,如果沒有特殊聲明,則它是此表中的默認度量標準。 對於ImageNet數據集,度量標準指示前1位和前5位的準確性。 對於其他類型的任務,該指標顯示在表中。 GPU天數(由公式2定義)用於通過考慮時間和資源(GPU)來評估算法的效率,而資源(GPU)表示搜索過程中使用的GPU數量,參數(百萬) 指示生成的模型的大小。 表中的破折號表示數據不可用或不適用。
在這裏插入圖片描述
在這裏插入圖片描述
圖15:CIFAR10上不同NAS算法的性能比較。 NAS算法有四種類型,對於每種NAS算法,我們選擇最佳結果進行比較。 GPU小時= GPU天數×24(無代理[116]中未提供搜索時間)。
 
到目前爲止,我們對基於NAS的模型及其性能有了一定的瞭解,但是我們不知道它是否比手動設計的模型更好。爲了弄清楚,我們使用CIFAR10和PTB數據集將自動生成的模型與人類專家設計的模型進行比較,因爲這兩個數據集分別是對象分類和語言建模任務中最常用的基線數據集之一。我們參考了來自paperswithcode.com網站3的數據,並繪製了圖16,其中圖(a)展示了CIFAR10數據集上當前表現最佳的模型。 GPIPE [131]在基於AmoebaNet-B [19]的CIFAR10上獲得了最佳結果,並且可以很容易地看到,自動生成的模型已經優於手工模型(SENet [132]和WRN [133])。在語言建模任務方面,自動生成的模型與專家設計的模型之間仍然存在很大差距。如圖16(b)所示,在PTB數據集上表現最佳的前四個模型都是手動設計的,即GPT-2 [134],FRAGE [135],AWD-LSTM-DOC [136]和Transformer-XL [137] ]。

7. 未解決的問題和未來的工作

當前,越來越多的研究人員專注於AutoML,並且提出了許多解決不同問題的出色著作。但是在理論和實踐方面仍然有許多問題需要解決。我們將這些問題總結如下。

A.完整的AutoML管道

儘管提出了多個管線庫,例如TPOT [138]和Auto-Sklearn [139],但它們都缺少數據收集過程,該過程通常是手動完成的,因此既費時又繁瑣。此外,由於動態組合每個流程的複雜性,很少有AutoML管道包含自動功能工程。但是,從長遠來看,最終目標是優化圖2中的每個過程並將它們集成到一個完整的系統中。

B.可解釋性

對於模型生成過程,算法本身通常可以找到比人工更好的配置設置。但是,沒有科學和正式的證據可以證明爲什麼某些特定的操作效果更好。例如,在BlockQNN [9]中,該塊傾向於選擇“ Concat”操作,而不是在最後一層進行元素加法,但是元素加法操作在開發階段很常見。此外,也不經常使用5×5卷積濾波器。通常,所有這些結果都是抽象且直觀地說明的,但是缺乏嚴格的數學證明。因此,AutoML的可解釋性也是重要的研究方向。

C.再現性

衆所周知,機器學習的一個大問題是它的不可複製性。 AutoML也不例外,尤其是對於NAS研究而言,因爲許多算法的源代碼不可用。 即使提供了源代碼,仍然很難重現結果,因爲某些方法甚至需要數月的搜索時間,例如[5]。 NASBench [140]更進一步,是減輕不可重複性問題的開創性工作。 它提供了包含423,624個唯一神經網絡的表格數據集。 這些網絡是從固定的基於圖的搜索空間生成和評估的,並映射到CIFAR10上經過訓練和評估的性能。 NASBench使我們能夠在幾秒鐘內執行可重複的NAS實驗。 因此,在AutoML流水線的所有過程中提高可重複性是理想的。
在這裏插入圖片描述
圖16:CIFAR10和PTB數據集的最新模型。 藍色條表示自動生成的模型,橙色條表示由人類專家設計的模型。 最佳觀看顏色。
 

D.靈活的編碼方案

NAS算法之間的最大區別是結構編碼方案,該方案全部由人預定義。因此,一個有趣的問題是,是否存在一種更通用的方式來表示網絡體系結構和原始操作?因爲通過回顧現有的NAS算法,我們可以發現所有原始操作和編碼方案都依賴於人類的經驗。換句話說,目前不太可能自動生成新的原始操作(如卷積或池化)或新穎的網絡體系結構(如轉換器[137])。

E.更多領域

如第六節所述,大多數NAS算法僅專注於生成CNN用於圖像分類,而RNN用於語言建模。在CIFAR10數據集上,某些方法的性能優於手工模型,但在PTB方面,還有很長的路要走。此外,提出了一些解決對象檢測[141]和語義分割[142],[143]任務的方法。因此,探索更多未發現的區域是未來的另一項至關重要的研究。

F.終身學習

最後但並非最不重要的一點是,人們可以發現大多數AutoML算法僅專注於解決一些固定數據集上的特定任務,例如CIFAR10和ImageNet上的圖像分類任務。但是,從長遠來看,高質量的AutoML系統應該能夠終身學習,這可以從兩個不同的角度來理解。另一方面,該系統應該能夠重用先前的知識來解決新任務(即學習學習)。例如,一個孩子在看到老虎,兔子和大象的幾張照片後可以快速識別它們,但是對於當前的機器學習算法,應該對它進行大量圖像的訓練。這方面的一個熱門話題是元學習,它旨在利用先前的經驗來設計用於新任務的模型,並且已經研究了很長時間。基於1976年發表的[144]的工作,K。A. Smith-Miles [145](2009)提出了一個統一的框架,將元學習概念推廣到跨學科研究,從而揭示了這些方法的異同。最近,一些研究開始使用元學習技術來加快搜索神經體系結構的過程,併成功地僅一次拍攝就找到了網絡[7],[146]。另一方面,AutoML系統應該具備不斷學習新數據的能力,同時保留舊數據的信息。但是,基於對當前神經網絡模型的觀察,我們可以看到,一旦使用其他數據集訓練模型,該模型在先前數據集上的性能將大大降低。增量學習是緩解這種情況的有用方法。 Li和Hoiem [147]提出了“不遺忘學習”(LwF)方法,該方法僅使用新數據訓練模型,同時保留原始功能。 iCaRL [148]是一種基於LwF的新訓練策略,它僅使用一小部分舊數據來對信息進行預訓練,並逐漸增加新數據類別的數量來訓練模型。

8. 結論

在本文中,我們根據機器學習的流程,從數據準備到模型估計,對AutoML進行了詳細而系統的綜述。 此外,由於NAS最近成爲一個非常熱門的話題,因此我們還根據幾個因素清楚地總結了現有的NAS算法:基線數據集和相應的結果,搜索所需的時間和資源成本以及性能最佳的模型的大小。 之後,我們提供了幾個有趣且重要的開放問題,以討論一些有價值的研究方向。 儘管對AutoML的研究仍處於起步階段,但我們相信上述問題將在將來得到有效解決,並希望本次調查能夠爲初學者全面而清晰地理解AutoML,併爲將來的研究做出貢獻。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章