I was recently asked if I had ever thought about trying to predict CVE growth. I had not, or really didn’t even know where to start, but after some research, I found the Prophet project that is a forecasting algorithm open-sourced by Facebook and uses the GAM family of algorithms.
Using prophet with the NVD data in a Jupyter notebook was a lot easier than I expected, and for the first iteration, I am thrilled with the outcome.
Graphs
Data
Looking at the individual data points is extremely interesting. Here are the top 10 predicted days for the rest of the year, and it will be interesting to see how close the prediction is.
Date | Prediction | Prediction Low | Prediction High |
---|---|---|---|
2021-10-20 | 78.0 | 40.0 | 114.0 |
2021-10-13 | 78.0 | 38.0 | 111.0 |
2021-10-06 | 77.0 | 39.0 | 114.0 |
2021-10-27 | 75.0 | 38.0 | 113.0 |
2021-07-21 | 75.0 | 39.0 | 112.0 |
2021-09-29 | 75.0 | 38.0 | 111.0 |
2021-09-22 | 74.0 | 35.0 | 112.0 |
2021-10-21 | 74.0 | 37.0 | 108.0 |
2021-10-14 | 74.0 | 41.0 | 114.0 |
2021-07-28 | 74.0 | 36.0 | 109.0 |
Code
I have put the Jupyter notebook in this Github Repo and will continue to make updates and tweaks to explore time series prediction.