當前位置:
首頁 > 科技 > 資源 | Petuum&CMU開源Texar:一個模塊化、多功能、可擴展的文本生成工具包

資源 | Petuum&CMU開源Texar:一個模塊化、多功能、可擴展的文本生成工具包


選自Petuum


機器之心編譯

參與:張倩、王淑婷





為促成不同文本生成任務的快速搭建以及任務之間的技術共享,由 Petuum 公司和卡耐基梅隆大學 (CMU) 為主要貢獻者的通用工具包——Texar 正式開源。該工具包支持廣泛的機器學習應用,重點聚焦於文本生成任務,尤其適合從事快速模型原型設計和實驗的研究人員及從業者。




文本生成簡介




文本生成旨在基於輸入數據或機器表示生成自然語言, 包括廣泛的自然語言處理(NLP)任務,例如機器翻譯、對話系統、文本摘要、文章寫作、文本複述及修改、圖像加註等。儘管由於深度學習方法的整合,該領域在學術和產業方面都發展迅速,但為了改進技術、真正實現在現實世界的應用,還需要投入巨大的科研力量。




文本生成任務有很多共同的屬性及兩個中心目標:






  • 生成人類水平的、合乎語法的可讀文本。



  • 生成包含所有從輸入中推斷出的相關信息的文本。例如,在機器翻譯中,生成的翻譯句子必須與原句表達相同的含義。




為了達到這些目標,幾種關鍵技術的應用越來越廣泛,如神經編碼-解碼器、注意力機制、記憶網路、對抗方法、強化學習、結構化監督,以及優化、數據預處理、結果後處理和評價等。這些技術經常以多種不同的方式結合在一起,解決不同的問題(見圖 1)。





圖 1:文本生成任務中用到的幾種模型架構示例。E:編碼器(encoder);D:解碼器(decoder);C:分類器(classifier);A:注意力(attention);Prior:先驗分布(prior distribution);M:記憶(memory)。




因此需要一個開源平台將這些不同但緊密相關的文本生成應用整合起來,提供核心演算法的清晰、一致的實現。這一整合平台將實現不同演算法之間共有要素的重複使用;將設計、實現及實驗標準化;促進可復現的研究;特別是促成不同文本生成任務之間的技術共享---基於此,為特定任務改進的演算法將得以迅速評估並泛化到許多其他任務。






Texar 簡介




為此,我們開發了 Texar,一個專註於文本生成任務的開源工具包,使用 TensorFlow 語言。基於模塊化、多功能及可擴展的核心設計理念,Texar 提取了文本生成中不同任務和方法的共同模式,並創建了一個高度可重複利用的模塊和功能庫。




圖 2:Texar 的主要模塊和功能




多功能性




Texar 包含廣泛的模塊和功能,用於組成任意的模型架構並實現各種學習演算法,如最大似然估計、強化學習、對抗性學習、概率建模等(圖 2)。




模塊化



Texar 將各種複雜的機器學習模型/演算法分解成高度可重複利用的模型架構、損失函數和學習過程模塊等。




用戶可以像組裝積木一樣組裝 Texar 的模塊,輕鬆直觀地構建任意自己想要的模型。模塊化的設計使得各模塊的插入和替換變得簡單,例如,在最大似然學習和強化學習之間切換隻需改變幾行代碼即可。




可擴展性





Texar 可以輕鬆地與任何用戶定製的外部模塊集成,並且與 TensorFlow 開源社區完全兼容,包括 TensorFlow 本身的介面、功能和其他資源都能直接與 Texar 一起使用。




可用性




使用 Texar,用戶既可以通過簡單的 Python/YAML 配置文件來定製已有的模型, 也可以通過 Texar Python API 編程實現任意複雜的模型,達到最大的可定製性。




Texar 提供了自動的變數重用機制(無需擔心複雜的 TensorFlow 變數範圍)、簡單的函數式調用來執行各模塊的邏輯功能,而且每個模塊都有豐富的配置選項和合理的默認值。




Texar 本身的代碼有良好的結構、統一的設計模式、一致的代碼風格,可讀性強。Texar 也提供了清晰的文檔和豐富的教程示例。




Texar 目前已用於支持 Petuum 公司的若干個研究和工程項目。他們希望這一工具包也能幫助社區加速文本生成及其它技術的發展,並歡迎研究人員及從業者的加入社區,進一步豐富這一工具,共同推進文本生成研究及相關應用的進展。




打開以下鏈接,了解更多關於 Texar 的信息:






  • 網站:https://texar.io



  • GitHub:https://github.com/asyml/texar



  • 示例:https://github.com/asyml/texar/blob/master/examples



  • 文檔:https://texar.readthedocs.io/



  • 博客: https://medium.com/@texar



  • 技術報告:https://arxiv.org/pdf/1809.00794.pdf




原文鏈接:

https://medium.com/@Petuum/introducing-texar-a-modularized-versatile-and-extensible-toolkit-for-text-generation-and-beyond-b4e3289d5205






本文為機器之心編譯,

轉載請聯繫本公眾號獲得授權



?------------------------------------------------


加入機器之心(全職記者 / 實習生):hr@jiqizhixin.com


投稿或尋求報道:

content

@jiqizhixin.com


廣告 & 商務合作:bd@jiqizhixin.com

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

深度神經網路為什麼不易過擬合?傅里葉分析發現固有頻譜偏差
小米開源移動端深度學習框架MACE:可轉換TensorFlow模型

TAG:機器之心 |