谷歌宣佈開源AdaNet!
整合學習是結合不同機器學習(ML)模型預測的藝術,廣泛用於神經網路以實現最先進的效能,受益於豐富的歷史和理論保證,以便在諸如Netflix和各種Kaggle比賽等挑戰中取得成功,獲得獎品。然而,由於訓練時間長,它們在實踐中使用不多,而且ML模型候選者選擇需要其自己的領域專業知識。但隨著計算能力和專用深度學習硬體(如TPU)變得更容易獲得,機器學習模型將變得更大,系統整合將變得更加突出。現在,想象一個工具可以自動搜尋神經架構,並學會將最好的架構組合成一個高質量的模型。
今天,我們很高興能夠分享AdaNet,這是一個基於TensorFlow的輕量級框架,可以通過最少的專家干預自動學習高質量的模型。AdaNet以我們最近的強化學習和基於進化的AutoML努力為基礎,在提供學習保證的同時快速靈活。重要的是,AdaNet提供了一個通用框架,不僅可以學習神經網路架構,還可以學習整合以獲得更好的模型。
AdaNet易於使用,並且可以建立高質量的模型,為ML從業者節省了通常用於選擇最佳神經網路架構的時間,實現了將神經架構學習為子網集合的自適應演算法。AdaNet能夠新增不同深度和寬度的子網,以建立多樣化的集合,並通過引數數量來改善效能。
快速且容易使用
AdaNet實現了TensorFlow Estimator介面,通過封裝訓練、評估、預測和服務匯出,大大簡化了機器學習程式設計。它整合了開源工具,如TensorFlow Hub模組、TensorFlow模型分析和Google Cloud的Hyperparameter Tuner。分散式訓練支援可顯著縮短訓練時間,並可與可用的CPU和加速器(例如GPU)進行線性擴充套件。
AdaNet在CIFAR-100上每列車步(X軸)的精度(y軸)。藍線是訓練集上的準確度,紅線是測試集上的效能。一個新的子網路開始訓練每一百萬個步驟,並最終提高整體的效能。在新增新子網之前,灰線和綠線是整體的精確度。
由於TensorBoard是用於在訓練期間視覺化模型度量的最佳TensorFlow功能之一,因此AdaNet可與其無縫整合,以監控子網路訓練、集合組合和效能。當AdaNet完成訓練後,它會匯出一個可以使用TensorFlow服務部署的SavedModel。
學習保證
構建神經網路集合有幾個挑戰:要考慮的最佳子網架構是什麼?是否最好重用相同的架構或鼓勵多樣性?雖然具有更多引數的複雜子網將傾向於在訓練集上表現更好,但由於其更大的複雜性,它們可能不會推廣到看不見的資料。這些挑戰源於評估模型效能。我們可以評估來自訓練集的保持集分割的效能,但這樣做會減少可用於訓練神經網路的示例數量。
相反,AdaNet的方法(在ICML 2017中的“AdaNet:人工神經網路的自適應結構學習”中提出)是為了優化平衡集合在訓練集上的表現與其推廣到看不見的資料的能力之間的權衡的目標。直覺是指整體只有當它改善整體訓練損失而不是影響其概括能力時才包括候選子網。這保證了:
集合的泛化誤差受其訓練誤差和複雜性的限制。
通過優化此目標,我們直接最小化此限制。
優化此目標的一個實際好處是,它不需要保留集來選擇要新增到集合中的候選子網。這樣做的另一個好處是可以使用更多的訓練資料來訓練子網。要了解更多資訊,請瀏覽有關AdaNet目標的教程。
(https://github.com/tensorflow/adanet/blob/v0.1.0/adanet/examples/tutorials/adanet_objective.ipynb)
可擴充套件
我們認為,為研究和生產使用提供有用的AutoML框架的關鍵是不僅要提供合理的預設值,還要允許使用者嘗試自己的子網/模型定義。因此,機器學習研究人員,從業者和愛好者被邀請使用高階TensorFlow API(如tf.layers)定義他們自己的AdaNet adanet.subnetwork.Builder。
已經在其系統中整合了TensorFlow模型的使用者可以輕鬆地將他們的TensorFlow程式碼轉換為AdaNet子網,並使用adanet.Estimator提高模型效能,同時獲得學習保證。AdaNet將探索他們定義的候選子網的搜尋空間,並學習整合子網。例如,我們採用了NASNet-A CIFAR架構的開源實現,將其轉換為子網,並在八次AdaNet迭代後對CIFAR-10最先進的結果進行了改進。此外,我們的模型使用更少的引數實現了這個結果:
2018年Zoph等人提出的NASNet-A模型與AdaNet學習在CIFAR-10上結合NASNet-A子網路的效能。
還邀請使用者將自己的自定義損失功能用作AdaNet目標的一部分,以便訓練迴歸、分類和多工學習問題。
使用者還可以通過擴充套件adanet.subnetwork.Generator類來完全定義要探索的候選子網的搜尋空間。這允許他們根據可用硬體增加或減少搜尋空間。子網的搜尋空間可以簡單到使用不同的隨機種子複製相同的子網配置,訓練具有不同超引數組合的數十個子網,並讓AdaNet選擇包含在最終集合中的子網。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31509949/viewspace-2218477/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 微軟宣佈 Power Fx 開源!微軟
- AI開源專案 - AdaNetAI
- Java之父James Gosling宣佈離開谷歌JavaGo谷歌
- 皮克斯宣佈開源Universal Scene Description
- 曠視宣佈開源深度學習框架“天元”深度學習框架
- 微軟宣佈收回旗下開源技術子公司微軟
- 美國政府宣佈將 Data.gov 開源化Go
- 重磅!英偉達宣佈開源 Linux GPU 核心驅動LinuxGPU
- 無伺服器(ServerLess)PaaS—Rainbond宣佈開源伺服器ServerAI
- Android 開源專案維護者宣佈退出Android
- 螞蟻集團自研資料庫 OceanBase 宣佈正式開源 併成立開源社群資料庫
- Uber 宣佈開源 Plato 人工智慧對話平臺人工智慧
- AMD 宣佈開源 Linux 顯示卡驅動與 GPUOpen 工具LinuxGPU
- 文件型 NoSQL 資料庫 SequoiaDB 正式宣佈開源SQL資料庫
- 【Alright 】SUN宣佈JavaFX將完全開源角逐市場Java
- 谷歌宣佈 DNS Over HTTPS 服務普遍可用谷歌DNSHTTP
- 谷歌宣佈:Grow with Google成長計劃走進中國谷歌Go
- 谷歌與Solo.io宣佈將Ambient Mesh引入Istio谷歌
- 谷歌宣佈沉浸式VR音訊SDK Resonance Audio谷歌VR音訊NaN
- 雅虎宣佈停止開發YUIUI
- IE宣佈開源專案:為Chrome開發工具引入IE介面卡Chrome
- 架構之爭,Wave Computing 宣佈MIPS將開源架構
- Aerospike 宣佈開源其記憶體中的 NoSQL 資料庫ROS記憶體SQL資料庫
- 一個時代的結束:前董事長埃裡克·施密特宣佈離開谷歌谷歌
- 谷歌宣佈9月30日關閉社交服務Orkut谷歌
- 微軟宣佈.NET開發環境開源 支援三大作業系統微軟開發環境作業系統
- 特斯拉宣佈降薪!開源節流,疫情之下如何提升企業管理效能
- 英偉達宣佈開源PhysX A卡,使用者或將可以享受華麗特效特效
- Firebug宣佈停止開發更新
- Kotlin-first - 谷歌宣佈Kotlin成為Android開發首選語言Kotlin谷歌Android
- 剛剛,李飛飛在谷歌開發者大會宣佈谷歌AI中國中心正式成立谷歌AI
- 微軟宣佈ASP.NET5開源,跨Win10、Mac和Linux微軟ASP.NETWin10MacLinux
- Mozilla 宣佈物聯網開放框架框架
- 谷歌宣佈一個用Rust編寫的新作業系統:KataOS谷歌Rust作業系統
- 弱化PC處理器!Intel宣佈大事:與谷歌合作自動駕駛Intel谷歌自動駕駛
- 領英宣佈開源其兩大網站問題自動修復工具網站
- 谷歌開源總監迪博納專訪:開源如何改變了谷歌谷歌
- 谷歌宣佈將於6月7日舉辦「Stadia」釋出會谷歌