A field guide to the assorted species of faux data: Part 1
Synthetic data is, to place it bluntly, fake data. As in, data that’s not actually from the population you’re eager about. (Population is a technical term in data science, which I explain here.) It’s data that you simply’re planning to treat as if it got here from the place/group you would like it got here from. (It didn’t.)
Synthetic data is, to place it bluntly, fake data.
Artificial data, synthetic data, fake data, and simulated data are all synonyms with barely different heydays because the term du jour, so that they carry poetic connotations from different eras. Today, the cool kids prefer the synthetic data buzzword, perhaps because investors have to be convinced that something latest has been invented, quite than rediscovered. And there’s something barely latest in play here, but (for my part) not latest enough for all of the old ideas to be irrelevant.
Let’s dive in!
(Note: the links on this post take you to explainers by the identical creator.)
In the event you’ve suffered through a graduate course on advanced probability and measure theory like I even have (my therapist and I are still working through it over a decade later), you’ll be superfluously aware that there are infinite real numbers. Amongst other things, infinite signifies that in case you attempt to enumerate all of them, I can swoop in like a jerk and find you a brand new one, for instance by adding 1 to your largest number, taking the typical of your two closest numbers, or popping a digit on the back of the number with the longest series of digits after the decimal point.
This also signifies that in case you give me the list of all of the numbers ever recorded by humans over the history of humankind, I can still make a brand latest one. Boom! The facility.
Where am I going with this, besides providing fodder to your next beery debate on whether there’s such a thing as true originality (ugh)?
Let’s say you might have a dataset stuffed with human heights. Between any two measurements (say 173cm and 174cm, the interval wherein you’ll find my height) there are infinite possibilities for a number you might write down. Just keep lengthening the decimal place beyond the reasonable ability of our measuring tools. Beyond subatomic particles. Beyond common sense. There are still loads of numbers I could make up, like: 173.4335524095820398502639008342984598739874944444443842397593645873649572850263894458092843956389479592489586232342349832842849687394208287645545352525353353826482384724628732648732799999992323…
The foundations governing the creation of this silly number are thoroughly on the market beyond the realm of what’s useful and practical, so once you ask me to offer you a number that might represent a human height that you might add to your dataset, how might I approach your request?
Real world data
One option is to offer you real data from an actual human. I go searching the room, spot my bff Heather (true story, she says hi), and measure her to your dataset. In case your population of interest was all humans, her height would a legit datapoint to your dataset if (and that’s big if) I measured it in line with the principles you laid out for a way your population ought to be measured.
Noisy data
If I measure Heather’s height in laptops (I didn’t bring a tape measure to our weekend retreat, sorry) to the closest 13 inches whilst you measured heights in millimeters using one in all those meter rulers, we’ll have problems.
Once we say noisy data, we mean there’s nondeterministic error in there that hides the true answer. And that’s exactly what’ll occur if I get it into my head to measure Heather in laptops. (Or Smoots.)
Any measurement you’ll get from me can have random error in-built that’s of a special profile from what’s in the remaining of your data. To cope with the can of worms we’re potentially opening up here, you’ll want to include a record of the source of the information. (Who collected it — you or me?) You possibly can at all times nuke my entries later… so long as they’re not hiding amongst your legit contributions.
When collecting data from the actual world, it’s surprisingly easy to mess up. To learn more, try my series on data design and data collection:
Handcrafted data
Let’s say there was nobody to measure but you wanted one other datapoint anyway? (Why might you would like to do that and what are the professionals and cons? See my next blog post!)
You then’re saying you’re okay with synthetic data. (In the event you allow synthetic data into your project, at all times keep a record of which datapoints are synthetic and the way they were made!)
I could also offer you a height datapoint by making up a number following no rules in any respect. If I’m especially perverse, I would even throw out a posh number like -5 + 60*sqrt(-1) simply to mess with you. Did you say I couldn’t? You need to. In the event you’re letting me make stuff up, that you must constrain my creativity.
No imaginary numbers? Okay, how about -100?
Oh, it must be inside the range of actual human heights? How about that 173.43355240… number from earlier?
Too many decimal places because human measuring instruments aren’t that sensitive? High-quality, how about 173.5cm?
We would call this handcrafted data, since I, a human, got here up with it by handcrafting an example that appeals to me.
But what in case you wanted a couple of latest height to your dataset? And also you tell me to be reasonable and round my decisions to the closest millimeter?
Well, I would give you: 173.5cm, 182.4cm, 175.1cm, 190.2cm, 180.1cm
These are all plausible human measurements, but they’re on the tallish side. They likely don’t represent your population of interest thoroughly. They’re biased by my ideas of what good entries into your dataset appear like. And what do I find out about human heights in any case? You can do higher.
So let’s do higher in Part 2, where we’ll go on a journey that covers:
- duplicated data
- resampled data
- bootstrapped data
- augmented data
- oversampled data
- edge case data
- simulated data
- univariate data
- bivariate data
- multivariate data
- multimodal data
Or help yourself to my one in all my other data taxonomy guides here:
In the event you rejoiced here and also you’re searching for a whole applied AI course designed to be fun for beginners and experts alike, here’s the one I made to your amusement:
P.S. Have you ever ever tried hitting the clap button here on Medium greater than once to see what happens? ❤️