自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

各種NLP操作難實現(xiàn)?谷歌開源序列建??蚣躄ingvo

新聞 開源
Lingvo 是一個能夠為協(xié)作式深度學習研究提供完整解決方案的 Tensorflow 框架,尤其關(guān)注序列到序列模型。

Lingvo 是一個能夠為協(xié)作式深度學習研究提供完整解決方案的 Tensorflow 框架,尤其關(guān)注序列到序列模型。Lingvo 模型由模塊化構(gòu)件組成,這些構(gòu)件靈活且易于擴展,實驗配置集中且可定制。分布式訓(xùn)練和量化推理直接在框架內(nèi)得到支持,框架內(nèi)包含大量 utilities、輔助函數(shù)和最新研究思想的現(xiàn)有實現(xiàn)。過去兩年里,Lingvo 已被數(shù)十個研究人員在 20 篇論文中協(xié)作使用。本文作為對框架各個部分的介紹,概述了 Lingvo 的基本設(shè)計,同時還提供了展示框架能力的高級功能示例。

自然語言處理在過去一年取得了很大進步,但直接關(guān)注 NLP 或序列建模的框架還很少。本文介紹了谷歌開源的 Lingvo,它是一種建立在 TensorFlow 上的序列建??蚣?。該框架重點關(guān)注協(xié)作實現(xiàn)與共享代碼庫,能極大提升代碼復(fù)用與研究迭代速度,NLP 的今年就靠你了~

Lingvo 是世界語(Esperanto)中的一個單詞,它表示「語言」的意思。這一命名展示了 Lingvo 框架的根源:它是由 TensorFlow 開發(fā)的通用深度學習框架,它重點關(guān)注自然語言處理相關(guān)的序列建模方法,包括機器翻譯、語音識別和語音合成等。

項目地址:github.com/tensorflow/…

在谷歌內(nèi)部,Lingvo 框架非常有吸引力,使用它的研究人員越來越多。目前,有數(shù)十篇獲得 SOTA 結(jié)果的論文都通過 Lingvo 框架得到了最優(yōu)的復(fù)現(xiàn),當然開源后將會有越來越多的新實現(xiàn)。從傳統(tǒng)的 RNN 序列模型到目前流行的 Transformer,再到包含變分自編碼器模塊的前沿模型,Lingvo 支持的序列建模架構(gòu)非常多。

為了支持研究社區(qū)并鼓勵復(fù)現(xiàn)研究論文,谷歌開源了這項框架。他們表示以后谷歌發(fā)布的一些序列建模新研究也會嘗試采用 Lingvo 框架,它的便捷性將提升 NLP 研究的速度。

Lingvo 主要支持大量研究團體在一個共享代碼庫中從事語音和自然語言處理相關(guān)問題的研究。它的設(shè)計原則如下:

  • 單個代碼塊應(yīng)該精細且模塊化,它們會使用相同的接口,同時也容易擴展;
  • 實驗應(yīng)該是共享的、可比較的、可復(fù)現(xiàn)的、可理解的和正確的;
  • 性能應(yīng)該可以高效地擴展到生產(chǎn)規(guī)模的數(shù)據(jù)集,或擁有數(shù)百個加速器的分布式訓(xùn)練系統(tǒng);
  • 當模型從研究轉(zhuǎn)向產(chǎn)品時應(yīng)該盡可能共享代碼。

圖 1:Lingvo 框架整體結(jié)構(gòu),它展示了模型如何進行實例化、訓(xùn)練、評估和部署。

Lingvo 是在考慮協(xié)作研究的基礎(chǔ)上構(gòu)建的,它主要通過在不同任務(wù)之間共享公共層的實現(xiàn),從而提升代碼的復(fù)用程度。此外,所有層都實現(xiàn)了相同的公共接口,并以相同的方式布局代碼結(jié)構(gòu)。這不僅會產(chǎn)生更簡潔和易讀的代碼,同時其它任務(wù)上的改良也可以便捷地應(yīng)用到我們的任務(wù)上。實現(xiàn)這種一致性代碼確實會有更多的成本,例如更加規(guī)范和模板化的代碼。但是 Lingvo 也在嘗試減少這種成本,以確保更快地迭代研究成果。

協(xié)作的另一個方面是共享可復(fù)現(xiàn)的結(jié)果。Lingvo 為檢查模型超參數(shù)配置提供了集中的地址,這不僅可以記錄重要的實驗,同時通過訓(xùn)練相同的模型,其它研究者可以更輕松地復(fù)現(xiàn)我們的研究成果。

  1. def Task(cls): p = model.AsrModel.Params() p.name = 'librispeech' # Initialize encoder params. ep = p.encoder # Data consists 240 dimensional frames (80 x 3 frames), which we # re-interpret as individual 80 dimensional frames. See also, # LibrispeechCommonAsrInputParams. ep.input_shape = [None, None, 801] ep.lstm_cell_size = 1024 ep.num_lstm_layers = 4 ep.conv_filter_shapes = [(33132), (333232)] ep.conv_filter_strides = [(22), (22)] ep.cnn_tpl.params_init = py_utils.WeightInit.Gaussian(0.001) # Disable conv LSTM layers. ep.num_conv_lstm_layers = 0 # Initialize decoder params. dp = p.decoder dp.rnn_cell_dim = 1024 dp.rnn_layers = 2 dp.source_dim = 2048 # Use functional while based unrolling. dp.use_while_loop_based_unrolling = False tp = p.train tp.learning_rate = 2.5e-4 tp.lr_schedule = lr_schedule.ContinuousLearningRateSchedule.Params().Set( start_step=50000, half_life_steps=100000, min=0.01) # Setting p.eval.samples_per_summary to a large value ensures that dev, # devother, test, testother are evaluated completely (since num_samples for # each of these sets is less than 5000), while train summaries will be # computed on 5000 examples. p.eval.samples_per_summary = 5000 p.eval.decoder_samples_per_summary = 0 # Use variational weight noise to prevent overfitting. p.vn.global_vn = True p.train.vn_std = 0.075 p.train.vn_start_step = 20000 return p 
  2. 復(fù)制代碼 

代碼1:Lingvo 中的任務(wù)配置示例。每個實驗的超參數(shù)都是在其所屬的類中配置的,與構(gòu)建網(wǎng)絡(luò)和檢查版本控制的代碼不同。

雖然 Lingvo 一開始重點關(guān)注 NLP,但它本質(zhì)上非常靈活。用于圖像分割和點云分類任務(wù)的模型已經(jīng)使用該框架成功實現(xiàn)。它還支持知識蒸餾、GAN 和多任務(wù)模型。同時,該框架沒有因為便捷而犧牲速度,它具有優(yōu)化的輸入流程和快速的分布式訓(xùn)練。最后,Lingvo 還著眼于生產(chǎn)化,甚至有一條明確的路徑來將模型移植到移動端。

論文:Lingvo: a Modular and Scalable Framework for Sequence-to-Sequence Modeling

論文地址:arxiv.org/abs/1902.08… 

 

責任編輯:張燕妮 來源: 頭條科技
相關(guān)推薦

2020-03-17 09:42:00

谷歌開源機器學習

2020-08-26 11:50:25

谷歌開源工具

2014-12-31 16:48:43

Touch touchevent多點觸摸

2021-02-04 12:46:54

谷歌開源安全漏洞

2021-02-22 14:21:21

開源軟件漏洞網(wǎng)絡(luò)安全

2012-07-31 09:02:49

Apworks

2009-06-23 15:51:00

JSF框架

2010-07-01 16:38:28

UML序列圖

2022-10-20 15:30:04

操作系統(tǒng)開源

2020-10-22 13:10:56

機器學習人工智能計算機

2020-06-15 10:42:42

谷歌Android開發(fā)者

2010-06-03 19:46:44

Hadoop

2024-10-09 08:27:30

2013-12-25 13:26:15

開源開源專訪谷歌

2024-07-29 08:09:36

BERT大型語言模型LLM

2009-12-25 10:46:36

WPF Page

2020-03-04 09:35:55

開源技術(shù) 軟件

2025-03-28 10:41:53

2023-08-31 07:53:30

2010-02-22 16:00:22

WCF序列化
點贊
收藏

51CTO技術(shù)棧公眾號