模型超参数和模型参数有什么区别?


28

我注意到,诸如模型参数和模型参数之类的术语已在网上互换使用,而无需事先说明。我认为这是不正确的,需要解释。考虑一下一个机器学习模型,一个基于SVM / NN / NB的分类器或图像识别器,然后才想到任何东西。

模型的参数参数是什么?
请给你例子。


Answers:


27

超参数和参数通常可以互换使用,但是它们之间是有区别的。如果无法直接在估算器中学习,则称其为“超参数”。但是,“参数”是更笼统的术语。当您说“将参数传递给模型”时,通常意味着将超参数与一些其他参数组合在一起,这些参数与您的估计量不直接相关,但对于模型是必需的。

例如,假设您正在sklearn中构建SVM分类器:

from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC(C =0.01, kernel ='rbf', random_state=33)
clf.fit(X, y) 

在上面的代码中,SVM实例是您模型的估计量,在这种情况下,超参数是Ckernel。但是您的模型还有另一个参数,它不是超参数,而是random_state


这个答案暗示random_state是一个参数。我认为这是令人误解的,因为(请参阅其他答案);模型学习一个参数,而我们指定参数 ; 喜欢random_state=33。但是,random_state也不是一个超参数,因为没有最佳价值random_state。看到Jason Brownlee的讨论在这里
红豌豆

21

除了上面的答案。

模型参数是在分类器或其他ml模型的训练过程中获悉的训练数据的属性。例如,在执行某些NLP任务时:单词频率,句子长度,每个句子的名词或动词分布,每个单词的特定字符n-gram的数量,词法多样性等。每个实验的模型参数都不同,具体取决于模型的类型数据和手头的任务。

另一方面,模型超参数在相似模型中很常见,在训练期间无法学习,但需要事先设置。NN的典型超参数集包括隐藏层的数量和大小,权重初始化方案,学习率及其衰减,辍学和梯度限幅阈值等。


7

超参数是我们提供给模型的参数,例如:神经网络中隐藏节点和层的数量,输入特征,学习率,激活函数等,而参数是机器将学习的参数,例如权重和偏差。


5

在机器学习中,带有参数和超参数的模型看起来像,M

YMH(Φ|D)

其中是参数,H是超参数。D是训练数据,Y是输出数据(分类任务中的分类标签)。ΦHDY

训练过程中,目标是找到参数的估计Φ优化一些损失函数大号我们已经指定。因为模型中号和失功能大号基于ħ,然后由此产生的参数Φ也依赖于超参数ħΦ^LMLHΦH

超参数在训练过程中不是“学习”的,但这并不意味着它们的值是不变的。通常情况下,超参数是固定的,我们认为只是模型中号代替,中号^ h。在此,超参数也可以被认为是先验参数。HMMH

混乱的源从使用的茎和修改超参数的ħ除了训练例程,很明显,参数期间Φ。在训练过程中可能会有多种动机来修饰H。一个示例是在训练过程中更改学习率,以提高优化例程的速度和/或稳定性。MHHΦ^H

区别的重要的一点是,结果,比如说标签预测,是基于模型参数Φ,而不是超参数ħYpredΦH

但是,该区别有一些警告,因此线条模糊。考虑例如群集的任务,特别是高斯混合模型(GMM)。此处设定的参数是,其中ˉ μ被设定的Ñ集群装置和ˉ σ设定的Ñ标准偏差,对于Ñ高斯内核。Φ={μ¯,σ¯}μ¯Nσ¯NN

您可能已经在这里直观地识别了超参数。它是簇的数目。因此,H = { N }。通常,使用数据D的一小部分子样本,将簇验证用于确定N先验。但是,我也可以基于某些准则修改我的高斯混合模型的学习算法,以在训练期间修改核数N。在这种情况下,超参数,Ñ变为设定参数的一部分Φ = { ˉ μˉ σÑ }NH={N}NDNNΦ={μ¯,σ¯,N}

然而,应该指出的是,结果,或预测的值,对于一个数据点在数据d是基于ģ 中号中号ˉ μˉ σ和不Ñ。也就是说,N个高斯核中的每一个将基于d与它们各自的μ和自身σ的距离,为d贡献一些似然值。这里没有明确涉及“参数” N,因此可以说它不是“真正”的模型参数。dDGMM(μ¯,σ¯)NNddμσN

简介:由于参数和超参数在设计模型和损失函数L时从业人员所采用的方式而引起的细微差别。我希望这有助于消除这两个词之间的歧义。ML


3

简而言之,

模型参数是模型自己学习的东西。例如,1)线性回归模型中自变量的权重或系数。2)自变量SVM的权重或系数。3)在决策树中拆分点。

模型超参数用于优化模型性能。例如,1)SVM中的内核和松弛。2)K在KNN中的值。3)决策树中树的深度。


他们不一定与优化模型有任何关系。超参数只是模型构建过程的参数。
肖恩·欧文

0

从数据中自动估计模型参数,并手动设置模型超参数,并将其用于过程中以帮助估计模型参数。

模型超参数通常称为参数,因为它们是机器学习的一部分,必须手动设置和调整。

基本上,参数是“模型”用于进行预测等的参数。例如,线性回归模型中的权重系数。超参数是有助于学习过程的参数。例如,K均值中的簇数,岭回归中的收缩因子。它们不会出现在最终的预测结果中,但对学习步骤后参数的外观有很大影响。

请参阅:https : //machinelearningmastery.com/difference-between-a-parameter-and-a-hyperparameter/

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.