1 简介
PyText 是一个工业级的开源 NLP 工具包,可用于在 PyTorch 中开发 NLP 模型,并通过 ONNX 部署。其预训练模型包括文本分类、序列标注等。
PyText是基于NLP深度学习技术、通过Pytorch构建的建模框架。PyText解决了既要实现快速实验又要部署大规模服务模型的经常相互冲突。它主要通过以下两点来实现上面的需求:
- 通过为模型组件提供简单且可扩展的接口和抽象,
- 使用PyTorch通过优化的Caffe2执行引擎导出模型,进行预测推理。
并且,Facebook已经采用了使用PyText快速迭代新的建模思路,然后大规模无缝衔接地发布它们。
2 Pytext核心功能
适用于各种NLP / NLU任务的完备生产模型:
- 文本分类器
Yoon Kim (2014): Convolutional Neural Networks for Sentence Classification
Lin et al. (2017): A Structured Self-attentive Sentence Embedding
- 序列标记
Lample et al. (2016): Neural Architectures for Named Entity Recognition - 联合意图槽模型
Zhang et al. (2016): A Joint Model of Intent Determination and Slot Filling for Spoken Language Understanding
(https://www.ijcai.org/Proceedings/16/Papers/425.pdf)
- 上下文意图 - intent-slot models
- 可扩展组件,可轻松创建新模型和任务
- 支持集成训练
- 支持分布式训练(在PyTorch 1.0中使用新的C10d后端)
参考实现和预训练模型论文:Gupta et al. (2018): Semantic Parsing for Task Oriented Dialog using Hierarchical Representations
3 相关资料
文本分类,序列标记(实体识别),Joint Model (Intent+Slot)(比如阅读理解,任务对话中常用的模型)等的预训练模型。
主页: https://facebook.ai/developers/tools/pytext
官方博客: https://code.fb.com/ai-re…/pytext-open-source-nlp-framework/
论文: https://research.fb.com/…/pytext-a-seamless-path-from-nlp-…/
GitHub: https://github.com/facebookresearch/pytext
官方文档:PyText Documentation
新闻报道:
Venturebeat: https://venturebeat.com/…/facebook-open-sources-its-main-n…/
TechCrunch: https://techcrunch.com/…/facebook-open-sources-pytext-natu…/
官网地址:https://code.fb.com/ai-research/pytext-open-source-nlp-framework/