Synthetic Data Generation: When Fake Data Beats No Data