读人工智能全传09神经网络
读人工智能全传09神经网络.png
1. 机器学习
1.1. 人们对人工智能的态度发生突如其来的巨大变化,是由一项核心人工智能技术——机器学习的快速发展所推动的
1.1.1. 机器学习是人工智能的一个分支领域,但在过去60年的绝大部分时间里,它一直在一条独立的道路上发展
1.2. 机器学习作为一个学科领域,拥有同人工智能一样长的历史,也同样庞大
1.2.1. 在过去的60年里,人们发展过各式各样的机器学习技术
1.3. 机器学习的目标是让程序能够从给定的输入中计算出期望的输出,而不需要给出一个明确的方法
1.3.1. 给定的输入是手写文本的图片;期望的输出是手写文本表示的字符串
1.4. 监督式学习
1.4.1. 对于文本识别的机器学习程序,我们通常需要给它提供许多手写字符的范例来进行训练,每个范例都标有对应的实际字符
1.5. 机器学习需要数据,大量的数据
1.5.1. 一个程序必须只能使用可能存在的输入输出集合的一小部分进行训练,但是如果训练数据量太小,那么程序没有足够的信息来学会人们所期望的输入到输出的映射
1.6. 训练数据的另一个基本问题是特征提取
1.7. 维度诅咒
1.7.1. 训练数据包含的特征越多,你需要给程序提供的训练数据量就越大,程序学习的速度也就越慢
1.7.2. 最简单的应对方式就是只在训练数据中包含少量的特征,但这也会引起一些问题
1.7.2.1. 忽略了程序正确学习所必需的特征
1.7.2.1.1. 即确实标明客户信贷记录不良的特征
1.7.2.2. 如果你没有合理地选择特征,可能会在程序中引入偏差
1.7.2.2.1. 地域歧视
1.8. 强化学习
1.8.1. 我们不给程序任何明确的训练数据:它通过决策来进行实验,并且接收这些决策的反馈,以判断它们是好是坏
1.8.2. 被广泛应用于训练游戏程序
1.8.2.1. 程序玩某个游戏,如果它赢了,就会得到正反馈,如果它输了,就会得到负反馈
1.8.2.2. 不管正负,它得到的反馈都被称为奖励
1.8.3. 关键困难在于,许多情况下,奖励反馈可能需要很长的时间,这使得程序很难知道哪些行为是好的,哪些行为是坏的
1.9. 信用分配问题
1.9.1. 赞誉分布、功劳分配的,通俗来讲可以比喻成你吃了10个包子后吃饱了,但是你并不知道具体是哪个包子为你吃饱的贡献比较大
2. 神经网络
2.1. 神经网络是在机器学习领域占据主导地位的
2.2. 神经网络是人工智能中最古老的技术之一:1956年,约翰·麦卡锡在人工智能暑期学校里提出的最初建议就包括神经网络
2.3. 它曾经度过了两次寒冬,就在世纪之交的时候,许多人工智能研究人员还把神经网络视为一个毫无希望的研究领域
2.4. 神经网络最终迎来了胜利,而推动其复兴发展的新思想是一种被称为深度学习的技术
2.4.1. 深度学习正是深度思维公司的核心技术
2.4.2. 虽然深度学习是一门强大又重要的技术,但它并不是人工智能的终点
2.5. 灵感来自大脑内组成神经系统的神经细胞——神经元的微观结构
2.5.1. 神经元是一种能够以简单的方式相互交流的细胞
2.5.2. 自神经元发起的纤维突起,被称为轴突
2.5.3. 与其他神经元进行连接,连接的“交叉点”被称为突触
3. 感知器(神经网络1.0)
3.1. 神经网络的研究起源于20世纪40年代美国研究人员沃伦·麦卡洛克(Warren McCulloch)和沃尔特·皮茨(Walter Pitts),他们意识到神经元可以用电路建模,更具体地说,是用简单的逻辑电路,他们用这个想法建立了一个简单但非常通用的数学模型
3.2. 50年代,弗兰克·罗森布拉特(Frank Rosenblatt)对这个模型进行了改进,创造出了感知器模型
3.2.1. 感知器模型意义重大,因为它是第一个实际出现的神经网络模型,时至今日,它仍然有存在的意义
3.3. 触发阈值
3.3.1. 感知器的运作模式是神经元受到的刺激超过了触发阈值T,那么它就会“启动”,这就意味着它的输出被触发
3.3.2. 我们把激活的输入的权重加在一起,如果总权重超过阈值T,则神经元产生一个输出
3.4. 多层感知器结构
3.4.1. 人工神经网络通常是分层组织的
3.4.2. 从精准的数学定义来说,可以证明多层感知器完全能够普遍适用
3.5. 在罗森布拉特的时代,人们主要关注单层网络,原因很简单:没有人知道如何训练具有多个层面的神经网络
3.5.1. 多层神经网络结构
3.6. 神经网络分解下来的全部内容:一堆数字列表。对于任何一个大小合理的神经网络来
3.7. 感知器模型不能学习一个很简单的逻辑概念——异或(XOR)
3.8. 某些类别的感知器在基础结构层面具有严重局限性,这似乎就意味着基于感知器的通用模型存在局限性
3.9. 到了20世纪60年代末,神经网络研究急剧衰落
3.9.1. 神经网络研究的衰落仅仅发生在人工智能寒冬出现的前几年
4. 连接主义(神经网络2.0)
4.1. 神经网络研究领域一直处于休眠状态,直到20世纪80年代才开始复苏
4.2. 《并行分布式处理》
4.2.1. 预示着神经网络研究领域的复兴
4.2.2. 并行和分布式处理(简称PDP)是计算机科学研究的一个主流领域,它主要研究如何建立能够并行运算的计算机系统
4.2.3. 它主要研究多层神经网络,可以轻易克服明斯基和帕普特所断定的简单感知器系统的局限性
4.2.4. PDP以一种被称为反向传播的算法为这个问题提供了解决方案,这或许是神经网络领域中最重要的一门技术
4.3. PDP还提供了比感知器更适用的神经元模型
4.3.1. 感知器模型本质上还是二进制的计算单元(状态为开或者关),而PDP的神经元模型更具备通用性
4.4. 反向传播
4.4.1. 反向传播算法的基本思想很简单,它的工作原理是收取神经网络出错的反馈,这里的错误是在网络的输出层的输出
4.4.2. 反向传播似乎在过去的几年里被发明和重新发明过很多次,但是PDP研究人员引入的特定方法最终确定了它的地位
4.5. 反向传播算法的发展和PDP研究界引入的其他创新,使得神经网络具备广泛应用的可行性,这远远超出了20年前感知器模型的简单演示,人们对神经网络的发展兴趣倍增
4.6. 到了90年代中期,神经网络研究再次失宠
4.6.1. 源于一个平淡无奇的理由:当时的计算力不够强大,无法承载新技术
5. 深度学习(神经网络3.0)
5.1. 推动第三次神经网络研究浪潮的关键技术被称为深度学习
5.2. 网络要具备“深度”,即多层结构
5.2.1. 每一层可以在不同的抽象层面上处理一个问题
5.2.2. 靠近输入层的层面处理数据中比较低级的概念(例如图片的边缘之类)
5.2.3. 越是到了深层网络,就处理越为抽象的概念
5.3. 深度学习不仅仅体现在“深度”上,还能够享受神经元数量剧增的益处
5.3.1. 一个典型的1990年的神经网络可能只有大约100个神经元
5.3.2. 人类的大脑大约有1000亿个神经元
5.3.3. 到了2016年,先进的神经网络已经拥有大约100万个神经元了
5.3.3.1. 这个数量和蜜蜂的大脑大致相同
5.4. 深度学习使用的深层次网络中,神经元本身的连接数量也十分可观
5.4.1. 在20世纪80年代出现的高度连接神经网络中,每个神经元可能与其他神经元产生150个连接
5.4.2. 最先进的神经网络中的神经元,已经和猫的大脑神经元连接数相当了
5.4.3. 人类的神经元平均拥有10000个连接
5.5. 深度学习真正获得成功,还需要另外两个因素:数据和计算能力
5.5.1. 数据对机器学习的重要性可以用ImageNet项目的故事来说明
5.5.1.1. 2012年是技术图像分类发展的最佳时机,当时杰夫·辛顿和他的两位同事亚历克斯·克里泽夫斯基(Alex Krizhevsky)、伊利亚·苏茨科弗(Ilya Sutskever)一起展示了名为AlexNet的神经网络系统,它在国际图像识别比赛中有着亮眼的表
5.5.2. 使深度学习发挥作用的最后一个要素是计算机的处理能力
5.5.2.1. 图形处理单元(GPU)最初是为了处理计算机图形问题而开发的,例如为电脑游戏中提供高质量的动画
5.5.2.2. 这些芯片被证明是训练深度神经网络的完美工具
5.5.2.3. 每一个名副其实的深度学习实验室里都有GPU群
5.6. 更深的网络层级、更庞大的神经元结构、更广泛的神经元连接,是神经网络深度学习模式成功的一个关键因素
5.6.1. 深度神经网络拥有更多的网络层次结构、更多的神经元以及每个神经元拥有更多的连接,为了训练这样的网络学习,就需要比反向传播算法更先进的技术
5.7. 缺点
5.7.1. 智慧是不透明的
5.7.1.1. 一个深度学习的程序可以告诉你在X光扫描图片中哪里有肿瘤,但它无法证明它的诊断是正确无误的
5.7.1.2. 一个拒绝为客户提供银行贷款的深度学习程序无法告诉你它拒绝客户的原因
5.7.1.3. 专家系统得出结论的推理依据是可以追溯的,但神经网络无法做到这一点
5.7.2. 神经网络的稳定性
5.7.2.1. 这是个不易察觉但非常重要的问题
5.7.2.2. 如果对图像进行细微的修正,对人类而言,这种修正完全不会影响图像识别,但会导致神经网络错误地将其分类
5.7.2.3. 对抗性机器学习
5.7.2.3.1. 对手故意通过修改图片参数的方式来试图蒙骗程序
5.7.2.4. 图像分类程序认错了动物,倒不是什么要紧的事情,但对抗性机器学习已经昭示了一些令人惶恐的案例
5.7.2.4.1. 同样的改图方式可以影响程序对路标的识别,虽然人类肉眼看来没什么区别,但是在无人驾驶汽车中,神经网络就可能误读路标
上一篇下一篇