日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

谷歌大脑开源项目AutoML-Zero:仅用数学运算就能探索出机器学习算法

發(fā)布時間:2023/11/22 综合教程 46 生活家
生活随笔 收集整理的這篇文章主要介紹了 谷歌大脑开源项目AutoML-Zero:仅用数学运算就能探索出机器学习算法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  近年來,機(jī)器學(xué)習(xí)取得了巨大的成功,這些成功得益于機(jī)器學(xué)習(xí)算法的不斷優(yōu)化,例如深度神經(jīng)網(wǎng)絡(luò)。深度神經(jīng)網(wǎng)絡(luò)在不斷發(fā)現(xiàn)問題和解決問題的過程中又推動了 AutoML 的發(fā)展。到目前為止,AutoML 一直致力于通過組合復(fù)雜的手工設(shè)計組件來構(gòu)建解決方案。一個典型的例子是神經(jīng)架構(gòu)搜索,這是一個子領(lǐng)域,在這個子領(lǐng)域中,人們可以從復(fù)雜的層(例如卷積、批標(biāo)準(zhǔn)化和 dropout)自動構(gòu)建神經(jīng)網(wǎng)絡(luò),這也是許多研究的主題。

  在AutoML中使用的這些手工設(shè)計的組件的另一種方法是從頭開始搜索整個算法,這很有挑戰(zhàn)性。因?yàn)樗枰剿鲝V泛而稀疏的搜索空間,但它有很大的潛在好處:它不會偏向我們已知的內(nèi)容,而且有可能發(fā)現(xiàn)新的、更好的機(jī)器學(xué)習(xí)架構(gòu)。

  打個比方,我們可以這樣來描述 AutoML:如果一個人要建造一座房子,那么他從零開始動手,要比只使用預(yù)制板建造房子有更多的靈活性或改進(jìn)的潛力。然而,對房屋的設(shè)計卻是極為艱難的一個步驟,因?yàn)榕c預(yù)制的整個房間的組合相比,將磚瓦和砂漿結(jié)合起來的可能方法要多得多。因此,早期對算法從頭開始學(xué)習(xí)的研究主要集中在算法的某一方面,例如學(xué)習(xí)規(guī)則,以此來減少搜索空間和所需的計算量。自 20 世紀(jì) 90 年代初以來該問題就沒有被重新研究過,直到現(xiàn)在。

  我們最近將在ICML 2020 上發(fā)表的論文,論證了從零開始成功地進(jìn)化機(jī)器算法是有可能的。我們提出的方法,稱為 AutoML_Zero,從空程序開始,僅使用基本的數(shù)學(xué)運(yùn)算作為構(gòu)建塊,應(yīng)用進(jìn)化方法自動找到完整機(jī)器學(xué)習(xí)算法的代碼。針對小圖像分類問題,我們的方法重新發(fā)現(xiàn)了基本的機(jī)器學(xué)習(xí)技術(shù),如帶有反向轉(zhuǎn)播的二層神經(jīng)網(wǎng)絡(luò)、線性回歸等,這些都是多年來研究人員發(fā)明的。這一結(jié)果證明了自動發(fā)現(xiàn)更多新的機(jī)器學(xué)習(xí)算法來解決未來更難的問題的可行性。

  論文地址:

  https://arxiv.org/abs/2003.03384

  GitHub 地址:

  https://github.com/google-research/google-research/tree/master/automl_zero

  從零開始進(jìn)化學(xué)習(xí)算法

  我們使用經(jīng)典進(jìn)化方法的一種變體來搜索算法空間。自 20 世紀(jì) 80 年代以來,這些方法在發(fā)現(xiàn)計算機(jī)程序方面已被證明是有用的。它們的簡單性和可擴(kuò)展性使其特別適合于學(xué)習(xí)算法的發(fā)現(xiàn)。

  在我們的例子中,population 是用空程序初始化的。然后,它在重復(fù)循環(huán)中進(jìn)化,以產(chǎn)生越來越好的學(xué)習(xí)算法。在每個周期中,兩個(或更多)隨機(jī)模型相互競爭,最精確的模型成為父模型。親本克隆自身產(chǎn)生一個子代,子代會發(fā)生變異。也就是說,子代碼是以隨機(jī)的方式修改的,這可能意味著,例如,在代碼中任意插入、刪除或修改一行。然后在圖像分類任務(wù)中對變異算法進(jìn)行評估。

  population 用空程序進(jìn)行初始化。歷經(jīng)許多代之后,我們看到一個更進(jìn)化的 population,它的兩個算法相互競爭。最準(zhǔn)確的算法將贏得生“孩子”的機(jī)會。經(jīng)過許多這樣的事件之后,最終的 population 將包含高度精確的分類器。

  探索困難的搜索空間

  與以前的 AutoML 工作相比,我們的 AutoML-Zero 設(shè)置使得搜索空間非常稀疏,在 10^{12} 個候選者中可能只有一個精確的算法。這是由于提供給算法的構(gòu)建塊的粒度造成的,這些構(gòu)建塊只包括變量賦值、加法和矩陣乘法等基本操作。在這樣的環(huán)境中,隨機(jī)搜索無法在合理的時間內(nèi)找到解決方案,然而根據(jù)我們的測量,進(jìn)化速度可以加快數(shù)萬倍。我們將搜索分布在偶爾交換算法的多臺機(jī)器上(類似于現(xiàn)實(shí)生活中的遷移。)我們還構(gòu)建了小的代理分類任務(wù),用于評估每個子算法,并使用高度優(yōu)化的代碼來執(zhí)行這個評估。

  盡管如此稀疏,但隨著時間的推移,進(jìn)化搜索會發(fā)現(xiàn)更復(fù)雜、更有效的技術(shù)。最初,出現(xiàn)了最簡單的算法,該算法用硬編碼的權(quán)重表示線性模型。隨著時間的推移,該算法發(fā)明了隨機(jī)梯度下降法(SGD)來學(xué)習(xí)權(quán)重,盡管梯度本身并沒有作為構(gòu)建塊提供。雖然一開始存在缺陷,但 SGD 的問題得到了相對較快的解決,開始了對預(yù)測和學(xué)習(xí)算法進(jìn)行一系列改進(jìn)。在我們的簡單場景中,該過程發(fā)現(xiàn)了幾個已知對研究社區(qū)有用的概念。最后,我們的方法成功地構(gòu)建了一個模型,性能優(yōu)于類似復(fù)雜度的手工設(shè)計的模型。

進(jìn)化實(shí)驗(yàn)的進(jìn)展,隨著時間的推移,從左到右,我們看到算法變得更加復(fù)雜,更加正確。

  算法演進(jìn)

  上圖包含了由我們的方法產(chǎn)生的最佳進(jìn)化算法。最終的算法包括數(shù)據(jù)增強(qiáng)、雙線性模型、梯度歸一化和權(quán)重平均等噪聲注入技術(shù),并且對基線的改進(jìn)也轉(zhuǎn)移到搜索過程中未使用的數(shù)據(jù)集上。我們的論文描述了進(jìn)化代碼的不同行是如何實(shí)現(xiàn)這些技術(shù)的,并通過消融研究驗(yàn)證了它們的價值。

  通過更多的實(shí)驗(yàn),我們證明了通過控制“棲息地”(即進(jìn)化過程評估算法適應(yīng)度的任務(wù))來引導(dǎo)進(jìn)化搜索是可行的。例如,當(dāng)我們減少數(shù)據(jù)量時,出現(xiàn)了有噪聲的 ReLU,這有助于正則化。或者,當(dāng)我們減少訓(xùn)練步數(shù)時,我們會見證學(xué)習(xí)率衰減的出現(xiàn),從而實(shí)現(xiàn)更快的收斂。這類有針對性的發(fā)現(xiàn)很重要:如果自動工具發(fā)明器能想出一把錘子或一根針,事情可能會很有趣;但如果你給它看一些釘子時,它會想到一把錘子,給它看一些線時,它想出一根針,那就更有趣了。通過這樣的類比,在我們的工作中,當(dāng)存在少量數(shù)據(jù)(“釘子”)時,就會發(fā)現(xiàn)有噪聲的 ReLU(“錘子”),而當(dāng)存在少量訓(xùn)練步驟時,學(xué)習(xí)率就會下降。

  結(jié)論

  我們認(rèn)為這只是初步工作。我們還沒有從根本上進(jìn)化出新的算法,但令人鼓舞的是,進(jìn)化后的算法可以超越搜索空間中存在的簡單神經(jīng)網(wǎng)絡(luò)。目前,搜索過程需要大量的計算。隨著未來幾年可用硬件規(guī)模的擴(kuò)大和搜索方法的效率提高,搜索空間可能會變得更具包容性,搜索結(jié)果也會得到改善。隨著我們對 AutoML-Zero 的進(jìn)一步了解,我們對發(fā)現(xiàn)新的機(jī)器學(xué)習(xí)算法的前景感到興奮。

  作者介紹:

  Esteban Real,主任軟件工程師。Chen Liang,軟件工程師,供職于 Google Research、Brain Team。

  原文鏈接:

  https://ai.googleblog.com/2020/07/automl-zero-evolving-code-that-learns.html

總結(jié)

以上是生活随笔為你收集整理的谷歌大脑开源项目AutoML-Zero:仅用数学运算就能探索出机器学习算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。