How can I reduce the volume of data (No column to be dropped)? I have a data set of 80,000 samples (40k 3 axis accelerometer and 40k Gyro data). I am trying to implement KNN and Random Forest for activity recognition on ESP8266 Node MCU. The limited memory of the MCU is the bottleneck of the process.
Is there any method that can reduce the dataset to, say 5000 records without losing any vital information and without affecting overall accuracy? Dimensionality reduction, as I could understand with my non-mathematical background, is reducing the data by dropping less important columns. However, in my case, I cannot drop any column (only 6 columns are there which are x,y,z values of accelerometer and gyroscope).
Sample data:
You are the domain expert on this, but these are the two practical approaches, I have utilized depending on the use case and effect on performance:
1. Downsample: Let say, randomly choose 5,000 out of 80,000 records. To maintain the same proportion of classes as in the population, go for stratified random sampling.
2. Reduce the precision of measurements (i.e. less decimal points) and aggregate data to capture the frequency of similar records as a new feature. If you have repeating records you can do this without compromising on the precision too.