2025-01-24 行业资讯 0
乾明 编译整理自 GitHub
量子位 报道 公众号 QbitAI
新鲜代码,还热乎着呢。
前几天,谷歌发布了一篇论文,介绍了一个超强的NLP预训练模型BERT。
不仅在SQuAD中摧枯拉朽,全面超越人类表现,还在多种不同NLP测试中创出最佳成绩,包括包括将GLUE基准提升7.6%,将MultiNLI的准确率提提升5.6%。
更重要的是,论文中称,这个预训练语言模型可用于任何NLP任务,整个过程不需要对架构进行实质性的修改。
有人说这是自然语言理解领域几个月来最重大的事件,也有一些人认为这将改变NLP的研究模式。
当然,也有不少人心里长满了“草”,都想上手试试这个模型怎么样。
现在,方法来了。
一位名叫Junseong Kim韩国小哥哥,在GitHub上分享了自己用Pytorch实现BERT的过程与代码。
Junseong Kim表示,代码很简单,而且也易于理解,其中一些代码基于The Annotated Transformer,但尚未得到验证。
The Annotated Transformer来自“Attention is All You Need”,是哈佛大学的一个研究团队对后者的解读与实现,链接在文末。
语言模型预训练
在谷歌的论文中,作者给出了两种针对语言模型进行预训练的任务,分别是Masked Language Model(论文中简称Masked LM)和预测下一句。
规则:
根据下面的子规则,随机改变15%的输入token:
1、80%的 token 将成为 [MASK] token。
2、10% 的 token 将成为 [RANDOM] token(另一个单词)。
3、10% 的 token 将维持不变,但是需要预测。
“当前的这个句子能够和下一句联系起来吗?”
理解两个文本句子之间的关系,这无法通过语言建模直接获取。
规则:
1、下一句有 50% 的概率是连续的句子。
2、下一句有 50% 的概率是无关的句子。
使用
注意:你的语料库中,一行中要准备两个句子,中间用 ( ) 分隔符隔开。
GitHub传送门:
https://github.com/codertimo/BERT-pytorch
The Annotated Transformer传送门:
http://nlp.seas.harvard.edu/2018/04/03/attention.html
—完—
加入社群
量子位AI社群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;
此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。
进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)
诚挚招聘
量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。