斯坦福机器学习笔记-第五周
大约 2 分钟
这篇文章是斯坦福大学吴恩达老师机器学习课程第五周的笔记
神经网络的损失函数
首先,定义几个新的变量:
- L=神经网络的总层数
=第l层的单元数(不含偏置项)- K=输出单元数
相较于逻辑回归,神经网络的区别在于输出层有多个值,这样,将逻辑回归的损失函数稍加修改,可得神经网络的损失函数:
反向传播算法(backpropagation)
反向传播算法是一个神经网络中用来最小化损失函数的术语,类似逻辑回归和线性回归中的梯度下降。
反向传播的计算流程是:
给定训练集
设定
对于训练样本
- 设定
- 计算前向传播的结果
- 设定
计算
使用
来计算这里
由此得到更新公式:
这里
梯度检验
首先使用反向传播计算梯度
随机初始化
在逻辑回归中,我们使用0来初始化
网络架构的选择
选择网络架构,就是选择网络层数及每层的单元数。对于输入输出层,其单元数是确定的,输入层单元数就是样本的特征数,而输出层的单元数就是分类数目,然而隐藏层的层数及单元数确实不确定的,一般来说,隐藏层一般选择一层,而节点数尽可能多。还有一点就是当选择多层隐藏层时,通常让各层的单元数相同。