(二)发展历程
1.大事记
1936年,图灵将人类的计算过程进行抽象,提出了模拟该过程的图灵机,可用来计算所有函数。
1949年,唐纳德·赫布提出赫布理论,描述了在被激发的神经元A对神经元B的激发做出一定贡献的前提下,反射活动的持续和重复会导致神经元稳定性的持久提升。而这为连接学派的机器学习方法提供了生物学基础。
1950年,冯·诺依曼出版了《自复制自动机理论》,其中利用自指技巧(“蒯恩”程序)构建了能够抵抗熵增,实现自我复制、进化和升级的自动机。同年,图灵发表了Computing Machinery and Intelligence,提出了让计算机在试错中学习的理论。
1952年,图灵在BBC的一次广播中提出了图灵测试的雏形。
1954年,图灵在一篇未得到出版的论文Intelligent Machinery中阐述了连接主义的基本原理,并提出了通过适当的干扰和模仿教育使A、B两种无组织机器有组织化的想法,这可以视为早期的随机连接神经网络。
1956年,达特茅斯会议上,“人工智能是制造智能机器的科学和工程,特别是智能计算机程序”这一概念正式被约翰·麦卡锡和马文·明斯基提出。在这之后,符号主义学派和连接主义学派开始走上历史舞台。
1968年,历时三年的DENDRAL专家系统研发成功,标志着人工智能的一个新领域——专家系统的诞生。作为新领域的开创者,此系统被用于预测分子结构。
1981年,日本政府斥巨资开发第五代计算机,引起欧美等国的积极追赶。但不久,其过度乐观的预期和成果产出之缓慢形成的鲜明对比使得大量资本退出人工智能领域,这也成为人工智能进入寒冬的导火索之一。
短暂沉寂之后,1982年,计算机博士、科幻作家弗诺·文奇在美国人工智能协会年会上首次提出了人工智能的“奇点”假说——超人剧变,并于1993年NASA会议上发表论文系统阐述这一理论,他认为当人工智能发展到一定程度后会快速超越人类并最终毁灭人类。这件事标志着人工智能发展的复苏。
1997年.经历了前一年的失败,IBM公司旗下的超级计算机“深蓝”以两胜三平一负的战绩战胜国际象棋冠军卡斯帕罗夫。
2011年,IBM公司的Watson自然语言问答系统在美国的智力问答比赛中战胜两名实力强劲且经验丰富的选手取得冠军。
2015年,谷歌推出开源机器学习训练系统——Tensor Flow,同年,剑桥开设人工智能研究所。
2016年,谷歌的AlphaGo战胜围棋世界冠军李世石,并于次年战胜世界排名第一的棋手柯洁。至此,围棋的桂冠亦不再为人留存。
2.技术发展历程
1957年,罗森·布拉特提出了最早的感知机模型。1965年,伊瓦赫内科提出多层人工神经网络的设想。但1969年,马文·明斯基等人证明单层感知机甚至不能拟合异或问题,而多层感知机的拟合能力也暂时没有数学理论支持。这一结果使该领域陷入短暂的停滞。
但在此期间仍有不少发现。1962年,斯图亚特·德莱福斯发表了仅基于链式法则的反向传播推导方法。1970年,林纳因马提出了一种即使在稀疏网络也很有计算效率的计算方法,即大名鼎鼎的反向传播的前身。很快,1974年,保尔·沃博斯首次提出使用反向传播算法来训练人工神经网络的观点。
1982年,约翰·霍普菲尔德提出单层反馈神经网络——霍普菲尔德网络,这是循环神网络(RNN)的雏形。(https://www.daowen.com)
1986年,昆兰提出ID3决策树算法,以信息增益作为节点判断标准,昆兰也给出了其改进算法C4.5算法,以信息增益率作为判断标准。
1989年,杨·勒存使用反向传播算法,用美国邮政系统提供的近万个手写数字的样本来训练神经网络系统,错误率为5%左右。1993年,他在此基础上开发出首个卷积神经网络——LeNet与配套的反向传播算法。虽然LeNet成功商业化,但仍未能开启AI的浪潮。
1990年,罗伯特·夏柏尔提出Boosting算法,而后弗雷德对其进行了改进。1995年,柯特斯提出机器学习的经典算法——SVM。同年,罗伯特和弗雷德予以改进得到了AdaBoost算法。
1997年,施密杜伯提出长短期记忆网络LSTM,使用门控循环单元和记忆机制极大地缓解了早期RNN受制于梯度消失与爆炸而难以训练的问题。同年,舒斯特提出双向RNN模型。
2000年,辛顿发明快速学习法,这使得斯摩棱斯基于1986年提出的受限波尔兹曼机逐渐为人所知。
2001年,布雷曼提出随机森林,其使用特征随机选择、套袋控制集合方差、随机节点优化等思想,可完成回归、分类和数据降维等工作。
2007年,英伟达发布了一种新型的GPU计算框架——CUDA,其强大的并行能力极大地促进了深度学习的发展,也为随后深度学习的井喷奠定了基础。
2010年,托马斯·米科洛夫基于NNLM改进得到RNN LM语言模型,大大提升了语音识别精度。
2011年,微软和谷歌分别将DNN技术应用于语音识别领域,这既是语音识别领域多年来的首个突破性进展,也是深度学习技术在这个领域的首个突破。
2012年,辛顿等人提出Alex Net,借此一举夺得ImageNet挑战赛冠军,力压位居第二的SVM算法。这一届挑战赛中出现了ReLU激活函数、纯监督训练、Dropout层、GPU加速计算等在以后被广泛使用的技术。Alex Net的出现也正式标志着深度学习风口的到来。
2013年,米科洛夫提出word2vec模型,为语言模型中的词生成语义化向量以进行离散化表示。次年,本吉奥团队和谷歌团队几乎同时提出seq2seq架构,将RNN用于机器翻译,前者又对该架构进行改进,提出attention机制,至此,机器翻译进入全神经机器翻译时代。
2014年,陈天奇提出了XGBoost算法,这是一种基于CART的Boosting算法,该算法由于自身计算特点和强大的可并行性,训练速度很快,且二阶导数的引入进一步加速了收敛。2014年,西蒙尼杨和齐瑟曼提出VGG-16网络。同年,谷歌提出含Inception块的Googlenet,其中采用了NIN的全局平均池化技术,并在训练时额外引入两个辅助的softmax分支。2015年,何恺明、张祥雨等人提出ResNet,其Residual Block叩开了超深层网络的大门。同年,吉尔希克基于CNN提出了R-CNN用于BBox的两阶段目标检测,并于次年提出改进版本Fast R-CNN,其基于VGG-16的端到端网络,通过共享卷积、RoI Pooling和多任务损失等方法在准确率,尤其是速度上取得较大的进步。同在2015年,任晓庆提出Faster R-CNN,实现了实时目标检测。
2017年,黄高等人基于ResNet提出DenseNet,将前者层与层之间的直接连接拓展为该层与之后所有层连接,从而得以进一步缓解梯度消失问题、加强特征传播、鼓励特征复用、减少特征参数。
2017年,脸书使用带门控循环单元的CNN替换RNN,提出了基于卷积神经网络的seq2seq架构,大幅提高了训练速度。很快,谷歌又使用多头自注意力机制替代CNN,提出transformer架构,进一步降低了模型复杂度,提升了效率。
2017年一篇名为Trojaning Attack on Neural Networks指出了神经网络面对木马攻击的脆弱性。文中通过对神经网络进行反求、生成通用木马触发器,再通过逆向工程训练数据对模型再训练来注入恶意行为,得到只会被带有木马触发器的输入激活的恶意行为。由于深度学习不直观,难以理解,这种针对模型的攻击极具隐蔽性且可能造成极其严重的后果。这促使人们对深度学习模型可解释性进行研究,如欧盟提出“解释权”概念。[1]近年来,人们对深度学习模型可解释性日益高涨的需求促使其逐渐发展并成为深度学习中的一个子学科。对于关于系统给出的解释,需要从可解释性以及完整性两方面来评判。可解释性的目标是以一种人类可以理解的方式描述系统的内部,其完成还与用户本身的认知、知识和偏见有关;而完整性的目标则是以精确的方式描述系统的操作。因此,这个子学科的难点在于如何权衡二者之间的比重,特别是在人类普遍对更简单的描述有强烈的偏好情况下,如何避免为了隐藏修饰性解释导致误解的情况产生。[2]
2018年,艾伦人工智能研究所提出基于BiLSTM的上下文相关的表示学习法ELMo。很快,OpenAI以Transfomer为基础架构提出了GTP(Generative Pretrained Transfomer),共有1.17亿个参数。在次年2月提出的GTP-2中,参数量增加至15亿个,并在2020年5月的GTP-3中跃升至1750亿个。而谷歌为了对标GTP,也于2018年开源了BERT模型,其使用了12层双向transformer结构来学习掩码语言模型。
2018年,约瑟夫·雷蒙发布YOLOv3,这也是当前业界使用最为广泛的单阶段目标检测模型。2020年,格伦·乔谢尔仅以代码形式提出YOLOv5。