TensorFlow:Google开源的基于数据流图的科学计算库,适合用于机器学习。
官网链接 http://www.tensorflow.org/
TensorFlow的含义:张量在图中流动
TensorFlow基本架构:
TensorFlow详细架构:
TensorFlow的特点:
- 灵活性:只要可以将计算表示成数据流图,就可以使用TensorFlow
- 跨平台: Linux , Windows , Android , iOS , Raspberry Pi等等
- 多语言:上层开发语言Python , C++, Java, Go等等
- 速度快:包含了XLA这款强大的线性代数编译器
- 上手快: Keras , Estimiators ,等等高层API
- 可移植:代码几乎不加修改移植到CPU , GPU , TPU等等
TensorFlow的著名用途:
- DeepMind (Google )的AlphaGo / AlphaGo Zero的底层技术
- Google产品:搜索, Gmail,翻译,地图, Android,照片, YouTube
- 开发出击败Dota2世界顶级选手的AI的OpenAl使用TensorFlow
使用TensorFlow的中国公司:
人工智能
什么是人工智能
人工智能之父麦卡锡给出的定义:
- 构建智能机器,特别是智能计算机程序的科学和工程
- 人工智能是一种让计算机程序能够“智能地"思考的方式
- 思考的模式类似于人类
什么是智能
- 智能的英语是Intelligence
- 推理、知识、规划、学习、交流、感知、移动和操作物体,等等
- 智能(是包含智力的一个很大的范畴) != 智力(IQ:智商。比较类似计算机的计算能力)
如何算有智能
- 可以根据环境变化而做出相应变化的能力
- 具有"存活"这最基本的动因
- 自主能力,自我意识,等等
图灵测试(Turing Test)
图灵于1950年提出的一个关于判断机器是否足够智能的著名试验
图中的意思是:评委事先并不知道墙对面谁是人谁是机器,如果靠着评委的大量问题还是无法判断谁是人谁是机器,那么这个测试就评判出那个机器有着与人类似的智能。但是到目前为止这个测试没有成功过。
自然智能
人和动物的智能:纯天然,无添加
人工智能
人造出来的智能
人工智能前景
人工智能的需求
人工智能的前进好在哪里?
人工智能相关动向
- 2017年7月20日中国国务院发布了《新一代人工智能发展规划》
- Excel等将用Python替代VBA
- Python被加入高考
CCTV的《机智过人》节目
- 人工智能产品和人类高手比拼,中央电视台和中国科学院共同主办
- 嘉宾:柯洁、撒贝宁、林书豪、江一燕,知名人工智能人士,等等
- 2017年8月25日在CCTV-1周末黄金时段推出
人工智能需要的基本数学知识
人工智能简史
- 人工神经网络被提出(AI缘起)
- Artificial Neural Network (简称Neural Network
- 沃伦-麦卡洛克和沃尔特-皮茨在1943创造了神经网络的计算模型
- 达特茅斯会议(定义Al)
- 达特茅斯学院( Dartmouth College )是一所美国私立大学
- 由约翰-麦卡锡等人于1956年8月31日发起
- 标志着Al(人工智能)的正式定义(诞生)
- 感知器( Perceptron)
- 一种最简单的人工神经网络,是生物神经网络机制的简单抽象
- 由罗森布拉特于1957年发明
- 将人工智能的研究推向第一个高峰
- 人工智能第一个寒冬
- 1970年 始的十几年
- 传统的感知器耗费的计算量和神经元数目的平方成正比
- 当时的电脑没有能力完成神经网络模型所需要的超大计算量
- 霍普菲尔德神经网络
- 一种递归神经网络( Recurrent Neural Network)
- 由约翰霍普菲尔德在1982年发明
- 具有反馈( Feed back )机制
- 反向传播( Back Propagation )算法
- 1974年哈佛大学的保罗:沃伯斯发明,当时没有受到重视
- 1986年大卫.鲁姆哈特等学者出版的书中完整地提出了BP算法
- 使大规模神经网络训练成为可能,将人工智能推向第二个高峰
- 人工智能第二个寒冬
- 1990年开始
- 人工智能计算机Darpa没能实现
- 政府投入缩减
- 深度学习( Deep Learning )
- 基于深度(指"多层" )神经网络
- 2006年由杰弗里·辛顿( Geoffrey Hinton )提出
- 人工智能性能获得突破性进展
- 进入感知智能时代
- 深度学习在语音和视觉识别上分别达到99%和95%的识别率
- 2013年开始
- 人工智能三个时代:运算智能、感知智能、认知智能
- AlphaGo击败众多人类选手
- Google买下的DeepMind公司的AlphaGo (基于TensorFlow )
- 2016年接连击败围棋届顶尖棋手
- 深度学习被广泛关注,掀起学习人工智能热潮
- 未来由我们创造
- 在人工智能热潮到来的时候你应该感到自豪,因为你学习了人工智能
- 虽然我们不能过分乐观,未来也许还会有低潮
- 但人工智能是大势所趋,学了绝对不吃亏
AI、机器学习和深度学习的关联
人工智能的知识图谱
AI ML和DL的关系
机器学习是实现人工智能的一种方法,深度学习是机器学习一个分支
人工智能王者归来,深度学习功不可没
- 深度学习是引领人工智能热潮的"火箭"
- 深度学习作为"后代" ,却给"爷爷"(人工智能)和"爸爸"(机器学习)争光了
什么是机器学习
什么是学习
- 过程:一个系统,能够通过执行某个过程,改善了性能
- 说得更深入一些,学习的目的是"减熵"
- 热力学第二定律:一个孤立系统倾向于增加熵(混乱程度)
熵就是混乱程度;比如生命活着就是在减熵
机器学习的必要性
- 很多软件无法靠人工编程:自动驾驶、计算机视觉、自然语言处理
- 人类常会犯错(比如紧张、累了、困了) ,机器不容易犯错
- 机器的计算能力越来越强,提高我们生活质量、加快科技发展
“晦涩”的机器学习定义
- 对某类任务T (Task )和性能度量P ( Performance)
- 通过经验E ( Experience )改进后
- 在任务T上由性能度量P衡量的性能有所提升
简单的机器学习定义
- 机器学习:让机器学习到东西
- 数据 对应 训练
- 解答问题 对应 推测
人类思考VS机器学习
练习和考试
- 学生学习:用做 练习题 来 提高考试的成绩
- 做练习题 对应 训练
- 考试 对应 推测
AlphaGo学下围棋
- 围棋博弈:用 和自己下棋 来 提高下棋的胜率
- 和自己下棋 对应 训练
- 与人类下棋 对应 推测
传统编程 VS 机器学习
机器学习
机器学习大致等同于找一个 好的函数(Function)/模型
机器学习的分类
- 监督学习
- Supervised Learning :有标签。近义词:分类( Classification )
- Supervised Learning :有标签。近义词:分类( Classification )
- 非监督学习
- Unsupervised Learning :没有标签。近义词:聚类( Cluster )
- Unsupervised Learning :没有标签。近义词:聚类( Cluster )
- 半监督学习
- Semi-Supervised Learning :有少部分标签。最类似人的生活
如果c和b经常在一起;机器就会判断c也是精英。按照物以类聚的方式。
- Semi-Supervised Learning :有少部分标签。最类似人的生活
- 什么是强化学习
- Reinforcement Learning :基于环境而行动,以取得最大化预期利益
按照得分强化学习;得分越高越好;就会刺激人工智能得高分
- Reinforcement Learning :基于环境而行动,以取得最大化预期利益
机器学习步骤:判断该用哪种算法。
为什么回归叫regression(回归)?
- 回归用于预测(比如股票) ,它的输出是连续的,与离散的分类不同
- 回归是英国生物学家兼统计学家高尔顿在研究人类遗传问题时提出的
- 两种身高父亲的儿子的身高,有向他们父辈的平均身高回归的趋势
机器学习的“六步走”
机器学习的"关键三步"
- 找一系列函数来实现预期的功能: 建模 问题
- 找一组合理的评价标准,来评估函数的好坏: 评价 问题
- 快速找到性能最佳的函数: 优化 问题(比如 梯度下降 就是这个目的)
面对AI我们应有的态度
- 人工智能太热
- 火到连Android都被比了下去,连Kotlin和Go都有点黯然失色
- 面对AI正确的态度
- 审时度势
- 千万不要跟风,不要头脑发热
- “人工智障”
- 目前的人工智能,其实还停留在比较初级的阶段
- 人类从未创造生命
- 人类到目前为止只不过能复制生命,从没有从无到有来创造
- 目前有两个派别
- 反省自己比担心AI更重要
- “人心比万物都诡诈”。与人心相比,AI真的太简单了
- 全知并非全能
- 即使这类人工智能存在,它得和人类得经济和资源竞争
- 需要适当防备AI
- 可能AI会在不断学习得过程中习得一些不可控得【思维】
- 借人工智能来认识自己
- 人类大脑是怎么运作得,我们还知之甚少,更不用说模拟或者仿照
- 人及合作
- AI有"机智过人"和"技不如人"。人机合力,惊为天人
什么是过拟合
过拟合:Overfitting 过分拟合的意思
拟合: Fitting
- UnderFitting :欠拟合。样本不够或算法不精,测试样本特性没学到
- Fitting right :拟合完美。恰当地拟合测试数据,泛化能力强
- OverFitting :过拟合。"一丝不苟"拟合测试数据,泛化能弱
回归(Regression)问题中三种拟合状态
分类(Classification)问题中三种拟合状态
打个比方:谈恋爱。如果针对一个女孩的兴趣爱好出了一本恋爱攻略,那么这就是过拟合,你过度针对这个女孩,如果拿这个攻略去追其他女生就会没有效果。
解决过拟合的一些方法
Dropout:丢弃、退出
什么是深度学习
基于 深度 神经网络的学习研究称之为深度学习
深度学习为什么兴起?
深度学习能有高回报的必要条件
- 大数据:全球每天都有海量数据产生,大公司更是"大权在握"
- 强计算力:云计算、GPU、越来越快的CPU
- 复杂模型:一般来说隐藏层越多,效果越好
深度学习的形象比喻:恋爱
- 第一阶段初恋期:相当于神经网络的输入层。不同的参数设置·
- 第二阶段磨合期:相当于神经网络的隐藏层。调整参数权重·
- 第三阶段稳定期:相当于神经网络的输出层。输出结果与预期比较
比如说:
女友说:“今天约会你没陪我好好街”
女友说: “蛋糕不要买巧克力味的,我要榴莲味”
女友说:“你都不怎么陪我聊天”
女友说:“你说,你错了没?"
错(Error )了:与期望的误差( Loss/Cost )
如何改正:
• ВP算法:误差反向传递( Back Propagation)
• 改:调整(Tuning )参数的权重( Weight )
调整对应参数的权重调高"逛街"的权重(重要性)
调高“榴莲味蛋糕”的权重
调低"I巧克力味蛋糕”的权重
调高"聊天"的权重
磨合的过程就是不断调整各个参数
- 在神经网络里正向传播参数信号,经过隐藏层处理,输出结果
- 计算和预期的差距(误差) ,反向传播误差,调整网络参数权重
- 不断地进行:正向传播->计算误差->反向传播->调整权重
比如 林俊杰作曲的《修炼爱情》 :恋爱就像调参
最终结果
磨合得好:结婚(神经网络模型合格),
磨合不好:分开(神经网络模型不合格)