1
$\begingroup$

Let's say I am trying to learn a classifier. I have a set of observations, with output $y_i$ and features $a_i$ and $b_i$. But for each observation, I know that if I have output $y_i$ for features $a_i$ and $b_i$, increasing $b_i$ while keeping $a_i$ fixed will also yield the same output $y_i$. I know this from domain knowledge, but it's rare to see two observations where $a$ is the same, so it may not be directly visible from observed data.

Example: imagine that our observations are stock buy and sell decisions. Let's say $y_i$ is 1 if the stock was bought, and 0 if it was sold, and we have two features - $a$ is some observation about the company, and $b$ is price. So if in our supervised learning example, we see the observation that the stock was bought at price $b_i$, that means that it would also have been bought at any price lower than $b_i$, all other features being equal. But we do not know if it should be bought or sold at prices higher than $b_i$. Likewise, if it was sold at some price, it would have also been sold at any higher price.

How should I encode that fact in my training data? Should I just generate "fake" observations with output $y_i$ and different values $b > b_i$? If so, how many and at what intervals? Or is it a bad idea, because the observation may be erroneous, and adding additional "fake" observations that way would give it more weight?

$\endgroup$

1 Answer 1

2
$\begingroup$

What you are proposing is a type of data augmentation, which is a very standard technique. It will of course affect the results at test time, thats kind of the point ;-) As far as multiplying the effect of any bad observations => yes, but in proportion to the augmentation, and all data points are presumably being augmented in a similar way? So, the effect of augmenting the data should not increase the proportion of bad data.

Whether it's useful to augment your data is unclear from your question. Generally speaking, I would expect the data near the hyperboundary separating your classes to be the most important in deciding the classification for new data, whereas your augmented data will tend to be further from the boundary than the original data points?

$\endgroup$
2
  • $\begingroup$ Good point about augmented data being further from the boundary. I was just wondering if some non-linear models may 'assume' that output in some areas of the feature space may be anything, while I know what those areas of the feature space should output from the observations and knowledge about the domain. For example, I think KNN could benefit from having those additional data points? $\endgroup$
    – rinspy
    Commented Mar 29, 2017 at 9:22
  • $\begingroup$ Also, I was assuming this would be a standard technique for such "threshold" data, but I was not able to find anything on the topic (data augmentation mostly brings up techniques on transforming image data). Do you know if there is anywhere I could find a discussion of transformations for the kind of "threshold" values I am dealing with? $\endgroup$
    – rinspy
    Commented Mar 29, 2017 at 9:29

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.