前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【进阶】ML vs AI vs NLP:人工智能核心探秘

【进阶】ML vs AI vs NLP:人工智能核心探秘

作者头像
新智元
发布2018-03-14 11:44:11
9550
发布2018-03-14 11:44:11
举报
文章被收录于专栏:新智元新智元

我在找一个针对成熟的外行人来说内容丰富的答案(不要求长度)。

缩略表

AI(人工智能) = 构建能做智能事情的系统

NLP(自然语言处理)= 构建能理解语言的系统 ⊊AI

ML= 构建能从经验中学习的系统 ⊊AI

NLP ⋂ ML= 构建能够学习如何理解语言的系统

NLP能够解决AI中一系列的问题

机器学习(ML)也能够解决AI中一系列的问题,这些问题的解决方案也有可能帮助解决其他AI问题。现在研究的AI中大部分涉及到ML,因为智能行为需要相当多的知识,并且学习也是得到相应知识的最简单的方法。

需要更多丰富但更倾向于NLP问题的讨论,见以下部分

计算语言学(Computational Linguistics)与自然语言处理(NLP)有哪些不同?

我用这些术语来表示不同的研究目的。这些方法学经常相互关联,并且其学会(community)也有重叠。这两部分人参加相同的论坛(在两个领域中最有分量的工作会出现在ACL(Association for Computational Linguistics,国际计算语言学协会)、EMNLP(The Conference on Empirical Methods in Natural Language Processing,自然语言处理实证方法会议)、NAACL(North American Chapter of the Association for Computational Linguistics,北美计算语言学协会)等),他们也很容易坐在一起谈论问题和解决方案。

这里是我个人总结的一些区别

计算语言学(Computational linguistics)类似于计算生物学(computational biology)或者其他相似的计算学。它开发计算方法来解决语言学的科学问题。

语言学的核心问题涉及了语言表征的本质和语言知识,还有语言知识在语言的生成和理解中如何被获取并部署。这些问题的答案概括了人类语言能力,也有可能帮助解释我们实际观察到的语言数据的分布和行为。

在计算语言学领域,我们对这些核心问题提出一些被认可的答案。语言学家也真的会问人们在计算什么和如何计算这样的问题。所以我们,从数学角度,定义语言表征的类别和被认可的语法(这现在通常是统计模型),这些语言表征和语法看起来似乎足以解释人类语言中的一系列现象。我们研究它们的数学性质并设计高效的算法来学习、生成和理解。由于算法实际上可以运行,我们就可以测试我们的模型并检查它们是否做出了适当的预测。

除了这些核心问题,语言学也涵盖很多问题——想想社会语言学(sociolinguistics),历史语言学(historical linguistics)、心理语言学(psycholinguistics)和神经语言学(neurolinguistics)。这些科学问题也在计算语言学家的研究范围内,他们可能使用模型和算法来理解数据。在这种情况中,我们不会尝试建模来模拟人说母语的能力,而是自动化语言学家特殊类型的推理,这可以促使我们将其应用在更大的数据集中(甚至新类型的数据中)并得出更多准确的结论。相似地,计算语言学家也可能设计软件工具来帮助记录濒危语言。

自然语言处理(Natural language processing)是解决工程问题的艺术,这需要分析(或者生成)自然语言文本。在这个领域中,成功的指标不是你是否设计出一个更好的科学理论或者证明语言X和Y的历史是相互关联的,而是你在某个工程问题中是否得到好的解决方案。

例如,你不能用是否找到翻译“本质是什么”或者解释人类是如何翻译的,来评判谷歌翻译(Google Translate)的表现。你是通过在人们实际生活中需要翻译某些东西时,看它是否得到合理、精确和顺畅的翻译来评判的。机器翻译学会(The machine translation community)有很多种方式来测量它,他们十分注重提高这些分数。

NLP主要用于帮助人们在现有文本形式的海量信息中导航,还帮助消化这些信息。它也被用来找到更好的用户界面,来让人们更好的与计算机、其他人交流。

这里所说的“NLP是工程”,并不指它总是注重开发商业应用。NLP也可能用在其他学术领域目的中,如政治学(博客文章)、经济学(金融新闻和报告)、医药学(医生笔记)、数字人文(文学作品、文献史料)等等。但是在相应的科学中,它会被相应的科学家当做一种工具来解决科学问题,而不是解决语言学家的科学问题。

这两个领域都利用了计算机科学、语言学和机器学习中一些受到认可的训练方法。如果你想要在任一领域有持续不断地进步,你应该培养足够的精力在这三个领域中做些独创性的研究。它可能帮助你进入有学科交叉文化氛围的学校,在这样的学校中有很多计算机科学的教师和学生对语言学有很强的兴趣。(反之也是一样)

这即是说,在只有NLP背景的人们中很少有超级厉害的语言学家。当看到当前系统产生的误差时,他们所学的语言学,只足够用来理解这些误差并修补最突出的误差类型。毕竟,他们的目标不是顾及全部理论,而是找到最简单和最有效的方式来完成任务。

反过来,如果你在语言系学习计算语言学的话,你通常会接触到很多语言学和很少的计算机科学或者机器学习。在语言系中的学生通常技术娴熟,因为语言学是一个很技术的领域。但是他们往往不太了解数学和计算机科学。所以计算课程涉及到形式语言理论、编程和应用NLP——这些部分的内容往往不多。(这些课程在希望找工作的语言学学生中很流行)

最终,我希望这两个研究项目距离会更加接近。如果我们能够开发一个强大的人类语言模型,那么它应该会为我们解决很多NLP问题。所以今天的计算语言学正为明天的NLP开发方法。这从历史上看也是对的。

Mohamed Sordo,迈阿密大学的博士后

这里是关于你问的3个话题的一个简单定义和相互关系。

广义上来讲,机器学习是让电脑学习的过程,通过使用观察(示例数据)或者过去的经验。由此得到的模型是有预测性的,也就是它们能够对未来做出预测;或者是描述性的,得到更多关于手上数据的信息。机器学习主要用在人类能够解决的复杂问题中,但是这种情况下人们往往不能精确地解释他们是如何解决这些问题的,或者问题的解决过程需要大量的时间和成本。

NLP是处理一类——让机器“理解”人们使用的自然语言的结构和意思;将自然语言翻译为机器语言形式;加工它(总结、句法分析等等);并返回给用户自然语言——的问题。为了理解自然语言的意思,机器不能不学习如何做到它。因此ML就用在了NLP中。

根据维基,AI是旨在研究和设计智能代理的研究领域。并且一个智能代理,被很多知名研究人员创造出来,是“一个感知周围环境并做出动作以使自身最有可能成功的系统”。人工智能是一个很广泛的领域,这包括了很多其他的子领域(再次,用了维基百科定义):推理、知识、计划、学习、自然语言处理(交流)、感知、行动能力和控制物体的能力。正如你所见,ML和NLP是那些子领域中两个领域。

我觉得这不是一个内容丰富的答案,但它能让你清楚些。

Tarek Amr,有东安格利亚大学机器学习研究生学位

让我们先把NLP撇在一遍。

假如你想让一个电脑算法玩井字棋游戏。

在AI的情况下,你将会给它规则,并牵着它的手来教它怎么玩。例如,你告诉它用深度优先算法(Depth-First algorithm)或者最小最大算法(min-max)来搞清楚如果把棋下到某处你会输还是赢。最终,如果你不擅长井字棋游戏的话,你不能设计一个擅长井字棋的软件。

在ML的方法中,你可能不知道如何玩井字棋游戏,但你仍然能够建立算法来玩。不像AI方法,你给ML方法已有的游戏示例,并让它从这些例子中学习。你给电脑输入唯一规则就是如何学习,但是让它自己根据提供给例子来决定学习什么。

说了这些之后,一些人喜欢将AI定义为涵盖ML和上述AI定义的扩展集。

现在,对于NLP而言,它在你想让电脑理解文本的时候会用到。它可以通过ML完成,或者也可以通过让它遵循一系列规则。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档