登录
首页精彩阅读机器学习的超参数是什么
机器学习的超参数是什么
2018-08-15
收藏

机器学习的超参数是什么

自从接触了机器学习后,在很多地方如书籍和文献中经常会看到有一类参数叫超参数(hyperparameter),其中提超参数最多的地方是在支持向量机SVM)和深度学习(Deep Learning)中,比如支持向量机中的松弛因子:

上式中的C就是松弛因子,这个参数在支持向量机中不像参数W那样,可以通过优化学习得到。还有深度学习中的超参数,如学习率(Learning Rate),在训练深度网络时,这个学习率参数需要提前指定,比如最近设为0.09等。

那么问题来了,到底什么是超参数(hyperparameter)?在很多教材和文献中都是默认你理解超参数的定义的。如果不知道超参数的定义的话,有些文献中的话可能不好理解,比如在机器学习中,尤其是在支持向量机中,为什么有些文献要把数据集分割成训练集,验证集和测试集,而不是直接分割为训练集和测试集?只有理解了何谓超参数,才会明白某些文献中这样分割的道理。

什么是超参数呢?先来看一下超参数的学院风定义:在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。

超参数的通俗定义:超参数也是一种参数,它具有参数的特性,比如未知,也就是它不是一个已知常量。一种手工可配置的设置,需要为它根据已有或现有的经验指定“正确”的值,也就是人为为它设定一个值,它不是通过系统学习得到的。

下面主要看看超参数在机器学习中的定义及示例:

机器学习的上下文中,超参数是在开始学习过程之前设置值的参数。 相反,其他参数的值通过训练得出。
超参数:
  1.  定义关于模型的更高层次的概念,如复杂性或学习能力。
  2.  不能直接从标准模型培训过程中的数据中学习,需要预先定义。
  3.  可以通过设置不同的值,训练不同的模型和选择更好的测试值来决定
超参数的一些示例:
   1. 树的数量或树的深度
   2. 矩阵分解中潜在因素的数量
   3. 学习率(多种模式)
   4. 深层神经网络隐藏层数
   5. k均值聚类中的簇数

数据分析咨询请扫描二维码

客服在线
立即咨询