{"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/deep-learning-for-precipitation-nowcasting-a","title":"Deep Learning for Precipitation Nowcasting: A Benchmark and A New Model","arxiv_id":"1706.03458","date":"2017-06-12","proceeding":"NeurIPS 2017 12","authors":["Xingjian Shi","Zhihan Gao","Leonard Lausen","Hao Wang","Dit-yan Yeung","Wai-kin Wong","Wang-chun Woo"],"abstract":"With the goal of making high-resolution forecasts of regional rainfall,\nprecipitation nowcasting has become an important and fundamental technology\nunderlying various public services ranging from rainstorm warnings to flight\nsafety. Recently, the Convolutional LSTM (ConvLSTM) model has been shown to\noutperform traditional optical flow based methods for precipitation nowcasting,\nsuggesting that deep learning models have a huge potential for solving the\nproblem. However, the convolutional recurrence structure in ConvLSTM-based\nmodels is location-invariant while natural motion and transformation (e.g.,\nrotation) are location-variant in general. Furthermore, since\ndeep-learning-based precipitation nowcasting is a newly emerging area, clear\nevaluation protocols have not yet been established. To address these problems,\nwe propose both a new model and a benchmark for precipitation nowcasting.\nSpecifically, we go beyond ConvLSTM and propose the Trajectory GRU (TrajGRU)\nmodel that can actively learn the location-variant structure for recurrent\nconnections. Besides, we provide a benchmark that includes a real-world\nlarge-scale dataset from the Hong Kong Observatory, a new training loss, and a\ncomprehensive evaluation protocol to facilitate future research and gauge the\nstate of the art.","url_abs":"http://arxiv.org/abs/1706.03458v2","url_pdf":"http://arxiv.org/pdf/1706.03458v2.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":"deep-learning-for-precipitation-nowcasting-a","repo_url":"https://github.com/Flunzmas/vp-suite","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"deep-learning-for-precipitation-nowcasting-a","repo_url":"https://github.com/Hzzone/Precipitation-Nowcasting","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"deep-learning-for-precipitation-nowcasting-a","repo_url":"https://github.com/sxjscience/HKO-7","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mxnet","reach":null},{"paper_slug":"deep-learning-for-precipitation-nowcasting-a","repo_url":"https://github.com/tianhai123/conv-gru","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"optical-flow-estimation","task_name":"Optical Flow Estimation"},{"task_slug":"video-prediction","task_name":"Video Prediction"}],"methods":[{"method_slug":"convlstm","method_name":"ConvLSTM"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"gru","method_name":"GRU"},{"method_slug":"lstm","method_name":"LSTM"},{"method_slug":"sigmoid-activation","method_name":"Sigmoid Activation"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-prediction-on-kth","task":"Video Prediction","dataset":"KTH","model":"TrajGRU","rank_in_archive_order":27,"of":31,"metrics":{"Cond":"10","PSNR":"26.97","Pred":"20","SSIM":"0.790"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1706.03458","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1706.03458"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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/Hzzone/Precipitation-Nowcasting","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tianhai123/conv-gru","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Flunzmas/vp-suite","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/sxjscience/HKO-7","reach":null}],"summary":{"ran_draft_wrong":6,"ran_violates":1,"ran_fixture":2,"unverified":1},"by_repo_kind":{"listed":{"samples":10,"ran":9,"repositories":2}},"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":5,"samples":[{"code_sha256_prefix":"bcf4a8730082002b","entry":"conv2_act","repo":"tianhai123/conv-gru","repo_kind":"listed","path":"encoder.py","file_url":"https://github.com/tianhai123/conv-gru/blob/HEAD/encoder.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bcf4a8730082002b"}},{"code_sha256_prefix":"5cc4268bd2c61345","entry":"conv2_act","repo":"tianhai123/conv-gru","repo_kind":"listed","path":"forecaster.py","file_url":"https://github.com/tianhai123/conv-gru/blob/HEAD/forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5cc4268bd2c61345"}},{"code_sha256_prefix":"a49a94bd61a1651f","entry":"deconv2_act","repo":"tianhai123/conv-gru","repo_kind":"listed","path":"forecaster.py","file_url":"https://github.com/tianhai123/conv-gru/blob/HEAD/forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a49a94bd61a1651f"}},{"code_sha256_prefix":"9096c0546286d0c1","entry":"downsmaple","repo":"tianhai123/conv-gru","repo_kind":"listed","path":"encoder.py","file_url":"https://github.com/tianhai123/conv-gru/blob/HEAD/encoder.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9096c0546286d0c1"}},{"code_sha256_prefix":"6f090d3364df919e","entry":"encode_month","repo":"sxjscience/HKO-7","repo_kind":"listed","path":"nowcasting/hko_iterator.py","file_url":"https://github.com/sxjscience/HKO-7/blob/HEAD/nowcasting/hko_iterator.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6f090d3364df919e"}},{"code_sha256_prefix":"d7f985f69ed8fefd","entry":"frame_skip_reshape","repo":"sxjscience/HKO-7","repo_kind":"listed","path":"experiments/hko/hko_main.py","file_url":"https://github.com/sxjscience/HKO-7/blob/HEAD/experiments/hko/hko_main.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d7f985f69ed8fefd"}},{"code_sha256_prefix":"594f31479418e41f","entry":"frame_skip_reshape_back","repo":"sxjscience/HKO-7","repo_kind":"listed","path":"experiments/hko/hko_main.py","file_url":"https://github.com/sxjscience/HKO-7/blob/HEAD/experiments/hko/hko_main.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"594f31479418e41f"}},{"code_sha256_prefix":"69a7ad6774e73b5c","entry":"get_base_dir","repo":"sxjscience/HKO-7","repo_kind":"listed","path":"experiments/hko/hko_main.py","file_url":"https://github.com/sxjscience/HKO-7/blob/HEAD/experiments/hko/hko_main.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"69a7ad6774e73b5c"}},{"code_sha256_prefix":"5ec5fba82b1decd8","entry":"upsmaple","repo":"tianhai123/conv-gru","repo_kind":"listed","path":"forecaster.py","file_url":"https://github.com/tianhai123/conv-gru/blob/HEAD/forecaster.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5ec5fba82b1decd8"}},{"code_sha256_prefix":"cf999c562f67173a","entry":"decode_month","repo":"sxjscience/HKO-7","repo_kind":"listed","path":"nowcasting/hko_iterator.py","file_url":"https://github.com/sxjscience/HKO-7/blob/HEAD/nowcasting/hko_iterator.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cf999c562f67173a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}