BERT

XLNet论文导读-超越Bert的后浪

那年仲夏 提交于 2020-08-07 08:57:30
论文链接: https:// arxiv.org/pdf/1906.0823 7.pdf 导读 自然语言处理中,无监督学习通常分为自回归任务和自编码任务,自回归任务是从左到右预测一个可能的单词,自编码任务是已知上下文,去预测被MASK掉的单词,例如Bert就是一个非常经典的自编码任务。但是自编码任务被人诟病的缺点就是预训练和Finetune阶段看到的信息是不一样的,忽视了原文本和上下文之间的互相影响的关系。基于以上分析,本文提出了XLNet, 平衡了自编码任务和自回归任务的优缺点的自回归任务并且在多个数据集上也超过了Bert。并且我们还有一个惊人的发现——NSP(Next Sentence Prediction)对于XLNet的效果提升并无太大影响。这是为什么呢?我们一起来康康吧~ 背景 在自然语言处理中,无监督学习通常是在大规模数据集上进行预训练然后在下游任务中进行微调,这些任务通常分为两种类型自回归任务(Autoregressive)和自编码任务(AutoEncoding)。 自回归任务(AR) 是根据上下文内容预测下一个可能的单词,但是这个上下文仅限于一个方向,前向或者后向,不能同时利用上下文的信息。GPT就是典型的AR语言模型,AR语言模型的优点是 擅长生成式的自然语言处理任务 ,比如机器翻译,文本摘要等,因为在生成文本的时候就是从左向右的。 自编码任务(AE)

fastHan: 基于BERT的中文NLP集成工具

心不动则不痛 提交于 2020-08-07 07:32:29
简介 fastHan是基于 fastNLP 与pytorch实现的中文自然语言处理工具,像spacy一样调用方便。 其内核为基于BERT的联合模型,其在13个语料库中进行训练,可处理 中文分词、词性标注、依存句法分析、命名实体识别 四项任务。fastHan共有base与large两个版本,分别利用BERT的前四层与前八层。base版本在总参数量150MB的情况下各项任务均有不错表现,large版本则接近甚至超越SOTA模型。 项目地址为: https:// github.com/fastnlp/fast Han 安装 fastHan的安装非常简便。它存在如下包的依赖: fastNLP>=0.5.0 pytorch>=1.0.0 执行指令 pip install fastHan 即可安装。 使用 fastHan的使用非常简单,只需要两步,加载模型、输入句子。 加载模型 :执行以下代码即可加载模型: 用户首次初始化模型时模块将自动从服务器下载参数。模型默认初始化base版本,可修改model_type参数值为’large’加载large版本。 输入句子 :输入模型的可以是单独的字符串,也可是由字符串组成的列表。如果输入的是列表,模型将一次性处理所有输入的字符串,所以请自行控制 batch size。模型对句子进行依存分析、命名实体识别的简单例子如下: 其中,target参数可在

想不到,那些让我半夜偷偷收藏的沙雕表情包,竟是出自AI之手

我与影子孤独终老i 提交于 2020-08-07 03:31:57
全世界只有 3.14 % 的人关注了 爆炸吧知识 转自:机器之心 参与:蛋酱 要是收藏 夹里没几个独家沙雕表情包,当代网民都无法在朋友圈立足。 但有一些「妙不可言」的图片,也许是 AI 生成的结果。 一般人很难读出「meme」这个词,它通常译为「模因」,起源于 1976 年,本意为「模仿传递行为」。 但读音和来源或许没那么重要,重要的是每个网上冲浪的人都见过它,甚至沉迷于它。在中文里,它大概被称为「网络梗图」、「沙雕图片」、「表情包」等等…… 比如这个: 还有这个: 这个金发蓝衣的快乐男孩,你难道不眼熟吗? 作为机器学习研究者,你可能还偷偷在收藏夹里保存了这些: 这是一张在深度学习社区流传很广的图,表达的是新的预训练方法如何比之前的 SOTA 方法更优越。当然,新 SOTA 方法是层出不穷的,这样的图片收集起来甚至能形成一个完整的系列。 图的创建通常只有两步:选一张时兴的 meme 模版(即图像),然后配上「精妙绝伦」的说明文字,制造出一种别有韵味的幽默感。 . 这种图像、文字和幽默感的奇妙组合,在信息传递方面极具穿透力和感染力,比如当你看到这张图时: 虽然这只是一张静态图片,句子也不成句子,但你的眼前已经浮现出了七人共舞的场景。 当代网友人人都用表情包,甚至还会自制。比如: 然而,表情包除了自制,还可以由 AI 生成。 你可能想不到,某个平平无奇的表情包背后竟然隐藏着「神秘力量」

美团搜索中NER技术的探索与实践

萝らか妹 提交于 2020-08-07 01:46:21
命名实体识别NER是信息提取、问答系统、句法分析、机器翻译、面向Semantic Web的元数据标注等应用领域的重要基础工具,在自然语言处理技术走向实用化的过程中占有重要的地位。 本文介绍了O2O搜索场景下NER任务的特点及技术选型,详述了在实体词典匹配和模型构建方面的探索与实践。 1. 背景 命名实体识别(Named Entity Recognition,简称NER),又称作“专名识别”,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。在美团搜索场景下,NER是深度查询理解(Deep Query Understanding,简称 DQU)的底层基础信号,主要应用于搜索召回、用户意图识别、实体链接等环节,NER信号的质量,直接影响到用户的搜索体验。 下面将简述一下实体识别在搜索召回中的应用。在O2O搜索中,对商家POI的描述是商家名称、地址、品类等多个互相之间相关性并不高的文本域。如果对O2O搜索引擎也采用全部文本域命中求交的方式,就可能会产生大量的误召回。 我们的解决方法如下图1所示,让特定的查询只在特定的文本域做倒排检索,我们称之为“结构化召回”,可保证召回商家的强相关性。举例来说,对于“海底捞”这样的请求,有些商家地址会描述为“海底捞附近几百米”,若采用全文本域检索这些商家就会被召回,显然这并不是用户想要的。而结构化召回基于NER将“海底捞

信息抽取——实体关系联合抽取

眉间皱痕 提交于 2020-08-06 05:28:10
目录 简介 实体关系联合抽取 Model 1: End-to-End Relation Extraction using LSTMs on Sequences and Tree Structures Model 2: Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme Model 3: Joint entity recognition and relation extraction as a multi-head selection problem Model 4: 基于DGCNN和概率图的轻量级信息抽取模型 Model 5: Entity-Relation Extraction as Multi-turn Question Answering Model 6: A Novel Hierarchical Binary Tagging Framework for Joint Extraction of Entities and Relations 小结 简介 通常,早期的信息抽取将实体抽取和关系抽取看作串联的任务,这样的串联模型在建模上相对更简单,但这样将实体识别和关系抽取当作两个独立的任务明显会存在一系列的问题: 两个任务的解决过程中没有考虑到两个子任务之间的相关性

写给程序员的机器学习入门 (六)

醉酒当歌 提交于 2020-08-06 04:45:45
这一篇将会举两个例子说明怎么应用递归模型,包括文本情感分类和预测股价走势。与前几篇不同,这一篇使用的数据是现实存在的数据,我们将可以看到更高级的模型和手法🤠。 例子① - 文本感情分类 文本感情分类是一个典型的例子,简单的来说就是给出一段话,判断这段话是正面还是负面的,例如淘宝或者京东上对商品的评价,豆瓣上对电影的评价,更高级的情感分类还能对文本中的感情进行细分。因为涉及到自然语言,文本感情分类也属于自然语言处理 (NLP, Nature Langure Processing),我们接下来将会使用 ami66 在 github 上 公开的数据 ,来实现根据商品评论内容识别是正面评论还是负面评论。 在处理文本之前我们需要对文本进行切分,切分方法可以分为按字切分和按单词切分,按单词切分的精度更高但要求使用分词类库。处理中文时我们可以使用开源的 jieba 类库来按单词切分,执行 pip3 install jieba --user 即可安装,使用例子如下: # 按字切分 >>> words = [c for c in "我来到北京清华大学"] >>> words ['我', '来', '到', '北', '京', '清', '华', '大', '学'] # 按单词切分 >>> import jieba >>> words = list(jieba.cut("我来到北京清华大学")) >>

谷歌训练BERT仅23秒,英伟达A100破八项AI性能纪录,最新MLPerf榜单

﹥>﹥吖頭↗ 提交于 2020-08-05 07:08:04
  机器之心报道    编辑:泽南、张倩    在最新的 MLPerf 基准测试结果中,英伟达新出的 A100 GPU 打破了八项 AI 性能纪录,谷歌的 4096 块 TPU V3 将 VERT 的训练时间缩短到了 23 秒。华为昇腾 910 这次也跑了个分。      在距离推出不到一个月的时间里,内置超过 2000 块英伟达 A100 GPU 的全新 DGX SuperPOD 服务器就在各项针对大规模计算性能的 MLPerf 基准测试中取得了优异成绩。   在今天官方发布的 MLPerf 第三批 AI 训练芯片测试结果中,英伟达 A100 Tensor Core GPU 在全部八项基准测试中展现了最快性能。在实现总体最快的大规模解决方案方面,利用 HDR InfiniBand 实现多个 DGX A100 系统互联的服务器集群 DGX SuperPOD 系统也同样创造了业内最优性能。   行业基准测试组织 MLPerf 于 2018 年 5 月由谷歌、百度、英特尔、AMD、哈佛和斯坦福大学共同发起,目前已成为机器学习领域芯片性能的重要参考标准。此次结果已是英伟达在 MLPerf 训练测试中连续第三次展现了最强性能。早在 2018 年 12 月,英伟达就曾在 MLPerf 训练基准测试中创下了六项纪录,次年 7 月英伟达再次创下八项纪录。   最新版的 MLPerf 基准测试包含

英伟达商用GPU和谷歌超算霸榜!MLPerf最新芯片跑分榜单还能看出啥?

核能气质少年 提交于 2020-08-05 07:07:49
   最新的 AI 芯片跑分大赛结果公布,英伟达 A100 和谷歌 TPU 领跑。   7 月 30 日,MLPerf 发布了 MLPerf Training v0.7 的结果。MLPerf 是 2018 年发起的一套通用基准,用以测量和评价机器学习软硬件性能。目前有 70 多家 AI 公司和哈佛、斯坦福等 10 所研究机构参与。   MLPerf Training 的结果从 2018 年开始发布 v0.5 开始,每年发布一次,v0.7 是第三版。   每年的测试标准都会进行修订。相比于去年,v0.7 版基准测试增加了两项新的测试项目,以及一个原有项目的修订。   今年的测试项目按照视觉、语言、商业、研究分为四类,共八项基准(Benchmarks)。其中新增的两项是 自然语言处理(NLP)模型 BERT , 推荐模型 DLRM 。前者广泛应用于翻译、机器问答、文本生成等领域;后者则常应用于商业上的购物推荐、社交媒体推荐、搜索结果显示。    今年的测试一共有 9 个组织参加,最终提交了来自不同系统的 138 个测试结果。与去年相比,五个未改变的基准测试的最快结果平均提高了 2.7 倍。    英伟达与谷歌霸榜   英伟达凭借其 5 月份新发布 A100 Tensor Core GPU 和 HDR InfiniBand 架构方案,实现了八项测试的性能大幅增长。与去年的 V100 相比

文本分类实战(一)—— word2vec预训练词向量

非 Y 不嫁゛ 提交于 2020-08-04 17:41:32
1 大纲概述   文本分类这个系列将会有十篇左右,包括基于word2vec预训练的文本分类,与及基于最新的预训练模型(ELMo,BERT等)的文本分类。总共有以下系列:    word2vec预训练词向量    textCNN 模型    charCNN 模型    Bi-LSTM 模型    Bi-LSTM + Attention 模型    RCNN 模型    Adversarial LSTM 模型    Transformer 模型    ELMo 预训练模型    BERT 预训练模型    所有代码均在 textClassifier 仓库中。 2 数据集   数据集为IMDB 电影影评,总共有三个数据文件,在/data/rawData目录下,包括unlabeledTrainData.tsv,labeledTrainData.tsv,testData.tsv。在进行文本分类时需要有标签的数据(labeledTrainData),但是在训练word2vec词向量模型(无监督学习)时可以将无标签的数据一起用上。 3 数据预处理   IMDB 电影影评属于英文文本,本序列主要是文本分类的模型介绍,因此数据预处理比较简单,只去除了各种标点符号,HTML标签,小写化等。代码如下: import pandas as pd from bs4 import BeautifulSoup

是不是有一天想象着让代码自动补全,今天他来了!!!

爷,独闯天下 提交于 2020-08-04 11:57:39
作者:熊唯,黄飞 ,腾讯 PCG/QQ研发中心/CV应用研究组 AI 如果真的可以写代码了,程序员将何去何从?近几年,NLP 领域的生成式任务有明显的提升,那通过 AI 我们可以让代码自动完成后续补全吗?本文主要介绍了如何使用 GPT2 框架实现代码自动补全的功能。 如果 AI 真的可以自己写代码了,程序员将何去何从? 我去年做过一个代码补全的小功能,打包为 androidStudio 插件,使用效果如下: 代码补全模型预测出的结果有时的确会惊吓到我,这也能学到~? 那如果给它见识了全世界的优秀代码,再给足够量级参数和优秀的模型框架,真的可以实现需求作为输入,直接输出代码吗? "我的需求讲完了,你的代码呢?" 希望可以看到这一天。 代码补齐功能有其他优秀插件也已实现,比如 tabnine,Kite 和国产的 aixcoder。本文主要介绍下代码补全功能需要实现的整套流程。主要包括数据,算法和工程。 数据 众所周知,算法工程师大部分时间都在处理数据。 深度学习是使用大数据训练模型的一个过程,数据是很重要的一个模块。人是会累的,休息不好还导致记忆不好。AI 是你给多少数据它就能存储接收多少数据,学不到信息那是人的错,给的数据不好或者算法设计不好。所以我们先尽可能多的准备好训练数据。 1、数据采集 本文的目的是代码补全,训练数据就是代码段。考虑到每种语言风格和语法都不一致