9#教材
- 《深度学习》by Ian Goodfellow
#学习周期
6.28 chap1-3
6.29 chap4-5
6.30 chap5-6
7.1 chap6
7.4 chap9 卷积网络
7.5 CNN
7.8 Chap6 反向传播算法和计算图
7.9 Chap6 架构设计和BP
7.11 Chap6 BP和CNN
7.22 Chap7 正则化
8.2 Chap8 深度学习中的优化
Chap9 卷积网络 -知乎
Chap10 循环神经网络 -知乎
#Chap4 数值计算
- 机器学习算法通常需要大量的数值计算,指通过迭代过程更新解的估计值来解决数学问题的算法,而不是通过解析过程推导出公式来提供正确解的方法
##C4.1 上溢和下溢
- underflow:舍入误差
- overfolow
- softmax函数
##C4.2 病态条件
- 条件数指的是函数相对于输入的微小变化而变化的快慢程度,条件数越大,矩阵越病态
- condition number 是一个矩阵(或者它所描述的线性系统)的稳定性或者敏感度的度量,如果一个矩阵的 condition number 在1附近,那么它就是well-conditioned的,如果远大于1,那么它就是 ill-conditioned 的,如果一个系统是 ill-conditioned 的,它的输出结果就不要太相信了。
##C4.3 基于梯度的优化方法
- 1维R -> R:导数
- N维R -> R:梯度
- m维R -> n维R:一阶导(Jacobian矩阵)、二阶导(Hessian矩阵,等价于梯度的Jacobian矩阵)
- 多维情况下,单个点处每个方向上的二阶导数是不同的,Hessian的条件数衡量这些二阶导数的变化范围。当Hessian的条件数很差时,梯度下降法表现的很差,因为一个方向上的导数增加得很快,但另一个方向上增加得很慢。
- 牛顿法
##C4.4 约束优化 - KKT条件
#Chap5 机器学习基础
##C5.1 学习算法
- 对于某类任务T和性能度量P,一个计算机程序被认为可以从经验E中学习是指,通过经验E改进后,它在任务T上由性能度量P衡量的性能有所提升。
##C5.2 容量、过拟合、欠拟合
- 模型容量(capacity),指拟合各种函数的能力,容量低的模型可能很难拟合训练集,容量高的模型可能会过拟合。(模型复杂度?)
- 控制算法容量的方法是选择假设空间,即学习算法可以选择为解决方案的函数集。
- 权重衰减(weight decay)
- 过拟合与欠拟合,参考《machine learning yearning》,正则化项
##C5.3 超参数和验证集
- 超参数用来控制算法香味,不是通过学习算法本身学习出来的,比如容量超参数。如果在训练集上学习超参数,这些超参数总是趋向于最大可能的模型容量。
##C5.4 估计、偏差和方差
##C5.5 最大似然估计
##C5.6 贝叶斯估计
##C5.7 监督学习算法
- 概率监督学习(逻辑回归)
- 支持向量机(SVM)
- 决策树
##C5.8 无监督学习算法
- 主成分分析(PCA)
- k-means
##C5.9 随机梯度下降
- minibatch SGD
##C5.10 构建机器学习算法
##C5.11 促使深度学习发展的挑战
- 维数灾难(curse of dimensionality)
- 局部不变性和平滑正则化
- 平滑先验和局部不变性先验表面我们学习的函数不应在小区域内发生很大的变化。
- 流形学习
- 流形(manifold),指连接在一起的区域。数学上指一组点,每个点都有其领域。
- 流形学习算法通过一个假设来克服障碍,该假设认为 Rn 中大部分区域都是无效的输入,有意义的输入只分布在包含少量数据点的子集构成的一组流形中。而学习函数的输出中,有意义的变化都沿着流形的方向或仅发生在我们切换到另一流形时。
- 知乎:https://www.zhihu.com/question/24015486
- 我们所能观察到的数据实际上是由一个低维流形映射到高维空间上的,m维流行在n维欧式空间的嵌入。由于数据内部特征的限制,一些高维中的数据会产生维度上的冗余,实际上只需要比较低的维度就能唯一地表示。
- 流形学习的一个主要应用就是“非线性降维” (参见Wikipedia: Nonlinear dimensionality reduction) 而非线性降维因为考虑到了流形的问题,所以降维的过程中不但考虑到了距离