自然语言三兄弟NLP、NLU、NLG傻傻分不清?一文搞懂它们的区别

自然语言(Natural Language)中有NLP(‍Natural Language Processing)、NLU(Natural Language Understanding)和NLG(Natural Language Generation),它们的区别是什么呢?

 

关注《Python学研大本营》

本文旨在快速涵盖NLP、NLU和NLG之间的异同,并谈论NLP的未来。文章作者是Nahla Davies, 今年6月份发表在KDnuggets上。

你有没有使用过像Siri或Alexa那样的智能助手来为你回答问题?答案很可能是 "是",这意味着你在某种程度上已经熟悉了所谓的自然语言处理(NLP)。

NLP是来自不同学科的方法的组合,像Siri和Alexa这样的智能助手使用这些方法来理解我们向它们提出的问题。它结合了人工智能和计算机科学等学科,使人类更容易与计算机进行对话,就像我们与另一个人一样。这种与机器进行模拟人类对话的想法可以追溯到阿兰-图灵写的一篇开创性的论文--这篇论文构成了我们今天使用的NLP技术的基础。

NLP采用非结构化数据集的方式,以将上述数据结构化为格式,这其中有不同的组成部分。

具体来说,这些组件被称为自然语言理解(NLU)和自然语言生成(NLG)。本文旨在快速涵盖NLP、NLU和NLG之间的异同,并谈论NLP的未来。

NLU和NGL是如何融入NLP的

数据科学家和人工智能专家可以利用NLP将非结构化数据集转化为计算机可以转换为语音和文本的格式--他们甚至可以创造出与你问的问题相关的上下文的回应,再回想一下Siri和Alexa等虚拟助手。但是,NLU和NLG到底是如何融入NLP的?

这三门学科的一个共同点是,它们都与自然语言有关,尽管它们都扮演着不同的角色。那么,这三者之间有什么区别呢?

这样想吧:NLU试图理解我们人类所说的语言,而NLP则追踪最重要的数据位,将其结构化为数字和文本等东西;它甚至可以帮助处理恶意的加密流量。同时,NLG利用非结构化数据集来创建我们可以理解为有意义的叙述。

定义自然语言理解(NLU)

自然语言理解依靠人工智能来理解它从语音或文本中获取的信息。它这样做是为了创造一些我们可以从书面文字中发现有意义的东西。一旦数据科学家使用语音识别将口语变成书面语,NLU就会从文本中解析出可理解的意义,无论该文本是否包含错误和发音错误。

NLU对数据科学家很重要,因为没有它,他们就没有办法从语音和聊天机器人等工具中解析出意义。作为人类,我们毕竟习惯于与支持语音的机器人进行对话--然而,机器却没有这种奢侈的便利。除此之外,NLU还能像你一样从语音中识别出情绪和污言秽语。这意味着,借助NLU的力量,数据科学家可以对文本进行分类,并对不同格式的内容进行有意义的分析。

自然语言理解旨在解析和理解非结构化信息,将其转化为可用的数据,而NLG的作用恰恰相反。为此,接下来让我们来定义NLG,并了解数据科学家如何将其应用于现实世界的用例。

定义自然语言生成(NLG)

当数据科学家向NLG系统提供数据时,它分析这些数据集,以创建通过对话理解的有意义的叙述。从本质上讲,NLG将数据集转化为你我都能理解的自然语言。

NLG被赋予了现实生活中人的经验,这样它就能产生经过彻底研究并在最大程度上准确的输出。这个过程可以追溯到我们前面提到的阿兰-图灵所写的文献,它对于让人们相信机器正在与他们进行可信和自然的对话至关重要,无论讨论的主题是什么。

组织可以使用NLG来创建对话叙事,让整个组织的任何人都可以利用。例如,NLG可以成为在市场、人力资源、销售和信息技术等部门工作的专家的巨大福音--NLG最常被应用于商业智能仪表盘、内容的自动创建和更有效的数据分析。

NLP的未来是什么样子的?

虽然NLP有大量的现代商业应用,但许多组织一直在努力广泛接受它。这在很大程度上是由于几个关键的挑战:比如,信息过载,经常困扰着企业,使他们很难说在一个看似无尽的更多数据的海洋中哪些数据是重要的。

此外,企业往往需要特定的技术和工具,如果他们想使用NLP,他们可以从数据中解析出有用的信息。最后,NLP意味着,如果企业想使用NLP处理和维护来自不同数据源的数据集,就需要先进的机器。

虽然挑战阻碍了大多数组织采用NLP,但这些组织最终将采用NLP、NLU和NLG,让他们的机器保持可信的、类似人类的互动和对话,似乎是不可避免的。因此,在NLP研究的子领域,如语义学和句法,发生了大量的投资。

结论

总而言之,我们在这篇文章中所涉及的一切。NLU阅读并理解自然语言,而NLG创造并输出更多的语言;NLU为语音和文本赋予意义,而NLG则在机器的帮助下输出语言。NLU从语言中提取事实,而NLG则将NLU提取的见解用于创造自然语言。

请注意,苹果和谷歌等IT领域的巨大影响者将继续投资于NLP,以便他们能够创造出类似人类的系统。到2025年,NLP的全球市场将达到220亿美元,所以这些科技巨头改变人类与技术的互动方式只是时间问题。

Nahla Davies是一名软件开发人员和技术作家。在全职从事技术写作之前,她是服务于5,000家体验式品牌组织的首席程序员,其客户包括三星、时代华纳、Netflix和索尼。

推荐书单

最后,附上有关Python的必读书单,轻松搞定有关Python问题。

精彩回顾

《人体系统调优不完全指南》火了!我们整理了一份《程序员健康指南》!

Kindle退出中国怎么办?快用Python下载你的电子书

Python面试必须知道的15个问题

 关注《Python学研大本营》

### Rasa NLU 意图识别处理方法 #### 配置文件设置 在 `config.yml` 文件中定义了NLU管道,这决定了Rasa如何解析用户输入并从中抽取意图实体。此配置描述了一系列步骤,用于文本预处理、特征提取以及最终的意图分类[^1]。 对于意图分类而言,可以采用多种机器学习模型来实现这一目标。例如,在某些情况下会使用Scikit-Learn库中的支持向量机(SVM)来进行训练,并利用网格搜索(Grid Search CV)寻找最佳参数组合以提高预测性能[^2]。 当遇到难以区分的不同类别间边界模糊的情况时,还可以引入一种称为“回退(fallback)”机制的方法。这种方法允许设定一个阈值,即只有当某个特定类别的概率超过这个预定界限时才会被认为是有效的;否则就认为是未识别成功而触发默认响应逻辑[^3]。 另外值得注意的是,在更复杂的场景下为了提升多意图理解能力,可能会涉及到基于TensorFlow框架构建自定义Pipeline的设计思路。这样的架构不仅能够更好地适应复杂语境下的需求变化,同时也提供了更高的灵活性去调整内部组件的工作方式[^4]。 ```yaml language: "en" pipeline: - name: "WhitespaceTokenizer" - name: "CountVectorsFeaturizer" - name: "DIETClassifier" epochs: 100 ``` 上述代码片段展示了部分可能出现在 `config.yml` 中的内容,其中包含了分词器(`WhitespaceTokenizer`)、特征转换器(`CountVectorsFeaturizer`) 意图分类器 (`DIETClassifier`) 的实例化过程及其初始化参数。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值