Inspiration
- Shocking news stories about dead fish.
- Vast quantities of data available from water and weather monitoring stations that are under-used.
- Listening to an ECMWF AI flood modelling talk last week.
What it SHOULD DO
Not currently working but...
- Collect data using MetOffice Observations API for temperature and weather codes and also DEFRA Hydrology API for rainfall, dissolved Oxygen (DO), turbidity, water temperature and Ammonium
- Build combined historic data by comparing long and lat of each weather/water station
- Split into training, testing and validation folds (use CV).
- Build and train a LSTM model on the historic data looking at multivariate analysis with dissolved oxygen as a target.
- Compare actual against predictions to test model and calculate accuracy using metrics.
- Once the model is working it could be used to model how next week's future weather might impact dissolved oxygen.
How we built it
- Two different APIs
- LSTM
- Python
Challenges we ran into
- Getting distracted trying to match reports of fish kills with Environment Agency incidents
- Difficulty getting data from MetOffice API (needed API key) and DEFRA Hydrology API in matching timeseries.
- Missing rainfall data
- Matching geolocation of water and weather stations.
- Trying to have proper ETL using APIs rather than just reading a csv.
- Tensorflow / PyTorch not running on laptop as not GPU and CPU version not working (even when running venv)
- Resorting to trying to use GenAI to generate code (due to time constraints) and it being rubbish!
Accomplishments that we're proud of
- Keeping going despite barriers.
- Learning about different multivariate forecasting and LSTM.
- Using lots of new techniques.
What we learned
Using APIs, timeseries data, forecasting, LSTM, Deep learning - all are new to me
What's next for Using weather to predict low dissolved oxygen in waterways
- Get it working!
- Use historic correlation comparisons to ensure accuracy of the model.
- Build an early warning system with dashboard to make it easy for suers to run the model on predicted weather and to identify dangerous DO levels
Built With
- api
- claude
- genai
- lstm
- python
Log in or sign up for Devpost to join the conversation.