Bert&XLNet&XLM等NLP模型架构如何快速实现?

在这里插入图片描述
GitHub上最火的NLP项目,标星13000+,现在迎来重大更新。

项目链接:

https://github.com/huggingface/transformers

刚刚, 抱抱脸(Hugging Face)团队,放出了transformers 2.0版本。

在这里插入图片描述
一方面,实现了TensorFlow 2.0和 PyTorch 之间的深度互操作性。

你可以在TPU上训练模型,然后再Pytorch上测试,最后通过TensorFlow部署。

另一方面,也集成了超过32个经过100多种语言预训练的模型。最新的NLP架构,比如BERT、GPT-2、XLNet、RoBERTa、DistilBert、XLM等等通通在内。

transformers 2.0,最全的NLP库

更直接一点说,transformers 2.0项目,就是一个NLP领域的SOTA的集合。

SQuAD排行榜上的选手们通通收编在内,一共有8大架构可供调用:

在这里插入图片描述
BERT、XLNet这几位重量级选手自不必说。

最新鲜的RoBERTa、GPT-2 774M版本都已更新在列。

还有两个XLM架构,它们在XNLI跨语言分类任务中拥有比多语言BERT更优秀的表现。

此外,还有抱抱脸自家的DistilBERT,这是一个更小、更快、更便宜、更轻量级的BERT蒸馏版。

七月底刚把BERT拉回GLUE榜首的RoBERTa也几乎是在第一时间被整合到了pytorch-transformers库中。

所有这些架构,都已经在SQuAD数据集上进行了测试,均与原始实现的性能相匹配。

在这些架构之下,一共有超过32个经过100多种语言预训练的模型。

使用起来也非常方便,只需一个API,就能调用。

在线Demo,当场试用

NLP界的超强模型们到底有什么高招?抱抱脸也在官网上搭建了Write With Transformer,真·AI帮你在线写论文,在线编故事。

在这里插入图片描述
不过,在线服务的模型只有GPT,GPT-2和XLNet。

想要完整使用整个Transformer库,安装也并不困难。

官方提供的repo已经在Python 2.7和3.5+、PyTorch 1.0.0+、TensorFlow 2.0.0-rc1中进行了测试。

在安装了TensorFlow 2.0和/或PyTorch之后,可以通过pip安装:

pip install transformers

然后把库克隆到本地:

pip install [—editable] .

样本测试则可以在pytest上运行:

python -m pytest -sv ./transformers/tests/
python -m pytest -sv ./examples/

甚至,你还可以在移动设备上运行这些模型,repo地址:

https://github.com/huggingface/swift-coreml-transformers

从pytorch-transformers到transformers

这一项目,一开始名为pytorch-pretrained-bert,在1.2版本时更名为pytorch-transformers,现在变为transformers。

从名字的变迁中,也能够看出它的功能也越来越强大。在2.0版本中,实现了TensorFlow 2.0和 PyTorch 之间的深度互操作性,这也可能是在名字中去掉“pytorch-”的直接原因。

在GitHub项目中,他们也当场演示了如何用12行代码训练TensorFlow 2.0模型,然后将其放到PyTorch进行快速检测和测试:

在这里插入图片描述
当然,这一库还有更多强大的功能等待你发掘,如果你是NLP领域的从业者或者研究者,千万不要错过。

关于抱抱脸

虽然看上去很萌,但Hugging Face可不是兴趣小团体,而是个正经的AI创业公司。

他们的目标是建设真正的社会人工智能,并在这一过程中不断贡献技术力量。在NLP领域,他们的论文登上过ICLR,NeurIPS ,AAAI等国际顶会。

而他们在transformers这个广受欢迎的项目上付出的持续努力,正是其坚持的体现,而且也已经赢得了广泛的声誉。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常感谢您的问题!我可以推荐以下40个比较出名的自然语言处理模型,并提供它们的 GitHub 源代码: 1. BERT(https://github.com/google-research/bert) 2. GPT(https://github.com/openai/gpt-3) 3. Transformer(https://github.com/huggingface/transformers) 4. XLNet(https://github.com/zihangdai/xlnet) 5. RoBERTa(https://github.com/pytorch/fairseq/tree/master/examples/roberta) 6. ALBERT(https://github.com/google-research/albert) 7. XLM(https://github.com/facebookresearch/XLM) 8. ERNIE(https://github.com/PaddlePaddle/ERNIE) 9. ELECTRA(https://github.com/google-research/electra) 10. T5(https://github.com/google-research/text-to-text-transfer-transformer) 11. DistilBERT(https://github.com/huggingface/transformers) 12. MT-DNN(https://github.com/namisan/mt-dnn) 13. BART(https://github.com/pytorch/fairseq/tree/master/examples/bart) 14. CamemBERT(https://github.com/huggingface/transformers) 15. FlauBERT(https://github.com/flaubert-nlp/flaubert) 16. Longformer(https://github.com/allenai/longformer) 17. DeBERTa(https://github.com/microsoft/DeBERTa) 18. MobileBERT(https://github.com/google-research/google-research/tree/master/mobilebert) 19. TinyBERT(https://github.com/huaying-tian/TinyBERT) 20. LaBSE(https://github.com/Adobe/LaBSE) 21. BioBERT(https://github.com/dmis-lab/biobert) 22. ChineseBERT(https://github.com/ymcui/Chinese-BERT-wwm) 23. ClinicalBERT(https://github.com/EmilyAlsentzer/clinicalBERT) 24. SciBERT(https://github.com/allenai/scibert) 25. BioBertForNLP(https://github.com/dmis-lab/biobert_pretrained_models_for_bioNLP
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值