摘要:據介紹,在谷歌近期的強化學習和基于進化的的基礎上構建,快速靈活同時能夠提供學習保證。剛剛,谷歌發布博客,開源了基于的輕量級框架,該框架可以使用少量專家干預來自動學習高質量模型。
TensorFlow 是相對高階的機器學習庫,用戶可以方便地用它設計神經網絡結構,而不必為了追求高效率的實現親自寫 C++或 CUDA 代碼。它和 Theano 一樣都支持自動求導,用戶不需要再通過反向傳播求解梯度。
而基于 TensorFlow 的輕量級框架 AdaNet,可以使用少量專家干預來自動學習高質量模型。據介紹,AdaNet 在谷歌近期的強化學習和基于進化的 AutoML 的基礎上構建,快速靈活同時能夠提供學習保證(learning guarantee)。重要的是,AdaNet 提供通用框架,不僅能用于學習神經網絡架構,還能學習集成架構以獲取更好的模型。
結合不同機器學習模型預測的集成學習在神經網絡中得到廣泛使用以獲得最優性能,它從其悠久歷史和理論保證中受益良多,從而在 Netflix Prize 和多項 Kaggle 競賽等挑戰賽中取得勝利。但是,因其訓練時間長、機器學習模型的選擇要求領域專業知識,它們在實踐中并不那么常用。而隨著算力、深度學習專用硬件(如 TPU)的發展,機器學習模型將越來越大,集成技術也將越發重要。現在,想象一個工具,它能夠自動搜索神經架構,學習將最好的神經架構集成起來構建高質量模型。
剛剛,谷歌發布博客,開源了基于 TensorFlow 的輕量級框架 AdaNet,該框架可以使用少量專家干預來自動學習高質量模型。AdaNet 在谷歌近期的強化學習和基于進化的 AutoML 的基礎上構建,快速靈活同時能夠提供學習保證(learning guarantee)。重要的是,AdaNet 提供通用框架,不僅能用于學習神經網絡架構,還能學習集成架構以獲取更好的模型。
AdaNet 易于使用,能夠創建高質量模型,節省 ML 從業者在選擇最優神經網絡架構上所花費的時間,實現學習神經架構作為集成子網絡的自適應算法。AdaNet 能夠添加不同深度、寬度的子網絡,從而創建不同的集成,并在性能改進和參數數量之間進行權衡。
AdaNet 適應性地增長集成中神經網絡的數量。在每次迭代中,AdaNet 衡量每個候選神經網絡的集成損失,然后選擇最好的神經架構進入下一次迭代。
如果對Python編程、網絡爬蟲、機器學習、數據挖掘、web開發、人工智能、面試經驗交流。感興趣可以519970686,群內會有不定期的發放免費的資料鏈接,這些資料都是從各個技術網站搜集、整理出來的,如果你有好的學習資料可以私聊發我,我會注明出處之后分享給大家。
快速易用AdaNet 實現了 TensorFlow Estimator 接口,通過壓縮訓練、評估、預測和導出極大地簡化了機器學習編程。它整合如 TensorFlow Hub modules、TensorFlow Model Analysis、Google Cloud』s Hyperparameter Tuner 這樣的開源工具。它支持分布式訓練,極大減少了訓練時間,使用可用 CPU 和加速器(例如 GPU)實現線性擴展。
AdaNet 在 CIFAR-100 上每個訓練步(x 軸)對應的準確率(y 軸)。藍線是訓練集上的準確率,紅線是測試集上的性能。每一百萬個訓練步開始一個新的子網絡,最終提高整個集成網絡的性能。灰色和綠色線是添加新的子網絡之前的集成準確率。
TensorBoard 是 TensorFlow 最好的功能之一,能夠可視化訓練過程中的模型指標。AdaNet 將 TensorBoard 無縫集成,以監控子網絡的訓練、集成組合和性能。AdaNet 完成訓練后將導出一個 SavedModel,可使用 TensorFlow Serving 進行部署。
學習保證構建神經網絡集成存在多個挑戰:最佳子網絡架構是什么?重復使用同樣的架構好還是鼓勵差異化好?雖然具備更多參數的復雜子網絡在訓練集上表現更好,但也因其極大的復雜性它們難以泛化到未見過的數據上。這些挑戰源自對模型性能的評估。我們可以在訓練集分留出的數據集上評估模型表現,但是這么做會降低訓練神經網絡的樣本數量。
不同的是,AdaNet 的方法是優化一個目標函數,在神經網絡集成在訓練集上的表現與泛化能力之間進行權衡。直觀上,即僅在候選子網絡改進網絡集成訓練損失的程度超過其對泛化能力的影響時,選擇該候選子網絡。這保證了:
集成網絡的泛化誤差受訓練誤差和復雜度的約束。
通過優化這一目標函數,能夠直接最小化這一約束。
優化這一目標函數的實際收益是它能減少選擇哪個候選子網絡加入集成時對留出數據集的需求。另一個益處是允許使用更多訓練數據來訓練子網絡。
AdaNet 目標函數教程:https://github.com/tensorflow...
可擴展谷歌認為,創建有用的 AutoML 框架的關鍵是:研究和產品使用方面不僅能夠提供合理的默認設置,還要讓用戶嘗試自己的子網絡/模型定義。這樣,機器學習研究者、從業者、喜愛者都能夠使用 tf.layers 這樣的 API 定義自己的 AdaNet adanet.subnetwork.Builder。
已在自己系統中融合 TensorFlow 模型的用戶可以輕松將 TensorFlow 代碼轉換到 AdaNet 子網絡中,并使用 adanet.Estimator 來提升模型表現同時獲取學習保證。AdaNet 將探索他們定義的候選子網絡搜索空間,并學習集成這些子網絡。例如,采用 NASNet-A CIFAR 架構的開源實現,把它遷移到一個子網絡,經過 8 次 AdaNet 迭代后提高其在 CIFAR-10 上的當前最優結果。此外,獲得的模型在更少參數的情況下獲得了以下結果:
在 CIFAR-10 數據集上,NASNet-A 模型的表現 vs 結合多個小型 NASNet-A 子網絡的 AdaNet 的表現。
通過固定或自定義 tf.contrib.estimator.Heads,用戶可以使用自己定義的損失函數作為 AdaNet 目標函數的一部分來訓練回歸、分類和多任務學習問題。
用戶也可以通過拓展 adanet.subnetwork.Generator 類別,完全定義要探索的候選子網絡搜索空間。這使得用戶能夠基于硬件擴大或縮小搜索空間范圍。子網絡的搜索空間可以簡單到復制具備不同隨機種子的同一子網絡配置,從而訓練數十種具備不同超參數組合的子網絡,并讓 AdaNet 選擇其中一個進入最終的集成模型。
出處:https://blog.csdn.net/Stephen...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44906.html
摘要:我們對種用于數據科學的開源深度學習庫作了排名。于年月發布了第名,已經躋身于深度學習庫的上半部分。是最流行的深度學習前端第位是排名較高的非框架庫。頗受對數據集使用深度學習的數據科學家的青睞。深度學習庫的完整列表來自幾個來源。 我們對23種用于數據科學的開源深度學習庫作了排名。這番排名基于權重一樣大小的三個指標:Github上的活動、Stack Overflow上的活動以及谷歌搜索結果。排名結果...
摘要:谷歌表示,與搜索并列,是谷歌機器學習技術最重要的產品服務載體。谷歌宣布了基于機器學習技術的全面升級,很可能是其誕生以來的最大升級。在去年的大會上,谷歌宣布了其第一代。 showImg(https://segmentfault.com/img/bVNTKT?w=900&h=385); Google I/O Google I/O 是由 Google 舉行的網絡開發者年會,討論的焦點是用 G...
閱讀 2255·2021-11-23 09:51
閱讀 1089·2021-11-22 15:35
閱讀 4886·2021-11-22 09:34
閱讀 1623·2021-10-08 10:13
閱讀 3029·2021-07-22 17:35
閱讀 2556·2019-08-30 15:56
閱讀 3092·2019-08-29 18:44
閱讀 3107·2019-08-29 15:32