Thanks ptrblck that’s really helpful especially around training/ test,  did not consider this!!
Think I’d rather train one big model. Something I should possibly have mentioned is that the hierarchy has order and the end result/performance does rely on accuracy at higher levels.
I guess the part that is confusing me for implementing, is, should the ‘sub’ models require an input from the higher level model, or be used to filter somehow? Additionally do I need to do anything special to the model loss given each level has separate targets?
Thanks again!