如何比较三个预先训练好的模型之间的余弦相似性? [英] How to compare cosine similarities across three pretrained models?

查看:0
本文介绍了如何比较三个预先训练好的模型之间的余弦相似性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个语料库--一个是所有女性领导人的演讲,另一个是男性领导人的演讲。我想测试一个语料库中两个词之间的余弦相似度与另一个语料库中相同两个词之间的余弦相似度显著不同的假设。这样的t检验(或等价的)合乎逻辑且可行吗?

此外,如果两个语料库的余弦相似度不同,我如何检查第三个语料库中相同的两个单词之间的余弦相似度是否比第一个语料库或第二个语料库更相似?

推荐答案

当然有可能。在给定一定数量的数据的情况下,它是否有意义还很难回答。

请注意,在单独的训练课程中,由于算法使用的固有随机性,给定的单词A不一定会出现在相同的坐标中。在完全相同的数据上进行培训时也是如此。

通常情况下,如果有足够的数据/训练和精心选择的参数,到其他单词BC等的距离/方向应该具有类似的总体用处。因此,ABC等可能位于不同的位置,距离/方向略有不同--但就单词的邻域而言,相对关系仍然相似,或者(A-B)方向如果应用于其他单词C等,仍可预测某些人类可感知的意义差异。

因此,您应该避免在不同训练运行或语料库的单词之间进行直接余弦相似性比较,但您可能会在相似性(A-BvsA‘-B’)或前N个列表或相对排名中找到意义。(这也可能是如何与第三个语料库进行比较:在某些成对的相似性、前N个列表或相关单词的有序排名中,彼此之间存在多大程度的差异或相关性。)

您可能想要对您的度量执行健全性检查,查看它们在多大程度上暗示了在逻辑上"不应该"的比较中的有意义的差异。例如,针对刚刚重新洗牌的完全相同的语料库或完全相同的语料库的随机子集运行多个。(在检查word2vec模型之间差异的重要性时,我不知道有什么正式的t测试,但检查一些差异是否足以区分真正不同的语料库,从同一语料库的1/N随机子集到一定的置信度水平,可能是断言有意义的差异的一种扎实的方法。)

如果这种"应该非常相似"的运行显示的是明显不同的最终向量结果,则可能暗示:

  • 语料库太小,每个单词的不同用法实例太少-2vec受益于大量数据,与有时用于大型单词2vec模型的数千亿训练单词相比,政治演讲集合可能相当小

  • 模型参数设置错误--模型过大(因此容易过度拟合)、培训通行证不足或其他次优参数可能会对相同的培训数据产生变化较大的模型

    /li>

您还需要注意训练语料库大小的不匹配。语料库的10倍大意味着更多的单词将通过固定的min_count阈值,并且任何选择的Nepochs训练将涉及10倍于普通单词的示例,并在更大的(向量大小)模型中支持稳定的结果--而相同的模型参数与较小的语料库将产生更不稳定的结果。

您可以考虑的另一种技术是将语料库组合到一个训练集中,但根据相关说话者的不同,将感兴趣的关键字的标记转换为不同的标记。例如,您可以将'family'替换为'f-family''m-family',具体取决于说话者的性别。(您可以对每个事件或部分事件执行此操作。您还可以多次将每个语音输入您的语料库,有时使用实际单词,有时使用上下文标记的替代词替换部分或全部。)

在这种情况下,您将得到一个最终的模型,并且所有单词/上下文标记都在"相同"的坐标空间中,以便进行直接比较。但是,伪词'f-family''m-family'会更多地受到它们特定于上下文的用法的影响--因此它们的向量可能彼此不同,也可能与原始的'family'(如果你还保留了它的未被忽略的用法)以有趣的方式暗示。

另请注意:如果使用原始Google word2vec代码版本的"类比求解"方法,或其他效仿其示例的库(如gensim),请注意不会将作为输入提供的任何单词作为答案返回。因此,当通过调用model.most_similar(positive=['doctor', 'woman'], negative=['man'])求解性别繁多的类比'man' : 'doctor' :: 'woman' : _?_时,即使底层模型仍然将'doctor'作为最接近目标坐标的单词,它作为输入单词之一被自动跳过,而产生第二接近的单词。

由于这个实现构件,一些早期的"字向量偏差"编写忽略了这个细节,因此倾向于暗示更大的偏差,即使这种偏差从小到大都不存在。(您可以向most_similar()提供原始向量,而不是字符串标记,然后获得完整的结果,而无需对输入标记进行任何过滤。)

这篇关于如何比较三个预先训练好的模型之间的余弦相似性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆