3
$\begingroup$

I'm trying to understant the benefit apported by the step of data augmentation in a classification algorithm. I have a vector of hexadecimal strings and a column vector containing the label associated with the string in the same position. As an optional step in the classification algorithm, a data augmentation process is performed by subsetting the strings in pieces and replating the associated label for the number of split performed.

What are the benefit of this process?

$\endgroup$

2 Answers 2

3
$\begingroup$

Overfitting occurs when you have too few records relative to other parameters (e.g., predictors or features). I'm not familiar with your data, but it sounds like the subsetting is creating additional records.

$\endgroup$
4
  • $\begingroup$ Ok so i create additional records that are mapped to the original ones with a relation 1 to n to overcome overfitting linked to the lack of observation of certain labels. I get that. I thought that was some other complete statistical explanation $\endgroup$
    – tia_0
    Jul 24, 2016 at 18:49
  • $\begingroup$ @tia_0 "A data augmentation process is performed by subsetting the strings in pieces and replating the associated label for the number of split performed." That just sounds like adding more data, unless I've misinterpreted your statement $\endgroup$
    – Ryan Zotti
    Jul 26, 2016 at 19:08
  • $\begingroup$ Sorry, when I wrote back at you I was a little bit confused. You have already answered my question, thanks! $\endgroup$
    – tia_0
    Jul 26, 2016 at 21:14
  • $\begingroup$ @tia_0 If I've answered it, could you mark it as the approved answer? It's the green check mark $\endgroup$
    – Ryan Zotti
    Jul 26, 2016 at 23:12
0
$\begingroup$

As correctly said in the previous answer, overfitting occurs when your model is not learning, but it is memorizing data. This leads in poor performances on the test set. If the training set is small the risk of overfitting is very high.

Data augmentation has the purpose to include variability in your dataset. I am more familiar with images, but the concept is the same. For each epoch you apply "some transformation" to your input data to prevent memorization. In the case of images, you can apply rotations or add noise. The informative content is not changed, but the model will not "see" the same image, it will not memorize, but you are aiding generalization.

I will use a metaphor. During school a common strategy is to memorize formulas and other stuffs to pass an exam. But if you do not learn the logic behind an equation, how to obtain a term instead of another one, you probably will fail the exam despite the fact that you have memorized everything.

Data augmentation is the equivalent of doing exercises on the same topic but changing each time the point of view in order to learn a global path and not memorize the information.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.