A deep learning framework for forecasting Atlantic hurricane trajectory and intensity.
Many LLM's are sequential models that incorporate deep learning. This includes work on chat enabled LLM's like ChatGPT.
fluids.ai:1337/docs
- Open up Python environment and make sure
pip install openai
- Set API password to
OPENAI_API_KEY
environment variable, e.g.export OPENAI_API_KEY=password123
- Run a python console (
$ python3
) and import the class by executingimport hurricane_net_chatgpt as chatgpt
The following datasets and inputs including their sources will be used to create machine learning models:
- NHC Hurricane Database (HURDAT2)
- NHC Forecast Error Database
- NHC GIS
The NHC HURDAT2 database contains the tracking information for Atlantic tropical and subtropical cyclones which includes hurricanes and tropical storms from 1851 to 2016. The most updated version of the dataset is included on the noaa.gov site and includes 2 additional years of cyclone data compared to the data set available on Kaggle and is potentially more descriptive. To match the inputs of the baseline model used by the NHC, we are calculating the forward motion of the storm by applying a vector based on previous and current geographical location.
The Forecast Error Database contains information on the accuracy of predicted models from the NHC. The two model forecast errors available are labeled OFCL and BCD5. The OFCL is the official NHC forecast and the BCD5 is the real track available. This data set can be used to benchmark and evaluate the deep learning model. The NOAA and NHC also hosts a geographical information system (GIS) that contains raw and processed data on hurricanes. The server hosting the GIS is publicly accessible and can be used to evaluate our model by comparing the 2017 Atlantic tropical season. The preliminary best tracks can be found here before they are finalized and available in the HURDAT2 data set. With the GIS, we can construct a final evaluation data set.
Runtime enviornment was on a remote virtual machine with a Jupyter notebook through http access. Use the following command: jupyter notebook --ip=0.0.0.0 --port=8080 --no-browser