當前位置:
首頁 > 知識 > NeuronBlocks:微軟發布的模塊化深度學習NLP工具集

NeuronBlocks:微軟發布的模塊化深度學習NLP工具集


NeuronBlocks - NLP DNN Toolkit - Building Your NLP DNN Models Like Playing Lego

byMicrosoft


Github項目地址:

https://github.com/Microsoft/NeuronBlocks

概覽

NeuronBlocks是一個NLP深度學習建模工具包,可幫助工程師構建用於NLP任務的神經網路模型訓練的端到端管道。該工具包的主要目標是將NLP深度神經網路模型構建的開發成本降到最低,包括訓練階段和推理階段。有關詳細信息,請查看我們的論文:NeuronBlocks -- Building Your NLP DNN Models Like Playing Lego

NeuronBlocks由兩個主要組件組成:Block Zoo和Model Zoo。

在Block Zoo中,我們提供常用的神經網路組件作為模型架構設計的構建塊。

在Model Zoo中,我們以JSON配置文件的形式為常見的NLP任務提供了一套NLP模型。


工具包用法

用戶可以選擇Model Zoo中的現有模型(配置文件)來開始模型訓練,或者通過利用Block Zoo中的神經網路塊創建新模型,就像玩樂高積木一樣。


支持NLP任務

句子分類

問答匹配

文本含義

插槽標記

機器閱讀理解

更多任務正在開發中

NeuronBlocks 的推薦使用人群

使用神經網路模型解決NLP問題時面臨以下挑戰的工程師或研究人員:

框架選擇多,研究成本高。

編碼成本高。大量的細節使得調試非常困難。

快速模型架構演變。工程師很難理解他們背後的數學原理。

模型代碼優化需要深厚的專業知識。

模型平台兼容性要求。它需要額外的編碼工作才能使模型在不同的平台上運行,例如Linux / Windows,GPU / CPU。

利用NeuronBlocks進行NLP神經網路模型訓練的優勢包括:

模型構建:對於模型構建和參數調整,用戶只需編寫簡單的JSON配置文件,這大大減少了實現新思想的工作量。

模型共享:通過JSON文件可以非常容易地進行模型共享模型,而非討厭的代碼。對於不同的模型或任務,我們的用戶只需要維護一個集中的源代碼庫。

代碼可重用性:可以在各種模型或任務之間輕鬆共享公共代碼塊,從而減少重複編碼工作。

平台靈活性:NeuronBlocks可以在Linux和Windows機器上運行,同時使用CPU和GPU。它還支持像Philly和PAI這樣的GPU平台上的培訓。

模型可視化:提供了一個模型可視化器,用於可視化和配置正確性檢查,幫助用戶在調試過程中輕鬆地查看可視化模型架構。

可擴展性:NeuronBlocks是可擴展的,允許用戶貢獻新塊或貢獻新模型(JSON文件)。


NeuronBlocks入門

請查看Tutorial.md和代碼文檔。


貢獻

NeuronBlocks在開放模型中運行。它由微軟的STCA NLP Group設計和開發。我們亦歡迎學術界及業界人士作出貢獻。有關更多的詳細信息,請查看Contributing.md 。


正在進行的工作

模型壓縮的知識提煉。重型模型的知識提煉,如BERT,OpenAI Transformer。基於師生的知識提煉是模型壓縮的常用方法。

多語言支持

NER模型支持

多任務培訓支持


參考文獻

論文:NeuronBlocks -- Building Your NLP DNN Models Like Playing Lego

https://arxiv.org/abs/1904.09535.


相關項目

OpenPAI是一個開源平台,可提供完整的AI模型培訓和資源管理功能,可以輕鬆擴展和支持各種規模的內部部署、雲和混合環境。

AI樣本:深度學習樣本和項目集合。它包含了許多經典的深度學習演算法和具有不同框架的應用程序,這對於開始深度學習的初學者來說是一個很好的入門工具。


License

Copyright (c) Microsoft Corporation. All rights reserved.

Licensed under the MIT License.


Contact

今日話題討論


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

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


請您繼續閱讀更多來自 AI研習社 的精彩文章:

AI產品能力,讓AI技術能力更值錢
卷積神經網路簡介

TAG:AI研習社 |