深度学习概述从万有逼近定律开始
神经网络每一层作用
神经网络瘦高(层数多)矮胖(层数少节点多)好?
实验数据支持第一个
深度和宽度对于函数复杂度的贡献不同
深层问题:梯度消失
多层神经网络可以看成一个复合的非线性多元神经网络
误差反向传播 利用梯度
梯度:多元函数在每个点有多个方向,每个方向都有方向导数,梯度 向量 方向为最大方向导数的方向 模 最大方向导数的值
参数优化:梯度下降
沿负梯度方向更新参数可以使函数值下降
学习使用pytorch深度学习开发框架
逐层预训练
局部最小值、梯度消失解决方法 选择一个比较好的初始点
实现方法:受限玻尔兹曼机和自编码器
自编码器:
最初用于降维 后来有堆叠自编码器
自编码器r层编码,r层解码
BP算法全称叫作误差反向传播(error Back Propagation,或者也叫作误差逆传播)算法。其算法基本思想为:输入信号经输入层输入,通过隐层计算由输出层输出,输出值与标记值比较,若有误差,将误差反向由输出层向输入层传播,在这个过程中,利用梯度下降算法对神经元权值进行调整。
受限玻尔兹曼机(RBM)
两层神经网络(可见层v、隐藏层h) 二分图
没有显式重构过程
输入v,通过p(h|v)得到隐藏层h;输入h,通过p(v|h)得到v
玻尔兹曼来自于能量分布,通过能量分布定义联合分布