如何区分参数和超参数
相信所有人刚开始应用机器学习时,都会被两个术语混淆。
计算机学科里有太多的术语,而且许多术语的使用并不一致。哪怕是相同的术语,不同学科的人理解一定有所不同。
比如说:“模型参数(model parameter)”和“模型超参数(model Hyperparameter)”。
对于初学者来说,这些没有明确定义的术语肯定很令人困惑。尤其是对于些来自统计学或经济学领域的人。
我们来仔细研究一下这些条款。
什么是模型参数?
模型参数是模型内部的配置变量,其值可以根据数据进行估计。
-
模型在进行预测时需要它们。
-
它们的值定义了可使用的模型。
-
他们是从数据估计或获悉的。
-
它们通常不由编程者手动设置。
-
他们通常被保存为学习模型的一部分。
参数是机器学习算法的关键。它们通常由过去的训练数据中总结得出。
在经典的机器学习文献中,我们可以将模型看作假设,将参数视为对特定数据集的量身打造的假设。
最优化算法是估计模型参数的有效工具。
-
统计:在统计学中,您可以假设一个变量的分布,如高斯分布。高斯分布的两个参数是平均值(μ)和标准偏差(西格玛)。这适用于机器学习,其中这些参数可以从数据中估算出来并用作预测模型的一部分。
-
编程:在编程中,您可以将参数传递给函数。在这种情况下,参数是一个函数参数,它可能具有一个值范围之一。在机器学习中,您使用的特定模型是函数,需要参数才能对新数据进行预测。
模型是否具有固定或可变数量的参数决定了它是否可以被称为“参数”或“非参数”。
模型参数的一些示例包括:
-
神经网络中的权重。
-
支持向量机中的支持向量。
-
线性回归或逻辑回归中的系数。
什么是模型超参数?
模型超参数是模型外部的配置,其值无法从数据中估计。
-
它们通常用于帮助估计模型参数。
-
它们通常由人工指定。
-
他们通常可以使用启发式设置。
-
他们经常被调整为给定的预测建模问题。
我们虽然无法知道给定问题的模型超参数的最佳值,但是我们可以使用经验法则,在其他问题上使用复制值,或通过反复试验来搜索最佳值。
当机器学习算法针对特定问题进行调整时(例如,使用网格搜索或随机搜索时),那么正在调整模型的超参数或顺序以发现导致最熟练的模型的参数预测。
-
“许多模型有不能从数据直接估计的重要参数。例如,在K近邻分类模型中......因为没有可用于计算适当值的分析公式,这种类型的模型参数被称为调整参数。”
- 第64-65页,《应用预测模型》,2013
如果模型超参数被称为模型参数,会造成很多混淆。克服这种困惑的一个经验法则如下:
如果必须手动指定模型参数,那么它可能是一个模型超参数。
模型超参数的一些例子包括:
-
训练神经网络的学习速率。
-
用于支持向量机的C和sigma超参数。
-
K最近邻的K。
总之,模型参数是根据数据自动估算的。但模型超参数是手动设置的,并且在过程中用于帮助估计模型参数。
模型超参数通常被称为参数,因为它们是必须手动设置和调整的机器学习的一部分。
相关文章
- 如何正确设置Java线程池参数?「建议收藏」
- 【说站】js中return如何结束生成器
- ue4 弱指针_智能指针如何实现自动释放
- 如何在安卓手机上编辑Excel表格?
- Redis如何存储对象与集合示例详解
- redis之如何配置jedisPool参数详解大数据
- Oracle 视图 ALL_TRIGGER_COLS 官方解释,作用,如何使用详细说明
- Oracle 参数 CIRCUITS 官方解释,作用,如何配置最优化建议
- Oracle 参数 DB_SECUREFILE 官方解释,作用,如何配置最优化建议
- Oracle 参数 ENABLE_PER_PDB_DRCP 官方解释,作用,如何配置最优化建议
- Oracle 参数 GCS_SERVER_PROCESSES 官方解释,作用,如何配置最优化建议
- Oracle 参数 LOCK_NAME_SPACE 官方解释,作用,如何配置最优化建议
- Oracle 参数 MAX_PDBS 官方解释,作用,如何配置最优化建议
- Oracle 参数 NLS_TIMESTAMP_FORMAT 官方解释,作用,如何配置最优化建议
- Oracle 参数 OPEN_LINKS 官方解释,作用,如何配置最优化建议
- Oracle 参数 PDB_OS_CREDENTIAL 官方解释,作用,如何配置最优化建议
- Oracle 参数 PLSQL_CODE_TYPE 官方解释,作用,如何配置最优化建议
- Oracle 参数 PLSQL_WARNINGS 官方解释,作用,如何配置最优化建议
- Oracle 参数 SESSION_MAX_OPEN_FILES 官方解释,作用,如何配置最优化建议
- Oracle 参数 SHARED_POOL_RESERVED_SIZE 官方解释,作用,如何配置最优化建议
- ?如何使用Linux命令行?(怎么进入linux命令行)
- 如何平衡部件采购?库克以M1为例:自己“做得更好”就会自己量产
- 如何使用 Redis 内存快照功能,保障数据的安全与备份?(redis内存快照)
- 没有经验容易上当,教你如何避免尴尬:MySQL破解教程。(mysql破解教程)
- Linux命令行如何换行?较为详细的介绍与教程。(linux命令行换行)
- 微擎如何利用Redis最大化提升性能(微擎需扩展redis)
- 如何在MySQL中使用D120数据类型(mysql中d120)
- 如何用一条SQL更新MySQL数据(mysql一条sql更新)
- 如何解决Redis设置参数错误的问题(redis设置参数错误)