Keras 出新庫了,,這次是 Keras Core,我們可以將其理解為 Keras 3.0 預(yù)覽版,預(yù)計今年秋天正式發(fā)布,。總結(jié)而言,,這次 Keras Core 對 Keras 代碼庫進(jìn)行了完全重寫,除了 TensorFlow 之外,,它還將 Keras API 引入 JAX 和 PyTorch,。現(xiàn)在,Keras Core 可以作為 tf.keras 的替代品,,當(dāng)使用 TensorFlow 后端時,,幾乎完全向后兼容 tf.keras 代碼。在絕大多數(shù)情況下,,你只需使用 import keras_core as keras 來代替 from tensorflow import keras 導(dǎo)入即可,,替換之后,以前的代碼還能正常跑,,不僅如此,,性能還提高了。其實,,在此之前,,Keras 就已經(jīng)能在 Theano、CNTK(甚至 MXNet)等框架之上運行,。最近幾年,,隨著使用 TensorFlow、PyTorch,、JAX 的用戶越來越多,。例如根據(jù) 2023 年 StackOverflow 以及 2022 年的 Kaggle 調(diào)查數(shù)據(jù)顯示,2022-2023 年 TensorFlow 占據(jù) 55% 到 60% 的市場份額,,PyTorch 占據(jù) 40% 到 45%。同時,,JAX 雖然市場份額較小,,但已經(jīng)被谷歌 DeepMind、Midjourney,、Cohere 等頂級生成式人工智能公司所接受和采用,。這么看來,本次新庫的發(fā)布,,是在情理之中,。Keras 創(chuàng)始人 Fran?ois Chollet 表示:現(xiàn)在,(借助 Keras Core)你可以編寫跨框架深度學(xué)習(xí)組件,,并從每個框架提供的最佳功能中受益,。接下來,我們看看 Keras Core 具體有哪些特點。首先是 Keras Core 實現(xiàn)了完整的 Keras API,,可支持 TensorFlow,、JAX 和 PyTorch。Keras Core 的第二個特點:它是一個可用于深度學(xué)習(xí)的,、跨框架的低級語言,。基于 Keras Core,,用戶可以創(chuàng)建組件(例如自定義層和預(yù)訓(xùn)練模型),,而這些組件可以適用于任何框架。特別是,,Keras Core 允許用戶訪問 keras_core.ops 命名空間,,后者適用于所有后端。Keras Core 的第三個特點是與 JAX,、PyTorch 和 TensorFlow 中的本地工作流無縫集成,。與 Keras 1.0 不同,Keras Core 不只是針對以 Keras 為中心的工作流,,還意味著可以與低級的后端本地工作流無縫地工作,。Keras Core 其他特點還包括:支持所有后端跨框架的數(shù)據(jù) pipeline。多框架的機(jī)器學(xué)習(xí)意味著多框架的數(shù)據(jù)加載和處理,,處理起來比較麻煩?,F(xiàn)在 Keras Core 模型可以使用廣泛的數(shù)據(jù) pipeline 進(jìn)行訓(xùn)練 —— 不管你是使用 JAX、PyTorch 還是 TensorFlow 后端,。預(yù)訓(xùn)練模型,。從現(xiàn)在開始,你可以借助 Keras Core 使用更多的預(yù)訓(xùn)練模型?,F(xiàn)在已經(jīng)有 40 個 Keras 應(yīng)用模型可在后端中使用,,此外,KerasCV 和 KerasNLP 中存在的大量預(yù)訓(xùn)練模型(例如 BERT,、T5,、YOLOv8、Whisper 等)也適用于所有后端,。了解更多內(nèi)容,,請參考:https:///keras_core/announcement/
|