Inspiration

Agriculture is highly dependent on unpredictable factors like weather, soil conditions, and resource management. We wanted to explore how machine learning could help farmers make more informed decisions by predicting crop yield based on available data.

What it does

Our project is a machine learning-based corn yield prediction tool that estimates yield per acre based on key agricultural inputs such as nitrogen levels, irrigation, and planting date.

The application allows users to interact with these variables through a Streamlit interface and instantly see how changes affect predicted yield. This helps visualize important relationships like diminishing returns on fertilizer and optimal planting periods.

How we built it

We built the model using Python and applied data preprocessing techniques using Pandas and NumPy.

A machine learning pipeline was created using Scikit-learn, with XGBoost as the primary model due to its strong performance on tabular data.

We engineered additional features such as:

Nitrogen squared (to model diminishing returns) Interaction terms between irrigation and nitrogen Date-based features like planting day-of-year

The model was trained and evaluated using cross-validation (K-Fold) to ensure reliability and reduce overfitting.

Finally, we deployed the model using Streamlit to create an interactive interface for real-time predictions.

Built With

Share this project:

Updates