Skip to content

Is it possible to do a growth rate change detection using canari ? #69

Description

@PranayMehta

I stumbled upon this library while search for online changepoint detection. My requirement is to identify growth rate based change. Most of the algorithms try to detect step changes, outliers or anomalies. But we have a different requirement where in, everyday, I need to understand if the growth_rate for a given signal has changed or not. I cannot use future data points since I want to make the decision today.

Hence, at a given time t I can use only t - N data points for my decision.

An example of a growth rate change is something like this - imagine a signal with base_mean 100 and std_dev 10 (10% variation). The signal grows with 0.16% CDGR (compounded daily growth rate) for first X days. After that, there is rise in the growth of the signal and now it grows at 0.32% CDGR growth rate for next Y days. I want to be able to detect this (with a certain lag). So, if X = 30 days, then it means from 31st day onwards the signal will grow at a new growth rate - we want to capture this. I understand that measuring this very quickly is not possible and the detection_lag might be high if the acceleration/growth rate change is slower.

Alternatively, if the signal is growing with the same rate everyday (linear line) then I do not want the algorithm to detect any changes.

Below is an example of growth rate change - signal grows at 0.16% for first 90 days (blue area - PRE regime) and then 0.32% for next 90 days (red line - POST regime)

Image

Below is an example for no-growth change - growth remains the same through out the entire 180 day period

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions