1 什么是人工智能
1-1 人工智能定义
人工智能之父 麦卡锡 给出的定义
- 构建智能机器, 特别是智能计算机程序的科学和工程
- 人工智能是一种让计算机程序能够
智能
思考的方式- 思考的模式
类似
于人类 (注意是类似,不可能像人类一样去思考)
1-2 什么是智能
- 智能的英语是Intelligence
- 包含 推理、知识、规划、学习、交流、感知、移动和操作物体等等
智能 不等于 智力(IQ: 智商,比较类似计算机的计算能力)
1-3 如何算有智能
- 可以根据环境变化而做出相应变化的能力
- 具有
存活
这项基本的动因- 自主能力,自我意识等等
例如从宝宝手里夺取他的西瓜,他会有护住西瓜的自主意识,目前的机器还没有这种意识,或者生存的动因
1-4 图灵测试(Turing Test)
- 艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父
- 图灵测试如下图,测试者与接受测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测者随意提问
- 进行多次测试后,如果有超过30%的测试者不能确定出被测试者是人还是机器,那么这台机器就通过了测试,并被认为具有人类智能
- 目前还没有机器通过图灵测试
1-5 智能的分类
- 自然智能:人和动物 (
Natural Intelligence
)- 人工智能:人造出来的智能 (
Artificial Intelligence
)
2 人工智能前景
2-1 人工智能的需求
- 提高我们的生活品质
- 增加工作科研等的效率
- 解决世纪难题,如癌症的诊断
2-2 人工智能的前景好在哪里
- 企业支持:谷歌、微软、苹果、百度、阿里、腾讯等大厂都投入了大量的资金和人力
- 科技支持:大数据、cpu,gpu的高性能,使得人工智能的训练变得容易,目前人工智能爆发的主要原因
- 国家支持:国家发展战略层面
2-3 人工智能相关动向
- 2017年7月20日 中国国务院发布了《新一代人工智能发展规划》
- Excel等将用Python替代VBA
- Python加入高考
3 人工智能需要的基本数学知识
- 本实战课程,需要了解以下数学知识
- 若要深入学习人工智能,则要有一定的数学功底
4 人工智能简史
> 1 人工神经网络被提出 (AI缘起)
- Artificial Neural Network (简称 Neural Network)
- 沃轮·麦卡洛克 和 沃尔特·皮茨 在
1943
年创造了神经网络的计算模型
- 为以后的深度学习等领域打下了基础
> 2 达特茅斯会议 (定义AI)
- 达特茅斯学院 (Dartmouth College) 是一所美国大学
- 约翰·麦卡锡等人于
1956
年8月31日发起- 标志着AI(人工智能)的
正式定义
(诞生)
> 3 感知器(Preceptron)
- 一种最简单的人工神经网络,是生物神经网络机制的简单抽象
- 由 罗森布拉特 于
1957
年发明- 将人工智能的研究推向
第一个高峰
> 4 人工智能的第一个寒冬
1970
年开始的十几年- 传统的感知器耗费的计算量和神经元数目
平方
成正比- 当时的电脑没有能力完成神经网络模型所需要的超大计算量
> 5 霍普菲尔德神经网络
- 一种递归神经网络 (Recurrent Neural Network)
- 由
约翰·霍普菲尔德
于1982
年发明- 具有反馈(feed back)机制
> 6 反向传播(Back Propagation)算法
1974
年哈佛大学的 保罗·沃伯斯 发明,当时处于寒冬期,没有受到重视1986
年大卫鲁姆哈特等学者出版的书中完整的提出了BP的算法- 使大规模神经网络训练成为可能,将人工智能推向
第二个高峰
> 7 人工智能第二个寒冬
1990
年开始- 人工智能计算机Darpa没能实现(美国政府花巨资支持的项目)
- 政府投入缩减,人工智能随之进入寒冬
> 8 深度学习(Deep Learning)
- 基于深度(指“多层”)神经网络
2006
年杰弗里·辛顿(Geoffrey Hiton)
提出- 人工智能性能获得突破性进展
- 目前(2018年写此博客)我们的人工智能案例大多基于此
> 9 进入感知智能时代
- 深度学习在语音是视觉识别上分别达到99%和95%的识别率
- 2013年开始我们把人工智能分为三个时代
- 运算智能:IBM深蓝计算机打败俄罗斯象棋选手,(通过暴力运算,得出所有可能的下棋步骤)
感知智能
: 图像语音识别等类似于人类的触觉的智能时代,目前处于此阶段- 认知智能:像人一样的认知能力,离此目标还很遥远
> 10 AlphaGo 击败众多人类选手
- Google 买下了DeepMind公司的AlphaGo(基于TensorFlow)
2016
年接连击败围棋界顶尖棋手- 之后深度学习被广泛关注,掀起学习
人工智能热潮
> 11 未来由我们创造
- 虽然我们不能过分乐观,未来也许还会有低潮
- 但人工智能是大势所趋,,学了绝对不吃亏
5 AI、机器学习和深度学习的关联
相关联的学科
- 1 他们都不是独立的学科,互相都有交集
- 2 机器学习属于人工智能的范畴
- 3 深度学习属于机器学习的一个子领域
- 4 神经网络贯穿其中
- 5 深度学习基于神经网络
- 6 有关联的学科不仅限于下图
AI、ML、DL的关系
- 机器学习是实现人工智能的一种方法
- 深度学习是机器学习的一个分支
- 人工智能王者归来,深度学习功不可没
- 深度学习是引领人工智能热潮的 "火箭"
6 什么是机器学习
6-1什么是学习
- 学习是一个
过程
:一个系统,能够通过执行某个过程,改善了性能- 说得更深入一些,学习的目的是
减熵
- 热力学第二定律:一个孤立系统倾向于增加
熵
(混乱程度)- 生命活着就是在减熵,对抗环境的增熵趋势
6-2 机器学习的必要性
- 1 很多软件无法靠人工编程:如自动驾驶,计算机视觉,自然语言处理,这类问题难以定性和描述,智能通过机器学习来处理
如识别鸢尾花,通过软件编程无法描述它的特性以及和其它花的区别
- 2 人类常会犯错(疲劳,紧张,饿了等),机器不容易犯错
- 3 机器的计算能力越来越强,提高我们生活品质、加快科技发展
6-3 机器学习的定义
晦涩的定义
- 对某类 任务 T(Task) 和 性能度量 P(Performance)
- 通过经验 E(Experience) 改进后
- 在任务 T 上由性能度量 P 衡量的性能有所提升
简单的机器学习定义
- 机器学习:让
机器
学习
到东西
人类思考 VS 机器学习
- 学生学习:用
做训练题
来提高考试的成绩
- 做题 对应
训练
- 考试 对应
推测
- 机器学习:用
数据
来解答问题
- 数据 对应
训练
- 解答问题 对应
推测
机器学习案例:AlphaGo学下围棋
- 围棋博弈: 用
和自己下棋
来提高下棋的胜率
- 和自己下棋 对应
训练
- 与人类下棋 对应
推测
6-4 传统编程 VS 机器学习
- 机器学习大致等同于找一个好的函数(function)/ 模型
6-5 机器学习的分类
- 监督学习 (Supervised Learning): 有标签, 近义词:分类 (Classification)
对于训练集的每个数据给他一个标签。如下识别系统,给训练的每张图片打个标签(是鸭子还是不是鸭子),通过监督学习,训练出一个预测模型
当有新的数据来时,用这个预测模型去识别是否为鸭子
- 非监督学习 (Unsupervised Learning): 没有标签,近义词:聚类(Cluster)
不会给数据打标签,让机器自己学着找他们的共通点,然后把相同或相似的一些数据分为一类
当有新的数据过来的时候,系统就会把归到之前聚好的类里面
- 半监督学习 (Semi-Supervised Learning): 有少部分标签,最类似人的生活
--我们的一生都在进行着半监督学习
--实际生活中大量的数据是没有标签的,人工打标签成本较大
如下A和C有标签,都是精英,现在C无标签,怎么判断他是否为精英呢,比如ABC经常出入同样的场所,一起喝咖啡,是朋友等,可以基本推测C也是精英,这也是我们说的物以类聚,人以群分
- 强化学习 (Reinforcement Learning): 基于环境而行动,已取得最大化预期利益
比如AI 玩超级玛丽,挂掉一次减一分,过关一次加一分,n轮下来看总得分,得分越高越好。AI程序就会自动想要获得更高的分数,相当于给他的一个奖励,去刺激他获得更高的分数,这样就会训练处一代比一代强的AI程序
6-6 机器学习算法选择
- scikit-learn官网 http://scikit-learn.org/stable/index.html
为什么回归叫regression(回归)
- 回归用于预测(比如股票),它的输出是连续的,与离散的分类不同
- 回归是英国生物学家兼统计学家高尔顿在研究人类遗传问题提出的
- 子代的身高有向父辈身高回归的趋势
- 后来预测性问题都叫做回归
机器学习的 “六部走”
机器学习的 “关键三部”
- 找一系列函数来实现预期的功能:
建模
问题- 找一组合理的评价标准,来评估函数的好坏:
评价
问题- 快速找到性能最佳的函数:
优化
问题(比如梯度下降
就是个目的)
7 AI 会不会对人类产生威胁
威胁论
:霍金(剑桥大学物理学家)、马斯克(特斯拉CEO)、(笔者倾向威胁论)
有用论
:扎克博格(Facebook CEO)、皮查伊(谷歌CEO)
8 什么是 过拟合(overfitting)
8-1 拟合的三种状态
- Underfitting: 欠拟合。样本不够或算法不精,测试样本特性没有学到
- Fitting right: 拟合完美。恰当地拟合测试叔叔,泛化能力强
- OverFitting: 过拟合。"一丝不苟"拟合测试数据,泛化能力弱
回归(Regression)问题中的三种拟合状态
- 1 欠拟合,训练出的模型是一条直线,不能很好的表示测试数据的点的分布趋势,
- 2 好的拟合,能过比较好的表现测试数据的分布,比较好的预测新数据特性
- 3 过拟合,和测试数据完全拟合,拟合的过于好,但是无法预测新数据的特性
笔者认为,过拟合就是学成书呆子了,不能活学活用,无法适应新的环境
- 分类(Classification)问题中三种拟合状态*
8-2 解决过拟合的一些方法
- 降低数据量
- 正则化
- Dropout
Dropout: 丢弃、退出
- 下左全连接神经网,下右放弃一些点和连接,用部分连接去构建神经网络,这样就不会过分贴合训练数据,导致泛化能力差
9 什么是深度学习
- 基于
深度
神经网络 的学习研究称之为深度学习- 隐藏层大于两个
9-1 深度学习为什么兴起
- 大数据: 全球每天产生海量数据,大公司更是”大权在握“
- 强计算力:云计算、GPU、越来越强的CPU
- 复杂模型:一般来说隐藏层越多,效果越好
- 理论算法的丰富
深度学习的形象比喻:恋爱
- 第一阶段 初恋期:相当于神经网络的
输入层
。不同的参数设置- 第二阶段 磨合期:相当于神经网络的
隐藏层
。调整参数权重1 女友喜欢逛街,调高逛街的权重(重要性)
2 女友喜欢榴莲味的蛋糕,此蛋糕权重调高
3 经过一段时间的调节,女友说你变好了不少,开心
- 在神经网络里正向传播参数信号,经过隐藏层处理,输出结果
- 计算和预期的差距(误差),通过
BP算法
反向传播误差,调整(Tuning)网络参数权重(Weight)- 不断地进行: 正向传播 --> 计算误差 --> 反向传播 --> 调整权重
- 第三阶段 稳定期:相当于神经网络的
输出层
。输出结果与预期比较- 最终结果:
- 磨合的好:结婚(神经网络模型合格)
- 磨合不好:分开(神经网络模型不合格)
- 其实不仅有调参,还涉及到模型的调整