Any Way The Wind Blows
Breezee seeks to establish predictions for 72 hours into the future regarding "any way the wind blows," and how fast. We leverage the National Data Buoy Center's network of sensors to obtain data from the past 45 days, then display it in our dashboard alongside the future prediction model trained using the historical data.
The datasets for each individual station presented themselves as text files on the National Oceanographic and Atmospheric Association's website. We developed a pipeline to request the text file given the station name and parse it into a pandas DataFrame.
We split the wind speed and wind direction predictions into two separate models.
For wind speed, in order to arrive at the Gated Recurrent Unit model, we first needed to attempt other options.
- Extreme Learning Machine initially seemed promising, but the methodology focuses primarily on classification.
- Markov Chains drew from our experience in COMP 140, yet only allowed for tracking one value across time, rather than incorporating other features.
- Simple Linear Regression across datetime provided a decent line of best fit, but could not account for the oscillating data pattern.
- Long Short-term Memory showed promise, but it had difficulty making any predictions besides the average.
Gated Recurrent Units performed best.
For wind direction, we repurposed our already-written Markov chain to give a prediction of 8 possible directions.
- Deta Deployment for Dashboard
- Google Colab for Model Training and Predictions
- JupyterNotebooks for Data Exploration and Cleaning Methodology
- Gets data live from buoys and makes new predictions
https://www.tensorflow.org/tutorials/structured_data/time_series
Colab link running project : https://colab.research.google.com/drive/1-ocY5TOAvqVGfvS2pJiQYma6IBsST9zN#scrollTo=gl36zBdPpfIY
https://www.tensorflow.org/guide/keras/rnn
https://www.tensorflow.org/tfx/tutorials/serving/rest_simple