简体中文
チュートリアル中文教程デモビデオ
NeuronBlocksは、エンジニア/研究者がNLPタスクのニューラルネットワークモデルトレーニング用のエンドツーエンドパイプラインを構築するのに役立つNLPディープラーニングモデリングツールキットです。このツールキットの主な目標は、トレーニングと推論の両方の段階を含むNLPディープニューラルネットワークモデルの構築のコストの開発を最小限に抑えることです。
ニューロンブロックは、ブロック動物園とモデル動物園の2つの主要なコンポーネントで構成されています。
ユーザーは、モデル動物園で既存のモデル(構成ファイル)を選択してモデルトレーニングを開始するか、LEGOで遊ぶのと同じようにブロック動物園のニューラルネットワークブロックを活用することにより、新しいモデルを作成できます。
注:NeuronBlocksにはPython 3.6以降が必要です。
このプロジェクトをクローンします。
git clone https://github.com/Microsoft/NeuronBlocks次のコマンドでpythonパッケージを要件にインストールします。txt。
pip install -r requirements.txtPytorch( NeuronBlocksはPytorch 0.4.1以降をサポートします)をインストールします。
Linuxの場合、次のコマンドを実行します。
pip install " torch>=0.4.1 "Windowsについては、Pytorchの指示に従ってConda経由でPytorchをインストールすることをお勧めします。
指定された例を試してみてください。 Linux/Windows、GPU/CPUの両方がサポートされています。 Windowsについては、CMDの代わりにPowerShellを使用することをお勧めします。
ヒント:次の指示で、ProjectRootはこのプロジェクトのルートディレクトリを示します。
# train
cd PROJECT_ROOT
python train.py --conf_path=model_zoo/demo/conf.json
# test
python test.py --conf_path=model_zoo/demo/conf.json
# predict
python predict.py --conf_path=model_zoo/demo/conf.json予測のために、NeuronBlockにはインタラクティブとバッチの2つのモードがあります。
# use the above example
# interactive prediction
python predict.py --conf_path=model_zoo/demo/conf.json --predict_mode= ' interactive ' # use the above example
# batch prediction
python predict.py --conf_path=model_zoo/demo/conf.json --predict_mode= ' batch ' --predict_data_path=dataset/demo/predict.tsv詳細については、tutorial.mdおよびcodeドキュメントを参照してください。
NLPの問題に対処するためにニューラルネットワークモデルを使用する際に次の課題に直面するエンジニアまたは研究者:
NLPニューラルネットワークモデルトレーニングのためにニューロンブロックを活用することの利点は次のとおりです。
モデルビルディング:モデルビルディングとパラメーターのチューニングの場合、ユーザーはシンプルなJSON構成ファイルを作成するだけで、新しいアイデアを実装する努力を大幅に最小限に抑える必要があります。
モデル共有は、厄介なコードではなく、JSONファイルだけでモデルを共有するのは非常に簡単です。さまざまなモデルまたはタスクの場合、ユーザーは単一の集中化されたソースコードベースを1つ維持する必要があります。
コードの再利用性:一般的なブロックは、さまざまなモデルやタスクで簡単に共有でき、重複したコーディング作業を削減できます。
プラットフォームの柔軟性:ニューロンブロックは、CPUとGPUの両方を使用して、LinuxマシンとWindowsマシンの両方で実行できます。また、PhillyやPaiなどのGPUプラットフォームでのトレーニングもサポートしています。
| CPU推論 | シングルGPU推論 | マルチGPU推論 | |
| CPU列車 | ✓✓ | ✓✓ | ✓✓ |
| シングルGPU列車 | ✓✓ | ✓✓ | ✓✓ |
| マルチGPU列車 | ✓✓ | ✓✓ | ✓✓ |
モデルの視覚化:視覚化のためにモデルビジュアライザーが提供され、正しさのチェックを構成するために、デバッグ中にユーザーがモデルアーキテクチャを簡単に視覚化するのに役立ちます。
拡張性:NeuronBlocksは拡張可能であり、ユーザーが新しいブロックを寄付したり、新しいモデル(JSONファイル)を提供できるようにします。
NeuronBlocksはオープンモデルで動作します。 MicrosoftのSTCA NLP Groupによって設計および開発されています。学界や産業からの貢献も大歓迎です。詳細については、Contributing.mdを参照してください。
慣れ親しんでいる人は誰でも、コードを寄付することを強くお勧めします。
NeuronBlocks -LEGOの演奏など、NLP DNNモデルを構築します。 EMNLP 2019 、https://arxiv.org/abs/1904.09535。
@article{gong2019neuronblocks,
title={NeuronBlocks--Building Your NLP DNN Models Like Playing Lego},
author={Gong, Ming and Shou, Linjun and Lin, Wutao and Sang, Zhijie and Yan, Quanjia and Yang, Ze, Cheng, Feixiang and Jiang, Daxin},
journal={arXiv preprint arXiv:1904.09535},
year={2019}
}
著作権(c)Microsoft Corporation。無断転載を禁じます。
MITライセンスに基づいてライセンスされています。
ご質問がある場合は、[email protected]にお問い合わせください
WeChatをお持ちの場合は、次のアカウントを追加することもできます。