Simple python implementation of Weighted Tanimoto Extreme Learning Machines
Proposed model is a binary classifier belonging to the family of Randomized Neural Networks. From technical perspective it is a 1-hidden layer neural network, which uses a generalized Jaccard coefficient as an activation function
where only output weights are trained using L2 regularized least squares method. This can be seen as a variation of an old idea of RBF networks, RVFL model or ELM approach. Whatever you call it, it is a suprisingly simple and fast classifier which achieves a very good results in a particular types of problems.
TWELM is quite specific model, so make sure that it is well suited for your problem, by answering following questions:
- Is your data represented as sparse, binary vectors?
- It your problem a binary classification?
- Do you care about balanced accuracy (or GMean)?
- Do you need a fast, low-parametric model (possible at the cost of accuracy)?
If you answered yes for all the above - TWELM is for you, have fun!
@article{czarnecki2015weighted,
title={Weighted Tanimoto Extreme Learning Machine with Case Study in Drug Discovery},
author={Czarnecki, Wojciech Marian},
journal={Computational Intelligence Magazine, IEEE},
volume={10},
number={3},
pages={19--29},
year={2015},
publisher={IEEE}
}