首页
/ Keras 3.9.0版本发布:新增重计算API与丰富图像增强层

Keras 3.9.0版本发布:新增重计算API与丰富图像增强层

2025-05-31 05:50:59作者:翟萌耘Ralph

Keras作为深度学习领域广受欢迎的高层神经网络API,近期发布了3.9.0版本更新。本次更新不仅带来了性能优化相关的重计算(Rematerialization)API,还新增了多项实用的图像增强层和数学运算操作,进一步丰富了深度学习模型构建的工具箱。

核心特性解析

1. 精细化重计算控制

新版本引入了keras.RematScopekeras.rematAPI,为模型训练过程中的内存优化提供了更精细的控制手段。重计算技术通过牺牲部分计算性能来减少内存占用,特别适用于大模型训练场景。

开发者现在可以:

  • 仅对特定大小的层启用重计算
  • 针对选定的层集合应用该技术
  • 选择性重计算激活值

这一改进使得内存优化策略能够更加精准地适配模型架构特点,在内存受限环境下训练更大模型成为可能。

2. 图像增强层扩展

3.9.0版本显著扩充了图像处理能力,新增多个实用增强层:

  • AugMixCutMix:实现先进的图像混合增强技术
  • RandomInvert:随机颜色反转增强
  • RandomErasing:随机区域擦除增强
  • RandomGaussianBlur:随机高斯模糊处理
  • RandomPerspective:随机透视变换增强

这些层的加入使得开发者能够更方便地构建鲁棒的计算机视觉模型,特别是在数据量有限的情况下,通过多样化的数据增强提升模型泛化能力。

3. 数学运算增强

基础运算能力得到扩展,新增:

  • rot90:矩阵旋转操作
  • rearrange:Einops风格张量重组
  • signbitpolar:复数运算支持
  • 图像专用的perspective_transformgaussian_blur操作

这些底层运算的丰富为自定义层和复杂模型构建提供了更强大的基础支持。

其他重要改进

  1. 模型安全:修复了NPZ格式模型文件可能存在的对象反序列化问题,增强了模型存储安全性。

  2. 跨框架支持:优化了JaxLayerFlaxLayerdtype参数支持,提升了跨框架兼容性。

  3. 性能优化:OpenVINO后端增加了更多算子支持,提升了在该平台上的运行效率。

  4. 易用性改进

    • BinaryAccuracy指标现在支持布尔型输入
    • Resizing层新增antialias抗锯齿参数
    • 新增RMSNormalization

技术影响与应用建议

本次更新中重计算API的引入对大规模模型训练具有重要意义。开发者可以针对模型特点设计精细化的内存优化策略,例如:

  • 对大型Transformer层启用重计算
  • 保持小型全连接层的原始计算方式
  • 仅对特定瓶颈层应用该技术

图像增强层的丰富使得计算机视觉领域的迁移学习和少样本学习更加便利。建议开发者:

  • 组合使用多种增强技术提升数据多样性
  • 通过AugMixCutMix实现先进的混合增强策略
  • 利用RandomPerspective增强模型对视角变化的鲁棒性

数学运算的扩展为自定义层开发提供了更多可能性,特别是在信号处理和复数运算领域。新加入的rearrange操作特别适合需要复杂张量重排的场景,可以替代传统的转置和重塑操作,使代码更加清晰易读。

Keras 3.9.0通过这一系列更新,进一步巩固了其作为深度学习首选工具库的地位,特别是在模型构建灵活性和训练优化方面提供了更多专业级工具。

登录后查看全文
热门项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
166
2.05 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
openHiTLS-examplesopenHiTLS-examples
本仓将为广大高校开发者提供开源实践和创新开发平台,收集和展示openHiTLS示例代码及创新应用,欢迎大家投稿,让全世界看到您的精巧密码实现设计,也让更多人通过您的优秀成果,理解、喜爱上密码技术。
C
88
568
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
60
17
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
0
cjoycjoy
一个高性能、可扩展、轻量、省心的仓颉应用开发框架。IoC,Rest,宏路由,Json,中间件,参数绑定与校验,文件上传下载,OAuth2,MCP......
Cangjie
94
15
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
199
279
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
17
0
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
954
564