首页
/ Keras 3.10.0 版本发布:支持大模型权重分片与多项新特性

Keras 3.10.0 版本发布:支持大模型权重分片与多项新特性

2025-05-31 19:27:31作者:蔡丛锟

Keras 作为深度学习领域广受欢迎的高级神经网络 API,其最新版本 3.10.0 带来了一系列令人兴奋的新功能和改进。本次更新不仅解决了大模型保存的痛点问题,还引入了多项实用的新层、损失函数和优化器,进一步丰富了深度学习工作者的工具箱。

大模型权重分片:突破单文件限制

在深度学习模型规模不断增长的今天,保存超大模型权重文件成为了一个实际挑战。Keras 3.10.0 创新性地引入了权重分片功能,通过 model.save() 方法的 max_shard_size 参数,开发者可以指定权重文件的最大分片大小。当模型权重超过这个阈值时,系统会自动将其分割为多个文件保存。

这一特性特别适合以下场景:

  • 保存参数量极大的模型(如数十亿参数的大语言模型)
  • 在存储空间有限的设备上保存模型
  • 需要通过网络传输大型模型的情况

使用时只需简单指定分片大小:

model.save("my_model.keras", max_shard_size="2GB")  # 每个分片不超过2GB

加载分片模型同样简单,使用常规的 load_model() 方法即可自动识别并合并所有分片。

新增组件丰富深度学习工具箱

优化器与损失函数

本次更新引入了 Muon 优化器,这是一种新型的优化算法,特别适合处理非凸优化问题,在某些任务上可能比传统优化器表现更优。

损失函数方面新增了 CategoricalGeneralizedCrossEntropy,这是分类交叉熵的广义版本,提供了更灵活的损失计算方式。同时,SparseCategoricalCrossentropy 现在支持 axis 参数,让开发者能够更精确地控制计算维度。

图像处理能力增强

新增的 RandomElasticTransform 层为数据增强提供了弹性变形能力,可以生成生物组织的变形效果,特别适合医学图像分析等应用场景。配套的操作 elastic_transform 也加入了 keras.ops.image 模块。

信号处理相关操作

Keras 3.10.0 新增了一系列信号处理相关的操作:

  • bartlett:生成巴特利特窗
  • blackman:生成布莱克曼窗
  • hamming:生成汉明窗
  • angle:计算复数的相位角

这些操作对于音频处理、信号分析等领域的开发者特别有价值。

后端引擎的显著改进

PyTorch 后端

PyTorch 后端现在支持 cuDNN 加速的 LSTM 实现,这将显著提升循环神经网络在支持 CUDA 设备上的训练速度。

TensorFlow 后端

TensorFlow 后端现在支持 tf.RaggedTensor 作为 Embedding 层的输入,处理不规则序列数据更加方便。同时增加了变量级别的 synchronization 支持,为分布式训练提供了更细粒度的控制。

OpenVINO 后端

OpenVINO 推理后端新增支持超过 50 个 Keras 操作,大大扩展了在该后端上可运行的模型范围,提升了推理效率。

开发者生态持续繁荣

本次更新吸引了来自全球的 30 多位新贡献者加入 Keras 开发社区,体现了项目旺盛的生命力和广泛的开发者基础。社区成员的多样化背景也为 Keras 带来了更丰富的视角和创新思路。

升级建议与应用场景

对于正在使用 Keras 进行深度学习开发的团队,3.10.0 版本值得考虑升级,特别是:

  • 需要处理超大模型的团队可以立即受益于权重分片功能
  • 从事计算机视觉研究的团队可以利用新的图像增强层提升模型鲁棒性
  • 使用 PyTorch 后端进行序列建模的开发者将获得性能提升
  • 需要高效推理的工业应用可以充分利用 OpenVINO 后端的新增支持

Keras 3.10.0 的这些改进再次证明了其作为深度学习首选框架之一的地位,通过不断解决实际开发中的痛点问题,为研究者和工程师提供了更强大、更灵活的工具集。

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

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
179
263
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
869
514
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
130
183
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
295
331
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
333
1.09 K
harmony-utilsharmony-utils
harmony-utils 一款功能丰富且极易上手的HarmonyOS工具库,借助众多实用工具类,致力于助力开发者迅速构建鸿蒙应用。其封装的工具涵盖了APP、设备、屏幕、授权、通知、线程间通信、弹框、吐司、生物认证、用户首选项、拍照、相册、扫码、文件、日志,异常捕获、字符、字符串、数字、集合、日期、随机、base64、加密、解密、JSON等一系列的功能和操作,能够满足各种不同的开发需求。
ArkTS
18
0
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.08 K
0
kernelkernel
deepin linux kernel
C
22
5
WxJavaWxJava
微信开发 Java SDK,支持微信支付、开放平台、公众号、视频号、企业微信、小程序等的后端开发,记得关注公众号及时接受版本更新信息,以及加入微信群进行深入讨论
Java
829
22
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
601
58