{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/hurricane-forecasting-a-novel-multimodal","title":"Hurricane Forecasting: A Novel Multimodal Machine Learning Framework","arxiv_id":"2011.06125","date":"2020-11-11","proceeding":null,"authors":["Léonard Boussioux","Cynthia Zeng","Théo Guénais","Dimitris Bertsimas"],"abstract":"This paper describes a novel machine learning (ML) framework for tropical cyclone intensity and track forecasting, combining multiple ML techniques and utilizing diverse data sources. Our multimodal framework, called Hurricast, efficiently combines spatial-temporal data with statistical data by extracting features with deep-learning encoder-decoder architectures and predicting with gradient-boosted trees. We evaluate our models in the North Atlantic and Eastern Pacific basins on 2016-2019 for 24-hour lead time track and intensity forecasts and show they achieve comparable mean absolute error and skill to current operational forecast models while computing in seconds. Furthermore, the inclusion of Hurricast into an operational forecast consensus model could improve over the National Hurricane Center's official forecast, thus highlighting the complementary properties with existing approaches. In summary, our work demonstrates that utilizing machine learning techniques to combine different data sources can lead to new opportunities in tropical cyclone forecasting.","url_abs":"https://arxiv.org/abs/2011.06125v4","url_pdf":"https://arxiv.org/pdf/2011.06125v4.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"hurricane-forecasting-a-novel-multimodal","repo_url":"https://github.com/leobix/hurricast","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null},{"paper_slug":"hurricane-forecasting-a-novel-multimodal","repo_url":"https://github.com/stormalytics/hurricane-forecasting","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"hurricane-forecasting-a-novel-multimodal","repo_url":"https://github.com/stormalytics/hurricane-frocasting","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"machine-learning","task_name":"BIG-bench Machine Learning"},{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"hurricane-forecasting","task_name":"Hurricane Forecasting"},{"task_slug":"tropical-cyclone-intensity-forecasting","task_name":"Tropical Cyclone Intensity Forecasting"},{"task_slug":"tropical-cyclone-track-forecasting","task_name":"Tropical Cyclone Track Forecasting"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"gru","method_name":"GRU"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2011.06125","atlas_url":"https://app.syntology.ai/?focus=2011.06125","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2011.06125"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/leobix/hurricast","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/stormalytics/hurricane-forecasting","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/stormalytics/hurricane-frocasting","reach":null}],"summary":{"ran":2,"ran_draft_wrong":1,"unverified":1},"by_repo_kind":{"official":{"samples":2,"ran":1,"repositories":1},"listed":{"samples":2,"ran":2,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":4,"samples":[{"code_sha256_prefix":"1d6b9e78e0a10553","entry":"GraphModel","repo":"stormalytics/hurricane-frocasting","repo_kind":"listed","path":"models/graph_model.py","file_url":"https://github.com/stormalytics/hurricane-frocasting/blob/HEAD/models/graph_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1d6b9e78e0a10553"}},{"code_sha256_prefix":"23916836abfa3767","entry":"MLP","repo":"stormalytics/hurricane-frocasting","repo_kind":"listed","path":"models/graph_model.py","file_url":"https://github.com/stormalytics/hurricane-frocasting/blob/HEAD/models/graph_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"23916836abfa3767"}},{"code_sha256_prefix":"207ec2aeaadf6131","entry":"RegisterModel","repo":"leobix/hurricast","repo_kind":"official","path":"src/models/experimental_models.py","file_url":"https://github.com/leobix/hurricast/blob/HEAD/src/models/experimental_models.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"207ec2aeaadf6131"}},{"code_sha256_prefix":"764b2dca8318fca8","entry":"ExperimentalHurricast","repo":"leobix/hurricast","repo_kind":"official","path":"src/models/experimental_models.py","file_url":"https://github.com/leobix/hurricast/blob/HEAD/src/models/experimental_models.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"764b2dca8318fca8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}