梯度检验!
2016-04-01 10:31
176 查看
梯度检验是在编写机器学习算法时必备的技术,可以检验所编写的cost函数是否正确
cost函数的主要功能是:计算代价函数、计算代价函数对参数的梯度
实际程序中,梯度检验要配合cost函数一起使用,可以将该部分单独放在一个测试函数checkCost() 中
① 给定一组样本及参数初始值
② 利用cost函数计算grad
③ 利用computeNumericalGradient函数计算梯度的近似值numGrad
④ 比较grad和numGrad是否比较相近:如果diff小于1e-6,则cost函数是正确的,否则,需要检查cost函数
diff = norm(numGrad-grad)/norm(numGrad+grad);
disp(diff);
在确定cost函数没有问题后,要屏蔽掉梯度检验部分的代码,否则,将会浪费许多时间
cost函数的主要功能是:计算代价函数、计算代价函数对参数的梯度
实际程序中,梯度检验要配合cost函数一起使用,可以将该部分单独放在一个测试函数checkCost() 中
① 给定一组样本及参数初始值
② 利用cost函数计算grad
③ 利用computeNumericalGradient函数计算梯度的近似值numGrad
④ 比较grad和numGrad是否比较相近:如果diff小于1e-6,则cost函数是正确的,否则,需要检查cost函数
diff = norm(numGrad-grad)/norm(numGrad+grad);
disp(diff);
在确定cost函数没有问题后,要屏蔽掉梯度检验部分的代码,否则,将会浪费许多时间
相关文章推荐
- 多层自编码器的微调
- UFLDL教程(六)之栈式自编码器
- word的不同章节之间添加不同的页眉
- matlab读取指定路径下的图像
- 训练样本集的制作
- matlab操作之--读取指定文件夹下的“指定格式”文件
- PANGU---Planet and Asteroid Natural scene Generation Utility
- 利用R进行多元线性回归分析
- 开始学习Python
- 移动,联通,电信手机都属于什么频段?
- LayoutInflater类简单使用
- JavaAgent 应用(spring-loaded 热部署)
- 黑苹果10.9.3史上最详细的安装教程(只要你电脑支持安装包99%成功)
- 选择指定图层上的所有实体
- shell 获取当前ip
- ?super T 和? extends T区别 ---- Java 泛型
- JAVA该掌握的知识
- linux 权限这个东西
- CCM - 极致发挥STM32F4性能的利器
- php的PDO