diemsim is an optimized Python library to compute "Dimension Insensitive Euclidean Metric (DIEM)", surpassing Cosine similarity for multidimensional comparisons.
Our proposed approaches,
Compact Vectorization optimizes latency of the existing function 'DIEM_Stat' by around 46.50%
Compact Optimized getDIEM optimizes latency of the existing function 'getDIEM' by 34.27%
Install the package via pip:
pip install diemsim
from diemsim import DIEM
N= 12
maxV= 1
minV= 0
n_iter= int(1e5)
S1= np.random.rand(N) * (maxV - minV) + minV
S2= np.random.rand(N) * (maxV - minV) + minV
# Initialize DIEM
diem= DIEM( N= N, maxV= maxV, minV= minV, n_iter= n_iter )
# Compute DIEM value
value= diem.sim( S1, S2)
print( "Output Value: ", value )
Find Quick Start notebook here
Boddu Sri Pavan ,
Chandrasheker Thummanagoti
Please refer CONTRIBUTING.md for contributions to diemsim
BibTeX
@software{diemsim,
title = {diemsim: A Python Library Implementing Dimension Insensitive Euclidean Metric (DIEM)},
author = {Boddu Sri Pavan, Chandrasheker Thummanagoti},
year = {2025},
publisher = {Zenodo},
version = {v1.0.0},
doi = {10.5281/zenodo.15351274},
url = {https://doi.org/10.5281/zenodo.15351274}
}
APA
BodduSriPavan111. (2025). BodduSriPavan-111/diemsim: Initial Release (v0.0.1). Zenodo. https://doi.org/10.5281/zenodo.15351275
BibTeX
@misc{tessari2025surpassingcosinesimilaritymultidimensional,
title={Surpassing Cosine Similarity for Multidimensional Comparisons: Dimension Insensitive Euclidean Metric},
author={Federico Tessari and Kunpeng Yao and Neville Hogan},
year={2025},
eprint={2407.08623},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2407.08623},
}