自然语言处理的概述

自然语言处理就是利用电子计算机为工具对人类特有的书面和口头形式的自然语言的信息进行各种类型处理和加工的技术。这种技术因为运用环境和发展潜力巨大,已经成为一门专门的边缘性交叉学科,涉及到语言学,计算机科学以及数学等。自然处理的目的在于建立各种自然语言处理系统,包括机器翻译系统、自然语言理解系统、自动检索系统、文字自动识别系统、数据库系统等。
自然语言是人脑的高级功能之一,也是人类区别于其他动物的重要标志。人类可以借助于自然语言交流思想在人际交往及社会组成中发挥了巨大的作用,另外,人类还借助于自然语言进行思维活动,认识事物的本质和规律。所谓“脑海中的声音”,意味着人类无法脱离一个表达性质的工具来进行思考,每次人类进行思考的时候,其实是相当于自己和自己进行着对话。 可以说,离开了自然语言,人类社会和科学技术的发展不可能如此,井然有序的进行。
自计算机诞生以来,人类与计算机交互只能通过编程语言编写的代码来实现,如使用basic pasical c lisp等计算机程序设计语言,对于计算机来说,他只能根据二进制的指令来作出不同的行为反应,而计算机程序设计者,则往往在这个过程中起到了翻译的功能,即将在自然语言表述下的功能需求,用程序设计语言表述,再由特定的编程转化为机器可以理解的二进制指令计算机能够做我们想要完成的事情,但是他并不真正理解我们的语言,从这个意义上来说,如果想要让计算机足够智能,让计算机能够直接理解我们的指令,显然是非常重要的,而在这其中,自然语言的处理及是人与计算机沟通的桥梁。

人工智能自然语言处理的应用

现在人工智能的飞速发展主要得益于统计学方法,即以从此诞生的机器学习的思想,而之前的的其学习的思想,机器学习的积极学习的发展,现在人们通过获取并输入海量的数据,让计算机能够在这些数据集中找到自己其中的规律,不同于以往使用逻辑严密的语言告诉计算机应当怎样做?现在我们所做的只是把基础的数据和正确的答案给计算机在中间的过程中,为什么计算机做出这样的判断其实并不重要?那么这样的思想对自然语言处理会有怎样的启发呢?

接下来,我就通过一个实例来讲述一下人工智能自然语言在机器学习上的运用。——围棋AI的机器学习。
AlphaGo在社会上引起巨大的反响。而且围棋和自然语言处理的复杂度都是极高的。AlphaGo项目的研究人员中并没有特别高水平的围棋选手,如果按照以往的人工智能的思路,研究人员必须要把如何更好地获胜采用逻辑较为严密的语言编写为程序,使得AlphaGo在对局的时候能够利用自己超高的运算能力在“获胜技巧”中不断穷举运算,从而做出最优解。这也是以往在象棋等棋牌类游戏中人工智能的思路。然而围棋之所以有挑战性,正是因为围棋的可能性有太多种,根本无法依靠穷举来计算下几步可能的结果,无法进行比较,也就是无从谈起所谓的“最优解”了。而之所以AlphaGo能够在之后的棋局中战胜世界围棋第一人,正是人工智能采取新的机器学习思路的胜利。

简单的自然语言处理模型

在具体涉及到自然语言处理时,学习数据从棋局变成了语料库。下面将以一个简单的自然语言问答系统为例,简要介绍其中的步骤。

  1. 数据加载
    分为两部分:加载语料和预处理。加载语料可以认为是简单的数据存储在系统能够访问在数据库里,之后数据会从数据库中流向设计好的神经网络模型。预处理的目的是为了让数据更规范,一般而言,是把语料组成组合成输入需要的格式,从人类的角度,把数据变得更易于机器理解,从而增加机器学习的效率。
  2. 训练过程
    机器学习模型一般使用神经网络输入是序列,从左侧进入输出序列为包含多个结果数值序列。在这个过程中,研究人员需要设置超参数模型的各项参数,如问题的最大程度神经元个数等在设置神经网络的激活函数,损失函数,损失大自然等思想,使得该神经网络能够在一定程度上进行忽略模拟,至此,一个简单的神经网络已经建成,再往后就是进行迭代训练,使数据不断的流向神经网络模型。
  3. 观察效果
    因为超参数及模型的设置等,可能会有不合理之处,在训练过程中,可以观察损失函数和准确度的变化,根据这些变化,可以帮助优化模型,辅助超参数的设置。

感想

自然语言处理是计算机科学中的重要课题,但因为自然语言处理巨大的复杂性,使得以逻辑为基础的符号模型化,研究方法,男音取得较为基础的进展,然而,随着,人工智能技术的发展,特别是机器学习的应用,对于类似规则非逻辑严谨的问题有了较理想的解决方案,相信随着人工智能研究的不断发展,实现人类与机器的无障碍交流,也许就在不远的将来