Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Objective

This assignment guides you through classic machine learning tasks for your AI-ready dataset. You will compare model families, evaluate performance honestly, and assess computational cost. The goal is to practice selecting and optimizing a model for your project, preparing you for deeper model development.

Structure of the Assignment

  1. Research Project Relevance

    • Task: Write a brief essay that discusses the relevance of machine learning to your project and outlines your approach.
    • Requirements:
      • A concise, ½-page essay (in Research_Relevance.md) that includes:
        • The problem’s connection to classification or regression.
        • Justification of whether the work will use a supervised, unsupervised, self-supervised, or semi-supervised approach.
        • Expected outcomes and potential impact of applying ML to your dataset.
        • An AI-use disclosure: state which parts of the code and text were produced with AI assistance, and how you verified them.
  2. Clustering Analysis for Classification Projects

    • Task: If your project involves classification, perform a clustering analysis on the features of your data, especially after dimensionality reduction.
    • Requirements:
      • Apply clustering algorithms (e.g., K-means) to understand feature clusters or patterns.
      • Conduct best practices for clustering analysis in a notebook (notebooks/Clustering_Analysis.ipynb):
        • Use silhouette analysis and elbow curve for optimal K identification.
        • Evaluate clusters with homogeneity or the Fowlkes-Mallows Index.
        • Test robustness using repeated runs of K-means with random seeds.
      • Visualize the clusters and discuss how this analysis informs your approach to classification.
  3. Model Comparison and Hyperparameter Tuning

    • Task: Compare model families systematically and tune the promising ones. (Earlier editions required pycaret; that tool is retired.)
    • Requirements:
      • In a notebook (notebooks/AutoML_Hyperparameter_Tuning.ipynb):
        • Establish a trivial baseline first (majority class or mean/climatology prediction). Every model is judged against it.
        • Compare at least four classifier or regressor families, including a gradient-boosting model (scikit-learn HistGradientBoosting* or LightGBM).
        • Tune the best candidates with an Optuna study or a grid search wrapped in cross-validation.
        • Describe the algorithms evaluated and the hyperparameters optimized.
        • Identify the most promising models based on performance, interpretability, and computational cost.
  4. Training Engineering and Model Assessment

    • Task: Perform a thorough analysis of training strategies and model assessment.
    • Requirements:
      • In a notebook (notebooks/Model_Training_Assessment.ipynb), demonstrate:
        • A clean train-validation-test protocol: all model selection happens on training/validation data; the test set is used once.
        • A cross-validation scheme chosen for your data’s correlation structure, with justification: if your samples are correlated in time or space (most geoscience data are), use TimeSeriesSplit, blocked, or GroupKFold splits and explain your choice; if you use random K-fold, justify why leakage is not a concern.
        • Performance generality by testing on diverse subsets of the data.
        • Bootstrapping and bagging techniques across different model architectures and data variations.
        • Visualize model performance (e.g., learning curves, error metrics) across training rounds.
        • A discussion of results, including how these methods affect model generality and performance.
      • All reported metrics must come from your own held-out validation and test sets, never from training data. The instructor holds hidden test data for the course datasets and will spot-check claimed performance; a large gap between claimed and spot-checked scores will cost credit.
  5. Computational Time Analysis

    • Task: Analyze the computational time needed for model training and deployment.
    • Requirements:
      • In a notebook (notebooks/Computational_Time_Analysis.ipynb), include:
        • Metrics on training time for each model architecture, detailing how various parameters affect speed.
        • An exploration of time vs. accuracy trade-offs for different configurations.
        • An assessment of expected time requirements for model deployment in real-world scenarios.
      • Summarize findings in a short conclusion, focusing on any computational challenges or optimizations relevant to your model.

Deliverables

Grading Criteria

This assignment applies classic machine learning methods to real geoscientific data, deepening your practical understanding of model selection, tuning, and honest assessment.