白话深度学习与 tensorflow
dl: 产生算法的算法
supervised learning 有监督学习
hyper-parameter 超参
generalization 泛化
regression 回归
# 机器学习
贝叶斯概率,决策树归纳,支持向量机,
# 神经网络
树突--轴突--髓鞘--突触
神经元: 线性模型、激励函数。
# 深度学习
无特征提取,线性可分
# 案例
- alpha dog
- tai.ai
- asimo 本田
- atlas boston dynamics
# 分类
线性回归、分类、聚类(向量距离)
# 框架
- caffe 卷积神经,专注图像,速度快
- torch
- theano
- cntk by microsoft
- dl4j for java
- chainer
- tensorBoard
# anaconda
python 环境下的预制包
# tensorflow
data flow graphs ,
node , edge , tensor
便捷、高效、可扩展
# 数学原理
y=wx+b , 梯度下降,收敛。激励函数
loss 损失函数
# 反向
全链接 BP 网络
# 验证集,测试集,过拟合
VC维,丰富的VC维容易过拟合
过拟合:样本太少,参数太多。
验证集:调整分类器参数。
# 06-卷积网络-convolutional
全连接网络:w,b 过多,收敛慢。
卷积网络:卷积层提取特征
至少一个卷积层提取特征。权值共享,减少W数量。
翻转,平移,压缩。
# 卷积的数学表达
h(x)=f(x)*g(x)
VGG-16 visual Geometry group 16 个参数网络层
# softmax
分类节点
# cross-entropy-交叉熵、
交叉熵损失函数 残差
x向量,若干个 x 向量把每个可能项产生的概率乘以该可能性的信息量,然后加和。
目标分类拟合值和拟合分类向量值之间的差值。
交叉熵:当前拟合出来的模型分类所产生的信息熵和这种客观上信息熵的差距。
# 先验概率
# 独热编码
用一个向量的第一个维度来标识一种性质有无的方式。
相比于序号编码的优劣势。
# 带有高质量标签的样本是dl中成本最高的东西
# 07-综合问题
# 随机梯度下降
理论基础:统计学中的抽样概念。
用精确度换时间。
# batch size
# 梯度消失问题
过早的不再下降、精确度也不再提高。
- 初始化一个合适的w
- 选择合适的激励函数
消除链式乘法中,每一项小于1,结果越往后面的层级,越乘越小,变化缓慢。
# 归一化
1美元显然和1日元的购买力是不同的。
# 参数初始化
把整个网络中的w 初始化成以 0 为均值 u, 某个很小的delta 为标准差的正太分布方式。
# 正则化
泛化性越好的东西,越抽象、简洁。
正则化就是帮我们找到更为简洁的描述方式的量化过程。
# 其它超参
超参,训练之前,开始设定的一些参数值。这些值没有办法通过训练学习。
# 不唯一模型
# Dropout
主要是为了应对 VC 维过高导致的过拟合,整个网络参数非常高,记录下一些噪音。在一轮训练中选择性的丢弃一部分节点,或临时性关闭一些节点。
# 08-循环神经网络-recurrent
特点:记忆暂存功能,解决具有上下文场景下的问题处理。如NLP。
# 隐马尔克夫模型
马尔克夫链:给定当前知识或信息情况下,观察对象过去的历史状态对于将来的预测是无关的;即观察一个系统变化时只需观察和统计当前状态。
隐马尔克夫链和贝叶斯信念网接近,但更简洁,是一个双重随机过程。
训练完全通过统计学模型,最后得到两个矩阵:
- X之间表示 隐含状态转移关系的矩阵
- X和输出之间关系的矩阵
# RNN和BPTT算法
了解 HMM(隐马尔克夫)通过统计学方法观察、认知一个事件序列上临近事件发生的概率转化问题。
# RNN
word 2 vector 把字或词汇转换成数字向量
# LSTM
长短期记忆网络
忘记门
www.captionbot.ai (已打不开)
github.com/karpathy/neuraltalk2
vlg.cs.dartmouth.edu/c3d/
# 实践案例
# 09-深度残差网络
deep residual network
# 10- 受限玻尔兹曼机
# 11-强化学习
# 马乐克夫决策过程
Q-Learning 算法