
我们很高兴出现 keras3
,下一个版本的keras r keras3
这是基础的重建 {keras}
,根据过去几年收集的有价值的愿景,通过改进和简化API来维护广受欢迎的功能。
Keras提供了一个完整的工具集,用于在R中构建深度学习模型 – 建立,培训,评估和发布学习模型从未更容易。
稳定
安装Keras 3:
install.packages("keras3")
library(keras3)
install_keras()
什么是新的:
文件
很棒的文件是必要的,我们一直在努力确认这一点 keras3
现在和将来,他都有出色的文件。
KERAS 3提供了该网站的完整更新:https://kers.posit.co。在那里,您会找到证据,课程,参考页面,其中包括示例和新示例展览。所有页面和参考证据也可通过R中的综合援助系统获得。
在诸如深度学习之类的快速移动环境系统中,创建出色的文档和封面是不够的。还应有工作流程任务可以保证文档随即将到来的后果所带来的更新。为此,{keras3}包括两个新的公式,以保证r文档和作业文件仍然永久了解:
现在,我们拍摄上游文档和API表面的镜头。对于每个版本,所有R文档都会在更新中重新调整。此工作流程确保所有R文档(证据,示例,简短文章,参考页)仍在启动和更新。此快照和响应功能是在新的摊位包中执行的{doctether},这对于需要与依赖关系保持平等文档的包装的包装可能很有用。
现在,可以在构建包装时评估和介绍所有示例和简短文章。这样可以确保没有一个毫无意义或破碎的示例的象征,使其在版本中。这也意味着所有用户示例图标现在都可以用作一组快照和集成测试。
根据CRAN限制,不允许在简短文章和示例中评估该代码。我们正在努力通过在路径和简短文章之前构建其他包装示例的步骤来限制Cran。
完全,这两个功能将使r中的凯拉斯(Keras)保持平等的特征和现代文档,并使用Python API到Keras。
多重支持
Keras在2015年推出后不久,为最受欢迎的学习框架提供了支持:Tensorflow,Teneano,Mxnet和CNTK。随着时间的流逝,场景转向了。 Thiano,Mxnet和CNTK退休了,Tensorflow越来越受欢迎。三年前,2021年,Tensorflow成为总理,仅支持Keraas的背景。现在,场景再次转过身。
KERAS 3带来了多重强化支持的回归。通过呼叫选择后接口:
use_backend("jax") # or "tensorflow", "torch", "numpy"
虚拟背面接口仍然是张力,这是当今大多数用户的最佳选择。对于中小型型号,这仍然是最快的后接口。但是,所有背面界面都具有不同的优势,并且能够轻松切换以使您适应项目或框架开发的更改。
如今,对于某些类型的模型,向JAX后接口的过渡可以实现速度的显着提高。 JAX也是唯一对新API分布模型支持的后接口。向火炬转移在开发过程中可能很有用,并且通常是由更简单的跟踪引起的,同时纠正错误。
KERAS 3还允许您使用右盖将任何火焰,JAX或亚麻预先存在作为标准的Keras层集成,从而使您可以使用Keras构建项目。例如,使用高级别的keras应用程序接口训练火焰形式(compile()
+
fit()
),或包括亚麻单元作为较大的基拉斯模型的组成部分。对加强的新支持使您可以使用小点菜。
“ OPS”家庭
{keras3}
它引入了新的“操作”家庭。 OPS家族包括200多个工作,在第二场深度学习进行第二场比赛时,通常需要提供一套全面的操作。该行动家族取代并在很大程度上扩展了以前支持的背景家庭 k_
在 {keras}
驱逐。
操作功能允许您编写反向图标。它提供了一个均匀的应用程序编程接口,无论您是使用TensorFlow,Jax,Torch突变,Keras符号,Noumpy矩阵还是R。
操作功能:
- 所有人都从坏处开始
op_
(例如 ,op_stack()
)) - 所有都是纯粹的功能(无副作用)
- 每个人都使用索引为1,并且可以根据需要的正确数量加倍
- 所有背景外墙都可以安全使用(Tensorflow,Jax,Torch,Numpy)
- 在图表条件/图表/JIT/跟踪中,所有这些都可以安全使用
应用程序编程接口包括OPS:
- 总数numby应用程序编程接口(
numpy.*
)) - tensorflow nn api(
tf.nn.*
)) - 常见的线性代数函数(从
scipy.linalg.*
)) - 照片变形金刚的子家庭
- 一系列全面的损失
- 还有更多!
将表格数据与 layer_feature_space()
keras3
它提供了一组新的功能来构建可容纳表格数据的模型: layer_feature_space()
以及功能系列(前缀, feature_
)构建可以与表格数据一起使用的KERAS模型,即作为KERAS模型的输入,或作为数据下载管道中的预处理步骤(例如,一个
tfdatasets::dataset_map()
)。
请参阅参考页面,并在一侧到一侧的一侧使用示例以了解更多信息。
新应用程序编程接口子类别
子类应用程序接口已得到改进并扩展到更多的Keras类型。仅通过调用以下方式设置子类别: Layer()
和 Loss()
和 Metric()
和
Callback()
和 Constraint()
和 Model()
, 和 LearningRateSchedule()
。设置 {R6}
代理章节不再需要。
此外,每个子分类功能的文档页面现在都有此类可用的所有功能和方法的全面列表。支付
?Layer
找出可能的可能。
储蓄和出口
KERAS 3带来了新的串行模型并导出应用程序编程接口。现在,保存和还原模型以及将其导出到服务更为简单。
save_model()
/ / / /load_model()
:
高级别的新文件协调(扩展:.keras
)提供和恢复完整的模型。文件格式是后接口。这意味着您可以通过保存后接口,然后与另一个下载,可以在背景之间转换受过训练的模型。例如,用JAX训练模型,然后将其转换为TensorFlow以进行导出。
export_savedmodel()
:
仅导出模型的前传作为聚集颗粒,以通过TF或(很快)连接来推断。这是发布KERAS模型以进行有效和巧合的最简单方法,而无需R或Python的任何依赖性。较低级入口点:
save_model_weights()
/ / / /load_model_weights()
:
仅记住举重.h5
文件。save_model_config()
/ / / /load_model_config()
:
只需将模型的形式保存为JSON文件即可。
register_keras_serializable()
:
记录指定的对象,使它们能够顺序并摆脱。serialize_keras_object()
/ / / /deserialize_keras_object()
:
将任何KERAS对象转换为可安全转换为JSON或RDS的简单类型的R。观看新序列并保存简短的文章以获取更多详细信息和示例。
新的 random
家庭
一个随机张紧器发电机的新家族。像OPS家族一样,这与所有背景都合作。此外,所有RNG方法在通过种子发生器时都可以支持无用的使用。这允许通过对非性函数(例如Jax)具有特殊支持的框架进行跟踪和组装。看到
?random_seed_generator()
例如使用。
其他加法:
新的
shape()
工作,在所有情况下使用张紧器形式合作的好处之一。新的和进步
print(model)
和plot(model)
路。在功能应用程序编程接口指南中查看指导的一些示例一切都是新的
fit()
Progress Bar and Outlet Chorementer参展商,包括对Rstudio IDE中新的黑暗模式的支持。新的
config
家庭,一组工作,以获取和放置凯拉斯的形成。所有其他工作家庭都随着新成员而扩展:
移民 {keras}
到 {keras3}
{keras3}
地方 {keras}
驱逐。
如果您今天正在编写新代码,则可以开始使用 {keras3}
立即地。
如果您有一个旧符号 {keras}
,鼓励您更新代码 {keras3}
。对于许多高级API功能,例如 layer_dense()
和 fit()
, 和 keras_model()
,最低限度没有必要的更改。但是,在更新从较低的KERAS应用程序程序中受益的代码时,可能需要进行一系列小的更改。其中一些已记录:https://keras.io/guides/migrating_to_keras_3/。
如果您面临问题或对更新有疑问,请随时询问https://github.com/rstudio/keras/issues或https://github.com/rstudio/teras/discussions。
这 {keras}
和 {keras3}
包裹将在社会转移期间共存。在过渡期间, {keras}
它将继续收到与KERAS V2兼容的更正更新,Keras V2仍以包装的名义发布给PYPI tf-keras
。后 tf-keras
它不再保存它, {keras}
该包将存档。
概括
总之, {keras3}
这是Keras R软件包的强大更新,因为它包含新功能,同时保持易于使用和来源功能。新的多发注意力支持,全面的OPS功能,典型的,精致的序列程序编程接口以及更新的用户更新文档的进度可以轻松地从深度学习社区的最新发展中受益。
无论您是Keras中经验丰富的用户,还是刚开始深入学习旅程,Keras 3都提供了工具和灵活性,可以轻松训练和发布模型。随着我们从Keras 2转移到Keras 3,我们致力于支持社会并确保顺利移民。我们邀请您探索新功能,检查更新的文档,并在我们的GitHub讨论页面上加入对话。欢迎使用KERAS 3的深度学习下一章!