两个词只差一个字,含义却完全不同:参数是模型在训练中自己学出来的,超参数是人提前设定的。本文用做菜放盐与定火候的类比讲清这条分界,列举常见超参数,并说明网格搜索、随机搜索等调参方式及其代价。

核心要点

  • 参数由数据学得,超参数由人提前设定
  • 学习率、层数、批量大小都是典型的超参数
  • 调超参数要用验证集,不能拿测试集反复试

盐的多少与火候大小

做一道菜,盐放多少是厨师边尝边调整的,而火候大小、炒几分钟是下锅前就设定好的。模型里的参数就是那些在训练过程中被数据一点点调出来的数,超参数则是训练开始前由人指定的设置。

具体来说,神经网络里每条连接上的权重、每个神经元的偏置都是参数,数量可能达到几十亿;而网络有多少层、每层多少个单元、学习率设多大、每次喂多少条数据、训练多少轮,这些是超参数,通常只有几十个。

关键区别在于谁改

参数由算法自动更新,人不需要也不应该手动去改;超参数无法从数据里直接学到,需要人根据经验和实验来定。因此常说,训练是机器做的事,调超参数是工程师的手艺活。

怎么定?最朴素的是网格搜索,把候选值两两组合全部试一遍;更聪明的是随机搜索,在高维空间里随机抽样,往往用更少的试验找到不错的组合;还有贝叶斯优化等方法,会根据已有结果推测下一组该试哪里。

调参的代价与纪律

每次试验都要重新训练一遍模型,代价不低,因此调参要讲策略:先用小规模数据和少量轮次快速筛掉明显不行的区间,再在有希望的区域精细搜索,同时记录每次试验的配置与结果。

最后提醒一条纪律:调超参数应当依据验证集上的表现。如果拿测试集反复试不同设置、挑成绩最好的那组,测试集就变成了另一份验证集,你得到的分数依然偏乐观。

常见问题

有没有一劳永逸的“万能超参数”?

没有,但有不少经验起点。同类任务上公开的最佳配置可以作为初始值,通常能省下大量试错。真正可靠的做法仍是结合自身数据做几轮搜索,因为最优超参数高度依赖数据规模、特征分布和评价标准。

本文为 AI 科普内容,仅用于知识普及,不构成任何技术选型、投资或职业决策建议。