对于入门学习神经网络的没有基础的同学来说,直接上公式和各种算法,会比较懵圈。我个人的体会是先了解这个技术的来龙去脉,先从科普版开始,从它最简单地方式开始,一步一步了解它怎么演进的,每一个时代考虑了什么,加入了什么,优化了什么。我原来学过人工智能的课,但是好些年不用,都忘记了,后来买一本华东师范大学出的高中生用的人工智能基础看了一下,迅速把人工智能相关基础拾了起来。

我看了很多神经网络入门的相关文章,但是发现基本写的都是从算法层面写的,或者说是题目大,内容小。这一篇是我看到的比较满意的文章,分享给大家。

追根溯源,神经网络诞生于人类对于人脑和智能的追问。而这个追问经历了旷远蒙昧的精神至上学说,直到 19 世纪 20 年代。

Franz Joseph Gall ( 1758-1828 )

奥地利医生 Franz Joseph Gall ( 1758-1828 ) 推测人类的精神活动是由脑的功能活动而实现的,这才使人们认识到意识和精神活动具有物质基础,从而使人们对精神活动的认识从唯心主义的错误观点转到了唯物主义的正确轨道上来。

Camillo Golgi ( 1843~1926 )

意大利细胞学家 Camillo Golgi ( 1843~1926 )徒手将脑组织切成薄片,用重铬酸钾 - 硝酸银浸染法染色,第一次在显微镜下观察到了神经细胞和神经胶质细胞。这为神经科学的研究提供了最为基本的组织学方法。

Santiago Ramón y Cajal ( 1852~1934 )

西班牙神经组织学家 Santiago Ramón y Cajal ( 1852~1934 )在掌握了 Golgi 染色法后,又进一步改良了 Golgi 染色法,并发明了独创的银染法——还原硝酸银染色法, 此法可显示神经纤维的微细结构 。他发现神经细胞之间没有原生质的联系,因而提出神经细胞是整个神经活动最基本的单位(故称神经元),从而使复杂的神经系统有了进一步研究的切入口。他对于大脑的微观结构研究是开创性的,被许多人认为是现代神经科学之父。他绘图技能出众,他的关于脑细胞的几百个插图至今用于教学。

Santiago Ramón y Cajal 和 Camillo Golgi

为此,Santiago Ramón y Cajal 和 Camillo Golgi 两人共享了 1906 年诺贝尔生理学或医学奖。

神经元

此后, Cajal 经过大量精细的实验,创立了 “ 神经元学说 ” ,该学说的创立为神经科学的进一步发展开创了新纪元。

扣问智能

对智能机器的探索和计算机的历史一样古老。尽管中文里“电脑”一开始就拥有了“脑”的头衔,但事实上与真正的智能相去甚远。艾伦图灵在他的文章《COMPUTING MACHINERY AND INTELLIGENCE》中提出了几个标准来评估一台机器是否可以被认为是智能的,从而被称为“图灵测试”。

神经元及其连接里也许藏着智能的隐喻,沿着这条路线前进的人被称为连接主义。

Warren McCulloch 和 Walter Pitts

1943年,Warren McCulloch 和 Walter Pitts 发表题为《A Logical Calculus of the Ideas Immanent in Nervous Activity》的论文,首次提出神经元的M-P模型。该模型借鉴了已知的神经细胞生物过程原理,是第一个神经元数学模型,是人类历史上第一次对大脑工作原理描述的尝试。

M-P模型

M-P模型的工作原理是神经元的输入信号加权求和,与阈值比较再决定神经元是否输出。这是从原理上证明了人工神经网络可以计算任何算术和逻辑函数。

Donald Olding Hebb

20世纪40年代末,Donald Olding Hebb在《The Organization of Behavior》中对神经元之间连接强度的变化进行了分析,首次提出来一种调整权值的方法,称为Hebb学习规则。

Hebb学习规则

Hebb学习规则主要假定机体的行为可以由神经元的行为来解释。Hebb受启发于巴普罗夫的条件反射实验,认为如果两个神经元在同一时刻被激发,则它们之间的联系应该被强化。这就是Hebb提出的生物神经元的学习机制,在这种学习中,由对神经元的重复刺激,使得神经元之间的突触强度增加。

Hebb学习规则隶属于无监督学习算法的范畴,其主要思想是根据两个神经元的激发状态来调整期连接关系,以此实现对简单神经活动的模拟。继Hebb学习规则之后,神经元的有监督Delta学习规则被提出,用于解决在输入输出已知的情况下神经元权值的学习问题。

Frank Rosenblatt

1958年,就职于Cornell航空实验室的Frank Rosenblatt发明了的一种称为感知器(Perceptron)的人工神经网络。它可以被视为一种最简单形式的前馈神经网络,是一种二元线性分类器(激活函数为sign(x))。感知机是人工神经网络的第一个实际应用,标志着神经网络进入了新的发展阶段。

Adaline和Perceptron对比

这次成功的应用也引起了许多学者对神经网络的研究兴趣。1960年,斯坦福大学教授Bernard Widrow教授和他的研究生Ted Hoff开发了Adaline(Adaptive Linear Neuron 或  Adaptive Linear Element)和最小均方滤波器(LMS)。Adaline网络和感知机的区别就是将感知机的Step函数换为Linear线性函数。同一时期,Steinbuch等还提出了称为学习矩阵的二进制联想网络。

周志华《机器学习》第5章神经网络解释了BP算法实质是LMS算法(Least Mean Square)算法的推广。LMS试图使网络的输出均方差最小化,可用于神经元激活函数可微的感知机学习;将LMS推广到由非线性可微神经元组成的多层前馈神经网络,就得到BP算法,因此BP算法也被称为广义δ规则。

Marvin Minsky 和 Seymour Papert

1969年,Marvin Minsky 和 Seymour Papert 发表《Perceptrons: an introduction to computational geometry》一书,从数学的角度证明了单层神经网络具有有限的功能,甚至在面对简单的“异或”逻辑问题时也显得无能为力。此后,神经网络的研究陷入了很长一段时间的低迷期。

1972年,芬兰的KohonenT.教授,提出了自组织神经网络SOM(Self-Organizing feature map)。

1974 年,Paul Werbos在哈佛大学攻读博士学位期间,就在其博士论文中发明了影响深远的著名BP神经网络学习算法。但没有引起重视。

1976年,美国Grossberg教授提出了著名的自适应共振理论ART(Adaptive Resonance Theory),其学习过程具有自组织和自稳定的特征。

1982年,David Parker重新发现了BP神经网络学习算法

John Hopfield

1982年,John Hopfield提出了连续和离散的Hopfield神经网络模型,并采用全互联型神经网络尝试对非多项式复杂度的旅行商问题进行了求解,促进神经网络的研究再次进入了蓬勃发展的时期。

1983年,Hinton, G. E. 和 Sejnowski, T. J.设计了玻尔兹曼机,首次提出了“隐单元”的概念。在全连接的反馈神经网络中,包含了可见层和一个隐层,这就是玻尔兹曼机。

层数的增加可以为神经网络提供更大的灵活性,但参数的训练算法一直是制约多层神经网络发展的一个重要瓶颈。

一个沉睡十年的伟大算法即将被唤醒。

1986年,David E. Rumelhart, Geoffrey E. Hinton 和 Ronald J. Williams发表文章《Learning representations by back-propagating errors》,重新报道这一方法,BP神经网络学习算法才受到重视。BP算法引入了可微分非线性神经元或者sigmod函数神经元,克服了早期神经元的弱点,为多层神经网络的学习训练与实现提供了一种切实可行的解决途径。

1988年,继BP算法之后,David Broomhead 和 David Lowe 将径向基函数引入到神经网络的设计中,形成了径向基神经网络(RBF)。RBF网络是神经网络真正走向实用化的一个重要标志。

BP算法的性能分析文章:

G. Cybenko. 《Approximation by Superpositions of a Sigmoidal Function》

Funahashi, K-I. 《On the approximate realization of continuous mappings by neural networks》

Kur Hornik, Maxwell Stinchcombe and Halber White. 《Multilayer feedforward networks are universal approximators 》

1989年,一系列文章对BP神经网络的非线性函数逼近性能进行了分析,并证明对于具有单隐层,传递函数为sigmod的连续型前馈神经网络可以以任意精度逼近任意复杂的连续映射。这样,BP神经网络凭借能够保证对复杂函数连续映射关系的刻画能力(只要引入隐层神经元的个数足够多),打开了Marvin Minsky 和 Seymour Papert 早已关闭的研究大门。

统计学习理论是一种专门研究小样本情况下机器学习规律的理论。Vapnik, V.N.等人从六、七十年代开始致力于此方面研究。到九十年代中期,随着其理论的不断发展和成熟,也由于神经网络等学习方法在理论上缺乏实质性进展,统计学习理论开始受到越来越广泛的重视。同时, 在这一理论基础上发展了一种新的通用学习方法——支持向量机( SVM ),它已初步表现出很多优于已有方法的性能。

此后的近十年时间,神经网络由于其浅层结构,容易过拟合以及参数训练速度慢等原因,曾经火热的神经网络又慢慢的淡出了人们的视线。值得一提的是,1997年,Sepp Hochreiter和Jurgen Schmidhuber首先提出长短期记忆(LSTM)模型。

G. E. Hinton 和他的学生 R. R. Salakhutdinov(左一)

直到2006年,计算机处理速度和存储能力大大提高,为深度学习的提出铺平了道路。G. E. Hinton 和他的学生 R. R. Salakhutdinov 在《科学》杂志上发表题为《Reducing the Dimensionality of Data with Neural Networks》的文章,掀起了深度学习在学术界和工业界的研究热潮。文章摘要阐述了两个重要观点:一是多隐层的神经网络可以学习到能刻画数据本质属性的特征,对数据可视化和分类等任务有很大帮助;二是可以借助于无监督的“逐层初始化”策略来有效克服深层神经网络在训练上存在的难度。

这篇文章是一个分水岭,拉开了深度学习大幕,标志着深度学习的诞生。从此,历史这样写就:从感知机提出,到BP算法应用以及2006年以前的历史被称为浅层学习,以后的历史被称为深度学习。

总结起来,典型的浅层学习模型包括:传统隐马尔可夫模型(HMM)、条件随机场(CRFs)、最大熵模型(MaxEnt)、boosting、支持向量机(SVM)、核回归及仅含单隐层的多层感知器(MLP)等。

同年,G. E. Hinton 又提出了深度信念网络(Deep BeliefNetwork, DBN) 。深度信念网络基于受限玻尔兹曼机构建。

限制玻尔兹曼机(RBM)是一种玻尔兹曼机的变体,但限定模型必须为二分图。模型中包含对应输入参数的输入(可见)单元和对应训练结果的隐单元,图中的每条边必须连接一个可见单元和一个隐单元。与此相对,“无限制”玻尔兹曼机(BM)包含隐单元间的边,使之成为递归神经网络。BM 由Geoffrey Hinton 和 Terry Sejnowski 在1985年发明,1986年Paul Smolensky 命名了RBM,但直到Geoffrey Hinton及其合作者在2006年左右发明快速学习算法后,受限玻兹曼机才变得知名。

自动编码器早在1986年就被Rumelhart等人提出(也有资料说第一个自动感应器是福岛神经认知机),2006年之后,G. E. Hinton 等人又对自动编码器进行改造,出现了深度自编码器,稀疏自编码器等。2008年,Pascal Vincent和 Yoshua Bengio 等人在《Extracting and composing robust features with denoising autoencoders》中提出了去噪自编码器,2010年又提出来层叠去噪自编码器。2011年,Richard Socher等人也提出了递归自编码器 (RAE)。

Yann Le Cun

目前,卷积神经网络作为深度学习的一种,已经成为当前图像理解领域研究的热点。早在1989年,Yann Le Cun在贝尔实验室就开始使用卷积神经网络识别手写数字;1998年,Yann Le Cun提出了用于字符识别的卷积神经网络LeNet5,并在小规模手写数字识别中取得了较好的结果。基于这些工作,Yann Le Cun也被称为卷积网络之父。2012年,Alex Krizhevsky等使用采用卷积神经网络的AlexNet在ImageNet竞赛图像分类任务中取得了最好成绩,是卷积神经网络在图像分类中的巨大成功。随后Alex Krizhevsky.,Ilya Sutskever.和 Geoffrey Hinton.发表了文章《ImageNet Classification with Deep Convolutional Neural Networks》 。

GRAVERS A, MOHAMED A, HINTON G. 《Speech recognition with deep recurrent neural networks 》

XU K, BA J, KIROS R, et al. 《Show, attend and tell: neural image caption generation with visual attention 》

PINHEIRO P, COLLOBERT R. 《Recurrent convolutional neural networks for scene labeling》

HE K M, ZHANG X, REN S, et al. 《Deep residual learning for image recognition》

2013年,Graves 证明,结合了长短时记忆(long short terms memory, LSTM) 的递归神经网络(recurrent neural network, RNN)比传统的递归神经网络在语音处理方面更有效。2014年至今, 深度学习在很多领域都取得了突破性进展,发展出了包括注意力(attention),RNN--CNN, 以及深度残差网络等多种模型。

最后,给出一个神经网络发展历史的回顾总结:

神经网络发展历史的回顾总结

在上一篇文章人工智能简史中,分别从三个时期,三大学派,三次大事件以及8位图领奖得主的角度,总结了人工智能的简史。本文是总结连接主义这个学派在过去60年的历史,人物,思想以及支撑这些思想的文章。后面的文章会介绍神经网络的数学本质,兼谈AI威胁论的荒谬,随后也会解读神经网络历史中里程碑式的重要算法:误差反向传播。

参考文献:

《神经网络七十年:回顾与展望》焦李成等

《深度学习的昨天、今天和明天》余凯等

《卷积神经网络研究综述》周飞燕等

《卷积神经网络研究综述》李彦东等

《神经网络新理论与方法》张代远

《机器学习》周志华

《图像理解中的卷积神经网络》常亮等

《深度强化学习综述:兼论计算机围棋的发展》赵东斌等

《深度学习研究综述》孙志军等

作者:补天遗石
链接:https://www.jianshu.com/p/8aacc7f201f2
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

神经网络从产生到现在的发展历史--科普相关推荐

  1. 人工神经网络发展历史及算法应用综述

    作者:柯悦 简 介: 人工神经网络概念自提起以来,它的发展经历了起起落落,而如今人工神经网络也与各个领域相结合,实现它的价值.人工神经网络主要用来处理分类与回归的问题.决定神经网络发展的三个基本要素主 ...

  2. 神经网络的起源和发展,人工神经网络发展历史

    神经网络的历史是什么? 沃伦·麦卡洛克和沃尔特·皮茨(1943)基于数学和一种称为阈值逻辑的算法创造了一种神经网络的计算模型.这种模型使得神经网络的研究分裂为两种不同研究思路. 一种主要关注大脑中的生 ...

  3. 人工神经网络的发展历史,神经网络的起源和发展

    1.神经网络的历史是什么? 沃伦·麦卡洛克和沃尔特·皮茨(1943)基于数学和一种称为阈值逻辑的算法创造了一种神经网络的计算模型.这种模型使得神经网络的研究分裂为两种不同研究思路.一种主要关注大脑中的 ...

  4. 一文看懂NLP神经网络发展历史中最重要的8个里程碑!

    一文看懂NLP神经网络发展历史中最重要的8个里程碑! https://mp.weixin.qq.com/s/gNZiiEfsQjlF9tArNDIt5Q 作者|Sebastian Ruder 译者|小 ...

  5. 【深度学习与图神经网络核心技术实践应用高级研修班-Day1】深度学习的发展历史(完整版)

    深度学习的常用模型及方法-深度学习发展历史 1. 深度学习发展历史 2. 深度学习的发展趋势 3. 人工神经网络 4. 模型与算法 4.1 前馈神经网络 4.2 前馈神经网络特点 4.3 前馈神经网络 ...

  6. 计算机视觉的发展历史

    "看"是人类与生俱来的能力.刚出生的婴儿只需要几天的时间就能学会模仿父母的表情,人们能从复杂结构的图片中找到关注重点.在昏暗的环境下认出熟人.随着人工智能的发展,机器视觉技术也试图 ...

  7. AI之HCI:人机交互Human-Computer Interaction的简介、发展历史、案例应用之详细攻略

    AI之HCI:人机交互Human-Computer Interaction的简介.发展历史.案例应用之详细攻略 目录 人机交互Human-Computer Interaction的简介 1.人机交互的 ...

  8. keras cnn注意力机制_从发展历史视角解析Transformer:从全连接CNN到Transformer

    编译 | bluemin校对 | 陈彩娴Transformer架构在机器学习领域(尤其是NLP里)是一项热门研究,为我们带来了许多重要成果,比如:GPT-2.GPT-3等写稿机器人:第一代GPT及其性 ...

  9. 计算机视觉大作业 抓取手势类型集_CS231n第一周[任务1]计算机视觉发展历史以及一些计算机视觉任务概念...

    1.任务简介 1.2.3课时视频 课程学习链接: 2017CS231n 斯坦福李飞飞计算机视觉识别_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com 2.任务详解: ...

最新文章

  1. Python中的*args和**kwargs是什么?该如何使用?
  2. 简单的python抢红包脚本-Python自动抢红包,超详细教程,再也不会错过微信红包了!...
  3. 【问题】将数据块存储大小设置为128M,HDFS客户端写文件时,当写入一个100M大小的文件,实际占用存储空间为多大?
  4. php import用法,JavaScript中import怎么使用?
  5. Android中的多种文件读写操作方法
  6. 在线判题系统(oj)效果分析图_在线代码编写平台开发分享
  7. netty大白话--helloword(一)
  8. linux引导分区被格式化修复,/boot分区、fstab文件、/bin/mount一次性被误除修复方法...
  9. 7模型集成:细粒度用户评论情感分析冠军思路及源码
  10. shell中变量的引用(两种方式:$变量名,${变量名})。
  11. [leetcode] 140. 单词拆分 II
  12. RobotFramework特性总结
  13. java引用计数法、可达性分析法、强软虚弱、强引用、软引用、弱引用、虚引用、回收方法区、finalize()方法
  14. 猫狗识别基于kaggle数据集
  15. wps表格l制作甘特图_WPS如何用Excel制作甘特图
  16. vs2017旗舰版_2017年的所有旗舰手机都有明显的妥协。 这是他们告诉我们有关设计的信息。...
  17. 微信公众号开发 入手
  18. 软件测试发展前景进阶路线
  19. 送书|逆向系列-你一定要懂的MD5加密
  20. 梦幻西游手游300级装备、30级宝石、抽奖后台、坐骑版本搭建技术讲解

热门文章

  1. (UTF-8)ASP汉字转拼音函数(附Access数据库)
  2. 深入浅出JS—15 ES6中Proxy及Reflect的使用
  3. 【Unity大气散射】GAMES104:3A中如何实现大气散射
  4. 天猫四大独门利器,助力品牌引领消费趋势
  5. 能耗指标与数据中心规模-孙长青
  6. 笔记本电脑拆机并更换固态硬盘的方法
  7. Html5 Egret游戏开发 成语大挑战(九)设置界面和声音管理
  8. kdj值应用口诀_【技术帖】KDJ指标应用口诀
  9. Python进行表格拆分
  10. Web服务器群集——公有CA构建阿里云服务器HTTPS