Currently, I'm using Scikit-learn
in Python 3.6
to classify data with a 7-8 classes (e.g. [C, A.1, A.2, B.3, B.1.1, B.1.2, B.2.1, B.2.2]
represented by dark borders below) but I started realizing that there is an inherent hierarchy in these groups that could be used during classification. I was going to write my own algorithm but I don't want to reinvent the wheel if one exists.
Does an algorithm that can predict class-labels in hierarchical manner like this exist (preferably in Python
)? If not, are there any examples of an approach like this being used? It reminds me of layers in a neural network but I do not have nearly enough samples for a neural net.
For example, A.1
and A.2
in Level-1
are subgroups of Level-0_A
. Level-0_C
has no subgroups.
autoencoder
for feature extraction and then use the trainedencoder
sub-model to train arandom forest
for classification (multiclass, 5-classes). Is it possible to adopt this architecture in your library (base learning:autoencoder
, meta-learner:random forest
)? $\endgroup$