Your question is Prevent Overfitting on Small Data. Take a moment with it on the right.
Talk me through your thinking if you like. When you're confident, submit your answer and I'll grade it like a real screen (7/10 or better passes).
You're training a complex supervised model, but the available dataset is small and proprietary. You want the model to generalize well rather than memorize training examples.
What strategies would you use to prevent overfitting when training a complex model on a relatively small, proprietary dataset?