While I wanted a forecast for a very niche hierarchy combination (Store=1, Dept=2),I had to wait for the model to train on all hierarchy combinations,whose results weren't as important to me at that point in time.On top of that fetching predictions too was a very time consuming process and honestly slightly complicated.
Hence to address this issue to longer training and retrieveing results for what is needed at this point of time,I have created a calss based solution,which on run time dynamically slices the dataset on basis the heirarchy combination the user passes as paramter for creating a training job.There is also a caching feature to avoid retrainings.
I strongly feel that this could be incorporated as an Azure forecasting service which could work much like how the cognitive services work(by directly calling the api and fetching this results).Furthermore this could also be converted into a forecasting SDK.Infact I have the whole blueprint,designs and the flow diagram ready as to how the web interface could look like and how this can be extended furthermore with databases to store results,generating iframes for the forecasting charts that could be embedded elsewhere in a HTML page.
I know my code isn't really perfect,but I would love to know your feedback on where I could improve,or perhpas make this whole process even more optmized.
Incase if you'll do go ahead with this idea for the service or the sdk(I would love to contribute towards it's development).I just hope my solution happens to serve as a good starting point.
Hello, @amlrelsa-ms, @jialiu103 ,I have a suggestion for Custom Hierarchical Time series forecasting
Reproducing the steps as mentioned in the notebook with a compute resource of STANDARD_DS11_V2 over the dataset took more than 2 hours to train.
While I wanted a forecast for a very niche hierarchy combination (Store=1, Dept=2),I had to wait for the model to train on all hierarchy combinations,whose results weren't as important to me at that point in time.On top of that fetching predictions too was a very time consuming process and honestly slightly complicated.
Hence to address this issue to longer training and retrieveing results for what is needed at this point of time,I have created a calss based solution,which on run time dynamically slices the dataset on basis the heirarchy combination the user passes as paramter for creating a training job.There is also a caching feature to avoid retrainings. I strongly feel that this could be incorporated as an Azure forecasting service which could work much like how the cognitive services work(by directly calling the api and fetching this results).Furthermore this could also be converted into a forecasting SDK.Infact I have the whole blueprint,designs and the flow diagram ready as to how the web interface could look like and how this can be extended furthermore with databases to store results,generating iframes for the forecasting charts that could be embedded elsewhere in a HTML page.
This is the link to my solution notebook
I know my code isn't really perfect,but I would love to know your feedback on where I could improve,or perhpas make this whole process even more optmized. Incase if you'll do go ahead with this idea for the service or the sdk(I would love to contribute towards it's development).I just hope my solution happens to serve as a good starting point.
PR - @ #1627