机器学习中的超参数的选择与交叉验证

1. 超参数有哪些

  与超参数对应的是参数。参数是可以在模型中通过BP(反向传播)进行更新学习的参数,例如各种权值矩阵,偏移量等等。超参数是需要进行程序员自己选择的参数,无法学习获得。   常见的超参数有模型(SVM,Softmax,Multi-layer Neural Network,…),迭代算法(Adam,SGD,…),学习率(learning rate)(不同的迭代算法还有各种不同的超参数,如beta1,beta2等等,但常见的做法是使用默认值,不进行调参),正则化方程的选择(L0,L1,L2),正则化系数,dropout的概率等等。

2. 确定调节范围

  超参数的种类多,调节范围大,需要先进行简单的测试确定调参范围。

2.1. 模型

  模型的选择很大程度上取决于具体的实际问题,但必须通过几项基本测试。   首先,模型必须可以正常运行,即代码编写正确。可以通过第一个epoch的loss估计,即估算第一个epoch的loss,并与实际结果比较。注意此过程需要设置正则项系数为0,因为正则项引入的loss难以估算。   其次,模型必须可以对于小数据集过拟合,即得到loss接近于0,accuracy接近于1的模型。否则应该尝试其他或者更复杂的模型。   最后,如果val_acc与acc相差很小,可能是因为模型复杂度不够,需要尝试更为复杂的模型。

2.2. 学习率

loss基本不变:学习率过低 loss震动明显或者溢出:学习率过高 根据以上两条原则,可以得到学习率的大致范围。

2.3. 正则项系数

val_acc与acc相差较大:正则项系数过小 loss逐渐增大:正则项系数过大 根据以上两条原则,可以得到正则项系数的大致范围。

3. 交叉验证

  对于训练集再次进行切分,得到训练集以及验证集。通过训练集训练得到的模型,在验证集验证,从而确定超参数。(选取在验证集结果最好的超参数)   交叉验证的具体实例详见CS231n作业笔记1.7:基于特征的图像分类之调参和CS231n作业笔记1.2: KNN的交叉验证。

3.1. 先粗调,再细调

  先通过数量少,间距大的粗调确定细调的大致范围。然后在小范围内部进行间距小,数量大的细调。

3.2. 尝试在对数空间内进行调节

  即在对数空间内部随机生成测试参数,而不是在原空间生成,通常用于学习率以及正则项系数等的调节。出发点是该超参数的指数项对于模型的结果影响更显著;而同阶的数据之间即便原域相差较大,对于模型结果的影响反而不如不同阶的数据差距大。

3.3. 随机搜索参数值,而不是格点搜索

通过随机搜索,可以更好的发现趋势。图中所示的是通过随机搜索可以发现数据在某一维上的变化更加明显,得到明显的趋势。

原文发布于微信公众号 - 机器学习算法全栈工程师(Jeemy110)

原文发表时间:2017-07-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ATYUN订阅号

5种主要聚类算法的简单介绍

AiTechYun 编辑:Yining 聚类是一种机器学习技术,它涉及到数据点的分组。给定一组数据点,我们可以使用聚类算法将每个数据点划分为一个特定的组。理论上...

2704
来自专栏Spark学习技巧

【深度学习】笔记第一弹--神经网络

1. 神经网络前言 1.1 背景 在进入神经网络之前,先讲述两个略带血腥的实验。 第一个实验是科学家将耳朵到大脑听觉区的神经给切断了,然后将眼睛到大脑听觉区的...

2998
来自专栏杂文共赏

蚂蚁金服论文

通常,图表征学习的目标是学习一个函数:f(\mathcal{X},\mathcal{G}) ,利用\mathcal{G}空间中附加的图结构,而不是传统的只考虑f...

4467
来自专栏机器学习之旅

理论:正则化-Lasso规约

图中,红色的线存在明显的过拟合,绿色的线才是合理的拟合曲线,为了避免过拟合,我们可以引入正则化。

672
来自专栏SIGAI学习与实践平台

反向传播算法推导-卷积神经网络

原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的。

990
来自专栏超然的博客

Context-Aware Network Embedding for Relation Modeling

论文:http://www.aclweb.org/anthology/P17-1158

671
来自专栏目标检测和深度学习

卷积神经网络工作原理直观的解释

742
来自专栏SeanCheney的专栏

《Scikit-Learn与TensorFlow机器学习实用指南》 第5章 支持向量机

支持向量机(SVM)是个非常强大并且有多种功能的机器学习模型,能够做线性或者非线性的分类,回归,甚至异常值检测。机器学习领域中最为流行的模型之一,是任何学习机器...

832
来自专栏决胜机器学习

深层神经网络参数调优(五) ——超参数调试、batch归一化、softmax回归

深层神经网络参数调优(五) ——超参数调试、batch归一化、softmax回归 (原创内容,转载请注明来源,谢谢) 一、超参数调试 1、超参数 超参数是不直...

3908
来自专栏绿巨人专栏

机器学习实战 - 读书笔记(07) - 利用AdaBoost元算法提高分类性能

3528

扫码关注云+社区