联系我们

AI 101

什么是NLP(自然语言处理)?

mm

更新

 on

什么是自然语言处理(NLP)?

自然语言处理(NLP) 是使计算机能够处理,分析,解释和推理人类语言的技术和工具的研究和应用。 NLP是一个跨学科领域,它结合了在语言学和计算机科学等领域建立的技术。这些技术与AI结合使用,可以创建聊天机器人和数字助理,例如Google Assistant和亚马逊的Alexa。

让我们花一些时间来探索自然语言处理背后的原理,NLP中使用的一些技术以及NLP的一些常见用例。

为什么自然语言处理(NLP)很重要

为了使计算机能够解释人类的语言,必须将其转换为计算机可以操纵的形式。但是,这并不像将文本数据转换为数字那样简单。为了从人类语言中获得含义,必须从构成文本文档的数百或数千个单词中提取模式。这不是一件容易的事。几乎没有一成不变的规则可以应用于人类语言的解释。例如,取决于上下文,完全相同的一组单词可能意味着不同的意思。人类语言是一门复杂且常常含糊不清的事物,可以用诚恳或讽刺的口吻发表言论。

尽管如此,在解释单词和字符时仍可以使用一些通用准则,例如字符“ s”用于表示一个项目是复数。这些通用准则必须相互配合使用,以从文本中提取含义,创建可以 机器学习 算法可以解释。

自然语言处理涉及各种能够应用的算法 非结构化数据 并将其转换为结构化数据。如果以错误的方式应用这些算法,计算机通常将无法从文本中得出正确的含义。这通常可以在语言之间的文本翻译中看到,其中句子的确切含义经常会丢失。尽管在过去的几年中机器翻译已经有了很大的改善,但是机器翻译错误仍然经常发生。

自然语言处理(NLP)技术

Photo: Tamur via WikiMedia Commons, Public Domain (//commons.wikimedia.org/wiki/File:ParseTree.svg)

许多 技术 自然语言处理中使用的“语言”可以放在以下两类之一中:语法或语义。语法技术是处理单词顺序的技术,而语义技术是涉及单词含义的技术。

语法NLP技术

语法示例包括:

  • 合法化
  • 形态分割
  • 词性标记
  • 解析中
  • 断句
  • 抽干
  • 分词

合法化 指将单词的不同词缀提炼成单一形式。合法化采用时态和复数之类的事物并将其简化,例如,“脚”可能会变成“脚”,“条纹”可能会变成“条带”。这种简化的单词形式使算法更容易解释文档中的单词。

形态分割是将单词分为词素或词基的过程。这些单位都是免费的 语素 (可以单独表示为单词)和前缀或后缀。

词性标记 只是识别输入文档中每个单词是哪一部分语音的过程。

解析中 指分析句子中的所有单词并将它们与它们的正式语法标签相关联或对所有单词进行语法分析。

断句,或 句子边界分割 指确定句子在哪里开始和结束。

抽干 是将单词简化为单词的词根形式的过程。例如,connected,connection和connections都将被阻止为“ connect”。

分词 是将大块文本分成小单位的过程,小单位可以是单词,也可以是词干/词根化的单位。

语义NLP技术

语义NLP技术包括以下技术:

  • 命名实体识别
  • 自然语言生成
  • 词义消歧

命名实体识别 涉及标记可以放置在多个不同预设组之一中的某些文本部分。预定义的类别包括日期,城市,地点,公司和个人。

自然语言生成 是使用数据库将结构化数据转换为自然语言的过程。例如,可以使用自然语言来总结有关天气的统计信息,例如温度和风速。

词义消歧 是根据单词出现的上下文为单词中的单词分配含义的过程。

NLP的深度学习模型

常规的多层感知器无法处理顺序数据的解释,因为信息的顺序很重要。为了处理顺序数据中顺序的重要性,使用了一种神经网络,可以保留训练中先前时间步骤中的信息。

递归神经网络 是神经网络的类型 循环来自先前时间步的数据,在计算当前时间步的权重时将其考虑在内。本质上, 神经网络 在向前训练过程中使用了三个参数:一个基于“上一个隐藏状态”的矩阵,一个基于“当前输入”的矩阵以及一个介于隐藏状态和输出之间的矩阵。因为RNN可以考虑先前时间步长中的信息,所以它们可以通过在解释单词含义时考虑句子中的较早单词来从文本数据中提取相关模式。

另一种 深度学习 用于处理文本数据的体系结构是 长短期记忆(LSTM)网络. LSTM 网络在结构上与RNN相似,但是由于其体系结构的某些差异,它们的性能往往优于RNN。它们避免了使用RNN时经常发生的特定问题,即 爆炸梯度问题。

这些深度神经网络可以是单向或双向的。双向网络不仅可以考虑当前单词之前的单词,还可以考虑之后的单词。虽然这会导致更高的准确性,但在计算上却更加昂贵。

自然语言处理(NLP)的用例

Photo: mohammed_hassan via Pixabay, Pixabay License (//pixabay.com/illustrations/chatbot-chat-application-artificial-3589528/)

由于自然语言处理涉及对人类语言的分析和操纵,因此它的应用范围非常广。 NLP的可能应用包括聊天机器人,数字助理,情绪分析,文档组织,人才招聘和医疗保健。

聊天机器人和数字助理(如亚马逊的Alexa和Google助手)是使用NLP来解释和响应语音命令的语音识别和合成平台的示例。这些数字助理可以帮助人们完成各种各样的任务,让他们将一些认知任务转移到另一台设备上,并腾出一些脑力来处理其他更重要的事情。与其在忙碌的早晨寻找到达银行的最佳路线,不如让我们的数字助理来帮助您。

情绪分析 NLP技术用于研究人们对现象的反应和感觉,通过使用语言进行交流。抓住陈述的情绪,例如解释产品评论的好坏,可以为公司提供有关如何收到其产品的大量信息。

自动组织文本文档是NLP的另一个应用程序。诸如Google和Yahoo之类的公司使用NLP算法对电子邮件文档进行分类,将其放入“社交”或“促销”之类的适当容器中。他们还使用这些技术来 识别垃圾邮件 并阻止它到达您的收件箱。

小组还开发了NLP技术,用于识别潜在的工作人员,并根据相关技能找到他们。招聘经理还使用NLP技术来帮助他们对申请人列表进行排序。

NLP技术也被用于增强医疗保健。 NLP可用于改善疾病的检测。可以分析健康记录并通过NLP算法提取症状,然后将其用于建议可能的诊断。亚马逊的综合医疗平台就是一个例子,该平台可以分析健康记录并提取疾病和治疗方法。 NLP的医疗保健应用还扩展到心理健康。有应用 如WoeBot,通过认知行为疗法的各种焦虑管理技术与用户进行交流。

专门从事以下工作的Blogger和程序员 机器学习 深度学习 话题。 Daniel希望帮助他人将AI的力量用于社会公益。