自然语言处理(NLP)知识结构总结
spark数据倾斜原因与解决方法大总结这个IT有点酷:好文章,分享出去了!
spark数据倾斜原因与解决方法大总结这个IT有点酷:好文章,分享出去了!
spark数据倾斜原因与解决方法大总结这个IT有点酷:好文章,分享出去了!
spark数据倾斜原因与解决方法大总结这个IT有点酷:好文章,分享出去了!
spark数据倾斜原因与解决方法大总结weixin_43822520:好文,很受用
什么是自然语言处理(NLP)定义+应用一次性看个明白
不懂什么是自然语言处理?它在商业智能中又有哪些应用?带着这样的疑问,慧都网将从定义和应用两个方向,通过3分钟的时间快速了解自然语言处理(NLP)。
语言是一项基本的沟通工具。人类使用语言来传递信息和意义,人类善于用语言来描述现实世界。我们通常会通过语义线索来实现这一点,语义线索可以是文字,符号或者图像,它能提供与现实世界中所代表的事物更紧密的联系。当人们看到文本时,他们通常能理解其中的含义。而当计算机看到文本时,它们只能看到字符串,无法将其对应到现实世界的事物或者理解其中包含的想法。随着人类越来越依赖于计算系统,计算机理解文本和语言也变得越来越重要。这就是自然语言处理(NLP)的作用。现在,机器学习和人工智能正在不断发展,自然语言处理正是计算机与人类交流之间的桥梁。
什么是自然语言处理?自然语言处理是计算机科学和计算语言学中的一个领域,用于研究人类(自然)语言和计算机之间的相互作用。语义是指单词之间的关系和意义。自然语言处理的重点是帮助计算机利用信息的语义结构(数据的上下文)来理解含义。
例如,统计图表可能非常抽象。下图是一个对数图表,展示了各种动物的大脑和体重之间的关系。
现在,如果我们应用语义来更好地表达此图的含义,它将如下所示:
第二张图表使用了与每个动物相关的图像。然后图表立即变得更有意义了,因为我们的视觉系统不必识别前一图像中杂乱的文本标签。
同样地,计算机使用语义来为单词和文本分配含义和意图。这能允许计算机和最终用户之间的对话。
自然语言处理的例子自然语言已经渗透到日常生活中。最常见的自然语言技术有Alexa,Siri和GoogleAssistant等,这些技术能够通过识别语音模式来推断意义并提供适当的响应。NLP也是一些Gmail功能的基础。例如Gmail使用NLP来自动解析并理解电子邮件的内容,它能够检测到像会议邀请,包裹发货通知和提醒等的内容。
NLP使用强大的解析,语法规则和算法来从人们的话语中获得意图。话语是通用语言中的语句或问题片段,由一系列的关键字组成。
NLP另一个常见的例子是网络搜索引擎。当您在搜索引擎中输入短语时,它将根据其他类似的搜索行为提供建议。您还可以在社交媒体网站上的搜索功能中看到它。例如,搜索“我认识的居住在奥斯汀的人”,这将显示在该地区的朋友列表。
自然语言如何影响商业智能如今,商业智能(BI)供应商正在为可视化提供自然语言界面,以便用户可以自然地与他们的数据进行交互,在他们想到问题时提出问题。在BI市场中,自然语言通常被归类在“智能分析”中,与机器学习和人工智能的应用有关。
自然语言处理能够为所有层次的用户(从初级到高级)开放数据分析,因为使用该技术来获得见解并不需要深入了解BI工具。
“每个人都渴望获得有关数据的见解。自然语言是解决这一问题的一种重要方式。它能够让您询问有关数据的问题,而不需要考虑这样做的原理。”——Tableau自然语言团队的开发经理VidyaSetlur
在询问有关数据的问题时,人们通常不会从空白状态开始。我们经常会依赖上下文来激发我们的好奇心。同样地,在BI工具中,NLP系统利用对话中的上下文来理解用户查询背后的意图并进行进一步对话,从而创建更自然的对话体验。
例如,如果某人对他的数据有后续问题时,他不必复述问题以深入挖掘或澄清歧义。您可以使用BI工具“查找加利福尼亚附近的大地震”,然后提出一个后续问题,例如“德克萨斯附近怎么样?”而不需要在第二个问题中也提到地震。
上图是某人在Tableau自然语言功能中询问数据问题的例子,AskData。
BI工具中的自然语言功能能够让人们通过简单地与数据的交谈来获得洞察力。随着BI行业自然语言的日趋成熟,它将打破组织采用分析的障碍,并改变人们与数据交互的方式。
慧都BI提供Tableau的产品和技术服务,更有企业级BI业务分析解决方案,我们拥有包括Qlik、Tableau、PowerBI和IBMCognos全球领先的BI产品,并提供相关解决方案,让数据创造无限价值。
与此同时可以拨打慧都热线023-68661681或咨询慧都在线客服,我们将帮您转接BI专业团队,并发送相关资料给您!
自然语言处理五年技术革新,快速梳理 NLP 发展脉络
来源:机器之心
机器之心发布机器之心编辑部机器之心《2020-2021全球AI技术趋势发展报告》节选:顶会趋势(NeurIPS)分析。2021年伊始,机器之心发布《2020-2021全球AI技术趋势发展报告》,基于顶会、论文及专利等公共数据、机器之心专业领域数据仓库,通过数据挖掘定位七大趋势性AI技术领域。此外,该报告还邀请了近100位专家学者通过问卷调查,形成对这七大技术领域近年发展情况、成熟度与未来趋势的综合总结,并基于2015-2020年间的开源论文与专利语料,结合机器之心自有的新闻舆论以及模型最佳表现(SOTA)等相关数据库进行了探索性数据分析,并形成了用以帮助技术趋势判定的量化指标SyncedIndicator(SI)。为了方便从业者把握AI技术趋势,机器之心将持续刊载该该报告的节选内容,以下篇幅选自《2020-2021全球AI技术趋势发展报告》第三章「人类语言技术」。「3-1 」人类语言技术3-1-1 近年领域事件根据机器之心整理的人工智能领域事件库数据,近5年(2015~2020)来人类语言技术领域的主要有以下大事件值得关注:神经机器翻译、注意力机制与Transformer自然语言处理的技术突破似乎总是从机器翻译领域开始的,作为NLP领域最早的研究领域之一,机器翻译是较能体现语言理解的一项重要技术任务,也是自深度学习兴起后技术突破最多最频繁的技术任务。机器翻译的核心技术涵盖了自然语言理解和生成两大基本问题,其技术路径的演变基本可以代表整个自然语言处理技术领域的主要技术方法演变:从最初的基于语法规则的机器翻译(RBMT),统计学兴起之后逐渐开始形成气候的统计机器翻译(SMT),以及近10年来基于神经网络的机器翻译(NMT),机器翻译领域通常是新技术首先得到测试验证的领域。2015年以来,正是神经机器翻译快速发展的时代,而其中贡献较为突出的当属搜索引擎行业的龙头企业谷歌,从2016年谷歌神经机器翻译(GNMT)的发布开始,将初期主要在CV领域活跃的Attention机制运用到了机器翻译领域,2017年又抛开深度学习领域一直被广泛使用的核心RNN网络、提出了单纯基于自注意力机制的Transformer模型架构,在模型泛化能力上看到了很大的可能性。2018年紧接着提出并开源了基于双向Transformer的大规模预训练语言模型BERT,刷新了当时多项不同类型的NLP下游任务的最佳表现,使人们看到了这类模型的巨大潜力,也自此掀起了NLP领域的大规模预训练语言模型研究与开发的热潮。大规模预训练语言模型2018~2019年里,尤其是2019年,大规模预训练语言模型似乎成为了NLP领域技术指标突破逃不开的技术方法。在ELMo之前,深度学习在自然语言处理的主要应用方向在于从词到句子级别的分布式表征,word2vec是此类方法的典型代表。虽然一时间预训练的词向量在诸多自然语言处理任务上取得了不错的进展,但词向量本身都是上下文无关的,也即同一个词的向量表示在不同语境中总是相同的,这就意味着词向量无法解决语言技术里很大的一个障碍,一词多义问题。因此研究人员们开始在具体的下游任务中基于词向量的序列来做编码,这种seq2seq端到端的思想迅速取代了word2vec的热潮,而谷歌在这个基础上研发出的自注意力机制模型transformer可算是这个思想的集大成者。也正是同一时间,来自华盛顿大学的研究者开发出了ELMo模型,通过语言模型来获得一个上下文相关的预训练表示,并通过定制成功地用在了多个不同的下游任务上取得领先的表现效果。而仅仅针对文本进行丰富的encoding尚不足以覆盖所有NLP下游任务,尤其是QA、阅读理解等包含问询关系等多种复杂模式的情况下,下游任务的网络会需要做更多不同的结构调整,同一个模型在多个不同任务、甚至同一任务不同数据集上的表现差别仍然有待提高,这也就促使了BERT的诞生。BERT类模型使用大规模语料数据采取更深程度的预训练,从而形成一个更为通用的模型基底。这比覆盖上下文语境含义的词向量更进一步,而涉及到下游任务时也仅需要定制一个非常轻量级的输出层而不需要对模型骨架做重大调整。实用效率工具和数据集当一个技术发展成熟到一定程度之后,我们会看到技术在研究层面的数据增加开始放缓,但在工程和应用层面的相关数据开始增加。而回顾过去五年的NLP领域事件,我们发现除了重要的具体模型算法之外,数据集和实用的开源工具成为该领域里不可忽视的组成部分。除了机器翻译领域Google开源的GNMT,OpenNMT也开源了其自研的神经机器翻译工具包,并且提供了Pytorch和TensorFlow两个不同框架的支持。数据集Benchmark方面,问答数据集SQuAD经历了1.0、2.0两个代际,自然语言理解综合benchmarkGLUE也经历了一次到SuperGLUE的升级,中文领域也衍生出了类似的评价体系CLUE。随着预训练语言模型的火热与广泛应用,可以预见的是相关的数据集与评估指标还会有新的升级与换代。Facebook开发并开源了实用文本分类库fastText,OpenAI在三代GPT版本更迭后,于今年的GPT-3发布后不久便开始提供对应的API服务。综合工具方面,微软联合创始人保罗艾伦建立的AllenInstituteforAI于今年正式推出了其自然语言处理工具包AllenNLP,提供完整的自然语言处理流程框架和相应工具。成立于2016年的Huggingface借助Transformer模型的东风,提供多种基于transformer架构模型的调用框架(包括BERT、GPT-2、Transformer-XL、RoBERTa、DistilBERT、BART,以及GoogleT5等近40种不同模型),同时兼容TensorFlow与pytorch。知名语音技术工具包Kaldi也于2017和2018年先后增加了TensorFlow和PyTorch的整合支持。总体而言,NLP领域每年都有新突破,语音领域在2015~2017年发展迅猛,达到接近人类水平,而后归于稳定、小修小改重点解决局部问题。*完整的人类语言技术相关影响力事件表请参看报告附录。3-1-22019~2020年热门技术根据2019-2020年度技术热词分析结果,该领域的整体热度在本篇报告覆盖的领域里面排第二,仅次于计算机视觉,领域内的技术热词以主流的自然语言处理下游技术任务为主(如机器翻译、问答系统、信息抽取、文本分类等),同时包括一些近年来讨论热度比较高的算法模型框架(如BERT、word2vec、Transformer等),语音识别、语音合成两个语音相关的技术词也同样榜上有名。具体来说,神经机器翻译、语音识别以及BERT在论文、新闻的热词发现中均名列前茅,除此之外,新闻资讯中的技术热词多是大众讨论度比较高的技术词或偏口语化的技术词,如自然语言处理本身、聊天机器人、以及注意力机制,而论文中则会有比较多相对具体的基础技术任务如文本分类、命名体识别、语义解析等以及相对书面正式的技术词如自然语言理解、问答系统、机器阅读理解。报告、survey中呈现出的高频讨论技术词则多是归纳性质较强的技术任务或方法,如问答系统、序列到序列(seq2seq)、端到端(end2end)模型等。以下为本领域在各项热门技术词挖掘中综合排名前100的技术词:技术名词新闻挖掘论⽂挖掘报告/Survey⾃然语⾔处理✓⾃然语⾔理解✓⾃然语⾔推理✓机器翻译✓神经机器翻译✓✓问答系统✓✓对话系统✓聊天机器⼈✓机器阅读理解✓⽂本⾃动摘要⽂本分类✓情感分析✓语⾳识别✓✓语⾳合成⽂本⽣成✓命名体识别✓语义解析✓语法解析词性标注✓语⾔模型✓预训练模型✓ELMOGPTBERT✓✓Transformer✓注意⼒机制✓seq2seq✓word2vec✓词嵌⼊✓表3-1-2-1人类语言技术2019~2020年热门技术词*为了分析的完整和可对比性,我们额外补充了语音合成、语法解析、文本自动摘要,以及ELMO、GPT等技术词结合各AI技术分析报告文章、论文survey,社交网络观点、以及专家问卷结果,该人类语言技术章节分析主要从机器翻译、问答系统、阅读理解、文本分类、语音识别、语音合成等热门NLP和语音方面的技术任务,以及相关的热门技术方法如语言模型、序列到序列,词嵌入,BERT等分不同角度切入,从学界问卷、论文专利、以及新闻舆情多数据角度综合分析其本身以及相关技术近五年来的重要事件以及发展趋势,分析细节详情参见报告。报告全文获取方式方式二:成为机器之心PRO-VIP会员详解自然语言处理(NLP)5大语义分析技术及14类应用(建议收藏)
导读:自然语言处理(NaturalLanguageProcessing,NLP)技术是与自然语言的计算机处理有关的所有技术的统称,其目的是使计算机能够理解和接受人类用自然语言输入的指令,完成从一种语言到另一种语言的翻译功能。
自然语言处理技术的研究,可以丰富计算机知识处理的研究内容,推动人工智能技术的发展。
作者:达观数据
来源:华章哇赞
01语义分析技术自然语言处理技术的核心为语义分析。语义分析是一种基于自然语言进行语义信息分析的方法,不仅进行词法分析和句法分析这类语法水平上的分析,而且还涉及单词、词组、句子、段落所包含的意义,目的是用句子的语义结构来表示语言的结构。语义分析技术具体包括如下几点。
1.词法分析
词法分析包括词形分析和词汇分析两个方面。一般来讲,词形分析主要表现在对单词的前缀、后缀等进行分析,而词汇分析则表现在对整个词汇系统的控制,从而能够较准确地分析用户输入信息的特征,最终准确地完成搜索过程。
2.句法分析
句法分析是对用户输入的自然语言进行词汇短语的分析,目的是识别句子的句法结构,以实现自动句法分析的过程。
3.语用分析
语用分析相对于语义分析又增加了对上下文、语言背景、语境等的分析,即从文章的结构中提取出意象、人际关系等附加信息,是一种更高级的语言学分析。它将语句中的内容与现实生活中的细节关联在一起,从而形成动态的表意结构。
4.语境分析
语境分析主要是指对原查询语篇之外的大量“空隙”进行分析,以便更准确地解释所要查询语言的技术。这些“空隙”包括一般的知识、特定领域的知识以及查询用户的需求等。
5.自然语言生成
AI驱动的引擎能够根据收集的数据生成描述,通过遵循将数据中的结果转换为散文的规则,在人与技术之间创建无缝交互的软件引擎。结构化性能数据可以通过管道传输到自然语言引擎中,以自动编写内部和外部的管理报告。
自然语言生成接收结构化表示的语义,以输出符合语法的、流畅的、与输入语义一致的自然语言文本。早期大多采用管道模型研究自然语言生成,管道模型根据不同的阶段将研究过程分解为如下三个子任务。
内容选择:决定要表达哪些内容。
句子规划:决定篇章及句子的结构,进行句子的融合、指代表述等。
表层实现:决定选择什么样的词汇来实现一个句子的表达。
早期基于规则的自然语言生成技术,在每个子任务上均采用了不同的语言学规则或领域知识,实现了从输入语义到输出文本的转换。
鉴于基于规则的自然语言生成系统存在的不足之处,近几年来,学者们开始了基于数据驱动的自然语言生成技术的研究,从浅层的统计机器学习模型,到深层的神经网络模型,对语言生成过程中每个子任务的建模,以及多个子任务的联合建模,开展了相关的研究,目前主流的自然语言生成技术主要有基于数据驱动的自然语言生成技术和基于深度神经网络的自然语言生成技术。
02自然语言处理应用自然语言处理应用的技术体系主要包括字词级别的自然语言处理,句法级别的自然语言处理和篇章级别的自然语言处理。
字词级别的分析主要包括中文分词、命名实体识别、词性标注、同义词分词、字词向量等;
句法级别的分析主要包括依存文法分析、词位置分析、语义归一化、文本纠错等;
篇章级别的分析主要包括标签提取、文档相似度分析、主题模型分析、文档分类和聚类等。
1.中文分词
中文分词是计算机根据语义模型,自动将汉字序列切分为符合人类语义理解的词汇。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。
在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能够通过明显的分界符来进行简单的划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这一层面上,中文比英文要复杂得多、困难得多。
2.命名实体识别
命名实体识别又称作“专名识别”(NER),是指对具有特定意义的实体进行自动识别的技术,是信息提取、知识图谱、问答系统、句法分析、搜索引擎、机器翻译等应用的重要基础。
3.词性标注
词性标注(Part-of-Speechtagging或POStagging)又称词类标注,是指为分词结果中的每个单词标注一个正确的词性的程序。具体来说就是,确定每个词是名词、动词、形容词或者是其他词性的过程(如图3-2所示)。
▲图3-2词性标注在汉语中,词性标注比较简单,因为汉语词汇词性多变的情况比较少见,大多数词语只有一个词性,或者出现频次最高的词性远远高于第二位的词性。常用的方法有:基于最大熵的词性标注、基于统计的最大概率输出词性、基于隐马尔可夫模型(HMM)的词性标注。
4.同义词分析
由于不同地区的文化差异,输入的查询文字很可能会出现描述不一致的问题。此时,业务系统需要对用户的输入做同义词、纠错、归一化处理。同义词挖掘是一项基础工作,同义词算法包括词典、百科词条、元搜索数据、上下文相关性挖掘,等等。
5.词向量分析
词向量技术是指将词转化为稠密向量,相似的词对应的词向量也相近。在自然语言处理应用中,词向量作为深度学习模型的特征进行输入。因此,最终模型的效果在很大程度上取决于词向量的效果。一般来说,字词表示有两种方式:one-hot及分布式表示。
one-hot是指向量中只有一个维度的值为1,其余维度为0,这个维度代表了当前词。
分布式表示(wordembedding)指的是将词转化为一种分布式表示,又称词向量,分布式表示将词表示成一个定长的稠密向量。
词向量的生成可分为两种方法:基于统计方法(例如,共现矩阵、奇异值分解(SVD)和基于语言模型(例如,word2vec中使用的CBOW、Skip-gram等)。
6.依存文法分析
依存文法通过分析语言单位内成分之前的依存关系解释其句法结构,主张句子中的核心谓语动词是支配其他成分的中心成分。而它本身却不会受到其他任何成分的支配,所有受支配的成分都以某种关系从属于支配者,如图3-3所示。
▲图3-3依存文法分析距离从分析结果中我们可以看到,句子的核心谓语动词为“召开”,主语是“民航局”,“召开”的宾语是“会”,“会”的修饰语是“通用航空发展工作专题”。有了上面的句法分析结果,我们就可以比较容易地看到,是“民航局”“召开”了会议,而不是“促进”了会议,即使“促进”距离“会”更近。
7.词位置分析
文章中不同位置的词对文章语义的贡献度也不同。文章首尾出现的词成为主题词、关键词的概率要大于出现在正文中的词。对文章中的词的位置进行建模,赋予不同位置不同的权重,从而能够更好地对文章进行向量化表示。
8.语义归一化
语义归一化通常是指从文章中识别出具有相同意思的词或短语,其主要的任务是共指消解。共指消解是自然语言处理中的核心问题,在机器翻译、信息抽取以及问答等领域都有着非常重要的作用。
就拿常见的信息抽取的一个成型系统来讲,微软的学术搜索引擎会存有一些作者的档案资料,这些信息可能有一部分就是根据共指对象抽取出来的。比如,在一个教授的访谈录中,教授的名字可能只会出现一两次,更多的可能是“我”“某某博士”“某某教授”或“他”之类的代称,不出意外的话,这其中也会有一些同样的词代表记者,如何将这些词对应到正确的人,将会成为信息抽取的关键所在。
9.文本纠错
文本纠错任务指的是,对于自然语言在使用过程中出现的错误进行自动地识别和纠正。文本纠错任务主要包含两个子任务,分别为错误识别和错误修正。错误识别的任务是指出错误出现的句子的位置,错误修正是指在识别的基础上自动进行更正。
相比于英文纠错来说,中文纠错的主要困难在于中文的语言特性:中文的词边界以及中文庞大的字符集。由于中文的语言特性,两种语言的错误类型也是不同的。
英文的修改操作包括插入、删除、替换和移动(移动是指两个字母交换顺序等),而对于中文来说,因为每一个中文汉字都可独立成词,因此插入、删除和移动的错误都只是作为语法错误。由于大部分的用户均为母语用户,且输入法一般会给出正确提示,语法错误的情况一般比较少,因此,中文输入纠错主要集中在替换错误上。
10.标签提取
文档的标签通常是几个词语或者短语,并以此作为对该文档主要内容的提要。标签是人们快速了解文档内容、把握主题的重要方式,在科技论文、信息存储、新闻报道中具有极其广泛的应用。文档的标签通常具有可读性、相关性、覆盖度等特点。
可读性指的是其本身作为一个词语或者短语就应该是有意义的;
相关性指的是标签必须与文档的主题、内容紧密相关;
覆盖度指的是文档的标签能较好地覆盖文档的内容,而不能只集中在某一句话中。
11.文本相似度
文本相似度在不同领域受到了广泛的讨论,然而由于应用场景的不同,其内涵也会有差异,因此没有统一的定义。
从信息论的角度来看,相似度与文本之间的共性和差异度有关,共性越大、差异度越小,则相似度越高;共性越小、差异度越大,则相似度越低;相似度最大的情况是文本完全相同。
相似度计算一般是指计算事物的特征之间的距离,如果距离小,那么相似度就大;如果距离大,那么相似度就小。
相似度计算的方法可以分为四大类:基于字符串的方法、基于语料库的方法、基于知识的方法和其他方法。
基于字符串的方法是指从字符串的匹配度出发,以字符串共现和重复程度为相似度的衡量标准;
基于语料库的方法是指利用从语料库中获取的信息计算文本的相似度;
基于知识的方法是指利用具有规范组织体系的知识库计算文本的相似度。
12.主题模型
主题分析模型(TopicModel)是以非监督学习的方式对文档的隐含语义结构进行统计和聚类,以用于挖掘文本中所蕴含的语义结构的技术。隐含狄利克雷分布(LatentDirichletAllocation,LDA)是常用的主题模型计算方法。
13.文本分类
按照特定行业的文档分类体系,计算机自动阅读文档的内容并将其归属到相应类目的技术体系下。其典型的处理过程可分为训练和运转两种。即计算机预先阅读各个类目的文档并提取特征,完成有监督的学习训练,在运转阶段识别新文档的内容并完成归类。
14.文本聚类
文本聚类主要是依据著名的聚类假设:同类的文档相似度较大,而不同类的文档相似度较小。作为一种无监督的机器学习方法,聚类由于不需要训练过程,以及不需要预先对文档的类别进行手工标注,因此具有一定的灵活性和较高的自动化处理能力。
文本聚类已经成为对文本信息进行有效地组织、摘要和导航的重要手段。文本聚类的方法主要有基于划分的聚类算法、基于层次的聚类算法和基于密度的聚类算法。
关于作者:达观数据,中国智能RPA领域的龙头企业,独立开发了全套“RPA+AI”系统,拥有核心知识产权。达观智能RPA产品是业界不依赖微软底层开发框架、未使用第三方开源框架的RPA产品。
本文摘编自《智能RPA实战》,经出版方授权发布。
延伸阅读《智能RPA实战》推荐语:这是一部从实战角度讲解“AI+RPA”如何为企业数字化转型赋能的著作,从基础知识、平台构成、相关技术、建设指南、项目实施、落地方法论、案例分析、发展趋势8个维度对智能RPA做了系统解读,为企业认知和实践智能RPA提供全面指导。