I think that whether overtraining happens depends on many factors, e.g., network architecture, loss function, data, etc.
To address the case that y1 is easy to learn compared with others, maybe we can construct a shared network backbone, and then adding specific head (or sub-network) for each yi. So each sub-network would be learnt separately according to the loss part containing yi.