一文看懂自然语言理解(NLU)

栏目: 数据库 · 发布时间: 5年前

内容简介:自然语言理解(NLU)跟 NLP 是什么关系?为什么说它是人工智能领域里一个难点?NLU 的发展史历史和目前最现金的方法是什么?本文将解答上面的问题,带你全面了解自然语言理解(NLU)。

本文系作者投稿,作者公众号: easyAI (id: easyai-tech) , easyAI 致力于做人工智能知识库,欢迎关注,点击文末"阅读原文"可直达原文链接,也欢迎大家投稿,AI、NLP相关即可。

一文看懂自然语言理解(NLU)

自然语言理解(NLU)跟 NLP 是什么关系?为什么说它是人工智能领域里一个难点?NLU 的发展史历史和目前最现金的方法是什么?

本文将解答上面的问题,带你全面了解自然语言理解(NLU)。

什么是自然语言理解(NLU)?

大家最常听到的是 NLP,而 自然语言理解(NLU) 则是 NLP 的一部分:

一文看懂自然语言理解(NLU)

什么是自然语言?

自然语言就是大家平时在生活中常用的表达方式,大家平时说的「讲人话」就是这个意思。

自然语言:我背有点驼(非自然语言:我的背部呈弯曲状)

自然语言:宝宝的经纪人睡了宝宝的宝宝

自然语言理解就是希望机器像人一样,具备正常人的语言理解能力,由于自然语言在理解上有很多难点(下面详细说明),所以 NLU 是至今还远不如人类的表现。

一文看懂自然语言理解(NLU)

下面用一个具体的案例来深度说明一下自然语言理解(NLU):

对话系统这个事情在2015年开始突然火起来了,主要是因为一个技术的普及:机器学习特别是深度学习带来的语音识别和NLU(自然语言理解)——主要解决的是识别人讲的话。

这个技术的普及让很多团队都掌握了一组关键技能: 意图识别和实体提取

这意味着什么?我们来看一个例子。

在生活中,如果想要订机票,人们会有很多种自然的表达:

“订机票”;

“有去上海的航班么?”;

“看看航班,下周二出发去纽约的”;

“要出差,帮我查下机票”;

等等等等

可以说“自然的表达” 有无穷多的组合(自然语言)都是在代表 “订机票” 这个意图的。而听到这些表达的人,可以准确理解这些表达指的是“订机票”这件事。

而要理解这么多种不同的表达,对机器是个挑战。在过去,机器只能处理“结构化的数据”(比如关键词),也就是说如果要听懂人在讲什么,必须要用户输入精确的指令。

所以,无论你说“我要出差”还是“帮我看看去北京的航班”,只要这些字里面没有包含提前设定好的关键词“订机票”,系统都无法处理。而且,只要出现了关键词,比如“我要退订机票”里也有这三个字,也会被处理成用户想要订机票。

一文看懂自然语言理解(NLU)

自然语言理解这个技能出现后,可以让机器从各种自然语言的表达中,区分出来,哪些话归属于这个意图;而那些表达不是归于这一类的,而不再依赖那么死板的关键词。比如经过训练后,机器能够识别“帮我推荐一家附近的餐厅”,就不属于“订机票”这个意图的表达。

并且,通过训练,机器还能够在句子当中自动提取出来“上海”,这两个字指的是目的地这个概念(即实体);“下周二”指的是出发时间。

这样一来,看上去“机器就能听懂人话啦!”。

一文看懂自然语言理解(NLU)

自然语言理解(NLU)的应用

几乎所有跟文字语言和语音相关的应用都会用到 NLU,下面举一些具体的例子。

一文看懂自然语言理解(NLU)

机器翻译

基于规则的翻译效果经常不太好,所以如果想提升翻译的效果,必须建立在对内容的理解之上。

如果是不理解上下文,就会出现下面的笑话:

I like apple, it’s so fast!

我喜欢「苹果」,它很快!

机器客服

如果想实现问答,就要建立在多轮对话的理解基础之上,自然语言理解是必备的能力。

下面的例子对于机器来说就很难理解:

“有什么可以帮您?”
“你好,我想投诉”
“请问投诉的车牌号是多少?”
“xxxxxx”
“请问是什么问题?”
“我刚上车,那个态度恶劣的哥谭市民就冲我发火”

机器很容易理解为:那个态度恶劣/的/哥谭/市民/就冲我发火

智能音箱

智能音箱中,NLU 也是重要的一个环节。很多语音交互都是很短的短语,音箱不但需要能否识别用户在说什么话,更要理解用户的意图。

“我冷了”

机器:帮您把空调调高1度

用户并没有提到空调,但是机器需要知道用户的意图——空调有点冷,需要把温度调高。

自然语言理解(NLU)的难点

下面先列举一些机器不容易理解的案例:

  1. 校长说衣服上除了校徽别别别的

  2. 过几天天天天气不好

  3. 看见西门吹雪点上了灯,叶孤城冷笑着说:

    “我也想吹吹吹雪吹过的灯”,然后就吹灭了灯。

  4. 今天多得谢逊出手相救,在这里我想真心感谢“谢谢谢逊大侠出手”

  5. 灭霸把美队按在地上一边摩擦一边给他洗脑,被打残的钢铁侠说:

    灭霸爸爸叭叭叭叭儿的在那叭叭啥呢

  6. 姑姑你估估我鼓鼓的口袋里有多少谷和菇!

  7. “你看到王刚了吗”“王刚刚刚刚走”

  8. 张杰陪俩女儿跳格子:

    俏俏我们不要跳跳跳跳过的格子啦

一文看懂自然语言理解(NLU)

那么对于机器来说,NLU 难点大致可以归为5类:

难点1:语言的多样性

自然语言没有什么通用的规律,你总能找到很多例外的情况。

另外,自然语言的组合方式非常灵活,字、词、短语、句子、段落…不同的组合可以表达出很多的含义。例如:

我要听大王叫我来巡山

给我播大王叫我来巡山

我想听歌大王叫我来巡山

放首大王叫我来巡山

给唱一首大王叫我来巡山

放音乐大王叫我来巡山

放首歌大王叫我来巡山

给大爷来首大王叫我来巡山

难点2:语言的歧义性

如果不联系上下文,缺少环境的约束,语言有很大的歧义性。例如:

我要去拉萨

  • 需要火车票?

  • 需要飞机票?

  • 想听音乐?

  • 还是想查找景点?

难点3:语言的鲁棒性

自然语言在输入的过程中,尤其是通过语音识别获得的文本,会存在多字、少字、错字、噪音等问题。例如:

大王叫我来新山

大王叫让我来巡山

大王叫我巡山

难点4:语言的知识依赖

语言是对世界的符号化描述,语言天然连接着世界知识,例如:

大鸭梨

除了表示水果,还可以表示餐厅名

7天

可以表示时间,也可以表示酒店名

晚安

有一首歌也叫《晚安》

难点5:语言的上下文

上下文的概念包括很多种:对话的上下文、设备的上下文、应用的上下文、用户画像…

U:买张火车票
A:请问你要去哪里?
U:宁夏
U:来首歌听
A:请问你想听什么歌?
U:宁夏

NLU 的实现方式

自然语言理解跟整个人工智能的发展历史类似,一共经历了3次迭代:

  1. 基于规则的方法

  2. 基于统计的方法

  3. 基于深度学习的方法

一文看懂自然语言理解(NLU)

最早大家通过总结规律来判断自然语言的意图,常见的方法有:CFG、JSGF等。

后来出现了基于统计学的 NLU 方式,常见的方法有:SVM、ME等。

随着深度学习的爆发,CNN、RNN、LSTM 都成为了最新的”统治者”。

本文转自 「easyAI - 人工智能知识库」。 easyAI 专注做人工智能科普内容,让更多的人了解 AI。更多内容可范文官网:https://easyai.tech ,或关注 easyAI 的公众号:

一文看懂自然语言理解(NLU)


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C语言程序设计

C语言程序设计

K. N. King / 吕秀锋、黄倩 / 人民邮电出版社 / 2010-4 / 79.00元

时至今日, C语言仍然是计算机领域的通用语言之一,但今天的 C语言已经和最初的时候大不相同了。本书最主要的一个目的就是通过一种“现代方法”来介绍 C语言,书中强调标准 C,强调软件工程,不再强调“手工优化”。这一版中紧密结合了 C99标准,并与 C89标准进行对照,补充了 C99中的最新特性。本书分为 C语言的基础特性、 C语言的高级特性、 C语言标准库和参考资料 4个部分。每章末尾都有一个“问与......一起来看看 《C语言程序设计》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具