經過 5 個月的更新迭代,Keras 3.0 終於來了。
「大新聞:我們剛剛發布了Keras 3.0 版本!」Keras 之父François Chollet 在X 上激動的表示。 「現在你可以在JAX、TensorFlow 以及PyTorch 框架上運行Keras…」
對於這一更新,Keras 官方表示,這個版本足足花了他們5個月的時間進行公測才完成。 Keras 3.0 是對 Keras 的完全重寫,你可以在 JAX、TensorFlow 或 PyTorch 之上運行 Keras 工作流程,新版本還具有全新的大模型訓練和部署功能。你可以選擇最適合自己的框架,也可以根據當前的目標從一種框架切換到另一種框架都沒有問題。
Keras 位址:https://keras.io/keras_3/被250 多萬開發者使用的Keras,迎來3.0 版本#Keras API 可用於JAX、TensorFlow 和PyTorch。現有的僅使用內建層的 tf.keras 模型可以在 JAX 和 PyTorch 中運行!
Keras 3 可與任何 JAX、TensorFlow 和 PyTorch 工作流程無縫協作。 Keras 3 不僅適用於以Keras 為中心的工作流程,例如定義Keras 模型、優化器、損失和度量,它還旨在與JAX、TensorFlow 和PyTorch 低階後端本地工作流程無縫集成,在訓練Keras 模型時,你可以選擇使用JAX 訓練、TensorFlow 訓練、PyTorch 訓練,也可以將其作為JAX 或PyTorch 模型的一部分,上述操作都沒有問題。 Keras 3 在 JAX 和 PyTorch 中提供了與 tf.keras 在 TensorFlow 中相同程度的低階實作彈性。
預訓練模型。你現在可以在 Keras 3 中使用各種預訓練模型。現在已經有40 個Keras 應用模型可在後端中使用,此外,KerasCV 和KerasNLP 中存在的大量預訓練模型(例如BERT、T5、YOLOv8、Whisper# 、SAM等)也適用於所有後端。 Keras 3 高度向後相容 Keras 2:Keras 3 現在實作了 Keras 2 的公共 API 介面。大多數使用者無需更改任何程式碼即可在 Keras 3 上執行 Keras 腳本。如果你還不習慣使用 Keras 3,可以選擇忽略新版本的更新,繼續將 Keras 2 與 TensorFlow 結合使用。 Keras 3 支援所有後端的跨框架資料 pipeline。多框架機器學習也意味著多框架資料載入和預處理。 Keras 3 模型可以使用各種資料pipeline 進行訓練,無論你使用的是JAX、PyTorch 或TensorFlow 後端:
- tf.data. Dataset pipelines。
- torch.utils.data.DataLoader 物件。
- Keras 的 keras.utils.PyDataset 物件。
一個新的分散式 API,可用於大規模資料並行和模型並行#。目前這項更新僅適用於 JAX 後端,TensorFlow 和 PyTorch 支援即將推出。 至於為何要推出這項更改,Keras 團隊表示,近年來,隨著模型規模變得越來越大,他們希望為多設備模型分片( sharding)問題提供Keras 解決方案。這個團隊設計的 API 使模型定義、訓練邏輯和分片配置完全獨立,這意味著模型可以像在單一裝置上運行一樣, 然後,你可以在訓練模型時將分片配置新增到任意模型中。 資料並行(在多個裝置上相同地複製小模型)只需兩行即可處理:
接下來是模型並行。這個 API 允許你透過正規表示式配置每個變數和每個輸出張量的佈局。這使得為整個變數類別快速指定相同的佈局變得容易。
最後,Keras 團隊也收集了許多大家關心的問題,並予以解答,有興趣的讀者可以前去 Keras 官方網站,了解更多內容。 以上是Keras 3.0正式發布:可用於TensorFlow、JAX和PyTorch的詳細內容。更多資訊請關注PHP中文網其他相關文章!