炼数成金 门户 商业智能 自然语言处理 查看内容

BERT、GPT-2这些顶尖工具到底该怎么用到我的模型里?

2019-2-22 16:00| 发布者: 炼数成金_小数| 查看: 19104| 评论: 0|来自: 专知

摘要: 近期的NLP方向,ELMO、GPT、BERT、Transformer-XL、GPT-2,各种预训练语言模型层出不穷,这些模型在各种NLP任务上一次又一次刷新上线,令人心驰神往。但是当小编翻开他们的paper,每一个上面都写着四个大字:“弱者 ...

工具 模型 开源 商业智能 ETL

近期的NLP方向,ELMO、GPT、BERT、Transformer-XL、GPT-2,各种预训练语言模型层出不穷,这些模型在各种NLP任务上一次又一次刷新上线,令人心驰神往。但是当小编翻开他们的paper,每一个上面都写着四个大字:“弱者退散”,到底该怎么将这些顶尖工具用到我的模型里呢?答案是Hugging Face的大神们开源的pytorch-pretrained-BERT。

Github 地址:
https://github.com/huggingface/pytorch-pretrained-BERT

模型简介 
近期的各种预训练语言模型,横扫各种NLP任务,这里我们介绍三个最火的预训练模型:

BERT,由Google AI团队,发表于2018年10月11日。它的文章是: BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding。
Transformer-XL, 由Google AI和Carnegie Mellon大学,发表于2019年1月9日。它的文章是:Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context。
GPT-2,由OpenAI 团队,发表于2019年2月14日,它的文章是:Language Models are Unsupervised Multitask Learners。

基本上,每一个文章,都在发表的时候,刷新当时的几乎所有NLP任务的State-of-the-Art,然后引发一波热潮。 当然,目前风头正盛的是GPT-2,它前几天刚发表。

开源实现 
然而,让小编翻开他们的paper,发现每一个上面都写着四个大字:“弱者退散”,到底该怎么将这些顶尖工具用到我的模型里呢,Hugging Face 的大神们,紧跟前沿,将所有的预训练语言模型都实现并开源了。更令人钦佩的是,它们还做了很多封装,让大家都可以才在这些巨人模型的肩膀上。

Hugging Face开源的库叫pytorch-pretained-bert, 你可以在本文开头找到链接。接下来的部分,我们介绍一下它的安装和使用。

安装使用 
你可以直接使用 Pip install 来安装它:
pip install pytorch-pretrained-bert
pytorch-pretrained-bert 内 BERT,GPT,Transformer-XL,GPT-2。

为了获取一句话的BERT表示,我们可以:


拿到表示之后,我们可以在后面,接上自己的模型,比如NER。

我们也可以获取GPT的表示:


Transformer-XL表示:


以及,非常火的,GPT-2的表示:


有了这些表示,我们可以在后面,接入自己的模型,比如:
文本分类
https://github.com/huggingface/pytorch-pretrained-BERT/blob/master/examples/run_classifier.py

阅读理解
https://github.com/huggingface/pytorch-pretrained-BERT/blob/master/examples/run_squad.py

语言模型
https://github.com/huggingface/pytorch-pretrained-BERT/blob/master/examples/run_lm_finetuning.py

等等

声明:文章收集于网络,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2019-3-23 20:20 , Processed in 0.253176 second(s), 25 queries .