We predict crop yields using a combination of Enhanced Vegetation Index (EVI) and temperature data. The jupyter notebooks show the pre-processing steps as well as the predictive models used.
- We first perform some pre-processing and cleaning steps such as anomaly detection and removal, interpolation, and consolidation
- The initial model used was a CNN which acted on concatenated EVI and temperature data aggregated across different locations in Illinois. The architecture was a modified version of the one found at https://github.com/gabrieltseng/pycrop-yield-prediction.
- A Gaussian Process model was then applied to the final layer features of the CNN as well as additional latitude and longitude data.
- Yield predictions from both models were compared and the final output was the ensemble average of the two models.
- We get around 11% average error on our validation set.
To run the notebooks:
- Install jupyter notebooks on your local machine
- Clone this repository
- Open the .ipynb file by running a jupyter notebook server on your machine