This package provides an implementation of the Similarity Embedding Framework (SEF) on top of the PyTorch library. The documentation of PySEF is available here.
The vast majority of Dimensionality Reduction techniques rely on second-order statistics to define their optimization objective. Even though this provides adequate results in most cases, it comes with several shortcomings. The methods require carefully designed regularizers and they are usually prone to outliers. The Similarity Embedding Framework can overcome the aforementioned limitations and provides a conceptually simpler way to express optimization targets similar to existing DR techniques. Deriving a new DR technique using the Similarity Embedding Framework becomes simply a matter of choosing an appropriate target similarity matrix. A variety of classical tasks, such as performing supervised dimensionality reduction and providing out-of-of-sample extensions, as well as, new novel techniques, such as providing fast linear embeddings for complex techniques, are demonstrated.
You can simply pip install pysef!
Be sure to check the documentation of the project.
You can find more details about the Similarity Embedding Framework in our paper.
If you find PySEF/SEF useful please cite the relevant publications. The PySEF library is described in:
@article{passalis2018pysef, title={PySEF: A Python Library for Similarity-based Dimensionality Reduction}, author={Passalis, Nikolaos and Tefas, Anastasios}, journal={Knowledge-Based Systems}, year={2018}, }
while the method was derived and evaluated in detail in:
@article{passalis2017sef, title={Dimensionality Reduction Using Similarity-Induced Embeddings}, author={Passalis, Nikolaos and Tefas, Anastasios}, journal={IEEE Transactions on Neural Networks and Learning Systems}, year={2017}, }