If our video link is still Rick Astley at 14:00 GMT, we ran out of time to make the video submission (sorry). Our Colab Notebook report, modelling, and visualisations are really good though!

Project Structure

Data Visualisation

Beautiful data visualisations using matplotlib / seaborn / plotly and setting the "fivethirtyeight" style

Modelling

  1. Looked at using linear regession (selecting different feature subsets, regularisation : Lasso / Ridge), to directly predict crop yields
  2. Tried non-linear models: Kernel SVMs, Trees (LGBM, XGBoost), and finally Gaussian Processes. Gaussian Process Regression best performer both in and out-of-sample, but out-of-sample performance is much lower.
  3. We focus on model interpretability as well; for linear models this is clear (coefficients, confidence intervals), for non-linear models, we turn to feature importances and shap
  4. Looked at the problem again - instead of predicting crop yields, try and predict change in crop yields $\Delta y_{i, t}$
  5. Repeated step 1 and 2. Gaussian Process still best performer in this version of the problem.

Evaluation

  • GPRs are arguably the most robust method we explored; are known from the literature to be able to capture spatiotemporal features. However out-of-sample prediction still fairly poor.
  • Model validation could be more robust, e.g. use walk-forward evaluation - train on 2001 - 2014 evaluate on 2015, train on 2000 - 2015, evaluate on 2016 etc.
  • Could benefit from looking at other models that might better incorporate spatio-temporal structure - RNNs/CNNS, Spatial Regression techniques

Link to Colab Notebook

*the uploaded .html report is just the Colab Notebook exported to html via nbconvert

Built With

Share this project:

Updates

Submission history