/water_stress_proj

Primary LanguageJupyter Notebook

water stress proj

This project will be inspecting the effects of water stress found from remote sensing data.

  1. Indentifying points of interest using change point detection
  2. Use Casual Impact to measure the effect of a point of interest
  3. Applying the first two point to forcasts to aid preventative measures

Image of Proj

How to Use

1. Load and normalize data

input data should be monthly resampled dataframe with NDVI,SPEI and predictive/correlating variables to help the forecasting loading

2. Train model

train

3. add forecasted data to original data

3

4. init bench testing

4

5. run benchtesting

6

6. calculate casual impact for changepoints

first casual impact from dataframe is shown 7

File descriptions:

filename description
segmentation1.ipynb Creating the synthetic dataset
--- Benchtesting the algorithms on the synthetic dataset
segmentation2.ipynb prototyping on the real NDVI dataset
--- check witch changepoints like in the drought-linked pointer years
all_in_one___periodic_wave.ipynb an example on how to use the classes made in this repo to benchmark the change point algorithms on the datasets
benchmark.py benchmarking class to run the benchmarks
helper.py file containing helper functions
lstm_model.py file containing the model to facilitate forecasting
r_files folder contains all the necessary files to run the R environment to do the checks for BFAST and BEAST on the synthetic dataset

requirements

References

  • Ensign DL and Pande VS. Bayesian Detection of Intensity Changes in Single Molecule and Molecular Dynamics Trajectories. J. Phys. Chem B 114:280 (2010)
  • C. Truong, L. Oudre, and N. Vayatis. Selective review of offline change point detection methods. Signal Processing, 167:107299, 2020.