人工智能:神经网络概述

神经网络概述基础

神经网络(Neural Network,NN)或人工神经网络(Artificial Neural Network, ANN),是指用大量的简单计算单元(即神经元)构成的非线性系统,它在一定程度上模仿了人脑神经系统的信息处理、存储和检索功能,是对人脑神经网络的某种简化、抽象和模拟。
早在1943年,心理学家McCulloch和数学家Pitts就合作提出了神经元的数学模型M-P神经元模型,证明了单个神经元能执行逻辑功能,从此开创了神经科学理论研究的时代。1957年Rosenblatt提出了感知机模型,它由阈值性神经元组成,试图模拟动物和人脑的感知和学习能力。之后Minsky等仔细分析了以感知机为代表的神经网络系统的功能及局限后,于1969年出版了《Perceptron》一书,指出感知机不能解决基本的异或问题。他们的论点极大地影响了神经网络的研究,使人工神经网络的研究陷入了第一次低潮。
1982年Hofield提出了具有联想记忆功能的Hopfield神经网络,引入了能量函数的原理,给出了网络的稳定性判据,这一成果标志着神经网络的研究取得了突破性的进展。1985年Rumelhart等人提出BP网络的误差反向后传学习算法,它利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层地反传下去,就获得了所有其他各层的误差估计。1990年,Yann LeCun发表文章,采用BP神经网络实现对手写数字的识别,这可以被视作神经网络的“第一个”重大应用,直到上世纪九十年代末,超过10%的美国支票都采用该技术进行自动识别。
然而卷积要消耗大量计算资源,BP方法又会带来梯度弥散的问题,从而限制了神经网络的深度和效果。相反,俄罗斯学者Vladmir Vapnik在1963年提出的支持向量机概念则不断深入发展。到2002年,已将手写数字识别的错误率降至0.56%,远高于同期神经网络的效果。神经网络的研究迎来了第二次寒冬。
2005年以后,神经网络再一次卷土重来,神经网络迎来了深度神经网络的时代。2012年,AlexNet横空出世,在ImageNet上击溃了传统的机器学习方法,取得了令人瞩目的成绩,彻底掀起了深度学习的热潮,各种深度学习的机制不断出现,比如可以处理时序数据的循环神经网络、长短时记忆网络等。

神经网络模型

神经网络是由大量的神经元互相连接而构成的网络。根据网络中神经元的互连方式,常见网络结构主要可以分为以下3类:
(1)前馈神经网络;
(2)反馈神经网络;
(3)自组织网络。
前馈网络也称前向网络。这种网络只在训练过程会有反馈信号,而在分类过程中数据只能向前传送,直到到达输出层,层间没有向后的反馈信号,因此称为前馈网络。BP神经网络就属于前馈网络。
反馈神经网络是一种从输出到输入具有反馈连接的神经网络,其结构比前馈网络要复杂得多。典型的反馈型神经网络有:Elman网络和Hopfield网络。
自组织神经网络是一种非监督学习网络。它通过自动寻找样本中的内在规律和本质属性,自组织、自适应地改变网络参数与结构,如聚类分析等。

神经网络工作方式

神经网络运作过程分为学习和工作两种状态。
1)神经网络学习状态
神经网络的学习主要是指使用学习算法来调整神经元间的连接权,使得网络输出更符合实际。学习算法主要分为监督学习学习和非监督学习两类。监督学习算法是将一组训练集送入网络,根据网络的实际输出与期望输出间的差别来调整连接权。非监督学习抽取样本集合中蕴含的统计特性,并以神经元之间的连接权的形式存于网络中。
监督学习算法的主要步骤包括:
(1)从样本集合中取一个样本(Ai,Bi),其中Ai是输入,Bi是期望输出;
(2)计算网络的实际输出O;
(3)求D = Bi - O;
(4)根据D调整权矩阵W;
(5)对每个样本重复上述过程,直到对整个样本集来说,误差不超过规定范围为止。
2)神经网络的工作状态
神经元间的连接权保持不变,神经网络处于工作状态,作为分类器、预测器等使用。

神经网络算法的特点

神经网络算法是一种通用的优化算法,人们可以在几乎所有的领域中发现神经网络的应用。它具有以下特点:
(1)神经网络方法与传统的参数模型方法最大的不同在于它是数据驱动的自适应技术,不需要对问题模型做任何先验假设。在解决问题的内部规律未知或难以描述的情况下,神经网络可以通过对样本数据的学习训练,获取数据之间隐藏的函数关系。因此,神经网络方法特别适用于解决一些利用假设和现存理论难以解释,但却具备足够多的数据和观察变量的问题。
(2)神经网络技术具备泛化能力,泛化能力是指经训练后学习模型对未来训练集中出现的样本做出正确反应的能力。因此可以通过样本内的历史数据来预测样本外的未来数据。神经网络可以通过对输入的样本数据的学习训练,获得隐藏在数据内部的规律,并利用学习到的规律来预测未来的数据。因此,泛化能力使神经网络成为一种理想的预测技术。
(3)神经网络是一个具有普遍适用性的函数逼近器。它可以以任意精度逼近任何连续函数。在处理同一个问题时,神经网络的内部函数形式比传统的统计方法更为灵活和有效。传统的统计预测模型由于存在各种限制,不能对复杂的变量函数关系进行有效的估计;而神经网络强大的函数逼近能力,为复杂系统内部函数识别提供了一种有效的方法。
(4)神经网络是非线性的方法。神经网络中的每个神经元都可以接受大量其他神经元输入,而且每个神经元的输入和输出之间都是非线性关系。神经元之间的这种互相制约和互相影响的关系,可以实现整个网络从输入状态到输出状态空间的非线性映射。因此,神经网络可以处理一些环境信息十分复杂、知识背景不清楚和推理规则不明确的问题。

参考文献

《神经网络与深度学习:基于tensorflow框架和python技术实现》,包子阳,电子工业出版社。

你可能感兴趣的:(神经网络,机器学习,数据挖掘)