# Hierarchical Multi-label Classification

I would like to make a classifier, where I can classify individuals from one hand, and from the other hand, understanding the data better, meaning figuring out which feature, is the most contributing.

I have two datasets, which are comparable; However, the labels for these datasets are somewhat different. Both datasets have samples with NO (healthy) and Yes(Cancer) labels; But one of the main factor, that makes them different is the inter medium labels; Dataset, has one class in between called (medium) while the other dataset has two intermediate labels ( Small risk, High Risk).

Of course, small risk, is just a risk and can lead to cancer, but also can stay healthy; and high risk has more chance to become cancer but might stay just as a risk; Last but not the list, in the other hand, medium in dataset one is basically a combination of small and high risk !

One can arbitrary group high risk together with cancer, and small risk with healthy; or some other way, and exclude samples from the other dataset ...

my question is here; Can I construct a hierarchical model on the response variable and let the classifier share these information among the group WITHOUT any additional grouping ?

I assume here is an example where Bayesian can gives some real help !

• Would you comment more on the real, underlying disease process and how the risk categories were assessed in each of the two datasets? Is an element of time involved, and is it available in your data? – David C. Norris Sep 13 '15 at 21:22
• @DavidC.Norris I have updated the question; hope now is more clear – user4581 Sep 14 '15 at 20:38
• What seems weird about your data is that they combine what sound like 'hard outcomes' (yes, this person has cancer; no, this person does not have cancer) together with modeled risk levels. Do you have access to the model used to assign the risk categories? Are you trying to update that same model using some new 'hard outcomes' data acquired subsequently to the original model estimation? How would you allocate credibility to the hard outcomes vs the assigned risk categories? Finally, how would you know--even in theory--whether or not you have made a good classifier? – David C. Norris Sep 14 '15 at 21:15
• @DavidC.Norris good point; well basically, we have the size of tumor (not the real size something like less than 1 cm [small risk], larger than 1cm and less than 5cm![high risk]); in the other dataset less than 6cm e.g (I don't know the exact number); The size of a tumour, only says about the risk, meaning not all tumours are cancerous but if they get bigger it is more likely the become carcinoma; – user4581 Sep 14 '15 at 21:56
• In that case, perhaps you would benefit from seeing this as an interval censoring problem of the kind I discussed in this reply stats.stackexchange.com/a/123321/41404 to another question. You seem rightly to have intuited that Bayesianism can help here. I'd wager that the best advantage of a Bayesian treatment is that it will empower you to posit latent variables (e.g., tumor size) that facilitate thinking about your problem in more concrete, realistic terms. Maybe a 'cancerous potential' variable drives size and also a time-to-event process in which the 'event' is conversion? – David C. Norris Sep 14 '15 at 23:33

At this point, I think I can answer your final question in the affirmative. Yes, a hierarchical Bayesian model would be highly efficient at sharing whatever information exists in these heavily interval-censored data. (It is through the latent variables in these models that this sharing would be accomplished.) A Bayesian approach would be especially fruitful if your priors embody a substantial amount of additional information about the disease process, or even about the vagaries of the data collection process.

It's altogether possible that such a modeling exercise will demonstrate that, even with your best efforts to provide strongly informative priors, your data are too heavily censored to tell you much. That would be a very useful finding, however, as it would allow you to abandon other, less efficient modeling methods in favor of devoting resources to searching for new data of higher quality--or perhaps recovering some of the underlying detail lost in your current data by going back to the pathologists' original notes. I find it hard to believe a pathologist would ever set eyes on an excised tumor sample without producing (somewhere!) an exquisite description of it. (The same holds for radiologists, if your data come from MRI or CT imaging.)

• have you seen a similar paper ? basically, from where I should start ? I am familiar with graphical regression / bayesian regression ... I appreciate a bit more technical explanation where I can practically start to model/code ... – user4581 Sep 17 '15 at 17:15
• Any introduction to Bayesian computing with JAGS or BUGS should suffice. You might try Kruschke's Doing Bayesian Data Analysis, 2nd ed for a start. – David C. Norris Sep 23 '15 at 19:16

First of all, you are converting the multi-class classification problem into a binary classification problem by labelling them as 0 and 1 (i.e. No risk and Sick). So one possible approach might be labeling them as 1,2,3,4 where 1=No, 2=SmallRisk etc. , then you have 4 classes and you can try to tackle 4-class classification.

Another approach can be regression. So labelling your 4 classes as [0, 0.33, 0.66, 1] then from the features, you estimate a number between 0 and 1. And you decide the class which is closest to one of those 4 numbers.

I would like to do feature selection and find those paramteres that can returns me the best result under this setup.

I suggest linear discriminant analysis for this. Simply give your labels as the first example (i.e. 1 to 4) and it will give you 4-1=3 features per sample, that have the minimum intra-class variance and the most inter-class variance. With those features, you can try to do 4-class classification.

• Thanks; I should have added this to my question; that data is made from two datasets; In dataset 1, labels are like labelling 1; and in dataset 2, labelling are like labelling 2; Of course, I can do a modelling on each dataset separetly, but it would nice to do it under one model. – user4581 Sep 13 '15 at 14:41
• If changing the labeling is not an option, then you will need to continue with binary classification. I would try support vector machines for that. – jeff Sep 13 '15 at 21:15
• The whole idea of the question, is about how to make a hierarchical model on the labels in order to use both datasets in the same time and share information between some of the groups. – user4581 Sep 13 '15 at 21:18
• I don't know much about hierarchical models but I doubt if it's relevant in the binary case. Anyway, one obvious way of using both datasets is using the common part (i.e. only the samples from classes 1,3 and 4). I cannot think of any other solution, mainly because I think both data sets are reducing the information that you could have with labeling them into 4 classes. They answer different questions; the first one answers "can they be sick?" whereas the second one answers "do they have a large risk?" so I don't see why do you want to combine them. – jeff Sep 14 '15 at 3:38
• The multi-class {1,2,3,4} idea is not appealing because there is a natural ordering to these classes, and treating them nominally is not ideal. – jlimahaverford Sep 16 '15 at 20:31