博舍

浅谈自然语言处理(NLP)和 自然语言理解(NLU) 是自然语言处理的重要应用

浅谈自然语言处理(NLP)和 自然语言理解(NLU)

自然语言处理主要步骤包括:

    1.分词(只针对中文,英文等西方字母语言已经用空格做好分词了):将文章按词组分开    2.词法分析:对于英文,有词头、词根、词尾的拆分,名词、动词、形容词、副词、介词的定性,多种词意的选择。比如DIAMOND,有菱形、棒球场、钻石3个含义,要根据应用选择正确的意思。    3.语法分析:通过语法树或其他算法,分析主语、谓语、宾语、定语、状语、补语等句子元素。    4.语义分析:通过选择词的正确含义,在正确句法的指导下,将句子的正确含义表达出来。方法主要有语义文法、格文法。    但是以上的分析,仅适用于小规模的实验室研究,远不能应用到实际语言环境中,比如说语法,我们能总结出的语法是有限的,可是日常应用的句子,绝大部分是不遵守语法的,如果让语法包罗所有可能的应用,会出现爆炸的景象。

自然语言处理的应用方向主要有:

    1.文本分类和聚类:主要是将文本按照关键字词做出统计,建造一个索引库,这样当有关键字词查询时,可以根据索引库快速地找到需要的内容。此方向是搜索引擎的基础,在早期的搜索引擎,比如北大开发的“天问系统”,采用这种先搜集资料、在后台做索引、在前台提供搜索查询服务。目前GOOGLE,百度的搜索引擎仍旧类似,但是采用了自动“蜘蛛”去采集网络上的信息,自动分类并做索引,然后再提供给用户。我曾经在我的文章中做过测试,当文章中有“十八禁”这样的字眼时,点击次数是我其他文章点击次数的几十倍,说明搜索引擎将“十八禁”这个词列为热门索引,一旦有一个“蜘蛛”发现这个词,其他“蜘蛛”也会爬过来。    2.信息检索和过滤:这是网络瞬时检查的应用范畴,主要为网警服务,在大流量的信息中寻找关键词,找到了就要做一些其他的判断,比如报警。    3.信息抽取:(抄书)信息抽取研究旨在为人们提供更有力的信息获取工具,以应对信息爆炸带来的严重挑战。与信息检索不同,信息抽取直接从自然语言文本中抽取事实信息。过去十多年来,信息抽取逐步发展成为自然语言处理领域的一个重要分支,其独特的发展轨迹——通过系统化、大规模地定量评测推动研究向前发展,以及某些成功启示,如部分分析技术的有效性、快速自然语言处理系统开发的必要性,都极大地推动了自然语言处理研究的发展,促进了自然语言处理研究与应用的紧密结合。回顾信息抽取研究的历史,总结信息抽取研究的现状,将有助于这方面研究工作向前发展。    4.问答系统:目前仍局限于80年代的专家系统,就是按照LISP语言的天然特性,做逻辑递归。LISP语言是括号式的语言,比如A=(B,C,D),A=(B,E,F),提问:已知B,C,能得到什么样的结论?结论是A,D;若提问改为已知B,结论则是C,D,A或E,F,A。比如一个医疗用的专家系统,你若询问“感冒”的治疗方法,系统可能给出多种原因带来的感冒极其治疗方法,你若询问“病毒性感冒”的治疗方法,则系统会给出比较单一的、明确的治疗方法。你有没有用过AUTOCAD系统,这个就是建立在LISP语言上的括号系统,在用的时候会出现上述情况。    5.拼音汉字转换系统:这应该是中文输入法应用范畴的东西,再多的东西我就没想过。    6.机器翻译:当前最热门的应用方向,这方面的文章最多。国际上已经有比较好的应用系统,美国有个AIC公司推出过著名的实时翻译系统,欧共体的SYSTRAN系统可以将英、法、德、西、意、葡六种语言实时对译,美、日、德联合开发的自动语音翻译系统,成功进行了10多分钟对话。我国军事科学院、中科院也开发过此类系统。但是这里边的问题也很多,最主要的是“满篇洋文难不住,满篇译文看不懂”,就是脱离了人类智慧的机器翻译,总会搞出让人无法理解的翻译,比如多意词选择哪个意思合适、怎么组织出通顺的语句,等等。所以目前微软、GOOGLE的新趋势是:翻译+记忆,类似机器学习,将大量以往正确的翻译存储下来,通过检索,如果碰到类似的翻译要求,将以往正确的翻译结果拿出来用。GOOGLE宣称今后几年就可以推出商业化的网页翻译系统。    7.新信息检测:这个我不知道,没思路。

    以上已经回答了自然语言发展方向的问题。我认为机器翻译是最有前途的方向,其难点在于机器翻译还不具备人类智能,虽然翻译已经达到90%以上的正确程度,然而还是不能象人类翻译那样,可以准确表达。为什么存在这样的难点?关键是自然语言处理做不到人类对自然语言的理解,“处理”和“理解”是天差地别的两个概念。“处理”好比控制眼睛、耳朵、舌头的神经,他们将接收的信息转化成大脑可以理解的内部信息,或者反过来,他们的功能就是这么多。而“理解”则是大脑皮层负责语言理解那部分,多少亿的脑细胞共同完成的功能。一个人因为其自身家庭背景、受教育程度、接触现实中长期形成的条件反射刺激、特殊的强列刺激、当时的心理状况,这么多的因素都会影响和改变“理解”的功能,比如我说“一个靓女开着BMW跑车”,有人心里会想这是二奶吧?有人心里会仇视她,联想到她会撞了人白撞;做汽车买卖的人则会去估量这部车的价值;爱攀比的人也许会想,我什么时候才能开上BWM?所以“理解”是更加深奥的东西,涉及更多神经学、心理学、逻辑学领域。

    还有上下文理解问题,比如这句:“我们90平方米以后会占的分量越来越大,那么这样他的价格本身比高档低很多,所以对于整体把这个价格水平给压下来了,这个确实非常好的。”你能理解么?估计很难或者理解出多种意思,但是我把前文写出来:“去年国家九部委联合发布了《建设部等部门关于调整住房供应结构稳定住房价格意见的通知》,对90平方米以下住房须占总面积的70%以上作出了硬性规定,深圳市经过一年的调控,目前已做到每个项目的75%都是90平方米以内。深圳市国土资源和房产管理局官员说”看了后面的你才能知道是根据国家的通知,深圳做了相应的调整。

自然语言理解1.语义表示

自然语言理解的结果,就是要获得一个语义表示(semanticrepresentation):

语义表示主要有三种方式:

    1.分布语义,Distributionalsemantics    2.框架语义,Framesemantics    3.模型论语义,Model-theoreticsemantics

1.1分布语义表示(Distributionalsemantics)

    说distributionalsemantics大家比较陌生,但如果说word2vec估计大家都很熟悉,word2vec的vector就是一种distributionalsemantics。distributionalsemantics就是把语义表示成一个向量,它的理论基础来自于Harris的分布假设:语义相似的词出现在相似的语境中(Semanticallysimilarwordsoccurinsimilarcontexts)。具体的计算方法有多种,比如LSA(LatentSemanticAnalysis)、LDA(LatentDirichletAllocation)及各种神经网络模型(如LSTM)等。

    这种方法的优点在于,它完全是数据驱动的方法,并且能够很好的表示语义,但一个很大的缺点在于,它的表示结果是一个整体,没有进一步的子结构。

1.2框架语义表示(Framesemantics)

    顾名思义,这种方法把语义用一个frame表示出来,比如我们一开始举得例子:“订一张明天北京去杭州的机票,国航头等舱”,表示如下:

    在计算方法上,典型的比如语义角色标注(SemanticRoleLabeling),具体可以分为两个步骤:frameidentification和argumentidentification,frameidentification用于确定frame的类型,argumentidentification用于计算各个属性的具体值。这种方法和distributionalsemantics相比,能够表达丰富的结构。

1.3模型论语义表示(Model-theoreticsemantics)

    模型轮语义表示的典型框架是把自然语言映射成逻辑表达式(logicform)。比如对于下图中的“中国面积最大的省份是哪个?”,将其表示成逻辑表达式就是图中红色字体部分,进一步那这个逻辑表达式去知识库中查询,就得到了答案。在计算方法上,典型的就是构建一个semanticparser。

    模型论语义表示是对世界知识的完整表示,比前两种方法表达的语义更加完整,但是缺点是semanticparser的构建比较困难,这大大限制了该方法的应用。

1.4目前采用的语义表示

    目前常用的是framesemantics表示的一种变形:采用领域(domain)、意图(intent)和属性槽(slots)来表示语义结果。    其中,领域是指同一类型的数据或者资源,以及围绕这些数据或资源提供的服务,比如“餐厅”,“酒店”,“飞机票”、“火车票”、“电话黄页”等;意图是指对于领域数据的操作,一般以动宾短语来命名,比如飞机票领域中,有“购票”、“退票”等意图;属性槽用来存放领域的属性,比如飞机票领域有“时间”“出发地”“目的地”等;    对于飞机票领域,我们的语义表示结构如下图所示:

    进一步,我们对于世界的语义描述(又称为domainontology)如下:

2.自然语言理解技术难点

    在确定了自然语言理解的语义表示方法后,我们把技术方案抽象为如下两步:

    这和前文提到的语义角色标注把过程分为frameidentification和argumentidentification类似,领域分类和意图分类对应frameidentification,属性抽取对应argumentidentification。无论对于分类还是对于抽取来说,都需要有外部知识的支持。在实现的过程中,我们面临着如下的困难:

(1)如何构建知识库    “总参”除了表示总参谋部外,还是南京一家很火的火锅店;“中华冷面”除了是一种面条,还是一首歌名;“王菲的红豆”是指王菲唱的红豆这首歌,但如果说“韩红的红豆”就不对了,因为韩红没有唱过红豆这首歌。要想把这些知识都理解对,就需要一个庞大的知识库,这个知识库中的实体词数以千万计,怎么挖掘,怎么清洗噪音,都是很大的挑战。

(2)如何理解用户语句的意图    “东三环堵吗”这句话意图是查询路况,“下水道堵吗”就不是查路况了;“今天的天气”是想问天气状况,“今天的天气不错”则无此意;“附近哪儿可以喝咖啡”是想找咖啡馆,但“牛皮癣能喝咖啡吗”就是一个知识问答了。类似上述的例子举不胜举,更别说语言理解还受时间、位置、设备、语境等等问题的影响。

(3)如何构建可扩展的算法框架    现实世界包含众多的领域,而我们不可能一次性的把所有领域都定义清楚并且实现之,那我们就需要一个可扩展的算法框架,每当修改或者新增某个领域的时候,不会对其他领域造成干扰。

(4)如何构建数据驱动的计算流程    大数据时代,如果一个算法或者流程不是数据驱动的,不是随着数据的增加而自动提升效果,那这个算法框架就没有持续的生命力。

(5)如何融入上下文知识    在对话场景中,每句话都有对话上下文,同样的句子在不同的上下文中理解结果是不一样的,比如如下的例子,同样的一句话“今天天气好吗”在左侧图中属于天气领域,而在右侧图中则属于音乐领域。

自然语言处理十大应用

作者|ABHISHEKSHARMA编译|VK来源|AnalyticsVidhya

介绍

自然语言处理是数据科学领域最热门的课题之一。公司在这一领域投入大量资金进行研究。每个人都在努力了解自然语言处理及其应用,并以此为生。

你知道为什么吗?

因为仅仅在短短几年的时间里,自然语言处理已经发展成为一种无人能想象的强大而有影响力的东西。

为了了解自然语言处理的力量及其对我们生活的影响,我们需要看看它的应用。因此,我列出了自然语言处理的十大应用。

那么,让我们从自然语言处理的第一个应用开始。

搜索自动更正和自动完成

每当你在谷歌上搜索某个东西,在输入2-3个字母后,它会显示可能的搜索词。或者,如果你搜索一些有错别字的东西,它会更正它们,仍然会找到适合你的相关结果。是不是很神奇?

它是每个人每天都在使用的东西,但从来没有太多的关注它。这是自然语言处理的一个很好的应用,也是一个很好的例子。它影响世界上数百万人,包括你和我。

搜索自动完成和自动更正都有助于我们更有效地找到准确的结果。现在,其他许多公司也开始在他们的网站上使用这个功能,比如Facebook和Quora。

搜索自动完成和自动更正背后的驱动引擎是语言模型。

语言翻译

你有没有用谷歌翻译来找出不同语言中的某个词或短语?它将一段文字用一种语言翻译成另一种语言的容易程度是相当惊人的,对吧?它背后的技术是机器翻译。

机器翻译是将一种语言中的文本自动转换成另一种语言,同时保持原意不变的过程。

在早期,机器翻译系统是基于词典和基于规则的系统,它们的成功率非常有限。

然而,由于神经网络领域的发展、海量数据的可用性和强大的机器,机器翻译在将文本从一种语言转换成另一种语言时变得相当精确。

如今,像Google翻译这样的工具可以很容易地将文本从一种语言转换成另一种语言。这些工具正在帮助许多人和企业打破语言障碍并取得成功。

社交媒体监控

如今,越来越多的人开始使用社交媒体发布他们对某一特定产品、政策或事项的看法。这些信息可能包含一些关于个人好恶的有用信息。

因此,分析这些非结构化数据有助于生成有价值的信息。自然语言处理在这里也起到了作用。

如今,公司使用各种NLP技术分析社交媒体帖子,了解客户对其产品的看法。公司还利用社交媒体监控来了解客户在使用产品时所面临的问题。

不仅仅是公司,甚至政府也用它来识别与国家安全相关的潜在威胁。

聊天机器人

对任何公司来说,客户服务和体验是最重要的。它可以帮助企业改进产品,也可以使顾客满意。但与每个客户进行手动交互,并解决问题可能是一项乏味的任务。

聊天机器人可以帮助解决这一情况,聊天机器人帮助公司实现流畅的客户体验的目标。

如今,许多公司在他们的应用程序和网站上使用聊天机器人,这可以解决客户的基本查询。它不仅使公司的流程更容易,而且还使客户从等待与客服呼求帮助时的沮丧情绪中解脱出来。

此外,它还可以降低为公司聘请客服的成本。起初,聊天机器人只是用来解决客户的查询的工具,但今天它们已经演变成了个人伙伴。从推荐产品到获得客户反馈,聊天机器人可以做任何事情。

调查分析

调查是评估公司业绩的重要方法。公司进行了许多调查以获得客户对各种产品的反馈。这对于理解缺陷和帮助公司改进产品非常有用。

但是,当很多客户接受调查导致数据量增加时,问题就出现了。一个人不可能把它们全部读出来并得出结论。这就是公司使用自然语言处理来分析调查并从中挖掘信息的地方。

比如从反馈中了解用户对事件的看法,分析产品评论以了解利弊。今天,大多数公司使用这些方法是因为它们提供了更准确和有用的信息。

定向广告

一天,我在亚马逊上搜索手机,几分钟后,谷歌开始在各种网页上给我展示类似手机的广告。我相信你已经经历过了。

你知道这里发生了什么吗?定向广告!

是啊!你读对了有针对性的广告。定向广告是一种在线广告,根据用户的在线活动向他们展示广告。

现在大多数的在线公司都使用这种方法,因为第一,它为公司节省了很多钱;第二,相关的广告只向潜在的客户展示。

针对性广告的工作主要是关键字匹配。广告与关键字或短语相关联,并且只向那些搜索与广告关联的关键字相似的关键字的用户显示。

显然,这还不够,还有其他因素,比如他们最近访问过的网站,以及他们感兴趣的网页,都被考虑到为用户提供他们可能感兴趣的产品的相关广告。

招聘与求职

人力资源部是每个公司不可分割的一部分。他们最重要的工作是为公司挑选合适的员工。

但是,今天,在这个竞争激烈的世界里,招聘人员需要为一个职位审查成百上千份简历。筛选简历和筛选候选人可能需要几个小时。这个任务可以自动化吗?

对!在自然语言处理的帮助下,招聘人员可以轻松地找到合适的候选人。这就意味着招聘人员不必检查每一份简历,并手动筛选出合适的候选人。

该技术与命名实体识别的信息抽取一样,可以用于提取技能、姓名、位置和教育等信息。然后,利用这些特征在特征空间中表示候选对象,并将其分为适合或不适合特定角色的类别。或者,他们也可以根据简历推荐一个不同的角色。

这样就可以对简历进行无偏见的筛选,并为空缺职位挑选出最合适的人选,而不需要太多人力。大多数公司使用申请跟踪系统来有效筛选简历。

语音助理

我敢肯定你已经见过他们了,谷歌助手,苹果Siri,亚马逊Alexa。是的,这些都是语音助理。

语音助手是一种软件,它使用语音识别、自然语言理解和自然语言处理来理解用户的口头命令并执行相应的操作。

你可能会说它类似于聊天机器人,但我把语音助理单独包括在内,因为它们应该在这个列表中占据更好的位置。他们不仅仅是聊天机器人,而且可以做比聊天机器人更多的事情。

今天,我们大多数人无法想象没有语音助手的生活。这些年来,他们已经变成了一个非常可靠和强大的朋友。从设置我们的闹钟到为我们找一家餐厅,语音助理可以做任何事情。它们为用户和公司打开了一扇新的机会之门。

语法检查程序

这是自然语言处理中应用最广泛的应用之一。像Grammarly这样的语法检查工具提供了大量的功能,可以帮助人们写出更好的内容。他们可以把任何普通的文本变成美丽的文学作品。

如果你想给你的老板写封电子邮件,或者你要写一篇报告或者更好的一篇文章,无可否认的是你需要这些有用的朋友。

这些工具可以纠正语法、拼写、建议更好的同义词,并帮助以更好的清晰度和参与度交付内容。

它们也有助于提高内容的可读性,从而允许你以尽可能好的方式传达你的信息。如果你看看五年前语法检查的工具,你会发现他们的能力远不如今天。

你知道为什么吗?

因为自然语言处理的transformers是在2017年问世。

电子邮件过滤

你用过Gmail吗?

我肯定你已经注意到了,不管你什么时候收到的都是社交邮件。最好的是垃圾邮件也被过滤到一个单独的部分。是不是既神奇又有益?是的,这就是邮件过滤的全部内容。我不必告诉你我们的日常工作有多依赖于这个功能。

使用文本分类过滤电子邮件,这是一种自然语言处理技术。你可能已经猜到了。

文本分类是将一段文本分类为预定义的类别的过程。文本分类的另一个很好的例子是将新闻文章分成不同的类别。

结尾

既然你熟悉自然语言处理应用程序,现在就可以深入自然语言处理领域了。

原文链接:https://www.analyticsvidhya.com/blog/2020/07/top-10-applications-of-natural-language-processing-nlp/

欢迎关注磐创AI博客站:http://panchuang.net/

sklearn机器学习中文官方文档:http://sklearn123.com/

欢迎关注磐创博客资源汇总站:http://docs.panchuang.net/

什么是自然语言处理,自然语言处理目前的应用有哪些

自然语言处理大体包括了自然语言理解和自然语言生成两个部分,实现人机间自然语言通信意味着要使计算机既能理解自然语言文本的意义,也能以自然语言文本来表达给定的意图、思想等,前者称为自然语言理解,后者称为自然语言生成。自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。自然语言处理的终极目标是用自然语言与计算机进行通信,使人们可以用自己最习惯的语言来使用计算机,而无需再花大量的时间和精力去学习不很自然和习惯的各种计算机语言。针对一定应用,具有相当自然语言处理能力的实用系统已经出现,典型的例子有:多语种数据库和专家系统的自然语言接口、各种机器翻译系统、全文信息检索系统、自动文摘系统等。国内BAT、京东、科大讯飞都有涉及自然语言处理的业务,另外还出现了爱特曼、出门问问、思必驰、蓦然认知、三角兽科技、森亿智能、乂学教育、智齿客服等新兴企业。人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,多智时代专注于人工智能和大数据的入门和科谱,在此为你推荐几篇优质好文:如何快速入门NLP自然语言处理概述http://www.duozhishidai.com/article-11742-1.html自然语言处理(NLP)知识结构总结http://www.duozhishidai.com/article-10036-1.htmlNLP自然语言处理技术,在人工智能法官中的应用是什么?http://www.duozhishidai.com/article-2325-1.html

多智时代-人工智能和大数据学习入门网站|人工智能、大数据、物联网、云计算的学习交流网站

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇