Approach to labelling new data for training
I don't want to go through all the new cat and dog photos labelling whether each one is a cat or dog.
This is basically the reason you do ML. Your model predicts category of new cats and dogs from a set of labeled images your model has seen before.
If you mean the distribution of new input might change over time e.g. new pose or style of photos that you did not have in your previous training set start to show up more, then there are options:

First and Best: Manually label a training-set out of them and retrain the model!
Weakly Supervised Learning: Label at least some from each class beforehand (Semi-supervised Learning) or in a querying schema (Active Learning)
Last and Least: Try clustering and if your lucky and data in each class has a friendly (!!!) distribution, you can tag your data using majority of labels in that cluster (theoretically you can see this as a KNN problem as well)

I tried to throw keywords so you can go on reading yourself. Hope it helps.