自然语言处理

谷歌开源NLP模型可视化工具LIT,模型训练不再「黑箱」

徘徊边缘 提交于 2020-10-30 07:17:12
视学算法报道 编辑:陈萍、魔王 转载自公众号:机器之心 深度学习模型的训练就像是「黑箱操作」,知道输入是什么、输出是什么,但中间过程就像个黑匣子,这使得研究人员可能花费大量时间找出模型运行不正常的原因。 假如有一款可视化的工具,能够帮助研究人员更好地理解模型行为,这应该是件非常棒的事。 近日,Google 研究人员发布了一款语言可解释性工具 (Language Interpretability Tool, LIT),这是一个开源平台,用于可视化和理解自然语言处理模型。 论文地址:https://arxiv.org/pdf/2008.05122.pdf 项目地址:https://github.com/PAIR-code/lit LIT 重点关注模型行为的核心问题,包括:为什么模型做出这样的预测?什么时候性能不佳?在输入变化可控的情况下会发生什么?LIT 将局部解释、聚合分析和反事实生成集成到一个流线型的、基于浏览器的界面中,以实现快速探索和错误分析。 该研究支持多种自然语言处理任务,包括探索情感分析的反事实、度量共指系统中的性别偏见,以及探索文本生成中的局部行为。 此外 LIT 还支持多种模型,包括分类、seq2seq 和结构化预测模型。并且它具备高度可扩展性,可通过声明式、框架无关的 API 进行扩展。 相关 demo,参见视频: 可以针对新颖的工作流程进行重新配置

NLP任务中的文本预处理步骤、工具和示例

南楼画角 提交于 2020-10-29 17:32:18
作者 | Viet Hoang Tran Duong 来源 | DeepHub IMBA 头图 | CSDN付费下载于视觉中国 数据是新的石油,文本是我们需要更深入钻探的油井。文本数据无处不在,在实际使用之前,我们必须对其进行预处理,以使其适合我们的需求。对于数据也是如此,我们必须清理和预处理数据以符合我们的目的。这篇文章将包括一些简单的方法来清洗和预处理文本数据以进行文本分析任务。 我们将在Covid-19 Twitter数据集上对该方法进行建模。这种方法有3个主要组成部分: 首先,我们要清理和过滤所有非英语的推文/文本,因为我们希望数据保持一致。 其次,我们为复杂的文本数据创建一个简化的版本。 最后,我们将文本向量化并保存其嵌入以供将来分析。 清理和过滤文本 首先,为了简化文本,我们要将文本标准化为仅为英文字符。此函数将删除所有非英语字符。 def clean_non_english(txt): txt = re.sub(r'\W+', ' ', txt) txt = txt.lower() txt = txt.replace("[^a-zA-Z]", " ") word_tokens = word_tokenize(txt) filtered_word = [w for w in word_tokens if all(ord(c) < 128 for c in w)]

Keras文本分类实战(下)

筅森魡賤 提交于 2020-10-29 06:33:13
在上一节Keras文本分类实战(上),讲述了关于NLP的基本知识。这部分,将学会以不同方式将单词表示为向量。 词嵌入(word embedding)是什么 文本也被视为一种序列化的数据形式,类似于天气数据或财务数据中的时间序列数据。在之前的BOW模型中,了解了如何将整个单词序列表示为单个特征向量。下面将看到如何将每个单词表示为向量。这里有多种方法可以对文本进行向量化,比如: 每个词语(word)表示的词语(words)作为向量 每个字符(character)表示的字符(characters)作为向量 N-gram单词/字符表示为向量 在本教程中,将使用单热编码和单词嵌入将单词表示为向量,这是在神经网络中处理文本的常用方法。 独热码(one-hot encoding) 将单词表示为向量的第一种方式是创建独热码,这是通过将词汇长度的向量与语料库中的每个单词的条目组合一起来完成。 通过这种方式,对于每个单词,只要它在词汇表中存在,就会将该单词在相应的位置设置为1,而向量中其它的位置设置为0。但这种方式可能为每个单词创建相当大的向量,且不会提供任何其他信息,例如单词之间的关系。 假设有一个城市列表,如下例所示: >>> cities = [ 'London' , 'Berlin' , 'Berlin' , 'New York' , 'London' ] >>> cities [

Spacy简单入门

China☆狼群 提交于 2020-10-28 21:18:23
安装Spacy pip install spacy 导入工具包和英文模型 #python -m spacy download en 文本处理 import spacy nlp=spacy.load('en') #分词 doc=nlp('Weather is good, very windy and sunny. We have no classes in the afternoon.') for token in doc: print(token) #分句 for sent in doc.sents: print(sent) Weather is good , very windy and sunny . We have no classes in the afternoon . Weather is good, very windy and sunny. We have no classes in the afternoon. 词性 for token in doc: print('{}-{}'.format(token,token.pos_)) Weather-NOUN is-AUX good-ADJ ,-PUNCT very-ADV windy-ADJ and-CCONJ sunny-ADJ .-PUNCT We-PRON have-AUX no-DET classes

Word Embedding 稳定性研究

回眸只為那壹抹淺笑 提交于 2020-10-28 17:30:23
https://zhuanlan.zhihu.com/p/113339927 我们在production的系统里面会遇到一个问题,模型如何处理新进来的数据。重新训练的话下游的prediction可能会非常不一样,但是我们不知道到底怎么不一样。之前在MLSys 2020 看到了这个关于稳定心的文章,所以跟大家分享一下。这个paper尝试总结retraining对embedding的影响到底有多大,原文在这里 https://proceedings.mlsys.org/static/paper_files/mlsys/2020/104-Paper.pdf ​ proceedings.mlsys.org 既然我们要讨论稳定性,我们得先给一个稳定性的定义 这个定义的逻辑本身是根据下游的task来定义上游够不够稳定,如果完全稳定的话下游的模型就不用retrain了。这里文章讲用zero one可能是因为讨论的是NLP的问题,假设是ctr的话这种zero one loss就不合理。 对于word embedding的算法,文中用了三种 Matrix Completion GloVE word2vec quantization用的是uniform quantization,原文在这里 https://arxiv.org/pdf/1909.01264.pdf ​ arxiv.org

GitHub上1月份热门Python开源项目

岁酱吖の 提交于 2020-10-28 11:57:29
来源于开源最前线 猿妹整编 转载请注明来源作者 本文我们将和大家介绍 GitHub 上 1 月份最受欢迎的 11 个Python开源项目,在这些项目中,你有在用或用过哪些呢? 1 12306 https://github.com/testerSunshine/12306 Star 6514 12306智能刷票助手,就是程序员自己写的一个抢票脚本,该依赖库的Python版本支持2.7.10 - 2.7.15,其设计思路如下: 2 py12306 https://github.com/pjialin/py12306 Star 3408 这也是一个12306购票助手,支持分布式,多账号,多任务购票以及Web页面管理,支持python 3.6以上版本 3 flair https://github.com/zalandoresearch/flair Star 4893 Flair是最近开源的一个基于Pytorch的NLP框架,具有以下特性: 一个功能强大的NLP库 ,Flair允许您将最先进的自然语言处理(NLP)模型应用于您的文本,例如命名实体识别(NER),词性标注(PoS),意义消歧和分类。 单个模型, 可用于预测多种文本语言输入的PoS或NER标记。 文本嵌入库, Flair具有简单的界面,允许您使用不同 组合 的单词和文档嵌入,包括创建者提出的Flair嵌入

ICLR 2020 Mogrifier LSTM 解析

回眸只為那壹抹淺笑 提交于 2020-10-28 08:43:13
1. 简介 LSTM模型作为一种经典的RNN网络结构,常用于NLP任务当中。在本篇工作中,我们进一步拓展了原始LSTM模型。注意到原始LSTM中输入x和之前状态h_prev是完全独立的,可能导致上下文信息的流失。我们提出一种形变LSTM,将输入x和之前状态h_prev进行交互,再输入进各个门里面运算。最后实验表明,改进过后的Mogrifier LSTM在各项任务均优于传统LSTM 2. 回顾传统LSTM LSTM模型结构如下所示 LSTM模型结构 它一共有4个门控系统,分别是遗忘门,输入门,候选记忆细胞,输出门 各个门的计算公式如下 遗忘门: 输入门: 候选记忆细胞: 输出门: 记忆细胞: 新一轮的隐藏状态: 其中 σ 代表的是sigmoid运算 各个门作用及机理如下 遗忘门: 主要控制是否遗忘上一层的记忆细胞状态 , 输入分别是 当前时间步序列数据,上一时间步的隐藏状态 ,进行矩阵相乘,经sigmoid激活后,获得一个 值域在[0, 1] 的输出F,再跟上一层记忆细胞进行 对应元素相乘 ,输出F中越接近0,代表需要遗忘上层记忆细胞的元素。 候选记忆细胞:这里的区别在于将sigmoid函数换成tanh激活函数,因此输出的值域在[-1, 1]。 输入门:与遗忘门类似,也是经过sigmoid激活后,获得一个值域在[0, 1]的输出。

为什么医疗保健提供商要投资于智能自动化?

假装没事ソ 提交于 2020-10-27 17:06:36
智能自动化(IA)是人工智能和自动化的组合体。通过利用这一点,组织可以达到无与伦比的效率、卓越水平,并支持快速的端到端自动化流程。普华永道(PWC)声称,这项技术正通过颠覆和创造新的商业模式,迎来第四次工业革命或第二次机器时代。 最初,它仅限于制造过程,但现在在医疗保健行业也有巨大的未开发潜力。在过去的几年里,医疗机构通过采用人工智能、云等技术来迎接数字化转型。这种变化的出现是因为医疗保健需要熟练的一线资源,特别是在Covid19危机期间,而智能自动化可以帮助弥补这一不足。 例如,利用自然语言处理(NLP)和智能光学字符识别(iOCR)等智能自动化解决方案中的高级功能,医疗机构可以消除重复,费时的转诊,处理健康声明,并记录测试结果。这使员工能够自由使用他们的技能,并提供更好的直接患者护理,而数字工作者以机器速度处理并消除错误。 CIO发表的一篇文章指出,尽管智能自动化始于支付者,但它最终分散到医疗保健的其他部门,包括供应商和分销商。但普及率或自动化投资水平最低的仍然是供应商。一项研究强调,只有33%的医疗保健提供者有可能在这一领域进行投资。 造成这种滞后的主要原因来自于一种妄想,即人工智能和机器人对就业构成威胁,它们被设计用来取代效率低下的人。然而,恰恰相反,通过人工智能和机器人,智能自动化可以与人类协同工作。这种融合有助于提高员工的满意度。它还通过简化流程来提高效率

利用关系抽取构建知识图谱的一次尝试

|▌冷眼眸甩不掉的悲伤 提交于 2020-10-27 16:20:44
关系抽取   信息抽取(Information Extraction, IE)旨在从大规模非结构或半结构的自然语言文本中抽取结构化信息。关系抽取(Relation Extraction, RE)是其中的重要子任务之一,主要目的是从文本中识别实体并抽取实体之间的语义关系,是自然语言处理(NLP)中的一项基本任务。比如,我们可以从下面的一段话中, 鸿海集团董事长郭台铭25日表示,阿里巴巴集团董事局主席马云提的新零售、新制造中的「新制造」,是他给加上的。网易科技报导,郭台铭在2018深圳IT领袖峰会谈到工业互联网时表示,眼睛看的、脑筋想的、嘴巴吃的、耳朵听的,都在随着互联网的发展而蓬勃发展,当然互联网不是万能的,比如说刚才李小加要水喝,在手机上一按就能出一瓶水吗?当然做不到,还是得有实体经济。 可以抽取出如下三元组,用来表示实体之间的关系: ['鸿海集团', '董事长', '郭台铭'] ['阿里巴巴集团', '主席', '马云'] 并且能够形成如下的简单的知识图谱(Knowledge Graph)。   关于知识图谱,笔者已经在文章 SPARQL入门(一)SPARQL简介与简单使用 中给出了一些介绍,而利用关系抽取,我们可以从一些非结构化数据中,提取出实体之间的关系,形成知识图谱,这在很大程度上可以帮助我们减轻构建知识图谱的成本。非结构化数据越多,关系抽取效果越好

###haohaohao######专访 DLP-KDD 最佳论文作者,探讨图神经网络的特点、发展与应用

青春壹個敷衍的年華 提交于 2020-10-27 16:19:37
InfoQ 的读者大家好,我是 KDD Workshop DLP-KDD 2020 的联合主席王喆,在 DLP-KDD 2020 征稿之际,我们专访了上一届 Workshop Best Paper Award(An End-to-End Neighborhood-based Interaction Model for Knowledge-enhanced Recommendation)的获得者:曲彦儒,白婷,与这两位图神经网络领域的专家深入探讨当前的学术及工程热点“图神经网络”的发展和应用,希望对大家有所帮助和启发。 Q : 能否简要介绍一下图神经网络与传统的神经网络(比如经典的 Embedding+MLP 结构,以及 RNN 等序列模型)之间的联系和区别? A : 这些模型的共同点在于, 都是通过神经网络端到端地拟合输入数据和输出数据之间的函数关系。他们之间最主要的区别在于, 不同的模型结构能够适应不同的先验知识. 比如全连通神经网络,没有假设任何先验知识, RNN 能够适应线性和序列性先验, 图神经网络能够适应更加复杂的结构性先验, 比如定义多个概念之间的关系, 描述复杂的非线性结构等。 此外,相比于其他神经网络模型,图神经网络能够从结构和功能两个方面建模数据整体特性,结构是指已有数据本身的相互关联,是已观测到的;功能是指信息在图中传播、相互影响的过程,与已有结构有关