# Recommended multiclass classification algortihms for this particular problem

I'm using this dataset, https://archive.ics.uci.edu/ml/datasets/Drug+consumption+%28quantified%29, in a research whose main goal is to find correlations among attributes that influences people to be addicted to some "illegal" drugs. For example, people who are womem, aged between 25-34 and likes too much chocolate, has a probability of x% to also be addicted to cannabis.

After preprocessing de original database, I now have the following attributes:

Inputs:

18-24
25-34
35-44
45-54
55-64
65+
GENDER
EDUCATION
N
E
O
A
C
I
SS
CAFF
NICOTINE
CHOC
ALCOHOL


Classes:

AMPHET
AMYL
BENZOS
CANNABIS
COKE
CRACK
ECSTASY
HEROIN
KETAMINE
LEGALH
LSD
METH
MUSH
VSA


As you can see, this is a multiclass classification problem, where a sample can belong to more than one class at the same time. Below there is a example sample that belongs to several classes:

My question is: which algorithm(s) best suit for this classification and correlation problem? I've already taken a look in Multinomial Naïve Bayes and Decision Trees, but I'm not sure if these algorithms can solve this particular kind of problem well.

OBS. I'm using Python with Scikit-learn.