什么是自然语言处理?
自然语言处理是机器学习的一种形式,支持人们使用人类语言与人工智能 (AI) 进行交流。
default
{}
default
{}
primary
default
{}
secondary
自然语言处理概览
自然语言处理概览和定义
自然语言处理 (NLP) 是 AI 领域一个极具吸引力的分支,支持人类和机器以日常语言进行交互。比如,你向 Siri 下达语音指令,或在 Google 获取翻译结果,都是自然语言处理技术的实际应用,因为这些场景都展示了软件理解并回应人类语言的能力。
NLP 与 AI 有何关联?
大多数人并非程序员或软件高级用户,这正是自然语言处理如此重要的原因之一。软件操作往往需要陡峭的学习曲线,而借助 NLP,你不用成为专家也能使用复杂的软件。事实上,通过 NLP 技术,你可以简明地向 AI 描述你的意图,就像向朋友说明你的需求那样。
AI 涵盖的技术领域非常广泛,而 NLP 分支则是专注于攻克人类语言难题。NLP 解决方案要想真正发挥作用,就不能仅限于捕捉字面含义,而是必须理解语言的语境及背后的意图。为此,NLP 开发人员会借助机器学习和深度学习等其他 AI 技术。
为什么自然语言处理技术很重要?
自然语言处理技术让用户能够驾驭原本难以操作的科技产品,同时使计算机获得前所未有的文本和语音解析能力。以下是 NLP 的一些主要优势:
NLP 帮助员工提高生产力
在工作中,自然语言处理技术能通过自动化处理重复或耗时的任务显著提升效率。例如,客服部门可以使用基于 NLP 的聊天机器人处理常规客户问询;会计部门可以使用基于 NLP 的系统从发票和收据中提取关键信息,并利用这些信息填充数据库或电子表格。
更值得关注的是,自动化数据录入与处理既能降低人为失误风险,又能加速工作流。当系统能够深度理解人类语言并接管基础事务时,就能让用户专注于更高价值的任务,从而提高生产力。
NLP 助力提升客户体验
当你尝试电话联系企业却被困在令人困惑的语音迷宫时,这其实是交互式语音应答系统训练不足的表现。而训练有素的 NLP 聊天机器人能够为客户提供自然流畅的体验。例如,搭载 NLP 技术的电商平台能分析客户的浏览历史。通过解读客户的兴趣商品,系统可以精准向客户推荐他们可能需要的产品。
NLP 驱动的客服聊天机器人可以快速回答问题或解决问题,从而改善客户服务体验。这些聊天机器人可以设计为能够持续追踪完整的客户交互记录,精准识别客户过去遇到过的问题。
NLP 助力创建新洞察
当你向企业发送咨询邮件、提出建议或投诉时,常会感觉石沉大海。事实可能就是如此,因为少有企业有时间逐一查看他们收到的每一条客户反馈。但是,搭载 NLP 技术的 AI 系统能够做到。这类系统能高效梳理海量数据集,如网站上的客户对话等,然后为企业提供精准的讨论摘要,支持企业成功解决问题。
自然语言处理技术的工作原理
NLP 实现人机对话的工作原理如下。这里是以文本处理为例,语音处理略有差异,但总体原则相同。
我们通过一个例句来展示整个运作流程:
“I like demonstrating how natural language processing works.(我喜欢演示自然语言处理的工作原理)”
算法首先执行文本预处理。
文本预处理
文本预处理是指简化人类创建的文本,让 NLP 算法能够更轻松地处理人类语言。
- 标记化
标记化是将句子中的词语和标点符号分解为独立词元的过程。标记化很重要,因为在执行索引和搜索等任务时,NLP 算法处理词元的效率比处理文本更高。例句“I like demonstrating how natural language processing works”中有八个词汇和一个句号,所以按词汇量计有 8 个词元,按句号量计有 1 个词元,总共是 9 个词元。
- 小写化
小写化是将所有词元转换为小写词元的过程,目的是让数据集变得更简单。在例句中,其中一个词元是“I”。为避免歧义并提高效率,小写化步骤会将该大写词元转换为小写词元“i”。在流程的其他环节,小写化规则会更加复杂。
- 移除停用词
在自然语言处理中,简化文本的另一种方法是移除无重要含义的词,这些词被称为停用词。在例句中,“i” 和“how”这两个词通常被指定为停用词。算法将这些词移除后,还剩七个词元,分别是“like”、“demonstrating”、“natural”、“language”、“processing”、“works”和“.”。
- 词干提取与词形还原
即使只剩下七个词元,也还有进一步简化的空间。一种方法就是词干提取,即,通过截断词缀将单词缩减至基础词干形式。词元"demonstrating"基于词干"demonstr"构建,就像“natural”基于“natur”构建一样,所以模型会用词干“demonstr”和“natur”替换原始词元。
同一词汇在不同语境中含义各异,词形还原正是判定特定语境下正确语义的过程。例句中的"like"既可表示"喜欢",也可指"类似于",而在这个句子中,词形还原将选定"喜欢"作为其语义语境。
文本表示
下一步是文本表示,即将词语转换为机器可以处理的数字格式。除数字外,文本还可以转换为向量或嵌入,这些格式更复杂,会提供语境等信息。
- 词袋模型 (BoW)
计算机擅长计数,而 BoW 统计方法可以计算一个词汇在文档中出现的次数。例如,如果“球队”、“比赛”和“得分”等词在文档中频繁出现,则语境更可能是体育领域。在例句中,每个词只有一个实例。那么 BoW 表示方法会显示每个词仅出现一次,如下所示:
{“i”: 1, “like”: 1, “demising”: 1, “how”: 1, “natural”: 1, “language”: 1, “processing”: 1, “works”: 1}
- TF-IDF(词频-逆文档频率)
TF-IDF 算法通过统计某个词在文档集合中的出现频率评估其重要性。词频越高,则 TF-IDF 权重越低,这个词在单个文档中的意义贡献度越小。像“the”和“a”这样的词经常出现,因此不太重要。例句的权重分布可表示为如下形式,其中常见词权重较低,罕见词权重较高:
{“i”: 0.1, “like”: 0.1, “demonstrating”: 0.3, “how”: 0.1, “natural”: 0.2, “language”: 0.2, “processing”: 0.5, “works”: 0.1}
文本分析
文本分析是 NLP 算法从文本中提取语义的环节,正是这一过程使算法能够针对用户查询生成精准的响应。
- 命名实体识别 (NER)
完成量化分析后,NLP 算法将进行命名实体识别。例如,"apple"指代水果,而首字母大写的"Apple"特指科技公司,NLP 算法必须能区分此类差异。例句“I like demonstrating how natural language processing works”中包含“natural language processing”(自然语言处理),而人们通常认为这是一项 AI 技术。因此其具体表示形式如下:
NER 输出:[(“natural language processing”,“Technology”)]
- 情感分析
部分数据集(如割草机零件目录)可能缺乏显著情感基调,而电影评论可能蕴含强烈情感色彩。如果数据集确实有语气,情感分析就是自然语言处理过程中捕捉该特征的关键环节。针对前文中的例句,情感分析可能如下所示:
情感输出:积极
句法解析
所有句子皆具语法结构,句法解析就是通过分析该结构查找名词、动词、主语等的过程。由于不同语言遵循不同句法规则,所以该技术对机器翻译至关重要。针对前面给出的例句,句法解析可能生成如下结果:
句法树:(ROOT (S (NP (PRP I)) (VP (VBP like) (S (VP (VBG presting) (SBAR (WHADVP (WRB how))) (S (NP (NNP Natural) (NNP Language) (NNP Processing))) (VP (VBZ works))))))))))
根据具体算法,通常还需执行额外处理步骤。最终输出的是近似人类对话的体验:机器深度理解人类语言的语义与意图,并以自然语言作出回应。
自然语言处理任务示例
使用语音指令控制无人机
即使是再强大的技术,如果你不知道如何使用,其价值也有限。自然语言处理打破了这种技术壁垒,大幅降低了获取先进软硬件收益所需的专业技术知识门槛。用户可以通过自然语言对话与基于 NLP 的系统进行交互,无需依赖复杂的指令、编程操作或物理控件。
例如,小型无人机的遥控程序支持你直接下达语音指令,如空中翻转,而无需学习原本必需的复杂控件操作。这种简捷的语音指令功能,让更多人可以享受技术的便利。
获取更深入的品牌管理洞察
人们每天都在表达自己的想法和偏好,而企业可以获取其中的大部分数据。尽管企业已经通过产品销量等数据洞察部分客户行为,但借助自然语言处理解决方案,计算机还可以将社交媒体对话和在线客户评论转化为可据以采取行动的信息。
NLP 生成的洞察是一种不同于传统销售分析的信息。企业可以使用销售数据获取运营洞察(如预测或资源管理),而基于 NLP 的分析在品牌管理和客户体验提升方面更具战略价值。
防止信息过载
如果你有一个工作邮箱,信息过载几乎不可避免。普通员工每天会收到 120 多封电子邮件,所以 60% 左右的员工会直接忽略公司内部邮件。但是,如果你的电子邮件应用具有 NLP 功能,就可以避免信息过载。搭载 NLP 技术的邮件系统可以对电子邮件进行筛选、分类和优先级划分,确保关键邮件获得应有的重视。
同样,内置于协作软件中的 NLP 系统可以记录和汇总会议内容,甚至能识别和捕获会议中提出的要点并生成待办事项报告。这种基于 NLP 的自动化功能既能帮助员工节省时间,又能提高企业整体效率。
自然语言处理用例
NLP 正在深度变革各行各业。各个行业都在借助 NLP 应用提高员工效率、优化客户体验以及驱动战略决策。以下是 NLP 在不同行业的一些典型用例。
缺陷分析:通过分析技术人员的注释、客户投诉和保修索赔,识别常见缺陷
供应商沟通:通过分析供应商电子邮件和文档,确保及时采购物料
欺诈检测:通过监控和分析交易模式,识别有欺诈迹象的异常情况
贸易加速:基于实时数据分析,自动执行贸易
临床文档处理:智能录入和管理临床记录
患者数据分析:通过识别病历中的模式,辅助诊断决策
合同分析和合规检查:自动审核文档,确保满足监管要求和其他合规要求
法律取证自动化:从海量文档中快速提取相关信息
理赔自动化:从提交的理赔单和医疗报告中提取信息并进行验证
风险评估:自动从医疗记录和生活方式调查问卷中提取数据,提高风险评估准确性
维护日志分析:分析维护人员的记录,预测和预防设备故障
地质数据解读:从地质报告、钻井日志、研究论文等数据源提取数据并进行汇总
房源挂牌优化:根据房源特征生成极具吸引力的房产描述
销售线索鉴定:分析电子邮件和在线咨询,根据购买意向确定销售线索的优先级
库存优化:通过分析销售数据,预测需求
个性化产品推荐:通过分析购买历史记录,打造更加个性化的购物体验
自然语言处理方法
大多数自然语言处理方法可以归为两大类,一类是基于规则的方法,另一类是基于机器学习的方法。
基于规则的 NLP
这种方法是通过确定一组计算机可以遵循的语言规则来可靠地理解和生成人类语言,因此高度依赖计算语言学的语言方面。如果你正在使用语言受控且可预测的数据集(如法律文档、技术手册),那么基于规则的方法会非常有效。
基于机器学习的 NLP
基于机器学习的 NLP 方法使用多种统计方法和算法方法,其核心并非预设规则,而是让计算机通过大规模数据集自主学习语言交互机制。其技术原理在于:当计算机处理足够多的人类语言样本后,将自主识别构成优质语言表达的规律模式。只要数据集足够庞大,基于机器学习的 NLP 方法就能展现出高度灵活性和卓著效能。
自然语言处理发展简史
自然语言处理作为人工智能的一个分支,于 20 世纪 40 年代开始发展。至 80-90 年代,计算解决方案变得更加强大,机器学习开始走向成熟。近年,深度学习、神经网络及各类生成式 AI 的兴起,彻底革新了自然语言处理技术。
自然语言处理演进里程碑
- 1940 年代 | 首批 NLP 成果诞生,包括机器翻译奠基文献 Weaver Memorandum(韦佛备忘录)
- 1950 年代 | “普遍语法”理论提出;图灵测试问世;深度学习萌芽
- 1960 年代 | ELIZA 等聊天机器人问世;支撑 NLP 的语言学理论持续发展
- 1970 年代 | 格语法理论与语义网络兴起;基于规则的系统成熟化,聊天机器人激增
- 1980 年代 | 早期机器学习算法发展;语音识别技术持续演进;计算语言学扩展,循环神经网络 (RNN) 理论诞生
- 1990 年代 | 统计模型和长短期记忆网络 (LSTM) 问世,机器翻译获得市场青睐
- 2000 年代 | 机器学习技术迅猛发展,神经语言模型兴起;海量语音文本数据可及性突破
- 2010 年代 | 数据量与算力爆发式增长,驱动深度学习快速发展
- 2020 年代 | 大型语言模型、预训练语言模型和 Transformer 架构成为主流
自然语言处理技术概览
自然语言处理是一个总括性术语,涵盖一系列使机器能够理解和生成人类语言的技术和方法。所有支撑 NLP 的技术均可归结为这两个核心能力范畴。
NLP 的子类别
自然语言处理涵盖一系列技术和方法,但 NLP 的主要目的是让机器能够理解和生成人类语言。这两项能力是自然语言处理的主要组成部分。
- 自然语言理解 (NLU):自然语言理解专注于对人类语言的理解和解释。为此,NLU 系统必须能够解析句法、分析语义,并理解语境对人类语言含义的影响。其应用形态包括理解口语问句、基于语音指令执行任务。
- 自然语言生成 (NLG):自然语言生成专注于生成类人文本或语音。为此,NLG 系统必须能够将非结构化数据转换为自然流畅的语言。其典型应用包括汇总信息、进行对话等。
机器学习在 NLP 中的作用
如果计算机能够自学新技能,功能会多么强大?这正是机器学习的意义所在。机器学习使计算机能够脱离预设指令,独立习得任务处理能力。。
在自然语言处理领域,机器学习通过创建模型实现自然语言理解和自然语言生成。其使用的方法包括监督学习(基于有标签数据训练模型)和无监督学习(基于无标签数据训练模型)。
深度学习在 NLP 中的作用
深度学习是机器学习的一种特殊形式,采用具有多个层级的神经网络,这也是其名称中“深度”二字的由来。“学习”是指使用算法识别数据集中的复杂模式,然后进行建模。深度学习在 NLP 中很重要,因为它使 NLP 能够更好地执行某些任务,包括语言翻译、数据集中的情感分析以及文本生成。
神经网络如何增强 NLP
神经网络的设计理念是模拟人脑处理数据的机制。神经网络能让 NLP 系统在理解和生成人类语言方面达到极高的准确性。神经网络拥有多元化的架构设计,是虚拟助手、聊天机器人、自动化文本分析等应用的核心支撑。
计算语言学与 NLP
计算语言学是一门融合了计算机科学与语言学的交叉学科,其研究和应用主要集中在自然语言处理领域。该学科为计算机理解人类语言奠定了坚实的理论基础。
- 句法学
研究句子结构以及用来界定句子是否符合语法的规则。
正确的英语句法:“The cat sits on the mat.”(猫坐在垫子上)
错误的英语句法:“Cat the on mat sits.”
- 语义学
研究语言的意义表达,包括词汇和短语如何指代客体、行为动作及抽象概念。
句子:“猫在垫子上。”
语义解释:意思是有一只猫趴在垫子上。
- 语用学
研究语境如何影响语言的解读。
句子:“你能递一下盐吗?”
语用学解释:虽然字面是询问对方是否有能力递一下盐,但根据语境应理解为这是请对方递盐的礼貌请求。
计算语言学很重要,是连接语言学理论与 NLP 实际应用的桥梁。
常见问题
四大分支领域分别是:
1. 自然语言理解 (NLU):使计算机能够理解语言的含义及背后的意图
2. 自然语言生成 (NLG):从结构化数据生成人类可读文本
3. 语音识别:将口头语言转换为文本
4. 语音合成:将文本(或书面文本)转换为口头语言