Time Series Prediction for multi-input multi-output

1 次查看(过去 30 天)
Assume a simple and hypothetical scenario (similar to my problem) like
ID VisitDate Weight Height LowBP HighBP
1 Jan 1, 2010 76 5 76 119
1 Mar 10, 2010 77 5 73 119
1 July 1, 2010 76 5 76 120
2 Feb 2, 2009 55 5.5 70 132
2 Mar 5, 2009 60 5.5 70 132
2 Aug 2, 2009 57 5.5 71 130
.
I would like to predict LowBP and HighBP after 1 month, 2 months, etc.
As you can see the baseline for each patient will be different and the interval is not equal as well. In addition to that I’ve less data and also some missing data.
My questions are:
How to tackle this problem especially the initial stage of preparing the data. Do I need to create some more columns for t+1 values of LowBP and HighBP and copy the next record of each patient as a future value.? In that case the last record will have no future value and I may need to delete it. This is I believe window or lag method.
Do I need to make it a time series? If yes then how it can be multi-input and multi-output?
Do I need to train separately for each ID or I can combine all together? In the real scenario each ID has different slope. It can happen that for same input we have different output for 2 different IDs maybe because of Age or any other factor that is not included as predictors. I've few IDs and for each ID you can say around 4 records on average. So if I try to train NN for each ID, it may not be a good fit.
How could I split for train and test data? Do I need to keep all the last records of each patient as test data. Is this different than the normal supervised or unsupervised prediction where the order doesn't matter.
Which network would be better for this scenario? NarxNet, LSTM, or something else?
I'm using Matlab 2016 for Windows.
Thanks.

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by