I have data which have complete information. Each record has one class assigned. On production, I won't be able to get so many information from a user, so I want to create a model which will be able to make inferences from incomplete data and making more and more reliable predictions with getting more information from a user.

For Example:


  1. Training data - 200 binary features, In rows in average 11 of them are marked as 1, another 189 as 0.
  2. Production - We give our user list of features to mark which of them is most common(Let's suppose that user picked 3 of them), then I want to make some inferences and ask good questions to get more accurate predictions.

My second problem is that my dataset assumed that user can belong only to one class, whereas in fact user on production can be multi label. Say, in my dataset there is situation that: -class 1 has 5 features annotated as true at random(allways the same), rest always false -class 2 has 5 DIFFRENT features annotated as true at random(allways the same), rest always false

Notice, I have a list of possible features for each class, so I can easily calculate conditional probability of class depends on features, so I tried to use Naive Bayes, but my features are not independent.

On production can occur situation that user will be in class 1 and 2 and will have some features from class 1 and some from class 2. I want to that my algorithm will figure it out that it is in class 1 and class 2.

What algorithm should I use? I was thinking about decision trees, but in that, I cannot give user choice what is the most common for him and in that situation.

Thanks in advance for your help!

  • $\begingroup$ So, you have 200 binary features, and 200 samples for training? $\endgroup$ Sep 11 '18 at 13:18
  • $\begingroup$ Maybe I explained it wrong. I have about 34k samples for training. My first problem is how to make predictions from incomplete data on production. My second problem is that my training set is a bit "synthetic". It assumed that user can be classified only to one group, whereas in fact user can be multi-class. $\endgroup$
    – Kamil 111
    Sep 11 '18 at 13:20
  • $\begingroup$ If there is only two possible classes, and it is also possible that a user belong to both classes, you might make the target as probability of classes. I think it is also normal if you have distinct target in training i.e 0 and 1, you can output prediction of the probability of two classes. Nevertheless, it's not ideal as you don't have sample of users belong to 2 classes in training. $\endgroup$ Sep 11 '18 at 14:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.