Ngesa Marvin - Keras (3) for the Curious and Creative | PyData Global 2023

Learn about Keras 3's multi-backend capabilities, computer vision applications, and modern deep learning features like diffusion models in this comprehensive overview.

Key takeaways
  • Keras 3 is a high-level deep learning API that works with multiple backends (TensorFlow, JAX, PyTorch) through a common interface

  • Images are represented as matrices of numbers (pixels), ranging from 0-255 for grayscale or having RGB channels for color images

  • Key components of Keras models include:

    • Layers (building blocks that encapsulate state and processing)
    • Activation functions
    • Loss functions
    • Optimizers (like SGD, Adam, RMSprop)
    • Data loaders and preprocessing
  • Three main ways to create Keras models:

    • Sequential API (simple linear layer stacks)
    • Functional API (complex architectures)
    • Model subclassing (custom implementations)
  • Computer vision tasks possible with Keras include:

    • Image classification
    • Object detection
    • Segmentation
    • Super resolution
    • Image generation
  • Modern features include support for:

    • Diffusion models
    • Stable diffusion for text-to-image generation
    • Transfer learning with pre-trained models
    • Multi-framework model deployment
  • Key concepts in training:

    • Forward propagation passes inputs through the network
    • Backward propagation calculates gradients
    • Loss optimization adjusts weights to improve accuracy
    • Batching improves training efficiency
  • Keras provides high-level abstractions while allowing low-level control when needed, making it suitable for both beginners and experts