The cosine similarity between two identical spectrograms is not 1
sjsjsj25915302 opened this issue · 3 comments
sjsjsj25915302 commented
I found that when calculating cosine similarity, the score for two identical spectrograms is not 1. After simple debugging, it was found that there seems to be an indentation error in line 173 of the tools.py file. Some code that seems to be in the while loop is not in the loop
YuanyueLi commented
Hi,
Could you share with me the raw spectrum data? So that I can debug it. Thanks.
Best,
Yuanyue
sjsjsj25915302 commented
李老师您好:
我是武汉大学高等研究院在读博士生。在本人的课题中需要进行二级匹配和作图。发现您在二级谱图匹配上做了全面的研究并编写了方便使用的python包。我在使用您发布的spectral_entropy的项目中的spectral_similarity.similarity计算余弦相似度的时候,发现有时候相同谱图得分不为1.
上周经过调试我觉得可能是缩进错误,但是最近发现可能是ppm参数问题.我输入的是n ppm的n,不带科学计算法的e-6部分。在tools.py
match_peaks_in_spectra的函数中,只给定ppm参数时ms2_da的计算乘以了1e6,可能是里出现了一些问题。我也尝试了在spectral_similarity.similarity的ppm参数输入30,30e-6,等均得不到正确余弦相似度。如果计算ms2_da时乘以1e6,那输入可能需要30e-12才能得到正确结果,这和我们平时定义的ppm有些偏差。测试的两张谱图为np.array([[100,10],[200,25],[300,40]])。附件有一个.md的说明文件
本人能力有限,可能对代码理解错误,如有错误请老师指正
…------------------ 原始邮件 ------------------
发件人: "YuanyueLi/SpectralEntropy" ***@***.***>;
发送时间: 2024年3月7日(星期四) 晚上11:09
***@***.***>;
***@***.******@***.***>;
主题: Re: [YuanyueLi/SpectralEntropy] The cosine similarity between two identical spectrograms is not 1 (Issue #10)
Hi,
Could you share with me the raw spectrum data? So that I can debug it. Thanks.
Best,
Yuanyue
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
YuanyueLi commented
您好,非常感谢您的消息。您提到的问题的确是我代码中的一个bug,现在已经修复。欢迎下载最新的代码重新测试,如发现有其它的问题,欢迎提供进一步的反馈。
再次感谢您的评论,谢谢!