Giter Club home page Giter Club logo

precipitation-prediction-convlstm-keras's Introduction

CIKM AnalytiCup 2017 challenge entry

Intro

Rough unedited code used in data science contest - CIKM AnalytiCup 2017 challenge - to predict short-term rainfall.

Animation of radar maps over 1 hour, first images in the sequence are input and the final image is the predicted radar map 15 minutes into the future. Although the prediction is blurry, the general speed and direction of movement have been estimated accurately.

This solution used a convolutional recurrent neural network (convLSTM) analysing sequential radar maps, and predicting the future state of the clouds. From these projections, a further model was built linking the predicted radar map with the actual rainfall. Maps were provided at 4 different altitudes, and a separate model was built for each, with predictions averaged.

Solution was inspired by the paper Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting

Final score (RMSE) was 14.8 (top 100), relative to top 5 accuracies ranging 11.0 to 13.3.

Static illustration - two of the radar maps input and the system prediction for the state 15 minutes into the future, compared to the truth.

Data wrangling

Data was provided in text file format. The first part of the program processes and stores this as .h5 file systems for ease of loading and analysing (data was too large to fit into memory).

Missing data points were simply assigned the median value of that image.

Competition details

Full details here

"Short-term precipitation forecasting such as rainfall prediction is a task to predict a short-term rainfall amount based on current observations. It has been a very important problem in the field of meteorological service. An accurate weather prediction service can support casual usages such as outdoor activity and even provide early warnings of floods or traffic accidents. To predict short-term rainfall amount, we usually make use of radar data, rain gauge data and numerical weather outputs. In this challenge, we focus on the first type of data - radar data, more specifically radar echo extrapolation data. Our target is to build a rainfall prediction model by solely using the radar data."

precipitation-prediction-convlstm-keras's People

Contributors

teapearce avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

precipitation-prediction-convlstm-keras's Issues

our own dataset

Sir, can you tell me the process to convert raw radar data into the data used in this project? As the data used here are too huge and my system can't handle such a huge amount of data.
Thank you

Sample Data

Can you provide a sample data file please? Doesn't have to contain much data, just as a reference to get an idea for how the original data looked like.

Many thanks!!

datasets

I have 3 datasets, trainA, trainB, and test. is it enough to run your code? or do I need more? and if its enough than can you please guide me on how to run the code?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.