简体中文
Tutorial 中文教程 Vídeo de demonstração
O NeuronBlocks é um kit de ferramentas de modelagem de aprendizado profundo da PNL que ajuda os engenheiros/pesquisadores a criar pipelines de ponta a ponta para treinamento de modelos de rede neural para tarefas de PNL. O principal objetivo deste kit de ferramentas é minimizar o desenvolvimento de custos para a construção de modelos de rede neural profunda da PNL, incluindo estágios de treinamento e inferência.
Os neuronblocks consistem em dois componentes principais: bloquear o zoológico e o zoológico modelo .
Os usuários podem escolher modelos existentes (arquivos de configuração) no zoológico do modelo para iniciar o treinamento de modelos ou criar novos modelos, alavancando blocos de rede neural no zoológico de bloco, como jogar com o LEGO.
NOTA: Os neuronblocks requer Python 3.6 e acima.
Clone este projeto.
git clone https://github.com/Microsoft/NeuronBlocksInstale os pacotes Python em requisitos.txt pelo seguinte comando.
pip install -r requirements.txtInstale o pytorch ( o neuronblocks suporta pytorch 0.4.1 e acima ).
Para Linux , execute o seguinte comando:
pip install " torch>=0.4.1 "Para o Windows , sugerimos que você instale o Pytorch via CONDA seguindo as instruções do Pytorch.
Comece experimentando os exemplos dados. Linux/Windows, GPU/CPU são suportados. Para o Windows , sugerimos que você use o PowerShell em vez de CMD.
Dicas: Na seguinte instrução, o ProJectroot indica o diretório raiz deste projeto.
# 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.jsonPara previsão, os neuronblocks têm dois modos: interativo e lote .
# 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.tsvPara mais detalhes, consulte o tutorial.md e a documentação do código.
Engenheiros ou pesquisadores que enfrentam os seguintes desafios ao usar modelos de rede neural para resolver problemas de PNL:
As vantagens de alavancar os neuronblocks para o treinamento de modelos de rede neural da PNL inclui:
Construção do modelo : Para a construção de modelos e o ajuste de parâmetros, os usuários precisam escrever apenas arquivos de configuração JSON simples, que minimizam bastante o esforço de implementar novas idéias.
Compartilhamento de modelos É super fácil compartilhar modelos apenas através de arquivos JSON, em vez de códigos desagradáveis. Para modelos ou tarefas diferentes, nossos usuários precisam apenas manter uma única base de código -fonte centralizada.
REUSIBILIDADE DE CÓDIGO : Os blocos comuns podem ser facilmente compartilhados em vários modelos ou tarefas, reduzindo o trabalho de codificação duplicada.
Flexibilidade da plataforma : os neuronblocks podem ser executados nas máquinas Linux e Windows, usando CPU e GPU. Também suporta treinamento em plataformas de GPU como Philly e Pai.
| Inferência da CPU | Inferência de GPU único | Inferência multi-GPU | |
| Trem da CPU | ✓ | ✓ | ✓ |
| Trem de GPU único | ✓ | ✓ | ✓ |
| Trem multi-GPU | ✓ | ✓ | ✓ |
Visualização do modelo : um visualizador de modelo é fornecido para visualização e configuração de verificação de correção, o que ajuda os usuários a visualizar a arquitetura do modelo facilmente durante a depuração.
Extensibilidade : os neuronblocks são extensíveis, permitindo que os usuários contribuam com novos blocos ou contribuindo com novos modelos (arquivos JSON).
Os neuronblocks operam em um modelo aberto. Ele foi projetado e desenvolvido pelo Grupo STCA NLP, Microsoft . As contribuições da academia e da indústria também são muito bem -vindas. Para mais detalhes, consulte contribuindo.md.
Qualquer pessoa que esteja familiarizada seja altamente encorajada a contribuir com código.
NeuronBlocks - Construindo seus modelos de PNN DNN como jogar LEGO. EMNLP 2019 , em 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}
}
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
Licenciado sob a licença do MIT.
Se você tiver alguma dúvida, entre em contato com [email protected]
Se você tem o WeChat, também pode adicionar a seguinte conta: