I have a small dataset (117 training examples) and many features (4005). Each of the training examples is binary labeled (healthy / diseased). Each feature represents the connectivity between two different brain regions.
The goal is to assign subjects to one of the two groups based on their brain activity.

What methods are there for generating new artificial training examples based on the existing training examples?

An example I could think of would be SMOTE. However, this technique is usually only used to balance unbalanced datasets. This would not be necessary for my set, since it has about the same number of training examples for both label classes.

  • $\begingroup$ Whilst you can definitely create a generative model, this is not a way to improve performance of a classifier. That's the data science equivalent of the cartoon where a character stands on a sail boat and blows into the sail to make it go faster. Could you clarify what you want to use the examples for? $\endgroup$ Apr 3 '19 at 14:01
  • $\begingroup$ I would like to use the artificial training examples as additional examples to train an SVM. Haha, thanks for that metaphor! $\endgroup$
    – zwithouta
    Apr 3 '19 at 14:19
  • $\begingroup$ I'm pretty sure data augmentation is only possible when you have some idea of what the underlying data distribution is. Image datasets, for example, can be augmented with rotations. This works because we intuitively know that the set of natural images is generally closed under rotation. Do you have any prior knowledge about your data that would enable you to make some assumptions about their distribution? $\endgroup$ Apr 3 '19 at 19:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.