Keras 是一个专为人类而非机器设计的深度学习 API。Keras 专注于调试速度、代码优雅与简洁、可维护性以及可部署性。选择 Keras 后,您的代码库将更小、更易读、迭代更方便。
inputs = keras.Input(shape=(32, 32, 3))
x = layers.Conv2D(32, 3, activation="relu")(inputs)
x = layers.Conv2D(64, 3, activation="relu")(x)
residual = x = layers.MaxPooling2D(3)(x)
x = layers.Conv2D(64, 3, padding="same")(x)
x = layers.Activation("relu")(x)
x = layers.Conv2D(64, 3, padding="same")(x)
x = layers.Activation("relu")(x)
x = x + residual
x = layers.Conv2D(64, 3, activation="relu")(x)
x = layers.GlobalAveragePooling2D()(x)
outputs = layers.Dense(10, activation="softmax")(x)
model = keras.Model(inputs, outputs, name="mini_resnet")
keras.utils.plot_model(model, "mini_resnet.png")
model.fit(dataset, epochs=10)
causal_lm = keras_hub.models.CausalLM.from_preset(
"gemma2_instruct_2b_en",
dtype="float16",
)
prompt = """<start_of_turn>user
Write python code to print the first 100 primes.
<end_of_turn>
<start_of_turn>model
"""
text_output = causal_lm.generate(prompt, max_length=512)
text_to_image = keras_hub.models.TextToImage.from_preset(
"stable_diffusion_3_medium",
dtype="float16",
)
prompt = "Astronaut in a jungle, detailed"
image_output = text_to_image.generate(prompt)
凭借其多后端方法,Keras 让您可以自由地使用 JAX、TensorFlow 和 PyTorch。构建的模型可以在这些框架之间无缝迁移,并利用每个生态系统的优势。
入门指南inputs = keras.Input(shape=(28, 28, 1))
x = inputs
x = layers.Conv2D(16, 3, activation="relu")(x)
x = layers.Conv2D(32, 3, activation="relu")(x)
x = layers.MaxPooling2D(3)(x)
x = layers.Conv2D(32, 3, activation="relu")(x)
x = layers.Conv2D(16, 3, activation="relu")(x)
x = layers.GlobalMaxPooling2D()(x)
x = layers.Dropout(0.5)
outputs = layers.Dense(10)
model = keras.Model(inputs, outputs)
model.summary()
从基础开始,学习如何使用函数式构建模式来构建模型。
model.compile(
optimizer="rmsprop",
loss="categorical_crossentropy",
metrics=["accuracy"],
)
history = model.fit(
x_train,
y_train,
batch_size=64,
epochs=2,
validation_data=(x_val, y_val),
)
使用 model.fit(...) 训练和评估您的模型。
class MLPBlock(keras.layers.Layer):
def __init__(self):
super().__init__()
self.dense_1 = layers.Dense(32)
self.dense_2 = layers.Dense(32)
self.dense_3 = layers.Dense(1)
def call(self, inputs):
x = self.dense_1(inputs)
x = keras.activations.relu(x)
x = self.dense_2(x)
x = keras.activations.relu(x)
return self.dense_3(x)
学习如何通过子类化 Keras 层来定制您的模型。
KerasHub 库提供了流行模型架构的 Keras 3 实现,并搭配了 Kaggle Models 上提供的预训练检查点集合。模型可以在 TensorFlow、JAX 和 PyTorch 的任一后端上用于训练和推理。
Keras 被 CERN、NASA、NIH 以及全球众多科学组织使用(没错,大型强子对撞机也在使用 Keras)。Keras 被 Waymo 用于为自动驾驶汽车提供动力。Keras 与 Kaggle 和 HuggingFace 合作,以便 ML 开发者能够在他们日常使用的工具中接触到 Keras。
订阅我们的邮件列表,获取关于 Keras 生态系统的定期更新和讨论。参加我们的社区会议,并在社交媒体上关注我们!
随着我们不断发展,欢迎您的代码、想法和反馈。访问我们的路线图、贡献指南或 GitHub 获取更多信息。