This code trains a simple model to learn the identity function (output = input). Then it predicts values for new inputs and evaluates the model's error on test data.
import tensorflow as tf
from tensorflow.keras import layers, models
import numpy as np
# Create simple data: inputs and labels
X_train = np.array([[0], [1], [2], [3], [4], [5]], dtype=float)
y_train = np.array([0, 1, 2, 3, 4, 5], dtype=float)
X_test = np.array([[6], [7], [8]], dtype=float)
y_test = np.array([6, 7, 8], dtype=float)
# Build a simple model
model = models.Sequential([
layers.Dense(1, input_shape=(1,))
])
# Compile model with optimizer and loss
model.compile(optimizer='sgd', loss='mean_squared_error', metrics=['mean_absolute_error'])
# Train model
model.fit(X_train, y_train, epochs=100, verbose=0)
# Predict on test data
predictions = model.predict(X_test)
# Evaluate model on test data
loss, mae = model.evaluate(X_test, y_test, verbose=0)
# Print results
print('Predictions:', predictions.flatten())
print(f'Test Loss: {loss:.4f}')
print(f'Test MAE: {mae:.4f}')