in PyMVPA (0.4.3) we have a TreeClassifier which was destined for such
use:
class TreeClassifier(ProxyClassifier):
"""`TreeClassifier` which allows to create hierarchy of classifiers
Functions by grouping some labels into a single "meta-label" and training
classifier first to separate between meta-labels. Then
each group further proceeds with classification within each group.
Possible scenarios::
TreeClassifier(SVM(),
{'animate': ((1,2,3,4),
TreeClassifier(SVM(),
{'human': (('male', 'female'), SVM()),
'animals': (('monkey', 'dog'), SMLR())})),
'inanimate': ((5,6,7,8), SMLR())})
would create classifier which would first do binary classification
to separate animate from inanimate, then for animate result it
would separate to classify human vs animal and so on::
SVM
/ \
animate inanimate
/ \
SVM SMLR
/ \ / | \ \
human animal 5 6 7 8
| |
SVM SVM
/ \ / \
male female monkey dog
1 2 3 4
> Dear MVPA experts,
> Thanks,
> /Alireza
--
.-.
=------------------------------ /v\ ----------------------------=
Keep in touch // \\ (yoh@|www.)onerussian.com
Yaroslav Halchenko /( )\ ICQ#: 60653192
Linux User ^^-^^ [175555]
smth like this
http://www.pymvpa.org/examples/start_easy.html
just replace SMLR() there with a TreeClassifier I've mentioned before ;)
also you could read your .mat files from within Python...