I have a task of Relationship extraction. There are some set of predefined relations in the corpus. I need to train classifier to recognize the type of relation or the lack of relation between every pair of nouns.
I chose to use a multi-class implementation of SVM. The problem was that I have different number of examples for different relations, for example, for relation type 1 I have 1000 examples in gold standard annotation, however for relation type 2 only 50 examples. The result of classification was very good result on type 1 and very bad on type 2 on validation set.
The solution was to use the same examples from the type 2 several times in my train set, such that the overall number of example of type 1 is close to the number of examples of type 2.
It gives pretty good result on test set. The question is how to explain this, why it actually works. For me it looks counter-intuitive, I didn't expect that using the same examples few times could help.