# How to deal with dynamically changing input tensor in neural networks without padding?

I have a dataset about the monitored health/growth of a community of people. The dataset has tensor shaped (batch_size, features, person, window), where:

• person==10 means there are 10 people in the community
• features==9 means that there are 9 features being monitored, for example, blood pressure, sugar level, ..etc
• window==15 means the recorded value of each feature every day for 15 days (time dimension)

Moreover, people can join/leave the community, so the person dimension would increase/decrease over time. For simplicity, the window dimension is fixed at 15, then a new person that joined has to be in the community for a minimum of 15 days to be included in the dataset as 1 data point/sample. Also, say the number of features is fixed at 9. Hence, for this problem, only the number of people at an instance may change over each input interaction.

For example, assume batch_size==1 then the input dimension into the neural network would be something like:

Iter 1: (1, 9, 7, 15)
Iter 2: (1, 9, 7, 15)
Iter 3: (1, 9, 7, 15)
Iter 4: (1, 9, 8, 15) # 1 person joins the community
Iter 5: (1, 9, 8, 15)
Iter 6: (1, 9, 7, 15) # 1 person left the community
Iter 7: (1, 9, 6, 15) # 1 person left the community
Iter 8: (1, 9, 6, 15)
Iter 9: (1, 9, 10, 15) # 4 person joins the community


Is there a way to deal with this dynamically changing input tensor in neural networks without padding? As we won't know in advance how many people will join/leave the community (related to continual learning?) hence won't know the maximum pad.

Also, how to deal when batch_size is not 1?

• So, each community contains certain number of people, and each of them has specific characteristics? You want to infer something about the community, based on it's residents? – mark mark Jan 24 at 21:10
• What is the target variable you are trying to predict? – brazofuerte Apr 5 at 9:58