您的位置:首頁>手機>正文

穀歌開源T2T模型庫,深度學習系統進入模組化時代!

雷鋒網AI科技評論按:6月19日,穀歌發佈了T2T(Tensor2Tensor)深度學習開源系統,這個系統的一大優點是模組化,這也就意味著系統更加靈活,適應性更強。深度學習的研究進度也會因此而加速。以下內容為雷鋒網整理編輯。

深度學習(DL)讓很多技術領域都得以迅速發展,比如機器翻譯,語音辨識,以及物體檢測。在研究社區,人們可以找到研究作者開源的代碼,複製他們的結果,幫助自己做進一步深度學習研究。然而,大多數深度學習系統使用了需要耗費大量工程開發的特殊設置,可能只對特定的問題或結構起作用。這使得在新實驗中運行以及進行實驗結果對比變得比較困難。

可喜的是,穀歌終於找到了解決這一問題的辦法,發佈了T2T(Tensor2Tensor),一個用於在TensorFlow上訓練深度學習模型的開源系統。T2T方便了對各種各樣的機器學習應用的模型進行創新,比如翻譯,句法分析,圖像說明等等。這次發佈也包含資料集庫和模型庫,包括最近幾篇論文中提到的最好模型。

在標準WMT英語-德語翻譯任務中,各模型的BLEU分數(越高越好

作為舉例,穀歌將T2T庫用於機器翻譯。如上表所示,兩種不同T2T模型,SliceNet和Transformer,性能表現勝過之前業界表現最好的模型GNMT+MoE。其中最好的T2T模型Transformer,高出GNMT模型3.8分。而GNMT本身已經高出MOSES 4分(以短語翻譯系統MOSES為最低標準)。值得注意的是,使用單塊GPU在一天內訓練就可以達到之前最好的結果,一個小型的Transformer模型在單GPU訓練一天后可以得分24.9(上圖表格並沒有顯示)。可見使用T2T效果非常明顯。現在所有人都可以自己用一塊GPU來訓練這個翻譯模型了。Github有操作說明。(地址見文末)

模組化多工訓練

T2T庫是用人們熟悉的TensorFlow工具和深度學習系統中所需的定義多個元件:如資料集,模型結構,演算法,學習速率衰減方案,超參數等等開發出來的。關鍵是,它在所有這些元件之間執行了一個標準介面,實現了當前機器學習的最佳效果。所以你可以拿走任何一個資料集,模型,演算法,或一組超參數,來執行訓練並觀察它的性能表現。通過使架構模組化,輸入資料和預測輸出之間的每一部分都是T2T函數。這意味著如果對模型架構有了新的想法,則不需要替換整個設置。你可以保留需要嵌入的部分,損失函數和其他所有部分。

這就意味著T2T很靈活,訓練不再依賴於特定的模型或資料集。甚至連比較有名的LSTM序列模型都可以用幾十行代碼來定義。此外還可以對不同領域的多個任務進行單個模型的訓練。甚至還可以在所有資料集上同時運行單個模型。MultiModel就可以這樣訓練並包含在T2T中,在很多工上都產生了良好的效果。即使在ImageNet(圖像分類)MS COCO(圖像說明)WSJ(語音辨識)WMT(翻譯)以及Penn Treebank(解析語料庫)聯合訓練也依然表現良好。這也是第一次證明了單個模型可以同時執行多個任務。

內置最佳實踐

這次的首次發佈也提供了腳本,用來生成大量資料集,廣泛用於研究社區,一些模型和大量超參數配置。trade的其他重要技巧在執行中表現良好。把他們全部列出來很難,如果你決定用T2T運行你的模型,你將得到序列的正確填充(padding)和相應的交叉熵損失,調試良好的Adam優化器參數,自我調整批次處理,同步的分散式訓練,調試良好的圖像資料增強,標籤平滑和大量的超參數配置。

例如,考慮把英語句子解析成語法選區樹(grammatical constituency trees)的任務。這個問題已經研究了幾十年才找到可靠的方法。它可以表示為一個序列到序列的問題,可以用神經網路求解,但是在過去需要調試很多次。現在運用T2T,只需要幾天就可以添加解析資料集生成器,並且調節注意力轉化器模型來訓練解決這個問題。令人興奮的是,只用了一周的時間就得到了非常好的結果。

在WSJ 23節的標準資料集上解析F1分數。只在Penn Treebank WSJ訓練集上比較了文本中經過特殊訓練過的模型。更多結果詳見論文(

https://arxiv.org/abs/1706.03762)

為T2T做貢獻

除了探索現有的模型和資料集,還可以輕鬆地定義自己的模型,並添加自己的資料集到T2T。穀歌相信已有的模型將很好的執行諸多NLP任務,所以只需添加你的資料集,也許就會得到一個有趣的結果。通過構建T2T模組,還可以很容易構建你自己的模型,並觀察其如何執行不同任務。通過這樣的方式,整個社區都可以從基線庫(library of baselines)中受益,並加速深度學習研究。所以,來Github庫,嘗試一些新模型,來為T2T做點貢獻吧!

提及表格內模型的三篇論文(雷鋒網此前也做過覆蓋與報導):

Attention Is All You Need

Depthwise Separable Convolutions for Neural Machine Translation

One Model To Learn Them All

Github操作說明:

https://github.com/tensorflow/tensor2tensor

via

Google

;雷鋒網整理編譯

喜欢就按个赞吧!!!
点击关闭提示