当前位置:首页 > 科技  > 软件

Keras 3.0正式发布!一统TF/PyTorch/Jax三大后端框架,网友:改变游戏规则

来源: 责编: 时间:2023-11-30 09:28:48 380观看
导读Keras 3.0正式发布,被誉为改变了机器学习游戏规则:不仅支持TensorFlow、PyTorch、Jax三大框架作为后端,还能在它们之间无缝切换,甚至混合使用。图片Keras之父François Chollet认为,这样至少可以获得4大好处:始终让模型获得

Keras 3.0正式发布,被誉为改变了机器学习游戏规则:KZj28资讯网——每日最新资讯28at.com

不仅支持TensorFlow、PyTorch、Jax三大框架作为后端,还能在它们之间无缝切换,甚至混合使用。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

Keras之父François Chollet认为,这样至少可以获得4大好处:KZj28资讯网——每日最新资讯28at.com

  • 始终让模型获得最佳性能:

JAX通常在GPU、CPU各种PU上都最快,但不使用XLA(加速线性代数)的Tensorflow在GPU上偶尔更快。KZj28资讯网——每日最新资讯28at.com

Keras 3.0能够动态为模型提供最佳性能的后端,而无需更改代码,保证以最高效率运行。KZj28资讯网——每日最新资讯28at.com

  • 解锁多个生态系统

任何Keras 3模型都可以作为PyTorch模块实例化,可以导出为TF的SavedModel,或者可以实例化为无状态的 JAX 函数。KZj28资讯网——每日最新资讯28at.com

这意味着可以将Keras 3模型与PyTorch生态的包,TensorFlow中的部署工具或生产工具,以及JAX大规模TPU训练基础设施一起使用,获得机器学习世界所提供的一切。KZj28资讯网——每日最新资讯28at.com

  • 在开源社区扩大影响力

如果使用纯TensorFlow或PyTorch实现一个开源模型,都只有大约一半的人能使用。KZj28资讯网——每日最新资讯28at.com

但如果使用Keras 3,任何人无论偏好哪个框架,(即使不是 Keras 用户)都能立刻使用。在不增加开发成本的情况下,使影响力翻倍。KZj28资讯网——每日最新资讯28at.com

  • 使用任何来源的数据管道

无论使用哪个后端,Keras 3 都能与tf.data.Dataset对象、PyTorch DataLoader对象、NumPy 数组、Pandas数据框兼容。KZj28资讯网——每日最新资讯28at.com

这意味着可以在PyTorch DataLoader上训练Keras 3 + TensorFlow模型,或在 tf.data.Dataset上训练Keras 3 + PyTorch模型。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

不少人都对这一进展表示祝贺,项目参与者、谷歌高级工程师Aakash Kumar Nain认为:KZj28资讯网——每日最新资讯28at.com

Keras 3再次展示了心智模型的重要性。开发API 是一方面,而开发一个拥有出色心智模型的API则完全是另一个层次的工程实践。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

也有开发者表示:KZj28资讯网——每日最新资讯28at.com

很高兴能够通过熟悉的Keras API获得框架可选性,让简单的用例变得容易,复杂的用例也成为可能。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

欢迎来到多框架机器学习

Keras 3.0发布公告中开篇写到,欢迎来到多框架机器学习。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

具体来说,Keras 3.0完全重写了框架API,并使其可用于TensorFlow、JAX和PyTorch。KZj28资讯网——每日最新资讯28at.com

任何仅使用内置层的Keras模型都将立即与所有支持的后端配合使用。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

使用Keras 3可以创建在任何框架中都能以相同方式工作的组件,允许访问跨所有后端运行的keras.ops命名空间。KZj28资讯网——每日最新资讯28at.com

只要仅使用keras.ops中的ops,自定义层、损失、指标和优化器等就可以使用相同的代码与JAX、PyTorch和TensorFlow配合使用。这意味着只需维护一个组件实现,就可以在所有框架中使用完全相同的数值。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

除此之外,还发布了用于大规模数据并行和模型并行的新分布式API,为多设备模型分片问题提供Keras风格的解决方案。KZj28资讯网——每日最新资讯28at.com

为此设计的API使模型定义、训练逻辑和分片配置完全独立,这意味可以像在单个设备上运行一样编写代码,然后在训练任意模型时将任意分片配置添加到任意模型中。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

不过新的分布式API目前仅适用于JAX后端,TensorFlow和PyTorch支持即将推出。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

为适配JAX,还发布了用于层、模型、指标和优化器的新无状态API,添加了相关方法。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

这些方法没有任何副作用,它们将目标对象的状态变量的当前值作为输入,并返回更新值作为其输出的一部分。KZj28资讯网——每日最新资讯28at.com

用户不用自己实现这些方法,只要实现了有状态版本,它们就会自动可用。KZj28资讯网——每日最新资讯28at.com

如果从Keras 2迁移到3,使用tf.keras开发的代码通常可以按原样在Keras 3中使用Tensorflow后端运行。有限数量的不兼容之处也给出了迁移指南。KZj28资讯网——每日最新资讯28at.com

在旧版Keras 2中开发的预训练模型通常也可以在Keras 3中使用TensorFlow后端开箱即用。KZj28资讯网——每日最新资讯28at.com

如果旧版模型仅使用了Keras内置层,那么也可以在Keras 3中使用JAX和PyTorch后端开箱即用。KZj28资讯网——每日最新资讯28at.com

也有人敲警钟

在迫不及待尝试新版本的开发社区氛围中,Cohere机器学习总监Nils Reimers提出“真心希望历史不要重演”,也获得不少关注。KZj28资讯网——每日最新资讯28at.com

图片图片KZj28资讯网——每日最新资讯28at.com

Reimers认为,Keras最初从支持单个后端(Theano)开始,陆续添加了Tensorflow、MXNet和CNTK等多后端。KZj28资讯网——每日最新资讯28at.com

这引发了一系列问题:KZj28资讯网——每日最新资讯28at.com

  • 某些功能只在特定后端可用
  • 各个后端的计算结果存在不一致:在一个后端上运行正常的代码,在另一个后端可能产生不同结果
  • 对于开源软件开发者来说体验糟糕:你刚完成了一个自定义的 Keras层想要分享?你是否愿意为其他后端重新实现和优化它呢?
  • 调试问题:代码在一个后端上表现完美,但在另一个后端的最新版本上却频繁出错…

随着时间推移,这些问题愈发严重:某些模块只能在 Theano 上运行良好,某些只适用于Tensorflow,还有一些模块可以在MXNet上进行推理,但无法训练…KZj28资讯网——每日最新资讯28at.com

因此,2019年Keras转向单一后端(Tensorflow),是保障这一伟大项目继续存在的关键之举。KZj28资讯网——每日最新资讯28at.com

我希望这一次的多后端能有更好的表现,但这无疑仍是一个挑战。KZj28资讯网——每日最新资讯28at.com

您是否需要等到像FlashAttention v2这样的重要特性在JAX、TensorFlow和PyTorch 上都可用后,才能在 Keras 中使用它?还是说您只能在某些特定后端中使用它?KZj28资讯网——每日最新资讯28at.com

对于未来,我们还面临着许多未解决的挑战。KZj28资讯网——每日最新资讯28at.com

参考链接:
[1]https://keras.io/keras_3/[2]https://x.com/sampathweb/status/1729556960314339534[3]https://twitter.com/Nils_Reimers/status/1729612017340657993KZj28资讯网——每日最新资讯28at.com


KZj28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-35300-0.htmlKeras 3.0正式发布!一统TF/PyTorch/Jax三大后端框架,网友:改变游戏规则

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 线程包括哪些状态,状态之间是如何变化?

下一篇: 一篇学会如何使用Trait来定义接口?

标签:
  • 热门焦点
  • 太卷!Redmi MAX 100英寸电视便宜了:12999元买Redmi史上最大屏

    8月5日消息,从小米商城了解到,Redmi MAX 100英寸巨屏电视日前迎来官方优惠,到手价12999元,比发布价便宜了7000元,在大屏电视市场开卷。据了解,Redmi MAX 100
  • 摸鱼心法第一章——和配置文件说拜拜

    为了能摸鱼我们团队做了容器化,但是带来的问题是服务配置文件很麻烦,然后大家在群里进行了“亲切友好”的沟通图片图片图片图片对比就对比,简单对比下独立配置中心和k8s作为配
  • 如何通过Python线程池实现异步编程?

    线程池的概念和基本原理线程池是一种并发处理机制,它可以在程序启动时创建一组线程,并将它们置于等待任务的状态。当任务到达时,线程池中的某个线程会被唤醒并执行任务,执行完任
  • 微信语音大揭秘:为什么禁止转发?

    大家好,我是你们的小米。今天,我要和大家聊一个有趣的话题:为什么微信语音不可以转发?这是一个我们经常在日常使用中遇到的问题,也是一个让很多人好奇的问题。让我们一起来揭开这
  • 为什么你不应该使用Div作为可点击元素

    按钮是为任何网络应用程序提供交互性的最常见方式。但我们经常倾向于使用其他HTML元素,如 div span 等作为 clickable 元素。但通过这样做,我们错过了许多内置浏览器的功能。
  • ESG的面子与里子

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之三伏大幕拉起,各地高温预警不绝,但处于厄尔尼诺大“烤”之下的除了众生,还有各大企业发布的ESG报告。ESG是“环境保
  • 阿里大调整

    来源:产品刘有媒体报道称,近期淘宝天猫集团启动了近年来最大的人力制度改革,涉及员工绩效、层级体系等多个核心事项,目前已形成一个初步的“征求意见版”:1、取消P序列
  • 超闭合精工铰链 彻底消灭缝隙 三星Galaxy Z Flip5与Galaxy Z Fold5发布

    2023年7月26日,三星电子正式发布了Galaxy Z Flip5与Galaxy Z Fold5。三星新一代折叠屏手机采用超闭合精工铰链,让折叠后的缝隙不再可见。同时,配合处
  • DRAM存储器10月价格下跌,NAND闪存本月价格与上月持平

    10月30日,据韩国媒体消息,自今年年初以来一直在上涨的 DRAM 存储器的交易价格仅在本月就下跌了近 10%,此次是全年首次降价,而NAND 闪存本月价格与上月持平。市
Top