Yes. This is probably the most common question I’ve heard. Consider the information about classes “lost” from any prior training.
There is no “ideal ratio” only what works for your application. You will have to collect and label data until the model performs as well as you need it to. Remember that no model is perfect, and there will still be some likelihood of misclassification. Including animals will be helpful, as you provide examples to the model on what a person is not.
I think having much more variety in your image dataset can help. It’s likely the lack of variety in data leading to the model to overfit and stop training earlier than it should. Supplementing your dataset with additional images will be a big help. It would be good to remove any duplicate or near-duplicate images from your dataset, as they won’t add much value, only training time.
They’re still a person, so they should still be labeled as such. If you can tell it’s a person that label should be there. Otherwise it will ‘confuse’ the model, as it has detected a something that resembles a person, but the information you provided says it is not.
fiftyoneFiftyOne — FiftyOne 1.3.0 documentation is a great tool for evaluating datasets and find errors. There are other libraries you can find with a simple web search, but I would recommend fiftyone.