EIEIOTECHNOVATION
← Training programmes

EIEIO / ARTIFICIAL INTELLIGENCE

Google Cloud Machine Learning Engineer

Course outline

5 days

Duration

Google Cloud Machine Learning Engineer

5 days

Outline

Note:

Section 1: Framing ML problems

1.1 Translating business challenges into ML use cases. Considerations include:

  • Choosing the best solution (ML vs. non-ML, custom vs. pre-packaged [e.g., AutoML, Vision API]) based on the business requirements
  • Defining how the model output should be used to solve the business problem
  • Deciding how incorrect results should be handled
  • Identifying data sources (available vs. ideal)

1.2 Defining ML problems. Considerations include:

  • Problem type (e.g., classification, regression, clustering)
  • Outcome of model predictions
  • Input (features) and predicted output format

1.3 Defining business success criteria. Considerations include:

  • Alignment of ML success metrics to the business problem
  • Key results
  • Determining when a model is deemed unsuccessful

1.4 Identifying risks to feasibility of ML solutions. Considerations include:

  • Assessing and communicating business impact
  • Assessing ML solution readines
  • Assessing data readiness and potential limitations
  • Aligning with Google’s Responsible AI practices (e.g., different biases)

Section 2: Architecting ML solutions

2.1 Designing reliable, scalable, and highly available ML solutions. Considerations include:

  • Choosing appropriate ML services for the use case (e.g., Cloud Build, Kubeflow)
  • Component types (e.g., data collection, data management)
  • Exploration/analysis
  • Feature engineering
  • Logging/management
  • Automation
  • Orchestration
  • Monitoring
  • Serving

2.2 Choosing appropriate Google Cloud hardware components. Considerations include:

  • Evaluation of compute and accelerator options (e.g., CPU, GPU, TPU, edge devices)

2.3 Designing architecture that complies with security concerns across sectors/industries.

Considerations include:

  • Building secure ML systems (e.g., protecting against unintentional exploitation of data/model, hacking)
  • Privacy implications of data usage and/or collection (e.g., handling sensitive data such as Personally Identifiable Information [PII] and Protected Health Information [PHI])

Section 3: Designing data preparation and processing systems

3.1 Exploring data (EDA). Considerations include:

  • Visualization
  • Statistical fundamentals at scale
  • Evaluation of data quality and feasibility
  • Establishing data constraints (e.g., TFDV)

3.2 Building data pipelines. Considerations include:

  • Organizing and optimizing training datasets
  • Data validation
  • Handling missing data
  • Handling outliers
  • Data leakage

3.3 Creating input features (feature engineering). Considerations include:

  • Ensuring consistent data pre-processing between training and serving
  • Encoding structured data types
  • Feature selection
  • Class imbalance
  • Feature crosses
  • Transformations (TensorFlow Transform)

Section 4: Developing ML models

4.1 Building models. Considerations include

  • Choice of framework and model
  • Modeling techniques given interpretability requirements
  • Transfer learning
  • Data augmentation
  • Semi-supervised learning
  • Model generalization and strategies to handle overfitting and underfitting

4.2 Training models. Considerations include:

  • Ingestion of various file types into training (e.g., CSV, JSON, IMG, parquet or databases, Hadoop/Spark)
  • Training a model as a job in different environments
  • Hyperparameter tuning
  • Tracking metrics during training
  • Retraining/redeployment evaluation

4.3 Testing models. Considerations include:

  • Unit tests for model training and serving
  • Model performance against baselines, simpler models, and across the time dimension
  • Model explainability on Vertex AI

4.4 Scaling model training and serving. Considerations include:

  • Distributed training
  • Scaling prediction service (e.g., Vertex AI Prediction, containerized serving)

Section 5: Automating and orchestrating ML pipelines

5.1 Designing and implementing training pipelines. Considerations include:

  • Identification of components, parameters, triggers, and compute needs (e.g., Cloud Build, Cloud Run)
  • Orchestration framework (e.g., Kubeflow Pipelines/Vertex AI Pipelines, Cloud Composer/Apache Airflow)
  • Hybrid or multicloud strategies
  • System design with TFX components/Kubeflow DSL

5.2 Implementing serving pipelines. Considerations include:

  • Serving (online, batch, caching)
  • Google Cloud serving options
  • Testing for target performance
  • Configuring trigger and pipeline schedules

5.3 Tracking and auditing metadata. Considerations include:

  • Organizing and tracking experiments and pipeline runs
  • Hooking into model and dataset versioning
  • Model/dataset lineage

Section 6: Monitoring, optimizing, and maintaining ML solutions

6.1 Monitoring and troubleshooting ML solutions. Considerations include:

  • Performance and business quality of ML model predictions
  • Logging strategies
  • Establishing continuous evaluation metrics (e.g., evaluation of drift or bias)
  • Understanding Google Cloud permissions model
  • Identification of appropriate retraining policy
  • Common training and serving errors (TensorFlow
  • ML model failure and resulting biases

6.2 Tuning performance of ML solutions for training and serving in production.

Considerations include:

  • Optimization and simplification of input pipeline for training
  • Simplification techniques

Programme scope, delivery arrangements and suitability are confirmed during enquiry.