自然语言处理

自然语言处理是一项利用计算机和软件获取人类语言(书面或口语)含义的技术。

什么是自然语言处理?

自然语言处理 (NLP) 使用 AI 处理和分析文本或语音数据,以便理解和解释内容、对内容进行分类和/或从内容中获得见解。

NLP 中包含自然语言生成 (NLG),它会使用计算机创建人类语言文本。此外,自然语言理解 (NLU) 会录入文本,理解上下文和意图,然后生成智能回复。 

垃圾邮件过滤程序、拼写检查程序、语法检查程序、自动更正、语言翻译、情感分析、语义搜索等都属于 NLP。基于 Transformer 架构的新深度学习 (DL) 方法的出现,为 NLP 技术的性能和功能带来了革命性的变化。现在,先进的 NLP 模型已成为现代搜索引擎、语音助手和聊天机器人的核心。这些应用程序在自动处理日常订单、路由查询和回答常见问题时也变得日益纯熟。 

为什么选择 NLP?

NLP 的应用已相当广泛,并有望以几何级数增长。据一项研究调查估计,在全球市场中,与自然语言处理相关的产品和服务将在 2025 年增长到 430 亿美元;而 2017 年时,这一数字为 30 亿美元。这一惊人的 14 倍增长也证明了自然语言处理解决方案的广泛应用。

进一步推动这一增长的是,一个组织内仅有 15% 的数据存储在企业数据库中这一事实。这些数据包括文本、电子邮件、会议笔记、电话转录等。自然语言处理有望释放隐藏在所有这些数据中的业务价值,使其像存储数据一样对业务决策者发挥作用。

NLP 的工作原理是什么?

机器学习 (ML) 是推动当今大多数自然语言处理解决方案的引擎,并将推动它们进一步发展。这些系统使用 NLP 算法来理解词语的使用方式。它们从书籍、短语和惯用语中提取所有信息后,通过 NLP 识别词语和短语之间的模式和关系,来“学习”理解人类语言。

通常,在 NLP 应用中,会使用词嵌入等技术将输入文本转换为词向量(一个词的数学表征)。借助此技术,在将句子中的每个词输入到深度学习模型(例如 RNN、LSTM 或 Transformer)前将其翻译成一组数字,以便理解上下文。神经网络在进行自我训练时,这些数字会随着时间的推移而发生变化,为每个词编码语义和上下文信息等独特属性。这些 DL 模型为特定语言任务(例如下一词语预测和文本摘要)提供适当的输出,这些任务用于生成输出序列。

但是,词嵌入等文本编码机制可能会为捕获细微差别带来挑战。例如,bass fish 和 bass player 具有相同的表征。在对长段落进行编码时,它们还可能在结尾丢失掉文章开头获取的上下文。BERT (Bidirectional Encoder Representations from Transformers) 是深度双向的,能够比其他文本编码机制更好地理解和保留上下文。训练语言模型时,遭遇的一个关键挑战是缺少标记数据。BERT 在无监督任务上接受训练,通常使用书籍语料库、英语维基百科等的非结构化数据集。

GPU:加速 NLP

让计算机理解人类语言及所有细微差别,并做出适当的反应,这是 AI 研究人员长期以来的追求。但是,在采用加速计算的现代 AI 技术出现之前,构建具有真正自然语言处理 (NLP) 功能的系统是无法实现的。

一个由数百个核心组成的 GPU,可以并行处理数千个线程。GPU 已成为训练深度学习模型和执行推理的首选平台,因为它们的性能比纯 CPU 平台高 10 倍。

CPU 与 GPU 的区别。

自然语言处理中近年来不断取得的进步和突破是驱动 NLP 增长的一个因素,其中重要的是部署 GPU 来处理日渐庞大且高度复杂的语言模型。

像 BERT 这样基于 NLP Transformer 的深度学习模型不需要按顺序处理连续数据,与 RNN 相比,可以在 GPU 上实现更多的并行化,并减少训练时间。BERT 使用无监督式学习方法的能力、使用预训练模型进行迁移学习的能力,以及使用 GPU 进行加速的能力,均使其在行业中得到广泛应用。

对支持 GPU 的模型经过快速训练和优化后,语音辅助应用程序中的响应时间从数十秒缩短到几毫秒。这使得此类计算机辅助交互尽可能地接近“自然”。

NLP 用例

初创公司

自然语言处理应用在过去十年呈爆炸式增长,因为由 GPU 驱动的递归神经网络的改进提供了性能更好的人工智能。这使得初创公司得以提供语音服务语言教师聊天机器人等服务。

医疗健康

医疗健康面临的困难之一是难以获得。打医生办公室电话并一直等待的情况十分常见,与索赔代表联系可能同样困难。通过实施 NLP 来训练聊天机器人是医疗健康行业的一项新兴技术,可以解决医疗专业人员的短缺问题,并开创与患者的沟通渠道。

NLP 的另一个重要的医疗健康应用程序是生物医学文本挖掘(通常称为 BioNLP)。鉴于生物文献数量众多,以及生物医学出版速度不断提高,自然语言处理是一个关键的工具,可以在已发表的研究中提取信息,推动生物医学领域的知识进步。这非常有助于药物研发和疾病诊断。

金融服务

NLP 是为金融服务公司构建更好的聊天机器人和 AI 助理的关键组成部分。在众多用于基于 NLP 的应用程序的语言模型中,BERT 已成为机器学习领域 NLP 的领军者及语言模型。借助 AI,NVIDIA 近期打破了 BERT 训练速度的记录,有助于释放未来几年内在线提供的数十亿预期对话式 AI 服务的潜力,使其达到人类水平的理解能力。例如,银行可以使用 NLP 来评估信用记录很少或没有信用记录的客户信誉。

零售

除了医疗健康外,聊天机器人技术还常用于零售应用程序,能够准确分析客户查询,并生成回复或建议。这可简化客户流程,并提高商店运营效率。NLP 还用于文本挖掘客户反馈和情感分析。

加速 AI 和 NLP 的 NVIDIA GPU

借助 NVIDIA GPU 和 CUDA-X AI ,可快速训练和优化大量的先进语言模型,从而在几毫秒或几千分之一秒内运行推理。这是一项重大进步,可以结束快速 AI 模型与大型复杂 AI 模型之间的权衡。

NVIDIA 的 AI 平台率先将 BERT 的训练时间控制在一小时之内,并在 2 毫秒多一点的时间内完成 AI 推理。在与复杂语言模型协作时,NVIDIA GPU 的并行处理能力和 Tensor Core 架构可实现更高的吞吐量和可扩展性,从而为 BERT 的训练和推理提供优异的性能。借助这种突破性的性能水平,开发者能够为大型应用程序应用先进的语言理解技术,供全球数亿消费者使用。

早期采用 NVIDIA 性能提升技术的公司包括 Microsoft 以及全球一些最具创新性的初创公司。这些组织借助 NVIDIA 平台为客户开发高度直观、响应即时且基于语言的服务。 

后续步骤

如需了解详情,请参阅:

了解:

  • NVIDIA NGC 目录免费提供大量软件库,以及用于构建充分利用 GPU 的高性能计算环境的工具。
  • 编程人员和数据科学家可以利用各类机器学习和分析软件库,大幅加速 GPU 上完整的端到端数据科学流程。这些库可提供高效、经过优化且会定期扩展的算法实施。NVIDIA CUDA-X AI 软件加速库使用机器学习中的 GPU 来加速工作流程并实现模型优化。CUDA 并行计算平台提供了一个 API,开发者可以使用它构建利用 GPU 处理大型数据块的工具,而这是一项关键的机器学习任务。
  • NVIDIA 深度学习培训中心提供由教师引导的基本工具和技术实践培训,可用于搭建基于 Transformer 的自然语言处理模型,完成文档分类等文本分类任务。