KerasHub

KerasHub

星號

KerasHub 是一個預訓練模型庫,旨在簡單、靈活且快速。該庫提供熱門模型架構的 Keras 3 實作,並搭配 Kaggle 模型上可用的預訓練檢查點集合。這些模型可用於在 TensorFlow、Jax 和 Torch 後端的訓練和推論。

KerasHub 是核心 Keras API 的延伸;KerasHub 組件以 keras.layers.Layerkeras.Model 實作提供。如果您熟悉 Keras,恭喜您!您已經了解了 KerasHub 的大部分內容。



安裝

若要安裝具有 Keras 3 的最新 KerasHub 版本,只需執行

pip install --upgrade keras-hub

若要安裝 KerasHub 和 Keras 的最新 nightly 變更,您可以使用我們的 nightly 套件。

pip install --upgrade keras-hub-nightly

目前,安裝 KerasHub 將始終引入 TensorFlow 以使用 tf.data API 進行預處理。當使用 tf.data 進行預處理時,訓練仍然可以在任何後端上進行。

請造訪核心 Keras 開始使用頁面以取得更多有關安裝 Keras 3、加速器支援以及與不同框架的相容性資訊。


快速入門

選擇後端

import os
os.environ["KERAS_BACKEND"] = "jax"  # Or "tensorflow" or "torch"!

匯入 KerasHub 和其他函式庫

import keras
import keras_hub
import numpy as np
import tensorflow_datasets as tfds

載入 resnet 模型並用它來預測影像的標籤

classifier = keras_hub.models.ImageClassifier.from_preset(
    "resnet_50_imagenet",
    activation="softmax",
)
url = "https://upload.wikimedia.org/wikipedia/commons/a/aa/California_quail.jpg"
path = keras.utils.get_file(origin=url)
image = keras.utils.load_img(path)
preds = classifier.predict(np.array([image]))
print(keras_hub.utils.decode_imagenet_predictions(preds))

載入 Bert 模型並在 IMDb 電影評論上進行微調

classifier = keras_hub.models.BertClassifier.from_preset(
    "bert_base_en_uncased",
    activation="softmax",
    num_classes=2,
)
imdb_train, imdb_test = tfds.load(
    "imdb_reviews",
    split=["train", "test"],
    as_supervised=True,
    batch_size=16,
)
classifier.fit(imdb_train, validation_data=imdb_test)
preds = classifier.predict(["What an amazing movie!", "A total waste of time."])
print(preds)

相容性

我們遵循 語意版本控制,並計劃為我們的組件所建構的程式碼和已儲存的模型提供回溯相容性保證。當我們繼續進行 0.y.z 預發布開發時,我們可能會隨時破壞相容性,並且不應將 API 視為穩定。


免責聲明

KerasHub 透過 keras_hub.models API 提供對預訓練模型的存取權。這些預訓練模型以「現狀」提供,不提供任何形式的擔保或條件。


引用 KerasHub

如果 KerasHub 對您的研究有所幫助,我們感謝您的引用。以下是 BibTeX 條目

@misc{kerashub2024,
  title={KerasHub},
  author={Watson, Matthew, and  Chollet, Fran\c{c}ois and Sreepathihalli,
  Divyashree, and Saadat, Samaneh and Sampath, Ramesh, and Rasskin, Gabriel and
  and Zhu, Scott and Singh, Varun and Wood, Luke and Tan, Zhenyu and Stenbit,
  Ian and Qian, Chen, and Bischof, Jonathan and others},
  year={2024},
  howpublished={\url{https://github.com/keras-team/keras-hub}},
}