Python tensorflow example

Ursula 175 Published: 08/04/2024

Python tensorflow example

Here's a simple example of using TensorFlow to create a basic neural network and train it on the MNIST dataset:

# Import necessary modules

import numpy as np

from sklearn.metrics import accuracy_score

from tensorflow.keras.datasets import mnist

from tensorflow.keras.models import Sequential

from tensorflow.keras.layers import Dense, Dropout

Load MNIST dataset

(x_train, y_train), (x_test, y_test) = mnist.load_data()

Normalize pixel values to be between 0 and 1

x_train, x_test = x_train / 255.0, x_test / 255.0

One-hot encode the output labels

y_train = np.eye(10)[y_train]

Create a Sequential model with two hidden layers

model = Sequential()

model.add(Dense(128, activation='relu', input_shape=(28*28,)))

model.add(Dropout(0.2))

model.add(Dense(64, activation='relu'))

model.add(Dropout(0.3))

model.add(Dense(10))

Compile the model with loss function and optimizer

model.compile(loss='categorical_crossentropy', optimizer='adam')

Train the model on the training set

model.fit(x_train, y_train, epochs=5, batch_size=128)

Evaluate the model on the test set

y_pred = model.predict(x_test)

y_pred_class = np.argmax(y_pred, axis=1)

print("Test accuracy:", accuracy_score(np.argmax(y_test, axis=1), y_pred_class))

This code creates a basic neural network with two hidden layers and trains it on the MNIST dataset. The goal is to classify hand-written digits (0-9). The model uses ReLU activation functions for the hidden layers and categorical cross-entropy loss function.

The accuracy of the model can be evaluated by comparing its predictions with the true labels of the test set. The result should be around 97%, which is a reasonable accuracy for this simple neural network architecture on the MNIST dataset.

Here's how you could improve the code:

Use more advanced activation functions (e.g., LeakyReLU, Swish) or regularization techniques (e.g., L1/L2 regularization). Experiment with different architectures (e.g., convolutional networks, recurrent networks). Try using pre-trained models as a starting point for fine-tuning. Evaluate the model on a validation set in addition to the test set.

Note: This example uses Keras API to create and train the neural network.

How do I run TensorFlow in Python?

To run TensorFlow in Python, you'll need to install the necessary packages and set up a basic environment. Here's a step-by-step guide:

Install TensorFlow: You can install TensorFlow using pip, the Python package installer. Open your terminal or command prompt and run the following command:
pip install tensorflow

This will download and install the latest version of TensorFlow.

Verify the Installation: Once the installation is complete, you can verify that TensorFlow is working by running a simple script:
import tensorflow as tf

print(tf.version)

This should print the current version of TensorFlow installed on your system.

Create a Basic Environment: To start building machine learning models with TensorFlow, you'll need to create a basic environment. This includes setting up a Python script and importing the necessary libraries.

Here's an example script:

import tensorflow as tf
Set up some constants

LEARNING_RATE = 0.01

TRAINING_STEPS = 1000

Create a simple neural network model

model = tf.keras.models.Sequential([

tf.keras.layers.Dense(64, activation='relu', input_shape=(784,)),

tf.keras.layers.Dropout(0.2),

tf.keras.layers.Dense(10, activation='softmax')

])

Compile the model

model.compile(optimizer=tf.keras.optimizers.Adam(LEARNING_RATE),

loss='sparse_categorical_crossentropy',

metrics=['accuracy'])

Train the model on a simple dataset (e.g., MNIST)

(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()

model.fit(x_train, y_train, epochs=TRAINING_STEPS, verbose=2)

Evaluate the model

test_loss, test_acc = model.evaluate(x_test, y_test, verbose=2)

print(f"Test accuracy: {test_acc:.3f}")

In this example, we're creating a simple neural network with three layers. We're then training it on the MNIST dataset and evaluating its performance.

Run Your First TensorFlow Script: Save your script to a file (e.g., tf_example.py) and run it using Python:
python tf_example.py

This will execute your script and output the results. You should see some output indicating that the model has been trained and evaluated successfully.

Explore More Complex Scenarios: From here, you can start exploring more complex scenarios with TensorFlow. Some examples include: Building larger models with multiple layers or convolutional neural networks (CNNs) Using transfer learning to leverage pre-trained models Implementing custom optimizers, losses, or metrics Integrating TensorFlow with other Python libraries and frameworks

Remember to keep an eye on the TensorFlow documentation and tutorials for more advanced topics and best practices. Happy coding!