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

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
NLP自然语言处理_基础版,每接口每天50万次
简介: NLP 的全称是 Natural Language Processing,翻译成中文称作:自然语言处理。它是计算机和人工智能的一个重要领域。顾名思义,该领域研究如何处理自然语言。

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

NLP 的全称是 Natural Language Processing,翻译成中文称作:自然语言处理。它是计算机和人工智能的一个重要领域。顾名思义,该领域研究如何处理自然语言。

自然语言就是我们人类市场交流所使用的语音和字符系统。就目前而言,NLP所研究的对象,以字符系统——也就是我们通常说的“文字”——为主。

为什么要处理自然语言?

为什么要处理文字呢?因为有需求啊!

我们用文字描述事物、经历和思想。形成的文献资料,除了被阅读,往往还需要进行很多其他操作。

比如,被翻译成其他语种;对内容进行摘要;在其中查找某个问题的答案;或者,了解其中提到了哪些人事物,以及它们之间的关系如何,等等。

虽然所有这些需求,都可以通过人工阅读文献来解决,但“浩如烟海”的文献量导致人工文字处理的产能严重不足。

NLP 的发展历程

上世纪 40 年代计算机被发明,用机器而非人力来处理信息成为可能。早在 1950 年代,自然语言处理就已经成为了计算机科学的一个研究领域。

不过一直到 1980 年代,NLP 系统是以一套复杂的人工订制规则为基础,计算机只是机械地执行这些规则,或者做一些诸如字符匹配,词频统计之类的简单计算。

1980年代末期,机器学习的崛起为 NLP 引入了新的思路。刚性的文字处理人工规则日益被柔性的、以概率为基础的统计模型所替代。

近些年来,随着深度学习的发展,各类神经网络也被引入 NLP 领域,成为了解决问题的技术。

这里要注意了:自然语言处理(NLP)指以计算机为工具解决一系列现实中和自然语言相关的问题,机器学习、深度学习是解决这些问题的具体手段。 当我们关注 NLP 这一领域时,要分清本末,要做的事情是本,做事的方式方法是末。如果神经网络能够解决我们的问题,我们当然应该采用,但并不是只要去解决问题,就一定要用神经网络。

常见的 NLP 任务

NLP 要处理的问题纷繁复杂,而且每一个问题都要结合相应场景和具体需求才好讨论。

不过这些问题也有相当多的共性,基于这些共性,我们将千奇百怪的待解决 NLP 问题抽象为若干任务。

例如:分词、词嵌入、新词发现、拼写提示、词性标注、实体抽取、关系抽取、事件抽取、实体消歧、公指消解、文本分类、机器翻译、自动摘要、阅读理解等等,都是常见的 NLP 任务。

从 NLP 任务到技术实现

针对这些任务,NLP 研究人员探索出了很多方法,这些方法又对应于不同类型的技术。

在工作中,当我们遇到问题的时候,往往需要先将其对应到一个或多个任务,再在该任务的常用实现方法中选取一种适合我们使用的来执行任务。

【举个例子】:我们要基于若干文献构建一个知识图谱,知识图谱的两大核心要素是实体和关系,那么当然首先我们面临的任务就是从这些文献中抽取实体和关系。

实体抽取是一项非常常见的 NLP 任务,实现它的方法有多种,大体而言分为两个方向:

i)基于实体名字典进行字符匹配抽取;

ii)用序列预测模型进行抽取。

序列预测模型又可以选用机器学习模型,比如条件随机场(CRF);或选用神经网络,比如 CRF+LSTM,或 CRF+BERT等。

具体选哪种方法呢?那就要看我们需要抽取的实体类型、文献类型和文献量了。

如果现在是从少量专业文献(例如论文、说明书、研究报告等)中抽取一些列专业名词表示的实体,那么用字典匹配方便直接代价小,可以一试。

如果是要从海量的各类文献中抽取一些通用的实体,那么借助模型则可能效果更佳。

具体用机器学习模型还是神经网络呢?这又和我们拥有的标注数据与计算资源有关,如果不差钱,想标多少数据,想训练多大模型都不在乎,上神经网络自然可以追求高准确率,但如果资源捉襟见肘,可能机器学习模型更加实用。

相关文章
|
2月前
|
自然语言处理 算法 Python
自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
【10月更文挑战第9天】自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
52 4
|
2月前
|
机器学习/深度学习 存储 人工智能
大数据中自然语言处理 (NLP)
【10月更文挑战第19天】
161 60
|
20天前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(Natural Language Processing,简称NLP)
自然语言处理(NLP)是人工智能的分支,旨在让计算机理解、解释和生成人类语言。NLP的关键技术和应用包括语言模型、词嵌入、文本分类、命名实体识别、机器翻译、文本摘要、问答系统、情感分析、对话系统、文本生成和知识图谱等。随着深度学习的发展,NLP的应用日益广泛且效果不断提升。
|
22天前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言。本文探讨了深度学习在NLP中的应用,包括其基本任务、优势、常见模型及具体案例,如文本分类、情感分析等,并讨论了Python的相关工具和库,以及面临的挑战和未来趋势。
50 1
|
1月前
|
人工智能 自然语言处理 语音技术
利用Python进行自然语言处理(NLP)
利用Python进行自然语言处理(NLP)
42 1
|
2月前
|
人工智能 自然语言处理 语音技术
利用Python进行自然语言处理(NLP)
利用Python进行自然语言处理(NLP)
30 3
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术在自然语言处理中的应用与挑战
【10月更文挑战第3天】本文将探讨AI技术在自然语言处理(NLP)领域的应用及其面临的挑战。我们将分析NLP的基本原理,介绍AI技术如何推动NLP的发展,并讨论当前的挑战和未来的趋势。通过本文,读者将了解AI技术在NLP中的重要性,以及如何利用这些技术解决实际问题。
|
3月前
|
机器学习/深度学习 数据采集 自然语言处理
深度学习在自然语言处理中的应用与挑战
本文探讨了深度学习技术在自然语言处理(NLP)领域的应用,包括机器翻译、情感分析和文本生成等方面。同时,讨论了数据质量、模型复杂性和伦理问题等挑战,并提出了未来的研究方向和解决方案。通过综合分析,本文旨在为NLP领域的研究人员和从业者提供有价值的参考。
|
26天前
|
自然语言处理 API C++
阿里通义推出SmartVscode插件,自然语言控制VS Code,轻松开发应用,核心技术开源!
SmartVscode插件深度解析:自然语言控制VS Code的革命性工具及其开源框架App-Controller
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI在自然语言处理中的创新应用
【10月更文挑战第7天】本文将深入探讨人工智能在自然语言处理领域的最新进展,揭示AI技术如何改变我们与机器的互动方式,并展示通过实际代码示例实现的具体应用。
46 1