[[399636]]
【51CTO.com快译】自然语言处理(NLP)的定义
自然语言处理(NLP)是人工智能的一个分支,它使计算机能够像人类一样理解、处理和生成语言。搜索引擎、机器翻译以及语音助理均由该技术提供支持。
虽然这一术语最初指的是人工智能系统的阅读能力,但现在已经成为所有计算语言学的一种通俗说法。其子类别包括自然语言生成(NLG)——计算机自行创建通信的能力和自然语言理解(NLU)(理解俚语、发音错误、拼写错误和语言其他变体的能力)。
自然语言处理(NLP)的工作原理
自然语言处理(NLP)通过机器学习进行工作。机器学习系统像其他任何形式的数据一样存储单词及其组合方式。短语、句子、有时甚至整本书的内容都被输入机器学习引擎,并在其中使用语法规则或人们的现实语言习惯,或两者兼而有之进行处理。然后,计算机使用这些数据来查找模式并推断出接下来的结果。以翻译软件为例:在法语中,“我要去公园”是“Je vais au parc”,因此机器学习预测“我要去商店”也将以“Je vais au”开头。
自然语言处理(NLP)的应用
机器翻译是一种功能强大的自然语言处理(NLP)应用程序,但是搜索是最常用的一种用法。每次人们在谷歌或Bing搜索引擎中查找内容时,都人为将数据输入到系统中。当单击搜索结果时,搜索引擎会将其解释为确认其找到的结果是正确的,并在以后使用这一信息更好地进行搜索。
聊天机器人的工作方式与其相同:它们与Slack、Microsoft Messenger和其他聊天程序集成在一起,可以读取人们使用的语言,然后在键入触发短语时将其打开。当Siri和Alexa等语音助理听到诸如“嘿,Alexa”之类的短语时,它们就会有回应,而这就是为什么批评人士指责这些人工智能程序一直在进行监听的原因:如果不这样做,它们永远不知道人们什么时候需要它们。除非人们自己打开应用程序,否则自然语言处理(NLP)程序必须在后台运行,并等待这一短语的出现。
自然语言处理(NLP)的示例
数据有多种形式,但是最大的未使用数据池由文本组成。专利、产品规格、学术出版物、市场研究、新闻以及社交媒体的文章,所有这些都以文本作为主要组成部分,并且文本的数量正在不断增长。将技术应用到语音,数据池将会变得更大。以下是组织如何使用自然语言处理(NLP)技术的三个示例:
(1)全球管理咨询服务商埃森哲公司使用自然语言处理(NLP)技术分析合同:“埃森哲法律智能合同探索(ALICE)”工具已经帮助该公司的2,800名专业人士处理上百万份合同,通过执行文本搜索,来搜索合同条款。ALICE工具使用“嵌入单词”逐段浏览合同文件,寻找关键字来确定每段是否与特定合同条款类型相关。
(2)美国电信商Verizon公司采用自然语言处理(NLP)技术处理客户请求:Verizon公司业务服务保证团队使用自然语言处理(NLP)技术和深度学习来自动处理客户请求注释。该团队每月收到10万个以上的入站请求。其人工智能支持服务可以读取维修票证,并自动响应最常见的请求,例如报告当前票证状态或维修进度更新。而更为复杂的问题将交给工程师解决。
(3)美国公共电力和天然气公司((PSE&G)通过虚拟助理帮助客户:新泽西州州公用事业公司使用虚拟助理技术和其他数字服务,以使其客户能够通过语音命令来管理其电费或天然气账户,这是使用亚马逊公司提供的Alexa 技能工具包构建的。
自然语言处理(NLP)的软件
无论组织是要构建聊天机器人、语音助理、预测文本应用程序,还是以自然语言处理(NLP)为核心的其他应用程序,都将需要工具来帮助做到这一点。以下是一些受到开发人员欢迎的软件工,其中包括:
- 自然语言工具包(NLTK)。自然语言工具包(NLTK)是一个开放源代码框架,用于构建Python程序以使用人类语言数据。它是在宾夕法尼亚大学计算机和信息科学系开发的,提供了与50多种语料库和词汇资源库、一个文本处理库、一个用于自然语言处理库的包装器以及论坛的接口。自然语言工具包(NLTK)是在Apache2.0许可证下提供的。
- SpaCy。SpaCy是一个用于高级自然语言处理的开放源代码库,是专门为生产目的而非研究目的而设计的。SpaCy的设计充分考虑了高级数据科学,并允许进行深度数据挖掘。SpaCy是由麻省理工学院开发并许可的。
- Gensim。Gensim是一个开源Python库。独立于平台的库支持可扩展的统计语义,对纯文本文档进行语义结构分析以及检索语义相似文档的功能。它旨在在无需人工监督的情况下处理大量文本。
- Amazon Comprehend。这个Amazon服务不需要机器学习的经验。它旨在帮助组织从电子邮件、客户评论、社交媒体、其他文本中找到见解。它使用情感分析、词性提取和标记化来分析单词背后的意图。
- IBM Watson音频分析器。这个基于云计算的解决方案旨在用于社交监听、聊天机器人集成和客户服务监控。它可以分析客户帖子中的情绪和语气,并监控客户服务电话和聊天对话。
- 谷歌云翻译。这个API使用自然语言处理(NLP)来检查源文本以确定语言,然后使用神经机器翻译将文本动态翻译为另一种语言。该API允许用户将功能集成到他们自己的程序中。
自然语言处理(NLP)的课程
有许多资源可用于学习创建和维护自然语言处理(NLP)应用程序,其中许多是免费的。其中包括:
- DataCamp中的Python自然语言处理简介。这门免费课程提供15个视频和51个练习文件,涵盖了使用Python进行自然语言处理(NLP)的基础知识,其中包括如何识别和分隔单词,如何在文本中提取主题以及如何构建自己的虚假新闻分类器。
- Udemy的自然语言处理(NLP)简介。这一入门课程提供使用Python和Natural Language Toolkit处理和分析文本的经验。它包括三个小时的点播视频、三篇文章以及16个可下载资源。该课程费用为19.99美元,并提供结业证书。
- 使用Udemy的Python进行自然语言处理(NLP)。这一课程面向具有任何语言基础编程经验,对面向对象编程概念的理解,具有基础到中级数学知识以及矩阵运算知识的个人。它完全基于项目,并且涉及构建文本分类器以实时预测推文的情绪,以及构建文章摘要器,该文章摘要器可以获取文章并提取摘要。该课程包括10.5小时的点播视频和8篇文章。该课程费用为19.99美元,并提供结业证书。
- edX的自然语言处理(NLP)。这门由微软公司通过edX提供的为期六周的课程,概述了自然语言处理和经典机器学习方法的使用。它涵盖了统计机器翻译和深度语义相似性模型(DSSM)及其应用。它还涵盖了在自然语言处理(NLP)和视觉语言多模式智能中应用的深度强化学习技术。这是一门高级课程,完成该课程的人员只需支付99美元就可以获得认证证书。
- Coursera提供的自然语言处理。该课程是Coursera公司的高级机器学习专业化的一部分,涵盖自然语言处理任务,其中包括情感分析、摘要、对话状态跟踪等。Coursera公司表示,这是一门高级课程,估计需要五个星期的学习时间,每周需要学习四到五个小时才能完成。
- Coursera在TensorFlow中进行自然语言处理。该课程是Coursera公司的实践专业化TensorFlow的一部分,它涵盖了使用TensorFlow构建自然语言处理系统,该系统可以处理文本和输入语句到神经网络中。Coursera公司表示,这是一门中级课程,估计需要四个星期的学习时间,每周需要四到五个小时才能完成。
原文标题:What is NLP? Natural language processing explained,作者:Terena Bell,Thor Olavsrud
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】