Your answer is actually based on what we always do in machine learning. We collect datasets, split to training and testing set, we train using the training set, and evaluate performance based on the testing set.
Assume you have 100 matches with all statistics and parameters you want to use in the training (such as ball possession, number of shots, corners, etc). You can take 80 of these matches for training and the rest of 20 matches for evaluating the model you created based on 80% of data simply because you already know that "future" statistics and outcome to compare with the output of your model to check the performance.
I hope this answers your question.