Skip to content

dongzhiming/SMEA

 
 

Repository files navigation

SMEA

A Self-Organizing Multi-objective Evolutionary Algorithm implemented to find coherent bi-clusters in the data

This is a customized implementation of a Self-Organizing Multi-Objective Evolutionary Algorithm presented here. SMEA is used to find the coherent bi-clusters in training dataset. A bi-cluster consist of a cluster of some training instances and a cluster of some features. A bi-cluster is coherent if the features in feature cluster are important for the training instances in the training instance cluster. Thus both clusters vary coherently.

The goodness of a bi-cluster is measured with multiple metrics including Mean Square Residue (MSR), Row Variance (RV), Bi-cluster Index (BI), Bi-cluster Size (BS), Bi-cluster Volume (BV). Thus to optimize these multiple objective functions, we use SMEA. The bi-clusters can then be used to determine which features are important for a particular category of training instances.

The algorithm is mainly implemented in file sompy/main_bi.py.

Sompy is the implementation of Self-organizing map which have been taken and modified for this problem from here.

About

A Self-Organizing Multiobjective Evolutnary Algorithm implemented to find coherent biclusters in the data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%