{"id":20198247,"url":"https://github.com/beekill95/predrnn_tf","last_synced_at":"2026-05-08T12:40:29.430Z","repository":{"id":164911975,"uuid":"624532244","full_name":"beekill95/predrnn_tf","owner":"beekill95","description":"PredRNN implementation using Tensorflow.","archived":false,"fork":false,"pushed_at":"2023-05-25T18:20:40.000Z","size":132,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-13T19:47:55.301Z","etag":null,"topics":["deep-learning","lstm","predictive-learning","predrnn","rnn","rnn-tensorflow","spatial-temporal","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/beekill95.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-06T17:20:28.000Z","updated_at":"2023-06-24T19:42:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"7687d916-066d-4a6b-8663-dd2afec030b5","html_url":"https://github.com/beekill95/predrnn_tf","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beekill95%2Fpredrnn_tf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beekill95%2Fpredrnn_tf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beekill95%2Fpredrnn_tf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/beekill95%2Fpredrnn_tf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/beekill95","download_url":"https://codeload.github.com/beekill95/predrnn_tf/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241631142,"owners_count":19993966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","lstm","predictive-learning","predrnn","rnn","rnn-tensorflow","spatial-temporal","tensorflow"],"created_at":"2024-11-14T04:30:03.799Z","updated_at":"2026-05-08T12:40:24.401Z","avatar_url":"https://github.com/beekill95.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PredRNN implementation using Tensorflow.\n\nThis is an implementation of PredRNN using Tensorflow.\nThe implementation is based on:\n\n* [PredRNN: recurrent neural networks for predictive learning using spatiotemporal LSTMs](https://dl.acm.org/doi/abs/10.5555/3294771.3294855)\n* [PredRNN: A Recurrent Neural Network for Spatiotemporal Predictive Learning](https://arxiv.org/abs/2103.09504)\n* [Official implementation in Pytorch](https://github.com/thuml/predrnn-pytorch)\n* [kami93/PredRNN](https://github.com/kami93/PredRNN)\n\nSpecifically, this repo implements the second paper:\n(stacked) spatial temporal cell and reversed scheduled sampling.\nThere is an implementation for decouple loss;\nhowever, due to a bug with Keras's `add_loss()` function,\nenabling the loss will raise error during runtime.\n\n## Accuracy\n\nPerformance (MSE) on Moving MNIST dataset\n(results produced by running `scripts/moving_mnist_all_batch.sh 5`)_\n\n|                                        | Run #1  | Run #2  | Run #3  | Run #4  | Run #5  | Mean     | Std             |\n|----------------------------------------|---------|---------|---------|---------|---------|----------|-----------------|\n| ConvLSTM                               | 0.03618 | 0.00951 | 0.04391 | 0.00956 | 0.03485 | 0.026802 |   0.01613769407 |\n| PredRNN without Scheduled Sampling     | 0.00705 | 0.00728 | 0.00703 | 0.00723 | 0.00733 | 0.007184 | 0.0001363084737 |\n| PredRNN with Linear Scheduled Sampling | 0.00798 | 0.00741 | 0.01012 | 0.01468 | 0.00822 | 0.009682 |   0.00297355343 |\n\nPerformance (MSE) on Moving MNIST dataset with different scheduled sampling strategies.\n\n|                                         | Run #1  | Run #2  | Run #3  | Run #4  | Run #5  | Mean     | Std             |\n|-----------------------------------------|---------|---------|---------|---------|---------|----------|-----------------|\n| PredRNN with Linear Scheduled Sampling  | 0.01254 | 0.01095 | 0.01231 | 0.01032 | 0.01071 | 0.011366 | 0.0009958564154 |\n| PredRNN with Expo Scheduled Sampling    | 0.00816 | 0.00868 | 0.01382 | 0.01027 | 0.01094 | 0.010374 |  0.002234810954 |\n| PredRNN with Sigmoid Scheduled Sampling | 0.00938 | 0.00999 | 0.00797 | 0.01007 | 0.00775 | 0.009032 |  0.001105404903 |\n\n## Installation\n\nThe repository can be installed as module using either `pip` or `poetry`.\n\n## Development\n\nThe repo uses `poetry` to manage dependencies.\nTo install all the development dependencies, use `poetry install`.\n\n## Examples\n\nIn the folder `examples`,\nthere are some notebooks that create PredRNN model\nand use it on Moving MNIST dataset. \n\nThese examples can be opened as Jupyter notebooks using Jupytext.\nThese development dependencies will be installed along with\nrequired dependencies with `poetry install`.\n\nSince these examples are resource-intensive and time-consuming,\nit is recommended to run these examples in GPU clusters.\nIn the `scripts` folder,\nthere are some scripts to run these in IU's Carbornate GPU clusters\n(you will authorization to use these clusters, of course!).\nSpecifically,\n\n* `sbatch scripts/moving_mnist.sbatch` will schedule a batch job to run\nexample `examples/moving_mnist_predrnn.py`.\nThe output notebook will be `examples/moving_mnist_predrnn_\u003cjob_id\u003e.ipynb`\nand the model will be saved as `saved_models/moving_mnist_predrnn_\u003cjob_id\u003e`.\n* Similarly for `sbatch scripts/moving_mnist_ss.sbatch`.\n* `scripts/moving_mnist_all_batch.sh \u003cnb_of_runs\u003e` will submit a series\nof jobs (3 * \u003cnb_of_runs\u003e) to the GPU clusters.\nThere will be \u003cnb_of_runs\u003e jobs for each combination of PredRNN/ConvLSTM\nand with/without scheduled sampling.\nThe goal of this script is to show whether PredRNN is better than ConvLSTM\nat predicting future frames for Moving MNIST dataset.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeekill95%2Fpredrnn_tf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbeekill95%2Fpredrnn_tf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeekill95%2Fpredrnn_tf/lists"}