【深度学习】关于模型训练的一些基本概念

基本概念

  1. 泛化能力
    指模型离开训练集后,在测试集(任意其他数据集)上的表现水平
  2. 过拟合
    泛化能力差,在训练集表现良好,但在其他数据集表现差
    通常发生在模型复杂度显著高于实际对象,或对训练集的学习次数过多的情形
    俗称:小题大做 或 学傻了(把样本噪声都学会了)
  3. 欠拟合
    在训练集和测试机表现都不行
    通常发生在模型复杂度显著低于实际对象,或对训练集的学习次数太少的情形
    要么是 太蠢了学不会(一次函数怎么都没法拟合二次函数),要么就是 偷懒没有好好学
  4. 正则化(权重衰减)
    这俩是同一个东西,是为了遏制模型过拟合,从而对模型的权重参数进行惩罚,权重越大,惩罚越严厉
    通常用权重向量W的欧氏距离作为惩罚的参考

优化算法

  1. AdaGrad算法:
    核心:学得越快,学得越慢
    学习过程中的梯度会通过一定方式影响学习率,总体来说,梯度越大,学习率衰减越快,训练后期,模型几乎不再从训练中学习
    有效解决了学习率小,模型收敛慢;学习率大,后期难收敛 的两难问题
    但是由于其后期学习率过小,导致其难以发现最优解
  2. RNSProp算法:
    几乎等效于:只用最近的几个梯度来调整学习率
    有效解决了AdaGrad算法,在训练后期,学习率一定趋近于0的问题
    (有点像卡尔曼滤波的状态外推方程)
  3. Adam算法

http://www.niftyadmin.cn/n/5845452.html

相关文章

JAVA异步的UDP 通讯-服务端

1. 使用NIO实现非阻塞UDP通信 通过DatagramChannel和Selector,可以实现非阻塞的UDP通信,从而高效地处理多个客户端的请求。 示例代码: import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer; impo…

pytorch 不同版本之间的模型参数不通用,高版本的模型参数不能用在低版本中,torch2.4 保存的模型参数 无法在1.10倒入

从错误信息来看,问题的核心是 **模型参数形状不匹配**。具体来说,保存的模型参数(checkpoint)中的某些张量形状与当前模型的期望形状不一致。例如: - tcn.net.0.conv1.weight_v 的期望形状是 [64, 32, 7],…

mac环境下,ollama+deepseek+cherry studio+chatbox本地部署

春节期间,deepseek迅速火爆全网,然后回来上班,我就浅浅的学习一下,然后这里总结一下,我学习中,总结的一些知识点吧,分享给大家。具体的深度安装部署,这里不做赘述,因为网…

kafka服务端之延时操作前传--时间轮

文章目录 背景时间轮层级时间轮时间轮降级kafka中的时间轮kafka如何进行时间轮运行 背景 Kafka中存在大量的延时操作,比如延时生产、延时拉取和延时删除等。Kafka并没有使用JDK自带的Timer或DelayQueue来实现延时的功能,而是基于时间轮的概念自定义实现…

Linux在x86环境下制作ARM镜像包

在x86环境下制作ARM镜像包(如qemu.docker),可以通过QEMU和Docker的结合来实现。以下是详细的步骤: 安装QEMU-user-static QEMU-user-static是一个静态编译的QEMU二进制文件,用于在非目标架构上运行目标架构的二进制文…

【Spring】什么是Spring?

什么是Spring? Spring是一个开源的轻量级框架,是为了简化企业级开发而设计的。我们通常讲的Spring一般指的是Spring Framework。Spring的核心是控制反转(IoC-Inversion of Control)和面向切面编程(AOP-Aspect-Oriented Programming)。这些功能使得开发者…

Win10 部署llama Factory 推荐教程和遇到的问题

教程 【大模型微调】使用Llama Factory实现中文llama3微调_哔哩哔哩_bilibili 大模型微调!手把手带你用LLaMA-Factory工具微调Qwen大模型!有手就行,零代码微调任意大语言模型_哔哩哔哩_bilibili 遇到问题解决办法 pytorch gpu国内镜像下载…

Mysql疑难报错排查 - Field ‘XXX‘ doesn‘t have a default value

项目场景: 数据库环境 :mysql8; 工程使用:MyBatisPlus 表情况: 问题描述 某一个插入语句使用了 MyBatisPlus 的 save 方法,因为end_time1 end_time2都并没有值,所以在MyBatisPlus默认情况下,…