Why creating datasets for Machine Learning (ML) is Important
Something wonderful is happening. Nowadays finding the right and powerful algorithms for machine learning and deep learning tasks are easy. Open-source resources are increasing and universities, R&D …
Something wonderful is happening. Nowadays finding the right and powerful algorithms for machine learning and deep learning tasks are easy. Open-source resources are increasing and universities, R&D labs, and other centers creating new machine learning and deep learning algorithms with clear and complete documents.
But still finding a high-quality dataset with the proper label is very difficult and sometimes very expensive.
Good data is challenging Even for Basic ML Tasks
Accessing good data for even very basic machine learning tasks is very challenging and important. With untrusted and bad data, we will never be able to get a robust and reliable result. Each field and business needs its dataset and has different challenges to collect suitable data. LiDAR remote sensing for autonomous vehicles needs a special 3D point cloud dataset for object identification and semantic segmentation, which is extremely difficult to hand label.
We can generate and collect data in real life by experimenting.But with only a fixed dataset we are not able to evaluate many aspects of machine learning algorithms.
with a fixed dataset, there is a fixed number of samples, a fixed underlying pattern, and a fixed degree of class separation between positive and negative samples.
In this situation, a synthetic database comes into the picture. Synthetic datasets are information created artificially and useful when gathering high-quality labeled datasets that are prohibitive.
Features of a Good Dataset for ML (Synthetic or Real-Life)
While we create a synthetic dataset programmatically, a real dataset is collected from different sources such as medical images, sensor reading, web browsing history, comments on online shops, number of customers of megastores in different seasons, and other sources.
Apart from sources, a valuable and valid dataset must have some desirable features.
Here are some examples,
- It should include a mix of numeric, binary, or categorical (ordinal or non-ordinal) features and the number of features and length of the dataset should be non-trivial
- Random noise should be interjected into the synthetic dataset
- There must be some degree of randomness to it
- If it is used for classification algorithms, then the degree of class separation should be enough to achieve decent classification accuracy but also not too large to make the problem trivial. For synthetic data, this should be controllable to make the learning problem easy or hard
- Dataset must be generated fast enough to enable training with a large variety of datasets
- The cost of generating a synthetic dataset must be lower than collecting a real-life dataset
- For a regression problem, a complex, non-linear generative process can be used for sourcing the data.
As we saw above synthetic generated dataset sometimes can be very useful and helps to experiment with situations where a real-life dataset is not available but we can never stop collecting and using the real-life dataset.