Well-Architected machine learning design principles - Machine Learning Lens

Well-Architected machine learning design principles

Well-Architected ML design principles are a set of considerations used as the basis for a well-architected ML workload.

Following the Well-Architected Framework guidelines, use these general design principles to facilitate good design in the cloud for ML workloads:

  • Assign ownership: Apply the right skills and the right number of resources along with accountability and empowerment to increase productivity.

  • Provide protection: Apply security controls to systems and services hosting model data, algorithms, computation, and endpoints. This facilitates secure and uninterrupted operations.

  • Enable resiliency: Verify fault tolerance and the recoverability of ML models through version control, traceability, and explainability.

  • Enable reusability: Use independent modular components that can be shared and reused. This assists to enable reliability, improve productivity, and optimize cost.

  • Enable reproducibility: Use version control across components, such as infrastructure, data, models, and code. Track changes back to a point-in-time release. This approach enables model governance and audit standards.

  • Optimize resources: Perform trade-off analysis across available resources and configurations to achieve optimal outcome.

  • Reduce cost: Identify the potentials for reducing cost through automation or optimization, analyzing processes, resources, and operations.

  • Enable automation: Use technologies, such as pipelining, scripting, and continuous integration (CI), continuous delivery (CD), and continuous training (CT), to increase agility, improve performance, sustain resiliency, and reduce cost.

  • Enable continuous improvement: Evolve and improve the workload through continuous monitoring, analysis, and learning.

  • Minimize environmental impact: Establish sustainability goals and understand the impact of ML models. Use managed services and adopt efficient hardware and software and maximize their utilization.