10 - Machine Learning, Automation, Version Control, and Responsible AI — Topics & Learning Outcomes
Module Topics
Foundations of Supervised Machine Learning
Introduces the core concepts of supervised learning, distinguishing between regression and classification tasks and explaining how labeled training data drives model development.
- What Is Supervised Learning? — Supervised learning is a machine learning paradigm in which a model is trained on labeled input-output pairs to learn a mapping from features to targets.
- Regression vs. Classification — Regression predicts a continuous numerical output, while classification predicts a discrete category or class label.
- Features, Labels, and Training Data — Features are the measurable input variables used to make predictions, while labels are the corresponding known outputs used during training.
- Bias-Variance Trade-off — The bias-variance trade-off describes the tension between a model that is too simple (high bias) and one that is too complex (high variance).
- Model Evaluation Metrics — Selecting appropriate evaluation metrics is essential for understanding how well a model performs on the intended engineering task.
Machine Learning with scikit-learn
Covers the practical use of the scikit-learn library to build, train, and evaluate regression and classification models in engineering contexts.
- The scikit-learn API Design — scikit-learn provides a consistent estimator API in which every model object exposes fit, predict, and score methods, making it straightforward to swap algorithms.
- Data Preprocessing and Pipelines — Raw engineering data often requires scaling, encoding, or imputation before it can be fed into a machine learning model, and scikit-learn pipelines chain these steps with the estimator.
- Regression Models in scikit-learn — scikit-learn offers a range of regression estimators suitable for engineering data, from linear models to ensemble methods.
- Classification Models in scikit-learn — Classification estimators in scikit-learn assign input samples to discrete classes and are evaluated using metrics such as accuracy, precision, and recall.
- Hyperparameter Tuning — Hyperparameters are model configuration settings that are not learned from data and must be set before training; tuning them improves model performance.
- Model Interpretability and Feature Importance — Understanding which features drive model predictions is critical in engineering applications where decisions have physical and safety consequences.
Engineering Automation and Parameter Sweep Pipelines
Introduces strategies for automating repetitive engineering computations and systematically exploring parameter spaces using scripted pipelines.
- Why Automate Engineering Workflows? — Automation replaces manual, error-prone repetition with reliable, reproducible scripts that can execute complex sequences of engineering tasks consistently.
- Designing a Parameter Sweep — A parameter sweep systematically varies one or more input parameters across a defined range and records the corresponding outputs to map system behavior.
- Integrating ML Models into Automation Pipelines — Trained machine learning models can be embedded in automation pipelines to provide fast surrogate predictions in place of expensive simulations or experiments.
- Handling Large Result Sets — Parameter sweeps can generate large volumes of output data that require efficient storage, querying, and summarization strategies.
- Scheduling and Running Long Jobs — Engineering automation scripts that take significant time to run benefit from progress tracking, logging, and the ability to resume after interruption.
Git and GitHub Version Control
Establishes foundational and collaborative version control practices using Git locally and GitHub as a remote repository platform for engineering code projects.
- Why Version Control Matters for Engineers — Version control systems track every change made to a codebase, enabling engineers to review history, revert mistakes, and collaborate without overwriting each other's work.
- Core Git Concepts and Commands — Git operates through a staging area and a local repository; understanding the add, commit, status, and log commands forms the foundation of daily Git use.
- Branching and Merging — Branches allow engineers to develop features or experiments in isolation from the main codebase, and merging integrates completed work back into the main branch.
- Working with GitHub Remote Repositories — GitHub hosts remote copies of Git repositories, enabling cloud backup, sharing, and team collaboration through push and pull operations.
- Pull Requests and Code Review — Pull requests on GitHub are a formal mechanism for proposing changes, inviting peer review, and merging approved work into a shared branch.
- Repository Hygiene and .gitignore — Good repository hygiene ensures that only relevant source files are tracked, avoiding clutter from generated outputs, credentials, or environment-specific files.
Responsible AI Integration in Engineering Practice
Consolidates the ethical, professional, and technical obligations engineers must uphold when using AI tools, including verification of AI-generated code and accountability for outcomes.
- The Role of AI Tools in Engineering Workflows — AI coding assistants and generative tools can accelerate engineering software development, but they introduce new responsibilities around verification and professional judgment.
- Verification of AI-Generated Code — Every piece of code produced by an AI assistant must be critically reviewed, tested, and validated before it is used in any engineering computation or product.
- Recognizing Hallucinations and Errors — AI language models can confidently produce incorrect code, fabricated function names, or physically unreasonable results—a phenomenon known as hallucination.
- Professional Engineering Accountability — Licensed and professional engineers bear legal and ethical responsibility for the work they produce and cannot transfer that responsibility to an AI tool.
- Bias, Fairness, and Equity in Engineering ML Systems — Machine learning models trained on historical data can inherit and amplify societal biases, leading to unfair or discriminatory outcomes in engineering systems that affect people.
- Transparent Documentation and Reproducibility — Responsible AI practice requires that models, datasets, training procedures, and validation results be documented thoroughly so that others can understand, audit, and reproduce the work.
- Integrating Responsible AI Habits into Daily Practice — Responsible AI is not a separate checklist but a set of habits—verification, documentation, skepticism, and ethical reflection—that should be embedded in every engineering workflow.
Student Learning Outcomes
By the end of this module, students will be able to:
MO1
Distinguish between regression and classification tasks by identifying the appropriate supervised learning approach for a given engineering problem based on the nature of the target variable
Level: AnalyzeType: CognitiveCourse mapping: CO3
MO2
Construct a scikit-learn pipeline that chains preprocessing steps with a regression or classification estimator to train and evaluate a model on engineering data
Level: CreateType: BehavioralCourse mapping: CO2
MO3
Design a parameter sweep automation script that systematically varies input parameters, executes the corresponding computations, and stores the resulting outputs for analysis
Level: CreateType: BehavioralCourse mapping: CO3
MO4
Apply core Git commands—including add, commit, branch, merge, push, and pull—to manage version history and collaborate on an engineering code repository hosted on GitHub
Level: ApplyType: BehavioralCourse mapping: CO3
MO5
Evaluate AI-generated code for correctness, hallucinations, and engineering validity before incorporating it into a computational workflow, citing the professional accountability obligations that require such verification
Level: EvaluateType: CognitiveCourse mapping: CO2
Course Outcomes (reference)
CO1Use variables, arrays and object structures appropriate to solve engineering problems.
CO2Write computer functions to meet specific calculation needs.
CO3Write computer programs to solve mathematical expressions and engineering problems