机器学习和深度学习中参数概览

news/2025/3/26 17:05:08/

目录

1. 模型参数(Learnable Parameters)

1.1 神经网络中的核心参数

1.2 归一化层参数

1.3 其他特殊参数

2. 超参数(Hyperparameters)

2.1 优化相关超参数

2.2 训练流程超参数

2.3 模型结构超参数

2.4 正则化超参数

3. 传统机器学习模型的参数

3.1 线性模型

3.2 支持向量机(SVM)

3.3 决策树

3.4 集成模型(如随机森林、XGBoost)

4. 其他重要概念

4.1 可学习参数 vs. 固定参数

4.2 模型容量与参数量

4.3 参数初始化

5. 总结表格

关键区别:模型参数 vs. 超参数

常见问题

Q:为什么深度学习模型的参数量通常比传统模型大?

Q:如何选择超参数?

Q:为什么有些层没有参数?


以下是机器学习深度学习参数的全面概览,按类型、作用和示例分类整理,帮助你系统理解不同场景下的参数:


1. 模型参数(Learnable Parameters)

定义:在训练过程中通过优化器自动学习的参数,直接影响模型的输出。

1.1 神经网络中的核心参数
参数类型所属层/模块作用示例
权重(Weights)全连接层、卷积层、门控层控制输入对输出的影响程度线性回归的 ww,卷积核的参数
偏置(Bias)全连接层、卷积层、门控层允许模型平移输出,增强表达能力线性回归的 bb,每个卷积核的偏置
嵌入参数嵌入层(Embedding Layer)将离散符号映射到连续向量空间BERT的词向量矩阵
注意力参数自注意力层(Transformer)计算不同位置的注意力权重Q、K、V 的权重矩阵(如 WQ,WKWQ​,WK​)
门控参数LSTM/GRU控制信息流动(记忆、遗忘、输出)LSTM的遗忘门权重 WfWf​ 和偏置 bfbf​
1.2 归一化层参数
参数类型所属层作用示例
缩放因子(Gamma)批量归一化(BatchNorm)控制归一化后的数据缩放比例γγ(类似权重)
偏移量(Beta)批量归一化(BatchNorm)控制归一化后的数据偏移量ββ(类似偏置)
1.3 其他特殊参数
  • 位置编码(Positional Encoding):在Transformer中为序列提供位置信息(如可学习的位置向量)。
  • 残差连接参数:残差网络(ResNet)中跳跃连接的权重(如果存在)。
  • 解码器参数:生成模型(如GPT)中解码器的权重和偏置。

2. 超参数(Hyperparameters)

定义:由开发者手动设置的参数,控制训练过程,但不直接参与模型学习。

2.1 优化相关超参数
参数类型作用示例
学习率(Learning Rate)控制参数更新的步长lr=2e-5(BERT微调常用值)
优化器类型选择优化算法(如Adam、SGD)optimizer=torch.optim.Adam
权重衰减(Weight Decay)正则化强度(类似L2正则化)weight_decay=0.01
2.2 训练流程超参数
参数类型作用示例
批量大小(Batch Size)每次迭代的样本数量batch_size=32
训练轮次(Epochs)遍历整个数据集的次数num_epochs=10
早停(Early Stopping)根据验证损失停止训练的条件patience=3(连续3轮无提升则停止)
2.3 模型结构超参数
参数类型作用示例
隐藏层大小神经网络中每层神经元的数量hidden_dim=256
卷积核大小卷积层的滤波器尺寸kernel_size=3(3x3卷积核)
注意力头数Transformer的多头注意力数量num_heads=8
2.4 正则化超参数
参数类型作用示例
Dropout概率随机丢弃神经元的概率dropout=0.5
L1/L2正则化系数控制权重的稀疏性或平滑性l2_reg=0.001

3. 传统机器学习模型的参数

3.1 线性模型
  • 参数:权重(Weights)和偏置(Bias)。
  • 例子
    • 线性回归:y=w1x1+w2x2+⋯+by=w1​x1​+w2​x2​+⋯+b。
    • 逻辑回归:分类问题中的权重和偏置。
3.2 支持向量机(SVM)
  • 参数
    • 权重向量(ww):定义决策边界的方向。
    • 偏置(bb):决策边界的偏移量。
3.3 决策树
  • 参数
    • 分割点(Split Points):特征阈值(如“年龄 > 30”)。
    • 叶节点值(Leaf Values):分类或回归的预测值。
3.4 集成模型(如随机森林、XGBoost)
  • 参数
    • 树的结构参数:分割点、叶节点值。
    • 超参数:树的数量、最大深度、学习率(梯度提升树)。

4. 其他重要概念

4.1 可学习参数 vs. 固定参数
  • 可学习参数:通过反向传播更新(如权重、偏置)。
  • 固定参数:手动设置或通过固定规则计算(如池化层的窗口大小)。
4.2 模型容量与参数量
  • 参数量:模型复杂度的指标,通常深度学习模型(如BERT)的参数量可达亿级。
  • 过拟合风险:参数过多可能导致过拟合,需通过正则化或早停缓解。
4.3 参数初始化
  • 作用:影响训练收敛速度和稳定性。
  • 常见方法
    • 权重初始化:Xavier、He初始化(针对不同激活函数)。
    • 偏置初始化:通常初始化为0或小常数。

5. 总结表格

类型示例参数所属模型/层作用
模型参数权重、偏置、嵌入向量、注意力权重神经网络、Transformer、LSTM学习输入与输出之间的映射关系
超参数学习率、批量大小、隐藏层大小全局训练配置、模型结构设计控制训练过程和模型复杂度
传统模型参数线性回归的权重、决策树的分割点线性回归、SVM、决策树定义模型的决策规则

关键区别:模型参数 vs. 超参数

类别定义是否可学习调整方式
模型参数通过训练数据学习的参数优化器自动调整(如Adam)
超参数开发者手动设置的训练控制参数人工或超参数搜索工具(如网格搜索)

常见问题

Q:为什么深度学习模型的参数量通常比传统模型大?
  • 原因
    • 深度学习模型(如CNN、Transformer)需要捕捉复杂模式,需更多参数。
    • 例如,BERT的参数量约1.1亿,而线性回归只有几十个参数。
Q:如何选择超参数?
  • 方法
    • 经验法则:学习率从 1e−31e−3 开始尝试,批量大小从32/64开始。
    • 交叉验证:通过验证集选择最佳组合。
    • 自动化工具:使用 optunaRay Tune 进行超参数优化。
Q:为什么有些层没有参数?
  • 例子
    • 池化层:通过固定规则(如取最大值)下采样,不涉及学习。
    • 激活层:如ReLU仅执行 f(x)=max⁡(0,x)f(x)=max(0,x),无需参数。

http://www.ppmy.cn/news/1582620.html

相关文章

屏幕刷新机制(一):机制

屏幕刷新机制(一):机制 屏幕刷新机制(二):Choreographer、SurfaceFlinger 综述 屏幕整体刷新机制:就是通过Choreographer、SurfaceFlinger,以垂直同步技术(VSYNC)加三重缓冲技术(T…

第六章 | Solidity 函数与可见性修饰符全面讲解

📚 第六章 | Solidity 函数与可见性修饰符全面讲解 ——写对函数,合约安全又高效! ✅ 本章导读 智能合约中,函数 是一切交互的入口。 不管你是发币、发 NFT、做 DeFi,所有的链上操作都要通过函数来完成。 而 Solidi…

算法每日一练 (18)

💢欢迎来到张胤尘的技术站 💥技术如江河,汇聚众志成。代码似星辰,照亮行征程。开源精神长,传承永不忘。携手共前行,未来更辉煌💥 文章目录 算法每日一练 (18)删除并获得点数题目描述解题思路解题…

【Keil5-开发技巧】

Keil5-开发技巧 ■ Keil5利用AStyle插件格式化代码第一步:下载AStyle插件第二步:添加AStyle插件第三步:AStyle插件介绍■ 一键转UTF-8编码■ Keil5利用AStyle插件格式化代码 第一步:下载AStyle插件 AStyle下载 第二步:添加AStyle插件 解压后 astyle-3.6.7-x64 在重命…

python 实现一个简单的window 任务管理器

import tkinter as tk from tkinter import ttk import psutil# 运行此代码前,请确保已经安装了 psutil 库,可以使用 pip install psutil 进行安装。 # 由于获取进程信息可能会受到权限限制,某些进程的信息可能无法获取,代码中已经…

利用matlab实现贝叶斯优化算法(BO)优化梯度提升决策树(GBDT)

📌【导读】调GBDT超参数就像同时驯服多匹野马——学习率、树深度、叶子节点数等参数互相拉扯,手动调参效率堪比"海底捞月"。本文教你用Matlab的贝叶斯优化工具,像给模型装上GPS导航一样,20分钟自动锁定最优参数组合&…

弱网测试:全链路实战、高阶策略与自动化落地

在移动互联网时代,网络环境的不确定性成为用户体验的“隐形杀手”。弱网测试不仅是质量保障的必备环节,更是提升用户留存率和业务转化率的战略手段。 本文将从 工具链深度配置、复杂场景模拟、性能优化底层逻辑 和 自动化流水线集成 四个维度,彻底解析弱网测试的完整方法论…

【Python Cookbook】数据结构和算法(四)

目录 案例 目录 案例 数据结构和算法(一)1.将序列分解为单独的变量2.解压可迭代对象赋值给多个变量3.保留最后 N 个元素4.查找最大或最小的 N 个元素5.实现一个优先级队列数据结构和算法(三)11.命名切片12.序列中出现次数最多的元…