The obvious solution is to ensure that the training data is balanced - but in my particular case that is impossible. What corrections can one perform in such a scenario?

I know that my training data is heavily biased towards a particular class, say, and I cannot change that. Moreover, the labels are very noisy. Conditioned on this piece of information, is there anything I can do by tweaking the training process itself/ something else, to correct for the bias in the training data?

The data comes from an experiment (from an electron microscope), and I cannot collect more data. It's always going to be biased in this way, so alternatively-biased is also not an option. I'm sorry that I'm unable to provide any more details due to confidentiality.

  • $\begingroup$ Is this a programming question? $\endgroup$
    – Mithical
    Commented Aug 22, 2016 at 19:53
  • $\begingroup$ I'm VTCing as 'Unclear what you're asking'. $\endgroup$
    – Mithical
    Commented Aug 22, 2016 at 20:08
  • $\begingroup$ No, I'm talking about algorithmic changes $\endgroup$
    – Tejal
    Commented Aug 22, 2016 at 20:10
  • $\begingroup$ You'll have to add a lot more info into your question. Like, why the solution is impossible in your case. I'm still not sure what your problem is... $\endgroup$
    – Mithical
    Commented Aug 22, 2016 at 20:12
  • 1
    $\begingroup$ What prevents you from adding additional unbiased (or alternatively-biased) training data? $\endgroup$ Commented Aug 22, 2016 at 20:20

1 Answer 1


I feel like from the information your giving (some sort of biased data) you can't get an answer as robust as you'd like (what algorithmic changes can be made).

In general, the reason these methods like DNN's work is that they learn from the data. What you train it to do is what it is capable of, and there's little one can do to 'balance' it to classes of data it just never sees. It's like training someone to do algebra then giving them a trigonometry test. It's all math, sure, but you just never can expect much without the proper learning.

That being said, you should perhaps look at other methods to work with this data, or to approach the problem. Given that you cannot collect unbiased data and that you can't explain more due to confidentiality, I really doubt anyone here can help you that much.

I can at the most point you to this article : "Classification on Data with Biased Class Distribution".

And suggest that perhaps your current approach may not be the most appropriate given the unfortunate circumstances.

  • $\begingroup$ Thanks! I found this paper that is very relevant to my problem - arxiv.org/pdf/1412.6596v3.pdf. I should have mentioned that my labels are very noisy, so stratified sampling is not a solution. $\endgroup$
    – Tejal
    Commented Aug 22, 2016 at 23:45
  • $\begingroup$ I see. Good to know you found a relevant paper. Good luck in your research! $\endgroup$
    – Avik Mohan
    Commented Aug 23, 2016 at 13:47
  • $\begingroup$ @Tejal Could you post this paper as an answer with some details why it was relevant to your problem and how did you solve it. $\endgroup$
    – kenorb
    Commented Jan 12, 2017 at 12:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .