I apologize for the provocative question, but let me elaborate.
I am trying to wrap my head around the logic of synthetic data.

When you train a model what you are trying to do is to teach the ground truth to the model. You are trying to teach the underlying nature of the problem you are trying to solve.
The real data you have is a partial representation of the ground truth. Or, to put it in another way, it contains a certain amount of information regarding the ground truth.

The more information the model contains the closer the model will get to the ground truth (assuming the model chosen is the right model for the job and the training was performed optimally) and therefore the better it will perform in the prediction.

The process of synthetic data generation is all about trying to understand the ground truth to simulate real data, right? But since synthetic data is generated (in most cases) from the information contained in the real data, the process of synthetic data generation is not adding any new information. Creating new data points from real data doesn't get us closer to the ground truth, at least logically speaking.

Therefore, is it the case that maybe we need synthetic data only because the current models we have are not mature enough? They need more data points to get to the ground truth, even though the additional data points are not adding more information. Please show me if any (or all) of my assumptions and/or conclusions are wrong.

  • $\begingroup$ depends on the nature of the considered synthetic data $\endgroup$
    – Alberto
    Oct 27, 2023 at 10:03


You must log in to answer this question.