当前位置: 首页 > news >正文

Note2.2 机器学习训练技巧:Batch and Momentum(Machine Learning by Hung-yi Lee)

目录

Batch

1.基础概念

2.Small Batch与Large Batch对比

2.1运行时间

2.2 epoch数量相同时,训练结果 

2.3 训练结果相同时,small batch表现仍然更好

2.4总结

Momentum

原理 


small batch和momentum都是训练的常见技巧,可以escape critical points,取得更好的结果

Batch

1.基础概念

Batch(批次) 是模型在一次前向传播(Forward Pass)和反向传播(Backward Pass)中同时处理的一组样本(数据点)。Batch Size 是一个超参数,表示每个 Batch 中包含的样本数量(例如 32、64、128)。

 Epoch(轮次) :1 Epoch 表示模型完整遍历整个训练集一次(即所有数据被模型学习了一遍)。

Shuffle:打乱数据顺序

2.Small Batch与Large Batch对比

2.1运行时间

如果不考虑并行运算

 但实际运行时,使用了GPU,并行处理大量数据

 Small Batch完成一个epoch中需要的次数更多,所以实际上Batch越大,完成一个epoch速度越快

2.2 epoch数量相同时,训练结果 

与直觉相反的是,small batch的训练效果更好,noisy的gradient反而有助于训练。

实验结果:

一种可能解释

small batch每次训练资料不同,可能在L1上卡住了,但在L2上可以继续训练

2.3 训练结果相同时,small batch表现仍然更好

一个神奇的事实是,即使增加Large batch的训练轮数,把它训练到与small batch差不多的accuracy,测试集上small batch性能仍然更好

以下的实验测试了六种常见神经网络,均支持这一结论。

一种可能的解释

minima也有好坏之分:flat minima优于sharp minima。如果training data和testing data存在mismatch,flat minima结果相差不大,而sharp minima结果相差很多。而small batch因为noisy,可以跳出很窄的“峡谷”,更难被sharp minima困住

2.4总结

能不能结合二者优点,既速度快,又结果好呢?这是有可能的,很多文章都在探讨这一问题

Momentum

Momentum是一种可以对抗local minima和saddle point的技术。momentum在物理上是动量的意思,此方法运用了训练时gradient的“动量”,也可以说“惯性”,来达到效果

原理 

(vanilla:普通的) 

 

 

http://www.lqws.cn/news/560143.html

相关文章:

  • vue-29(创建 Nuxt.js 项目)
  • 创客匠人视角:创始人 IP 打造为何成为知识变现的核心竞争力
  • electron中显示echarts
  • 微机系统 第八章 模拟接口
  • Windows 合并多个txt到一个txt文件中 (txt文件的合并与拆分)
  • 【Go语言-Day 10】深入指针应用:解锁函数“引用传递”与内存分配的秘密
  • 如何让ChatGPT模仿人类写作,降低AIGC率?
  • 设计模式-代理模式、装饰者模式
  • [Java 基础]LinkedList
  • 告别脚本!用浏览器为 AWS CLI 实现真正的 Cognito 单点登录
  • 基于Spring Boot的网上购物平台设计与实现
  • 【软考--软件设计师】10.2 关系型数据库
  • 网络安全体系结构和安全防护
  • Linux内核网络协议栈深度解析:面向连接的INET套接字实现
  • 【AI实践】Mac一天熟悉AI模型智能体应用(百炼版)
  • 前端React和Vue框架的区别
  • Spring AI Alibaba 入门指南:打造企业级 AI 应用
  • 全面拥抱vue3
  • 编译安装交叉工具链 riscv-gnu-toolchain
  • 鸿蒙 Scroll 组件深度解析:丝滑滚动交互全场景实现
  • uni-app项目实战笔记26--uniapp实现富文本展示
  • 中国农村统计年鉴-Excel版(1985-2024年)
  • 机器学习框架(1)
  • c#激光设备行业ERP软件进销存软件库存管理软件财务管理软件
  • kubernetes部署3节点高可用elasticsearch v8.14.3
  • OpenCV图像噪点消除五大滤波方法
  • Cesium快速入门到精通系列教程十一:Cesium1.74中高性能渲染上万Polyline
  • Java笔记
  • 机器学习配置环境
  • Ultralytics YOLO超参数调整指南(一)