The current climate change scenario predicts that almost half of the world's population will live in areas of high water stress by 2050 with limited access to fresh clean water. Governments, national, and international institutions, as well as water management companies, are looking for solutions that can address this growing global water demand. Cities are encouraged to take action on water security, to build resilience to water scarcity and manage this finite resource for the future.
Based on financial, educational, environmental and demographical data, this project aims to display and predict the water security risks around the world. In order to do so, a Regression Machine Learning pipeline is deployed per risk category (e.g. risk of higher water prices or risk of declining water quality), and a forecast of that risk's severity is made. The regression model is based on engineered and selected features from the data mentioned above. The project results in an app wich can be deployed following the instructions below.
The documentation of the project can be found here.
The documentation can be regenerated by running the following command:
python generate_documentation.py
A python version of 3.8 or higher is required to install and deploy this project.
To install the required packages run the following command:
pip install -r requirements.txt
On windows additional binaries has to be installed for the rasterio package to work. The package can be installed using conda or as described in their documentation.
When running the app for the first time a 829 MB large image will be downloaded so it can take some time before online predictions can be made.
python run.py
Pull image with :
docker pull bajo1207/watersecurity
Run container with:
docker run -p 8866:8866 bajo1207/watersecurity
Navigate/Hover:
Online predictions: