YouTip LogoYouTip

Tensorflow Setup

TensorFlow 2.x has specific requirements for Python versions:

TensorFlow Version Python Version Support
TensorFlow 2.15+ Python 3.9-3.12
TensorFlow 2.12-2.14 Python 3.8-3.11
TensorFlow 2.8-2.11 Python 3.7-3.10

Python 3.9-3.11 is recommended, as these versions offer the best compatibility and stability.

Check Current Python Version

# Check Python version
python --version
# or
python3 --version

# Check pip version
pip --version
# or
pip3 --version

Python Installation Options

Option 1: Official Python (Recommended for Beginners)

  • Visit python.org to download and install
  • Check "Add Python to PATH" during installation
  • Includes pip package manager

Option 2: Anaconda/Miniconda (Recommended for Data Science)

  • Anaconda: Complete data science environment
  • Miniconda: Lightweight version
  • Built-in environment and package management

Option 3: System Package Manager

# Ubuntu/Debian
sudo apt update
sudo apt install python3 python3-pip

# macOS (using Homebrew)
brew install python3

# Windows (using Chocolatey)
choco install python3

Virtual Environment Setup (Strongly Recommended)

Why Use Virtual Environments

Benefits:

  • Isolated dependencies: Avoid package version conflicts between different projects
  • Clean environment: Keep system Python environment tidy
  • Easy management: Environments can be easily deleted and rebuilt
  • Reproducibility: Easy to reproduce environments on different machines

Creating Virtual Environment with venv

# Create virtual environment
python -m venv tensorflow_env

# Activate virtual environment
# Windows:
tensorflow_envScriptsactivate
# macOS/Linux:
source tensorflow_env/bin/activate

# Confirm activation (prompt will show environment name)
which python  # Should point to python in virtual environment

# Upgrade pip
python -m pip install --upgrade pip

Creating Virtual Environment with Conda

# Create new environment
conda create -n tensorflow_env python=3.10

# Activate environment
conda activate tensorflow_env

# List all environments
conda env list

# Install packages in environment
conda install pip

Virtual Environment Management

# View installed packages
pip list

# Generate dependency file
pip freeze > requirements.txt

# Install dependencies from file
pip install -r requirements.txt

# Exit virtual environment
deactivate           # venv
conda deactivate     # conda

# Delete virtual environment
rm -rf tensorflow_env           # venv
conda env remove -n tensorflow_env  # conda

TensorFlow Installation

CPU Version Installation (Suitable for Learning and Lightweight Tasks)

# Make sure you are in virtual environment
pip install tensorflow

# Verify installation
python -c "import tensorflow as tf; print('TensorFlow version:', tf.__version__)"

CPU Version Features:

  • Pros: Simple installation, no additional configuration needed
  • Cons: Slower training speed, suitable for small-scale data
  • Applicable scenarios: Learning, prototype development, inference deployment

GPU Version Installation (Suitable for Large-scale Training)

GPU acceleration can significantly improve training speed, especially for deep learning tasks.

3.2.1 NVIDIA GPU Requirements

Hardware Requirements:

  • NVIDIA GPU (compute capability 3.5 or higher)
  • 8GB+ VRAM (recommended)

Check GPU Information:

# Windows
nvidia-smi

# Linux
lspci | grep -i nvidia

CUDA and cuDNN Installation

TensorFlow 2.15+ and CUDA Version Compatibility:

TensorFlow CUDA cuDNN
2.15+ 12.2 8.9
2.12-2.14 11.8 8.6

Installation Steps:

  1. Download and Install CUDA Toolkit

    • Visit NVIDIA CUDA Toolkit
    • Select corresponding version to download and install
    • Add to system PATH
  2. Download and Install cuDNN

    • Visit NVIDIA cuDNN
    • NVIDIA account registration required
    • Extract to CUDA installation directory
  3. Verify CUDA Installation

nvcc --version
nvidia-smi

Install TensorFlow GPU Version

# TensorFlow 2.10+ unified package name
pip install tensorflow

# Verify GPU availability
python -c "
import tensorflow as tf
print('TensorFlow version:', tf.__version__)
print('GPU available:', tf.config.list_physical_devices('GPU'))
print('Built with CUDA:', tf.test.is_built_with_cuda())
"

Installation via Conda

# CPU version
conda install tensorflow
# Or from conda-forge
conda install -c conda-forge tensorflow

# GPU version (automatically installs CUDA)
conda install tensorflow-gpu

Install Specific Version

# Install specific version
pip install tensorflow==2.14.0

# Install pre-release version
pip install tf-nightly

# Upgrade to latest version
pip install --upgrade tensorflow

Development Tools Installation

Jupyter Notebook/Lab

Jupyter is the standard development environment for data science and machine learning:

# Install Jupyter Notebook
pip install jupyter notebook
# Or install JupyterLab (recommended)
pip install jupyterlab

# Start Jupyter
jupyter notebook
# Or
jupyter lab

Jupyter Extensions:

# Install useful extensions
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user

# Variable inspector
pip install nbextensions

IDE Selection

Visual Studio Code (Recommended):

  • Install Python extension
  • Install Jupyter extension
  • Intelligent code completion and debugging

PyCharm:

  • Professional Python IDE
  • Powerful debugging features
  • Built-in Git support

Google Colab (Cloud Option):

  • Free GPU usage
  • Pre-installed common libraries
  • No local configuration needed

Required Python Packages

# Data processing
pip install numpy pandas matplotlib seaborn

# Scientific computing
pip install scipy scikit-learn

# Image processing
pip install pillow opencv-python

# Progress bar and utilities
pip install tqdm

# Create complete requirements file
cat > requirements.txt <=2.12.0
numpy>=1.21.0
pandas>=1.3.0
matplotlib>=3.5.0
seaborn>=0.11.0
scikit-learn>=1.0.0
jupyter>=1.0.0
tqdm>=4.60.0
pillow>=8.0.0
EOF

# Batch install
pip install -r requirements.txt

Configuration Verification

Complete Installation Verification Script

Create verify_installation.py file:

Example

#!/usr/bin/env python3
"""
 TensorFlow Installation Verification Script
 """

import sys

print("Python version:", sys.version)
print("-" * 50)

# Check TensorFlow
try:
    import tensorflow as tf
    print(f"βœ“ TensorFlow version: {tf.__version__}")
    print(f"βœ“ Keras version: {tf.keras.__version__}")
    
    # Check GPU support
    physical_devices = tf.config.list_physical_devices('GPU')
    if physical_devices:
        print(f"βœ“ GPU devices found: {len(physical_devices)}")
        for i, device in enumerate(physical_devices):
            print(f"  - GPU {i}: {device}")
        print(f"βœ“ CUDA built: {tf.test.is_built_with_cuda()}")
    else:
        print("⚠ No GPU devices found (CPU only)")
    
    # Simple computation test
    a = tf.constant([1, 2, 3])
    b = tf.constant([4, 5, 6])
    c = tf.add(a, b)
    print(f"βœ“ Basic computation test: {a.numpy()} + {b.numpy()} = {c.numpy()}")
    
except ImportError as e:
    print(f"βœ— TensorFlow import failed: {e}")

print("-" * 50)

# Check other important packages
packages = ['numpy', 'pandas', 'matplotlib', 'sklearn', 'jupyter']
for package in packages:
    try:
        module = __import__(package)
        version = getattr(module, '__version__', 'unknown')
        print(f"βœ“ {package}: {version}")
    except ImportError:
        print(f"βœ— {package}: not installed")

print("-" * 50)

# Memory and device information
print("System Information:")
if tf.config.list_physical_devices('GPU'):
    for gpu in tf.config.list_physical_devices('GPU'):
        try:
            tf.config.experimental.set_memory_growth(gpu, True)
            print(f"βœ“ GPU memory growth enabled for {gpu}")
        except:
            print(f"⚠ Could not set memory growth for {gpu}")

print("Installation verification complete!")

Run verification:

python verify_installation.py

Performance Benchmark Test

Create simple performance test:

Example

import tensorflow as tf
import time

print("TensorFlow Performance Test")
print("-" * 30)

# Matrix multiplication test
def benchmark_matmul(device_name, size=1000):
    with tf.device(device_name):
        a = tf.random.normal([size, size])
        b = tf.random.normal([size, size])
        
        # Warm-up
        for _ in range(5):
            c = tf.matmul(a, b)
        
        # Timing
        start_time = time.time()
        for _ in range(10):
            c = tf.matmul(a, b)
        end_time = time.time()
        
        avg_time = (end_time - start_time) / 10
        return avg_time

# CPU test
cpu_time = benchmark_matmul('/CPU:0')
print(f"CPU ({1000}x{1000} matmul): {cpu_time:.4f} seconds")

# GPU test (if available)
if tf.config.list_physical_devices('GPU'):
    gpu_time = benchmark_matmul('/GPU:0')
    print(f"GPU ({1000}x{1000} matmul): {gpu_time:.4f} seconds")
    print(f"GPU speedup: {cpu_time/gpu_time:.2f}x")
else:
    print("No GPU available for testing")

Common Issues and Solutions

Installation Issues

Issue 1: pip installation timeout

pip install --user tensorflow

Issue 2: Permission error

# Create new virtual environment
python -m venv fresh_env
source fresh_env/bin/activate  # Linux/Mac
# Or fresh_envScriptsactivate  # Windows
pip install tensorflow

Issue 3: Version conflict

# Create new virtual environment
python -m venv fresh_env
source fresh_env/bin/activate  # Linux/Mac
# Or fresh_envScriptsactivate  # Windows
pip install tensorflow

GPU Related Issues

Issue 1: CUDA version mismatch

  • Check TensorFlow and CUDA version compatibility
  • Reinstall matching CUDA version

Issue 2: Insufficient GPU memory

# Set GPU memory growth
gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
    for gpu in gpus:
        tf.config.experimental.set_memory_growth(gpu, True)

Issue 3: Cannot find GPU

# Check NVIDIA driver
nvidia-smi

# Check CUDA installation
nvcc --version

# Reinstall GPU support
pip uninstall tensorflow
pip install tensorflow

Jupyter Related Issues

Issue 1: Virtual environment not visible in Jupyter

# Install ipykernel
pip install ipykernel

# Add virtual environment to Jupyter
python -m ipykernel install --user --name tensorflow_env --display-name "Python (TensorFlow)"

Issue 2: Jupyter cannot start

# Reinstall Jupyter
pip uninstall jupyter notebook
pip install jupyter notebook

# Or use conda
conda install jupyter

Development Environment Optimization

GPU Memory Management

# GPU configuration optimization
import tensorflow as tf

# Method 1: Set memory growth
gpus = tf.config.experimental.list_physical_
← Tensorflow Api KerasTensorflow Intro β†’