Keras 3.9.0版本发布:新增重计算API与丰富图像增强层
Keras作为深度学习领域广受欢迎的高层神经网络API,近期发布了3.9.0版本更新。本次更新不仅带来了性能优化相关的重计算(Rematerialization)API,还新增了多项实用的图像增强层和数学运算操作,进一步丰富了深度学习模型构建的工具箱。
核心特性解析
1. 精细化重计算控制
新版本引入了keras.RematScope和keras.rematAPI,为模型训练过程中的内存优化提供了更精细的控制手段。重计算技术通过牺牲部分计算性能来减少内存占用,特别适用于大模型训练场景。
开发者现在可以:
- 仅对特定大小的层启用重计算
- 针对选定的层集合应用该技术
- 选择性重计算激活值
这一改进使得内存优化策略能够更加精准地适配模型架构特点,在内存受限环境下训练更大模型成为可能。
2. 图像增强层扩展
3.9.0版本显著扩充了图像处理能力,新增多个实用增强层:
AugMix和CutMix:实现先进的图像混合增强技术RandomInvert:随机颜色反转增强RandomErasing:随机区域擦除增强RandomGaussianBlur:随机高斯模糊处理RandomPerspective:随机透视变换增强
这些层的加入使得开发者能够更方便地构建鲁棒的计算机视觉模型,特别是在数据量有限的情况下,通过多样化的数据增强提升模型泛化能力。
3. 数学运算增强
基础运算能力得到扩展,新增:
rot90:矩阵旋转操作rearrange:Einops风格张量重组signbit和polar:复数运算支持- 图像专用的
perspective_transform和gaussian_blur操作
这些底层运算的丰富为自定义层和复杂模型构建提供了更强大的基础支持。
其他重要改进
-
模型安全:修复了NPZ格式模型文件可能存在的对象反序列化问题,增强了模型存储安全性。
-
跨框架支持:优化了
JaxLayer和FlaxLayer的dtype参数支持,提升了跨框架兼容性。 -
性能优化:OpenVINO后端增加了更多算子支持,提升了在该平台上的运行效率。
-
易用性改进:
BinaryAccuracy指标现在支持布尔型输入Resizing层新增antialias抗锯齿参数- 新增
RMSNormalization层
技术影响与应用建议
本次更新中重计算API的引入对大规模模型训练具有重要意义。开发者可以针对模型特点设计精细化的内存优化策略,例如:
- 对大型Transformer层启用重计算
- 保持小型全连接层的原始计算方式
- 仅对特定瓶颈层应用该技术
图像增强层的丰富使得计算机视觉领域的迁移学习和少样本学习更加便利。建议开发者:
- 组合使用多种增强技术提升数据多样性
- 通过
AugMix和CutMix实现先进的混合增强策略 - 利用
RandomPerspective增强模型对视角变化的鲁棒性
数学运算的扩展为自定义层开发提供了更多可能性,特别是在信号处理和复数运算领域。新加入的rearrange操作特别适合需要复杂张量重排的场景,可以替代传统的转置和重塑操作,使代码更加清晰易读。
Keras 3.9.0通过这一系列更新,进一步巩固了其作为深度学习首选工具库的地位,特别是在模型构建灵活性和训练优化方面提供了更多专业级工具。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0211- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
MarkFlowy一款 AI Markdown 编辑器TSX01