TensorFlow Models

Building and training neural networks with TensorFlow.

Sequential Model

Build sequential model
model = tf.keras.Sequential([
  tf.keras.layers.Dense(128, activation="relu"),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation="softmax")
])

Add layers incrementally
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(64, activation="relu"))
model.add(tf.keras.layers.Dense(10))

Compile Model

Compile with optimizer and loss
model.compile(
  optimizer="adam",
  loss="sparse_categorical_crossentropy",
  metrics=["accuracy"]
)

Custom learning rate
optimizer = tf.keras.optimizers.Adam(learning_rate=0.001)
model.compile(optimizer=optimizer, loss="mse")

Train Model

Fit model
history = model.fit(
  x_train, y_train,
  epochs=10,
  batch_size=32,
  validation_split=0.2
)

With validation data
model.fit(
  x_train, y_train,
  epochs=10,
  validation_data=(x_val, y_val)
)

Evaluate model
loss, accuracy = model.evaluate(x_test, y_test)

Make predictions
predictions = model.predict(x_test)

Save & Load Model

Save model
model.save("my_model.h5")
model.save("my_model")

Load model
model = tf.keras.models.load_model("my_model.h5")

Save weights only
model.save_weights("weights.h5")
model.load_weights("weights.h5")