https://www.toutiao.com/a6716983602162172423/

在自然语言处理(NLP)历史中,Jurafsky和Martin[1]

确定了6个主要时期,见表13.1。本章将简要地描述这些时期。各小节所述的内容与Jurafsky和Martin提供的这些时期大致呼应。

进一步的讨论请参阅第11章。

表13.1 NLP的6个时期(参见Jurafsky和Martin的文章,2008,第9~12页)

13.2.1 基础期(20世纪40年代和50年代)

自然语言处理的历史可追溯到计算机科学发展之初。计算机科学领域是以图灵(Turing)的计算算法模型为基础的。[2]

在奠定了初步基础后,该领域出现了许多子领域,每个子领域都为计算机进一步的研究提供了沃土。自然语言处理是计算机科学的一个子领域,汲取了图灵思想的概念基础。

图灵的工作导致了其他计算模型的产生,如McCulloch-Pitts神经元。[3]

McCulloch-Pitts神经元是对人类神经元进行建模,具有多个输入,并且只有组合输入超过阈值时才产生输出。

紧随这些计算模型之后的是史蒂芬·科尔·克莱尼(Stephone Cole Kleene)在有限自动机

和正则表达式方面的工作,它们在计算语言学和理论计算机科学中发挥了重要作用。

香农(Shannon)在有限自动机中引入了概率,使得这些模型在语言模糊表示方面变得更加强大。这些具有概率的有限自动机基于数学中的马尔可夫模型,它们在自然语言处理的下一个重大发展中起着至关重要的作用。

诺姆·乔姆斯基(Noam Chomsky)采纳了Shannon的观点,其在形式语法方面的工作产生了主要影响,形成了计算语言学。

Chomsky使用有限自动机描述形式语法,他按照生成语言的语法定义了语言。基于形式语言理论,语言可以被视为一组字符串,并且每个字符串可以被视为由有限自动机

产生的符号序列。

在构建这个领域的过程中,Shannon与Chomsky并肩作战,对自然语言处理的早期工作产生了另一个重大的影响。特别是Shannon的噪声通道模型,对语言处理中概率算法的发展至关重要。在噪声通道模型中

,假设输入由于噪声变得模糊不清,则必须从噪声输入中恢复原始词。在概念上,Shannon对待输入就好像输入已经通过了一个嘈杂的通信通道。基于该模型,Shannon使用概率方法找出输入和可能词之间的最佳匹配。

13.2.2 符号与随机方法(1957—1970)

从这些早期思想中,自然语言处理显然可以从两个不同的角度考虑,即符号

随机

。Chomsky的形式语言理论体现了符号的方法。基于这种观点,语言包含了一系列的符号,这些符号序列必须遵循其生成语法的句法规则。这种观点将语言结构简化为一组明确规定的规则,允许将每个句子和单词分解成结构组分。

人们发展了解析算法,将输入分解成更小的意义单元和结构单元。20世纪50年代和60年代的工作,为解析算法带来了几种不同的策略,如自上而下的解析和自下而上的解析。泽里格·哈里斯(Zelig Harris)发展了转换和话语分析项目(Transformations and Discourse Analysis Project,TDAP),这是解析系统的早期示例。后来的解析算法工作使用动态规划的概念将中间结果存储在表中,构建最佳可能的解析。[7]

因此,符号方法强调了语言结构以及对输入的解析,使输入的语句转换成结构单元。另一个主要方法是随机方法,这种方法更关注使用概率来表示语言中的模糊性。来自数学领域的贝叶斯方法用于表示条件概率。这种方法的早期应用包括光学字符识别以及布菜索(Bledsoe)和布朗尼(Browning)建立的早期文本识别系统。[8]

给定一个字典,通过将字母序列中所包含的每个字母的似然值进行相乘,我们可以计算得到字母序列的似然值。

13.2.3 4种范式(1970—1983)

这一时期由4种范式主导:

(1)随机方法

,特别是在语音识别系统中。在语音识别和解码方面,随机方法被应用到了噪声通道模型的早期工作,马尔可夫模型被修改成为隐马尔可夫模型(HMM),进一步表示模糊性和不确定性。在语音识别的发展中,AT&T的贝尔实验室、IBM的托马斯J. 华盛顿(Thomas J. Watson)研究中心和普林斯顿大学的国防分析研究所都发挥了关键作用。这一时期,随机方法开始占据主导地位。

(2)符号方法

也做出了重要贡献,自然语言处理

是继经典符号方法后的另一个发展方向。这个研究领域可以追溯到最早的人工智能(AI)工作,包括1956年由John McCarthy、Marvin Minsky、Claude Shannon和Nathaniel Rochester组织的达特茅斯大会,这个会议创造了“人工智能”这个名词(见1.5.3节)。

在所建立的系统中,AI研究人员开始强调所使用的基本推理和逻辑,例如纽厄尔和西蒙的逻辑理论家(Logic Theorist)系统和一般求解器系统(General Problem Solver)。为了使这些系统“合理化”它们的方式,给出解决方案,系统必须通过语言来“理解”问题。因此,在这些AI系统中,自然语言处理成为一个应用,这样就可以允许这些系统通过识别输入问题中的文本模式回答问题。

(3)基于逻辑的系统

使用形式逻辑这种方式来表示语言处理中所涉及的计算。主要的贡献包括Colmerauer及其同事在变形语法方面的工作[9]

,佩雷拉(Pereira)和沃伦(Warren)在确定子句语法方面的工作[10]

,凯(Kay)在功能语法方面的工作[11]

,以及布鲁斯南(Bresnan)和卡普兰(Kaplan)在词汇功能语法(LFG)方面的工作。[12]

20世纪70年代,随着威诺格拉德(Winograd)的SHRDLU系统的诞生,自然语言处理迎来了它最具有生产力的时期。[13]

SHRDLU系统是一个仿真系统,在该系统中,机器人将积木块移动到不同的位置。机器人响应来自用户的命令,将适合的积木块移动到彼此的顶部。例如,如果用户要求机器人将蓝色块移动到较大的红色块顶上,那么机器人将成功地理解并遵循该命令。这个系统将自然语言处理推至一个新的复杂程度,指向更高级的解析使用方式。解析不是简单地关注语法,而是在意义和话语的层面上使用,这样才能允许系统更成功地解释命令。

同样,耶鲁大学的Roger Schank及其同事在系统中建立了更多有关意义的概念知识。Schank使用诸如脚本和框架这样的模型来组织系统可用的信息[14,15]

。例如,如果系统应该回答有关餐厅订单的问题,那么应该将与餐馆相关联的一般信息提供给系统。脚本可以捕获与已知场景相关联的典型细节信息,系统将使用这些关联回答关于这些场景的问题(见13.9.3节)。[16]

其他系统,如LUNAR(用于回答关于月亮岩石的问题),将自然语言理解与基于逻辑的方法相结合,使用谓词逻辑作为语义表达式。[17,18]

因此,这些系统结合了更多的语义知识,扩展了符号方法的能力,使其从语法规则扩展到语义理解。

(4)在格罗兹(Grosz)的工作中,最有特色的是话语建模范式

,她和同事引入并集中研究话语和话语焦点的子结构上[19]

,而西德纳(Sidner)[20]

引入了首语重复法。霍布斯等其他研究者也在这一领域做出了贡献。[21]

13.2.4 经验主义和有限状态模型(1983—1993)

20世纪80年代和90年代初,随着早期想法的再次流行,有限状态模型等符号方法得以继续发展。在自然语言处理的早期,初步使用这些模型后,人们就对它们失去了兴趣。Kaplan和Kay在有限状态语音学和词法学方面的研究[22]

以及丘奇(Church)在有限状态语法模型方面的研究[23]

,带来了它们的复兴。

在这一时期,人们将第二个趋势称为“经验主义的回归”。这种方法受到IBM的Thomas J.Watson研究中心工作的高度影响,这个研究中心在语音和语言处理中采用概率模型。与数据驱动方法相结合的概率模型,将研究的重点转移到了对词性标注、解析、附加模糊度和语义学的研究。经验方法也带来了模型评估的新焦点,为评估开发了量化指标。其重点是与先前所发表的研究进行性能方面的比较。

13.2.5 大融合(1994—1999)

这一时期的变化表明,概率和数据驱动的方法在语音研究的各个方面(包括解析、词性标注、参考解析和话语处理的算法)成了NLP研究的标准。它融合了概率,并采用从语音识别和信息检索中借鉴来的评估方法。这一切都似乎与计算机速度和内存的快速增长相契合,计算机速度和内存的增长让人们可以在商业中利用各种语音和语言处理子领域的发展,特别是包括带有拼写和语法校正的语音识别子区域。同样重要的是,Web的兴起强调了基于语言的检索和基于语言的信息提取的可能性和需求。

13.2.6 机器学习的兴起(2000—2008)

进入20世纪标志着一个重要的发展:语言数据联盟(LDC)之类的组织提供了大量可用的书面和口头材料。如Penn Treebank[24]

这样的集合注释了具有句法和语义信息的书面材料。在开发新的语言处理系统时,这种资源的价值立刻得以显现。通过比较系统化的解析和注释,新系统可以得到训练。监督机器学习成为解决诸如解析和语义分析等传统问题的主要部分。

随着计算机的速度和内存的不断增加,可用的高性能计算系统加速了这一发展。随着大量用户可用更多的计算能力,语音和语言处理技术可以应用于商业领域。特别是在各种环境中,具有拼写/语法校正工具的语音识别变得更加常用。由于信息检索和信息提取成了Web应用的关键部分,因此Web是这些应用的另一个主要推动力。

近年来,无人监督的统计方法开始重新得到关注。这些方法有效地应用到了对单独、未注释的数据进行机器翻译[25,26]。开发可靠、已注释的语料库的成本成了监督学习方法使用的限制因素。欲了解各个时期的更多细节,请参考Jurafsky和Martin的著作。

本文摘自《人工智能》(第2版)

人工智能(第2版)

作者:[美]史蒂芬·卢奇(Stephen Lucci),丹尼·科佩克(Danny Kopec)

译者:林赐

  • 人工智能百科全书
  • 易于上手的人工智能自学指南
  • 涵盖机器学习 深度学习 自然语言处理 神经网络 计算机博弈等各种知识 图文详细 讲解细致 配备丰富的教学资源和学习素材
  • 美国经典教材,在美亚上,被评价为自Russell & Norvig的《人工智能:一种现代方法》之后更好的教材,更加适合本科生使用。

本书是作者结合多年教学经验、精心撰写的一本人工智能教科书,堪称“人工智能的百科全书”。全书涵盖了人工智能简史、搜索方法、知情搜索、博弈中的搜索、人工智能中的逻辑、知识表示、产生式系统、专家系统、机器学习和神经网络、遗传算法、自然语言处理、自动规划、机器人技术、高级计算机博弈、人工智能的历史和未来等主题。

本书提供了丰富的教学配套资源,适合作为高等院校人工智能相关专业的教材,也适合对人工智能相关领域感兴趣的读者阅读和参考。

自然语言处理(NLP)历史中的6个主要时期你知道吗?相关推荐

  1. 【组队学习】【29期】9. 基于transformers的自然语言处理(NLP)入门

    9. 基于transformers的自然语言处理(NLP)入门 航路开辟者:多多.erenup.张帆.张贤.李泺秋.蔡杰.hlzhang 领航员:张红旭.袁一涵 航海士:多多.张红旭.袁一涵.童鸣 基 ...

  2. 【组队学习】【28期】基于transformers的自然语言处理(NLP)入门

    基于transformers的自然语言处理(NLP)入门 论坛版块: http://datawhale.club/c/team-learning/39-category/39 开源内容: https: ...

  3. 自然语言处理(NLP)之用深度学习实现命名实体识别(NER)

    几乎所有的NLP都依赖一个强大的语料库,本项目实现NER的语料库如下(文件名为train.txt,一共42000行,这里只展示前15行,可以在文章最后的Github地址下载该语料库): played ...

  4. 自然语言处理(NLP)之使用TF-IDF模型计算文本相似度

    自然语言处理(NLP)之使用TF-IDF模型计算文本相似度 所用数据集:ChnSentiCorp_htl_all.csv 语料库即存放稀疏向量的列表. 要注意的是,搜索文本text与被检索的文档共用一 ...

  5. 自然语言处理(NLP)之gensim中的TF-IDF的计算方法

    自然语言处理(NLP)之gensim中的TF-IDF的计算方法 step 1.  去掉所有文本中都会出现的词 texts = [['这是', '一个', '文本'], ['这是', '第二个', '文 ...

  6. 自然语言处理NLP之语义相似度、语言模型、doc2vec

    自然语言处理NLP之语义相似度.语言模型.doc2vec 目录 自然语言处理NLP之语义相似度.语言模型.doc2vec 语义相似度

  7. 自然语言处理NLP之BERT、BERT是什么、智能问答、阅读理解、分词、词性标注、数据增强、文本分类、BERT的知识表示本质

    自然语言处理NLP之BERT.BERT是什么.智能问答.阅读理解.分词.词性标注.数据增强.文本分类.BERT的知识表示本质 目录

  8. 自然语言处理NLP之文本蕴涵、智能问答、语音识别、对话系统、文本分类、情感计算

    自然语言处理NLP之文本蕴涵.智能问答.语音识别.对话系统.文本分类.情感计算 目录

  9. 自然语言处理NLP之文本摘要、机器翻译、OCR、信息检索、信息抽取、校对纠错

    自然语言处理NLP之文本摘要.机器翻译.OCR.信息检索.信息抽取.校对纠错 目录

最新文章

  1. 机器学习笔试题精选(二)
  2. arm linux ping 通百度,linux ---之与ARM开发板相互ping 通
  3. thymeleaf 中文文档
  4. [Redis6]常用数据类型_Zset有序集合
  5. java udp 接受阻塞_Java UDP发送与接收
  6. 切割 字符串_web前端如何使用字符串
  7. 猴子选大王--约瑟夫问题浅析
  8. Pytorch:损失函数
  9. 机器学习入门笔记(二):线性模型
  10. 通过实例学习编写需求文档 【转】
  11. C++读取和写入文件(fstream等)
  12. 以下不是python内置函数的是_Python内置函数
  13. HBase 源码解析
  14. postman下载安装汉化及使用
  15. Android Hook技术详解
  16. mac拷贝文件到u盘,mac拷贝文件到u盘很慢
  17. springboot 简单集成mybatis 及所遇到问题解决方法
  18. 龙讯LT8911EXB高性能MIPI转EDP分辨率1080P概述
  19. 金融财务英译汉常用词怎样翻译
  20. 值的比较(大于 等于 小于 不等于)

热门文章

  1. fetch-pack: unexpected disconnect while reading sideband packet fatal: early EOF fatal: fetch-pack:
  2. virtualenv 安装与使用linux下(记录一下)
  3. CountDownLatch 的 .await() 的线程阻塞 和countDown() 计时唤醒
  4. 什么是 JVM方法区
  5. android音视频工程师,音视频学习 (十三) Android 中通过 FFmpeg 命令对音视频编辑处理(已开源)...
  6. 智源论坛报名 | 智能信息检索与挖掘报告会(9月17日)
  7. 区块链论文9 FlyClient-加密货币的超轻客户端
  8. 通知 | 2021年度“RONG”奖学金入围答辩名单公布
  9. 人工智能十大流行算法
  10. 根据标签分布来选择损失函数