Restoring balance: principled under/oversampling of data for optimal classification